diff options
author | Hauke Heibel <hauke.heibel@gmail.com> | 2010-04-21 18:21:46 +0200 |
---|---|---|
committer | Hauke Heibel <hauke.heibel@gmail.com> | 2010-04-21 18:21:46 +0200 |
commit | 2db538748847b230ff33cfa7f77426400b9b4811 (patch) | |
tree | 123458a2f26b00312684346b47e3ac9c662339a4 /Eigen/src/StlSupport/StdList.h | |
parent | 028bb7ea48c6adeb4599947341e4b5363c0f3bdd (diff) |
Fixed two bad errors on std::vector.
First, MSVC 2010 does not ship a 'fixed'/'adapted' STL.
Second, only under very rare cases we do not even need the aligned_allocator.
Diffstat (limited to 'Eigen/src/StlSupport/StdList.h')
-rw-r--r-- | Eigen/src/StlSupport/StdList.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Eigen/src/StlSupport/StdList.h b/Eigen/src/StlSupport/StdList.h index 43af4f0f8..55b90066e 100644 --- a/Eigen/src/StlSupport/StdList.h +++ b/Eigen/src/StlSupport/StdList.h @@ -66,6 +66,9 @@ namespace std \ }; \ } +// check whether we really need the std::vector specialization +#if !(defined(_GLIBCXX_VECTOR) && (!EIGEN_GNUC_AT_LEAST(4,1))) /* Note that before gcc-4.1 we already have: std::list::resize(size_type,const T&). */ + namespace std { @@ -91,7 +94,7 @@ namespace std template<typename T> class list<T,Eigen::aligned_allocator<T> > : public list<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T), - Eigen::aligned_allocator_indirection<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)> > + Eigen::aligned_allocator_indirection<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)> > { typedef list<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T), Eigen::aligned_allocator_indirection<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)> > list_base; @@ -121,4 +124,6 @@ namespace std }; } +#endif // check whether specialization is actually required + #endif // EIGEN_STDLIST_H |