StefanBruens
StefanBruens
@Fatsie can you make your design available, or even better try to create a stripped down one showing this issue?
Catch2 v3 should have been called Catch3, this would have avoided these problems ... One of the main reasons for switching to a compiled static library is compile time. On...
Freedesktop.org shared-mime-info is not a mime type registry, IANA is. Preferably, a media-type is [registered with IANA](https://www.iana.org/form/media-types) first. Someone from ROOT/Cern should register e.g. `application/x+cern-root` with IANA. Desktop environments don´t...
Disabling LTO for the whole build avoids the problem, but this is of course only a stopgap measure.
Already mentioned that: - Detect CXXFLAGS including LTO, issue a warning - Provide an option to disable LTO for LLVM LTO is more than just an optimization. It allows to...
I can see the same when trying to build root 6.26.06 on openSUSE Tumbleweed. Full commandline of the failing link: ``` [ 1887s] [ 76%] Linking CXX executable ../bin/rootcling [...
`find /var/tmp/build-root/openSUSE_Tumbleweed-x86_64/.build.packages/BUILD/root-6.26.06/_builddir/core/metacling/ -iname \*o -print -exec nm -C --undefined '{}' \; | grep -E 'cxx.o| clang::sema'` ``` ... /var/tmp/build-root/openSUSE_Tumbleweed-x86_64/.build.packages/BUILD/root-6.26.06/_builddir/core/metacling/src/CMakeFiles/MetaCling.dir/TCling.cxx.o U clang::sema::FunctionScopeInfo::~FunctionScopeInfo() U typeinfo for clang::sema::FunctionScopeInfo U vtable for clang::sema::FunctionScopeInfo ```
TCling.cxx is not build with `-fno-rtti`: ``` [ 1331s] [ 75%] Building CXX object core/metacling/src/CMakeFiles/MetaCling.dir/TCling.cxx.o [ 1331s] cd /home/abuild/rpmbuild/BUILD/root-6.26.06/_builddir/core/metacling/src && /var/lib/build/ccache/bin/c++ -I/home/abuild/rpmbuild/BUILD/root-6.26.06/interpreter/cling/include -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/metacling/res -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/clingutils/res -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/foundation/res -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/zip/inc -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/clib/res -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/base/inc -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/meta/inc -I/home/abuild/rpmbuild/BUILD/root-6.26.06/core/clib/inc...
Obvious reason - `-fno-rtti` is only set for 3 source files: https://github.com/root-project/root/blob/69002fa23d19ad50ff8dd6c7678a6343748ba3fd/core/metacling/src/CMakeLists.txt#L15-L19
The culprit is `ClingRAII.h`, included from TCling.cxx: https://github.com/root-project/root/blob/69002fa23d19ad50ff8dd6c7678a6343748ba3fd/core/metacling/src/ClingRAII.h#L15 https://github.com/root-project/root/blob/69002fa23d19ad50ff8dd6c7678a6343748ba3fd/core/metacling/src/ClingRAII.h#L37-L45 It should be sufficient to move `SemaExprCleanupsRAII` ctor/dtor to a separate implementation file. The remaining code only needs the `FunctionScopeInfo` forward...