mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-12 03:39:01 +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("block_nonconst_ctor_on_const_xpr_2")
|
||||||
ei_add_failtest("transpose_nonconst_ctor_on_const_xpr")
|
ei_add_failtest("transpose_nonconst_ctor_on_const_xpr")
|
||||||
ei_add_failtest("diagonal_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_0")
|
||||||
ei_add_failtest("const_qualified_block_method_retval_1")
|
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("block_on_const_type_actually_const_1")
|
||||||
ei_add_failtest("transpose_on_const_type_actually_const")
|
ei_add_failtest("transpose_on_const_type_actually_const")
|
||||||
ei_add_failtest("diagonal_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)
|
if (EIGEN_FAILTEST_FAILURE_COUNT)
|
||||||
message(FATAL_ERROR
|
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