brintos

brintos / llvm-project-archived public Read only

0
0
Text · 880 B · 1541d5f Raw
30 lines · c
1BEGIN2template<typename T = int> struct A {};3template<typename T> struct B {};4template<typename T> struct C;5template<typename T> struct D;6template<typename T> struct E;7template<typename T = int> struct G;8template<typename T = int> struct H;9template<typename T> struct J {};10template<typename T = int> struct J;11struct K : J<> {};12template<typename T = void> struct L;13struct FriendL {14  template<typename T> friend struct L;15};16END17 18namespace DeferredLookup {19  template<typename T, typename U = T> using X = U;20  template<typename T> void f() { (void) X<T>(); }21  template<typename T> int n = X<T>();22  template<typename T> struct S { X<T> xt; enum E : int; };23  template<typename T> enum S<T>::E : int { a = X<T>() };24 25  namespace Indirect {26    template<typename, bool = true> struct A {};27    template<typename> struct B { template<typename T> using C = A<T>; };28  }29}30