+2008-08-31 Richard Guenther <rguenther@suse.de>
+
+ * tree-cfg.c (verify_types_in_gimple_assign): Dump mismatched
+ types instead of operands. Re-instantiate verifying of
+ binary expression operands.
+
2008-08-30 Jan Hubicka <jh@suse.cz>
* fwprop.c (should_replace_address): Add speed attribute.
if (!useless_type_conversion_p (lhs_type, rhs1_type))
{
error ("non-trivial conversion at assignment");
- debug_generic_expr (lhs);
- debug_generic_expr (rhs1);
+ debug_generic_expr (lhs_type);
+ debug_generic_expr (rhs1_type);
+ return true;
+ }
+ break;
+
+ case tcc_binary:
+ if (!is_gimple_val (rhs1) || !is_gimple_val (rhs2))
+ {
+ error ("invalid operands in binary expression");
+ return true;
+ }
+ if (!useless_type_conversion_p (lhs_type, rhs1_type)
+ || !useless_type_conversion_p (lhs_type, rhs2_type))
+ {
+ error ("type mismatch in binary expression");
+ debug_generic_stmt (lhs_type);
+ debug_generic_stmt (rhs1_type);
+ debug_generic_stmt (rhs2_type);
return true;
}
break;
if (!useless_type_conversion_p (lhs_type, rhs1_type))
{
error ("non-trivial conversion at assignment");
- debug_generic_expr (lhs);
- debug_generic_expr (rhs1);
+ debug_generic_expr (lhs_type);
+ debug_generic_expr (rhs1_type);
return true;
}
return verify_types_in_gimple_reference (rhs1);