1*207e7b1fSGabor Horvath // RUN: %clang_cc1 -templight-dump %s 2>&1 | FileCheck %s
2*207e7b1fSGabor Horvath template <class T = int>
3*207e7b1fSGabor Horvath class A {};
4*207e7b1fSGabor Horvath 
5*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
6*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A::T'$}}
7*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+DefaultTemplateArgumentChecking$}}
8*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+Begin$}}
9*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:2:17'}}
10*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:3'$}}
11*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
12*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A::T'$}}
13*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+DefaultTemplateArgumentChecking$}}
14*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+End$}}
15*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:2:17'}}
16*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:3'$}}
17*207e7b1fSGabor Horvath //
18*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
19*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
20*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+TemplateInstantiation$}}
21*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+Begin$}}
22*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
23*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
24*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
25*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
26*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+TemplateInstantiation$}}
27*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+End$}}
28*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
29*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
30*207e7b1fSGabor Horvath //
31*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
32*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
33*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+TemplateInstantiation$}}
34*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+Begin$}}
35*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
36*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
37*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
38*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
39*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+TemplateInstantiation$}}
40*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+End$}}
41*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
42*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
43*207e7b1fSGabor Horvath //
44*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
45*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
46*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+Memoization$}}
47*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+Begin$}}
48*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
49*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
50*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
51*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
52*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+Memoization$}}
53*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+End$}}
54*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
55*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
56*207e7b1fSGabor Horvath //
57*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
58*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
59*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+Memoization$}}
60*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+Begin$}}
61*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
62*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
63*207e7b1fSGabor Horvath // CHECK-LABEL: {{^---$}}
64*207e7b1fSGabor Horvath // CHECK: {{^name:[ ]+'A<int>'$}}
65*207e7b1fSGabor Horvath // CHECK: {{^kind:[ ]+Memoization$}}
66*207e7b1fSGabor Horvath // CHECK: {{^event:[ ]+End$}}
67*207e7b1fSGabor Horvath // CHECK: {{^orig:[ ]+'.*templight-default-template-arg.cpp:3:7'}}
68*207e7b1fSGabor Horvath // CHECK: {{^poi:[ ]+'.*templight-default-template-arg.cpp:69:5'$}}
69*207e7b1fSGabor Horvath A<> a;
70