&gt; I&#x27;d like to see a free C compiler that clearly defines, and permanently commits to, carefully designed semantics for everything that&#x27;s labelled &quot;undefined&quot; or &quot;unspecified&quot; or &quot;implementation-defined&quot; in the C &quot;standard&quot;.<p>That wouldn&#x27;t just be a new compiler. That would be a new    language. I dont think there are any short cuts to fix C.<p>C++ is doing something somewhat similar with the &quot;C++ Core Guideline&quot; rules, which are designed to be checkable by  static analysis tool. The long term goal is that eventually C++ will become a safe subset, when all the error-prone parts of the language have replacements.<p>&gt; &quot;Following the rules will lead to code that is statically type safe, has no resource leaks, and catches many more programming logic errors than is common in code today. And it will run fast - you can afford to do things right.&quot;<p><a href="https:&#x2F;&#x2F;github.com&#x2F;isocpp&#x2F;CppCoreGuidelines&#x2F;blob&#x2F;master&#x2F;CppCoreGuidelines.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;isocpp&#x2F;CppCoreGuidelines&#x2F;blob&#x2F;master&#x2F;CppC...</a>