DEADSOFTWARE

Исправлено действие конструкции WITH
[dsw-obn.git] / Test.obn
index c80345e560b5ed362e18a58a9a1abc772b084c44..8aea2558a93efbec45e4a9117831ef6c41a9542a 100644 (file)
--- a/Test.obn
+++ b/Test.obn
@@ -1,20 +1,17 @@
 MODULE Test;
 
-IMPORT Files, Out;
+TYPE
+  Elem = POINTER TO ElemDesc;
+  ElemDesc = RECORD END;
 
-VAR
-  f : Files.File;
-  r : Files.Rider;
-  i, len : LONGINT;
-  g : SHORTINT;
-  x : POINTER TO ARRAY OF CHAR;
+  ElemMsg = RECORD END;
+  CopyMsg = RECORD (ElemMsg) a : Elem; END;
 
+  Alien = POINTER TO RECORD (ElemDesc) END;
+
+PROCEDURE HandleAlien (VAR msg: ElemMsg);
 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;
+  WITH msg: CopyMsg DO msg.a := NIL END
+END HandleAlien;
+
 END Test.