On Mon, Jun 12, 2023 at 11:44 AM Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > > I tried this before I used it and variables inside a for() loop have a > scope of a single iteration. Whee. Ok, that surprised me. But I guess that I shouldn't have found it surprising, since the value doesn't survive from one iteration to the next. My mental picture of the scope was just different - and apparently wrong. But thinking about it, it's not just that the value doesn't survive, it's also that the "continue" will exit the scope in order to go back to the "for()" loop. I guess the "goto repeat" ends up being similar, since - as Ian Lance Taylor said in one of the earlier discussions - that "__cleanup__" ends up creating an implicit hidden scope for the variable. So a 'goto' to before the variable was declared implicitly exits the scope. Ugh. I do really hate how subtle that is, though. So while it might not be the horrible bug I thought it was, I'd _really_ like us to not do those things just from a sanity angle. Linus