rollbear / trompeloeil

Header only C++14 mocking framework
Boost Software License 1.0
802 stars 85 forks source link

[Bug] Fails to run tests with catch 3.x #321

Closed werdahias closed 2 months ago

werdahias commented 10 months ago

Recently catch2 in debian was updated to the 3.x release track. Subsequently, this caused trompeloils tests to fail. Specifically, the compiling_tests* files include catch2/catch.hpp .This was superseded by catch2/catch_all.hpp (see here . Patching this in compiles but leads to a failure when trying to execute the tests:

...
[100%] Linking CXX executable self_test
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/test && /usr/bin/cmake -E cmake_link_script CMakeFiles/self_test.dir/link.txt --verbose=1
/usr/bin/c++ -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wextra -pedantic -Wshadow -Wconversion -Wnonnull -Werror -g -Wl,-z,relro -Wl,-z,now CMakeFiles/self_test.dir/compiling_tests.cpp.o CMakeFiles/self_test.dir/compiling_tests_11.cpp.o CMakeFiles/self_test.dir/compiling_tests_14.cpp.o -o self_test 
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/13/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x17): undefined reference to `main'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::TestInvokerAsMethod<(anonymous namespace)::CATCH2_INTERNAL_TEST_0>::~TestInvokerAsMethod()':
/usr/include/catch2/internal/catch_test_registry.hpp:32:(.text+0x10a3): undefined reference to `Catch::ITestInvoker::~ITestInvoker()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::TestInvokerAsMethod<(anonymous namespace)::CATCH2_INTERNAL_TEST_6>::~TestInvokerAsMethod()':
/usr/include/catch2/internal/catch_test_registry.hpp:32:(.text+0x10f3): undefined reference to `Catch::ITestInvoker::~ITestInvoker()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::TestInvokerAsMethod<(anonymous namespace)::CATCH2_INTERNAL_TEST_11>::~TestInvokerAsMethod()':
/usr/include/catch2/internal/catch_test_registry.hpp:32:(.text+0x1143): undefined reference to `Catch::ITestInvoker::~ITestInvoker()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::TestInvokerAsMethod<(anonymous namespace)::CATCH2_INTERNAL_TEST_15>::~TestInvokerAsMethod()':
/usr/include/catch2/internal/catch_test_registry.hpp:32:(.text+0x1193): undefined reference to `Catch::ITestInvoker::~ITestInvoker()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::TestInvokerAsMethod<(anonymous namespace)::CATCH2_INTERNAL_TEST_20>::~TestInvokerAsMethod()':
/usr/include/catch2/internal/catch_test_registry.hpp:32:(.text+0x11e3): undefined reference to `Catch::ITestInvoker::~ITestInvoker()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o:/usr/include/catch2/internal/catch_test_registry.hpp:32: more undefined references to `Catch::ITestInvoker::~ITestInvoker()' follow
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `void Catch::AssertionHandler::handleExpr<bool>(Catch::ExprLhs<bool> const&)':
/usr/include/catch2/internal/catch_assertion_handler.hpp:46:(.text+0x7159): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::UnaryExpr<bool>::~UnaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:149:(.text+0x7165): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_703::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4460:(.text+0x1a987): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4460:(.text+0x1aa0d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [19]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1aa1c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_703::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4460:(.text+0x1aa47): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_701::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4446:(.text+0x1ab87): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4446:(.text+0x1ac0d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [23]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1ac1c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_701::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4446:(.text+0x1ac47): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_699::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4436:(.text+0x1ad87): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4436:(.text+0x1ae0d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [16]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1ae1c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_699::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4436:(.text+0x1ae47): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_697::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4426:(.text+0x1af6f): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4426:(.text+0x1aff5): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [8]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1b004): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_697::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4426:(.text+0x1b02f): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_675::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4245:(.text+0x1b15f): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4245:(.text+0x1b1e9): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [58]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1b1f8): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_675::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4245:(.text+0x1b22a): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_673::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4231:(.text+0x1b3c6): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4231:(.text+0x1b445): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char (&) [344]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1b454): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_673::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4231:(.text+0x1b46b): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_669::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4192:(.text+0x1b600): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4192:(.text+0x1b68d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [42]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1b69c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_669::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4192:(.text+0x1b6b0): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_667::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4180:(.text+0x1b868): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4180:(.text+0x1b8ee): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [43]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1b8fd): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_667::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4180:(.text+0x1b928): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_665::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4168:(.text+0x1ba4b): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4168:(.text+0x1bad5): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [38]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1bae4): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_665::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4168:(.text+0x1bb16): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_681::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4282:(.text+0x1bf05): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4282:(.text+0x1bf99): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [41]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1bfa8): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_681::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4282:(.text+0x1bfb8): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_685::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4305:(.text+0x1d77d): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4305:(.text+0x1d814): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [59]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1d823): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_685::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4305:(.text+0x1d837): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_671::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4204:(.text+0x1da84): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4204:(.text+0x1db15): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [7]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1db24): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_671::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4204:(.text+0x1db3b): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_677::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4255:(.text+0x1dd7a): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4255:(.text+0x1de04): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [13]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1de13): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_677::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4255:(.text+0x1de2a): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_687::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4317:(.text+0x1e15a): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4317:(.text+0x1e1f1): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [15]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x1e200): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_687::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4317:(.text+0x1e214): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_848::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5425:(.text+0x20302): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5425:(.text+0x20364): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const (&) [1]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x20373): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_848::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5425:(.text+0x2037b): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_851::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5441:(.text+0x2080f): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5441:(.text+0x2086a): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<int, int>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x20879): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_851::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5441:(.text+0x20881): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_854::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5469:(.text+0x20cdf): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5469:(.text+0x20d3e): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const (&) [22]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x20d4d): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_854::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5469:(.text+0x20d5c): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_857::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5484:(.text+0x211c4): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::MessageStream::MessageStream()':
/usr/include/catch2/catch_message.hpp:25:(.text+0x211e4): undefined reference to `Catch::ReusableStringStream::ReusableStringStream()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_857::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5484:(.text+0x21202): undefined reference to `Catch::ReusableStringStream::str[abi:cxx11]() const'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5484:(.text+0x21217): undefined reference to `Catch::AssertionHandler::handleMessage(Catch::ResultWas::OfType, Catch::StringRef)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::MessageStream::~MessageStream()':
/usr/include/catch2/catch_message.hpp:25:(.text+0x21227): undefined reference to `Catch::ReusableStringStream::~ReusableStringStream()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_857::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5484:(.text+0x2122f): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_845::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5407:(.text+0x216d1): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5407:(.text+0x21730): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const (&) [1]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2173f): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_845::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5407:(.text+0x2174e): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_679::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4265:(.text+0x267a9): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4265:(.text+0x26833): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [20]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x26842): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_679::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4265:(.text+0x26859): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_683::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4293:(.text+0x27129): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4293:(.text+0x271ba): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [41]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x271c9): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_683::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4293:(.text+0x271e0): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_949::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5783:(.text+0x27a3d): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5783:(.text+0x27a61): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_951::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5803:(.text+0x27e59): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5803:(.text+0x27eb8): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<unsigned int, unsigned int>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x27ec7): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_951::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5803:(.text+0x27ed6): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5805:(.text+0x27f42): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:5805:(.text+0x27f6d): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_745::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4740:(.text+0x2814e): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4740:(.text+0x28172): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_748::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4757:(.text+0x28324): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4757:(.text+0x28348): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_742::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4727:(.text+0x284fa): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:4727:(.text+0x2851e): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_148::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1039:(.text+0x28f37): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1039:(.text+0x28fe2): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x28ff1): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_148::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1039:(.text+0x29001): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_145::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1025:(.text+0x29362): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1025:(.text+0x2940d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2941c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_145::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1025:(.text+0x2942c): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_151::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1052:(.text+0x29792): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1052:(.text+0x2983d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2984c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_151::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1052:(.text+0x2985c): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_139::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:999:(.text+0x29bc2): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:999:(.text+0x29c6d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x29c7c): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_139::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:999:(.text+0x29c8c): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_142::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1012:(.text+0x29ff2): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1012:(.text+0x2a09d): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2a0ac): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_142::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1012:(.text+0x2a0bc): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_136::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:986:(.text+0x2a437): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:986:(.text+0x2a4de): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<char const* const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2a4ed): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_136::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:986:(.text+0x2a4fd): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_160::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1091:(.text+0x2a874): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1091:(.text+0x2a90e): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2a91d): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_160::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1091:(.text+0x2a93c): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_154::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1065:(.text+0x2acde): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1065:(.text+0x2ad72): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [4]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2ad81): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_154::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1065:(.text+0x2ad98): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_157::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1078:(.text+0x2b0fe): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1078:(.text+0x2b192): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [4]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2b1a1): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_157::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1078:(.text+0x2b1b8): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_169::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1130:(.text+0x2b524): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1130:(.text+0x2b5be): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2b5cd): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_169::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1130:(.text+0x2b5ec): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_166::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1117:(.text+0x2b98e): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
/usr/bin/ld: ./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1117:(.text+0x2ba22): undefined reference to `Catch::AssertionHandler::handleExpr(Catch::ITransientExpression const&)'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `Catch::BinaryExpr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const (&) [4]>::~BinaryExpr()':
/usr/include/catch2/internal/catch_decomposer.hpp:73:(.text+0x2ba31): undefined reference to `Catch::ITransientExpression::~ITransientExpression()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_166::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1117:(.text+0x2ba48): undefined reference to `Catch::AssertionHandler::complete()'
/usr/bin/ld: CMakeFiles/self_test.dir/compiling_tests_11.cpp.o: in function `(anonymous namespace)::CATCH2_INTERNAL_TEST_163::test()':
./obj-x86_64-linux-gnu/test/./test/compiling_tests_11.cpp:1104:(.text+0x2bdae): undefined reference to `Catch::AssertionHandler::AssertionHandler(Catch::StringRef, Catch::SourceLineInfo const&, Catch::StringRef, Catch::ResultDisposition::Flags)'
...

I'd be nice if you could support catch 3.x for building and running the tests

rollbear commented 10 months ago

Wait what?!?!? The self test uses Catch2 v3 since quite some time. The CI builds uses it for all except the C++11 builds (since Catch2 v3 requires at least C++14).

https://github.com/rollbear/trompeloeil/blob/main/test/compiling_tests.cpp#L18-L27

werdahias commented 10 months ago

huh, I though upstream had dropped catch2/catch.hpp and replaced it with catch2/catch_all.hpp ? Or did I miss something here ?

rollbear commented 10 months ago

I don't know, but this works with the latest released versions of both catch2 v2 and v3.

rollbear commented 10 months ago

So, I'm a bit confused here. Is there something I should do?