1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
{$mode macpas} {$B-} program test; type IntegerPtr = ^Integer; var gi: Integer; procedure A( procedure pp( p: univ Pointer)); begin pp( @gi) end; procedure B( p: IntegerPtr); begin if ( p = nil) or ( p^ <> 12345) then halt( 1) end; begin gi := 12345; A( B) end.