template<typename ...>
struct boost::hana::detail::wrong<... >
Equivalent to a type-dependent std::false_type. 
This is useful for making a static assertion that would otherwise always fire up dependent on some template parameters.
Example 
template <typename T, typename U>
struct base_template {
    
    
    
    static_assert(hana::detail::wrong<base_template<T, U>>::
value,
    "base_template does not have a valid default definition");
};
template <>
struct base_template<int, int> {
    
};
int main() { }
Inherits false_type.