aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2017-04-20 11:18:02 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2017-04-20 11:18:02 +0200
commit8a59d4660c63665613f17e2b56da6bf5a4c5c214 (patch)
tree1484e8a152e79fdd86427e4b01e206056ad5c9fa /gcc/tree.h
parenta4bb5c57c9211c7eda33259af525ce5675889842 (diff)
downloadgcc-8a59d4660c63665613f17e2b56da6bf5a4c5c214.zip
gcc-8a59d4660c63665613f17e2b56da6bf5a4c5c214.tar.gz
gcc-8a59d4660c63665613f17e2b56da6bf5a4c5c214.tar.bz2
re PR middle-end/80423 (GC related -fcompare-debug failure)
PR middle-end/80423 * tree.h (build_array_type): Add typeless_storage default argument. * tree.c (type_cache_hasher::equal): Also compare TYPE_TYPELESS_STORAGE flag for ARRAY_TYPEs. (build_array_type): Add typeless_storage argument, set TYPE_TYPELESS_STORAGE to it, if shared also hash it, and pass to recursive call. (build_nonshared_array_type): Adjust build_array_type_1 caller. (build_array_type): Likewise. Add typeless_storage argument. c-family/ * c-common.c (complete_array_type): Preserve TYPE_TYPELESS_STORAGE. cp/ * tree.c (build_cplus_array_type): Call build_array_type with the intended TYPE_TYPELESS_STORAGE flag value, instead of calling build_array_type and modifying later TYPE_TYPELESS_STORAGE on the shared type. testsuite/ * g++.dg/other/pr80423.C: New test. From-SVN: r247014
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 50a674b..b136f5c 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -4068,7 +4068,7 @@ extern tree build_truth_vector_type (unsigned, unsigned);
extern tree build_same_sized_truth_vector_type (tree vectype);
extern tree build_opaque_vector_type (tree innertype, int nunits);
extern tree build_index_type (tree);
-extern tree build_array_type (tree, tree);
+extern tree build_array_type (tree, tree, bool = false);
extern tree build_nonshared_array_type (tree, tree);
extern tree build_array_type_nelts (tree, unsigned HOST_WIDE_INT);
extern tree build_function_type (tree, tree);