А разве это принципиально отличается от такого?
## Код:
```
MODULE X; 
 TYPE 
    A* =  RECORD 
     p:POINTER TO SomeThing; 
   END; 
  
  PROCEDURE Call* (VAR a: A); 
  VAR x:SomeThing; 
  BEGIN 
    x:=a.p
  END Call; 
END X.
```
