Fixups for #844 .
Fixes #962 .
Now I wonder if a static const in the header file would be better than a macro.
By the way, an unrelated issue is that we should have extern C as we do in the main header...
LGTM. Maybe you should add a CI build that builds the entire project/tests/benchmarks with a C++ compiler-- it should compile. It may need -fpermissive or a few extra explicit casts. (Don't use Werror, though).
unsigned char foo[4] = "abcd" is not valid C++ because the string
literal "abcd" does not fit into foo due to the terminating NUL
character. This is valid in C, it will just omit the NUL character.
Fixes #962.
This is forbidden in C++.
C++ does not allow initialization with string literals but we do it in other
places and -fpermissive will convince g++ to compile.
utACK 792d7c46668144e0ca2a321b0765935037258d2f (currently the CI fails on master and this fixes it)
Not ready to merge, I'll have some uncommitted additional changes but had to interrupt my work.
Nice, CI output looks as expected.
Fwiw, the issue with CI on master after merging #844 wouldn't have been easily caught before pushing because the -Wmissing-braces warning doesn't appear with the version of clang installed on my system at least (I have version 12, appears with v7).
By the way, an unrelated issue is that we should have extern C as we do in the main header...
We do already.
ACK 90e83449b2c2e4046af755e35fdeee579a468f31