Clang Project

clang_source_code/test/Templight/templight-explicit-template-arg.cpp
1// RUN: %clang_cc1 -templight-dump %s 2>&1 | FileCheck %s
2template <class T>
3void f(){}
4
5int main()
6{
7// CHECK-LABEL: {{^---$}}
8// CHECK: {{^name:[ ]+f$}}
9// CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}}
10// CHECK: {{^event:[ ]+Begin$}}
11// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
12// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
13// CHECK-LABEL: {{^---$}}
14// CHECK: {{^name:[ ]+f$}}
15// CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}}
16// CHECK: {{^event:[ ]+End$}}
17// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
18// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
19//
20// CHECK-LABEL: {{^---$}}
21// CHECK: {{^name:[ ]+f$}}
22// CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}}
23// CHECK: {{^event:[ ]+Begin$}}
24// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
25// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
26// CHECK-LABEL: {{^---$}}
27// CHECK: {{^name:[ ]+f$}}
28// CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}}
29// CHECK: {{^event:[ ]+End$}}
30// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
31// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
32//
33// CHECK-LABEL: {{^---$}}
34// CHECK: {{^name:[ ]+'f<int>'$}}
35// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
36// CHECK: {{^event:[ ]+Begin$}}
37// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
38// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
39// CHECK-LABEL: {{^---$}}
40// CHECK: {{^name:[ ]+'f<int>'$}}
41// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
42// CHECK: {{^event:[ ]+End$}}
43// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
44// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
45//
46// CHECK-LABEL: {{^---$}}
47// CHECK: {{^name:[ ]+'f<int>'$}}
48// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
49// CHECK: {{^event:[ ]+Begin$}}
50// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
51// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
52// CHECK-LABEL: {{^---$}}
53// CHECK: {{^name:[ ]+'f<int>'$}}
54// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
55// CHECK: {{^event:[ ]+End$}}
56// CHECK: {{^orig:[ ]+'.*templight-explicit-template-arg.cpp:3:6'}}
57// CHECK: {{^poi:[ ]+'.*templight-explicit-template-arg.cpp:58:3'$}}
58  f<int>();
59}
60