This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
bootstrap/7979: OpenUNIX8/Unixware stage 3 failing in eh_alloc.cc
- From: wantbottom at t-online dot de
- To: gcc-gnats at gcc dot gnu dot org
- Date: 19 Sep 2002 20:43:02 -0000
- Subject: bootstrap/7979: OpenUNIX8/Unixware stage 3 failing in eh_alloc.cc
- Reply-to: wantbottom at t-online dot de
>Number: 7979
>Category: bootstrap
>Synopsis: OpenUNIX8/Unixware stage 3 failing in eh_alloc.cc
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Sep 19 13:46:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: wantbottom@t-online.de
>Release: gcc-3.2 release
>Organization:
>Environment:
- OpenUNIX ou801 5 8.0.1 i386 x86at Caldera UNIX_SVR5
- bootstrapped with gcc-2.95.3p1
- binutils 2.13 (as and ld)
>Description:
After successfully compiling stage1 and stage2 the final compile is failing:
/home/doehrm/gcc-3.2/compile/gcc/xgcc -shared-libgcc -B/home/doehrm/gcc-3.2/compile/gcc/ -nostdinc++ -L/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/src -L/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/src/.libs -B/usr/local/i686-unknown-sysv5OpenUNIX8.0.1/bin/ -B/usr/local/i686-unknown-sysv5OpenUNIX8.0.1/lib/ -isystem /usr/local/i686-unknown-sysv5OpenUNIX8.0.1/include -I../../../../libstdc++-v3/../gcc -I../../../../libstdc++-v3/../include -I/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1 -I/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include -I../../../../libstdc++-v3/libsupc++ -g -O2 -fno-implicit-templates -Wall -Wno-format -W -Wwrite-strings -Winline -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -c ../../../../libstdc++-v3/libsupc++/eh_alloc.cc -o eh_alloc.o
In file included from ../../../../libstdc++-v3/libsupc++/eh_alloc.cc:33:
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib: In
function `long int std::abs(long int)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib:119: `
long int std::abs(long int)' conflicts with previous using declaration `long
int abs(long int)'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib: In
function `ldiv_t std::div(long int, long int)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib:122: `
ldiv_t std::div(long int, long int)' conflicts with previous using
declaration `ldiv_t div(long int, long int)'
In file included from ../../../../libstdc++-v3/libsupc++/eh_alloc.cc:34:
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring: In
function `void* std::memchr(void*, int, unsigned int)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:101: `
void* std::memchr(void*, int, unsigned int)' conflicts with previous using
declaration `void* memchr(void*, int, unsigned int)'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:101: invalid
conversion from `const void*' to `void*'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring: In
function `char* std::strchr(char*, int)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:107: `
char* std::strchr(char*, int)' conflicts with previous using declaration `
char* strchr(char*, int)'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring: In
function `char* std::strpbrk(char*, const char*)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:113: `
char* std::strpbrk(char*, const char*)' conflicts with previous using
declaration `char* strpbrk(char*, const char*)'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring: In
function `char* std::strrchr(char*, int)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:119: `
char* std::strrchr(char*, int)' conflicts with previous using declaration `
char* strrchr(char*, int)'
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring: In
function `char* std::strstr(char*, const char*)':
/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring:125: `
char* std::strstr(char*, const char*)' conflicts with previous using
declaration `char* strstr(char*, const char*)'
gmake[4]: *** [eh_alloc.lo] Error 1
I attached the preprocessed output of eh_alloc.cc.
>How-To-Repeat:
Try to bootstrap gcc-3.2 on OU8
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: text/plain; name="eh_alloc.i"
Content-Disposition: inline; filename="eh_alloc.i"
# 1 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
# 33 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 1
# 48 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 3
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/c++config.h" 1 3
# 34 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/c++config.h" 3
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/os_defines.h" 1 3
# 35 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/c++config.h" 2 3
# 50 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 2 3
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstddef" 1 3
# 47 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstddef" 3
# 1 "/home/doehrm/gcc-3.2/compile/gcc/include/stddef.h" 1 3 4
# 147 "/home/doehrm/gcc-3.2/compile/gcc/include/stddef.h" 3 4
typedef int ptrdiff_t;
# 201 "/home/doehrm/gcc-3.2/compile/gcc/include/stddef.h" 3 4
typedef unsigned int size_t;
# 49 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstddef" 2 3
namespace std
{
using ::ptrdiff_t;
using ::size_t;
}
# 51 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 2 3
# 1 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 1 3 4
# 22 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
#ident "@(#)unixsrc:usr/src/i386/head/stdlib.h /main/uw7_nj/3"
typedef struct
{
int quot;
int rem;
} div_t;
typedef struct
{
long quot;
long rem;
} ldiv_t;
# 47 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
typedef int ssize_t;
# 88 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
extern "C" {
extern unsigned char __ctype[];
extern double atof(const char *);
extern int atoi(const char *);
extern long atol(const char *);
extern double strtod(const char *, char **);
extern float strtof(const char *, char **);
extern long strtol(const char *, char **, int);
long double strtold(const char *, char **);
long long strtoll(const char *, char **, int);
unsigned long strtoul(const char *, char **, int);
unsigned long long strtoull(const char *, char **, int);
extern int rand(void);
extern void srand(unsigned int);
extern void *calloc(size_t, size_t);
extern void free(void *);
extern void *malloc(size_t);
extern void *realloc(void *, size_t);
extern void _Exit(int);
extern char *getenv(const char *);
extern int system(const char *);
# 131 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
extern int abs(int);
extern div_t div(int, int);
extern long labs(long);
extern ldiv_t ldiv(long, long);
extern int mbtowc(wchar_t *, const char *, size_t);
extern int mblen(const char *, size_t);
extern int wctomb(char *, wchar_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern int putenv(char *);
unsigned short *seed48(unsigned short *);
extern void setkey(const char *);
extern void srand48(long);
# 165 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char * , int);
extern char *l64a(long);
extern int mkstemp(char *);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(char *);
extern void srandom(unsigned);
extern int ttyslot(void);
extern int unlockpt(int);
extern void *valloc(size_t);
extern int rand_r(unsigned int *);
typedef struct
{
long long quot;
long long rem;
} lldiv_t;
struct mallinfo {
size_t arena;
size_t ordblks;
size_t smblks;
size_t hblks;
size_t hblkhd;
size_t usmblks;
size_t fsmblks;
size_t uordblks;
size_t fordblks;
size_t keepcost;
};
long long atoll(const char *);
extern int dup2(int, int);
extern char *ecvtl(long double, int, int *, int *);
extern char *fcvtl(long double, int, int *, int *);
extern char *gcvtl(long double, int, char *);
extern char *getcwd(char *, size_t);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern int getpw(int, char *);
extern int isatty(int);
extern void l3tol(long *, const char *, int);
extern char *l64a_r(long, char *, size_t);
long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern void ltol3(char *, const long *, int);
struct mallinfo mallinfo(void);
extern void *memalign(size_t, size_t);
extern void swab(const void *, void *, ssize_t);
extern char *ttyname(int);
extern double wcstod(const wchar_t *, wchar_t **);
extern float wcstof(const wchar_t *, wchar_t **);
extern long wcstol(const wchar_t *, wchar_t **, int);
long double wcstold(const wchar_t *, wchar_t **);
long long wcstoll(const wchar_t *, wchar_t **, int);
unsigned long wcstoul(const wchar_t *, wchar_t **, int);
unsigned long long wcstoull(const wchar_t *, wchar_t **, int);
extern int _xgetlogin_r(char *, size_t);
extern int _xttyname_r(int, char *, size_t);
# 268 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
static int
getlogin_r(char *__1, size_t __2)
{
return _xgetlogin_r(__1, __2);
}
static int
ttyname_r(int __1, char *__2, size_t __3)
{
return _xttyname_r(__1, __2, __3);
}
# 290 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 3 4
}
extern "C++" {
inline long abs(long __1){ return labs(__1); }
inline ldiv_t div(long __1, long __2){ return ldiv(__1, __2); }
inline long long abs(long long __1){ return llabs(__1); }
inline lldiv_t div(long long __1, long long __2){ return lldiv(__1, __2); }
}
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 1 3 4
# 305 "/home/doehrm/gcc-3.2/compile/gcc/include/stdlib.h" 2 3 4
extern void abort (void);
extern int atexit (void (*) (void));
extern void * bsearch (const void *, const void *, unsigned int, unsigned int, int (*) (const void *, const void *));
extern void exit (int);
extern void qsort (void *, unsigned int, unsigned int, int (*) (const void *, const void *));
# 53 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 2 3
# 84 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstdlib" 3
namespace std
{
using ::div_t;
using ::ldiv_t;
using ::abort;
using ::abs;
using ::atexit;
using ::atof;
using ::atoi;
using ::atol;
using ::bsearch;
using ::calloc;
using ::div;
using ::exit;
using ::free;
using ::getenv;
using ::labs;
using ::ldiv;
using ::malloc;
using ::mblen;
using ::mbstowcs;
using ::mbtowc;
using ::qsort;
using ::rand;
using ::realloc;
using ::srand;
using ::strtod;
using ::strtol;
using ::strtoul;
using ::system;
using ::wcstombs;
using ::wctomb;
inline long
abs(long __i) { return labs(__i); }
inline ldiv_t
div(long __i, long __j) { return ldiv(__i, __j); }
}
# 34 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring" 1
# 48 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring" 3
# 1 "/home/doehrm/gcc-3.2/compile/gcc/include/string.h" 1 3 4
# 22 "/home/doehrm/gcc-3.2/compile/gcc/include/string.h" 3 4
#ident "@(#)unixsrc:usr/src/i386/head/string.h /main/uw7_nj/2"
# 34 "/home/doehrm/gcc-3.2/compile/gcc/include/string.h" 3 4
extern "C" {
extern void *memcpy(void *, const void *, size_t);
extern void *memccpy(void *, const void *, int, size_t);
extern void *memmove(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
extern char *strcpy(char *, const char *);
extern char *strdup(const char *);
extern char *strncpy(char *, const char *, size_t);
extern char *strcat(char *, const char *);
extern char *strncat(char *, const char *, size_t);
extern char *strtok(char *, const char *);
extern char *strtok_r(char *, const char *, char **);
extern char *strerror(int);
extern char *strlist(char *, const char *, ...);
extern char *strsignal(int);
extern int memcmp(const void *, const void *, size_t);
extern int strcmp(const char *, const char *);
extern int strcoll(const char *, const char *);
extern int strncmp(const char *, const char *, size_t);
extern size_t strxfrm(char *, const char *, size_t);
extern size_t strcspn(const char *, const char *);
extern size_t strspn(const char *, const char *);
extern size_t strlen(const char *);
extern char *strcadd(char *, const char *);
extern char *strccpy(char *, const char *);
extern char *streadd(char *, const char *, const char *);
extern char *strecpy(char *, const char *, const char *);
extern int strfind(const char *, const char *);
extern char *strtrns(const char *, const char *, const char *, char *);
extern size_t strlcat(char *, const char *, size_t);
extern size_t strlcpy(char *, const char *, size_t);
extern int ffs(int);
const void *memchr(const void *, int, size_t);
const char *strchr(const char *, int);
const char *strpbrk(const char *, const char *);
const char *strrchr(const char *, int);
const char *strrspn(const char *, const char *);
const char *strstr(const char *, const char *);
}
extern "C++" {
inline void *memchr(void *__1, int __2, size_t __3)
{ return (void *)memchr((const void *)__1, __2, __3); }
inline char *strchr(char *__1, int __2)
{ return (char *)strchr((const char *)__1, __2); }
inline char *strpbrk(char *__1, const char *__2)
{ return (char *)strpbrk((const char *)__1, __2); }
inline char *strrchr(char *__1, int __2)
{ return (char *)strrchr((const char *)__1, __2); }
inline char *strrspn(char *__1, const char *__2)
{ return (char *)strrspn((const char *)__1, __2); }
inline char *strstr(char *__1, const char *__2)
{ return (char *)strstr((const char *)__1, __2); }
}
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring" 1 3 4
# 106 "/home/doehrm/gcc-3.2/compile/gcc/include/string.h" 2 3 4
# 52 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring" 2 3
# 77 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/cstring" 3
namespace std
{
using ::memcpy;
using ::memmove;
using ::strcpy;
using ::strncpy;
using ::strcat;
using ::strncat;
using ::memcmp;
using ::strcmp;
using ::strcoll;
using ::strncmp;
using ::strxfrm;
using ::strcspn;
using ::strspn;
using ::strtok;
using ::memset;
using ::strerror;
using ::strlen;
using ::memchr;
inline void*
memchr(void* __p, int __c, size_t __n)
{ return memchr(const_cast<const void*>(__p), __c, __n); }
using ::strchr;
inline char*
strchr(char* __s1, int __n)
{ return __builtin_strchr(const_cast<const char*>(__s1), __n); }
using ::strpbrk;
inline char*
strpbrk(char* __s1, const char* __s2)
{ return __builtin_strpbrk(const_cast<const char*>(__s1), __s2); }
using ::strrchr;
inline char*
strrchr(char* __s1, int __n)
{ return __builtin_strrchr(const_cast<const char*>(__s1), __n); }
using ::strstr;
inline char*
strstr(char* __s1, const char* __s2)
{ return __builtin_strstr(const_cast<const char*>(__s1), __s2); }
}
# 35 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/climits" 1
# 48 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/climits" 3
# 1 "/home/doehrm/gcc-3.2/compile/gcc/include/limits.h" 1 3 4
# 11 "/home/doehrm/gcc-3.2/compile/gcc/include/limits.h" 3 4
# 1 "/home/doehrm/gcc-3.2/compile/gcc/include/syslimits.h" 1 3 4
# 22 "/home/doehrm/gcc-3.2/compile/gcc/include/syslimits.h" 3 4
#ident "@(#)unixsrc:usr/src/i386/head/limits.h /main/uw7_nj/5"
# 229 "/home/doehrm/gcc-3.2/compile/gcc/include/syslimits.h" 3 4
extern "C" {
extern long _sysconf(int);
}
# 12 "/home/doehrm/gcc-3.2/compile/gcc/include/limits.h" 2 3 4
# 50 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/climits" 2 3
# 36 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "../../../../libstdc++-v3/libsupc++/exception" 1
# 40 "../../../../libstdc++-v3/libsupc++/exception"
extern "C++" {
namespace std
{
class exception
{
public:
exception() throw() { }
virtual ~exception() throw();
virtual const char* what() const throw();
};
class bad_exception : public exception
{
public:
bad_exception() throw() { }
virtual ~bad_exception() throw();
};
typedef void (*terminate_handler) ();
typedef void (*unexpected_handler) ();
terminate_handler set_terminate(terminate_handler) throw();
void terminate() __attribute__ ((__noreturn__));
unexpected_handler set_unexpected(unexpected_handler) throw();
void unexpected() __attribute__ ((__noreturn__));
# 98 "../../../../libstdc++-v3/libsupc++/exception"
bool uncaught_exception() throw();
}
namespace __gnu_cxx
{
# 111 "../../../../libstdc++-v3/libsupc++/exception"
void __verbose_terminate_handler ();
}
}
# 37 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "../../../../libstdc++-v3/libsupc++/unwind-cxx.h" 1
# 38 "../../../../libstdc++-v3/libsupc++/unwind-cxx.h"
# 1 "../../../../libstdc++-v3/libsupc++/typeinfo" 1
# 40 "../../../../libstdc++-v3/libsupc++/typeinfo"
extern "C++" {
namespace __cxxabiv1
{
class __class_type_info;
}
# 55 "../../../../libstdc++-v3/libsupc++/typeinfo"
namespace std
{
class type_info
{
public:
virtual ~type_info();
private:
type_info& operator=(const type_info&);
type_info(const type_info&);
protected:
const char *__name;
protected:
explicit type_info(const char *__n): __name(__n) { }
public:
const char* name() const
{ return __name; }
# 98 "../../../../libstdc++-v3/libsupc++/typeinfo"
bool before(const type_info& __arg) const
{ return __name < __arg.__name; }
bool operator==(const type_info& __arg) const
{ return __name == __arg.__name; }
bool operator!=(const type_info& __arg) const
{ return !operator==(__arg); }
public:
virtual bool __is_pointer_p() const;
virtual bool __is_function_p() const;
virtual bool __do_catch(const type_info *__thr_type, void **__thr_obj,
unsigned __outer) const;
virtual bool __do_upcast(const __cxxabiv1::__class_type_info *__target,
void **__obj_ptr) const;
};
class bad_cast : public exception
{
public:
bad_cast() throw() { }
virtual ~bad_cast() throw();
};
class bad_typeid : public exception
{
public:
bad_typeid () throw() { }
virtual ~bad_typeid() throw();
};
}
}
# 39 "../../../../libstdc++-v3/libsupc++/unwind-cxx.h" 2
# 1 "../../../../gcc/unwind.h" 1
# 25 "../../../../gcc/unwind.h"
extern "C" {
typedef unsigned _Unwind_Word __attribute__((__mode__(__word__)));
typedef signed _Unwind_Sword __attribute__((__mode__(__word__)));
typedef unsigned _Unwind_Ptr __attribute__((__mode__(__pointer__)));
typedef unsigned _Unwind_Exception_Class __attribute__((__mode__(__DI__)));
typedef enum
{
_URC_NO_REASON = 0,
_URC_FOREIGN_EXCEPTION_CAUGHT = 1,
_URC_FATAL_PHASE2_ERROR = 2,
_URC_FATAL_PHASE1_ERROR = 3,
_URC_NORMAL_STOP = 4,
_URC_END_OF_STACK = 5,
_URC_HANDLER_FOUND = 6,
_URC_INSTALL_CONTEXT = 7,
_URC_CONTINUE_UNWIND = 8
} _Unwind_Reason_Code;
# 64 "../../../../gcc/unwind.h"
struct _Unwind_Exception;
typedef void (*_Unwind_Exception_Cleanup_Fn) (_Unwind_Reason_Code,
struct _Unwind_Exception *);
struct _Unwind_Exception
{
_Unwind_Exception_Class exception_class;
_Unwind_Exception_Cleanup_Fn exception_cleanup;
_Unwind_Word private_1;
_Unwind_Word private_2;
} __attribute__((__aligned__));
typedef int _Unwind_Action;
# 96 "../../../../gcc/unwind.h"
struct _Unwind_Context;
extern _Unwind_Reason_Code _Unwind_RaiseException (struct _Unwind_Exception *);
typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
(int, _Unwind_Action, _Unwind_Exception_Class,
struct _Unwind_Exception *, struct _Unwind_Context *, void *);
extern _Unwind_Reason_Code _Unwind_ForcedUnwind (struct _Unwind_Exception *,
_Unwind_Stop_Fn,
void *);
extern void _Unwind_DeleteException (struct _Unwind_Exception *);
extern void _Unwind_Resume (struct _Unwind_Exception *);
extern _Unwind_Word _Unwind_GetGR (struct _Unwind_Context *, int);
extern void _Unwind_SetGR (struct _Unwind_Context *, int, _Unwind_Word);
extern _Unwind_Ptr _Unwind_GetIP (struct _Unwind_Context *);
extern void _Unwind_SetIP (struct _Unwind_Context *, _Unwind_Ptr);
extern void *_Unwind_GetLanguageSpecificData (struct _Unwind_Context *);
extern _Unwind_Ptr _Unwind_GetRegionStart (struct _Unwind_Context *);
# 148 "../../../../gcc/unwind.h"
typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)
(int, _Unwind_Action, _Unwind_Exception_Class,
struct _Unwind_Exception *, struct _Unwind_Context *);
struct SjLj_Function_Context;
extern void _Unwind_SjLj_Register (struct SjLj_Function_Context *);
extern void _Unwind_SjLj_Unregister (struct SjLj_Function_Context *);
extern _Unwind_Reason_Code _Unwind_SjLj_RaiseException
(struct _Unwind_Exception *);
extern _Unwind_Reason_Code _Unwind_SjLj_ForcedUnwind
(struct _Unwind_Exception *, _Unwind_Stop_Fn, void *);
extern void _Unwind_SjLj_Resume (struct _Unwind_Exception *);
# 186 "../../../../gcc/unwind.h"
extern _Unwind_Ptr _Unwind_GetDataRelBase (struct _Unwind_Context *);
extern _Unwind_Ptr _Unwind_GetTextRelBase (struct _Unwind_Context *);
}
# 42 "../../../../libstdc++-v3/libsupc++/unwind-cxx.h" 2
namespace __cxxabiv1
{
struct __cxa_exception
{
std::type_info *exceptionType;
void (*exceptionDestructor)(void *);
std::unexpected_handler unexpectedHandler;
std::terminate_handler terminateHandler;
__cxa_exception *nextException;
int handlerCount;
int handlerSwitchValue;
const unsigned char *actionRecord;
const unsigned char *languageSpecificData;
void *catchTemp;
void *adjustedPtr;
_Unwind_Exception unwindHeader;
};
struct __cxa_eh_globals
{
__cxa_exception *caughtExceptions;
unsigned int uncaughtExceptions;
};
extern "C" __cxa_eh_globals *__cxa_get_globals () throw();
extern "C" __cxa_eh_globals *__cxa_get_globals_fast () throw();
extern "C" void *__cxa_allocate_exception(std::size_t thrown_size) throw();
extern "C" void __cxa_free_exception(void *thrown_exception) throw();
extern "C" void __cxa_throw (void *thrown_exception,
std::type_info *tinfo,
void (*dest) (void *))
__attribute__((noreturn));
extern "C" void *__cxa_begin_catch (void *) throw();
extern "C" void __cxa_end_catch ();
extern "C" void __cxa_rethrow () __attribute__((noreturn));
extern "C" void __cxa_bad_cast ();
extern "C" void __cxa_bad_typeid ();
extern "C" void __cxa_call_unexpected (void *) __attribute__((noreturn));
extern void __terminate(std::terminate_handler) __attribute__((noreturn));
extern void __unexpected(std::unexpected_handler) __attribute__((noreturn));
extern std::terminate_handler __terminate_handler;
extern std::unexpected_handler __unexpected_handler;
const _Unwind_Exception_Class __gxx_exception_class
= ((((((((_Unwind_Exception_Class) 'G'
<< 8 | (_Unwind_Exception_Class) 'N')
<< 8 | (_Unwind_Exception_Class) 'U')
<< 8 | (_Unwind_Exception_Class) 'C')
<< 8 | (_Unwind_Exception_Class) 'C')
<< 8 | (_Unwind_Exception_Class) '+')
<< 8 | (_Unwind_Exception_Class) '+')
<< 8 | (_Unwind_Exception_Class) '\0');
extern "C" _Unwind_Reason_Code __gxx_personality_v0
(int, _Unwind_Action, _Unwind_Exception_Class,
struct _Unwind_Exception *, struct _Unwind_Context *);
extern "C" _Unwind_Reason_Code __gxx_personality_sj0
(int, _Unwind_Action, _Unwind_Exception_Class,
struct _Unwind_Exception *, struct _Unwind_Context *);
static inline __cxa_exception *
__get_exception_header_from_obj (void *ptr)
{
return reinterpret_cast<__cxa_exception *>(ptr) - 1;
}
static inline __cxa_exception *
__get_exception_header_from_ue (_Unwind_Exception *exc)
{
return reinterpret_cast<__cxa_exception *>(exc + 1) - 1;
}
}
# 38 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr.h" 1
# 102 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr.h"
# 1 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr-single.h" 1
# 34 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr-single.h"
typedef int __gthread_mutex_t;
# 211 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr-single.h"
static inline int
__gthread_active_p (void)
{
return 0;
}
static inline int
__gthread_mutex_lock (__gthread_mutex_t * )
{
return 0;
}
static inline int
__gthread_mutex_trylock (__gthread_mutex_t * )
{
return 0;
}
static inline int
__gthread_mutex_unlock (__gthread_mutex_t * )
{
return 0;
}
# 103 "/home/doehrm/gcc-3.2/compile/i686-unknown-sysv5OpenUNIX8.0.1/libstdc++-v3/include/i686-unknown-sysv5OpenUNIX8.0.1/bits/gthr.h" 2
# 40 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc" 2
using namespace __cxxabiv1;
# 68 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
typedef unsigned int bitmask_type;
typedef char one_buffer[512] __attribute__((aligned));
static one_buffer emergency_buffer[4];
static bitmask_type emergency_used;
# 96 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
extern "C" void *
__cxa_allocate_exception(std::size_t thrown_size)
{
void *ret;
thrown_size += sizeof (__cxa_exception);
ret = std::malloc (thrown_size);
if (! ret)
{
# 114 "../../../../libstdc++-v3/libsupc++/eh_alloc.cc"
bitmask_type used = emergency_used;
unsigned int which = 0;
if (thrown_size > 512)
goto failed;
while (used & 1)
{
used >>= 1;
if (++which >= 4)
goto failed;
}
emergency_used |= (bitmask_type)1 << which;
ret = &emergency_buffer[which][0];
failed:;
if (!ret)
std::terminate ();
}
std::memset (ret, 0, sizeof (__cxa_exception));
return (void *)((char *)ret + sizeof (__cxa_exception));
}
extern "C" void
__cxa_free_exception(void *vptr)
{
char *ptr = (char *) vptr;
if (ptr >= &emergency_buffer[0][0]
&& ptr < &emergency_buffer[0][0] + sizeof (emergency_buffer))
{
unsigned int which
= (unsigned)(ptr - &emergency_buffer[0][0]) / 512;
emergency_used &= ~((bitmask_type)1 << which);
}
else
std::free (ptr - sizeof (__cxa_exception));
}