From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12295 invoked by alias); 2 Feb 2004 01:02:24 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 12287 invoked by alias); 2 Feb 2004 01:02:23 -0000 Date: Mon, 02 Feb 2004 01:02:00 -0000 Message-ID: <20040202010223.12286.qmail@sources.redhat.com> From: "gdr at integrable-solutions dot net" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20040201233401.13967.gianni@mariani.ws> References: <20040201233401.13967.gianni@mariani.ws> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug c++/13967] [3.3?/3.4/3.5 regression] template template argument identifier lookup fails scoping rules X-Bugzilla-Reason: CC X-SW-Source: 2004-02/txt/msg00099.txt.bz2 List-Id: ------- Additional Comments From gdr at integrable-solutions dot net 2004-02-02 01:02 ------- Subject: Re: template template argument identifier lookup fails scoping rules "gianni at mariani dot ws" writes: | I lied : | > ... compiles fine on MSVC++ 7.1 and Comeau. | | The truth is: | It compiles fine on Comeau it triggers an internal compiler error on MSVC++v7.1. | | (when I was testing 13808 I had a (mistaken) memory of it compiling fine). | | Nonetheless - it's still a boog. Where? in como or in GCC? Member functions defined in a class definition get rewritten as if they were defined outside of the class. And it is clear that when you rewrite the function outside of the class definition (which is what GCC does), then you find X::C, not the template parameter. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13967