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]

Internal compiler error in g++


The attached source triggers an internal error in the compiler.  (I
know it is incorrect, but an internal error is an error.)

Compiler outout:

------------------------------------------------------------------------------
> g++ -v -c bug04.cc
Reading specs from /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/specs
gcc version 2.95.2 19991024 (release)
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/cpp.exe -lang-c++ -v -iprefix /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/ -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Di386 -D_WIN32 -DWINNT -D_X86_=1 -D__STDC__=1 -D__stdcall=__attribute__((__stdcall__)) -D__cdecl=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x)) -D__i386__ -D_WIN32 -D__WINNT__ -D_X86_=1 -D__STDC__=1 -D__stdcall=__attribute__((__stdcall__)) -D__cdecl=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x)) -D__i386 -D__WINNT -Asystem(winnt) -Acpu(i386) -Amachine(i386) -D__EXCEPTIONS -remap -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -Di586 -Dpentium -D__i586 -D__i586__ -D__pentium -D__pentium__ -D__CYGWIN32__ -D__CYGWIN__ bug04.cc c:\tmp/cchzvOSZ.ii
GNU CPP version 2.95.2 19991024 (release) (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../../include/g++-3
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../../include
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/../../../../i586-cygwin32/include
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/include
End of omitted list.
 /Program/Cygnus/cygwin-b20/H-i586-cygwin32/bin/../lib/gcc-lib/i586-cygwin32/2.95.2/cc1plus.exe c:\tmp/cchzvOSZ.ii -quiet -dumpbase bug04.cc -version -o c:\tmp/ccj0sFs4.s
GNU C++ version 2.95.2 19991024 (release) (i586-cygwin32) compiled by GNU C version 2.95.2 19991024 (release).
bug04.cc: In method `bool X::isEmpty() const':
bug04.cc:17: Internal compiler error.
bug04.cc:17: Please submit a full bug report.
bug04.cc:17: See <URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for instructions.
------------------------------------------------------------------------------

Source.

------------------------------------------------------------------------------

#include <iostream.h>
#include <algorithm>
#include <functional>

struct X
{
    bool isEmpty() const ;
    enum { byteCount = 10 } ;
    typedef unsigned Byte ;
    Byte data[ byteCount ] ;
} ;

bool
X::isEmpty() const
{
    return std::find_if( data , data+byteCount , std::not_equal_to( 0 ) ) 
        == data+byteCount;
}
------------------------------------------------------------------------------

--
James Kanze                               mailto:kanze@gabi-soft.de
Conseils en informatique orientée objet/
                   Beratung in objektorientierter Datenverarbeitung
Ziegelhüttenweg 17a, 60598 Frankfurt, Germany Tel. +49(069)63198627

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