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 
__anon5d86152e0102(int x = foo(1))30 [](int x = foo(1)){}
31 
32 #ifdef FAIL
__anon5d86152e0202(int x = foo( [](int x = foo(1)){}))33 )){}
34 #endif
35 
__anon5d86152e0702(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo( [](int x = foo(1)){})){})){})){})){})){}))36 )){})){})){})){})){})){}
37 
__anon5d86152e0902(int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e1702(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e1902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e2802(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e2902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e3302(int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e3902(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e4102(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e4a02(int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e5202(int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e6002(int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e6102(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e6a02(int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e7102(int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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 )){})){})){})){})){})){})){})){}
__anon5d86152e7b02(int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo([](int x = foo( [](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