5 ms·
> growing user hostility You have excellent tooling (*sanitizer, static analysis, valgrind, ${WHATEVER}) and abstractions provided to do handholding for you (i
by llukas 8y ago
> growing user hostility
You have excellent tooling (*sanitizer, static analysis, valgrind, ${WHATEVER}) and abstractions provided to do handholding for you (ie. unique_ptr).
Most of that was created in last few years.
- pjmlp 8y agoCompletely wrong. Lint was created in 1979, during the mid-90's we already had Insure++, Purify and others, ages before of the free beer alternatives. Yet being free still doesn't help the large majority of C and C++ to actually use them, as proven at one of CppCon talks, where a tiny 1% of the attendees confirmed using any kind of analysers.
- minipci1321 8y agoHow well the attendees of CppCon represent the developer base of C++ projects which are in dire needs of these tools? Maybe they are so skilled the need does not arise?
- esrauch 8y agoEven people who work on the language spec can't really avoid writing code that hits UB without the help of sanitizers.
- pjmlp 8y agoThe amount of CVEs found per month on highly skilled projecs, with deep review processes, like the Linux kernel proove otherwise. As for how well, usually conferences like CppCon have the top of the tops.
- jcranmer 8y agoOne of the most eye-opening papers in this regard was the integer overflow checking paper (which Regehr was coauthor on), which found that every library tested invoked undefined signed integer overflow. This includes SQLite, infamous for its comprehensive testing, and various libraries whose sole purpose was to check if an operation would overflow without invoking undefined behavior. Belief that you are skilled enough to write C/C++ code that doesn't exercise undefined behavior either shows that you don't know what is undefined behavior or that you believe you are the best programmer to have ever lived.
- gpderetta 8y agoLint is not a whole program static analyzer and being free is a big deal. Your -second- third paragraph is, unfortunately, still correct though.
- pjmlp 8y agoSomehow other professionals manage to pay for what goes into their toolboxes, music case, kitchen knives, ....