mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-03-25 18:50:40 +08:00
bug #882: add const-correctness failtests for CwiseUnaryView, TriangularView, and SelfAdjointView.
This commit is contained in:
parent
3878e6f170
commit
72569f17ec
@ -7,6 +7,9 @@ ei_add_failtest("block_nonconst_ctor_on_const_xpr_1")
|
||||
ei_add_failtest("block_nonconst_ctor_on_const_xpr_2")
|
||||
ei_add_failtest("transpose_nonconst_ctor_on_const_xpr")
|
||||
ei_add_failtest("diagonal_nonconst_ctor_on_const_xpr")
|
||||
ei_add_failtest("cwiseunaryview_nonconst_ctor_on_const_xpr")
|
||||
ei_add_failtest("triangularview_nonconst_ctor_on_const_xpr")
|
||||
ei_add_failtest("selfadjointview_nonconst_ctor_on_const_xpr")
|
||||
|
||||
ei_add_failtest("const_qualified_block_method_retval_0")
|
||||
ei_add_failtest("const_qualified_block_method_retval_1")
|
||||
@ -25,6 +28,9 @@ ei_add_failtest("block_on_const_type_actually_const_0")
|
||||
ei_add_failtest("block_on_const_type_actually_const_1")
|
||||
ei_add_failtest("transpose_on_const_type_actually_const")
|
||||
ei_add_failtest("diagonal_on_const_type_actually_const")
|
||||
ei_add_failtest("cwiseunaryview_on_const_type_actually_const")
|
||||
ei_add_failtest("triangularview_on_const_type_actually_const")
|
||||
ei_add_failtest("selfadjointview_on_const_type_actually_const")
|
||||
|
||||
if (EIGEN_FAILTEST_FAILURE_COUNT)
|
||||
message(FATAL_ERROR
|
||||
|
15
failtest/cwiseunaryview_nonconst_ctor_on_const_xpr.cpp
Normal file
15
failtest/cwiseunaryview_nonconst_ctor_on_const_xpr.cpp
Normal file
@ -0,0 +1,15 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(CV_QUALIFIER Matrix3d &m){
|
||||
CwiseUnaryView<internal::scalar_real_ref_op<double>,Matrix3d> t(m);
|
||||
}
|
||||
|
||||
int main() {}
|
16
failtest/cwiseunaryview_on_const_type_actually_const.cpp
Normal file
16
failtest/cwiseunaryview_on_const_type_actually_const.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(){
|
||||
MatrixXf m;
|
||||
CwiseUnaryView<internal::scalar_real_ref_op<double>,CV_QUALIFIER MatrixXf>(m).coeffRef(0, 0) = 1.0f;
|
||||
}
|
||||
|
||||
int main() {}
|
15
failtest/selfadjointview_nonconst_ctor_on_const_xpr.cpp
Normal file
15
failtest/selfadjointview_nonconst_ctor_on_const_xpr.cpp
Normal file
@ -0,0 +1,15 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(CV_QUALIFIER Matrix3d &m){
|
||||
SelfAdjointView<Matrix3d,Upper> t(m);
|
||||
}
|
||||
|
||||
int main() {}
|
16
failtest/selfadjointview_on_const_type_actually_const.cpp
Normal file
16
failtest/selfadjointview_on_const_type_actually_const.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(){
|
||||
MatrixXf m;
|
||||
SelfAdjointView<CV_QUALIFIER MatrixXf,Upper>(m).coeffRef(0, 0) = 1.0f;
|
||||
}
|
||||
|
||||
int main() {}
|
15
failtest/triangularview_nonconst_ctor_on_const_xpr.cpp
Normal file
15
failtest/triangularview_nonconst_ctor_on_const_xpr.cpp
Normal file
@ -0,0 +1,15 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(CV_QUALIFIER Matrix3d &m){
|
||||
TriangularView<Matrix3d,Upper> t(m);
|
||||
}
|
||||
|
||||
int main() {}
|
16
failtest/triangularview_on_const_type_actually_const.cpp
Normal file
16
failtest/triangularview_on_const_type_actually_const.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
#include "../Eigen/Core"
|
||||
|
||||
#ifdef EIGEN_SHOULD_FAIL_TO_BUILD
|
||||
#define CV_QUALIFIER const
|
||||
#else
|
||||
#define CV_QUALIFIER
|
||||
#endif
|
||||
|
||||
using namespace Eigen;
|
||||
|
||||
void foo(){
|
||||
MatrixXf m;
|
||||
TriangularView<CV_QUALIFIER MatrixXf,Upper>(m).coeffRef(0, 0) = 1.0f;
|
||||
}
|
||||
|
||||
int main() {}
|
Loading…
x
Reference in New Issue
Block a user