Commit 60b9991b by Jason Merrill Committed by Jason Merrill

method.c (synthesized_method_walk): Avoid changing EH spec based on cleanups in other places, too.

	* method.c (synthesized_method_walk): Avoid changing
	EH spec based on cleanups in other places, too.

From-SVN: r189395
parent 83d88a6d
2012-07-10 Jason Merrill <jason@redhat.com>
* method.c (synthesized_method_walk): Avoid changing
EH spec based on cleanups in other places, too.
2012-07-09 Sterling Augustine <saugustine@google.com> 2012-07-09 Sterling Augustine <saugustine@google.com>
* error.c (lang_decl_name): Use TFF_UNQUALIFIED_NAME flag. * error.c (lang_decl_name): Use TFF_UNQUALIFIED_NAME flag.
......
...@@ -1315,7 +1315,7 @@ synthesized_method_walk (tree ctype, special_function_kind sfk, bool const_p, ...@@ -1315,7 +1315,7 @@ synthesized_method_walk (tree ctype, special_function_kind sfk, bool const_p,
{ {
rval = locate_fn_flags (base_binfo, complete_dtor_identifier, rval = locate_fn_flags (base_binfo, complete_dtor_identifier,
NULL_TREE, flags, complain); NULL_TREE, flags, complain);
process_subob_fn (rval, false, spec_p, NULL, process_subob_fn (rval, false, NULL, NULL,
deleted_p, NULL, NULL, deleted_p, NULL, NULL,
basetype); basetype);
} }
...@@ -1335,7 +1335,7 @@ synthesized_method_walk (tree ctype, special_function_kind sfk, bool const_p, ...@@ -1335,7 +1335,7 @@ synthesized_method_walk (tree ctype, special_function_kind sfk, bool const_p,
if (ctor_p) if (ctor_p)
walk_field_subobs (TYPE_FIELDS (ctype), complete_dtor_identifier, walk_field_subobs (TYPE_FIELDS (ctype), complete_dtor_identifier,
sfk_destructor, TYPE_UNQUALIFIED, false, sfk_destructor, TYPE_UNQUALIFIED, false,
false, false, spec_p, NULL, false, false, NULL, NULL,
deleted_p, NULL, deleted_p, NULL,
NULL, flags, complain); NULL, flags, complain);
......
2012-07-10 Jason Merrill <jason@redhat.com>
* g++.dg/cpp0x/implicit13.C: Add vbase and member tests.
2012-07-09 Sterling Augustine <saugustine@google.com> 2012-07-09 Sterling Augustine <saugustine@google.com>
* g++.dg/debug/dwarf2/pubnames-2.C: New. * g++.dg/debug/dwarf2/pubnames-2.C: New.
......
...@@ -14,7 +14,7 @@ struct B: A { }; ...@@ -14,7 +14,7 @@ struct B: A { };
// { dg-final { scan-assembler-not "_ZN1BC1Ev" } } // { dg-final { scan-assembler-not "_ZN1BC1Ev" } }
B b; B b;
struct C { C() noexcept; ~C(); }; struct C { C() noexcept; ~C() noexcept(false); };
struct D: C { }; struct D: C { };
extern D d; extern D d;
...@@ -22,3 +22,11 @@ void *operator new(__SIZE_TYPE__, void*) noexcept; ...@@ -22,3 +22,11 @@ void *operator new(__SIZE_TYPE__, void*) noexcept;
#define SA(X) static_assert((X),#X) #define SA(X) static_assert((X),#X)
SA(noexcept(new (&d) D)); SA(noexcept(new (&d) D));
struct E: virtual C { };
extern E e;
SA(noexcept (new (&e) E));
struct F { C c; };
extern F f;
SA(noexcept (new (&f) F));
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment