aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2014-07-24 15:52:49 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2014-07-24 13:52:49 +0000
commit52d8a590f5b4d8d0c4a7ae4c9c8faeb383d4ac45 (patch)
treedc3697b83d7db2c53cdd1b17d120ba1cb61e232f /gcc
parent10a3a880c1c39baa9e0d6c792c665a5b80eb41d0 (diff)
downloadgcc-52d8a590f5b4d8d0c4a7ae4c9c8faeb383d4ac45.zip
gcc-52d8a590f5b4d8d0c4a7ae4c9c8faeb383d4ac45.tar.gz
gcc-52d8a590f5b4d8d0c4a7ae4c9c8faeb383d4ac45.tar.bz2
lto-streamer-out.c (tree_is_indexable): Consider IMPORTED_DECL as non-indexable.
* lto-streamer-out.c (tree_is_indexable): Consider IMPORTED_DECL as non-indexable. From-SVN: r212992
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/lto-streamer-out.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f902436..893100c8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2014-07-24 Jan Hubicka <hubicka@ucw.cz>
+ * lto-streamer-out.c (tree_is_indexable): Consider IMPORTED_DECL
+ as non-indexable.
+
+2014-07-24 Jan Hubicka <hubicka@ucw.cz>
+
PR lto/61802
* varasm.c (bss_initializer_p): Handle offlined ctors.
(align_variable, get_variable_align): Likewise.
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 75332f9..355ceea 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -139,6 +139,9 @@ tree_is_indexable (tree t)
definition. */
if (TREE_CODE (t) == PARM_DECL || TREE_CODE (t) == RESULT_DECL)
return variably_modified_type_p (TREE_TYPE (DECL_CONTEXT (t)), NULL_TREE);
+ /* IMPORTED_DECL is put into BLOCK and thus it never can be shared. */
+ else if (TREE_CODE (t) == IMPORTED_DECL)
+ return false;
else if (((TREE_CODE (t) == VAR_DECL && !TREE_STATIC (t))
|| TREE_CODE (t) == TYPE_DECL
|| TREE_CODE (t) == CONST_DECL