This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Label handling overhaul (C front end only)
Gabriel Dos Reis <gdr@integrable-solutions.net> writes:
> "Zack Weinberg" <zack@codesourcery.com> writes:
>
> [...]
>
> | +The local label feature is useful for complex macros. If a macro
> | +contains nested loops, a @code{goto} can be useful for breaking out of
> | +them. However, an ordinary label whose scope is the whole function
> | +cannot be used: if the macro can be expanded several times in one
> | +function, the label will be multiply defined in that function. A
> | +local label avoids this problem. For example:
>
> I reiterate objections to this invention.
You're welcome to submit a patch to get rid of this extension
entirely. I would like to point out that my change makes the
C front end consistent with the C++ front end.
zw