[Bug c++/108390] ICE in fold_convert_loc, at fold-const.cc:2504 partial ordering between array types
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jan 13 01:19:58 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108390
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-invalid-code
Status|UNCONFIRMED |NEW
Last reconfirmed| |2023-01-13
Ever confirmed|0 |1
See Also| |https://gcc.gnu.org/bugzill
| |a/show_bug.cgi?id=79092
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I suspect the patch for PR79092 cahnged the behavior in GCC 8.
I don't see how this can't be ambiguous. It is odd that clang accepts it.
This C++20 testcase also causes the ICE and clang rejects it as ambiguous:
```
template<auto t> long f(int(*)[t], int(*)[t]);
template<int i> int f(int(*)[i], int(*)[i]);
int n = f<2>(0, 0);
```
So at least ICE on invalid.
More information about the Gcc-bugs
mailing list