diff options
author | Nathan Sidwell <nathan@acm.org> | 2020-10-02 12:21:08 -0700 |
---|---|---|
committer | Nathan Sidwell <nathan@acm.org> | 2020-10-02 12:21:08 -0700 |
commit | 679dbc9dcec0d1240951442947199ba155f494b6 (patch) | |
tree | 32a0b84c34b0d8598cd12f7b34388d598780f933 /libcc1 | |
parent | 7ee1c0413e251ff0b6a6d526209ef038b9835320 (diff) | |
download | gcc-679dbc9dcec0d1240951442947199ba155f494b6.zip gcc-679dbc9dcec0d1240951442947199ba155f494b6.tar.gz gcc-679dbc9dcec0d1240951442947199ba155f494b6.tar.bz2 |
c++: Kill DECL_ANTICIPATED
Here's the patch to remove DECL_ANTICIPATED, and with it hiddenness is
managed entirely in the symbol table. Sadly I couldn't get rid of the
actual field without more investigation -- it's repurposed for
OMP_PRIVATIZED_MEMBER. It looks like a the VAR-related flags in
lang_decl_base are not completely orthogonal, so perhaps some can be
turned into an enumeration or something. But that's more than I want
to do right now.
DECL_FRIEND_P Is still slightly suspect as it appears to mean more
than just in-class definition. However, I'm leaving that for now.
gcc/cp/
* cp-tree.h (lang_decl_base): anticipated_p is not used for
anticipatedness.
(DECL_ANTICIPATED): Delete.
* decl.c (duplicate_decls): Delete DECL_ANTICIPATED_management,
use was_hidden.
(cxx_builtin_function): Drop DECL_ANTICIPATED setting.
(xref_tag_1): Drop DECL_ANTICIPATED assert.
* name-lookup.c (name_lookup::adl_class_only): Drop
DECL_ANTICIPATED check.
(name_lookup::search_adl): Always dedup.
(anticipated_builtin_p): Reimplement.
(do_pushdecl): Drop DECL_ANTICIPATED asserts & update.
(lookup_elaborated_type_1): Drop DECL_ANTICIPATED update.
(do_pushtag): Drop DECL_ANTICIPATED setting.
* pt.c (push_template_decl): Likewise.
(tsubst_friend_class): Likewise.
libcc1/
* libcp1plugin.cc (libcp1plugin.cc): Drop DECL_ANTICIPATED test.
Diffstat (limited to 'libcc1')
-rw-r--r-- | libcc1/libcp1plugin.cc | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/libcc1/libcp1plugin.cc b/libcc1/libcp1plugin.cc index 3fe310d..9817425 100644 --- a/libcc1/libcp1plugin.cc +++ b/libcc1/libcp1plugin.cc @@ -353,7 +353,6 @@ supplement_binding (cxx_binding *binding, tree decl) /* If TARGET_BVAL is anticipated but has not yet been declared, pretend it is not there at all. */ || (TREE_CODE (target_bval) == FUNCTION_DECL - && DECL_ANTICIPATED (target_bval) && DECL_BUILTIN_P (target_bval))) binding->value = decl; else if (TREE_CODE (target_bval) == TYPE_DECL |