On 12/28/2011 10:45 PM, Manfred Nowak wrote:
bearophile wrote:
void main() {
do {
int x = 5;
} while (x != 5); // Error: undefined identifier x
}
Do you mean, that the similar while-loop should also be okay?
| void main() {
| while (x != 5) /* uses `x' out of _following_ scope */ {
| int x = 5;
| };
| }
-manfred
No, it is not any more valid than the following code, even if condition
and body are scoped together:
void main() {
bool _ = x != 5;
int x = 5;
}
Related:
https://github.com/D-Programming-Language/dmd/pull/342#issuecomment-3232150