This bugzilla service is closed. All entries have been migrated to https://gitlab.com/libeigen/eigen
Bug 1564 - Internal compiler error when using matrix multiplication (MSVC 2010)
Summary: Internal compiler error when using matrix multiplication (MSVC 2010)
Status: NEW
Alias: None
Product: Eigen
Classification: Unclassified
Component: Core - matrix products (show other bugs)
Version: 3.3 (current stable)
Hardware: x86 - 64-bit Windows
: Lowest Compilation Problem
Assignee: Nobody
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-29 15:11 UTC by Tobias Jost
Modified: 2019-12-04 17:45 UTC (History)
2 users (show)



Attachments
Demo (1.56 KB, application/zip)
2018-06-29 15:11 UTC, Tobias Jost
no flags Details

Description Tobias Jost 2018-06-29 15:11:59 UTC
Created attachment 867 [details]
Demo

In a project using MSVC 2010 64bit I tried upgrading the previously used Eigen 3.2 installation to a more recent 3.3.1 and 3.3.4 version without much success due to an internal compiler error, citing “msc1.cpp” line 1420 as culprit.
 
I triaged this problem and simplified the code without a clear indication what goes wrong, but I observed:
 
* It is triggered by a multiplication of 2 Matrix2d objects.
* It is only triggered when using the overloaded "*"-operator, using ".operator*()"-syntax is a workaround.
* It is only triggered when initializing the object doing the multiplication as default argument of another function or constructor.
* It is only triggered when Initializing the parent object outside a function/class in global space
* It is only triggered when it is not the first declaration in global space
 
I attached a small demo. So far MSVC versions >= 2015 don’t seem to be affected but changing the toolchain isn’t an option for me. I went back to Eigen 3.2 for now.
 
If someone is interested in further examining this bug I’d be happy to provide further details.
Comment 1 Christoph Hertzberg 2018-07-02 13:25:17 UTC
MSVC 2010 is not supported anymore:
http://eigen.tuxfamily.org/index.php?title=Main_Page#Compiler_support

So unless someone finds a workaround for this, this will likely be closed as WONTFIX.
Either upgrade your MSVC version, or stay with the old Eigen version.
Comment 2 Nobody 2019-12-04 17:45:12 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to gitlab.com's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.com/libeigen/eigen/issues/1564.

Note You need to log in before you can comment on or make changes to this bug.