| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| stringzilla_bare_linux_amd64_4.4.1.deb | 2025-12-03 | 112.6 kB | |
| stringzilla_bare_linux_amd64_4.4.1.so | 2025-12-03 | 321.2 kB | |
| stringzilla_bare_linux_arm64_4.4.1.deb | 2025-12-03 | 86.8 kB | |
| stringzilla_bare_linux_arm64_4.4.1.so | 2025-12-03 | 177.1 kB | |
| stringzilla_shared_macos_arm64_4.4.1.zip | 2025-12-03 | 94.1 kB | |
| README.md | 2025-12-03 | 761 Bytes | |
| v4.4.1_ Harden C 99 API with _static n_ Array Arguments source code.tar.gz | 2025-12-03 | 729.4 kB | |
| v4.4.1_ Harden C 99 API with _static n_ Array Arguments source code.zip | 2025-12-03 | 788.1 kB | |
| Totals: 8 Items | 2.3 MB | 3 | |
Added sz_at_least(n) macro for C99's static array parameter syntax, enabling compile-time bounds checking on fixed-size array arguments. In C mode, Clang will now warn when passing undersized arrays to annotated functions. The macro expands to nothing in C++ for compatibility.
:::c
// Compiler can now warn if the digest buffer is smaller than 32 bytes
void sz_sha256_state_digest(..., sz_u8_t digest[sz_at_least(32)]);
// Lookup tables must be at least 256 bytes
void sz_lookup(..., char const lut[sz_at_least(256)]);
See LWN.net article for background on this feature and its use in the Linux kernel.
Patch
- Improve: Harden C API with
static narrays (#289) (039c4b4)