On Tue, Sep 13, 2016 at 9:36 AM, sqweek E. <sqw...@gmail.com> wrote: > > The remaining examples sound indistinguishable from compiler bugs.
Developers of C/C++ compilers rigorously rely on the language standard's definition of undefined behavior when optimizing programs. This can lead to many behaviors that, when first encountered, are often denounced as compiler bugs. But the compiler's only promise is to implement the language standard. For example, until C++11 clarified that speculative stores were forbidden, C/C++ compilers really did generate them, and it really did baffle and confuse people and break programs including the Linux kernel, but it was not wrong according to the then-relevant language standards. There are many similar cases. It's easier to say that the compiler is broken than it is to point to the rules that explain why that is the case. Ian -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.