diff options
author | Nathan Sidwell <nathan@acm.org> | 2017-06-27 17:27:49 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2017-06-27 17:27:49 +0000 |
commit | b2cf76f3a58d065122d2ae94bf55510551ff27f4 (patch) | |
tree | 37e8225773157de7dee0c8d54f30a477abf6d3f7 /gcc/cp/init.c | |
parent | 68fe5f441e9ea89a48a240ff5fcc05cf0146af7d (diff) | |
download | gcc-b2cf76f3a58d065122d2ae94bf55510551ff27f4.zip gcc-b2cf76f3a58d065122d2ae94bf55510551ff27f4.tar.gz gcc-b2cf76f3a58d065122d2ae94bf55510551ff27f4.tar.bz2 |
cp-tree.h (CLASSTYPE_DESTRUCTORS): Rename to ...
* cp-tree.h (CLASSTYPE_DESTRUCTORS): Rename to ...
(CLASSTYPE_DESTRUCTOR): ... this.
* class.c (accessible_nvdtor_p)
maybe_warn_about_overly_private_class,
add_implicitly_declared_members,
clone_constructors_and_destructors, type_has_virtual_destructor):
Adjust for CLASSTYPE_DESTRUCTOR.
(deduce_noexcept_on_destructors): Absorb into ...
(check_bases_and_members): ... here.
* except.c (dtor_nothrow): Adjust for CLASSTYPE_DESTRUCTOR.
* init.c (build_delete): Likewise.
* parser.c (cp_parser_lookup_name): Likewise.
* pt.c (check_explicit_specialization): Likewise.
* rtti.c (emit_support_tinfos): Likewise.
* search.c (lookup_fnfields_idx_nolazy): Likewise.
(--This line, and those below, will be ignored--
M cp/cp-tree.h
M cp/search.c
M cp/init.c
M cp/class.c
M cp/rtti.c
M cp/except.c
M cp/ChangeLog
M cp/pt.c
M cp/parser.c
From-SVN: r249701
Diffstat (limited to 'gcc/cp/init.c')
-rw-r--r-- | gcc/cp/init.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/cp/init.c b/gcc/cp/init.c index b6f6b4f..1433538 100644 --- a/gcc/cp/init.c +++ b/gcc/cp/init.c @@ -4580,8 +4580,7 @@ build_delete (tree otype, tree addr, special_function_kind auto_delete, && MAYBE_CLASS_TYPE_P (type) && !CLASSTYPE_FINAL (type) && TYPE_POLYMORPHIC_P (type)) { - tree dtor; - dtor = CLASSTYPE_DESTRUCTORS (type); + tree dtor = CLASSTYPE_DESTRUCTOR (type); if (!dtor || !DECL_VINDEX (dtor)) { if (CLASSTYPE_PURE_VIRTUALS (type)) @@ -4671,7 +4670,7 @@ build_delete (tree otype, tree addr, special_function_kind auto_delete, /* If the destructor is non-virtual, there is no deleting variant. Instead, we must explicitly call the appropriate `operator delete' here. */ - else if (!DECL_VIRTUAL_P (CLASSTYPE_DESTRUCTORS (type)) + else if (!DECL_VIRTUAL_P (CLASSTYPE_DESTRUCTOR (type)) && auto_delete == sfk_deleting_destructor) { /* We will use ADDR multiple times so we must save it. */ |