public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/19403] New: name lookup is broken
@ 2005-01-12 18:04 Woebbeking at web dot de
  2005-01-12 18:42 ` [Bug c++/19403] [4.0 Regression] name lookup is broken with friends pinskia at gcc dot gnu dot org
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: Woebbeking at web dot de @ 2005-01-12 18:04 UTC (permalink / raw)
  To: gcc-bugs

Hi, 
 
the following code doesn't compile: 
 
struct A {}; 
 
namespace Boo 
{ 
struct B 
{ 
    friend struct A; 
 
    B(const A&) {}; 
}; 
} 
 
int main() 
{ 
    A a; 
    Boo::B b(a); 
    return 0; 
} 
 
It compiles with g++ < 4.0.

-- 
           Summary: name lookup is broken
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: Woebbeking at web dot de
                CC: gcc-bugs at gcc dot gnu dot org


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
@ 2005-01-12 18:42 ` pinskia at gcc dot gnu dot org
  2005-01-12 19:37 ` gdr at integrable-solutions dot net
                   ` (18 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-12 18:42 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-12 18:42 -------
: Search converges between 2004-11-25-014001-trunk (#656) and 2004-11-25-161001-trunk 
(#657).

Yes this is valid code. we should have found the global A for the statement "friend struct A;" but instead 
it adds a class to the namespace Boo which is wrong.

I am alomst certain it is caused by one of the "Friend class name lookup" patches.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |lerdsuwa at users dot
                   |                            |sourceforge dot net
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |rejects-valid
   Last reconfirmed|0000-00-00 00:00:00         |2005-01-12 18:42:20
               date|                            |
            Summary|name lookup is broken       |[4.0 Regression] name lookup
                   |                            |is broken with friends
   Target Milestone|---                         |4.0.0


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
  2005-01-12 18:42 ` [Bug c++/19403] [4.0 Regression] name lookup is broken with friends pinskia at gcc dot gnu dot org
@ 2005-01-12 19:37 ` gdr at integrable-solutions dot net
  2005-01-12 19:47 ` pinskia at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: gdr at integrable-solutions dot net @ 2005-01-12 19:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at integrable-solutions dot net  2005-01-12 19:37 -------
Subject: Re:  [4.0 Regression] name lookup is broken with friends

"pinskia at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes:

| : Search converges between 2004-11-25-014001-trunk (#656) and 2004-11-25-161001-trunk 
| (#657).
| 
| Yes this is valid code. we should have found the global A for the statement "friend struct A;" but instead 
| it adds a class to the namespace Boo which is wrong.

Excuse me?

The behaviour mandated by the C++ standard is that if there is no
declaration for type A in the innermost enclosing namespace then an
implicit one is added -- because A is used unqualified.  In
particular, the global A should not be found. Thus the code is
ill-formed.
The PR should be closed as invalid.

-- Gaby


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
  2005-01-12 18:42 ` [Bug c++/19403] [4.0 Regression] name lookup is broken with friends pinskia at gcc dot gnu dot org
  2005-01-12 19:37 ` gdr at integrable-solutions dot net
@ 2005-01-12 19:47 ` pinskia at gcc dot gnu dot org
  2005-01-13  5:55 ` lerdsuwa at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-12 19:47 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-12 19:47 -------
(In reply to comment #2)
> Excuse me?

You are right, but what is werid here is that ICC even in strict mode and Comeau accept the code.

This is invalid code and a dup of bug 14513.

*** This bug has been marked as a duplicate of 14513 ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |DUPLICATE


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (2 preceding siblings ...)
  2005-01-12 19:47 ` pinskia at gcc dot gnu dot org
@ 2005-01-13  5:55 ` lerdsuwa at gcc dot gnu dot org
  2005-01-13 10:08 ` Woebbeking at web dot de
                   ` (15 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: lerdsuwa at gcc dot gnu dot org @ 2005-01-13  5:55 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-13 05:55 -------
Both ICC and Comeau are right.
The declaration

    friend struct A; 

refers to boo::A, while the declaration
 
    B(const A&) {}; 

refers to ::A.  So the code should compile.
The patch for PR1016, scheduled for 4.1, should fix it.


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (3 preceding siblings ...)
  2005-01-13  5:55 ` lerdsuwa at gcc dot gnu dot org
@ 2005-01-13 10:08 ` Woebbeking at web dot de
  2005-01-13 14:52 ` lerdsuwa at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: Woebbeking at web dot de @ 2005-01-13 10:08 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 760 bytes --]


------- Additional Comments From Woebbeking at web dot de  2005-01-13 10:07 -------
Subject: Re:  [4.0 Regression] name lookup is broken with friends

On Wednesday 12 January 2005 20:37, gdr at integrable-solutions dot net wrote:
>
> Excuse me?
>
> The behaviour mandated by the C++ standard is that if there is no
> declaration for type A in the innermost enclosing namespace then an
> implicit one is added -- because A is used unqualified.  In
> particular, the global A should not be found. Thus the code is
> ill-formed.

So B's ctor uses the global A without the friend declaration and with the 
friend declaration the local injected A? Sometimes the holy standard confuses 
me a bit.


André


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (4 preceding siblings ...)
  2005-01-13 10:08 ` Woebbeking at web dot de
@ 2005-01-13 14:52 ` lerdsuwa at gcc dot gnu dot org
  2005-01-14  9:56 ` Woebbeking at web dot de
                   ` (13 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: lerdsuwa at gcc dot gnu dot org @ 2005-01-13 14:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-01-13 14:52 -------
> So B's ctor uses the global A without the friend declaration and with the 
> friend declaration the local injected A? Sometimes the holy standard confuses 
> me a bit.

No. With or without friend declaration, the B's ctor should always pick
the global A.  This is one weird rule in C++ standard.  
The idea is that name lookup for 'friend struct A;' only find A within 
one level outside the classes enclosing the friend declaration:

  namespace N {
    class A {
      class B {
        friend class C; // Classes A and B enclosing this friend.
                        // one level up is namespace N.
                        // Since there is no B::C nor A::C,
                        // this refers to N::C
      };
    };
  }

  void f() {
    class D {
      friend class E;   // Since there is no D::E, one level up
                        // is the local class E inside function f.
    };
  }

When refer to A without the prefix 'class' or 'struct', any name
can be used.  However the name introduced by friend must be
explicitly declared first to be visible.

Now it's your example, expanded with more cases and comment describing
the way it should be handled.

  struct A {}; 
 
  namespace Boo 
  { 
     struct B 
     { 
       friend struct A; // Since there is no B::A, this means Boo::A
                        // It introduces Boo::A but still invisible
                        // since there is no Boo::A declaration prior
                        // to this friend.
 
       B(const A&) {}; // Boo::A is still not visible,
                       // so ::A is chosen here
     };

     void f(const A&) {} // Boo::A is still not visible, choose ::A

     struct A; // Declare Boo::A explicitly, so Boo::A is now visible

     void g(const A&) {} // Choose Boo::A
  }

-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (5 preceding siblings ...)
  2005-01-13 14:52 ` lerdsuwa at gcc dot gnu dot org
@ 2005-01-14  9:56 ` Woebbeking at web dot de
  2005-01-14 16:07 ` gdr at integrable-solutions dot net
                   ` (12 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: Woebbeking at web dot de @ 2005-01-14  9:56 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 676 bytes --]


------- Additional Comments From Woebbeking at web dot de  2005-01-14 09:56 -------
Subject: Re:  [4.0 Regression] name lookup is broken with friends

On Thursday 13 January 2005 15:52, lerdsuwa at gcc dot gnu dot org wrote:
>
> > So B's ctor uses the global A without the friend declaration and with the
> > friend declaration the local injected A? Sometimes the holy standard
> > confuses me a bit.
>
> No. With or without friend declaration, the B's ctor should always pick
> the global A.  This is one weird rule in C++ standard.

Now I'm even more confused than before. Who is right, Gaby or lerdsuwa?


André


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (6 preceding siblings ...)
  2005-01-14  9:56 ` Woebbeking at web dot de
@ 2005-01-14 16:07 ` gdr at integrable-solutions dot net
  2005-01-14 16:10 ` gdr at integrable-solutions dot net
                   ` (11 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: gdr at integrable-solutions dot net @ 2005-01-14 16:07 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at integrable-solutions dot net  2005-01-14 16:06 -------
Subject: Re:  [4.0 Regression] name lookup is broken with friends

"Woebbeking at web dot de" <gcc-bugzilla@gcc.gnu.org> writes:

| Subject: Re:  [4.0 Regression] name lookup is broken with friends
| 
| On Thursday 13 January 2005 15:52, lerdsuwa at gcc dot gnu dot org wrote:
| >
| > > So B's ctor uses the global A without the friend declaration and with the
| > > friend declaration the local injected A? Sometimes the holy standard
| > > confuses me a bit.
| >
| > No. With or without friend declaration, the B's ctor should always pick
| > the global A.  This is one weird rule in C++ standard.
| 
| Now I'm even more confused than before. Who is right, Gaby or lerdsuwa?

lerdsuwa is right on all points.  Gaby is right on the friend
declaration and wrong the fact that the code should not compile.
Both lerdsuwa and Gaby agree on what the friend declaration does.

The program would compile (as it does in previous versions) but it
will not have the same semantics as with previous GCC.  The previous
behaviour was wrong in the sense that GCC picked the wrong "A".
When lerdsuwa's patch is applied, your program will be accpeted, but
it will not do what you thought it would do.


As a tangential note, sometime ago, I requested that a
template-parameter be allowed to be a friend (currently 
forbidden). As a result of that reuest, Mike Miller proposed a wording
to amend the current rules and we will have the new friend syntax

       friend T;

where "T" can be any type-name -- not just an elaborated specifier..  
At the moment there is a debate whether that friend-declaration should
introduce a new name (current friend-declaration semantics) or just
refer to an existing declaration (with error if none exists).
John Spicer and I favour the latter semantics.  If that semantics get
adopted, you could leave out the "class" from your friend-declaration
and the semantics would be such that in all cases the compiler will
pick ::A.  Which I believe is the least surprising behaviour.

This proposal had been discussed at several time by both Core and
Evolution groups; and Mike already wrote formal standardese for that.
My hope is that the next meeting would promote that formal
specification to "higher" level, either in the working paper or close
to. But I guess that does not help you much, now.

-- Gaby


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (7 preceding siblings ...)
  2005-01-14 16:07 ` gdr at integrable-solutions dot net
@ 2005-01-14 16:10 ` gdr at integrable-solutions dot net
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: gdr at integrable-solutions dot net @ 2005-01-14 16:10 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From gdr at integrable-solutions dot net  2005-01-14 16:10 -------
Subject: Re:  [4.0 Regression] name lookup is broken with friends

"pinskia at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes:

| (In reply to comment #2)
| > Excuse me?
| 
| You are right, but what is werid here is that ICC even in strict mode and Comeau accept the code.

My apologies.  After close inspection, ICC and Comeau are right in
accepting the code, but with semantics different from what GCC used to
do (wrong behaviour).

| This is invalid code and a dup of bug 14513.

Sadly, I was hastly.  The code is valid, this is reject-valid.
But the behaivour is not the one we used to implement.

-- Gaby


-- 


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (10 preceding siblings ...)
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
@ 2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
  2005-02-11 22:40 ` reichelt at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-30 14:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-30 14:28 -------
Confirmed.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
             Status|REOPENED                    |NEW


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (9 preceding siblings ...)
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
@ 2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-30 14:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-30 14:27 -------
Reopening as I must have missed GDR's last comment.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|DUPLICATE                   |


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (8 preceding siblings ...)
  2005-01-14 16:10 ` gdr at integrable-solutions dot net
@ 2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-30 14:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-30 14:28 -------
*** Bug 19709 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |debian-gcc at lists dot
                   |                            |debian dot org


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (11 preceding siblings ...)
  2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
@ 2005-02-11 22:40 ` reichelt at gcc dot gnu dot org
  2005-02-11 23:51 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: reichelt at gcc dot gnu dot org @ 2005-02-11 22:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From reichelt at gcc dot gnu dot org  2005-02-11 17:37 -------
This looks like a duplicate of PR 1016 to me.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org


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


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

* [Bug c++/19403] [4.0 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (12 preceding siblings ...)
  2005-02-11 22:40 ` reichelt at gcc dot gnu dot org
@ 2005-02-11 23:51 ` pinskia at gcc dot gnu dot org
  2005-03-13 14:21 ` [Bug c++/19403] [4.0/4.1 " lerdsuwa at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-11 23:51 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-11 20:34 -------
(In reply to comment #13)
> This looks like a duplicate of PR 1016 to me.

It might be a dup bug the example in this bug was able to compile in 3.4.0 and before.

-- 


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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (13 preceding siblings ...)
  2005-02-11 23:51 ` pinskia at gcc dot gnu dot org
@ 2005-03-13 14:21 ` lerdsuwa at gcc dot gnu dot org
  2005-03-14 14:40 ` lerdsuwa at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: lerdsuwa at gcc dot gnu dot org @ 2005-03-13 14:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-03-13 14:21 -------
The fix is the same as PR1016.  GCC 3.4 and earlier compiles but
doesn't have correct behavior.  So this should not be treated as
regression.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |1016
         AssignedTo|unassigned at gcc dot gnu   |lerdsuwa at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-01-12 18:42:20         |2005-03-13 14:21:48
               date|                            |


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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (14 preceding siblings ...)
  2005-03-13 14:21 ` [Bug c++/19403] [4.0/4.1 " lerdsuwa at gcc dot gnu dot org
@ 2005-03-14 14:40 ` lerdsuwa at gcc dot gnu dot org
  2005-03-14 14:46 ` lerdsuwa at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: lerdsuwa at gcc dot gnu dot org @ 2005-03-14 14:40 UTC (permalink / raw)
  To: gcc-bugs



-- 
Bug 19403 depends on bug 1016, which changed state.

Bug 1016 Summary: [DR 166] friend class declarations not observing namespace rules.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=1016

           What    |Old Value                   |New Value
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (15 preceding siblings ...)
  2005-03-14 14:40 ` lerdsuwa at gcc dot gnu dot org
@ 2005-03-14 14:46 ` lerdsuwa at gcc dot gnu dot org
  2005-04-23 20:38 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: lerdsuwa at gcc dot gnu dot org @ 2005-03-14 14:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-03-14 14:46 -------
Fixed in the mainline.  Won't fix in 4.0 branch since the GCC 3.4.x
behavior is also wrong.  The error message present in 4.0 is useful
to point out that the code need to be updated because GCC 4.1 will
accept the code but have different behavior.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.0.0                       |4.1.0


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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (16 preceding siblings ...)
  2005-03-14 14:46 ` lerdsuwa at gcc dot gnu dot org
@ 2005-04-23 20:38 ` pinskia at gcc dot gnu dot org
  2005-04-26 13:23 ` pinskia at gcc dot gnu dot org
  2005-06-23 15:47 ` pinskia at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-04-23 20:38 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-04-23 20:38 -------
*** Bug 21181 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tneumann at pi3 dot
                   |                            |informatik dot uni-mannheim
                   |                            |dot de


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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (17 preceding siblings ...)
  2005-04-23 20:38 ` pinskia at gcc dot gnu dot org
@ 2005-04-26 13:23 ` pinskia at gcc dot gnu dot org
  2005-06-23 15:47 ` pinskia at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-04-26 13:23 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-04-26 13:20 -------
*** Bug 21235 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pcarlini at suse dot de


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


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

* [Bug c++/19403] [4.0/4.1 Regression] name lookup is broken with friends
  2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
                   ` (18 preceding siblings ...)
  2005-04-26 13:23 ` pinskia at gcc dot gnu dot org
@ 2005-06-23 15:47 ` pinskia at gcc dot gnu dot org
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-06-23 15:47 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.1.0                       |4.0.1


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


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

end of thread, other threads:[~2005-06-23 15:47 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-12 18:04 [Bug c++/19403] New: name lookup is broken Woebbeking at web dot de
2005-01-12 18:42 ` [Bug c++/19403] [4.0 Regression] name lookup is broken with friends pinskia at gcc dot gnu dot org
2005-01-12 19:37 ` gdr at integrable-solutions dot net
2005-01-12 19:47 ` pinskia at gcc dot gnu dot org
2005-01-13  5:55 ` lerdsuwa at gcc dot gnu dot org
2005-01-13 10:08 ` Woebbeking at web dot de
2005-01-13 14:52 ` lerdsuwa at gcc dot gnu dot org
2005-01-14  9:56 ` Woebbeking at web dot de
2005-01-14 16:07 ` gdr at integrable-solutions dot net
2005-01-14 16:10 ` gdr at integrable-solutions dot net
2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
2005-01-30 14:29 ` pinskia at gcc dot gnu dot org
2005-02-11 22:40 ` reichelt at gcc dot gnu dot org
2005-02-11 23:51 ` pinskia at gcc dot gnu dot org
2005-03-13 14:21 ` [Bug c++/19403] [4.0/4.1 " lerdsuwa at gcc dot gnu dot org
2005-03-14 14:40 ` lerdsuwa at gcc dot gnu dot org
2005-03-14 14:46 ` lerdsuwa at gcc dot gnu dot org
2005-04-23 20:38 ` pinskia at gcc dot gnu dot org
2005-04-26 13:23 ` pinskia at gcc dot gnu dot org
2005-06-23 15:47 ` pinskia 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).