Turn on some of the cxx11 features when compiling with visual studio 2015

This commit is contained in:
Benoit Steiner 2016-03-05 10:52:08 -08:00
parent 6093eb9ff5
commit 05bbca079a
2 changed files with 6 additions and 4 deletions

View File

@ -360,7 +360,7 @@
#endif
// Does the compiler support variadic templates?
#if __cplusplus > 199711L
#if __cplusplus > 199711L || EIGEN_COMP_MSVC >= 1900
// Disable the use of variadic templates when compiling with nvcc on ARM devices:
// this prevents nvcc from crashing when compiling Eigen on Tegra X1
#if !defined(__NVCC__) || !EIGEN_ARCH_ARM_OR_ARM64

View File

@ -35,11 +35,13 @@
#include "src/Core/util/EmulateArray.h"
// Emulate the cxx11 functionality that we need if the compiler doesn't support it.
#if __cplusplus <= 199711L
#include "src/Core/util/EmulateCXX11Meta.h"
#else
// Visual studio 2015 doesn't advertise itself as cxx11 compliant, although it
// supports enough of the standard for our needs
#if __cplusplus > 199711L || EIGEN_COMP_MSVC >= 1900
#include "src/Core/util/CXX11Workarounds.h"
#include "src/Core/util/CXX11Meta.h"
#else
#include "src/Core/util/EmulateCXX11Meta.h"
#endif
#include <Eigen/src/Core/util/ReenableStupidWarnings.h>