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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Target Milestone|---                         |11.4
   Last reconfirmed|                            |2023-05-09
     Ever confirmed|0                           |1
           Keywords|                            |needs-bisection
      Known to fail|                            |10.1.0, 11.1.0, 8.5.0,
                   |                            |9.3.0
            Summary|internal compiler error in  |[11/12/13/14 Regression]
                   |write_member_name, at       |internal compiler error in
                   |cp/mangle.cc:2992           |write_member_name, at
                   |                            |cp/mangle.cc:2992
      Known to work|                            |10.3.0, 10.4.0, 9.4.0,
                   |                            |9.5.0

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Reduced:
```
auto ll = [](auto ... ){};
template <class _Impl, class _Args>
  void mm(void (_Impl::*__p)(_Args) const);
template <class _Ts>
using __impl_for = decltype(mm(&decltype(ll)::operator()<_Ts>));
template <class _Ts> __impl_for<_Ts> f() { }
void aaa() {
  f<int>();
}
```
as far as I can tell the above is valid C++17 code.
It was rejected in 10.1.0, 9.3.0 8.5.0 and started to ICE in 11.1.0. But it was
accepted in 10.3.0 10.4.0 9.5.0 9.4.0.

Reply via email to