Enable std::result_of for msvc 2015 and later

This commit is contained in:
Gael Guennebaud 2018-09-13 09:44:46 +02:00
parent 3adece4827
commit 5927eef612

View File

@ -533,8 +533,11 @@
#endif
// Does the compiler support result_of?
// It's likely that MSVC 2013 supports result_of but I couldn't not find a good source for that,
// so let's be conservative.
#ifndef EIGEN_HAS_STD_RESULT_OF
#if EIGEN_MAX_CPP_VER>=11 && ((__has_feature(cxx_lambdas) || (defined(__cplusplus) && __cplusplus >= 201103L)))
#if EIGEN_MAX_CPP_VER>=11 && \
(__has_feature(cxx_lambdas) || (defined(__cplusplus) && __cplusplus >= 201103L) || EIGEN_COMP_MSVC >= 1900)
#define EIGEN_HAS_STD_RESULT_OF 1
#else
#define EIGEN_HAS_STD_RESULT_OF 0