summaryrefslogtreecommitdiff
path: root/ecomp-c/test1.e
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2020-08-14 21:31:06 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2020-08-14 21:31:06 +0200
commit3d41b8813db0ebe45ce7d0c54604554812ddb484 (patch)
treed0ec0e457b848a5834cfb56c669fc05ac69421d1 /ecomp-c/test1.e
parent3e51c4b9c32425a435d090636ea04dce25c3bf24 (diff)
downloadcompilertests-3d41b8813db0ebe45ce7d0c54604554812ddb484.tar.gz
compilertests-3d41b8813db0ebe45ce7d0c54604554812ddb484.tar.bz2
started handling value parameters for procedures
- asm386 handles also negative numbers (for negative offsets for parameters on stack) - parameter handling in stdcall style (procedure handles all of the stack operations)
Diffstat (limited to 'ecomp-c/test1.e')
-rw-r--r--ecomp-c/test1.e19
1 files changed, 15 insertions, 4 deletions
diff --git a/ecomp-c/test1.e b/ecomp-c/test1.e
index 49418db..59ec90a 100644
--- a/ecomp-c/test1.e
+++ b/ecomp-c/test1.e
@@ -32,17 +32,28 @@ var
s2 : array 10 of character := "hello";
a1 : array 10 of integer;
-procedure B;
+procedure B( n : integer, m : integer );
procedure A;
+const
+ N : integer = 10;
+ S : array N of character = "local";
+var
+ s : array N of character := S;
+
begin
a1[5] := 43;
- B;
+ s[0] := 'L';
+ B( a1[5], 7 );
end
-procedure B;
+procedure B( n : integer, m : integer );
+var
+ x : integer;
+
begin
- a1[4] := 44;
+ x := n + m;
+ a1[4] := x;
end
begin