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 /libgcc | |
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 'libgcc')
0 files changed, 0 insertions, 0 deletions