https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69438

--- Comment #5 from Abe <abe_skolnik at yahoo dot com> ---
Further analysis shows that the ICE is still present after adding a trivial
default constructor to the type and making the functions "go through the
motions" of creating an object of the requisite type and "return"ing it at
their ends even though they call a "noreturn" callee before arriving at their
"proper" return statements.

Also, this ICE is present at "-Os" in addition to "-O2" and "-O3" [and _not_
present at "-O0" and "-O1"].



__attribute__((noreturn)) void V(int);
struct R{R(){} R(const R&r){}};
R f(){R x; V(0); return x;}
R c(){R x; V(0); return x;}

Reply via email to