diff options
author | Jakub Jelinek <jakub@redhat.com> | 2019-11-22 22:38:44 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2019-11-22 22:38:44 +0100 |
commit | df418f1d3cba53a4d3d20c2f640a250dd4c1bfa3 (patch) | |
tree | f66e383f251a8499f4d34c9d8662bca6f50413af /gcc/tree-hash-traits.h | |
parent | 839e636a9abe65f4880fb5d9609f8ee5ff277fe5 (diff) | |
download | gcc-df418f1d3cba53a4d3d20c2f640a250dd4c1bfa3.zip gcc-df418f1d3cba53a4d3d20c2f640a250dd4c1bfa3.tar.gz gcc-df418f1d3cba53a4d3d20c2f640a250dd4c1bfa3.tar.bz2 |
re PR c++/92458 (Constraints do not work with precompiled headers)
PR c++/92458
* tree-hash-traits.h (tree_decl_hash, tree_ssa_name_hash,
tree_hash): Move to ...
* tree.h (tree_decl_hash, tree_ssa_name_hash, tree_hash): ... here.
(struct decl_tree_cache_traits, struct type_tree_cache_traits): New
types.
(decl_tree_cache_map, tree_tree_cache_map): New typedefs.
* init.c (nsdmi_inst): Change type to
decl_tree_cache_map * from tree_cache_map *.
* constraint.cc (decl_constraints): Likewise.
* decl.c (get_tuple_decomp_init): Likewise.
* pt.c (defarg_inst, explicit_specifier_map): Likewise.
(tsubst_default_argument, store_explicit_specifier): Use
decl_tree_cache_map::create_ggc rather than
tree_cache_map::create_ggc.
* cp-objcp-common.c (debug_type_map): Change type to
type_tree_cache_map * from tree_cache_map *.
* g++.dg/pch/pr92458.C: New test.
* g++.dg/pch/pr92458.Hs: New test.
From-SVN: r278633
Diffstat (limited to 'gcc/tree-hash-traits.h')
-rw-r--r-- | gcc/tree-hash-traits.h | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/gcc/tree-hash-traits.h b/gcc/tree-hash-traits.h index a3fc024..8c2a839 100644 --- a/gcc/tree-hash-traits.h +++ b/gcc/tree-hash-traits.h @@ -41,44 +41,4 @@ tree_operand_hash::equal (const value_type &t1, return operand_equal_p (t1, t2, 0); } -/* Hasher for tree decls. Pointer equality is enough here, but the DECL_UID - is a better hash than the pointer value and gives a predictable traversal - order. */ -struct tree_decl_hash : ggc_ptr_hash <tree_node> -{ - static inline hashval_t hash (tree); -}; - -inline hashval_t -tree_decl_hash::hash (tree t) -{ - return DECL_UID (t); -} - -/* Hash for SSA_NAMEs in the same function. Pointer equality is enough - here, but the SSA_NAME_VERSION is a better hash than the pointer - value and gives a predictable traversal order. */ -struct tree_ssa_name_hash : ggc_ptr_hash <tree_node> -{ - static inline hashval_t hash (tree); -}; - -inline hashval_t -tree_ssa_name_hash::hash (tree t) -{ - return SSA_NAME_VERSION (t); -} - -/* Hasher for general trees, based on their TREE_HASH. */ -struct tree_hash : ggc_ptr_hash <tree_node> -{ - static hashval_t hash (tree); -}; - -inline hashval_t -tree_hash::hash (tree t) -{ - return TREE_HASH (t); -} - #endif |