diff options
author | practicalswift <practicalswift@users.noreply.github.com> | 2017-08-16 21:22:56 +0200 |
---|---|---|
committer | practicalswift <practicalswift@users.noreply.github.com> | 2017-08-17 00:42:32 +0200 |
commit | d1e6f91f85ba81394297ba72271226ece7047303 (patch) | |
tree | 216f74b95682ab69fe499940a81b2bdbf2b16a27 | |
parent | 22e301a3d56dc9e6878380ee92c7d19ca43119d2 (diff) |
Prefer compile-time checking over run-time checking
-rw-r--r-- | doc/developer-notes.md | 1 | ||||
-rw-r--r-- | src/arith_uint256.h | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/doc/developer-notes.md b/doc/developer-notes.md index 461d7e1dc6..77260bbdfd 100644 --- a/doc/developer-notes.md +++ b/doc/developer-notes.md @@ -37,6 +37,7 @@ code. - **Miscellaneous** - `++i` is preferred over `i++`. + - `static_assert` is preferred over `assert` where possible. Generally; compile-time checking is preferred over run-time checking. Block style example: ```c++ diff --git a/src/arith_uint256.h b/src/arith_uint256.h index 6223e4afeb..5fd4fe96cf 100644 --- a/src/arith_uint256.h +++ b/src/arith_uint256.h @@ -250,7 +250,7 @@ public: uint64_t GetLow64() const { - assert(WIDTH >= 2); + static_assert(WIDTH >= 2, "Assertion WIDTH >= 2 failed (WIDTH = BITS / 32). BITS is a template parameter."); return pn[0] | (uint64_t)pn[1] << 32; } }; |