[Bug tree-optimization/41339] New: Variables can occur multiple times in cfun->local_decls
baldrick at free dot fr
gcc-bugzilla@gcc.gnu.org
Fri Sep 11 21:03:00 GMT 2009
While mucking around with gcc internals, I noticed that occasionally the
same tree can occur several times in the same cfun->local_decls list.
That seems like a bug(let). Here's a testcase:
int f() {}
void g(void) { f(); }
The problem shows up at -O2, presumably due to inlining:
gcc -c -O2 testcase.c
To make the problem easy to see, I'll attach a debugging patch to this PR
that causes "error: Repeated variable in list of local declarations" to be
printed if a repeated variable is detected. You have to set
VERIFY_LOCAL_DECLS in the environment for the patch to do anything.
Here's an example session:
$ export VERIFY_LOCAL_DECLS=true
$ gcc -c -O2 testcase.c
testcase.c: In function Â__float128Â:
testcase.c:2:1: error: Repeated variable in list of local declarations
I have no idea why it thinks the function is called __float128.
--
Summary: Variables can occur multiple times in cfun->local_decls
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: baldrick at free dot fr
GCC build triplet: x86_64-unknown-linux-gnu
GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41339
More information about the Gcc-bugs
mailing list