Browse Source

Merge #11071: Use static_assert(…, …) (C++11) instead of assert(…) where appropriate

d1e6f91 Prefer compile-time checking over run-time checking (practicalswift)

Pull request description:

  Use `static_assert(…, …)` instead of `assert(…)` where appropriate.

Tree-SHA512: 63b6e50916bcef2195a73f93476bd69657ed9a8eea0bc4382933f478a6df639632c23c076df401fea648142adcb308bb2e6be35cc3dabca30daf7649b790f436
0.16
Wladimir J. van der Laan 7 years ago
parent
commit
dbf6bd6ea0
No known key found for this signature in database
GPG Key ID: 1E4AED62986CD25D
  1. 1
      doc/developer-notes.md
  2. 2
      src/arith_uint256.h

1
doc/developer-notes.md

@ -37,6 +37,7 @@ code.
- **Miscellaneous** - **Miscellaneous**
- `++i` is preferred over `i++`. - `++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: Block style example:
```c++ ```c++

2
src/arith_uint256.h

@ -250,7 +250,7 @@ public:
uint64_t GetLow64() const 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; return pn[0] | (uint64_t)pn[1] << 32;
} }
}; };

Loading…
Cancel
Save