- fixed invalid, missing or additional arguments
- removed all type casts from arguments
- added missing (void*) typecasts for %p arguments
- use inttypes defines where appropriate
As building with -Wl,--no-undefined might cause issues when
combined with other linker flags (e.g. with -fsanitize=address see #3289)
it is now disabled per default but can be re-enabled with
-DWITH_NO_UNDEFINED=ON.
It is enabled for ci builds on linux to find undefined symbols.