3 ms·
https://godbolt.org/z/r39jK1ddv https://godbolt.org/z/r39jK1ddv It increments, then decrements with -O0 though. I do not see the issue still, as the behavior
by johnisgood 2y ago
https://godbolt.org/z/r39jK1ddv https://godbolt.org/z/r39jK1ddv
It increments, then decrements with -O0 though.
I do not see the issue still, as the behavior is expected with -O0; increments then decrements.
- eru 2y agoThere's nothing in the C standard that enforces the observed -O0 behaviour. Your compiler might change tomorrow.
- johnisgood 2y agoHow likely is that to happen, and in which languages can you either optimize or not AND where the compiler might not change tomorrow though? David Hume said that we cannot know if the sun is going to rise tomorrow just because it has always did before. See "problem of induction", https://philosophynow.org/issues/160/Humes_Problem_of_Induction https://philosophynow.org/issues/160/Humes_Problem_of_Induct....
- eru 2y agoThe C standard guarantees certain behaviours that will not change, even if your C compiler changes. That's the whole point of the standard. And it has nothing to do with the problem of induction. But the standard does not guarantee that specific assembly instructions will be used.
- johnisgood 2y agoSure, but what programming language or its standard guarantees it (and its compilers in practice, of course), then? You said "Your compiler might change tomorrow.", but does it not apply to EVERY programming language's compiler?
- eru 2y ago> You said "Your compiler might change tomorrow.", but does it not apply to EVERY programming language's compiler? Yes. I wasn't the one trying to argue that C is special in this regard. Just the opposite.