diff --git a/src/test.c b/src/test.c
index 2419c3b7c0045ea6906c517822afe5560bff59bc..18417ba34fa6241d16ae44c53733960a57e2be91 100644 (file)
--- a/src/test.c
+++ b/src/test.c
"(* Main module *)"
"MODULE Test;"
"TYPE"
- " Packed = ARRAY 16, 32 OF RECORD a : INTEGER; r : RECORD x : INTEGER; END; END;"
- " IArray = ARRAY 16, 32, 666 OF INTEGER;"
+ " P = PROCEDURE;"
+ " F = PROCEDURE (x : INTEGER) : INTEGER;"
+ ""
"VAR"
- " k : POINTER TO Packed;"
- " ii : POINTER TO IArray;"
+ " p : P;"
+ " f : F;"
+ " i : INTEGER;"
+ ""
+ "PROCEDURE Pow(x : INTEGER) : INTEGER;"
"BEGIN"
- " NEW(k);"
- " k[1, 2].a := 666;"
- " k[5, 2].r.x := 456;"
- " NEW(ii);"
+ " RETURN x * x;"
+ "END Pow;"
+ ""
+ "PROCEDURE Do;"
+ "END Do;"
+ ""
+ "BEGIN;"
+ " p := Do;"
+ " f := Pow;"
+ " i := f(7);"
+ " p;"
"END Test."
;