Skip to content

Commit d5e5810

Browse files
committed
Merge bitcoin/bitcoin#28999: build: Enable -Wunreachable-code
fa8adbe build: Enable -Wunreachable-code (MarcoFalke) Pull request description: It seems a bit confusing to write code after a `return`. This can even lead to bugs, or incorrect code, such as https://github.com/bitcoin/bitcoin/pull/28830/files#r1415372320 . (Edit: The linked instance is not found by clang's `-Wunreachable-code`). Fix all issues by enabling `-Wunreachable-code`. This flag also enables `-Wunreachable-code-loop-increment`, according to https://clang.llvm.org/docs/DiagnosticsReference.html#wunreachable-code, so remove that. ACKs for top commit: ajtowns: > ACK [fa8adbe](bitcoin/bitcoin@fa8adbe) stickies-v: ACK fa8adbe jonatack: ACK fa8adbe tested with arm64 clang 17.0.6 Tree-SHA512: 12a2f74b69ae002e62ae08038f7458837090a12051a4c154d05ae4bb26fb19fc1fa76c63aedf2b3fbb36f048c593ca3b8c0efe03fe93cf07a0fd114fc84ce1e7
2 parents dabd704 + fa8adbe commit d5e5810

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -436,8 +436,8 @@ if test "$CXXFLAGS_overridden" = "no"; then
436436
AX_CHECK_COMPILE_FLAG([-Wlogical-op], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wlogical-op"], [], [$CXXFLAG_WERROR])
437437
AX_CHECK_COMPILE_FLAG([-Woverloaded-virtual], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Woverloaded-virtual"], [], [$CXXFLAG_WERROR])
438438
AX_CHECK_COMPILE_FLAG([-Wsuggest-override], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wsuggest-override"], [], [$CXXFLAG_WERROR])
439-
AX_CHECK_COMPILE_FLAG([-Wunreachable-code-loop-increment], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wunreachable-code-loop-increment"], [], [$CXXFLAG_WERROR])
440439
AX_CHECK_COMPILE_FLAG([-Wimplicit-fallthrough], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wimplicit-fallthrough"], [], [$CXXFLAG_WERROR])
440+
AX_CHECK_COMPILE_FLAG([-Wunreachable-code], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wunreachable-code"], [], [$CXXFLAG_WERROR])
441441

442442
if test "$suppress_external_warnings" != "no" ; then
443443
AX_CHECK_COMPILE_FLAG([-Wdocumentation], [WARN_CXXFLAGS="$WARN_CXXFLAGS -Wdocumentation"], [], [$CXXFLAG_WERROR])

src/wallet/walletdb.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1499,17 +1499,19 @@ std::unique_ptr<WalletDatabase> MakeDatabase(const fs::path& path, const Databas
14991499
if (format == DatabaseFormat::SQLITE) {
15001500
#ifdef USE_SQLITE
15011501
return MakeSQLiteDatabase(path, options, status, error);
1502-
#endif
1502+
#else
15031503
error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support SQLite database format.", fs::PathToString(path)));
15041504
status = DatabaseStatus::FAILED_BAD_FORMAT;
15051505
return nullptr;
1506+
#endif
15061507
}
15071508

15081509
#ifdef USE_BDB
15091510
return MakeBerkeleyDatabase(path, options, status, error);
1510-
#endif
1511+
#else
15111512
error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support Berkeley DB database format.", fs::PathToString(path)));
15121513
status = DatabaseStatus::FAILED_BAD_FORMAT;
15131514
return nullptr;
1515+
#endif
15141516
}
15151517
} // namespace wallet

0 commit comments

Comments
 (0)