1 // RUN: %clang_cc1 -std=c++1z %s -verify 2 3 // expected-no-diagnostics 4 5 namespace hana_enable_if_idiom { 6 template<bool> struct A {}; 7 template<typename, typename = A<true>> struct B; 8 template<typename T, bool N> struct B<T, A<N>> {}; 9 template<typename T> struct B<T, A<T::value>> {}; 10 struct C { 11 static const bool value = true; 12 }; 13 B<C> b; 14 } 15