Răsfoiți Sursa

* for open array parameters the RTTI of the element def needs to be available/written; this is Delphi compatible

git-svn-id: trunk@35340 -
svenbarth 8 ani în urmă
părinte
comite
41dccb75b9
1 a modificat fișierele cu 6 adăugiri și 1 ștergeri
  1. 6 1
      compiler/ncgrtti.pas

+ 6 - 1
compiler/ncgrtti.pas

@@ -416,7 +416,12 @@ implementation
           begin
             sym:=tparavarsym(def.paras[i]);
             if not (vo_is_hidden_para in sym.varoptions) or allow_hidden then
-              write_rtti(sym.vardef,rt);
+              begin
+                if is_open_array(sym.vardef) then
+                  write_rtti(tarraydef(sym.vardef).elementdef,rt)
+                else
+                  write_rtti(sym.vardef,rt);
+              end;
           end;
       end;