From 814ae570ea5766e19935e344d03709814bd002bd Mon Sep 17 00:00:00 2001 From: Giovanni Bajo Date: Tue, 1 Jul 2003 17:38:02 +0200 Subject: [PATCH] re PR c++/8046 (ICE on illegal code involving destructor being treated as bit-not expression) 2003-07-01 Giovanni Bajo PR c++/8046 * error.c (dump_decl): Handle BIT_NOT_EXPR as pseudo destructor calls. From-SVN: r68775 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/error.c | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 3b9601458ff..5487d3375a7 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2003-07-01 Giovanni Bajo + + PR c++/8046 + * error.c (dump_decl): Handle BIT_NOT_EXPR as + pseudo destructor calls. + 2003-07-01 Nathan Sidwell * cp-tree.h (define_label): Replace filename and lineno diff --git a/gcc/cp/error.c b/gcc/cp/error.c index 4cb5ba4173c..e26f242ed6d 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -877,6 +877,13 @@ dump_decl (tree t, int flags) dump_type (t, flags); break; + case BIT_NOT_EXPR: + /* This is a pseudo distructor call which has not been folded into + a PSEUDO_DTOR_EXPR yet. */ + output_add_character (scratch_buffer, '~'); + dump_type (TREE_OPERAND (t, 0), flags); + break; + case TYPE_EXPR: abort (); break; -- 2.30.2