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

--- Comment #2 from Xi Ruoyao <ryxi at stu dot xidian.edu.cn> ---
I don't think it's PR66139.

In PR66139, the exception is caught, but some destructors aren't called.

In this PR, the exception is not caught at all.

For this PR, the problem is:

1) GCC created "constexpr B::B()" and call A::A() in it.
2) In optimization, GCC think a constexpr doesn't throw. So the EH code is
   optimized away.
3) But actually B::B() throws and shouldn't be a constexpr.

I'll read the standard and find out what should we do for this.

Reply via email to