This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/53613] Cannot override a inline "= default" virtual destructor.
- From: "redi at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 12 Jun 2012 10:47:58 +0000
- Subject: [Bug c++/53613] Cannot override a inline "= default" virtual destructor.
- Auto-submitted: auto-generated
- References: <bug-53613-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53613
--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-06-12 10:47:58 UTC ---
I think it compiles with 4.4 because __cook::~__cook is not noexcept, because
4.4 doesn't infer an empty throw spec for a trivial destructor.
If you add throw() to ~__cook you get the same errors about looser throw
specifiers. So 4.4 was generating different code, but in this example it makes
no practical difference because you can't use the noexcept operator in 4.4 to
test whether something has an empty exception specifier anyway.