<i>&gt; it is surprising to see Clang developers (I presume) on the bug being so blasé about introducing undefined behavior themselves.</i><p>I have suddenly lost a great deal of respect and confidence for LLVM&#x2F;Clang after reading this bug thread; I value software reliability above all else, and being able to write reliable software without the compiler negating that effort. It seems I can no longer be assured this is even a priority of my compiler any more, with Clang. All the more reason to switch to Rust I suppose.<p>That the Clang people are trying to deflect this bug as &quot;fine, no fix necessary&quot; is kind of disgusting software engineering behavior. Compilers spontaneously introducing undefined behavior in another layer (to the point of causing codegen warnings from perfectly correct C code, is as clearly cut a BUG as any, independent of current API implementations outside of the ISO spec.<p>If you want to make undefined API calls the norm, then <i>make a new API where the behavior you want is defined</i>. Invoking undefined behavior of a decoupled library that users can swap out is flat out indefensible.<p>That they are reluctant to fix this makes me shy away from ever using Clang&#x2F;LLVM, which is sad because before I had always held them with very high respect.