diff options
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/cxx-pretty-print.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/template/error32.C | 8 |
4 files changed, 23 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index d75316e67de..94fe90687e0 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2007-10-25 Paolo Carlini <pcarlini@suse.de> + + PR c++/33843 + * cxx-pretty-print.c (pp_cxx_unqualified_id): Deal with BIT_NOT_EXPR. + 2007-10-23 Jason Merrill <jason@redhat.com> PR c++/25950 (DR 391) diff --git a/gcc/cp/cxx-pretty-print.c b/gcc/cp/cxx-pretty-print.c index 6481273fd86..7ad46c66637 100644 --- a/gcc/cp/cxx-pretty-print.c +++ b/gcc/cp/cxx-pretty-print.c @@ -195,6 +195,11 @@ pp_cxx_unqualified_id (cxx_pretty_printer *pp, tree t) pp_cxx_unqualified_id (pp, TYPE_NAME (t)); break; + case BIT_NOT_EXPR: + pp_cxx_complement (pp); + pp_cxx_unqualified_id (pp, TREE_OPERAND (t, 0)); + break; + case TEMPLATE_TYPE_PARM: case TEMPLATE_TEMPLATE_PARM: if (TYPE_IDENTIFIER (t)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 5551ed5f80a..a3dc0bf9891 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-10-25 Paolo Carlini <pcarlini@suse.de> + + PR c++/33843 + * g++.dg/template/error32.C: New. + 2007-10-25 Martin Michlmayr <tbm@cyrius.com> Ira Rosen <irar@il.ibm.com> diff --git a/gcc/testsuite/g++.dg/template/error32.C b/gcc/testsuite/g++.dg/template/error32.C new file mode 100644 index 00000000000..be3c3a08452 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/error32.C @@ -0,0 +1,8 @@ +// PR c++/33843 + +struct A {}; + +void foo(A* p()) +{ + p->A::~A(); // { dg-error "A::~A" } +} |