diff options
author | Giovanni Bajo <giovannibajo@gcc.gnu.org> | 2004-02-26 02:17:26 +0000 |
---|---|---|
committer | Giovanni Bajo <giovannibajo@gcc.gnu.org> | 2004-02-26 02:17:26 +0000 |
commit | 3cc8f5878378f33c0f79929b993b0d0504fc5c50 (patch) | |
tree | a011387cd28413d84f58461d904f7a920af01b8c /gcc/cp | |
parent | fecf735c6740e1080c60766bdd27de0ee407c8dd (diff) | |
download | gcc-3cc8f5878378f33c0f79929b993b0d0504fc5c50.zip gcc-3cc8f5878378f33c0f79929b993b0d0504fc5c50.tar.gz gcc-3cc8f5878378f33c0f79929b993b0d0504fc5c50.tar.bz2 |
re PR c++/14246 (Problems with templates, ice in write_template_arg_literal)
PR c++/14246
* mangle.c (write_template_arg_literal): Don't rely on identity for
boolean constants.
From-SVN: r78478
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/mangle.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 44add64..85ee089 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2004-02-26 Giovanni Bajo <giovannibajo@gcc.gnu.org> + + PR c++/14246 + * mangle.c (write_template_arg_literal): Don't rely on identity for + boolean constants. + 2004-02-24 Jason Merrill <jason@redhat.com> * tree.c (build_exception_variant): Use check_qualified_type. diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c index a41c141..2580d39 100644 --- a/gcc/cp/mangle.c +++ b/gcc/cp/mangle.c @@ -2121,9 +2121,9 @@ write_template_arg_literal (const tree value) { if (same_type_p (type, boolean_type_node)) { - if (value == boolean_false_node || integer_zerop (value)) + if (integer_zerop (value)) write_unsigned_number (0); - else if (value == boolean_true_node) + else if (integer_onep (value)) write_unsigned_number (1); else abort (); |