MODULE TPtrFwd; // LEGAL forward reference: a POINTER's base type may be declared later // (for recursive / self-referential structures). Exit 42. TYPE Node = POINTER TO NodeRec; NodeRec = RECORD next : Node; v : INTEGER END; VAR p : Node; ExitCode : INTEGER; BEGIN NEW(p); p^.v := 42; IF p^.v = 42 THEN ExitCode := 42 ELSE ExitCode := 1 END END TPtrFwd.