stage4/generate_c/generate_c.cc
changeset 234 e4d31cd0e6d8
parent 231 b8527b0abe75
child 237 cece842c7417
--- a/stage4/generate_c/generate_c.cc	Sat Dec 12 20:41:32 2009 +0100
+++ b/stage4/generate_c/generate_c.cc	Sun Dec 13 11:41:22 2009 +0100
@@ -639,6 +639,7 @@
   generate_c_vardecl_c *vardecl;
   generate_c_sfcdecl_c *sfcdecl;
   generate_c_typedecl_c *typedecl;
+  generate_c_inlinefcall_c *inlinedecl;
   TRACE("function_block_declaration_c");
 
   /* (A) Function Block data structure declaration... */
@@ -686,8 +687,9 @@
   delete typedecl;
 
   /* (A.6) Function Block inline function declaration for function invocation */
-  generate_c_inlinefcall_c inline_decl(&s4o, symbol->fblock_name, symbol, FB_FUNCTION_PARAM"->");
-  symbol->fblock_body->accept(inline_decl);
+  inlinedecl = new generate_c_inlinefcall_c(&s4o, symbol->fblock_name, symbol, FB_FUNCTION_PARAM"->");
+  inlinedecl->print(symbol->fblock_body);
+  delete inlinedecl;
 
   /* (B) Constructor */
   /* (B.1) Constructor name... */
@@ -830,6 +832,7 @@
   generate_c_vardecl_c *vardecl;
   generate_c_sfcdecl_c *sfcdecl;
   generate_c_typedecl_c *typedecl;
+  generate_c_inlinefcall_c *inlinedecl;
   TRACE("program_declaration_c");
 
   /* (A) Program data structure declaration... */
@@ -874,8 +877,9 @@
   delete typedecl;
 
   /* (A.6) Function Block inline function declaration for function invocation */
-  generate_c_inlinefcall_c inline_decl(&s4o, symbol->program_type_name, symbol, FB_FUNCTION_PARAM"->");
-  symbol->function_block_body->accept(inline_decl);
+  inlinedecl = new generate_c_inlinefcall_c(&s4o, symbol->program_type_name, symbol, FB_FUNCTION_PARAM"->");
+  inlinedecl->print(symbol->function_block_body);
+  delete inlinedecl;
 
   /* (B) Constructor */
   /* (B.1) Constructor name... */