This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Fix PR45789
- From: Richard Guenther <rguenther at suse dot de>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 19 Nov 2010 12:54:35 +0100 (CET)
- Subject: [PATCH] Fix PR45789
This fixes PR45789, we don't need types on INDENTIFIER nodes, so just
do not stream them.
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied.
Richard.
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.
Index: gcc/lto-streamer-out.c
===================================================================
*** gcc/lto-streamer-out.c (revision 166934)
--- gcc/lto-streamer-out.c (working copy)
*************** static void
*** 793,799 ****
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);
}
--- 793,800 ----
lto_output_ts_common_tree_pointers (struct output_block *ob, tree expr,
bool ref_p)
{
! if (TREE_CODE (expr) != IDENTIFIER_NODE)
! lto_output_tree_or_ref (ob, TREE_TYPE (expr), ref_p);
}
Index: gcc/lto-streamer-in.c
===================================================================
*** gcc/lto-streamer-in.c (revision 166934)
--- gcc/lto-streamer-in.c (working copy)
*************** static void
*** 1874,1880 ****
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);
}
--- 1906,1913 ----
lto_input_ts_common_tree_pointers (struct lto_input_block *ib,
struct data_in *data_in, tree expr)
{
! if (TREE_CODE (expr) != IDENTIFIER_NODE)
! TREE_TYPE (expr) = lto_input_tree (ib, data_in);
}