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

            Bug ID: 102463
           Summary: ice in fold_using_range::relation_fold_and_or
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com
  Target Milestone: ---

For this C code:

_bfd_elf_merge_symbol_h, _bfd_elf_merge_symbol_h_1;
_Bool _bfd_elf_merge_symbol_olddef;
_bfd_elf_merge_symbol() {
  _Bool newdef = bfd_is_com_section(), ntdef, tdef;
  _bfd_elf_merge_symbol_olddef = _bfd_elf_merge_symbol_h;
  if (_bfd_elf_merge_symbol_h_1) {
    ntdef = newdef;
    tdef = _bfd_elf_merge_symbol_h;
  } else {
    ntdef = _bfd_elf_merge_symbol_h;
    tdef = newdef;
  }
  if (tdef && ntdef)
    ;
}

compiled by recent gcc and flag -O2, does this:

during GIMPLE pass: evrp
elflink.c: In function ‘_bfd_elf_merge_symbol’:
elflink.c:15198:1: internal compiler error: Segmentation fault
0xd6a899 crash_signal(int)
        ../../trunk.git/gcc/toplev.c:328
0x1a73c3c fold_using_range::relation_fold_and_or(irange&, gimple*, fur_source&)
        ../../trunk.git/gcc/gimple-range-fold.cc:1365

The problem first seems to occur sometime between git hash
947332a4e22aef9b, from last week, and hash 83aac698835edcdb
from yesterday.

Reply via email to