Closed ee7 closed 4 months ago
No, won't fix. A pointer is a pointer, and in every ABI in the world a void * in a parameter can be substituted with any other pointer type.
It's much more clear at the function definition site to declare the ACTUAL types. Nor am I ever going to take the pain to do all the refactoring and gory casting to make the code less clear.
Please do not spend time on UB that is not actually going to lead to issues on any target platforms.
No, won't fix.
That's all fine by me. My main motivation for this ticket was to track the removal of this UBSan output, by whatever means, so that the rest of the output is more visible.
In the meantime, we've gained the use_ubsan
option, so I'll suggest that we add a line in meson.build
to suppress these errors. Otherwise I have to maintain a local branch to do that.
I'll take the liberty of re-opening this ticket, and creating https://github.com/crashappsec/libcon4m/pull/86 to close it. Please yell at me if you object.
With:
Since Clang 17, the
-fsanitize=function
check is no longer only for C++, and the check is enabled by default by-fsanitize=undefined
. See the list of available UBSan checks and the discussion of the relevant LLVM patch, which contains:The errors of this kind that are produced when running the tests, sorted by file name: