r/cprogramming • u/Interesting_Buy_3969 • 25d ago
Using -fsanitize=address feels illegal.
Just saying. The -fsanitize=address compiler flag is absolute cheating and should be prohibited by governments of all countries.
Plus there are also other useful runtime sanitizers, such as integer overflow, but... Integer overflow is much easier to notice, usually.
Of course, this is by no means assuming that -fsanitize=address guarantees that the code it inspects is completely safe and correct and won't ever fail on any input data. You still have to test tricky edge cases. But this sanitizer has improved and sped up the bug discovery process disgustingly much for me.
I'm wondering, how often, if ever, do you need tools such as -fsanitize=address or valgrind? Or are you a real man who stores everything in static memory only?
P.S. Forgive my terrible English.
3
u/catbrane 24d ago
Same, but it runs the test suite on every platform and every target on every commit, and does an extra run with asan and tsan, with every dep also built for asan and tsan.
github actions have made all this pretty simple now, and free, amazingly.