The first version "explicitly specifies that the function call operator is a constexpr function. When this specifier is not present, the function call operator will be constexpr anyway, if it happens to satisfy all constexpr function requirements." https://en.cppreference.com/w/cpp/language/lambda
So I wonder what it's purpose is? Perhaps just to catch the "not a constexpr" error earlier in the parse. I guess VSC++ hasn't bothered to implement that yet.