mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-09-18 21:50:49 +02:00
lint: Mention NONFATAL_UNREACHABLE in lint-assertions.py
This commit is contained in:
@@ -30,7 +30,6 @@ T&& inline_check_non_fatal(T&& val, const char* file, int line, const char* func
|
|||||||
throw NonFatalCheckError(
|
throw NonFatalCheckError(
|
||||||
format_internal_error(assertion, file, line, func, PACKAGE_BUGREPORT));
|
format_internal_error(assertion, file, line, func, PACKAGE_BUGREPORT));
|
||||||
}
|
}
|
||||||
|
|
||||||
return std::forward<T>(val);
|
return std::forward<T>(val);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -30,20 +30,20 @@ def main():
|
|||||||
r"[^_]assert\(.*(\+\+|\-\-|[^=!<>]=[^=!<>]).*\);",
|
r"[^_]assert\(.*(\+\+|\-\-|[^=!<>]=[^=!<>]).*\);",
|
||||||
"--",
|
"--",
|
||||||
"*.cpp",
|
"*.cpp",
|
||||||
"*.h"
|
"*.h",
|
||||||
], "Assertions should not have side effects:")
|
], "Assertions should not have side effects:")
|
||||||
|
|
||||||
# Macro CHECK_NONFATAL(condition) should be used instead of assert for RPC code, where it
|
# Aborting the whole process is undesirable for RPC code. So nonfatal
|
||||||
# is undesirable to crash the whole program. See: src/util/check.h
|
# checks should be used over assert. See: src/util/check.h
|
||||||
# src/rpc/server.cpp is excluded from this check since it's mostly meta-code.
|
# src/rpc/server.cpp is excluded from this check since it's mostly meta-code.
|
||||||
exit_code |= git_grep([
|
exit_code |= git_grep([
|
||||||
"-nE",
|
"-nE",
|
||||||
r"\<(A|a)ssert *\(.*\);",
|
r"\<(A|a)ss(ume|ert) *\(.*\);",
|
||||||
"--",
|
"--",
|
||||||
"src/rpc/",
|
"src/rpc/",
|
||||||
"src/wallet/rpc*",
|
"src/wallet/rpc*",
|
||||||
":(exclude)src/rpc/server.cpp"
|
":(exclude)src/rpc/server.cpp",
|
||||||
], "CHECK_NONFATAL(condition) should be used instead of assert for RPC code.")
|
], "CHECK_NONFATAL(condition) or NONFATAL_UNREACHABLE should be used instead of assert for RPC code.")
|
||||||
|
|
||||||
sys.exit(exit_code)
|
sys.exit(exit_code)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user