Browse Source

+ print add node flags

florian 8 months ago
parent
commit
b6af220f1a
1 changed files with 22 additions and 0 deletions
  1. 22 0
      compiler/nadd.pas

+ 22 - 0
compiler/nadd.pas

@@ -58,6 +58,7 @@ interface
           function simplify(forinline: boolean) : tnode;override;
           function simplify(forinline: boolean) : tnode;override;
           function dogetcopy : tnode;override;
           function dogetcopy : tnode;override;
           function docompare(p: tnode): boolean; override;
           function docompare(p: tnode): boolean; override;
+          procedure printnodedata(var t:text);override;
     {$ifdef state_tracking}
     {$ifdef state_tracking}
           function track_state_pass(exec_known:boolean):boolean;override;
           function track_state_pass(exec_known:boolean):boolean;override;
     {$endif}
     {$endif}
@@ -2009,6 +2010,27 @@ const
       end;
       end;
 
 
 
 
+    procedure taddnode.printnodedata(var t: text);
+      var
+        i: TAddNodeFlag;
+        first: Boolean;
+      begin
+        write(t,printnodeindention,'addnodeflags = [');
+        first:=true;
+        for i:=low(TAddNodeFlag) to high(TAddNodeFlag) do
+          if i in addnodeflags then
+            begin
+              if not(first) then
+                write(t,',')
+              else
+                first:=false;
+              write(t, i);
+            end;
+        writeln(t,']');
+        inherited printnodedata(t);
+      end;
+
+
     function taddnode.pass_typecheck:tnode;
     function taddnode.pass_typecheck:tnode;
       begin
       begin
         { This function is small to keep the stack small for recursive of
         { This function is small to keep the stack small for recursive of