http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59815
Bug ID: 59815
Summary: Apparently bogus error: 'Outer' is already declared in
this scope
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: ppluzhnikov at google dot com
Google ref: b/12471255
/// --- cut ---
namespace foo
{
template < typename > class A
{
template < typename > friend class Outer;
};
class B:foo::A < int >
{
};
template < typename > class Outer;
}
using foo::Outer;
/// --- cut ---
Using g++ (GCC) 4.9.0 20140110 (experimental):
g++ -c tt.cc
tt.cc:13:12: error: 'Outer' is already declared in this scope
using foo::Outer;
^
Source is accepted by Clang and is believed to be valid.