DEADSOFTWARE

Исправлены опережающие объявления локальных типов-записей, добавлены модули Oberon...
[dsw-obn.git] / Test.obn
index 8889d77c0c50802f40f632397a621a5dba4eaeea..ecfde58b9f0e5fadb5eb6a9a884a62ede7a56351 100644 (file)
--- a/Test.obn
+++ b/Test.obn
@@ -1,17 +1,21 @@
 MODULE Test;
 
 TYPE
-  PRec = POINTER TO Rec;
-  Rec = RECORD END;
+  A = POINTER TO RECORD B : B; END;
+
+  B = POINTER TO RECORD x : A END;
 
 VAR
-  d : PRec;
+  a : A;
 
-PROCEDURE X (z : INTEGER; a : SET; b : ARRAY OF CHAR) : PRec;
+PROCEDURE Do;
+  TYPE
+    ListPtr = POINTER TO ListNode;
+    ListNode = RECORD next: ListPtr END;
 BEGIN
-  RETURN NIL;
-END X;
+END Do;
 
 BEGIN
-  d := X(1, {}, "xyz");
+  NEW(a);
+  a.B := NIL;
 END Test.