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]

segfault in init_elem_table in reload1.c


Hi,
I've come across a problem with eliminate_regs, when called dbxout_symbol. It seems
that Jeff Law's patch
Sat Nov 21 22:12:09 1998  Jeffrey A Law  (law@cygnus.com)

        * reload1.c (eliminate_regs): Do not lose if eliminate_regs is called
        without reload having been called earlier.

doesn't quite do the right thing. (Though I'm not sure what the right thing is,
otherwise I'd do it myself.) init_elim_table seems to be doing something context
specific about initing the elimination table.

Example program and compiler output attached.

init_elim_table contains a call to FRAME_POINTER_REQUIRED, which on this sparc box
ends up calling leaf_function_p (final.c). That uses get_insns (emit_rtl.c). However,
the static variables that get_insns uses are not valid at this point (they point
to outdated rtl). So we soon get a seg fault.

Here's the compile line for the 19981122 snapshot,
nathan@laie:39>uname -a
SunOS laie 5.5.1 Generic sun4u sparc SUNW,Ultra-1
nathan@laie:40>./cc1plus -g -O2 ../../bugs/segfault.ii

I've attached the output of this. The bug is only tickled when both 
O2 and -g are given. I'm sorry I can't produce a smaller test case. I tried
reducing it, but the bug envelope seems so fragile that it kept disappearing.
Here's the stack traceback of cc1plus at the point of the segfault.

Program received signal SIGBUS, Bus error.
0x14239c in leaf_function_p () at final.c:3983
3983      for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
(gdb) back
#0  0x14239c in leaf_function_p () at final.c:3983
#1  0x111f28 in init_elim_table () at reload1.c:3665
#2  0x110534 in eliminate_regs (x=0x8626f8, mem_mode=VOIDmode, insn=0x0) at reload1.c:2653
#3  0x86e20 in dbxout_symbol (decl=0x862620, local=0) at dbxout.c:1936
#4  0x6cfdc in assemble_variable (decl=0x862620, top_level=1, at_end=8791816, dont_output_data=0) at varasm.c:1474
#5  0x13930 in rest_of_decl_compilation (decl=0x862620, asmspec=0x0, top_level=1, at_end=0) at toplev.c:3200
#6  0x196f18 in cp_finish_decl (decl=0x862620, init=0x0, asmspec_tree=0x0, need_pop=1, flags=128) at decl.c:7602
#7  0x1d6878 in yyparse () at parse.y:1910
#8  0x12e8c in compile_file (name=0xeffff71d "../../bugs/segfault.ii") at toplev.c:2822
#9  0x16a64 in main (argc=4, argv=0xeffff5c4) at toplev.c:4952

(gdb) print insn
$1 = 0xeffff71d

(gdb) print first_insn
$1 = 0x85fe00

(gdb) print *first_insn
$2 = {code = UNKNOWN, mode = VOIDmode, jump = 0, call = 0, unchanging = 0, volatil = 0, in_struct = 0, used = 0, integrated = 0, frame_related = 0, 
  fld = {{rtwint = 3195736, rtint = 3195736, rtstr = 0x30c358 "", rtx = 0x30c358, rtvec = 0x30c358, rttype = 3195736, rt_addr_diff_vec_flags = {
        min_align = 0, base_after_vec = 0, min_after_vec = 0, max_after_vec = 1, min_after_base = 1, max_after_base = 0, offset_unsigned = 0,  = 0, 
        scale = 195}, rtbit = 0x30c358, rttree = 0x30c358}}}

(gdb) print first_insn->fld[2].rtx
$3 = (struct rtx_def *) 0xeffff71d

that last address effff718 points to the source file name! And you'll notice
that first_insn (0x85fe00) is not the first instruction of the rtl passed to
eliminate_regs (0x8626f8).

nathan
-- 
Dr Nathan Sidwell :: Computer Science Department :: Bristol University
      You can up the bandwidth, but you can't up the speed of light      
nathan@acm.org  http://www.cs.bris.ac.uk/~nathan/  nathan@cs.bris.ac.uk
 exception::exception() exception::~exception() bad_exception::bad_exception() bad_exception::~bad_exception() type_info::type_info(const char *) const char * type_info::name() const bool type_info::operator !=(const class type_info &) const bad_cast::bad_cast() bad_cast::~bad_cast() bad_typeid::bad_typeid() bad_typeid::~bad_typeid() NathanMackenzieSidwell::Printer::Arg::Arg(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *), const void *) NathanMackenzieSidwell::Printer::Arg::Arg(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *)) NathanMackenzieSidwell::Printer::Arg::Arg() NathanMackenzieSidwell::Printer::Dual::Dual(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *, const void *)) NathanMackenzieSidwell::Printer::Dual::Dual(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *, const void *), const void *, const void *) NathanMackenzieSidwell::Printer::Dual::Dual(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, struct NathanMackenzieSidwell::Printer::Dual *), void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *), const void *) NathanMackenzieSidwell::Printer::Printer(class NathanMackenzieSidwell::PrinterSink *, struct NathanMackenzieSidwell::Printer::Delimits * = 0) NathanMackenzieSidwell::Printer::~Printer() bool NathanMackenzieSidwell::Printer::Skip() const class NathanMackenzieSidwell::PrinterSink * NathanMackenzieSidwell::Printer::Sink() const void NathanMackenzieSidwell::Printer::Sink(class NathanMackenzieSidwell::PrinterSink *) int NathanMackenzieSidwell::Printer::ShowType() const void NathanMackenzieSidwell::Printer::ShowType(int) bool NathanMackenzieSidwell::Printer::ShowPointer() const void NathanMackenzieSidwell::Printer::ShowPointer(bool) size_t NathanMackenzieSidwell::Printer::Level() const size_t NathanMackenzieSidwell::Printer::Length() const void NathanMackenzieSidwell::Printer::Disable() void NathanMackenzieSidwell::Printer::Put(const char *) void NathanMackenzieSidwell::Printer::FormatPush() void NathanMackenzieSidwell::Printer::FormatPop() int NathanMackenzieSidwell::Printer::EscapePush() void NathanMackenzieSidwell::Printer::EscapePop() void NathanMackenzieSidwell::Printer::EscapeSet(bool) void (* PV_FUNC(const class NathanMackenzieSidwell::Printer *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Printer *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Printer &) enum NathanMackenzieSidwell::Printer::Flags operator |(enum NathanMackenzieSidwell::Printer::Flags, enum NathanMackenzieSidwell::Printer::Flags) enum NathanMackenzieSidwell::Printer::Flags operator &(enum NathanMackenzieSidwell::Printer::Flags, enum NathanMackenzieSidwell::Printer::Flags) enum NathanMackenzieSidwell::Printer::Flags operator ~(enum NathanMackenzieSidwell::Printer::Flags) enum NathanMackenzieSidwell::Printer::Flags operator |(enum NathanMackenzieSidwell::Printer::Flags, char) bool operator ==(enum NathanMackenzieSidwell::Printer::Flags, char) bool operator !=(enum NathanMackenzieSidwell::Printer::Flags, char) bool operator ==(enum NathanMackenzieSidwell::Printer::Flags, int) bool operator !=(enum NathanMackenzieSidwell::Printer::Flags, int) NathanMackenzieSidwell::PrinterSink::PrinterSink() NathanMackenzieSidwell::PrinterSink::~PrinterSink() size_t NathanMackenzieSidwell::PrinterSink::Count() const size_t NathanMackenzieSidwell::PrinterSink::Line() const bool NathanMackenzieSidwell::PrinterSink::SoL() const size_t NathanMackenzieSidwell::PrinterSink::Column() const void NathanMackenzieSidwell::PrinterSink::Put(const char *, unsigned int) void NathanMackenzieSidwell::PrinterSink::Flush() void NathanMackenzieSidwell::PrinterSink::Reset() void NathanMackenzieSidwell::PrinterSink::EoL() size_t NathanMackenzieSidwell::PrinterSink::Width() const size_t NathanMackenzieSidwell::PrinterSink::FontSize() const size_t NathanMackenzieSidwell::PrinterSink::FontEm() const size_t NathanMackenzieSidwell::PrinterSink::TextSize(const char *, unsigned int) const void NathanMackenzieSidwell::PrinterSink::Ctrl(const char *, unsigned int) void NathanMackenzieSidwell::PrinterSink::SoL(bool) void NathanMackenzieSidwell::PrinterSink::Count(unsigned int) void NathanMackenzieSidwell::PrinterSink::Column(int) void (* PV_FUNC(const class NathanMackenzieSidwell::PrinterSink *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PrinterSink *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PrinterSink &) void NathanMackenzieSidwell::Printer::Out(const char *, unsigned int) void NathanMackenzieSidwell::Printer::EoL() void NathanMackenzieSidwell::Printer::Ctrl(const char *, unsigned int) struct NathanMackenzieSidwell::Printer::Arg PV(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *), const void *) struct NathanMackenzieSidwell::Printer::Dual PV(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *, const void *), const void *, const void *) struct NathanMackenzieSidwell::Printer::Dual PVRoot(struct NathanMackenzieSidwell::Printer::Arg) struct NathanMackenzieSidwell::Printer::Dual PVPointer(struct NathanMackenzieSidwell::Printer::Arg) struct NathanMackenzieSidwell::Printer::Dual PVCircle(struct NathanMackenzieSidwell::Printer::Arg) struct NathanMackenzieSidwell::Printer::Arg PV(bool) struct NathanMackenzieSidwell::Printer::Arg PV(const bool *) void (* PV_FUNC(const bool *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(char) struct NathanMackenzieSidwell::Printer::Arg PV(signed char) struct NathanMackenzieSidwell::Printer::Arg PV(unsigned char) struct NathanMackenzieSidwell::Printer::Arg PV(const signed char *) struct NathanMackenzieSidwell::Printer::Arg PV(const unsigned char *) void (* PV_FUNC(const signed char *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const unsigned char *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(short int) struct NathanMackenzieSidwell::Printer::Arg PV(short unsigned int) struct NathanMackenzieSidwell::Printer::Arg PV(const short int *) struct NathanMackenzieSidwell::Printer::Arg PV(const short unsigned int *) void (* PV_FUNC(const short int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const short unsigned int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(int) struct NathanMackenzieSidwell::Printer::Arg PV(unsigned int) struct NathanMackenzieSidwell::Printer::Arg PV(const int *) struct NathanMackenzieSidwell::Printer::Arg PV(const unsigned int *) void (* PV_FUNC(const int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const unsigned int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const long int &) struct NathanMackenzieSidwell::Printer::Arg PV(const long unsigned int &) struct NathanMackenzieSidwell::Printer::Arg PV(const long int *) struct NathanMackenzieSidwell::Printer::Arg PV(const long unsigned int *) void (* PV_FUNC(const long int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const long unsigned int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const long long int &) struct NathanMackenzieSidwell::Printer::Arg PV(const long long unsigned int &) struct NathanMackenzieSidwell::Printer::Arg PV(const long long int *) struct NathanMackenzieSidwell::Printer::Arg PV(const long long unsigned int *) void (* PV_FUNC(const long long int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const long long unsigned int *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const float &) struct NathanMackenzieSidwell::Printer::Arg PV(const float *) void (* PV_FUNC(const float *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const double &) struct NathanMackenzieSidwell::Printer::Arg PV(const double *) void (* PV_FUNC(const double *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const long double &) struct NathanMackenzieSidwell::Printer::Arg PV(const long double *) void (* PV_FUNC(const long double *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const void *const *) void (* PV_FUNC(const void *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const void *const *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const char *) struct NathanMackenzieSidwell::Printer::Arg PV(const char *const *) void (* PV_FUNC(const char *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const char *const *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(void (*)(...)) struct NathanMackenzieSidwell::Printer::Arg PV(void (*)()) struct NathanMackenzieSidwell::Printer::Arg PV(void (*const *)(...)) struct NathanMackenzieSidwell::Printer::Arg PV(void (*const *)()) void (* PV_FUNC(void (*)(...)))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(void (*)()))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(void (*const *)(...)))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(void (*const *)()))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Dual PV(const char *, void *&) struct NathanMackenzieSidwell::Printer::Dual PV(const char *, void **) void (* PV_FUNC(const struct FILE *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const struct FILE *) struct NathanMackenzieSidwell::Printer::Arg PV(const struct FILE &) void (* PV_FUNC(const class exception *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class exception *) struct NathanMackenzieSidwell::Printer::Arg PV(const class exception &) void (* PV_FUNC(const class type_info *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class type_info *) struct NathanMackenzieSidwell::Printer::Arg PV(const class type_info &) const char * bad_alloc::what() const void * operator new(unsigned int, void *) void * operator new [](unsigned int, void *) void (* PV_FUNC(const class NathanMackenzieSidwell::Heap *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Heap *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Heap &) void * Alloc(unsigned int, bool = false) void Free(void *) unsigned int NathanMackenzieSidwell::HashTable::Lookups() const unsigned int NathanMackenzieSidwell::HashTable::Comparisons() const void NathanMackenzieSidwell::HashTable::Iterate() const void NathanMackenzieSidwell::HashTable::IterateAbort() const const void * NathanMackenzieSidwell::HashTable::Value2Key(const void *) const const void * NathanMackenzieSidwell::HashTable::Key2Value(const void *) const bool NathanMackenzieSidwell::HashTable::IsEmpty() const void (* PV_FUNC(const class NathanMackenzieSidwell::HashTable *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::HashTable *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::HashTable &) void (* PV_FUNC(const class NathanMackenzieSidwell::HashTable *, const void *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *, const void *) struct NathanMackenzieSidwell::Printer::Dual PV(const class NathanMackenzieSidwell::HashTable *, const void *) struct NathanMackenzieSidwell::Printer::Dual PV(const class NathanMackenzieSidwell::HashTable &, const void *) NathanMackenzieSidwell::Word::Word(const char *, unsigned int) NathanMackenzieSidwell::Word::~Word() HashValue NathanMackenzieSidwell::Word::Hash() const const char * NathanMackenzieSidwell::Word::String() const size_t NathanMackenzieSidwell::Word::Length() const size_t NathanMackenzieSidwell::Word::Refs() const bool NathanMackenzieSidwell::Word::operator ==(const class NathanMackenzieSidwell::Word &) const void NathanMackenzieSidwell::Word::Inc() const bool NathanMackenzieSidwell::Word::Dec() const void NathanMackenzieSidwell::Word::Wipe() const void NathanMackenzieSidwell::Word::Dup(char *) void (* PV_FUNC(const class NathanMackenzieSidwell::Word *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Word *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Word &) NathanMackenzieSidwell::Dictionary::Dictionary() const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Lookup(const class NathanMackenzieSidwell::Word &) const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Lookup(const char *, unsigned int) const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Insert(const class NathanMackenzieSidwell::Word &) void NathanMackenzieSidwell::Dictionary::Remove(const class NathanMackenzieSidwell::Word *) static const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Dup(const class NathanMackenzieSidwell::Word *) const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Add(const char *) const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Add(const char *, unsigned int) const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::Dictionary::Next() const NathanMackenzieSidwell::WordHashTable::WordHashTable(unsigned int, void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) = PV_FUNC(const void *)(0)) void * NathanMackenzieSidwell::WordHashTable::Lookup(const class NathanMackenzieSidwell::Word *) const void * NathanMackenzieSidwell::WordHashTable::Insert(const class NathanMackenzieSidwell::Word *, void * = 0) void NathanMackenzieSidwell::WordHashTable::Remove(const class NathanMackenzieSidwell::Word **) void NathanMackenzieSidwell::WordHashTable::Remove(const class NathanMackenzieSidwell::Word *) NathanMackenzieSidwell::PolyWordHashTable::PolyWordHashTable(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) = PV_FUNC(const void *)(0)) NathanMackenzieSidwell::WordHashTable::~WordHashTable() void * NathanMackenzieSidwell::PolyWordHashTable::Lookup(const class NathanMackenzieSidwell::Word *) const void NathanMackenzieSidwell::PolyWordHashTable::Insert(const class NathanMackenzieSidwell::Word *, void *) NathanMackenzieSidwell::BoundPrinter::BoundPrinter(class NathanMackenzieSidwell::PrinterSink *, unsigned int = 0, unsigned int = 0, struct NathanMackenzieSidwell::Printer::Delimits * = 0) void NathanMackenzieSidwell::BoundPrinter::LevelLimit(unsigned int) void NathanMackenzieSidwell::BoundPrinter::LengthLimit(unsigned int) size_t NathanMackenzieSidwell::BoundPrinter::LevelLimit() size_t NathanMackenzieSidwell::BoundPrinter::LengthLimit() void NathanMackenzieSidwell::PrettyPrinter::WidthLimit(unsigned int) void NathanMackenzieSidwell::PrettyPrinter::WidthUnbound() void NathanMackenzieSidwell::PrettyPrinter::MiserLimit(unsigned int) void NathanMackenzieSidwell::PrettyPrinter::WordWrap(bool) size_t NathanMackenzieSidwell::PrettyPrinter::WidthLimit() size_t NathanMackenzieSidwell::PrettyPrinter::MiserLimit() bool NathanMackenzieSidwell::PrettyPrinter::WordWrap() NathanMackenzieSidwell::CirclePrinter::CircleHash::CircleHash() void NathanMackenzieSidwell::CirclePrinter::CircleHash::Empty() int NathanMackenzieSidwell::CirclePrinter::CircleDetect() const void NathanMackenzieSidwell::CirclePrinter::CircleDetect(int) int NathanMackenzieSidwell::CirclePrinter::PointerDetect() const void NathanMackenzieSidwell::CirclePrinter::PointerDetect(int) bool NathanMackenzieSidwell::CirclePrinter::ShareDetect() const void NathanMackenzieSidwell::CirclePrinter::ShareDetect(bool) bool NathanMackenzieSidwell::CirclePrinter::Collecting() const NathanMackenzieSidwell::VrmlPrinter::VrmlPrinter(class NathanMackenzieSidwell::PrinterSink *, unsigned int = 0, unsigned int = 0, unsigned int = 0, unsigned int = 0) bool NathanMackenzieSidwell::VrmlPrinter::ShowDefault() const void NathanMackenzieSidwell::VrmlPrinter::ShowDefault(bool) void (* PV_FUNC(const class NathanMackenzieSidwell::VrmlType *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::VrmlType *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::VrmlType &) const class NathanMackenzieSidwell::VrmlType * NathanMackenzieSidwell::VrmlTypeTable::Lookup(const class NathanMackenzieSidwell::Word *) const NathanMackenzieSidwell::Array<T>::Array() NathanMackenzieSidwell::Array<T>::~Array() NathanMackenzieSidwell::Array<T>::Array(const class NathanMackenzieSidwell::Array<T> &) class NathanMackenzieSidwell::Array<T> & NathanMackenzieSidwell::Array<T>::operator =(const class NathanMackenzieSidwell::Array<T> &) void NathanMackenzieSidwell::Array<T>::Clone(const class NathanMackenzieSidwell::Array<T> *) size_t NathanMackenzieSidwell::Array<T>::Length() const T & NathanMackenzieSidwell::Array<T>::Index(unsigned int) const T & NathanMackenzieSidwell::Array<T>::Last() const T & NathanMackenzieSidwell::Array<T>::operator [](unsigned int) const T * NathanMackenzieSidwell::Array<T>::Insert(unsigned int) T * NathanMackenzieSidwell::Array<T>::Insert(unsigned int, const T &) T * NathanMackenzieSidwell::Array<T>::Append() T * NathanMackenzieSidwell::Array<T>::Append(const T &) void NathanMackenzieSidwell::Array<T>::Remove() void (* PV_FUNC(const class NathanMackenzieSidwell::Array<T> *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Array<T> *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Array<T> &) void NathanMackenzieSidwell::Array<T>::Clone() void * NathanMackenzieSidwell::Array<T>::Hole(unsigned int) void NathanMackenzieSidwell::Array<T>::Remove(unsigned int) void NathanMackenzieSidwell::Array<T>::Wipe() void NathanMackenzieSidwell::Array<T>::ShrinkWrap() const static void NathanMackenzieSidwell::Array<T>::PrintValue(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) void (* PV_FUNC(const class NathanMackenzieSidwell::MF<T> *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::MF<T> *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::MF<T> &) void (* PVVRML_FUNC(const class NathanMackenzieSidwell::MF<T> *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PVVRML(const class NathanMackenzieSidwell::MF<T> *) struct NathanMackenzieSidwell::Printer::Arg PVVRML(const class NathanMackenzieSidwell::MF<T> &) size_t NathanMackenzieSidwell::Stack::Length() const void NathanMackenzieSidwell::Stack::Empty() bool NathanMackenzieSidwell::Stack::IsEmpty() const void * NathanMackenzieSidwell::Stack::ToS() const void * NathanMackenzieSidwell::Stack::Peek(unsigned int) const void (* PV_FUNC(const class NathanMackenzieSidwell::Stack *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Stack *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Stack &) void (* PV_FUNC(const class NathanMackenzieSidwell::Stack *, const void *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *, const void *) struct NathanMackenzieSidwell::Printer::Dual PV(const class NathanMackenzieSidwell::Stack *, const void *) struct NathanMackenzieSidwell::Printer::Dual PV(const class NathanMackenzieSidwell::Stack &, const void *) NathanMackenzieSidwell::PrinterSinkChain::PrinterSinkChain(class NathanMackenzieSidwell::PrinterSink *) class NathanMackenzieSidwell::PrinterSink * NathanMackenzieSidwell::PrinterSinkChain::Next() const void NathanMackenzieSidwell::PrinterSinkChain::Next(class NathanMackenzieSidwell::PrinterSink *) void NathanMackenzieSidwell::PrinterSinkChain::Put(const char *, unsigned int) void NathanMackenzieSidwell::PrinterSinkChain::Flush() void NathanMackenzieSidwell::PrinterSinkChain::Reset() void NathanMackenzieSidwell::PrinterSinkChain::EoL() size_t NathanMackenzieSidwell::PrinterSinkChain::Width() const size_t NathanMackenzieSidwell::PrinterSinkChain::ToColumn(unsigned int, bool = true, char = 0) size_t NathanMackenzieSidwell::PrinterSinkChain::FontSize() const size_t NathanMackenzieSidwell::PrinterSinkChain::FontEm() const size_t NathanMackenzieSidwell::PrinterSinkChain::TextSize(const char *, unsigned int) const void NathanMackenzieSidwell::PrinterSinkChain::Ctrl(const char *, unsigned int) NathanMackenzieSidwell::PrinterSink2Null::PrinterSink2Null() NathanMackenzieSidwell::PrinterSink2File::PrinterSink2File(struct FILE *) struct FILE * NathanMackenzieSidwell::PrinterSink2File::Stream() const void NathanMackenzieSidwell::PrinterSink2File::Stream(struct FILE *) NathanMackenzieSidwell::PrinterSink2String::PrinterSink2String(char *, unsigned int) NathanMackenzieSidwell::DiagnosticSink::DiagnosticSink(class NathanMackenzieSidwell::PrinterSink *) NathanMackenzieSidwell::PrinterSinkChain::~PrinterSinkChain() NathanMackenzieSidwell::DiagnosticHandler::~DiagnosticHandler() NathanMackenzieSidwell::SourceName::SourceName() NathanMackenzieSidwell::SourceName::~SourceName() void NathanMackenzieSidwell::SourceName::Delete() const void NathanMackenzieSidwell::SourceName::Attach() const void NathanMackenzieSidwell::SourceName::Detach() const void (* PV_FUNC(const class NathanMackenzieSidwell::SourceName *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::SourceName *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::SourceName &) NathanMackenzieSidwell::StringSourceName::StringSourceName(const char *) NathanMackenzieSidwell::StringSourceName::~StringSourceName() static class NathanMackenzieSidwell::SourceName * NathanMackenzieSidwell::StringSourceName::New(const char *) NathanMackenzieSidwell::SourceLocation::SourceLocation() NathanMackenzieSidwell::SourceLocation::SourceLocation(const class NathanMackenzieSidwell::SourceName *) NathanMackenzieSidwell::SourceLocation::~SourceLocation() NathanMackenzieSidwell::SourceLocation::SourceLocation(const class NathanMackenzieSidwell::SourceLocation &) class NathanMackenzieSidwell::SourceLocation & NathanMackenzieSidwell::SourceLocation::operator =(const class NathanMackenzieSidwell::SourceLocation &) void NathanMackenzieSidwell::SourceLocation::NextLine() void (* PV_FUNC(const class NathanMackenzieSidwell::SourceLocation *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::SourceLocation *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::SourceLocation &) const char * NathanMackenzieSidwell::Source::Line() const size_t NathanMackenzieSidwell::Source::Length() const const class NathanMackenzieSidwell::SourceLocation & NathanMackenzieSidwell::Source::Location() const size_t NathanMackenzieSidwell::Source::Column() const bool NathanMackenzieSidwell::Source::EoL() const bool NathanMackenzieSidwell::Source::EoF() const char NathanMackenzieSidwell::Source::Char() const void NathanMackenzieSidwell::Source::AdvanceColumn(unsigned int = 1) void NathanMackenzieSidwell::Source::SetColumn(unsigned int) bool NathanMackenzieSidwell::Source::SkipWS() void NathanMackenzieSidwell::Source::MarkColumn() void NathanMackenzieSidwell::Source::UnmarkColumn() void NathanMackenzieSidwell::Source::IgnoreColumn() void NathanMackenzieSidwell::Source::Message() const void (* PV_FUNC(const class NathanMackenzieSidwell::Source *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Source *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::Source &) NathanMackenzieSidwell::PauseLexer::PauseLexer(class NathanMackenzieSidwell::Source *, void ** = 0) bool NathanMackenzieSidwell::PauseLexer::HaveToken() const void NathanMackenzieSidwell::PauseLexer::ForgetToken() unsigned int NathanMackenzieSidwell::PauseLexer::TokenType() const const class NathanMackenzieSidwell::SourceLocation & NathanMackenzieSidwell::PauseLexer::Location() const void (* PV_FUNC(const class NathanMackenzieSidwell::PauseLexer *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseLexer *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseLexer &) NathanMackenzieSidwell::PauseReduction::PauseReduction() NathanMackenzieSidwell::PauseReduction::~PauseReduction() static class NathanMackenzieSidwell::PauseReduction * NathanMackenzieSidwell::PauseReduction::New() void NathanMackenzieSidwell::PauseReduction::Delete() static enum NathanMackenzieSidwell::PauseReduction::ErrorType NathanMackenzieSidwell::PauseReduction::ErrorUnexpected(bool) void (* PV_FUNC(const class NathanMackenzieSidwell::PauseReduction *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseReduction *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseReduction &) class NathanMackenzieSidwell::PauseLexer * NathanMackenzieSidwell::PauseParser::Lexer() const void (* PV_FUNC(const class NathanMackenzieSidwell::PauseParser *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseParser *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::PauseParser &) NathanMackenzieSidwell::PauseNop::PauseNop(unsigned int) static class NathanMackenzieSidwell::PauseNop * NathanMackenzieSidwell::PauseNop::New(unsigned int) Signed32 NathanMackenzieSidwell::VrmlLexer::Int() const double NathanMackenzieSidwell::VrmlLexer::Float() const const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::VrmlLexer::String() const const class NathanMackenzieSidwell::Word * NathanMackenzieSidwell::VrmlLexer::Id() const NathanMackenzieSidwell::VrmlSymbolTable::Symbol::Symbol(unsigned int, void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) = PV_FUNC(const void *)(0)) NathanMackenzieSidwell::VrmlSymbolTable::Symbol::~Symbol() size_t NathanMackenzieSidwell::VrmlSymbolTable::Symbol::Depth() const NathanMackenzieSidwell::VrmlSymbolTable::VrmlSymbolTable(void (*)(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *)) unsigned int NathanMackenzieSidwell::VrmlSymbolTable::Depth() const class NathanMackenzieSidwell::VrmlSymbolTable::Symbol * NathanMackenzieSidwell::VrmlSymbolTable::Lookup(const class NathanMackenzieSidwell::Word *) void (* PV_FUNC(const class NathanMackenzieSidwell::VrmlSymbolTable::Symbol *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::VrmlSymbolTable::Symbol *) struct NathanMackenzieSidwell::Printer::Arg PV(const class NathanMackenzieSidwell::VrmlSymbolTable::Symbol &) void (* PVVRML_FUNC(const class NathanMackenzieSidwell::VrmlNodeTypeTable *))(class NathanMackenzieSidwell::Printer *, enum NathanMackenzieSidwell::Printer::Flags, int, int, const void *) struct NathanMackenzieSidwell::Printer::Arg PVVRML(const class NathanMackenzieSidwell::VrmlNodeTypeTable *) struct NathanMackenzieSidwell::Printer::Arg PVVRML(const class NathanMackenzieSidwell::VrmlNodeTypeTable &) const struct NathanMackenzieSidwell::VrmlKeyWords::KeyWord * NathanMackenzieSidwell::VrmlKeyWords::Lookup(const class NathanMackenzieSidwell::Word *) class NathanMackenzieSidwell::VrmlLexer * NathanMackenzieSidwell::VrmlParser::Lexer() const NathanMackenzieSidwell::VrmlParseMFBase::VrmlParseMFBase(const class NathanMackenzieSidwell::VrmlType *, unsigned int) NathanMackenzieSidwell::VrmlParseMF<T>::VrmlParseMF(class NathanMackenzieSidwell::MF<T> *, const class NathanMackenzieSidwell::VrmlType *, const class NathanMackenzieSidwell::VrmlNodeAllowable *) static class NathanMackenzieSidwell::VrmlParseMF<T> * NathanMackenzieSidwell::VrmlParseMF<T>::New(class NathanMackenzieSidwell::MF<T> *, const class NathanMackenzieSidwell::VrmlType *, const class NathanMackenzieSidwell::VrmlNodeAllowable *)
../../bugs/segfault.ii: At top level:
../../bugs/segfault.ii:3527: Internal compiler error.
../../bugs/segfault.ii:3527: Please submit a full bug report to `egcs-bugs@cygnus.com'.
../../bugs/segfault.ii:3527: See <URL:http://egcs.cygnus.com/faq.html#bugreport> for details.

segfault.ii.gz


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