------- Comment #7 from jason at gcc dot gnu dot org 2005-11-17 18:57 ------- Here's a reduced testcase:
namespace N { } namespace std { using namespace N __attribute__ ((strong)); } namespace N { using namespace std; template<typename T> struct A { void f(); }; } namespace std { template<> struct A<int> { void f() { } }; } This code, like the testcase for c++/16021, works fine if the implementation namespace is nested within std. I'm thinking of enforcing that requirement in parse_using_directive; that would allow us to avoid adding more special lookup rules. Do you see any problem with that requirement? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24660