Page MenuHomePhabricator

tidy: add modernize-use-default-member-init
AbandonedPublicDraft

Authored by PiRK on Dec 6 2023, 11:03.

Details

Reviewers
None
Group Reviewers
Restricted Project
Summary

This is a backport of core#25108

Test Plan
cmake .. -GNinja -DENABLE_CLANG_TIDY=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++

ninja all check-all bench-bitcoin bitcoin-fuzzers

Event Timeline

PiRK retitled this revision from tidy: add modernize-use-default-member-ini to tidy: add modernize-use-default-member-init.Dec 6 2023, 11:04

Tail of the build log:

[360/541] Linking CXX shared library src/libbitcoinconsensus.so.0.28.4
[361/541] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[362/541] Linking C executable src/secp256k1/recover-bench
[363/541] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[364/541] Linking C executable src/secp256k1/verify-bench
[365/541] Linking C executable src/secp256k1/ecmult-bench
[366/541] Linking C executable src/secp256k1/sign-bench
[367/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[368/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[369/541] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[370/541] Building CXX object src/CMakeFiles/server.dir/txmempool.cpp.o
[371/541] Linking C executable src/secp256k1/internal-bench
[372/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[373/541] Building CXX object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli.cpp.o
[374/541] Linking CXX executable src/bitcoin-cli
[375/541] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[376/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[377/541] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[378/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[379/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[380/541] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[381/541] Linking CXX executable src/bitcoin-tx
[382/541] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[383/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[384/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[385/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[386/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[387/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[388/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[389/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[390/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[391/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[392/541] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[393/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[394/541] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[395/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[396/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[397/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[398/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[399/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[400/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[401/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[402/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[403/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[404/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[405/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[406/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[407/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[408/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[409/541] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[410/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[411/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[412/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[413/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[414/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[415/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[416/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[417/541] Linking CXX static library src/wallet/libwallet.a
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1

fix two more instances. Either the clang version used on CI is more sensitive, or I'm having caching issues that hide problems.

Tail of the build log:

.....
----------------------------------------------------------------------
Ran 5 tests in 0.001s

OK
[179/482] Building CXX object src/pow/test/CMakeFiles/test-pow.dir/aserti32d_tests.cpp.o
[180/482] Automatic MOC for target test_bitcoin-qt
[181/482] Building CXX object src/pow/test/CMakeFiles/test-pow.dir/eda_tests.cpp.o
[182/482] Test Bitcoin utilities...
[183/482] Building CXX object src/pow/test/CMakeFiles/test-pow.dir/grasberg_tests.cpp.o
[184/482] Building CXX object src/seeder/test/CMakeFiles/test-seeder.dir/write_name_tests.cpp.o
[185/482] Linking CXX executable src/pow/test/test-pow
[186/482] Building CXX object src/seeder/test/CMakeFiles/test-seeder.dir/options_tests.cpp.o
[187/482] pow: testing daa_tests
[188/482] Running utility command for check-pow-daa_tests
[189/482] pow: testing eda_tests
[190/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/bitcoinaddressvalidatortests.cpp.o
[191/482] Running utility command for check-pow-eda_tests
[192/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/compattests.cpp.o
[193/482] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/util_tests.cpp.o
[194/482] pow: testing grasberg_tests
[195/482] Running utility command for check-pow-grasberg_tests
[196/482] Building CXX object src/seeder/test/CMakeFiles/test-seeder.dir/p2p_messaging_tests.cpp.o
[197/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/util.cpp.o
[198/482] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_tests.cpp.o
[199/482] pow: testing aserti32d_tests
[200/482] Running utility command for check-pow-aserti32d_tests
[201/482] Running pow test suite
PASSED: pow test suite
[202/482] Building CXX object src/seeder/test/CMakeFiles/test-seeder.dir/message_writer_tests.cpp.o
[203/482] Linking CXX executable src/seeder/test/test-seeder
[204/482] seeder: testing options_tests
[205/482] seeder: testing message_writer_tests
[206/482] seeder: testing p2p_messaging_tests
[207/482] Running utility command for check-seeder-options_tests
[208/482] Running utility command for check-seeder-message_writer_tests
[209/482] Running utility command for check-seeder-p2p_messaging_tests
[210/482] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_tests.cpp.o
[211/482] seeder: testing parse_name_tests
[212/482] Running utility command for check-seeder-parse_name_tests
[213/482] seeder: testing write_name_tests
[214/482] Running utility command for check-seeder-write_name_tests
[215/482] Running seeder test suite
PASSED: seeder test suite
[216/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/uritests.cpp.o
[217/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/guiutiltests.cpp.o
[218/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/test_bitcoin-qt_autogen/mocs_compilation.cpp.o
[219/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/apptests.cpp.o
[220/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/test_main.cpp.o
[221/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/rpcnestedtests.cpp.o
[222/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/__/__/wallet/test/wallet_test_fixture.cpp.o
[223/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/paymentservertests.cpp.o
[224/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/addressbooktests.cpp.o
[225/482] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/wallettests.cpp.o
[226/482] Linking CXX executable src/qt/test/test_bitcoin-qt
[227/482] bitcoin-qt: testing test_bitcoin-qt
[228/482] Running bitcoin-qt test suite
PASSED: bitcoin-qt test suite
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1

So I ran clang-tidy via my IDE, and it turns out there are several dozens more instances to fix. I'm going to abandon this for now, i'm not sure it is worth the effort.