diff -r c1cf7259160d -r 8c3e91c385f5 stage4/generate_c/generate_c_sfcdecl.cc --- a/stage4/generate_c/generate_c_sfcdecl.cc Sat May 31 12:49:43 2014 +0100 +++ b/stage4/generate_c/generate_c_sfcdecl.cc Sat May 31 16:22:57 2014 +0100 @@ -252,11 +252,17 @@ print_variable_prefix(); s4o.print(",__step_list["); s4o.print(step_number); - s4o.print("].state,,1);\n"); + s4o.print("].X,,1);\n"); step_number++; break; case stepdef_sd: s4o.print("#define "); + symbol->step_name->accept(*this); + s4o.print(" __step_list["); + s4o.print(step_number); + s4o.print("]\n"); + + s4o.print("#define "); s4o.print(SFC_STEP_ACTION_PREFIX); symbol->step_name->accept(*this); s4o.print(" "); @@ -266,6 +272,10 @@ break; case stepundef_sd: s4o.print("#undef "); + symbol->step_name->accept(*this); + s4o.print("\n"); + + s4o.print("#undef "); s4o.print(SFC_STEP_ACTION_PREFIX); symbol->step_name->accept(*this); s4o.print("\n"); @@ -289,6 +299,12 @@ break; case stepdef_sd: s4o.print("#define "); + symbol->step_name->accept(*this); + s4o.print(" __step_list["); + s4o.print(step_number); + s4o.print("]\n"); + + s4o.print("#define "); s4o.print(SFC_STEP_ACTION_PREFIX); symbol->step_name->accept(*this); s4o.print(" "); @@ -298,6 +314,10 @@ break; case stepundef_sd: s4o.print("#undef "); + symbol->step_name->accept(*this); + s4o.print("\n"); + + s4o.print("#undef "); s4o.print(SFC_STEP_ACTION_PREFIX); symbol->step_name->accept(*this); s4o.print("\n");