990 void *print_datatypes_error_c::visit( add_expression_c *symbol) {return print_binary_expression_errors( "+" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
990 void *print_datatypes_error_c::visit( add_expression_c *symbol) {return print_binary_expression_errors( "+" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
991 void *print_datatypes_error_c::visit( sub_expression_c *symbol) {return print_binary_expression_errors( "-" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
991 void *print_datatypes_error_c::visit( sub_expression_c *symbol) {return print_binary_expression_errors( "-" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
992 void *print_datatypes_error_c::visit( mul_expression_c *symbol) {return print_binary_expression_errors( "*" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
992 void *print_datatypes_error_c::visit( mul_expression_c *symbol) {return print_binary_expression_errors( "*" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
993 void *print_datatypes_error_c::visit( div_expression_c *symbol) {return print_binary_expression_errors( "/" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
993 void *print_datatypes_error_c::visit( div_expression_c *symbol) {return print_binary_expression_errors( "/" , symbol, symbol->l_exp, symbol->r_exp, symbol->deprecated_operation);} |
994 void *print_datatypes_error_c::visit( mod_expression_c *symbol) {return print_binary_expression_errors("MOD", symbol, symbol->l_exp, symbol->r_exp);} |
994 void *print_datatypes_error_c::visit( mod_expression_c *symbol) {return print_binary_expression_errors("MOD", symbol, symbol->l_exp, symbol->r_exp);} |
995 |
995 void *print_datatypes_error_c::visit( power_expression_c *symbol) {return print_binary_expression_errors( "**", symbol, symbol->l_exp, symbol->r_exp);} |
996 |
|
997 void *print_datatypes_error_c::visit(power_expression_c *symbol) { |
|
998 symbol->l_exp->accept(*this); |
|
999 symbol->r_exp->accept(*this); |
|
1000 if ((symbol->candidate_datatypes.size() == 0) && |
|
1001 (symbol->l_exp->candidate_datatypes.size() > 0) && |
|
1002 (symbol->r_exp->candidate_datatypes.size() > 0)) |
|
1003 STAGE3_ERROR(0, symbol, symbol, "Data type mismatch for '**' expression."); |
|
1004 return NULL; |
|
1005 } |
|
1006 |
996 |
1007 |
997 |
1008 void *print_datatypes_error_c::visit(neg_expression_c *symbol) { |
998 void *print_datatypes_error_c::visit(neg_expression_c *symbol) { |
1009 symbol->exp->accept(*this); |
999 symbol->exp->accept(*this); |
1010 if ((symbol->candidate_datatypes.size() == 0) && |
1000 if ((symbol->candidate_datatypes.size() == 0) && |