aboutsummaryrefslogtreecommitdiff
path: root/src/validation.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/validation.h')
-rw-r--r--src/validation.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/validation.h b/src/validation.h
index cb5b291dab..8bc8842c54 100644
--- a/src/validation.h
+++ b/src/validation.h
@@ -31,6 +31,7 @@
#include <util/check.h>
#include <util/fs.h>
#include <util/hasher.h>
+#include <util/result.h>
#include <util/translation.h>
#include <versionbits.h>
@@ -42,6 +43,7 @@
#include <stdint.h>
#include <string>
#include <thread>
+#include <type_traits>
#include <utility>
#include <vector>
@@ -329,6 +331,11 @@ public:
ScriptError GetScriptError() const { return error; }
};
+// CScriptCheck is used a lot in std::vector, make sure that's efficient
+static_assert(std::is_nothrow_move_assignable_v<CScriptCheck>);
+static_assert(std::is_nothrow_move_constructible_v<CScriptCheck>);
+static_assert(std::is_nothrow_destructible_v<CScriptCheck>);
+
/** Initializes the script-execution cache */
[[nodiscard]] bool InitScriptExecutionCache(size_t max_size_bytes);
@@ -810,7 +817,7 @@ private:
* In case of an invalid snapshot, rename the coins leveldb directory so
* that it can be examined for issue diagnosis.
*/
- void InvalidateCoinsDBOnDisk() EXCLUSIVE_LOCKS_REQUIRED(::cs_main);
+ [[nodiscard]] util::Result<void> InvalidateCoinsDBOnDisk() EXCLUSIVE_LOCKS_REQUIRED(::cs_main);
friend ChainstateManager;
};