[Oberon]  When is it safe to unload a module?
    Andreas Pirklbauer 
    andreas_pirklbauer at yahoo.com
       
    Mon Aug  6 05:29:46 CEST 2018
    
    
  
ADDENDUM: And adjust M1.Mod to the code below
(procedure P slightly adjusted to call gproc)
MODULE M1;
  IMPORT M0;
  TYPE Ptr* = POINTER TO Rec;
    Rec* = RECORD (M0.Rec) END ;  (*extension of M0.Rec*)
  VAR gptr*: Ptr;
    gproc*: M0.Proc;
  PROCEDURE P*; BEGIN gproc END P;
  PROCEDURE SetGPtr*(q: M0.Ptr); BEGIN gptr := q(Ptr) END SetGPtr;
  PROCEDURE SetLPtr*(q: M0.Ptr); BEGIN gptr.lptr := q(Ptr) END SetLPtr;
  PROCEDURE SetGProc*(q: M0.Proc); BEGIN gproc := q END SetGProc;
  PROCEDURE SetLProc*(q: M0.Proc); BEGIN gptr.lproc := q END SetLProc;
  PROCEDURE Init*; BEGIN NEW(gptr) END Init;
BEGIN Init
END M1.
------------------------------------------------------------------------
    
    
More information about the Oberon
mailing list