Ver Fonte

* ensure that newly created tloadparentfpnodes have a valid resultdef as they might be created in situation where the loadnode itself is no longer typechecked

Sven/Sarah Barth há 2 anos atrás
pai
commit
3c2703787c
2 ficheiros alterados com 2 adições e 0 exclusões
  1. 1 0
      compiler/ncnv.pas
  2. 1 0
      compiler/nld.pas

+ 1 - 0
compiler/ncnv.pas

@@ -2631,6 +2631,7 @@ implementation
                         (left.nodetype=loadn) then
                       begin
                         tloadnode(left).left:=cloadparentfpnode.create(tprocdef(tloadnode(left).symtable.defowner),lpf_forload);
+                        typecheckpass(tloadnode(left).left);
 
                         pi:=current_procinfo.get_first_nestedproc;
                         while assigned(pi) do

+ 1 - 0
compiler/nld.pas

@@ -562,6 +562,7 @@ implementation
                 { parent frame pointer pointer as "self" }
                 left.free;
                 left:=cloadparentfpnode.create(tprocdef(p.owner.defowner),lpf_forpara);
+                typecheckpass(left);
               end;
           end
         { we should never go from nested to non-nested (except for an anonymous