brintos

brintos / llvm-project-archived public Read only

0
0
Text · 898 B · c2c32f9 Raw
42 lines · cpp
1// RUN: %clang_cc1 -std=c++11 -triple i686-linux-gnu %s -o /dev/null -emit-llvm2//3// This test's failure mode is running ~forever. (For some value of "forever"4// that's greater than 25 minutes on my machine)5 6template <typename... Ts>7struct Foo {8  template <typename... T>9  static void ignore() {}10  Foo() { ignore<Ts...>(); }11};12 13struct Base {14  Base();15  ~Base();16};17 18#define STAMP(thiz, prev) using thiz = Foo< \19  prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, \20  prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, \21  prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev, prev \22  >;23STAMP(A, Base);24STAMP(B, A);25STAMP(C, B);26STAMP(D, C);27STAMP(E, D);28STAMP(F, E);29STAMP(G, F);30STAMP(H, G);31STAMP(I, H);32STAMP(J, I);33STAMP(K, J);34STAMP(L, K);35STAMP(M, L);36STAMP(N, M);37STAMP(O, N);38STAMP(P, O);39STAMP(Q, P);40 41int main() { Q q; }42