(this question is not related to C++11/C++14: the examples are compiled using C++03) enable_bool<T> has a member ::type only when T is bool template <class T> struct enable_bool {}; template <> struct enable_bool< bool > { typedef bool type; }; In the next snippet, the partial specialization is correct (see gcc.godbolt.org) template <class T, class […]
The post Why SFINAE requires the ‘Enable’ class template parameter? appeared first on BlogoSfera.