ICE with VS2015 Update 1 and /openmp

Submitted by pat..@..il.com

Assigned to Nobody

Link to original bugzilla bug (#1125)
Version: 3.3 (current stable)
Operating system: Windows

Description

The following code causes an internal compiler error in VS2015 Update 1 when compiling with /openmp...

#include "Eigen/Core"

int main(int argc, char *argv[])
{
Eigen::MatrixXf A_Eigen;
Eigen::MatrixXf AtA_Eigen = A_Eigen.transpose() * A_Eigen;
return EXIT_SUCCESS;
}

1>------ Build started: Project: rcr-detect, Configuration: Debug x64 ------
1> test.cpp
1>c:\eigen-3.3-alpha1\eigen\src\core\products\generalmatrixmatrix.h(66): fatal error C1001: An internal error has occurred in the compiler.
1> (compiler file 'f:\dd\vctools\compiler\utc\src\p2\main.c', line 246)
1> To work around this problem, try simplifying or changing the program near the locations listed above.
1> Please choose the Technical Support command on the Visual C++
1> Help menu, or open the Technical Support help file for more information

Error occurs both in Release and Debug mode. It compiled fine in VS2015 (before Update 1). Also the error goes away if I remove /openmp.

I'll file a bug in MS Connect too, but is there anything we can do as a workaround?

Blocking

#558 (closed)

Edited by Eigen Bugzilla