diff --git a/Test.obn b/Test.obn
index 8371d40d26dc72bcfbac718753e7ba1e333de80b..8aea2558a93efbec45e4a9117831ef6c41a9542a 100644 (file)
--- a/Test.obn
+++ b/Test.obn
MODULE Test;
-IMPORT Out;
+TYPE
+ Elem = POINTER TO ElemDesc;
+ ElemDesc = RECORD END;
-CONST
- im1 = -1;
- bol = ~FALSE;
- set = { 1, 2, 3..6 };
- fm1 = -1.0;
- dm1 = -1.0D0;
+ ElemMsg = RECORD END;
+ CopyMsg = RECORD (ElemMsg) a : Elem; END;
-BEGIN
- Out.Open;
-
- Out.Int(im1, 0); Out.Ln;
- Out.Real(fm1, 0); Out.Ln;
- Out.LongReal(dm1, 0); Out.Ln;
+ Alien = POINTER TO RECORD (ElemDesc) END;
- IF 5 IN set THEN
- Out.String("SET: Ok"); Out.Ln;
- ELSE
- Out.String("INVALID SET"); Out.Ln;
- HALT(1);
- END;
+PROCEDURE HandleAlien (VAR msg: ElemMsg);
+BEGIN
+ WITH msg: CopyMsg DO msg.a := NIL END
+END HandleAlien;
- IF bol THEN
- Out.String("BOOLEAN: Ok"); Out.Ln;
- ELSE
- Out.String("INVALID BOOLEAN"); Out.Ln;
- HALT(1);
- END;
END Test.