https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101241

            Bug ID: 101241
           Summary: Internal compiler error from MathFunctions.h in the
                    eigen library
           Product: gcc
           Version: 11.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: r.langer at itv dot rwth-aachen.de
  Target Milestone: ---

I used a docker image of Clean Linux (version 34790) and installed gcc 11.1.1
with:

swupd bundle-add c-basic wget

The following commands produce the error:
wget https://gitlab.com/libeigen/eigen/-/archive/3.4-rc1/eigen-3.4-rc1.tar.bz2
tar -xf eigen-3.4-rc1.tar.bz2
printf "#include <Eigen/Core>\n int main(int,char const*[]){}\n" >
eigen_bug.cpp
g++ eigen_bug.cpp -Ieigen-3.4-rc1/ -Ofast -ffast-math

Expected output from the last command:
In file included from eigen-3.4-rc1/Eigen/Core:171,
                 from eigen_bug.cpp:1:
eigen-3.4-rc1/Eigen/src/Core/MathFunctions.h:1036:71: internal compiler error:
in maybe_default_option, at opts.c:332
 1036 | template<> EIGEN_TMP_NOOPT_ATTRIB bool isnan_impl(const long double& x)
{ return __builtin_isnan(x); }
      |                                                                       ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.


The following works fine:
g++ eigen_bug.cpp -Ieigen-3.4-rc1/ -O3 -ffast-math

Reply via email to