[Bug c++/68313] New: "using" shadows declaration
wd11 at leicester dot ac.uk
gcc-bugzilla@gcc.gnu.org
Thu Nov 12 13:53:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68313
Bug ID: 68313
Summary: "using" shadows declaration
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: wd11 at leicester dot ac.uk
Target Milestone: ---
The following valid code (modified from bug 37374)
namespace N1 { void f() {} }
namespace N2 { template<typename X> void f(X); using N1::f; }
template<typename X> void N2::f(X) {}
template void N2::f(int);
main() { N2::f(0); }
is rejected (gcc 5.1.0), claiming that void N2::f(int) is not declared in
namespace N2. A similar error occurs in the following code:
namespace N1 { void f() {}
namespace N2 {
template<typename X> void f(X);
using N1::f;
template<typename X> void f(X) {}
template void f(int);
}
}
when the using declaration is redundant.
More information about the Gcc-bugs
mailing list