diff options
author | Richard Guenther <rguenther@suse.de> | 2011-03-11 15:59:42 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-03-11 15:59:42 +0000 |
commit | 5f11a50a53603f4888a981e4bc162ef9069bbcd8 (patch) | |
tree | 5a00831f10217363ca6f0423beee4d0e0c453a75 /gcc/tree.c | |
parent | e33eba75933fdd7bd895a3b35ef1b1b710ddbb13 (diff) | |
download | gcc-5f11a50a53603f4888a981e4bc162ef9069bbcd8.zip gcc-5f11a50a53603f4888a981e4bc162ef9069bbcd8.tar.gz gcc-5f11a50a53603f4888a981e4bc162ef9069bbcd8.tar.bz2 |
re PR c++/48073 (ICE with -flto in templated C++ code)
2011-03-11 Richard Guenther <rguenther@suse.de>
PR lto/48073
* tree.c (find_decls_types_r): Do not walk types only reachable
from IDENTIFIER_NODEs.
* g++.dg/lto/20110311-1_0.C: New testcase.
From-SVN: r170875
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -4822,7 +4822,8 @@ find_decls_types_r (tree *tp, int *ws, void *data) fld_worklist_push (BLOCK_ABSTRACT_ORIGIN (t), fld); } - fld_worklist_push (TREE_TYPE (t), fld); + if (TREE_CODE (t) != IDENTIFIER_NODE) + fld_worklist_push (TREE_TYPE (t), fld); return NULL_TREE; } |