On 10/29/19 4:46 PM, Jeff Chapman wrote:
Hello,
template<int N, typename T> concept Foo = requires(T t) { foo<N - 1>(t); }; template<int N = 1024 * 1024, typename T = int> requires Foo<N, T> int foo(T t) { return foo<N - 1>(t); } Similar cases without concepts are handled with -ftemplate-depth/max_tinst_depth but satisfaction on trunk does not currently pass through anything that increments tinst_depth.
Why doesn't the std specify the satisfaction nesting limit in the same way as template instantiation? (at least that's what I infer from your question).
nathan -- Nathan Sidwell