This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix -Wshadow=local warnings in rtl.h
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Bernd Edlinger <bernd dot edlinger at hotmail dot de>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 3 Oct 2019 17:25:55 +0200
- Subject: Re: [PATCH] Fix -Wshadow=local warnings in rtl.h
- References: <VI1PR03MB452892F64E88E21B5BC0B380E49F0@VI1PR03MB4528.eurprd03.prod.outlook.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, Oct 03, 2019 at 03:17:47PM +0000, Bernd Edlinger wrote:
> Hi,
>
> this fixes -Wshadow=local warnings in the RTL_FLAG_CHECKx macros,
> which happen when this macro is used recursively in a macro
> argument. The __typeof (RTX) const _rtx in the inner macro
> expansions shadows the outer macro expansions.
>
> So reworked the macro to not use statement expressions but
> use templates instead. Since the 7-argument overload is not
> used anywhere removed RTL_FLAG_CHECK7 for now.
What effect does this have on the cc1/cc1plus .text sizes?
Does this affect debuggability of --enable-checking=yes,rtl compilers?
I mean, often when we replace some macros with inlines step in GDB
becomes a bigger nightmare, having to go through tons of inline frames.
gdbinit.in has a lengthy list of inlines to skip in rtl.h, shouldn't this be
added to that list? Not 100% sure how well it will work on rtl checking
vs. non-rtl checking builds.
Jakub