4 ms·
That is because the compiler authors conflated warnings with a linter. Warnings should be used to indicate basically just two things. 1. Dead/Duplicated Code.
by zaphar 9y ago
That is because the compiler authors conflated warnings with a linter. Warnings should be used to indicate basically just two things.
1. Dead/Duplicated Code.
2. Probably Broken Code.
Anything else is stylistic and the realm of opinion. Even if it's informed opinion enforcing it belongs in a linter.
- quotemstr 9y agoTo be fair, a compiler contains all the infrastructure you'd want in a linter. I don't mind compilers having lint-like warnings: I just want them to very clear about the differences between these warnings and warnings that reflect functional problems with high probability.
- evincarofautumn 9y agoWhat I’d like is for compiler authors to just admit this and include a lint mode. There’s some practical and political difficulty with adding new warnings to a widely used compiler, partly because you don’t want to generate too many new warnings for existing code, partly because people compile with -Werror and upgrading the compiler will break (well, sprain) their build. Those difficulties would be easy to skirt by just tossing new warnings into lint mode and promoting them to compiler warnings if they turn out to be very useful in practice.
- zaphar 9y agoI agree. A -Wlint would be a great way to keep the distinction but reuse the compilers infrastructure.