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

            Bug ID: 88122
           Summary: g++ ICE: internal compiler error: Segmentation fault
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: helloqirun at gmail dot com
  Target Milestone: ---

It appears to be a recent regression.

$ g++-trunk -v
Using built-in specs.
COLLECT_GCC=g++-trunk
COLLECT_LTO_WRAPPER=/home/absozero/trunk/root-gcc/libexec/gcc/x86_64-pc-linux-gnu/9.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc/configure --prefix=/home/absozero/trunk/root-gcc
--enable-languages=c,c++ --disable-werror --enable-multilib
Thread model: posix
gcc version 9.0.0 20181120 (experimental) [trunk revision 266315] (GCC)



$ g++-trunk abc.C
abc.C:7:6: error: use of deleted function ‘<unnamed struct>::<constructor>(...)
[inherited from a]’
    7 | } b{3};
      |      ^
abc.C:6:13: internal compiler error: Segmentation fault
    6 |   using a ::a;
      |             ^
0xf0a5cf crash_signal
        ../../gcc/gcc/toplev.c:326
0x92bc7b tree_check(tree_node*, char const*, int, char const*, tree_code)
        ../../gcc/gcc/tree.h:3153
0x92bc7b maybe_explain_implicit_delete(tree_node*)
        ../../gcc/gcc/cp/method.c:1824
0x8e9cdc mark_used(tree_node*, int)
        ../../gcc/gcc/cp/decl2.c:5353
0x852af1 build_over_call
        ../../gcc/gcc/cp/call.c:7917
0x856bda convert_like_real
        ../../gcc/gcc/cp/call.c:6939
0x856b0b convert_like_real
        ../../gcc/gcc/cp/call.c:7069
0x852979 build_over_call
        ../../gcc/gcc/cp/call.c:8181
0x85589f build_new_method_call_1
        ../../gcc/gcc/cp/call.c:9677
0x85589f build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc,
vl_embed>**, tree_node*, int, tree_node**, int)
        ../../gcc/gcc/cp/call.c:9752
0x8564e9 build_special_member_call(tree_node*, tree_node*, vec<tree_node*,
va_gc, vl_embed>**, tree_node*, int, int)
        ../../gcc/gcc/cp/call.c:9176
0x905312 expand_default_init
        ../../gcc/gcc/cp/init.c:1968
0x905312 expand_aggr_init_1
        ../../gcc/gcc/cp/init.c:2083
0x905bfa build_aggr_init(tree_node*, tree_node*, int, int)
        ../../gcc/gcc/cp/init.c:1817
0x8ba84f build_aggr_init_full_exprs
        ../../gcc/gcc/cp/decl.c:6290
0x8ba84f check_initializer
        ../../gcc/gcc/cp/decl.c:6439
0x8d254c cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int)
        ../../gcc/gcc/cp/decl.c:7162
0x9757a6 cp_parser_init_declarator
        ../../gcc/gcc/cp/parser.c:20093
0x9599fa cp_parser_simple_declaration
        ../../gcc/gcc/cp/parser.c:13269
0x97c3e9 cp_parser_declaration
        ../../gcc/gcc/cp/parser.c:12966
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

$ cat abc.C
struct a {
  a(...);
  a();
};
struct : a {
  using a ::a;
} b{3};

Reply via email to