diff --git a/src/test/test_bitcoin_main.cpp b/src/test/test_bitcoin_main.cpp index cd5763ea5..e22b359ac 100644 --- a/src/test/test_bitcoin_main.cpp +++ b/src/test/test_bitcoin_main.cpp @@ -1,57 +1,58 @@ // Copyright (c) 2011-2016 The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #define BOOST_TEST_MODULE Bitcoin Test Suite #include #include #include #include #include std::unique_ptr g_connman; std::unique_ptr g_banman; [[noreturn]] void Shutdown(void *parg) { std::exit(EXIT_SUCCESS); } [[noreturn]] void StartShutdown() { std::exit(EXIT_SUCCESS); } bool ShutdownRequested() { return false; } namespace utf = boost::unit_test::framework; /* * Global fixture for passing custom arguments, and clearing them all after each * test case. */ struct CustomArgumentsFixture { std::string error; CustomArgumentsFixture() { std::set testArgs = { "-phononactivationtime", }; for (const auto &arg : testArgs) { gArgs.AddArg(arg, "", false, OptionsCategory::HIDDEN); } - if (!gArgs.ParseParameters(utf::master_test_suite().argc, - utf::master_test_suite().argv, error)) { + const auto &master_test_suite = utf::master_test_suite(); + if (!gArgs.ParseParameters(master_test_suite.argc, + master_test_suite.argv, error)) { throw utf::setup_error(error); } } ~CustomArgumentsFixture(){}; }; BOOST_GLOBAL_FIXTURE(CustomArgumentsFixture); diff --git a/test/sanitizer_suppressions/ubsan b/test/sanitizer_suppressions/ubsan index bfbd3c691..edfd634f1 100644 --- a/test/sanitizer_suppressions/ubsan +++ b/test/sanitizer_suppressions/ubsan @@ -1,37 +1,39 @@ alignment:move.h alignment:prevector.h bool:wallet/wallet.cpp float-divide-by-zero:policy/fees.cpp float-divide-by-zero:validation.cpp float-divide-by-zero:wallet/wallet.cpp unsigned-integer-overflow:arith_uint256.h unsigned-integer-overflow:basic_string.h unsigned-integer-overflow:bench/bench.h unsigned-integer-overflow:bitcoin-tx.cpp unsigned-integer-overflow:bloom.cpp unsigned-integer-overflow:chain.cpp unsigned-integer-overflow:chain.h unsigned-integer-overflow:coded_stream.h unsigned-integer-overflow:core_write.cpp unsigned-integer-overflow:crypto/chacha20.cpp unsigned-integer-overflow:crypto/ctaes/ctaes.c unsigned-integer-overflow:crypto/poly1305.cpp unsigned-integer-overflow:crypto/ripemd160.cpp unsigned-integer-overflow:crypto/sha1.cpp unsigned-integer-overflow:crypto/sha256.cpp unsigned-integer-overflow:crypto/sha512.cpp unsigned-integer-overflow:hash.cpp unsigned-integer-overflow:leveldb/db/log_reader.cc unsigned-integer-overflow:leveldb/util/bloom.cc unsigned-integer-overflow:leveldb/util/crc32c.h unsigned-integer-overflow:leveldb/util/hash.cc unsigned-integer-overflow:policy/fees.cpp unsigned-integer-overflow:prevector.h unsigned-integer-overflow:script/interpreter.cpp unsigned-integer-overflow:stl_bvector.h unsigned-integer-overflow:txmempool.cpp unsigned-integer-overflow:util/strencodings.cpp unsigned-integer-overflow:validation.cpp vptr:fs.cpp # Only occurs with the cmake build and clang-7 vptr:avalanche_tests.cpp +# Only with clang < 9 +vptr:boost/test/tree/observer.hpp