diff options
author | Jan Hubicka <jh@suse.cz> | 2018-08-30 17:05:38 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2018-08-30 15:05:38 +0000 |
commit | 2ebbdb6ca3f69cdac97aeba48a7f00ea40337cd5 (patch) | |
tree | 1e40ab202c9f3cae5ffbc665346f1312fa99cb81 /gcc/tree-streamer-out.c | |
parent | 21592ebe9d8d1d3486be575d6a64dfa10eba17b1 (diff) | |
download | gcc-2ebbdb6ca3f69cdac97aeba48a7f00ea40337cd5.zip gcc-2ebbdb6ca3f69cdac97aeba48a7f00ea40337cd5.tar.gz gcc-2ebbdb6ca3f69cdac97aeba48a7f00ea40337cd5.tar.bz2 |
lto-streamer-out.c (DFS::DFS_write_tree_body): Do not follow TYPE_STUB_DECL.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Do not follow
TYPE_STUB_DECL.
(hash_tree): Do not visit TYPE_STUB_DECL.
* tree-streamer-out.c (write_ts_type_common_tree_pointers): Do not
stream TYPE_STUB_DECL.
* tree-streamer-in.c (lto_input_ts_type_common_tree_pointers): Likewise.
* ipa-utils.h (type_with_linkage_p): Do not rely on TYPE_STUB_DECL
after free_lang_data.
(type_in_anonymous_namespace_p): Likewise.
From-SVN: r263985
Diffstat (limited to 'gcc/tree-streamer-out.c')
-rw-r--r-- | gcc/tree-streamer-out.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-streamer-out.c b/gcc/tree-streamer-out.c index d86f352..60ec178 100644 --- a/gcc/tree-streamer-out.c +++ b/gcc/tree-streamer-out.c @@ -686,7 +686,9 @@ write_ts_type_common_tree_pointers (struct output_block *ob, tree expr, stream_write_tree (ob, TYPE_CONTEXT (expr), ref_p); /* TYPE_CANONICAL is re-computed during type merging, so no need to stream it here. */ - stream_write_tree (ob, TYPE_STUB_DECL (expr), ref_p); + /* Do not stream TYPE_STUB_DECL; it is not needed by LTO but currently + it can not be freed by free_lang_data without triggering ICEs in + langhooks. */ } /* Write all pointer fields in the TS_TYPE_NON_COMMON structure of EXPR |