13 Templates [temp]

13.8 Name resolution [temp.res]

13.8.3 Dependent names [temp.dep]

13.8.3.6 Dependent namespaces [temp.dep.namespace]

A namespace alias is dependent if it is introduced by a namespace-alias-definition whose qualified-namespace-specifier (if any) is a dependent qualified name or whose splice-specifier (if any) is dependent.
A namespace-name is dependent if it names a dependent namespace alias.
[Example 1: template<std::meta::info R> int fn() { namespace Alias = [:R:]; // [:R:] is dependent return typename Alias::T{}; // Alias is dependent } namespace NS { using T = int; } int a = fn<^^NS>(); — end example]