Compiler error
In trilinos/12.18.1
we get an error -Werror=aggressive-loop-optimizations
due to Ifpack2
. The issue is temporarily fixed
by reducing the optimization level from -O3
to -O2
(see !415 (merged)).
Toolchain (on Merlin6):
- amrex/18.07_3d
- boost/1.73.0
- cmake/3.15.5
- gcc/9.3.0
- gsl/2.6
- hdf5/1.10.6
- H5hut/2.0.0rc6
- OpenBLAS/0.3.10
- openmpi/3.1.6
- parmetis/4.0.3
- trilinos/12.18.1
Error message:
In member function ‘void Ifpack2::Impl::InvertDiagBlocks<BlockDiagView>::operator()(Ifpack2::Impl::InvertDiagBlocks<BlockDiagView>::Size, int&) const [with BlockDiagView = Kokkos::View<double***, Kokkos::Device<Kokkos::Serial, Kokkos::HostSpace>, Kokkos::MemoryTraits<1> >]’:
cc1plus: error: iteration 2147483649 invokes undefined behavior [-Werror=aggressive-loop-optimizations]
In file included from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Tpetra_BlockMultiVector_def.hpp:46,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Tpetra_BlockMultiVector.hpp:2,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Tpetra_BlockCrsMatrix_def.hpp:51,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Tpetra_BlockCrsMatrix.hpp:2,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Relaxation_decl.hpp:52,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Relaxation.hpp:1,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Details_OneLevelFactory_def.hpp:51,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Details_OneLevelFactory.hpp:2,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Details_Factory_def.hpp:46,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Details_Factory.hpp:2,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Factory_decl.hpp:48,
from /opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Ifpack2_Factory.hpp:1,
from /psi/home/frey_m/test_opal_2.4/src/src/Solvers/AMR_MG/AmrSmoother.h:28,
from /psi/home/frey_m/test_opal_2.4/src/src/Solvers/AMR_MG/AmrSmoother.cpp:27:
/opt/psi/HDF5/trilinos/12.18.1/hdf5/1.10.6/openmpi/3.1.6/gcc/9.3.0/include/Tpetra_BlockView.hpp:1239:34: note: within this loop
1239 | for(IndexType j = numCols-2; j >= 0; j--) {
| ~~^~~~
cc1plus: all warnings being treated as errors