1 // RUN: %clang_cc1 -ast-print -std=c++14 %s -o %t.1.cpp
2 // RUN: %clang_cc1 -ast-print -std=c++14 %t.1.cpp -o %t.2.cpp
3 // RUN: diff %t.1.cpp %t.2.cpp
4 
5 template<typename T> void func_01();
6 template<typename T> void func_01() {}
7 template<> void func_01<int>() {}
8 template<> void func_01<long>() {}
9 template<typename T> void func_01();
10 
11 void main_01() {
12   func_01<int*>();
13   func_01<char>();
14 }
15 
16 template<typename T> void func_02();
17 template<typename T> void func_02();
18 template<> void func_02<int>();
19 template<> void func_02<long>();
20 template<typename T> void func_02();
21 
22 void main_02() {
23   func_02<int*>();
24   func_02<char>();
25 }
26