Repository navigation
feat: add UBSAN and ASAN to cassert build - #14
Conversation
8a7df9a to
6b02129
Compare
steve-chavez
left a comment
There was a problem hiding this comment.
Overall looks pretty good 👍
Only some errors on CI need to be cleared.
Works on macos/clang, not sure why Linux/gcc is not working. Edit. Seems like its just do to a different warning/error message. Interestingly gcc raises a runtime error with divide by zero while clang just moves past it. |
0aa1c40 to
f42c32a
Compare
a530df1 to
a4755ed
Compare
|
I think this PR is in somewhat better shape. Took an embarrassingly long time to get it there, lots of issues along the way: long build/CI times (fixed mostly now), some non hermetic system leakages that prevent me from debugging locally that we still need to fix, one of the sanitizers straight up just doesn't work on macOS and causes hello world binaries to freeze at 100% CPU, etc. That said I think this PR is mostly good at this point. |
db7a30f to
81bda36
Compare
This PR adds the UBSAN sanitizer to the cassert build. It also adds and tests an example that will pass the non cassert build testing but will fail during the cassert build testing.
https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html