This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: libstdc++/5195: 3.0.3 build failure of solaris x mips: eh_alloc.cc
- From: Don Lindsay <lindsayd at cisco dot com>
- To: nobody at gcc dot gnu dot org
- Cc: gcc-prs at gcc dot gnu dot org,
- Date: 2 Jan 2002 22:06:01 -0000
- Subject: Re: libstdc++/5195: 3.0.3 build failure of solaris x mips: eh_alloc.cc
- Reply-to: Don Lindsay <lindsayd at cisco dot com>
The following reply was made to PR libstdc++/5195; it has been noted by GNATS.
From: Don Lindsay <lindsayd@cisco.com>
To: <rodrigc@gcc.gnu.org>, <gcc-bugs@gcc.gnu.org>, <gcc-prs@gcc.gnu.org>,
<nobody@gcc.gnu.org>, <rodrigc@gcc.gnu.org>, <gcc-gnats@gcc.gnu.org>
Cc:
Subject: Re: libstdc++/5195: 3.0.3 build failure of solaris x mips: eh_alloc.cc
Date: Wed, 2 Jan 2002 14:05:42 -0800 (PST)
On 1 Jan 2002 rodrigc@gcc.gnu.org wrote:
> Can you submit the preprocessor output when compiling
> eh_alloc.cc? ie. change the -c flag to -E flag.
> It looks like your stdlib.h from newlib is not getting
> included properly for some reason.
I replicated the problem with "-save-temps".
The following is eh_alloc.ii:
---------------------------------------------------------------------
# 33 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc"
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/exception" 1
# 39 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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__));
# 95 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/exception"
bool uncaught_exception() throw();
}
}
# 34 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstdlib" 1
# 31 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstdlib"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 1
# 37 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/c++config.h" 1
# 34 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/c++config.h"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/os_defines.h" 1
# 35 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/c++config.h" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/limits.h" 1
# 37 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/c++config.h" 2
# 38 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstddef.h" 1
# 38 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstddef.h" 3
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 1 3 4
# 147 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 3 4
typedef int ptrdiff_t;
# 199 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 3 4
typedef unsigned int size_t;
# 39 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstddef.h" 2 3
namespace std
{
using ::ptrdiff_t;
using ::size_t;
}
# 39 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 2
# 41 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 3
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stdlib.h" 1 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 1 3 4
# 6 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stdlib.h" 2 3 4
extern void abort (void);
extern int abs (int);
extern int atexit (void (*) (void));
extern double atof (const char *);
extern int atoi (const char *);
extern long int atol (const char *);
extern void * bsearch (const void *, const void *, unsigned int, unsigned int, int (*) (const void *, const void *));
extern void * calloc (unsigned int, unsigned int);
extern void exit (int);
extern void free (void *);
extern char * getenv (const char *);
extern long int labs (long int);
extern void * malloc (unsigned int);
extern int putenv (char *);
extern void qsort (void *, unsigned int, unsigned int, int (*) (const void *, const void *));
extern int rand (void);
extern void * realloc (void *, unsigned int);
extern void srand (unsigned int);
extern double strtod (const char *, char **);
extern long int strtol (const char *, char **, int);
extern long unsigned int strtoul (const char *, char **, int);
extern int system (const char *);
# 42 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 2 3
# 73 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstdlib.h" 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); }
}
# 32 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstdlib" 2
# 35 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstring" 1
# 31 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstring"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h" 1
# 37 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstddef.h" 1
# 38 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h" 2
# 40 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h" 3
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 1 3 4
# 11 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 3 4
extern "C" {
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/_ansi.h" 1 3 4
# 15 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/_ansi.h" 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/config.h" 1 3 4
# 113 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/config.h" 3 4
typedef int __int32_t;
typedef unsigned int __uint32_t;
# 16 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/_ansi.h" 2 3 4
# 15 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 2 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 1 3 4
# 9 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
extern "C" {
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/_ansi.h" 1 3 4
# 14 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 2 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 1 3 4
# 10 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/_ansi.h" 1 3 4
# 11 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 2 3 4
extern "C" {
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/machine/time.h" 1 3 4
# 22 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 2 3 4
# 30 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 1 3 4
# 31 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 2 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 1 3 4
# 31 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 1 3 4
# 32 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 2 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/machine/types.h" 1 3 4
# 33 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 2 3 4
# 53 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 3 4
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long clock_t;
typedef long time_t;
struct timespec {
time_t tv_sec;
long tv_nsec;
};
struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
};
typedef long daddr_t;
typedef char * caddr_t;
typedef unsigned short ino_t;
# 126 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 3 4
typedef short dev_t;
typedef long off_t;
typedef unsigned short uid_t;
typedef unsigned short gid_t;
typedef int pid_t;
typedef long key_t;
typedef long ssize_t;
# 148 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 3 4
typedef unsigned int mode_t __attribute__ ((__mode__ (__SI__)));
typedef unsigned short nlink_t;
# 172 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/types.h" 3 4
typedef long fd_mask;
typedef struct _types_fd_set {
fd_mask fds_bits[(((64)+(((sizeof (fd_mask) * 8))-1))/((sizeof (fd_mask) * 8)))];
} _types_fd_set;
# 33 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 2 3 4
struct tm
{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
clock_t clock (void);
double difftime (time_t _time2, time_t _time1);
time_t mktime (struct tm *_timeptr);
time_t time (time_t *_timer);
char *asctime (const struct tm *_tblock);
char *ctime (const time_t *_time);
struct tm *gmtime (const time_t *_timer);
struct tm *localtime (const time_t *_timer);
size_t strftime (char *_s, size_t _maxsize, const char *_fmt, const struct tm *_t);
char *asctime_r (const struct tm *, char *);
char *ctime_r (const time_t *, char *);
struct tm *gmtime_r (const time_t *, struct tm *);
struct tm *localtime_r (const time_t *, struct tm *);
# 75 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/features.h" 1 3 4
# 25 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/features.h" 3 4
extern "C" {
# 87 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/features.h" 3 4
}
# 76 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 2 3 4
# 176 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/time.h" 3 4
}
# 15 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 2 3 4
# 28 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
typedef __uint32_t __ULong;
struct _glue
{
struct _glue *_next;
int _niobs;
struct __sFILE *_iobs;
};
struct _Bigint
{
struct _Bigint *_next;
int _k, _maxwds, _sign, _wds;
__ULong _x[1];
};
struct _atexit {
struct _atexit *_next;
int _ind;
void (*_fns[32])(void);
};
# 64 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
struct __sbuf {
unsigned char *_base;
int _size;
};
typedef long _fpos_t;
# 102 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
struct __sFILE {
unsigned char *_p;
int _r;
int _w;
short _flags;
short _file;
struct __sbuf _bf;
int _lbfsize;
void * _cookie;
int (*_read) (void * _cookie, char *_buf, int _n);
int (*_write) (void * _cookie, const char *_buf, int _n);
_fpos_t (*_seek) (void * _cookie, _fpos_t _offset, int _whence);
int (*_close) (void * _cookie);
struct __sbuf _ub;
unsigned char *_up;
int _ur;
unsigned char _ubuf[3];
unsigned char _nbuf[1];
struct __sbuf _lb;
int _blksize;
int _offset;
struct _reent *_data;
};
# 146 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
struct _reent
{
int _errno;
struct __sFILE *_stdin, *_stdout, *_stderr;
int _inc;
char _emergency[25];
int _current_category;
const char *_current_locale;
int __sdidinit;
void (*__cleanup) (struct _reent *);
struct _Bigint *_result;
int _result_k;
struct _Bigint *_p5s;
struct _Bigint **_freelist;
int _cvtlen;
char *_cvtbuf;
union
{
struct
{
unsigned int _unused_rand;
char * _strtok_last;
char _asctime_buf[26];
struct tm _localtime_buf;
int _gamma_signgam;
__extension__ unsigned long long _rand_next;
} _reent;
struct
{
unsigned char * _nextf[30];
unsigned int _nmalloc[30];
} _unused;
} _new;
struct _atexit *_atexit;
struct _atexit _atexit0;
void (**(_sig_func))(int);
struct _glue __sglue;
struct __sFILE __sf[3];
};
# 227 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
extern struct _reent *_impure_ptr ;
void _reclaim_reent (struct _reent *);
# 238 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/sys/reent.h" 3 4
}
# 16 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 2 3 4
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/stddef.h" 1 3 4
# 19 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 2 3 4
void * memchr (const void *, int, size_t);
int memcmp (const void *, const void *, size_t);
void * memcpy (void *, const void *, size_t);
void * memmove (void *, const void *, size_t);
void * memset (void *, int, size_t);
char *strcat (char *, const char *);
char *strchr (const char *, int);
int strcmp (const char *, const char *);
int strcoll (const char *, const char *);
char *strcpy (char *, const char *);
size_t strcspn (const char *, const char *);
char *strerror (int);
size_t strlen (const char *);
char *strncat (char *, const char *, size_t);
int strncmp (const char *, const char *, size_t);
char *strncpy (char *, const char *, size_t);
char *strpbrk (const char *, const char *);
char *strrchr (const char *, int);
size_t strspn (const char *, const char *);
char *strstr (const char *, const char *);
char *strtok (char *, const char *);
size_t strxfrm (char *, const char *, size_t);
char *strtok_r (char *, const char *, char **);
int bcmp (const char *, const char *, size_t);
void bcopy (const char *, char *, size_t);
void bzero (char *, size_t);
int ffs (int);
char *index (const char *, int);
void * memccpy (void *, const void *, int, size_t);
char *rindex (const char *, int);
int strcasecmp (const char *, const char *);
char *strdup (const char *);
char *_strdup_r (struct _reent *, const char *);
int strncasecmp (const char *, const char *, size_t);
char *strsep (char **, const char *);
char *strlwr (char *);
char *strupr (char *);
# 92 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/newlib/libc/include/string.h" 3 4
}
# 41 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h" 2 3
# 66 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/bits/std_cstring.h" 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); }
}
# 32 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstring" 2
# 36 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/gcc/include/limits.h" 1 3 4
# 37 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/unwind-cxx.h" 1
# 29 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/unwind-cxx.h"
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/typeinfo" 1
# 37 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/typeinfo"
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/exception" 1
# 38 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/typeinfo" 2
extern "C++" {
namespace __cxxabiv1
{
class __class_type_info;
}
# 54 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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; }
# 97 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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();
};
}
}
# 30 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/unwind-cxx.h" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/exception" 1
# 31 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/unwind-cxx.h" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/cstddef" 1
# 32 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/unwind-cxx.h" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/gcc/unwind.h" 1
# 25 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/gcc/unwind.h"
extern _Unwind_Ptr _Unwind_GetDataRelBase (struct _Unwind_Context *);
extern _Unwind_Ptr _Unwind_GetTextRelBase (struct _Unwind_Context *);
}
# 33 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 (_Unwind_Exception *) 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 (_Unwind_Exception *)
__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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/c++config.h" 1
# 39 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/gthr.h" 1
# 102 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/gthr.h"
# 1 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/gthr-single.h" 1
# 34 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/gthr-single.h"
typedef int __gthread_mutex_t;
# 211 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/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 "/auto/vwshqi/lindsayd/c303/build/cross_on_host_itech-view5_to_mips64-elf/build/mips64-elf/libstdc++-v3/include/mips64-elf/bits/gthr.h" 2
# 40 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/libstdc++-v3/libsupc++/eh_alloc.cc" 2
using namespace __cxxabiv1;
# 68 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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 "/auto/vwshqi/lindsayd/c303/build/gcc-3.0.3/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));
}