brunocodutra / metal

Love template metaprogramming
https://brunocodutra.github.io/metal/
MIT License
325 stars 23 forks source link

MSVC 14 workaround for defaulted template alias parameter #110

Closed ecrypa closed 5 years ago

ecrypa commented 5 years ago

Either something weird is going on, or my check is not effective. This code causes no problems on MSVC 14!

brunocodutra commented 5 years ago

MSVC doesn't have a problem with default template arguments in general, it struggles only when SFINAE is involved and it has to recover from a substitution that relies on the default argument. Does that make sense?

EDIT: for example static_assert(!is_invocable<lambda<sort>, void>{}) probably makes it unhapy.

ecrypa commented 5 years ago

I am not motivated to continue here.