* Added several cast to int of the enums (needed for some compilers)

* Fix a mistake in CwiseNullary.
* Added a CoreDeclarions header that declares only the forward declarations
  and related basic stuffs.
This commit is contained in:
Gael Guennebaud
2008-05-12 18:09:30 +00:00
parent 678f18fce4
commit 4317fad869
16 changed files with 93 additions and 78 deletions

View File

@@ -158,9 +158,9 @@ class ei_corrected_matrix_flags
};
public:
enum { ret = is_vectorizable
? _flags1 | VectorizableBit
: _flags1 & ~VectorizableBit
enum { ret = int(is_vectorizable)
? int(_flags1) | int(VectorizableBit)
: int(_flags1) & ~int(VectorizableBit)
};
};
@@ -208,8 +208,8 @@ template<typename T, int n=1> struct ei_nested
ei_is_temporary<T>::ret,
T,
typename ei_meta_if<
ei_traits<T>::Flags & EvalBeforeNestingBit
|| (n+1) * NumTraits<typename ei_traits<T>::Scalar>::ReadCost < (n-1) * T::CoeffReadCost,
int(ei_traits<T>::Flags) & EvalBeforeNestingBit
|| (n+1) * int(NumTraits<typename ei_traits<T>::Scalar>::ReadCost) < (n-1) * int(T::CoeffReadCost),
typename ei_eval<T>::type,
const T&
>::ret