This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/11030] Cannot befriend a template specialization


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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


bangerth at dealii dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|two-stage name lookup:      |Cannot befriend a template
                   |Cannot befriend a template  |specialization
                   |specialization              |


------- Additional Comments From bangerth at dealii dot org  2003-06-22 06:38 -------
I don't see how this could possibly have anything to do with
the non-existence of two-stage name lookup. It's rather the
_existence_ of two-stage lookup that creates the problem:
when we look at the template A<S>::func, we want to lookup
C::private_func and realize that we're not (always) a friend.

At least that's the theory, because gcc does not implement
two-stage name lookup for functions yet. If it would, it
would spit out the error independent of the instantiation.
Presently, the instantiation is actually needed.

The problem is rather in the fact that AFAICT friend declarations
may not be against specializations -- either the whole template
or nothing.

W.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]