| // RUN: %clang_cc1 -std=c++14 -templight-dump %s 2>&1 | FileCheck %s |
| template <class T> |
| void foo(T b = 0) {}; |
| |
| int main() |
| { |
| |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+foo$}} |
| // CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}} |
| // CHECK: {{^event:[ ]+Begin$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+foo$}} |
| // CHECK: {{^kind:[ ]+ExplicitTemplateArgumentSubstitution$}} |
| // CHECK: {{^event:[ ]+End$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+foo$}} |
| // CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}} |
| // CHECK: {{^event:[ ]+Begin$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+foo$}} |
| // CHECK: {{^kind:[ ]+DeducedTemplateArgumentSubstitution$}} |
| // CHECK: {{^event:[ ]+End$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+'foo<int>'$}} |
| // CHECK: {{^kind:[ ]+TemplateInstantiation$}} |
| // CHECK: {{^event:[ ]+Begin$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+'foo<int>'$}} |
| // CHECK: {{^kind:[ ]+TemplateInstantiation$}} |
| // CHECK: {{^event:[ ]+End$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+b$}} |
| // CHECK: {{^kind:[ ]+DefaultFunctionArgumentInstantiation$}} |
| // CHECK: {{^event:[ ]+Begin$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:12'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+b$}} |
| // CHECK: {{^kind:[ ]+DefaultFunctionArgumentInstantiation$}} |
| // CHECK: {{^event:[ ]+End$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:12'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+'foo<int>'$}} |
| // CHECK: {{^kind:[ ]+TemplateInstantiation$}} |
| // CHECK: {{^event:[ ]+Begin$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| // CHECK-LABEL: {{^---$}} |
| // CHECK: {{^name:[ ]+'foo<int>'$}} |
| // CHECK: {{^kind:[ ]+TemplateInstantiation$}} |
| // CHECK: {{^event:[ ]+End$}} |
| // CHECK: {{^orig:[ ]+'.*templight-default-func-arg.cpp:3:6'}} |
| // CHECK: {{^poi:[ ]+'.*templight-default-func-arg.cpp:72:3'$}} |
| foo<int>(); |
| } |