MODULE Test; TYPE Stream* = POINTER TO Handle; Handle = RECORD END; Writer* = RECORD END; Printer* = RECORD (Writer) END; VAR s : Stream; o : Writer; out : Printer; PROCEDURE SetStream(VAR w : Writer; stream : Stream); BEGIN END SetStream; BEGIN SetStream(o, s); SetStream(out, s); END Test.