equal
deleted
inserted
replaced
1358 r_type = r_expr->candidate_datatypes[j]; |
1358 r_type = r_expr->candidate_datatypes[j]; |
1359 if (is_widening_compatible(widen_table, l_type, r_type, symbol->datatype, deprecated_operation)) { |
1359 if (is_widening_compatible(widen_table, l_type, r_type, symbol->datatype, deprecated_operation)) { |
1360 l_expr->datatype = l_type; |
1360 l_expr->datatype = l_type; |
1361 r_expr->datatype = r_type; |
1361 r_expr->datatype = r_type; |
1362 count ++; |
1362 count ++; |
1363 } else if ((l_type == r_type) && search_base_type_c::type_is_enumerated(l_type) && get_datatype_info_c::is_BOOL_compatible(symbol->datatype)) { |
1363 } else if ((l_type == r_type) && get_datatype_info_c::is_enumerated(l_type) && get_datatype_info_c::is_BOOL_compatible(symbol->datatype)) { |
1364 if (NULL != deprecated_operation) *deprecated_operation = false; |
1364 if (NULL != deprecated_operation) *deprecated_operation = false; |
1365 l_expr->datatype = l_type; |
1365 l_expr->datatype = l_type; |
1366 r_expr->datatype = r_type; |
1366 r_expr->datatype = r_type; |
1367 count ++; |
1367 count ++; |
1368 } |
1368 } |
1514 /* CASE expression OF case_element_list ELSE statement_list END_CASE */ |
1514 /* CASE expression OF case_element_list ELSE statement_list END_CASE */ |
1515 // SYM_REF3(case_statement_c, expression, case_element_list, statement_list) |
1515 // SYM_REF3(case_statement_c, expression, case_element_list, statement_list) |
1516 void *narrow_candidate_datatypes_c::visit(case_statement_c *symbol) { |
1516 void *narrow_candidate_datatypes_c::visit(case_statement_c *symbol) { |
1517 for (unsigned int i = 0; i < symbol->expression->candidate_datatypes.size(); i++) { |
1517 for (unsigned int i = 0; i < symbol->expression->candidate_datatypes.size(); i++) { |
1518 if ((get_datatype_info_c::is_ANY_INT(symbol->expression->candidate_datatypes[i])) |
1518 if ((get_datatype_info_c::is_ANY_INT(symbol->expression->candidate_datatypes[i])) |
1519 || (search_base_type_c::type_is_enumerated(symbol->expression->candidate_datatypes[i]))) |
1519 || (get_datatype_info_c::is_enumerated(symbol->expression->candidate_datatypes[i]))) |
1520 symbol->expression->datatype = symbol->expression->candidate_datatypes[i]; |
1520 symbol->expression->datatype = symbol->expression->candidate_datatypes[i]; |
1521 } |
1521 } |
1522 symbol->expression->accept(*this); |
1522 symbol->expression->accept(*this); |
1523 if (NULL != symbol->statement_list) |
1523 if (NULL != symbol->statement_list) |
1524 symbol->statement_list->accept(*this); |
1524 symbol->statement_list->accept(*this); |