diff --git a/Test.obn b/Test.obn
index 3c869eab01977277c2f1c68f2cbc88b4f80319ea..8aea2558a93efbec45e4a9117831ef6c41a9542a 100644 (file)
--- a/Test.obn
+++ b/Test.obn
MODULE Test;
-IMPORT SYSTEM, Out;
+TYPE
+ Elem = POINTER TO ElemDesc;
+ ElemDesc = RECORD END;
-VAR
- i, j : INTEGER;
+ ElemMsg = RECORD END;
+ CopyMsg = RECORD (ElemMsg) a : Elem; END;
-BEGIN
- i := 1;
- j := -32;
- Out.Int(SYSTEM.ROT(i, -1), 0); Out.String(" = "); Out.Int(SYSTEM.ROT(1, -1), 0); Out.Ln;
- Out.Int(SYSTEM.ROT(i, 1), 0); Out.String(" = "); Out.Int(SYSTEM.ROT(1, 1), 0); Out.Ln;
- Out.Int(SYSTEM.ROT(j, -1), 0); Out.String(" = "); Out.Int(SYSTEM.ROT(-32, -1), 0); Out.Ln;
- Out.Int(SYSTEM.ROT(j, 1), 0); Out.String(" = "); Out.Int(SYSTEM.ROT(-32, 1), 0); Out.Ln;
+ Alien = POINTER TO RECORD (ElemDesc) END;
- ASSERT(SYSTEM.ROT(i, -1) = SYSTEM.ROT(1, -1));
+PROCEDURE HandleAlien (VAR msg: ElemMsg);
+BEGIN
+ WITH msg: CopyMsg DO msg.a := NIL END
+END HandleAlien;
- ASSERT(SYSTEM.ROT(i, 1) = SYSTEM.ROT(1, 1));
END Test.