DEADSOFTWARE

Исправлено действие конструкции WITH
[dsw-obn.git] / Test.obn
index e0445949bf94c9233425839d2dfd602e22e70243..8aea2558a93efbec45e4a9117831ef6c41a9542a 100644 (file)
--- a/Test.obn
+++ b/Test.obn
@@ -1,23 +1,17 @@
 MODULE Test;
 
-IMPORT Out;
-
 TYPE
-  P1 = POINTER TO R1;
-  P2 = POINTER TO R2;
-  P3 = POINTER TO R3;
+  Elem = POINTER TO ElemDesc;
+  ElemDesc = RECORD END;
 
-  R1 = RECORD END;
-  R2 = RECORD (R1) END;
-  R3 = RECORD (R2) END;
+  ElemMsg = RECORD END;
+  CopyMsg = RECORD (ElemMsg) a : Elem; END;
 
-VAR
-  r : P1;
+  Alien = POINTER TO RECORD (ElemDesc) END;
 
+PROCEDURE HandleAlien (VAR msg: ElemMsg);
 BEGIN
-  NEW(r);
-  Out.Open;
-  WITH r : P1 DO
-    Out.String("R1"); Out.Ln;
-  END;
+  WITH msg: CopyMsg DO msg.a := NIL END
+END HandleAlien;
+
 END Test.