GCC Bugzilla has been upgraded from version 4.4.9 to 5.0rc3. If you see any problem, please report it to bug 64968.
Bug 4882 - fails to lookup a template specialization dependent of an outer template
Summary: fails to lookup a template specialization dependent of an outer template
Status: RESOLVED DUPLICATE of bug 14032
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 3.0.2
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
Keywords: monitored, rejects-valid
: 18007 (view as bug list)
Depends on:
Blocks: 12944
  Show dependency treegraph
Reported: 2001-11-15 08:16 UTC by duret_g
Modified: 2007-02-16 18:39 UTC (History)
15 users (show)

See Also:
Known to work:
Known to fail:
Last reconfirmed: 2006-10-21 21:32:46

c2.cc (165 bytes, text/plain)
2003-05-21 15:16 UTC, duret_g

Note You need to log in before you can comment on or make changes to this bug.
Description duret_g 2001-11-15 08:16:02 UTC
[I'm sorry if this falls into the "two stage lookup in template" category.  The bugs.html page does not explain
what that means.]

GCC fails to compile the attached file
as follow:

~/tmp % gcc-3.0 c2.cc                                                
c2.cc: In function `int main()':
c2.cc:20: `ret' is not a member of type `C<1, 2>::output<D<8, 1> >'
c2.cc:20: parse error before `;' token
The on-line C/C++ Comeau compiles it just fine.


Debian GNU/Linux i386

Compile the attached file.
Comment 1 Kriang Lerdsuwanakij 2001-11-16 09:07:05 UTC
State-Changed-From-To: open->analyzed
State-Changed-Why: Confirmed.
Comment 2 Kriang Lerdsuwanakij 2001-11-16 17:07:06 UTC
From: lerdsuwa@gcc.gnu.org
To: duret_g@epita.fr, gcc-bugs@gcc.gnu.org, gcc-gnats@gcc.gnu.org,
  gcc-prs@gcc.gnu.org, nobody@gcc.gnu.org
Subject: Re: c++/4882: fails to lookup a template specialization dependent of an outer template
Date: 16 Nov 2001 17:07:06 -0000

 Synopsis: fails to lookup a template specialization dependent of an outer template
 State-Changed-From-To: open->analyzed
 State-Changed-By: lerdsuwa
 State-Changed-When: Fri Nov 16 09:07:05 2001
Comment 3 Kriang Lerdsuwanakij 2002-10-26 02:25:12 UTC
Responsible-Changed-From-To: unassigned->lerdsuwa
Responsible-Changed-Why: Under investigation.
Comment 4 Nathanael C. Nerode 2003-01-03 11:19:20 UTC
From: Nathanael Nerode <neroden@twcny.rr.com>
To: gcc-gnats@gcc.gnu.org, gcc-prs@gcc.gnu.org, lerdsuwa@gcc.gnu.org,
   duret_g@epita.fr, gcc-bugs@gcc.gnu.org
Subject: Re: c++/4882: ...
Date: Fri, 3 Jan 2003 11:19:20 -0500

 New error message with 3.4:
 ice.cxx: In function `int main()':
 ice.cxx:20: error: `ret' is not a member of `struct C<1, 2>::output<D<8, 1> >'
 ice.cxx:20: error: expected `;'
Comment 5 Wolfgang Bangerth 2004-10-15 14:50:37 UTC
*** Bug 18007 has been marked as a duplicate of this bug. ***
Comment 6 Wolfgang Bangerth 2004-10-15 14:53:49 UTC
Likely related to PR 10574. 
Comment 7 Wolfgang Bangerth 2004-10-15 14:56:22 UTC
There quite some discussion on this matter in PR 13088. 
Comment 8 Kriang Lerdsuwanakij 2004-11-28 10:46:12 UTC
Work postponed to GCC 4.1.  This bug is tricky to fix.
Comment 9 Kriang Lerdsuwanakij 2005-10-22 13:55:50 UTC
Won't work on it for a long while.
Comment 10 Wolfgang Bangerth 2007-02-16 18:39:33 UTC
This is a duplicate of PR14032, which has more information on the matter
than the present one.


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