]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR c++/8046 (ICE on illegal code involving destructor being treated as bit-not...
authorGiovanni Bajo <giovannibajo@libero.it>
Tue, 1 Jul 2003 15:38:02 +0000 (17:38 +0200)
committerWolfgang Bangerth <bangerth@gcc.gnu.org>
Tue, 1 Jul 2003 15:38:02 +0000 (09:38 -0600)
2003-07-01  Giovanni Bajo  <giovannibajo@libero.it>

        PR c++/8046
        * error.c (dump_decl): Handle BIT_NOT_EXPR as
        pseudo destructor calls.

From-SVN: r68775

gcc/cp/ChangeLog
gcc/cp/error.c

index 3b9601458ff4fb6d4ce199eafb24eee8c4736fd7..5487d3375a766b6dbe900aa2d6b729a2336090ff 100644 (file)
@@ -1,3 +1,9 @@
+2003-07-01  Giovanni Bajo  <giovannibajo@libero.it>
+       
+        PR c++/8046
+        * error.c (dump_decl): Handle BIT_NOT_EXPR as
+        pseudo destructor calls.
+
 2003-07-01  Nathan Sidwell  <nathan@codesourcery.com>
 
        * cp-tree.h (define_label): Replace filename and lineno
index 4cb5ba4173c9126ac1e1f846ddd6d38cff7ce2a5..e26f242ed6de45b6ce21180686d068b8cf2b66e1 100644 (file)
@@ -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;