1 // RUN: %clang_cc1 -fsyntax-only -verify -ftemplate-backtrace-limit 2 %s
2 //
3 // FIXME: Disable this test when Clang was built with ASan, because ASan
4 // increases our per-frame stack usage enough that this test no longer fits
5 // within our normal stack space allocation.
6 // REQUIRES: not_asan
7 
8 template<int N, typename T> struct X : X<N+1, T*> {};
9 // expected-error-re@8 {{recursive template instantiation exceeded maximum depth of 1024{{$}}}}
10 // expected-note@8 {{instantiation of template class}}
11 // expected-note@8 {{skipping 1023 contexts in backtrace}}
12 // expected-note@8 {{use -ftemplate-depth=N to increase recursive template instantiation depth}}
13 
14 X<0, int> x; // expected-note {{in instantiation of}}
15 
16 // FIXME: It crashes. Investigating.
17 // UNSUPPORTED: mingw32
18