John Ericson
e65510da56
Move unit tests to the location Meson expects them to be
...
Everything that is a separate subproject should live in the subprojects
directory.
Progress on #2503
This reverts commit 451f8a8c19 .
2024-10-17 15:42:16 -04:00
Las Safin
5b6a21acc5
Avoid casting function pointer in libutil test support
...
Casting function pointers seems to be almost always UB.
See https://stackoverflow.com/questions/559581/casting-a-function-pointer-to-another-type
Fixed by doing the casting of `void*` to `std::string*` inside the function instead.
Caught by UBSan.
2024-07-16 22:01:34 +00:00
José Luis Lafuente
01bad63c72
C API: Safer function pointer casting
...
See https://github.com/NixOS/nix/pull/8699#discussion_r1554312181
Casting a function pointer to `void*` is undefined behavior in the C
spec, since there are platforms with different sizes for these two kinds
of pointers. A safe alternative might be `void (*callback)()`
2024-04-12 21:41:15 +02:00
Robert Hensing
a512f4eebc
test/libutil: Add OBSERVE_STRING macro
...
Makes string callback easier to pass, without mistakes.
2024-04-11 17:39:21 +02:00