The Plan 9 C compiler doesn't take an insane view of the meaning of "undefined behaviour", which makes a big difference.
It also assumes you know how to write loops if they need to be fast (which frankly hasn't really mattered at the O/S level, esp on modern hardware),
so it won't "optimise" essential code out of your program by miscalculating the ranges during "aggressive-loop-optimisation".
No doubt it could be better, but it could easily be worse.
The executable is also finite size, not unbounded-but-finite.
For a compiler of a language the size and complexity of C (without some ANSI crud), I think it's not far off a size comparable to the language complexity
(although it could be a bit smaller); meanwhile, by treating "compiling C" as a subset problem of "compiling C++", gcc and especially clang are vast whales whistling at the wrong frequency for the problem.

On Sun, 2 Sep 2018 at 20:23, Iruatã Souza <iru.muzgo@gmail.com> wrote:
On 09/02/2018 09:31 AM, Chris McGee wrote:
> I'm curious what
> tools are available to help discover bugs.
>

Does simplicity and clarity count?