Clang Project

clang_source_code/test/Templight/templight-exception-spec-func.cpp
1// RUN: %clang_cc1 -templight-dump -std=c++14 %s 2>&1 | FileCheck %s
2template <bool B>
3void f() noexcept(B) {}
4
5int main()
6{
7
8// CHECK-LABEL: {{^---$}}
9// CHECK: {{^name:[ ]+f$}}
10// CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}}
11// CHECK: {{^event:[ ]+Begin$}}
12// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
13// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
14// CHECK-LABEL: {{^---$}}
15// CHECK: {{^name:[ ]+f$}}
16// CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}}
17// CHECK: {{^event:[ ]+End$}}
18// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
19// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
20//
21// CHECK-LABEL: {{^---$}}
22// CHECK: {{^name:[ ]+f$}}
23// CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}}
24// CHECK: {{^event:[ ]+Begin$}}
25// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
26// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
27// CHECK-LABEL: {{^---$}}
28// CHECK: {{^name:[ ]+f$}}
29// CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}}
30// CHECK: {{^event:[ ]+End$}}
31// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
32// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
33//
34// CHECK-LABEL: {{^---$}}
35// CHECK: {{^name:[ ]+'f<false>'$}}
36// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
37// CHECK: {{^event:[ ]+Begin$}}
38// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
39// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
40// CHECK-LABEL: {{^---$}}
41// CHECK: {{^name:[ ]+'f<false>'$}}
42// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
43// CHECK: {{^event:[ ]+End$}}
44// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
45// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
46//
47// CHECK-LABEL: {{^---$}}
48// CHECK: {{^name:[ ]+'f<false>'$}}
49// CHECK: {{^kind:[ ]+ExceptionSpecInstantiation$}}
50// CHECK: {{^event:[ ]+Begin$}}
51// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
52// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
53// CHECK-LABEL: {{^---$}}
54// CHECK: {{^name:[ ]+'f<false>'$}}
55// CHECK: {{^kind:[ ]+ExceptionSpecInstantiation$}}
56// CHECK: {{^event:[ ]+End$}}
57// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
58// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
59//
60// CHECK-LABEL: {{^---$}}
61// CHECK: {{^name:[ ]+'f<false>'$}}
62// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
63// CHECK: {{^event:[ ]+Begin$}}
64// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
65// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
66// CHECK-LABEL: {{^---$}}
67// CHECK: {{^name:[ ]+'f<false>'$}}
68// CHECK: {{^kind:[ ]+TemplateInstantiation$}}
69// CHECK: {{^event:[ ]+End$}}
70// CHECK: {{^orig:[ ]+'.*templight-exception-spec-func.cpp:3:6'}}
71// CHECK: {{^poi:[ ]+'.*templight-exception-spec-func.cpp:72:3'$}}
72  f<false>();
73}
74