diff options
author | Gael Guennebaud <g.gael@free.fr> | 2014-09-10 10:33:19 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2014-09-10 10:33:19 +0200 |
commit | 921a645481aa8825549960c19db2c1bee8375f8f (patch) | |
tree | 8c14e8094156da839c61805578ea2c802473d42d /Eigen/src/Core/ArrayWrapper.h | |
parent | 4b678b96eb6cacf59ed19940bcafa1fa4e6f55c0 (diff) |
ArrayWrapper and MatrixWrapper classes should not be nested by reference.
Diffstat (limited to 'Eigen/src/Core/ArrayWrapper.h')
-rw-r--r-- | Eigen/src/Core/ArrayWrapper.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Eigen/src/Core/ArrayWrapper.h b/Eigen/src/Core/ArrayWrapper.h index 4bb648024..28d7b7bd5 100644 --- a/Eigen/src/Core/ArrayWrapper.h +++ b/Eigen/src/Core/ArrayWrapper.h @@ -29,6 +29,11 @@ struct traits<ArrayWrapper<ExpressionType> > : public traits<typename remove_all<typename ExpressionType::Nested>::type > { typedef ArrayXpr XprKind; + // Let's remove NestByRefBit + enum { + Flags0 = traits<typename remove_all<typename ExpressionType::Nested>::type >::Flags, + Flags = Flags0 & ~NestByRefBit + }; }; } @@ -166,6 +171,11 @@ struct traits<MatrixWrapper<ExpressionType> > : public traits<typename remove_all<typename ExpressionType::Nested>::type > { typedef MatrixXpr XprKind; + // Let's remove NestByRefBit + enum { + Flags0 = traits<typename remove_all<typename ExpressionType::Nested>::type >::Flags, + Flags = Flags0 & ~NestByRefBit + }; }; } |