25 Jan
2011
25 Jan
'11
9:40 a.m.
At Tue, 25 Jan 2011 09:23:41 +0100, Jiri Slaby wrote:
On 01/25/2011 06:46 AM, Andreas Mohr wrote:
It is also quite interesting to note that this rather uncommon language syntax (do...while(0) within switch scope) compiled cleanly without issue (no warnings).
Note that the switch block is the same like the others and case and default and very similar to goto labels. You can even do: switch (x) { int abc; { case 5: abc = 7; break; } do { case 3: abc = 5; break; } while (0); while (1) { printf("%d\n", abc); default: abc = 1; } } And check what it will do for x == 3, 5, and others :).
Oh, don't let him bring to the dark side of C again :)
Takashi