10 #ifndef EIGEN_CXX11WORKAROUNDS_H 11 #define EIGEN_CXX11WORKAROUNDS_H 16 #if defined(__INTEL_COMPILER) && (__INTEL_COMPILER < 1310) 17 #error Intel Compiler only supports required C++ features since version 13.1. 20 #elif defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6)) 26 #pragma GCC diagnostic error "-Wfatal-errors" 27 #error GNU C++ Compiler (g++) only supports required C++ features since version 4.6. 35 #if (__cplusplus <= 199711L) && (EIGEN_COMP_MSVC < 1900) 36 #if defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) 37 #pragma GCC diagnostic error "-Wfatal-errors" 39 #error This library needs at least a C++11 compliant compiler. If you use g++/clang, please enable the -std=c++11 compiler flag. (-std=c++0x on older versions.) 50 template<std::
size_t I,
class T> constexpr
inline T&
array_get(std::vector<T>&
a) {
return a[
I]; }
51 template<std::
size_t I,
class T> constexpr
inline T&&
array_get(std::vector<T>&&
a) {
return a[
I]; }
52 template<std::
size_t I,
class T> constexpr
inline T const&
array_get(std::vector<T>
const&
a) {
return a[
I]; }
68 #if defined(__GNUC__) && !defined(__INTEL_COMPILER) 69 #define EIGEN_TPL_PP_SPEC_HACK_DEF(mt, n) mt... n 70 #define EIGEN_TPL_PP_SPEC_HACK_DEFC(mt, n) , EIGEN_TPL_PP_SPEC_HACK_DEF(mt, n) 71 #define EIGEN_TPL_PP_SPEC_HACK_USE(n) n... 72 #define EIGEN_TPL_PP_SPEC_HACK_USEC(n) , n... 74 #define EIGEN_TPL_PP_SPEC_HACK_DEF(mt, n) 75 #define EIGEN_TPL_PP_SPEC_HACK_DEFC(mt, n) 76 #define EIGEN_TPL_PP_SPEC_HACK_USE(n) 77 #define EIGEN_TPL_PP_SPEC_HACK_USEC(n) 84 #endif // EIGEN_CXX11WORKAROUNDS_H Namespace containing all symbols from the Eigen library.
A small structure to hold a non zero as a triplet (i,j,value).
const Index array_get(DimensionList< Index, Rank > &)