@@ -700,6 +700,7 @@ def visit_WHILE_DO(self, node):
700700 # Drawing Primitives PLOT, DRAW, DRAW3, CIRCLE
701701 # -----------------------------------------------------------------------------------------------------
702702 def visit_PLOT (self , node ):
703+ self .norm_attr ()
703704 TMP_HAS_ATTR = self .check_attr (node , 2 )
704705 yield TMP_HAS_ATTR
705706 yield node .children [0 ]
@@ -708,9 +709,9 @@ def visit_PLOT(self, node):
708709 self .ic_fparam (node .children [1 ].type_ , node .children [1 ].t )
709710 self .runtime_call (RuntimeLabel .PLOT , 0 )
710711 self .HAS_ATTR = TMP_HAS_ATTR is not None
711- self .norm_attr ()
712712
713713 def visit_DRAW (self , node ):
714+ self .norm_attr ()
714715 TMP_HAS_ATTR = self .check_attr (node , 2 )
715716 yield TMP_HAS_ATTR
716717 yield node .children [0 ]
@@ -719,9 +720,9 @@ def visit_DRAW(self, node):
719720 self .ic_fparam (node .children [1 ].type_ , node .children [1 ].t )
720721 self .runtime_call (RuntimeLabel .DRAW , 0 )
721722 self .HAS_ATTR = TMP_HAS_ATTR is not None
722- self .norm_attr ()
723723
724724 def visit_DRAW3 (self , node ):
725+ self .norm_attr ()
725726 TMP_HAS_ATTR = self .check_attr (node , 3 )
726727 yield TMP_HAS_ATTR
727728 yield node .children [0 ]
@@ -732,9 +733,9 @@ def visit_DRAW3(self, node):
732733 self .ic_fparam (node .children [2 ].type_ , node .children [2 ].t )
733734 self .runtime_call (RuntimeLabel .DRAW3 , 0 )
734735 self .HAS_ATTR = TMP_HAS_ATTR is not None
735- self .norm_attr ()
736736
737737 def visit_CIRCLE (self , node ):
738+ self .norm_attr ()
738739 TMP_HAS_ATTR = self .check_attr (node , 3 )
739740 yield TMP_HAS_ATTR
740741 yield node .children [0 ]
@@ -745,7 +746,6 @@ def visit_CIRCLE(self, node):
745746 self .ic_fparam (node .children [2 ].type_ , node .children [2 ].t )
746747 self .runtime_call (RuntimeLabel .CIRCLE , 0 )
747748 self .HAS_ATTR = TMP_HAS_ATTR is not None
748- self .norm_attr ()
749749
750750 # endregion
751751
@@ -759,6 +759,7 @@ def visit_OUT(self, node):
759759 self .ic_out (node .children [0 ].t , node .children [1 ].t )
760760
761761 def visit_PRINT (self , node ):
762+ self .norm_attr ()
762763 for i in node .children :
763764 yield i
764765
@@ -788,19 +789,8 @@ def visit_PRINT(self, node):
788789 }[self .TSUFFIX (i .type_ )]
789790 self .runtime_call (label , 0 )
790791
791- for i in node .children :
792- if i .token in self .ATTR_TMP or self .has_control_chars (i ):
793- self .HAS_ATTR = True
794- break
795-
796792 if node .eol :
797- if self .HAS_ATTR :
798- self .runtime_call (RuntimeLabel .PRINT_EOL_ATTR , 0 )
799- self .HAS_ATTR = False
800- else :
801- self .runtime_call (RuntimeLabel .PRINT_EOL , 0 )
802- else :
803- self .norm_attr ()
793+ self .runtime_call (RuntimeLabel .PRINT_EOL , 0 )
804794
805795 def visit_PRINT_AT (self , node ):
806796 yield node .children [0 ]
@@ -1463,7 +1453,6 @@ def visit_FUNCTION(self, node):
14631453 for i in node .body :
14641454 yield i
14651455
1466- self .norm_attr ()
14671456 self .ic_label ("%s__leave" % node .mangled )
14681457
14691458 # Now free any local string from memory.
0 commit comments