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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
      Known to fail|                            |13.1.0, 14.1.0
            Summary|[15 Regression] internal    |[13/14/15 Regression]
                   |compiler error: in merge,   |internal compiler error: in
                   |at ipa-modref-tree.cc:176   |merge, at
                   |at -O3                      |ipa-modref-tree.cc:176 at
                   |                            |-O3
                 CC|                            |hubicka at gcc dot gnu.org
   Last reconfirmed|                            |2024-08-09
     Ever confirmed|0                           |1
      Known to work|14.1.0                      |
   Target Milestone|15.0                        |13.4
           Keywords|                            |ice-checking,
                   |                            |needs-bisection

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
Cleaned up testcase:
```
short g(unsigned long h, int i[11][11], short c) {
  for (unsigned long j = 0; j < h; j -= 0x105f000000000000ull)
    c = c > i[j][j];
  return c;
}

```

The assert:
  gcc_checking_assert (!contains (a) && !a.contains (*this));

So ICE checking and confirmed, it ICEd in GCC 13 and 14 with checking enabled.

Maybe even GCC 12 but I don't have any compiler that is compiled with checking
enabled from that branch.

The assert was added in r12-5233-ga246d7230b8f8b (which most likely introduced
the ICE too).

I can't figure out why the number needs to be some large number here either. 
This is the smalled number I could get to the ICE as far as I can tell.

Reply via email to