Long story short, 32-bit Windows only guarantees 8-byte alignment from malloc,
while MinGW generates a default operator new that assumes 16-byte alignment
from malloc. Forcing 32-byte alignment for affected structs will make MinGW use
the aligned operator new, ensuring correct (if excessive) alignment.
* clang-tidy: use bool literals
Found with modernize-use-bool-literals
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* clang-tidy: replace std::bind with lambdas
Found with modernize-avoid-bind
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* clang-tidy: use data() instead of pointer stuff
Found with readability-container-data-pointe
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* clang-tidy: use empty()
Found with readability-container-size-empty
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* clang-tidy: remove static in anon namespace
Found with readability-static-definition-in-anonymous-namespace
Signed-off-by: Rosen Penev <rosenp@gmail.com>
* clang-tidy: remove const return
Found with readability-const-return-type
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>