From 6183942513789fb3dc94fa02a097744b149bb69a Mon Sep 17 00:00:00 2001 From: Brandon Odiwuor Date: Sat, 4 Apr 2026 23:22:29 +0300 Subject: [PATCH] ci, iwyu: Fix warnings in src/scripts and treat them as error --- ci/test/03_test_script.sh | 2 +- src/bench/verify_script.cpp | 1 + src/core_io.cpp | 1 + src/kernel/bitcoinkernel.cpp | 1 + src/kernel/chainparams.cpp | 1 + src/psbt.h | 1 + src/script/descriptor.cpp | 24 ++++++++++++++++++++---- src/script/descriptor.h | 16 +++++++++++++--- src/script/interpreter.cpp | 10 ++++++++++ src/script/interpreter.h | 13 +++++++------ src/script/miniscript.cpp | 8 ++++---- src/script/miniscript.h | 29 ++++++++++++++++------------- src/script/parsing.cpp | 2 -- src/script/parsing.h | 3 +-- src/script/script.cpp | 1 + src/script/script.h | 5 +++-- src/script/sigcache.cpp | 2 +- src/script/sigcache.h | 6 ++++-- src/script/sign.cpp | 16 +++++++++++++++- src/script/sign.h | 20 +++++++++++++------- src/script/signingprovider.cpp | 9 +++++++-- src/script/signingprovider.h | 14 +++++++++++++- src/script/solver.cpp | 6 +++--- src/script/solver.h | 4 ++-- src/signet.cpp | 1 + src/test/script_tests.cpp | 17 ++++++++--------- src/wallet/feebumper.cpp | 4 +++- src/wallet/rpc/wallet.cpp | 4 +++- src/wallet/scriptpubkeyman.cpp | 4 +++- src/wallet/scriptpubkeyman.h | 2 ++ src/wallet/walletdb.h | 1 + 31 files changed, 160 insertions(+), 68 deletions(-) diff --git a/ci/test/03_test_script.sh b/ci/test/03_test_script.sh index b3ab1729853..980583d00b5 100755 --- a/ci/test/03_test_script.sh +++ b/ci/test/03_test_script.sh @@ -229,7 +229,7 @@ fi if [[ "${RUN_IWYU}" == true ]]; then # TODO: Consider enforcing IWYU across the entire codebase. - FILES_WITH_ENFORCED_IWYU="/src/(((crypto|index|kernel|primitives|univalue/(lib|test)|util|zmq)/.*|bench/(block_assemble|connectblock)|common/license_info|node/(blockstorage|interfaces|miner|mining_args|utxo_snapshot)|rpc/mining|clientversion|core_io|signet|init)\\.cpp)" + FILES_WITH_ENFORCED_IWYU="/src/(((crypto|index|kernel|primitives|script|univalue/(lib|test)|util|zmq)/.*|bench/(block_assemble|connectblock)|common/license_info|node/(blockstorage|interfaces|miner|mining_args|utxo_snapshot)|rpc/mining|clientversion|core_io|signet|init)\\.cpp)" jq --arg patterns "$FILES_WITH_ENFORCED_IWYU" 'map(select(.file | test($patterns)))' "${BASE_BUILD_DIR}/compile_commands.json" > "${BASE_BUILD_DIR}/compile_commands_iwyu_errors.json" jq --arg patterns "$FILES_WITH_ENFORCED_IWYU" 'map(select(.file | test($patterns) | not))' "${BASE_BUILD_DIR}/compile_commands.json" > "${BASE_BUILD_DIR}/compile_commands_iwyu_warnings.json" diff --git a/src/bench/verify_script.cpp b/src/bench/verify_script.cpp index 8f07fd34fd1..63a9544ad98 100644 --- a/src/bench/verify_script.cpp +++ b/src/bench/verify_script.cpp @@ -4,6 +4,7 @@ #include #include +#include #include #include #include diff --git a/src/core_io.cpp b/src/core_io.cpp index 584f823bae2..3650d70810a 100644 --- a/src/core_io.cpp +++ b/src/core_io.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include