[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdesupport/eigen2/Eigen/src/Core
From:       Gael Guennebaud <g.gael () free ! fr>
Date:       2009-01-29 9:45:26
Message-ID: 1233222326.178048.25367.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 918109 by ggael:

fix MSVC stupid warnings


 M  +7 -7      DiagonalMatrix.h  


--- trunk/kdesupport/eigen2/Eigen/src/Core/DiagonalMatrix.h #918108:918109
@@ -39,12 +39,10 @@
 
   protected:
     typedef typename ei_cleantype<CoeffsVectorType>::type _CoeffsVectorType;
-    
-    template<typename OtherDerived,
-      bool IsVector = OtherDerived::IsVectorAtCompileTime,
-      bool IsDiagonal = (OtherDerived::Flags&Diagonal)==Diagonal>
-    struct construct_from_expression;
 
+    // MSVC gets crazy if we define default parameters
+    template<typename OtherDerived, bool IsVector, bool IsDiagonal> struct \
construct_from_expression; +
     // = vector
     template<typename OtherDerived>
     struct construct_from_expression<OtherDerived,true,false>
@@ -69,7 +67,8 @@
     template<typename OtherDerived>
     inline DiagonalMatrixBase(const MatrixBase<OtherDerived>& other)
     {
-      construct_from_expression<OtherDerived>::run(derived(),other.derived());
+      construct_from_expression<OtherDerived,OtherDerived::IsVectorAtCompileTime,(OtherDerived::Flags&Diagonal)==Diagonal>
 +        ::run(derived(),other.derived());
     }
 
   public:
@@ -93,7 +92,8 @@
     template<typename OtherDerived>
     inline Derived& operator=(const MatrixBase<OtherDerived>& other)
     {
-      construct_from_expression<OtherDerived>::run(derived(),other);
+      construct_from_expression<OtherDerived,OtherDerived::IsVectorAtCompileTime,(OtherDerived::Flags&Diagonal)==Diagonal>
 +        ::run(derived(),other);
       return derived();
     }
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic