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