Why is void_t used in SFINAE?
I intend for my question to be a follow up to: How do we use void_t for SFINAE?. I understand how void_t is used. I do not understand why it is necessary. Let’s take the example from that SO question and remove the void_t template< class , class = void > struct has_member : std::false_type