diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-03-29 16:48:04 +0000 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-03-29 16:48:04 +0000 |
commit | 758b26551a01894f76c8376f11ac9fd3c13d0844 (patch) | |
tree | d98ca1dbacd3b05d0803e14384f304a54409492c /Eigen/src | |
parent | c9b0dcd733b94c8a3faf3f110c2d4823aaaa337c (diff) |
* fix compilation with gcc-4.0 which doesn't like "using" too much
* add Eigen:: in some macros to allow using them from outside
of namespace Eigen
Problems and solutions communicated by Gael.
Diffstat (limited to 'Eigen/src')
-rw-r--r-- | Eigen/src/Core/Util.h | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/Eigen/src/Core/Util.h b/Eigen/src/Core/Util.h index 55f9fa7df..76b0ea99d 100644 --- a/Eigen/src/Core/Util.h +++ b/Eigen/src/Core/Util.h @@ -85,18 +85,18 @@ using Eigen::MatrixBase; template<typename OtherDerived> \ Derived& operator Op(const MatrixBase<OtherDerived>& other) \ { \ - return MatrixBase<Derived>::operator Op(other); \ + return Eigen::MatrixBase<Derived>::operator Op(other); \ } \ Derived& operator Op(const Derived& other) \ { \ - return MatrixBase<Derived>::operator Op(other); \ + return Eigen::MatrixBase<Derived>::operator Op(other); \ } #define EIGEN_INHERIT_SCALAR_ASSIGNMENT_OPERATOR(Derived, Op) \ template<typename Other> \ Derived& operator Op(const Other& scalar) \ { \ - return MatrixBase<Derived>::operator Op(scalar); \ + return Eigen::MatrixBase<Derived>::operator Op(scalar); \ } #define EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Derived) \ @@ -108,19 +108,19 @@ EIGEN_INHERIT_SCALAR_ASSIGNMENT_OPERATOR(Derived, /=) #define _EIGEN_GENERIC_PUBLIC_INTERFACE(Derived, BaseClass) \ typedef BaseClass Base; \ -typedef typename ei_traits<Derived>::Scalar Scalar; \ -using Base::RowsAtCompileTime; \ -using Base::ColsAtCompileTime; \ -using Base::MaxRowsAtCompileTime; \ -using Base::MaxColsAtCompileTime; \ -using Base::SizeAtCompileTime; \ -using Base::MaxSizeAtCompileTime; \ -using Base::IsVectorAtCompileTime; \ -typedef typename ei_xpr_copy<Derived>::Type XprCopy; +typedef typename Eigen::ei_traits<Derived>::Scalar Scalar; \ +typedef typename Eigen::ei_xpr_copy<Derived>::Type XprCopy; \ +enum { RowsAtCompileTime = Base::RowsAtCompileTime, \ + ColsAtCompileTime = Base::ColsAtCompileTime, \ + MaxRowsAtCompileTime = Base::MaxRowsAtCompileTime, \ + MaxColsAtCompileTime = Base::MaxColsAtCompileTime, \ + SizeAtCompileTime = Base::SizeAtCompileTime, \ + MaxSizeAtCompileTime = Base::MaxSizeAtCompileTime, \ + IsVectorAtCompileTime = Base::IsVectorAtCompileTime }; #define EIGEN_GENERIC_PUBLIC_INTERFACE(Derived) \ -_EIGEN_GENERIC_PUBLIC_INTERFACE(Derived, MatrixBase<Derived>) \ -friend class MatrixBase<Derived>; +_EIGEN_GENERIC_PUBLIC_INTERFACE(Derived, Eigen::MatrixBase<Derived>) \ +friend class Eigen::MatrixBase<Derived>; #define EIGEN_ENUM_MIN(a,b) (((int)a <= (int)b) ? (int)a : (int)b) |