[C++ PATCH] use hash-table for namespace contents
commit1cc0785d27577a552b2a981a03a297c57b843994
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Oct 2017 13:15:23 +0000 (6 13:15 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Oct 2017 13:15:23 +0000 (6 13:15 +0000)
treeec27346a76f573bc6c24d7ac5544092399bac9c5
parentd7bfedaf203b5ef4363cd38e80f48114750b9389
[C++ PATCH] use hash-table for namespace contents

https://gcc.gnu.org/ml/gcc-patches/2017-10/msg00365.html
Use hash_table for namespace bindings
* cp-tree.h (struct named_decl_hash): New.
(lang_decl_ns): Change type of bindings field.
* lex.c (maybe_add_lang_decl_raw): Adjust.
* name-lookup.c (find_namespace_slot): Adjust.
(do_pushdecl): Push NULL-named namespace.
(do_push_nested_namespace): Adjust.
(push_namespace): Push anonymous namespace as NULL name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@253489 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/lex.c
gcc/cp/name-lookup.c