diff options
author | Jason Merrill <jason@redhat.com> | 2006-07-12 17:57:58 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2006-07-12 17:57:58 -0400 |
commit | ec0897deddeb168c4d6689666560b9ad85430a07 (patch) | |
tree | f54e093ca7a337a08299d4dbe6679086cab57ce2 /gcc | |
parent | f67a67d831550961badfdd84556bcffcfded5651 (diff) | |
download | gcc-ec0897deddeb168c4d6689666560b9ad85430a07.zip gcc-ec0897deddeb168c4d6689666560b9ad85430a07.tar.gz gcc-ec0897deddeb168c4d6689666560b9ad85430a07.tar.bz2 |
re PR c++/28217 (ICE in tree_int_cst_sgn)
PR c++/28217
* semantics.c (note_decl_for_pch): Don't premangle templates.
From-SVN: r115399
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/semantics.c | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index dca9874..c7aa918 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2006-07-12 Jason Merrill <jason@redhat.com> + + PR c++/28217 + * semantics.c (note_decl_for_pch): Don't premangle templates. + 2006-07-12 Martin Michlmayr <tbm@cyrius.com> * typeck.c (string_conv_p): Remove spurious quotation mark in diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 9ecace6..3d5957a 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -2339,8 +2339,9 @@ note_decl_for_pch (tree decl) /* There's a good chance that we'll have to mangle names at some point, even if only for emission in debugging information. */ - if (TREE_CODE (decl) == VAR_DECL - || TREE_CODE (decl) == FUNCTION_DECL) + if ((TREE_CODE (decl) == VAR_DECL + || TREE_CODE (decl) == FUNCTION_DECL) + && !processing_template_decl) mangle_decl (decl); } |