stage4/generate_c/generate_c.cc
changeset 915 ec3759689efe
parent 914 be6c89943079
child 916 e14cb81bc310
equal deleted inserted replaced
914:be6c89943079 915:ec3759689efe
  2313 /**************************************/
  2313 /**************************************/
  2314 /* B.1.5 - Program organization units */
  2314 /* B.1.5 - Program organization units */
  2315 /**************************************/
  2315 /**************************************/
  2316 #define handle_pou(fname,pname,var_decl_list) \
  2316 #define handle_pou(fname,pname,var_decl_list) \
  2317       if (!allow_output) return NULL;\
  2317       if (!allow_output) return NULL;\
  2318       var_decl_list->accept(generate_c_datatypes);\
       
  2319       if (generate_pou_filepairs__) {\
  2318       if (generate_pou_filepairs__) {\
  2320         stage4out_c s4o_c(current_builddir, get_datatype_info_c::get_id_str(pname), "c");\
  2319         stage4out_c s4o_c(current_builddir, get_datatype_info_c::get_id_str(pname), "c");\
  2321         stage4out_c s4o_h(current_builddir, get_datatype_info_c::get_id_str(pname), "h");\
  2320         stage4out_c s4o_h(current_builddir, get_datatype_info_c::get_id_str(pname), "h");\
  2322         /* generate_c_datatypes_c generate_c_datatypes_(&s4o_h);*/\
  2321         generate_c_datatypes_c generate_c_datatypes__(&s4o_h);\
  2323         /* var_decl_list->accept(generate_c_datatypes_);*/\
  2322         var_decl_list->accept(generate_c_datatypes__);\
  2324         generate_c_pous_c::fname(symbol, s4o_h, true); /* generate the <pou_name>.h file */\
  2323         generate_c_pous_c::fname(symbol, s4o_h, true); /* generate the <pou_name>.h file */\
  2325         generate_c_pous_c::fname(symbol, s4o_c, false);/* generate the <pou_name>.c file */\
  2324         generate_c_pous_c::fname(symbol, s4o_c, false);/* generate the <pou_name>.c file */\
  2326         /* add #include directives to the POUS.h and POUS.c files... */\
  2325         /* add #include directives to the POUS.h and POUS.c files... */\
  2327         pous_incl_s4o.print("#include \"");\
  2326         pous_incl_s4o.print("#include \"");\
  2328         pous_s4o.     print("#include \"");\
  2327         pous_s4o.     print("#include \"");\
  2329         pous_incl_s4o.print(get_datatype_info_c::get_id_str(pname));\
  2328         pous_incl_s4o.print(get_datatype_info_c::get_id_str(pname));\
  2330         pous_s4o.     print(get_datatype_info_c::get_id_str(pname));\
  2329         pous_s4o.     print(get_datatype_info_c::get_id_str(pname));\
  2331         pous_incl_s4o.print(".h\"\n");\
  2330         pous_incl_s4o.print(".h\"\n");\
  2332         pous_s4o.     print(".c\"\n");\
  2331         pous_s4o.     print(".c\"\n");\
  2333       } else {\
  2332       } else {\
       
  2333         var_decl_list->accept(generate_c_datatypes);\
  2334         generate_c_pous_c::fname(symbol, pous_incl_s4o, true);\
  2334         generate_c_pous_c::fname(symbol, pous_incl_s4o, true);\
  2335         generate_c_pous_c::fname(symbol, pous_s4o,      false);\
  2335         generate_c_pous_c::fname(symbol, pous_s4o,      false);\
  2336       }
  2336       }
  2337 
  2337 
  2338 /***********************/
  2338 /***********************/