diff --git a/Test.obn b/Test.obn
index f47edbbb416fd2154a0f16c7bfbaf310923269bc..3c862c1d5917486426e84aa32439b268bb8baf88 100644 (file)
--- a/Test.obn
+++ b/Test.obn
MODULE Test;
-IMPORT Files;
-
TYPE
- String = POINTER TO ARRAY OF CHAR;
- R* = RECORD ch : CHAR END;
+ Object = RECORD
+ mth : PROCEDURE;
+ END;
VAR
- f : Files.File;
- r : Files.Rider;
- m : R;
- s : String;
+ p : PROCEDURE;
+ o, a : Object;
-BEGIN
- f := Files.Old("Test.obn");
- ASSERT(f # NIL);
- Files.Set(r, f, 0);
+PROCEDURE X;
+END X;
- Files.Read(r, m.ch);
+PROCEDURE Z(VAR g : Object);
+BEGIN
+ g.mth;
+END Z;
- ASSERT(s = NIL);
+BEGIN
+ p := X;
+ ASSERT(p # NIL);
+ o.mth := X;
+ ASSERT(o.mth # NIL);
+ a := o;
+ ASSERT(a.mth # NIL);
+ Z(a);
END Test.