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

--- Comment #5 from Patrick Palka <ppalka at gcc dot gnu.org> ---
It looks like GCC 10.1 accepts this testcase, and 10.2, 10.3 and 11 reject.

The requires-expression is a red herring, we can trigger the ICE without it:

#include <tuple>
template<class> void f() {
  [] (auto x) {
    if constexpr (auto [a, b] = std::tuple{x, x}; sizeof(a) > 1)
      ;
  }(0);
}

template void f<int>();

The ICE for this one isn't a regression it seems.

Reply via email to