From ec0897deddeb168c4d6689666560b9ad85430a07 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 12 Jul 2006 17:57:58 -0400 Subject: [PATCH] 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 --- gcc/cp/ChangeLog | 5 +++++ 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 + + PR c++/28217 + * semantics.c (note_decl_for_pch): Don't premangle templates. + 2006-07-12 Martin Michlmayr * 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); } -- 2.7.4