https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69273

            Bug ID: 69273
           Summary: internal compiler error: in assign_temp, at
                    function.c:961
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sbergman at redhat dot com
  Target Milestone: ---

With current trunk sources:

> $ gcc/trunk/inst/bin/g++ -v
> Using built-in specs.
> COLLECT_GCC=gcc/trunk/inst/bin/g++
> COLLECT_LTO_WRAPPER=/home/sbergman/gcc/trunk/inst/libexec/gcc/x86_64-pc-linux-gnu/6.0.0/lto-wrapper
> Target: x86_64-pc-linux-gnu
> Configured with: ../src/trunk/configure 
> --prefix=/home/sbergman/gcc/trunk/inst --enable-languages=c,c++,lto
> Thread model: posix
> gcc version 6.0.0 20160114 (experimental) (GCC) 

> $ cat test.cc
> struct S0 { virtual void f0() = 0; };
> struct S1: S0 { void f0() { S0::f0(); } };
> struct T {
>     T(S1 * p) { p->f0(); }
>     T(T const &);
> };
> struct S2: S1 {
>     virtual T f1(bool b);
>     virtual T f2(bool b);
> };
> T S2::f1(bool b) {
>     if (b) return this;
>     return this;
> }
> T S2::f2(bool b) {
>     if (b) return this;
>     return this;
> }

> $ gcc/trunk/inst/bin/g++ -O2 -c test.cc
> test.cc: In member function ‘virtual T S2::f1(bool)’:
> test.cc:15:3: internal compiler error: in assign_temp, at function.c:961
>  T S2::f1(bool b) {
>    ^~
>
> 0xa4ad93 assign_temp(tree_node*, int, int)
>       ../../src/trunk/gcc/function.c:961
> 0x8d078e expand_call(tree_node*, rtx_def*, int)
>       ../../src/trunk/gcc/calls.c:2552
> 0x9e037c expand_expr_real_1(tree_node*, rtx_def*, machine_mode, 
> expand_modifier, rtx_def**, bool)
>       ../../src/trunk/gcc/expr.c:10585
> 0x8e164a expand_expr
>       ../../src/trunk/gcc/expr.h:256
> 0x8e164a expand_call_stmt
>       ../../src/trunk/gcc/cfgexpand.c:2648
> 0x8e164a expand_gimple_stmt_1
>       ../../src/trunk/gcc/cfgexpand.c:3536
> 0x8e164a expand_gimple_stmt
>       ../../src/trunk/gcc/cfgexpand.c:3702
> 0x8e3fc4 expand_gimple_basic_block
>       ../../src/trunk/gcc/cfgexpand.c:5708
> 0x8e8f96 execute
>       ../../src/trunk/gcc/cfgexpand.c:6323
> Please submit a full bug report,
> with preprocessed source if appropriate.
> Please include the complete backtrace with any bug report.
> See <http://gcc.gnu.org/bugs.html> for instructions.

Reply via email to