brintos

brintos / llvm-project-archived public Read only

0
0
Text · 617 B · c73ffa5 Raw
30 lines · cpp
1// RUN: %clang_cc1 -verify %s2 3template<typename T>4struct A {5  void f();6};7 8template<typename T>9using B = A<T>;10 11template<typename T>12void B<T>::f() { } // expected-warning {{a declarative nested name specifier cannot name an alias template}}13 14template<>15void B<int>::f() { } // ok, template argument list of simple-template-id doesn't involve template parameters16 17namespace N {18 19  template<typename T>20  struct D {21    void f();22  };23 24  template<typename T>25  using E = D<T>;26}27 28template<typename T>29void N::E<T>::f() { } // expected-warning {{a declarative nested name specifier cannot name an alias template}}30