diff options
author | Richard Guenther <rguenther@suse.de> | 2010-11-19 11:57:21 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-11-19 11:57:21 +0000 |
commit | 132797449d4ad43ec9550eb0f000816d3d04c215 (patch) | |
tree | 172a07382aa5884a300aa67fe0410db99b9a8983 /gcc | |
parent | 0d697034b7eecde30bc95766237f2c3b105abaf0 (diff) | |
download | gcc-132797449d4ad43ec9550eb0f000816d3d04c215.zip gcc-132797449d4ad43ec9550eb0f000816d3d04c215.tar.gz gcc-132797449d4ad43ec9550eb0f000816d3d04c215.tar.bz2 |
re PR lto/45789 (ICE: tree code 'lang_type' is not supported in gimple streams with -flto when using __builtin_printf())
2010-11-19 Richard Guenther <rguenther@suse.de>
PR lto/45789
* lto-streamer-out.c (lto_output_ts_common_tree_pointers): For
IDENTIFIERs do not stream TREE_TYPE.
* lto-streamer-in.c (lto_input_ts_common_tree_pointers): Likewise.
From-SVN: r166936
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/lto-streamer-in.c | 3 | ||||
-rw-r--r-- | gcc/lto-streamer-out.c | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ff76d9c..195f96d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2010-11-19 Richard Guenther <rguenther@suse.de> + + PR lto/45789 + * lto-streamer-out.c (lto_output_ts_common_tree_pointers): For + IDENTIFIERs do not stream TREE_TYPE. + * lto-streamer-in.c (lto_input_ts_common_tree_pointers): Likewise. + 2010-11-19 Christian Borntraeger <borntraeger@de.ibm.com> * config/s390/s390.c (s390_function_arg_integer): Handle NULLPTR_TYPE. diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index 50352e8..cf1b011 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -1874,7 +1874,8 @@ static void lto_input_ts_common_tree_pointers (struct lto_input_block *ib, struct data_in *data_in, tree expr) { - TREE_TYPE (expr) = lto_input_tree (ib, data_in); + if (TREE_CODE (expr) != IDENTIFIER_NODE) + TREE_TYPE (expr) = lto_input_tree (ib, data_in); } diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 2a4d985..20e3991 100644 --- a/gcc/lto-streamer-out.c +++ b/gcc/lto-streamer-out.c @@ -793,7 +793,8 @@ static void lto_output_ts_common_tree_pointers (struct output_block *ob, tree expr, bool ref_p) { - lto_output_tree_or_ref (ob, TREE_TYPE (expr), ref_p); + if (TREE_CODE (expr) != IDENTIFIER_NODE) + lto_output_tree_or_ref (ob, TREE_TYPE (expr), ref_p); } |