This is the mail archive of the gcc-bugs@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]

template bugs


Hi,

Here are collected some of the problems we have with some of the latest
versions of egcs.
The code that generated the errors, the bug report itself and the
generated files (ii and s) are archived at:

http://borco-ei.eng.hokudai.ac.jp/~borco/bugs/template.tar.gz

The archive is arround 500 kB so I make it available on http as you've
requested.

I attache the bug_report file, pressent also in the above archive.

My computer is a Pentium II machine running Debian Potato (glibc 2.1,
kernel 2.2.5).

TIA,

Ionutz
-- 
Mental backup in progress - Do Not Disturb!
--
http://borco-ei.eng.hokudai.ac.jp/~borco/
================================
Bug Report for templates in EGCS
================================

All the problematic code was reported to compile with:

egcs-2.90.29 980515 (egcs-1.0.3 release)
M$ Visual C++ 5.0/6.0 on win95/98/NT
Borland C++ v. 5.0c on win95/98/NT
g++ 2.8.0 on solaris 2.6

It seems that newest egcs have problems with templates, 
especially subclassing templates classes.
Another problem is with void* NULL conversion related 
to ANSI C++ restriction.

The code that generated these errors, this report  and 
the generated files can be found at:

http://borco-ei.eng.hokudai.ac.jp/~borco/bugs/template.tar.gz

============
EGCS 2.91.66
--- Bug2 ---
============
g++ generated 

	ttest.ii 
	ttest.s

I have been saved them as 

	output/2.91.66/ttest.ii 
	output/2.91.66/ttest.s

The console output is bellow
============

g++ -g -v --save-temps --I. -I../include `gtk-config --cflags` -c ttest.cc -o bug2.ii
Reading specs from /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release)
 /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/cpp -lang-c++ -v -I../include -I/usr/X11R6/include -I/usr/lib/glib/include -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=91 -D__ELF__ -Dunix -Di386 -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__i386__ -D__linux__ -D__unix -D__i386 -D__linux -Asystem(posix) -D__EXCEPTIONS -g -Asystem(unix) -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -Di486 -D__i486 -D__i486__ ttest.cc ttest.ii
GNU CPP version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 ../include
 /usr/X11R6/include
 /usr/lib/glib/include
 /usr/include/g++-2
 /usr/local/include
 /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/include
 /usr/include
End of search list.
 /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/cc1plus ttest.ii -quiet -dumpbase ttest.cc -g -version -fI. -o ttest.s
cc1plus: Invalid option `-fI.'
GNU C++ version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release) (i486-linux) compiled by GNU C version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release).
../include/vdk/vdkbtrees.h: In instantiation of `RedBlackNode<int>':
../include/vdk/vdkbtrees.h:134:   instantiated from `AbstractBinaryTree<int,RedBlackNode<int> >::Iterator::StartAt<int, RedBlackNode<int>>(BtreeIteratorMode)'
../include/vdk/vdkbtrees.h:125:   instantiated from `AbstractBinaryTree<int,RedBlackNode<int> >::Iterator::Iterator<int, RedBlackNode<int>>(const AbstractBinaryTree<int,RedBlackNode<int> > &, BtreeIteratorMode)'
ttest.cc:95:   instantiated from here
../include/vdk/vdkbtrees.h:134: confused by earlier errors, bailing out
make: *** [bug2] Error 1

============
EGCS 2.93.21
--- Bug1 ---
============
g++ generated 

	forms.ii 

I have been saved them as 

	output/2.93.21/forms.ii 

This was compiled with no problem on EGCS 2.91.66 !

The console output is bellow
============

g++ -g -v --save-temps --I. -I../include `gtk-config --cflags` -c forms.cc -o bu
g1.ii
Reading specs from /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/specs
gcc version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental)
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/cpp -lang-c++ -v -I../incl
ude -I/usr/X11R6/include -I/usr/lib/glib/include -D__GNUC__=2 -D__GNUG__=2 -D__c
plusplus -D__GNUC_MINOR__=93 -D__ELF__ -Dunix -D__i386__ -Dlinux -D__ELF__ -D__u
nix__ -D__i386__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -
g -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -Di486 -D__i486 -D__i48
6__ forms.cc forms.ii
GNU CPP version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental) (i386 Linux/
ELF)
#include "..." search starts here:
#include <...> search starts here:
 ../include
 /usr/X11R6/include
 /usr/lib/glib/include
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/../../../../include/g++-2
 /usr/local/include
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/../../../../i486-linux/inc
lude
End of omitted list.
forms.cc:37: config.h: No such file or directory
make: *** [bug1] Error 1

============
EGCS 2.93.21
--- Bug2 ---
============
g++ generated 

	ttest.ii 
	ttest.s

I have been saved them as 

	output/2.93.21/ttest.ii 
	output/2.93.21/ttest.s

The console output is bellow
============

g++ -g -v --save-temps --I. -I../include `gtk-config --cflags` -c ttest.cc -o bug2.ii
Reading specs from /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/specs
gcc version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental)
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/cpp -lang-c++ -v -I../include -I/usr/X11R6/include -I/usr/lib/glib/include -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=93 -D__ELF__ -Dunix -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -g -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -Di486 -D__i486 -D__i486__ ttest.cc ttest.ii
GNU CPP version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 ../include
 /usr/X11R6/include
 /usr/lib/glib/include
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/../../../../include/g++-2
 /usr/local/include
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/../../../../i486-linux/include
End of omitted list.
 /usr/lib/egcs-ss/lib/gcc-lib/i486-linux/egcs-2.93.21/cc1plus ttest.ii -quiet -dumpbase ttest.cc -g -version -fI. -o ttest.s
cc1plus: Invalid option `-fI.'
GNU C++ version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental) (i486-linux) compiled by GNU C version egcs-2.93.21 19990502 (gcc2 ss-980929 experimental).
In file included from ttest.h:11,
                 from ttest.cc:4:
../include/vdk/vdkbtrees.h:614: use of enum `RedBlack' without previous declaration
../include/vdk/vdkbtrees.h:618: confused by earlier errors, bailing out
make: *** [bug2] Error 1


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