diff --git a/Test.obn b/Test.obn
index c80345e560b5ed362e18a58a9a1abc772b084c44..3c862c1d5917486426e84aa32439b268bb8baf88 100644 (file)
--- a/Test.obn
+++ b/Test.obn
MODULE Test;
-IMPORT Files, Out;
+TYPE
+ Object = RECORD
+ mth : PROCEDURE;
+ END;
VAR
- f : Files.File;
- r : Files.Rider;
- i, len : LONGINT;
- g : SHORTINT;
- x : POINTER TO ARRAY OF CHAR;
+ p : PROCEDURE;
+ o, a : Object;
+
+PROCEDURE X;
+END X;
+
+PROCEDURE Z(VAR g : Object);
+BEGIN
+ g.mth;
+END Z;
BEGIN
- f := Files.Old("Test.obn");
- ASSERT(f # NIL);
- Files.Set(r, f, 0);
- len := Files.Length(f);
- NEW(x, len + 1);
- FOR i := 0 TO len - 1 DO Files.Read(r, g); x[i] := CHR(g) END;
- Out.String(x^); Out.Ln;
+ p := X;
+ ASSERT(p # NIL);
+ o.mth := X;
+ ASSERT(o.mth # NIL);
+ a := o;
+ ASSERT(a.mth # NIL);
+ Z(a);
END Test.