Skip to content

Commit 3a2dc38

Browse files
committed
Fix weird issue with MSVC 2013
1 parent c95aaca commit 3a2dc38

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

test/mapped_matrix.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,9 @@ template<typename MatrixType> void map_class_matrix(const MatrixType& m)
6262
for(int i = 0; i < size; i++) array2[i] = Scalar(1);
6363
// array3unaligned -> unaligned pointer to heap
6464
Scalar* array3 = new Scalar[size+1];
65-
for(int i = 0; i < size+1; i++) array3[i] = Scalar(1);
66-
Scalar* array3unaligned = internal::UIntPtr(array3)%EIGEN_MAX_ALIGN_BYTES == 0 ? array3+1 : array3;
65+
Index sizep1 = size + 1; // <- without this temporary MSVC 2103 generates bad code
66+
for(Index i = 0; i < sizep1; i++) array3[i] = Scalar(1);
67+
Scalar* array3unaligned = (internal::UIntPtr(array3)%EIGEN_MAX_ALIGN_BYTES) == 0 ? array3+1 : array3;
6768
Scalar array4[256];
6869
if(size<=256)
6970
for(int i = 0; i < size; i++) array4[i] = Scalar(1);

0 commit comments

Comments
 (0)