190 symbol->elements[i]->accept(*this); |
190 symbol->elements[i]->accept(*this); |
191 s4o.print("\n"); |
191 s4o.print("\n"); |
192 break; |
192 break; |
193 case actiondef_sd: |
193 case actiondef_sd: |
194 s4o.print("// Actions definitions\n"); |
194 s4o.print("// Actions definitions\n"); |
195 for(int i = 0; i < symbol->n; i++) |
|
196 symbol->elements[i]->accept(*this); |
|
197 { |
195 { |
198 // first fill up the this->variable_list variable! |
196 // first fill up the this->variable_list variable! |
199 wanted_sfcdeclaration = actioncount_sd; |
197 wanted_sfcdeclaration = actioncount_sd; |
200 for(int i = 0; i < symbol->n; i++) |
198 for(int i = 0; i < symbol->n; i++) |
201 symbol->elements[i]->accept(*this); |
199 symbol->elements[i]->accept(*this); |
|
200 action_number = 0; // reset the counter! |
202 wanted_sfcdeclaration = actiondef_sd; |
201 wanted_sfcdeclaration = actiondef_sd; |
|
202 // Now do the defines for actions! |
|
203 for(int i = 0; i < symbol->n; i++) |
|
204 symbol->elements[i]->accept(*this); |
203 // Now do the defines for actions that reference a variable instead of an action block! |
205 // Now do the defines for actions that reference a variable instead of an action block! |
204 std::list<VARIABLE>::iterator pt; |
206 std::list<VARIABLE>::iterator pt; |
205 for(pt = variable_list.begin(); pt != variable_list.end(); pt++) { |
207 for(pt = variable_list.begin(); pt != variable_list.end(); pt++) { |
206 s4o.print("#define "); |
208 s4o.print("#define "); |
207 s4o.print(SFC_STEP_ACTION_PREFIX); |
209 s4o.print(SFC_STEP_ACTION_PREFIX); |