diff --git a/Eigen/src/Core/GlobalFunctions.h b/Eigen/src/Core/GlobalFunctions.h index 72450662f..5ef57c229 100644 --- a/Eigen/src/Core/GlobalFunctions.h +++ b/Eigen/src/Core/GlobalFunctions.h @@ -51,6 +51,7 @@ namespace Eigen EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(abs,scalar_abs_op) EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(arg,scalar_arg_op) EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(sqrt,scalar_sqrt_op) + EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(square,scalar_square_op) EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(round,scalar_round_op) EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(floor,scalar_floor_op) EIGEN_ARRAY_DECLARE_GLOBAL_UNARY(ceil,scalar_ceil_op) diff --git a/test/array.cpp b/test/array.cpp index 5bcca3b04..2d49a29fd 100644 --- a/test/array.cpp +++ b/test/array.cpp @@ -209,6 +209,7 @@ template void array_real(const ArrayType& m) VERIFY_IS_APPROX(m1.ceil(), ceil(m1)); VERIFY_IS_APPROX(m1.isnan(), isnan(m1)); VERIFY_IS_APPROX(m1.isinf(), isinf(m1)); + VERIFY_IS_APPROX(m1.square(), square(m1)); VERIFY_IS_APPROX(cos(m1+RealScalar(3)*m2), cos((m1+RealScalar(3)*m2).eval())); @@ -274,6 +275,7 @@ template void array_complex(const ArrayType& m) VERIFY_IS_APPROX(m1.ceil(), ceil(m1)); VERIFY_IS_APPROX(m1.isnan(), isnan(m1)); VERIFY_IS_APPROX(m1.isinf(), isinf(m1)); + VERIFY_IS_APPROX(m1.square(), square(m1)); }