aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-hash-traits.h
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-11-22 22:38:44 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-11-22 22:38:44 +0100
commitdf418f1d3cba53a4d3d20c2f640a250dd4c1bfa3 (patch)
treef66e383f251a8499f4d34c9d8662bca6f50413af /gcc/tree-hash-traits.h
parent839e636a9abe65f4880fb5d9609f8ee5ff277fe5 (diff)
downloadgcc-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.h40
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