Browse Source

+ bug0149a.pp and bug0149b.pp

Jonas Maebe 27 years ago
parent
commit
4637fffd8b
3 changed files with 36 additions and 0 deletions
  1. 10 0
      bugs/bug0149a.pp
  2. 25 0
      bugs/bug0149b.pp
  3. 1 0
      bugs/readme.txt

+ 10 - 0
bugs/bug0149a.pp

@@ -0,0 +1,10 @@
+unit bug0149a;
+
+interface
+
+Const tset = [1,2,3,4,5];
+      c = 1;
+
+implementation
+
+end.

+ 25 - 0
bugs/bug0149b.pp

@@ -0,0 +1,25 @@
+{there is no crash when tset or c from unit a are used in OuterProcedure,
+ it's only a problem when using them in a nested procedure/function}
+
+unit bug0149b;
+
+interface
+
+uses t2a;
+
+implementation
+
+Procedure OuterProcedure;
+
+  function t(a: byte): byte;
+  begin
+     if a = c then t := a else t := 0;
+     if a in tset   {probably same bug}
+       then t := a
+       else t := 0
+  end;
+
+Begin
+End;
+
+end.

+ 1 - 0
bugs/readme.txt

@@ -198,3 +198,4 @@ bug0146.pp   no sizeof() for var arrays and the size is pushed incorrect
 bug0147.pp   function b; is not allowed in implementation
 bug0148.pp   triple fault exception when setting function result of a declared
              but not yet implemented function in another function
+bug0149.pp  (a, b) compile bug0149b twice and you'll get a triple exc. fault