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

            Bug ID: 85039
           Summary: nested_anon_class_index
           Product: gcc
           Version: 8.0.1
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: vegard.nossum at oracle dot com
                CC: webrown.cpp at gmail dot com
  Target Milestone: ---

Input:

constexpr int a() {
  __builtin_offsetof(struct {
    short b {
      __builtin_offsetof(struct {
        struct c {
          void d() {
          }
        };
      });
    };
  });
}

Output:

$ cc1plus
 constexpr int a() void a()::<unnamed struct>::<unnamed struct>::c::d()
<stdin>: At global scope:
<stdin>:6:16: internal compiler error: in nested_anon_class_index, at
cp/mangle.c:1626
0x349df28 nested_anon_class_index
        /home/vegard/git/gcc/gcc/cp/mangle.c:1626
0x349df28 write_unnamed_type_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:1640
0x349df28 write_unqualified_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:1407
0x34caa03 write_prefix
        /home/vegard/git/gcc/gcc/cp/mangle.c:1166
0x34ca9fb write_prefix
        /home/vegard/git/gcc/gcc/cp/mangle.c:1165
0x34d14eb write_nested_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:1083
0x33f4033 write_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:976
0x33f7cbc write_local_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:2057
0x33f7cbc write_name
        /home/vegard/git/gcc/gcc/cp/mangle.c:964
0x33791c5 write_encoding
        /home/vegard/git/gcc/gcc/cp/mangle.c:825
0x34e53f8 mangle_decl_string
        /home/vegard/git/gcc/gcc/cp/mangle.c:3792
0x34ead33 get_mangled_id
        /home/vegard/git/gcc/gcc/cp/mangle.c:3814
0x34ead33 mangle_decl(tree_node*)
        /home/vegard/git/gcc/gcc/cp/mangle.c:3852
0x16745350 decl_assembler_name(tree_node*)
        /home/vegard/git/gcc/gcc/tree.c:687
0x1716f86d notice_global_symbol(tree_node*)
        /home/vegard/git/gcc/gcc/varasm.c:1668
0x7a4933b cgraph_node::finalize_function(tree_node*, bool)
        /home/vegard/git/gcc/gcc/cgraphunit.c:452
0x4ffc8c0 expand_or_defer_fn(tree_node*)
        /home/vegard/git/gcc/gcc/cp/semantics.c:4287
0x3fc3268 cp_parser_function_definition_after_declarator
        /home/vegard/git/gcc/gcc/cp/parser.c:26847
0x3fcdaa4 cp_parser_late_parsing_for_member
        /home/vegard/git/gcc/gcc/cp/parser.c:27723
0x3d32a56 cp_parser_class_specifier_1
        /home/vegard/git/gcc/gcc/cp/parser.c:22766
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.

Built with r258757.

Possibly related: #79850, #85033.

Reply via email to