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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Reduced testcase:
```
template <typename... _Elements> class tuple{};
template <unsigned long __i, typename... _Elements>
__type_pack_element<__i, _Elements...> &get(tuple<_Elements...> &__t) noexcept;
tuple<int,int> data;
template <unsigned long Level>
unsigned take_impl(unsigned idx) {
  if constexpr (Level != -1){
    return take_impl<Level - 1>(get<Level - 1>(data));
  }
  return 0;
}
int main() {
  take_impl<2>(0);
}
```

Note I think this is invalid code ...

Reply via email to