Hacker News new | ask | show | jobs
by FraKtus 2853 days ago
Don't you think that with the tools we have now it's easier to control the quality of code produced (Clang memory sanitizers and so on)? I feel more at ease to ship C code today after instrumenting it than a few years ago...
2 comments

Tooling absolutely helps to reduce defects. That's why you use them.

That said, sometimes I'm shocked what kind of disasters get past the analyzers.

Stakes are higher than ever. It's not just about functional correctness and avoiding crashes anymore. Your code needs to be secure against outside world malicious actions. Getting rid of counterintuitive security vulnerabilities is very, very hard.

I would say that is why security conscious developers use them.

Sadly we are a very very tiny percentage, as proven by Herb Sutter question to the audience at CppCon (1% of the audience answered positively), and CVE frequent updates.

Not really, as it is proven almost on daily basis.

https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=memory+corr...

How do you know that developers working on those used tools such as the Clang Memory Sanitizer?
Because many on that list are well known FOSS projects that supposedly have such processes in place, including manual review before accepting patches into mainline, like the Linux kernel being discussed here.