void f(int x) { char c = x ? 23 : throw "bla"; } error: aggregate value used where an integer was expected
because we call convert_to_integer on the throw_expression. -- Summary: rejects promoted throw Product: gcc Version: 4.4.1 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40566