1 // RUN: %clang %s -fsyntax-only -fbracket-depth=512
2 // RUN: not %clang %s -fsyntax-only -fbracket-depth=512 -DFAIL 2>&1 | FileCheck %s
3
4 template <class T> int foo(T &&t);
5
6 void bar(int x = foo(
7
8 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
9 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
10 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
11 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
12 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
13 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
14 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
15 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
16 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
17 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
18 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
19 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
20 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
21 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
22 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
23
24 [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo(
25
26 #ifdef FAIL
27 [](int x = foo(
28 #endif
29
__anondbfb7c050102(int x = foo(1))30 [](int x = foo(1)){}
31
32 #ifdef FAIL
__anondbfb7c050202(int x = foo( [](int x = foo(1)){}))33 )){}
34 #endif
35
__anondbfb7c050502(int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){}))36 )){})){})){})){})){})){}
37
__anondbfb7c050b02(int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){}))38 )){})){})){})){})){})){})){})){}
__anondbfb7c051202(int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))39 )){})){})){})){})){})){})){})){}
__anondbfb7c051c02(int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))40 )){})){})){})){})){})){})){})){}
__anondbfb7c052402(int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))41 )){})){})){})){})){})){})){})){}
__anondbfb7c052e02(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))42 )){})){})){})){})){})){})){})){}
__anondbfb7c053502(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))43 )){})){})){})){})){})){})){})){}
__anondbfb7c053f02(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))44 )){})){})){})){})){})){})){})){}
__anondbfb7c054702(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))45 )){})){})){})){})){})){})){})){}
__anondbfb7c054902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))46 )){})){})){})){})){})){})){})){}
__anondbfb7c055802(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))47 )){})){})){})){})){})){})){})){}
__anondbfb7c055902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))48 )){})){})){})){})){})){})){})){}
__anondbfb7c056602(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))49 )){})){})){})){})){})){})){})){}
__anondbfb7c056902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))50 )){})){})){})){})){})){})){})){}
__anondbfb7c057702(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))51 )){})){})){})){})){})){})){})){}
__anondbfb7c057902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){})){}))52 )){})){})){})){})){})){})){})){}
53 ));
54
55 // CHECK: fatal error: function scope depth exceeded maximum of 127
56