Bug 37450 - [4.4 Regression] C++ FE times out on duplicated parameter
Summary: [4.4 Regression] C++ FE times out on duplicated parameter
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 4.4.0
: P3 normal
Target Milestone: 4.4.0
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-09 19:34 UTC by H.J. Lu
Modified: 2008-09-17 17:59 UTC (History)
6 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description H.J. Lu 2008-09-09 19:34:11 UTC
On Linux/x86, trunk revision 140155 is miscompiled. The
following test timed out

[hjl@gnu-33 gcc]$ cat /tmp/x.ii
void foo (int a, int a) { }
[hjl@gnu-33 gcc]$ ./xgcc -B./  -ansi -pedantic-errors -Wno-long-long  -S /tmp/x.ii
/tmp/x.ii:1: error: redefinition of ‘int a’
/tmp/x.ii:1: error: ‘int a’ previously declared here
Ctrl-C
[hjl@gnu-33 gcc]$

"make check" shows

Executing on host: /export/gnu/import/svn/gcc-test/bld/gcc/testsuite/g++/../../g++ -B/export/gnu/import/svn/gcc-test/bld/gcc/testsuite/g++/../../  -nostdinc++ -I/export/gnu/import/svn/gcc-test/bld/x86_64-unknown-linux-gnu/32/libstdc++-v3/include/x86_64-unknown-linux-gnu -I/export/gnu/import/svn/gcc-test/bld/x86_64-unknown-linux-gnu/32/libstdc++-v3/include -I/export/gnu/import/svn/gcc-test/src-trunk/libstdc++-v3/libsupc++ -I/export/gnu/import/svn/gcc-test/src-trunk/libstdc++-v3/include/backward -I/export/gnu/import/svn/gcc-test/src-trunk/libstdc++-v3/testsuite/util -fmessage-length=0   -ansi -pedantic-errors -Wno-long-long  -c  -m32 -o warn4.o /export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/g++.old-deja/g++.mike/warn4.C    (timeout = 300)
/export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/g++.old-deja/g++.mike/warn4.C:2: error: redefinition of 'int a'^M
/export/gnu/import/svn/gcc-test/src-trunk/gcc/testsuite/g++.old-deja/g++.mike/warn4.C:2: error: 'int a' previously declared here^M
WARNING: program timed out.
compiler exited with status 1

Patch for PR 37377 seems to fix this.
Comment 1 H.J. Lu 2008-09-13 07:26:07 UTC
As of revision 140333, this bug is still not fixed although
patch for PR 37377 has been applied.
Comment 2 H.J. Lu 2008-09-13 22:59:46 UTC
It is a C++ bug. A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2008-09/msg01041.html
Comment 3 hjl@gcc.gnu.org 2008-09-17 17:58:40 UTC
Subject: Bug 37450

Author: hjl
Date: Wed Sep 17 17:57:24 2008
New Revision: 140425

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=140425
Log:
2008-09-17  H.J. Lu  <hongjiu.lu@intel.com>

	PR c++/37450
	* name-lookup.c (pushdecl_maybe_friend): Don't return the old
	parameter for duplicate.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/name-lookup.c

Comment 4 H.J. Lu 2008-09-17 17:59:18 UTC
Fixed.