This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
internal compiler error
- To: gcc-bugs at gcc dot gnu dot org, egcs-bugs at egcs dot cygnus dot com
- Subject: internal compiler error
- From: Tom Hull <thull at kscable dot com>
- Date: Tue, 30 Nov 1999 15:59:57 -0600
I encountered the following error whilst trying to built ftwalk-1.5.2
(see http://www.ocston.org/~thull/ftwalk/download.html).
Error message:
ft_ios.C: In function `int ostream_special(class ostream &, class ft_objt &)':
ft_ios.C:371: Internal compiler error.
ft_ios.C:371: Please submit a full bug report to 'egcs-bugs@egcs.cygnus.com'.
ft_ios.C:371: See <URL:http://egcs.cygnus.com/faq.html#bugreport> for details.
make[1]: *** [ft_ios.o] Error 1
make[1]: Leaving directory `/home/tom/ftwork/ftwalk-1.5.2/src'
make: *** [ftwalk] Error 2
GCC Version:
$ g++ --version
egcs-2.91.66
System Type:
$ uname -a
Linux tux.kinich.com 2.2.12-20 #1 Mon Sep 27 10:40:35 EDT 1999 i686 unknown
I.e., Intel Pentium II 333MHz, 128MB RAM, Red Hat Linux 6.1
All options you passed to the compiler:
c++ -c -g -O2 -I. -D_GNU_SOURCE=1 ft_ios.C
Preprocessed output of the source file that caused the compiler error:
See attachment.
Note: I reworked the code a bit, which provides a workaround to this
problem:
class ft_enum : public ft_objt {
public:
...
int operator () () const { return int(*this); }
+ int val() const { return (int) *this; }
...
}
static int ostream_special(ostream &s, ft_objt &o)
{
if (o.type() == t_enum) {
- int n = int(o);
+ int n = (int) o;
- if (n == sym_endl()) {
+ if (n == sym_endl.val()) {
s << endl;
return 1;
}
- else if (n == sym_flush()) {
+ else if (n == sym_flush.val()) {
s << flush;
return 1;
}
}
return 0;
}
-- Tom Hull - thull@kscable.com
ft_ios.ii.bz2