I Agree With Linus
Almost 15 years ago I inherited a huge C project that generated about 17,000 warnings. The original team of developers never bothered to investigate them and was happy if the build completed without “errors”. I was always getting tasked with finding out why a customer would discover a weird bug that was usually a showstopper. Eventually I ran a good analyzer on the code and found that a lot of those warnings should have been errors. Perhaps 30% of the warnings were pointing out buffer overruns, invalid use of “=“ instead of “==“, potential stack issues. Took me ages to clean those up. The reward was a customer commenting several weeks after an upgrade at how stable the code suddenly was after the upgrade.
I wholeheartedly agree that warnings should be errors. Code should build clean. Especially C.