index 432307f51ba6e983b25400f43e593e2e8e555fdf..d828f4a2e855adbbd24d2852738453892614f634 100644 (file)
--- a/test.c
+++ b/test.c
static const char source[] =
"MODULE Test;"
"TYPE"
- " Int = INTEGER;"
- " PArray2D = POINTER TO Array2D;"
- " Array2D = ARRAY 3 OF ARRAY 3 OF INTEGER;"
- " PAP2D = ARRAY 4 OF POINTER TO ARRAY 5 OF INTEGER;"
- " Object = POINTER TO ObjectDesc;"
- " ObjectDesc = RECORD"
- " value : Array2D;"
- " value2 : PArray2D;"
- " doStuff : Proc;"
- " next : Object;"
- " END;"
- " Proc = PROCEDURE(self : Object; i : Int);"
+ " Callback = PROCEDURE() : INTEGER;"
+ ""
"VAR"
- " i : Int;"
- " a2 : Array2D;"
- " p2 : PArray2D;"
- " po : Object;"
- " do : ObjectDesc;"
- " stuffProc : Proc;"
- " pap2 : PAP2D;"
- " "
+ " cb : Callback;"
+ " i : INTEGER;"
+ ""
+ "PROCEDURE RelBack;"
+ "BEGIN"
+ " i := 666;"
+ "END RelBack;"
+ ""
"BEGIN;"
+ " i := 1;"
+ " i := cb();"
+ " RelBack;"
"END Test."
;