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