Source: pybind11
Version: 2.7.1-1
Followup-For: Bug #1000780

Debugging on ppc64el porterbox narrows the problem down to the -flto
flag.

The full compilation line is

/usr/bin/c++ -DBOOST_ALL_NO_LIB -DPYBIND11_TEST_BOOST -DPYBIND11_TEST_EIGEN 
-Dpybind11_tests_EXPORTS -isystem /usr/include/python3.10 -isystem 
/usr/include/eigen3 -Os -DNDEBUG -fPIC -fvisibility=hidden -Wall -Wextra 
-Wconversion -Wcast-qual -Wdeprecated -Wundef -Wnon-virtual-dtor -flto 
-fno-fat-lto-objects -MD  -o test_eigen.cpp.o -c test_eigen.cpp

But the inline error can be reproduced with just

/usr/bin/c++ -isystem /usr/include/python3.10 -isystem /usr/include/eigen3 
-flto -o test_pybind11_eigen3.cpp.o -c test_pybind11_eigen3.cpp


-flto in pybind11 has proven to be a problem elsewhere, with dolfin on
mips64el, see  https://lists.debian.org/debian-mips/2020/09/msg00000.html

The workaround there was to specify the -fno-lto.

Sounds like -fno-lto should be patched in to both mips64el and
ppc64el, perhaps other arches too (or all).

Reply via email to