I Do Not Know C: Short quiz on undefined behavior (2015)
IMHO the problem is with compilers (and their developers) who think UB really means they can do <i>anything</i>, when what programmers usually expect is, and the standard even notes for one of the possible interpretations of UB, &quot;behaving during translation or program execution in a documented manner characteristic of the environment&quot;.<p>Related reading:<p><a href="http:&#x2F;&#x2F;blog.metaobject.com&#x2F;2014&#x2F;04&#x2F;cc-osmartass.html" rel="nofollow">http:&#x2F;&#x2F;blog.metaobject.com&#x2F;2014&#x2F;04&#x2F;cc-osmartass.html</a><p><a href="http:&#x2F;&#x2F;blog.regehr.org&#x2F;archives&#x2F;1180" rel="nofollow">http:&#x2F;&#x2F;blog.regehr.org&#x2F;archives&#x2F;1180</a> and <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8233484" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8233484</a>