------- Additional Comments From jsm at polyomino dot org dot uk 2004-10-28 15:05 ------- Subject: Re: [4.0 Regression] ICE jumping into statement expression
On Thu, 28 Oct 2004, bonzini at gcc dot gnu dot org wrote: > I remember using once a void statement expression "((void) ({ ... })" instead of > "do ... while (0)" in macros. It had something to do with emulated recursion, > so I wanted to use "continue" inside the macro to do the recursion. The > emulated recursive calls were ten or so in that function, hence using macros. So we have another example of jumps out being used. That doesn't mean we want to support them - and certainly doesn't mean we can define sensibly what they mean when the statement expression isn't the full expression statement - but affirms that if we stop allowing jumps out then we need a deprecation period. Whereas jumps in we can reasonably declare invalid, fix that part of bug 772 by putting in an error for jumping in and hopefully fix this ice-on-invalid as well, without a deprecation period. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17913