diff options
author | Nathan Sidwell <nathan@acm.org> | 2017-05-26 17:19:46 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2017-05-26 17:19:46 +0000 |
commit | 3c9feefc8d6372d0e24070b53b40c2a36026e798 (patch) | |
tree | 6a5cd764e175f48eba5d5bc8790e0fb35ffd6e93 /libcc1 | |
parent | 5596d26a5c2df26fc591c8dad0e2bc87ee2f88e2 (diff) | |
download | gcc-3c9feefc8d6372d0e24070b53b40c2a36026e798.zip gcc-3c9feefc8d6372d0e24070b53b40c2a36026e798.tar.gz gcc-3c9feefc8d6372d0e24070b53b40c2a36026e798.tar.bz2 |
Inline and using namespace representation change.
gcc/cp/
Inline and using namespace representation change.
* cp-tree.h (struct lang_decl_ns): Delete ns_using. Add usings,
inlinees as vector.
(DECL_NAMESPACE_USING): Adjust.
(DECL_NAMESPACE_INLINEES): New.
* name-lookup.h (struct cp_binding_level): Change usings
representation.
* name-lookup.c (name_lookup::do_queue_usings)
name_lookup::queue_usings): Adjust.
(name_lookup::search_namespace, name_lookup::search_usings)
name_lookup::queue_namespace): Adjust.
(name_lookup::adl_namespace_only): Adjust.
(add_using_namespace, push_namespace): Push onto vector.
(pop_namespace): Add timing logic.
libcc1/
* libcp1plugin.cc (plugin_make_namespace_inline): Push onto linees.
((--This line, and those below, will be ignored--
M gcc/cp/ChangeLog
M gcc/cp/cp-tree.h
M gcc/cp/name-lookup.c
M gcc/cp/name-lookup.h
M libcc1/libcp1plugin.cc
M libcc1/ChangeLog
From-SVN: r248520
Diffstat (limited to 'libcc1')
-rw-r--r-- | libcc1/ChangeLog | 2 | ||||
-rw-r--r-- | libcc1/libcp1plugin.cc | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/libcc1/ChangeLog b/libcc1/ChangeLog index 76b6388..14344b8 100644 --- a/libcc1/ChangeLog +++ b/libcc1/ChangeLog @@ -1,5 +1,7 @@ 2017-05-26 Nathan Sidwell <nathan@acm.org> + * libcp1plugin.cc (plugin_make_namespace_inline): Push onto linees. + * libcp1plugin.cc (plugin_add_using_namespace): Call finish_namespace_using_directive. diff --git a/libcc1/libcp1plugin.cc b/libcc1/libcp1plugin.cc index 877c264..a96ffc0 100644 --- a/libcc1/libcp1plugin.cc +++ b/libcc1/libcp1plugin.cc @@ -934,6 +934,7 @@ plugin_make_namespace_inline (cc1_plugin::connection *) return 0; DECL_NAMESPACE_INLINE_P (inline_ns) = true; + vec_safe_push (DECL_NAMESPACE_INLINEES (parent_ns), inline_ns); return 1; } |