mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-19 23:03:45 +01:00
fa0fa0f700refactor: Revert "disable self-assign warning for tests" (MarcoFalke)faed118fb3build: Bump clang minimum supported version to 17 (MarcoFalke) Pull request description: Most supported operating systems ship with clang-17 (or later), so bump the minimum to that and allow new code to drop workarounds for previous clang bugs. (Apart from dropping the small workaround, this bump allows the `ci_native_nowallet_libbitcoinkernel` CI to run on riscv64 without running into an ICE with clang-16.) This patch will only be released in version 31.x, next year (2026). For reference: * https://packages.debian.org/bookworm/clang-19 * https://packages.ubuntu.com/noble/clang (clang-18) * CentOS-like 8/9/10 ship clang-17 (and later) via Stream * FreeBSD 12/13 ship clang-17 (and later) via packages * OpenSuse Tumbleweed ships with https://software.opensuse.org/package/clang (clang21); No idea about OpenSuse Leap On operating systems where the clang version is not shipped by default, the user would have to use GCC, or install clang in a different way. For example: * https://packages.debian.org/bookworm/g++ (g++-12) * https://packages.ubuntu.com/jammy/g++ (g++-11) * https://apt.llvm.org/, or nix, or guix, or compile clang from source, ... *Ubuntu 22.04 LTS does not ship with clang-16 (the previous minimum required), nor with clang-17, so one of the above workarounds is needed there.* macOS 14 is unaffected, and the previous minimum requirement of Xcode15.0 remains, see also919e6d01e9/depends/hosts/darwin.mk (L3-L4). (Modulo compiling the fuzz tests, which requires919e6d01e9/.github/workflows/ci.yml (L149)) ACKs for top commit: janb84: Concept ACKfa0fa0f700l0rinc: Code review ACKfa0fa0f700hebasto: ACKfa0fa0f700. Tree-SHA512: 5973cec39982f80b8b43e493cde012d9d1ab75a0362300b007d155db9f871c6341e7e209e5e63f0c3ca490136b684683de270136d62cb56f6b00b0ac0331dc36