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

--- Comment #7 from Peter Boyle <paboyle at ph dot ed.ac.uk> ---
Signature of fail in 8.0.0 (head) is:

                          ^~~~
prog.cc: In substitution of 'template<int N, class obj> Container<decltype
(function<N>(arg.data[0]))> function(const Container<obj>&) [with int N = 1;
obj = <missing>]':
prog.cc:43:101:   recursively required by substitution of 'template<int N,
class obj> Container<decltype (function<N>(arg.data[0]))> function(const
Container<obj>&) [with int N = 1; obj = <missing>]'
prog.cc:43:101:   required by substitution of 'template<int N, class obj>
Container<decltype (function<N>(arg.data[0]))> function(const Container<obj>&)
[with int N = 1; obj = <missing>]'
prog.cc:45:33:   required from 'Container<decltype (function<N>(arg.data[0]))>
function(const Container<obj>&) [with int N = 1; obj =
Recursive<Recursive<std::complex<double> > >]'
prog.cc:58:26:   required from here
prog.cc:43:101: fatal error: template instantiation depth exceeds maximum of
900 (use -ftemplate-depth= to increase the maximum)
 template<int N,class obj> auto function(const Container<obj> & arg)->
Container<decltype(function<N>(arg.data[0]))>
                                                                               
          ~~~~~~~~~~~^~~~~~~~~~~~~
compilation terminated.

Reply via email to