Bug 69273 - internal compiler error: in assign_temp, at function.c:961
Summary: internal compiler error: in assign_temp, at function.c:961
Status: RESOLVED DUPLICATE of bug 69241
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 6.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-14 13:27 UTC by Stephan Bergmann
Modified: 2016-01-14 13:43 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stephan Bergmann 2016-01-14 13:27:32 UTC
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.
Comment 1 Markus Trippelsdorf 2016-01-14 13:43:16 UTC
dup.

*** This bug has been marked as a duplicate of bug 69241 ***