c++/7218: incorrect 'implicit typename' warnings
ndry@mdcplus.com
ndry@mdcplus.com
Fri Jul 5 19:16:00 GMT 2002
>Number: 7218
>Category: c++
>Synopsis: incorrect 'implicit typename' warnings
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: rejects-legal
>Submitter-Id: net
>Arrival-Date: Fri Jul 05 19:16:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: ndry@mdcplus.com
>Release: 3.1.1 pr
>Organization:
>Environment:
FreeBSD 4.6-STABLE
g++31 (GCC) 3.1.1 20020617 (prerelease) [FreeBSD]
>Description:
The code below(test.cc) is compiled without warnings on g++ 3.0.4.
But on g++ 3.1.1 20020617:
test.cc:5: warning: `typename B<T>::AA' is implicitly a typename
test.cc:5: warning: implicit typename is deprecated, please see the
documentation for details
AA should be lookued up at least when A<T> is instantiated.
>How-To-Repeat:
compile this:
template<class T>
struct A { struct AA {}; };
template<class T>
struct B : A<T> { AA a;};
main(){ B<int> b;};
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the Gcc-prs
mailing list