Bug 15260 - base class typedef referred through 'using' declaration still unusable without qualification
Summary: base class typedef referred through 'using' declaration still unusable withou...
Status: RESOLVED DUPLICATE of bug 14258
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 3.4.0
: P2 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
Keywords: rejects-valid
Depends on:
Blocks: 12944
  Show dependency treegraph
Reported: 2004-05-03 10:24 UTC by jbeulich
Modified: 2007-05-06 23:37 UTC (History)
9 users (show)

See Also:
Known to work:
Known to fail: 2.95.3 3.3.3 3.4.0 4.0.0 3.0.4 3.2.3
Last reconfirmed: 2006-03-05 03:16:54


Note You need to log in before you can comment on or make changes to this bug.
Description jbeulich 2004-05-03 10:24:29 UTC
template<typename T> class n;

template<typename T> class b {
	typedef n<T> n_t;

template<typename T> class d : private b<T> {
	using typename b<T>::n_t;
	typename n_t*test1();
	typename b<T>::n_t*test2();

void test() {
	d<int> di;

results in errors on the unqualified uses of n_t in class d. I cannot see
anything invalid with these constructs, nor can Intel's or a couple of other
compilers I tried this with.
Comment 1 Andrew Pinski 2004-05-03 11:20:53 UTC
Confirmed, before 3.4.0, the using statement was rejected also.
Comment 2 Jonathan Wakely 2005-08-31 21:04:49 UTC
Is this a dup of Bug 14258 ?
Comment 3 Andrew Pinski 2007-05-06 23:31:23 UTC
Yes it is a dup.

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