------- Comment #2 from rguenth at gcc dot gnu dot org 2010-07-23 10:25 -------
Reduced testcase:
struct JSContext;
struct JSObject;
class WorkerHooks {
virtual JSObject *newGlobalObject(JSContext *cx) = 0;
};
int
shell(JSContext *cx, int argc, char **argv, char **envp)
{
class ShellWorkerHooks : public WorkerHooks {
JSObject *newGlobalObject(JSContext *cx) { }
};
ShellWorkerHooks hooks;
}
> ./g++ -B. -flto -r -nostdlib -g js.3.ii
lto1: internal compiler error: in dwarf2out_finish, at dwarf2out.c:22271
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper: ./g++ returned 1 exit status
collect2: lto-wrapper returned 1 exit status
#1 0x00000000005d46a8 in dwarf2out_finish (filename=0x1664040 "js.3.o")
at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:22269
22269 gcc_assert (context
22270 && (TREE_CODE (context) == FUNCTION_DECL
22271 || TREE_CODE (context) ==
NAMESPACE_DECL));
(gdb) p context->base.code
$2 = RECORD_TYPE
(gdb) call debug_generic_expr (node->created_for)
__base_ctor
(for ShellWorkerHooks)
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2010-07-23 10:25:17
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44950