Concepts and meta::lambda
There are issues in the interaction between the concept constraints in meta and the lambda implementation that need to be investigated. Concepts are applied when forming a template-id, even before instantiation, so e.g.:
template<class> concept Foo = false;
template<Foo T> struct X;
using U = X<int>; // ill-formed despite not instantiating X<int>
Yet the implementation of lambdas relies on the ability to name "invalid" specializations which are later pattern-matched and substituted into valid specializations. GCC's concept implementation is lax enough that we've been getting by with some cheating in cmcstl2, but clang-concepts (and I suspect other implementations of C++20 concepts) refuses to compile the lambda test cases in meta.cpp.
Working my way down meta.cpp, on line 67 (the last type alias (outer) in Res tuple_cat(Tuples &&... tpls)):
quote_i<std::size_t, make_index_sequence> fails Invocable (in a static_assert). quote<std::index_sequence_for> as a replacement works (not a good solution, but at least allows me down to the lambda tests).