------- Additional Comments From bonzini at gcc dot gnu dot org  2004-10-28 13:30 
-------
> Jumps out of statement expressions are or were used in real code 
> <http://gcc.gnu.org/ml/gcc-patches/2003-05/msg00770.html>.  I don't think 
> they are well-defined (except for jumps using longjmp), but I believe we 
> need a deprecation period before removing them (e.g. deprecate in 4.0, 
> remove in 4.1).

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.

I had tried "if (1) ... else" as well, but then GCC gave warnings about possible
dangling "else"s.

Paolo

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17913

Reply via email to