Browse Source

* fix for web bug #776

pierre 25 years ago
parent
commit
e936bddd22
1 changed files with 8 additions and 2 deletions
  1. 8 2
      compiler/tcld.pas

+ 8 - 2
compiler/tcld.pas

@@ -329,7 +329,9 @@ implementation
     procedure firstarrayconstructrange(var p:ptree);
     procedure firstarrayconstructrange(var p:ptree);
       begin
       begin
         firstpass(p^.left);
         firstpass(p^.left);
+        set_varstate(p^.left,true);
         firstpass(p^.right);
         firstpass(p^.right);
+        set_varstate(p^.right,true);
         calcregisters(p,0,0,0);
         calcregisters(p,0,0,0);
         p^.resulttype:=p^.left^.resulttype;
         p^.resulttype:=p^.left^.resulttype;
       end;
       end;
@@ -365,6 +367,7 @@ implementation
            while assigned(hp) do
            while assigned(hp) do
             begin
             begin
               firstpass(hp^.left);
               firstpass(hp^.left);
+              set_varstate(hp^.left,true);
               if (not get_para_resulttype) and (not p^.novariaallowed) then
               if (not get_para_resulttype) and (not p^.novariaallowed) then
                begin
                begin
                  case hp^.left^.resulttype^.deftype of
                  case hp^.left^.resulttype^.deftype of
@@ -478,7 +481,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.55  1999-12-31 14:26:27  peter
+  Revision 1.56  2000-01-06 01:08:59  pierre
+   * fix for web bug 776
+
+  Revision 1.55  1999/12/31 14:26:27  peter
     * fixed crash with empty array constructors
     * fixed crash with empty array constructors
 
 
   Revision 1.54  1999/12/09 23:18:05  pierre
   Revision 1.54  1999/12/09 23:18:05  pierre
@@ -594,4 +600,4 @@ end.
         - empty array constructors are now handled correctly (e.g. for sysutils.format)
         - empty array constructors are now handled correctly (e.g. for sysutils.format)
         - comparsion of ansistrings was sometimes coded wrong
         - comparsion of ansistrings was sometimes coded wrong
 
 
-}
+}