4 #include <string.h>
5 #include <assert.h>
8 "(* Main module *)"
9 "MODULE Test;"
10 "IMPORT Out;"
11 ""
12 "VAR"
13 " nx- : INTEGER;"
14 " p : POINTER TO ARRAY 3 OF INTEGER;"
15 ""
16 "PROCEDURE ChParam(VAR i : INTEGER);"
17 "BEGIN"
18 " i := 1234;"
19 "END ChParam;"
20 ""
21 "BEGIN;"
22 " NEW(p);"
23 " p[0] := 1;"
24 " "
25 " Out.Open;"
26 " ChParam(nx);"
27 " Out.Int(nx, 0);"
28 " Out.Ln;"
29 "END Test."
30 ;
33 "MODULE Out;"
34 "(* Interface to outer program ;) *)"
35 "VAR"
36 " Open- : PROCEDURE;"
37 // " Char- : PROCEDURE(ch : CHAR);"
38 // " String- : PROCEDURE(str : ARRAY OF CHAR)"
39 // " Int- : PROCEDURE(i, n : LONGINT);"
40 " Int- : PROCEDURE(i, n : INTEGER);"
41 // " Real- : PROCEDURE(x : REAL; n : INTEGER);"
42 // " LongReal- : PROCEDURE(x : LONGREAL; n : INTEGER);"
43 " Ln- : PROCEDURE;"
44 "END Out."
45 ;
52 {
54 {
56 }
58 {
60 }
61 else
62 {
64 }
65 }
70 {
71 }
76 {
81 {
83 }
85 }
90 {
92 }
95 {
102 }
105 {
108 }
110 int
112 {
126 }