Selaa lähdekoodia

* open arrays and arrays of consts might be only stack tainting if they are passed by value

git-svn-id: trunk@41008 -
florian 6 vuotta sitten
vanhempi
commit
8d3d5276d7
1 muutettua tiedostoa jossa 2 lisäystä ja 2 poistoa
  1. 2 2
      compiler/symdef.pas

+ 2 - 2
compiler/symdef.pas

@@ -5345,8 +5345,8 @@ implementation
             begin
             begin
               p:=tparavarsym(parast.SymList[i]);
               p:=tparavarsym(parast.SymList[i]);
               { check if no parameter is located on the stack }
               { check if no parameter is located on the stack }
-              if is_open_array(p.vardef) or
-                 is_array_of_const(p.vardef) then
+              if (is_open_array(p.vardef) or
+                 is_array_of_const(p.vardef)) and (p.varspez=vs_value) then
                 begin
                 begin
                   result:=true;
                   result:=true;
                   exit;
                   exit;