public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/25552]  New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
@ 2005-12-23 22:49 reichelt at gcc dot gnu dot org
  2005-12-23 22:50 ` [Bug c++/25552] " reichelt at gcc dot gnu dot org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2005-12-23 22:49 UTC (permalink / raw)
  To: gcc-bugs

The following invalid code snippet is not rejected:

====================
struct A {};

struct B
{
  friend A::~B();
};
====================

The problem appeared in gcc 4.0.0.


-- 
           Summary: [4.0/4.1/4.2 regression] Invalid destructor name
                    accepted in friend declaration
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: accepts-invalid, monitored, patch
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: reichelt at gcc dot gnu dot org
        ReportedBy: reichelt at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
@ 2005-12-23 22:50 ` reichelt at gcc dot gnu dot org
  2006-01-04 13:53 ` reichelt at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2005-12-23 22:50 UTC (permalink / raw)
  To: gcc-bugs



-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://gcc.gnu.org/ml/gcc-
                   |                            |patches/2005-
                   |                            |12/msg01712.html
   Target Milestone|---                         |4.0.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
  2005-12-23 22:50 ` [Bug c++/25552] " reichelt at gcc dot gnu dot org
@ 2006-01-04 13:53 ` reichelt at gcc dot gnu dot org
  2006-01-15 22:20 ` mmitchel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-04 13:53 UTC (permalink / raw)
  To: gcc-bugs



-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-01-04 13:53:17
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
  2005-12-23 22:50 ` [Bug c++/25552] " reichelt at gcc dot gnu dot org
  2006-01-04 13:53 ` reichelt at gcc dot gnu dot org
@ 2006-01-15 22:20 ` mmitchel at gcc dot gnu dot org
  2006-01-24 11:56 ` reichelt at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-01-15 22:20 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from mmitchel at gcc dot gnu dot org  2006-01-15 22:20 -------
Marking as P2, since this is just an accepts-invalid regression.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2006-01-15 22:20 ` mmitchel at gcc dot gnu dot org
@ 2006-01-24 11:56 ` reichelt at gcc dot gnu dot org
  2006-01-24 11:58 ` [Bug c++/25552] [4.0/4.1 " reichelt at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-24 11:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from reichelt at gcc dot gnu dot org  2006-01-24 11:56 -------
Subject: Bug 25552

Author: reichelt
Date: Tue Jan 24 11:55:58 2006
New Revision: 110168

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110168
Log:
        PR c++/25552
        * parser.c (cp_parser_unqualified_id): Check that destructor name
        and scope match.
        * call.c (check_dtor_name): Do not expect a BIT_NOT_EXPR.
        Adjust comment.  Return early if possible.
        Use same_type_p to compare types.
        * typeck.c (lookup_destructor): Adjust call to check_dtor_name.

        * g++.dg/parse/dtor8.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/parse/dtor8.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/call.c
    trunk/gcc/cp/parser.c
    trunk/gcc/cp/typeck.c
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2006-01-24 11:56 ` reichelt at gcc dot gnu dot org
@ 2006-01-24 11:58 ` reichelt at gcc dot gnu dot org
  2006-01-24 21:39 ` reichelt at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-24 11:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from reichelt at gcc dot gnu dot org  2006-01-24 11:58 -------
Fixed on mainline.
Needs retesting on the branches.


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[4.0/4.1/4.2 regression]    |[4.0/4.1 regression] Invalid
                   |Invalid destructor name     |destructor name accepted in
                   |accepted in friend          |friend declaration
                   |declaration                 |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2006-01-24 11:58 ` [Bug c++/25552] [4.0/4.1 " reichelt at gcc dot gnu dot org
@ 2006-01-24 21:39 ` reichelt at gcc dot gnu dot org
  2006-01-24 21:45 ` reichelt at gcc dot gnu dot org
  2006-01-24 22:00 ` [Bug c++/25552] [4.0/4.1/4.2 " reichelt at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-24 21:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from reichelt at gcc dot gnu dot org  2006-01-24 21:39 -------
Subject: Bug 25552

Author: reichelt
Date: Tue Jan 24 21:38:56 2006
New Revision: 110180

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110180
Log:
        PR c++/25552
        * parser.c (cp_parser_unqualified_id): Check that destructor name
        and scope match.
        * call.c (check_dtor_name): Do not expect a BIT_NOT_EXPR.
        Adjust comment.  Use same_type_p to compare types.
        * typeck.c (lookup_destructor): Adjust call to check_dtor_name.
        * init.c (build_offset_ref): Adjust call to check_dtor_name.

        * g++.dg/parse/dtor8.C: New test.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/parse/dtor8.C
Modified:
    branches/gcc-4_1-branch/gcc/cp/ChangeLog
    branches/gcc-4_1-branch/gcc/cp/call.c
    branches/gcc-4_1-branch/gcc/cp/init.c
    branches/gcc-4_1-branch/gcc/cp/parser.c
    branches/gcc-4_1-branch/gcc/cp/typeck.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2006-01-24 21:39 ` reichelt at gcc dot gnu dot org
@ 2006-01-24 21:45 ` reichelt at gcc dot gnu dot org
  2006-01-24 22:00 ` [Bug c++/25552] [4.0/4.1/4.2 " reichelt at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-24 21:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from reichelt at gcc dot gnu dot org  2006-01-24 21:45 -------
Subject: Bug 25552

Author: reichelt
Date: Tue Jan 24 21:44:57 2006
New Revision: 110181

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110181
Log:
        PR c++/25552
        * parser.c (cp_parser_unqualified_id): Check that destructor name
        and scope match.
        * call.c (check_dtor_name): Do not expect a BIT_NOT_EXPR.
        Adjust comment.  Use same_type_p to compare types.
        * typeck.c (lookup_destructor): Adjust call to check_dtor_name.
        * init.c (build_offset_ref): Adjust call to check_dtor_name.

        * g++.dg/parse/dtor8.C: New test.

Added:
    branches/gcc-4_0-branch/gcc/testsuite/g++.dg/parse/dtor8.C
Modified:
    branches/gcc-4_0-branch/gcc/cp/ChangeLog
    branches/gcc-4_0-branch/gcc/cp/call.c
    branches/gcc-4_0-branch/gcc/cp/init.c
    branches/gcc-4_0-branch/gcc/cp/parser.c
    branches/gcc-4_0-branch/gcc/cp/typeck.c
    branches/gcc-4_0-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug c++/25552] [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration
  2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2006-01-24 21:45 ` reichelt at gcc dot gnu dot org
@ 2006-01-24 22:00 ` reichelt at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2006-01-24 22:00 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from reichelt at gcc dot gnu dot org  2006-01-24 22:00 -------
Now also fixed ion the 4.0 branch and the 4.1 branch.


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
            Summary|[4.0/4.1 regression] Invalid|[4.0/4.1/4.2 regression]
                   |destructor name accepted in |Invalid destructor name
                   |friend declaration          |accepted in friend
                   |                            |declaration


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25552


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2006-01-24 22:00 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-12-23 22:49 [Bug c++/25552] New: [4.0/4.1/4.2 regression] Invalid destructor name accepted in friend declaration reichelt at gcc dot gnu dot org
2005-12-23 22:50 ` [Bug c++/25552] " reichelt at gcc dot gnu dot org
2006-01-04 13:53 ` reichelt at gcc dot gnu dot org
2006-01-15 22:20 ` mmitchel at gcc dot gnu dot org
2006-01-24 11:56 ` reichelt at gcc dot gnu dot org
2006-01-24 11:58 ` [Bug c++/25552] [4.0/4.1 " reichelt at gcc dot gnu dot org
2006-01-24 21:39 ` reichelt at gcc dot gnu dot org
2006-01-24 21:45 ` reichelt at gcc dot gnu dot org
2006-01-24 22:00 ` [Bug c++/25552] [4.0/4.1/4.2 " reichelt at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).