This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C++ PATCH: Improve exceptions/inlining compile-time performance
- From: Mark Mitchell <mark at codesourcery dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: 25 Apr 2003 00:38:27 -0700
- Subject: Re: C++ PATCH: Improve exceptions/inlining compile-time performance
- References: <200304242317.TAA09822@makai.watson.ibm.com>
> By the way, the following regressions appeared on the GCC 3.3
> branch:
One thing at a time.
Let's just do 3.3 for the moment, and then we'll get 3.4 fixed up. The
output I report below is for top-of-branch with no local patches.
I'm very confused by this one:
> FAIL: g++.dg/parse/class1.C (test for excess errors)
With a cross compiler from i686-pc-linux-gnu to powerpc-ibm-aix4.3, I
get the exact same messages for these tests as I do with a native
compiler. In particular:
[mitchell at sirius gcc]$ ./cc1plus -fmessage-length=0
../../gcc/testsuite/g++.dg/parse/class1.C
int N::f()
../../gcc/testsuite/g++.dg/parse/class1.C:5: error: declaration of
`struct N::A' in `int N::f()' which does not enclose `N'
../../gcc/testsuite/g++.dg/parse/class1.C:5: confused by earlier errors,
bailing out
There is a dg-error entry at line 5, so I'm not sure why this test is
failing. What does your g++.log file say for this test?
(The 3.3 automated regression tester does not seem to have a web site,
so there's no way to look this up.)
I'm also confused by this one:
> FAIL: g++.dg/warn/weak1.C (test for excess errors)
The output I get is:
weak1.C:5: warning: weak declaration of `void foo()' not supported
which seems very reasonable, given that it's not support on AIX. I
can't see how this test would ever have passed. Shouldn't AIX just be
added to the list of targets expected to fail for that test? (The test
is already XFAILed for *-*-coff and i?86-pc-cygwin.)
> FAIL: g++.dg/warn/inline1.C (test for excess errors)
I understand what's wrong with this one, and will work on it tomorrow.
This is a problem on systems that don't have weak.
> FAIL: g++.other/decl5.C (test for excess errors)
This is another one where I get the exact same output with the cross
compiler and the native compiler -- and the native compiler passes the
test. There is again, a "confused by earlier errors" message; is that
not working for you for some reason?
> FAIL: g++.pt/deduct5.C (test for excess errors)
This one is fixed by my patch to pt.c, which you tested out. The
comdat2.C failure is related to the instantiate12.C problem.
> FAIL: g++.pt/instantiate12.C (test for excess errors)
I understand what's wrong with this one, and will work on it tomorrow.
This is a problem on systems that don't have weak.
--
Mark Mitchell
CodeSourcery, LLC
mark at codesourcery dot com