assert semantic change proposal

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Tue Aug 5 11:35:14 PDT 2014


(limited connectivity for me)

For some perspective, recently gcc and clang have introduced 
optimizations based on undefined behavior in C/C++. The undefined 
behavior has been interpreted by modern optimizers as "these cases will 
never happen". This has wound up breaking a significant amount of 
existing code. There have been a number of articles about these, with 
detailed explanations about how they come about and the new, more 
correct, way to write code.

The emerging consensus is that the code breakage is worth it for the 
performance gains. That said, I do hear what people are saying about 
potential code breakage and agree that we need to address this properly.


More information about the Digitalmars-d mailing list