aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto-streamer-out.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2010-10-20 14:11:06 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2010-10-20 14:11:06 +0000
commit1b0e3802574b1bced2cc7304b2495213e8edc7d5 (patch)
treeeaf5024674c4d0ed963c89ed951911b20901e7c9 /gcc/lto-streamer-out.c
parent519345901bc8ee08de2ea9c450aa56594724f4e7 (diff)
downloadgcc-1b0e3802574b1bced2cc7304b2495213e8edc7d5.zip
gcc-1b0e3802574b1bced2cc7304b2495213e8edc7d5.tar.gz
gcc-1b0e3802574b1bced2cc7304b2495213e8edc7d5.tar.bz2
re PR lto/45667 (ICE: verify_stmts failed: type mismatch in address expression with -flto)
2010-10-20 Richard Guenther <rguenther@suse.de> PR lto/45667 * lto-streamer-out.c (output_gimple_stmt): Fix typo. * tree-cfg.c (verify_gimple_call): Properly get the call fndecl. (verify_gimple_assign_single): Disable ADDR_EXPR type check when in LTO. * g++.dg/lto/20101020-1_0.h: New testcase. * g++.dg/lto/20101020-1_0.C: Likewise. * g++.dg/lto/20101020-1_1.C: Likewise. From-SVN: r165725
Diffstat (limited to 'gcc/lto-streamer-out.c')
-rw-r--r--gcc/lto-streamer-out.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c
index 03b4f39..03150b7 100644
--- a/gcc/lto-streamer-out.c
+++ b/gcc/lto-streamer-out.c
@@ -1763,7 +1763,7 @@ output_gimple_stmt (struct output_block *ob, gimple stmt)
if (op)
{
tree *basep = &op;
- if (handled_component_p (*basep))
+ while (handled_component_p (*basep))
basep = &TREE_OPERAND (*basep, 0);
if (TREE_CODE (*basep) == VAR_DECL
&& !auto_var_in_fn_p (*basep, current_function_decl))