------- 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

Reply via email to