This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: PATCH for C++ build problems with -fno-vtable-thunks


Mark Mitchell wrote:

>   Here's a patch.  We were building bogus types; my previous change
> unearthed them.

That seems to have cured it on my target.   It also seems to have cleaned
up two additional failures on init8 and const1. :-)

With this patch applied, I'm down to 7 failures in the default g++ case.
They seem mostly different enough to be believable problems.

FAIL: g++.brendan/explicit1.C (test for excess errors)
FAIL: g++.jason/template18.C undefined (test for errors, line 16)
FAIL: g++.law/profile1.C (test for excess errors)
FAIL: g++.mike/dyncast7.C (test for excess errors)
FAIL: g++.other/crash3.C (test for excess errors)
FAIL: g++.robertl/eb27.C (test for excess errors)
FAIL: g++.robertl/eb41.C (test for excess errors)


FAIL: g++.jason/template18.C undefined (test for errors, line 16)
XFAIL: g++.jason/template18.C (test for excess errors)
Undefined                       first referenced
 symbol                             in file
int min<int>(int, int)              /usr/tmp/ccjZVrlj.o
/play/negcs/gcc/testsuite/g++-jason-template18-C: fatal error: Symbol referencin
g errors. No output written to /play/negcs/gcc/testsuite/g++-jason-template18-C
collect2: ld returned 1 exit status

dyncast7

FAIL: g++.mike/dyncast7.C (test for excess errors)
/play/negcs/i686-pc-sco3.2v5.0.5//libstdc++/libstdc++.a(cstrmain.o): fatal error
: symbol `basic_string<char, string_char_traits<char>, __default_alloc_template<
false, 0> >::Rep::data(void)` multiply-defined, also in file /usr/tmp/ccOve9Ye.o
collect2: ld returned 1 exit status


spawn /play/negcs/gcc/testsuite/../xgcc -B/play/negcs/gcc/testsuite/../ /play/eg
cs/gcc/testsuite/g++.old-deja/g++.other/crash3.C -g -O2 -I/play/egcs/libio -I/pl
ay/negcs/i686-pc-sco3.2v5.0.5/libio -I/play/egcs/libg++ -I/play/egcs/libg++/src
-I/play/egcs/libstdc++ -I/play/egcs/libstdc++/stl -I/play/negcs/gcc/testsuite/..
/include -c -o /play/negcs/gcc/testsuite/crash3.o ^M
(EOF):undefined name: .L_E128^M
compiler exited with status 1
output is:

FAIL: g++.robertl/eb27.C (test for excess errors)
/play/egcs/gcc/testsuite/g++.old-deja/g++.robertl/eb27.C:33: no match for `test<
T> & += const test<int> &'

FAIL: g++.robertl/eb41.C (test for excess errors)
/play/negcs/i686-pc-sco3.2v5.0.5//libstdc++/libstdc++.a(cstrmain.o): fatal error
: symbol `basic_string<char, string_char_traits<char>, __default_alloc_template<
false, 0> >::rep(void) const` multiply-defined, also in file /usr/tmp/ccMUZ6ja.o
collect2: ld returned 1 exit status



Thanx for the prompt fix, Mark!

RJL



> 1998-10-26  Mark Mitchell  <mark@markmitchell.com>
> 
> 	* error.c (dump_decl): Deal with TEMPLATE_DECLs that are
> 	VAR_DECLs.  Handle vtables whose DECL_CONTEXT is not a type.
> 
> 	* class.c (finish_struct_1): Use build_cplus_array_type to build
> 	array types.
> 	* decl.c (init_decl_processing): Likewise.
> 	* except.c (expand_end_eh_spec): Likewise.
> 	* search.c (expand_upcast_fixups): Simplify very slightly.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]