// PR c++/99201
// { dg-do compile { target c++17 } }
template <typename RefF>
  auto
  make_tester(const RefF& reffun)
  {
    return [=](auto in) {
      auto&& expected = [&](const auto&... vs) {
        if constexpr (sizeof(in) > 0)
          return [&](int i) { return reffun(vs[i]...); }(0);
        else
          return [&](int i) { return reffun(vs[i]...); }(0);
      };
    };
  }
int main()
{
  make_tester([](int x) { return x; })(0);
  return 0;
}