| 198 | template<typename SrcScalar, typename TgtScalar> |
| 199 | struct casting_test { |
| 200 | static void run() { |
| 201 | Matrix<SrcScalar,4,4> m; |
| 202 | for (int i=0; i<m.rows(); ++i) { |
| 203 | for (int j=0; j<m.cols(); ++j) { |
| 204 | m(i, j) = internal::random_without_cast_overflow<SrcScalar,TgtScalar>::value(); |
| 205 | } |
| 206 | } |
| 207 | Matrix<TgtScalar,4,4> n = m.template cast<TgtScalar>(); |
| 208 | for (int i=0; i<m.rows(); ++i) { |
| 209 | for (int j=0; j<m.cols(); ++j) { |
| 210 | VERIFY_IS_APPROX(n(i, j), (internal::cast<SrcScalar,TgtScalar>(m(i, j)))); |
| 211 | } |
| 212 | } |
| 213 | } |
| 214 | }; |
| 215 | |
| 216 | template<typename SrcScalar, typename EnableIf = void> |