Mario Rugiero
Mario Rugiero
These are mostly brought up by tools such as cppcheck, gcc and clang warnings, and clang-analyzer. While I've run the tests and used it for a while, I believe proper...
During evaluation of #198 the issue of big endian code not being tested by the CI pipelines was raised. This means, despite code being in place to support it, the...
Given that we are already not reentrant (malloc can't be used in signal handlers and we make extensive use of it), nor can I think of reasonable scenarios where we...
The standard library specifies `free` to act as a `nop` when its argument is a `NULL` pointer. This gives us programmers a big convenience for error handling and similar situations...
I've been toying with the idea of making CRoaring benchmarks print their results in a format compatible with the `benchstat` tool we use in the Go world for comparing different...
Some years ago I played a bit with Coverity Scan for some personal (admittedly toy) projects and it looked like a good way to find hard to spot memory bugs...
[Conjunctive normal form (CNF)](https://en.wikipedia.org/wiki/Conjunctive_normal_form) is a notation to represent some operations frequently used in a few niches. It can be seen as an extension of a feature we already support,...
Rather than branching each time, consider doing something like this: ```C int (*run_container_cardinality)(const run_container_t *run) = run_container_cardinality_dispatch; int run_container_cardinality_dispatch(const run_container_t *run) { if (croaring_avx2()) { run_container_cardinality = _avx2_run_container_cardinality; } else...
The title is self-descriptive. Many files fail the `clang-format-check.sh`, discouraging using `clang-format.sh` to keep the newer patches in shape. Fixing is easy, a single commit per-file for easy revision, and...