diff -r 2481fffe6e58 -r cac262d1d6a5 stage3/narrow_candidate_datatypes.cc --- a/stage3/narrow_candidate_datatypes.cc Fri Mar 08 02:00:36 2013 +0100 +++ b/stage3/narrow_candidate_datatypes.cc Mon Mar 11 12:49:33 2013 +0100 @@ -755,6 +755,24 @@ return NULL; } +/********************************************/ +/* B 1.6 Sequential function chart elements */ +/********************************************/ + +void *narrow_candidate_datatypes_c::visit(transition_condition_c *symbol) { + if (symbol->candidate_datatypes.size() != 1) + return NULL; + symbol->datatype = symbol->candidate_datatypes[0]; + if (symbol->transition_condition_il != NULL) { + symbol->transition_condition_il->datatype = symbol->datatype; + symbol->transition_condition_il->accept(*this); + } + if (symbol->transition_condition_st != NULL) { + symbol->transition_condition_st->datatype = symbol->datatype; + symbol->transition_condition_st->accept(*this); + } + return NULL; +} /********************************/ /* B 1.7 Configuration elements */