Browse Source

* also process methodpointerinit and methodpointerdone fields
of calln in foreachnode*()

git-svn-id: trunk@2183 -

Jonas Maebe 19 years ago
parent
commit
24c3ec1095
1 changed files with 4 additions and 0 deletions
  1. 4 0
      compiler/nutils.pas

+ 4 - 0
compiler/nutils.pas

@@ -110,7 +110,9 @@ implementation
         calln:
           begin
             { not in one statement, won't work because of b- }
+            result := foreachnode(tcallnode(n).methodpointerinit,f,arg) or result;
             result := foreachnode(tcallnode(n).methodpointer,f,arg) or result;
+            result := foreachnode(tcallnode(n).methodpointerdone,f,arg) or result;
           end;
         ifn, whilerepeatn, forn:
           begin
@@ -148,7 +150,9 @@ implementation
         case n.nodetype of
           calln:
             begin
+              result := foreachnodestatic(procmethod,tcallnode(n).methodpointerinit,f,arg) or result;
               result := foreachnodestatic(procmethod,tcallnode(n).methodpointer,f,arg) or result;
+              result := foreachnodestatic(procmethod,tcallnode(n).methodpointerdone,f,arg) or result;
             end;
           ifn, whilerepeatn, forn:
             begin