// RUN: %clang_cc1 -std=c++11 %s -verify // expected-no-diagnostics namespace PR15757 { struct S { }; template struct T { template T(X x, A &&a) {} template explicit T(A &&a) noexcept(noexcept(T(X(), static_cast(a)))) : T(X(), static_cast(a)) {} }; template struct U : T { using T::T; }; U foo(char ch) { return U(ch); } int main() { U a(42); U b('4'); return 0; } } namespace WrongIdent { struct A {}; struct B : A {}; struct C : B { using B::A; }; }