diff options
author | Jason Merrill <jason@redhat.com> | 2013-02-15 12:19:45 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2013-02-15 12:19:45 -0500 |
commit | 52d95c2127d392462f88ae5ca87358f81c514e2c (patch) | |
tree | e92070b77cd26fb76a9520fcedb563c2ed8fedc3 /gcc/cp/class.c | |
parent | 30fa2a51fabf5147e339ed2f93ab446a99e3b2b9 (diff) | |
download | gcc-52d95c2127d392462f88ae5ca87358f81c514e2c.zip gcc-52d95c2127d392462f88ae5ca87358f81c514e2c.tar.gz gcc-52d95c2127d392462f88ae5ca87358f81c514e2c.tar.bz2 |
re PR c++/56343 ([C++11] Destructor defaulted on first declaration has wrong implicit exception specification)
PR c++/56343
* class.c (check_bases_and_members): Deduce noexcept after
checking bases.
From-SVN: r196082
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r-- | gcc/cp/class.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 38339f2..eaa109a 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5245,14 +5245,15 @@ check_bases_and_members (tree t) cant_have_const_ctor = 0; no_const_asn_ref = 0; - /* Deduce noexcept on destructors. */ - if (cxx_dialect >= cxx0x) - deduce_noexcept_on_destructors (t); - /* Check all the base-classes. */ check_bases (t, &cant_have_const_ctor, &no_const_asn_ref); + /* Deduce noexcept on destructors. This needs to happen after we've set + triviality flags appropriately for our bases. */ + if (cxx_dialect >= cxx0x) + deduce_noexcept_on_destructors (t); + /* Check all the method declarations. */ check_methods (t); |