CVS infinite loop?
Neil Booth
neilb@earthling.net
Mon Nov 13 15:12:00 GMT 2000
I stopped cc1plus after 3 mins 30 secs, which might not have been enough.
But compiling misc-inst.cc as so:-
/usr/src/gcc/build/gcc/g++ -B/usr/src/gcc/build/gcc/ -nostdinc++ -L/usr/src/gcc/build/i586-pc-linux-gnu/libstd++-v3/src -L/usr/src/gcc/build/i586-pc-linux-gnu/libstd++-v3/src/.libs -B/usr/local/i586-pc-linux-gnu/bin/ -B/usr/local/i586-pc-linux-gnu/lib/ -isystem /usr/local/i586-pc-linux-gnu/include -D_GNU_SOURCE -D_ISOC99_SOURCE -nostdinc++ -I../../../../libstdc++-v3/include/std -I../../../../libstdc++-v3/include/c -I../../../../libstdc++-v3/libsupc++ -I../../../../libstdc++-v3/include -I../libio -I../../../../libstdc++-v3/libio -I../../../../libstdc++-v3/libmath -I../include -I/usr/local/include -g -O2 -fvtable-thunks -D_GNU_SOURCE -fno-implicit-templates -Wall -Wno-format -W -Wwrite-strings -Winline -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -fimplicit-templates -c ../../../../libstdc++-v3/src/misc-inst.cc -fPIC -DPIC
takes an inordinate amount of time. Here is a sample backtrace (which
does vary depending upon break time)
#0 0x8306f81 in __mcount_internal ()
#1 0x82fb581 in mcount ()
#2 0x80dd36d in output_add_string (buffer=0x83bcea0,
str=0x832da04 "typename ") at ../../gcc/diagnostic.c:647
#3 0x8087e1a in dump_type (t=0x40e3d200, flags=16) at ../../gcc/cp/error.c:518
#4 0x80883b7 in dump_type_prefix (t=0x40e3d200, flags=16)
at ../../gcc/cp/error.c:751
#5 0x8088f66 in dump_function_decl (t=0x40f17500, flags=16)
at ../../gcc/cp/error.c:1231
#6 0x808891b in dump_decl (t=0x40f17500, flags=16)
at ../../gcc/cp/error.c:1053
#7 0x808acd8 in decl_as_string (decl=0x40f17500, flags=16)
at ../../gcc/cp/error.c:2210
#8 0x80c0edd in lang_printable_name (decl=0x40f17500, v=2)
at ../../gcc/cp/tree.c:1135
#9 0x80fbbf6 in init_function_start (subr=0x40f17500,
filename=0x40e8dfc0 "../../../../libstdc++-v3/include/bits/fstream.tcc",
line=477) at ../../gcc/function.c:6055
#10 0x8064f40 in start_function (declspecs=0x0, declarator=0x40f17500,
attrs=0x0, flags=1) at ../../gcc/cp/decl.c:13718
#11 0x8075081 in instantiate_decl (d=0x40f17500, defer_ok=0)
at ../../gcc/cp/pt.c:9694
#12 0x807539c in instantiate_pending_templates () at ../../gcc/cp/pt.c:9781
---Type <return> to continue, or q <return> to quit---
#13 0x8084c7c in finish_file () at ../../gcc/cp/decl2.c:3633
#14 0x8090095 in yyparse () at /usr/share/misc/bison.simple:436
#15 0x80d8730 in compile_file (
name=0x403a0100 "../../../../libstdc++-v3/src/misc-inst.cc")
at ../../gcc/toplev.c:2361
#16 0x80dbee2 in main (argc=80, argv=0xbffff674) at ../../gcc/toplev.c:4843
#17 0x82de682 in __libc_start_main ()
I'm using a slightly modified cpplib, but it seems from the trace that
integrated CPP is finished since we're in finish_file (). Preprocessing
separately preprocesses normally.
Anyone else getting this, or is it an anomoly?
Neil.
More information about the Gcc-bugs
mailing list