Skip to content

Commit ca98177

Browse files
committed
[FOLD] add tests
1 parent 2b0dbb5 commit ca98177

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
namespace N0 {
2+
template<typename T>
3+
struct A {
4+
template<typename U>
5+
friend struct A;
6+
};
7+
8+
template struct A<long>;
9+
} // namespace N0
10+
11+
namespace N1 {
12+
template<typename T>
13+
struct A;
14+
15+
template<typename T>
16+
struct A {
17+
template<typename U>
18+
friend struct A;
19+
};
20+
21+
template struct A<long>;
22+
} // namespace N1
23+
24+
namespace N2 {
25+
template<typename T>
26+
struct A {
27+
template<typename U>
28+
friend struct A;
29+
};
30+
31+
template<typename T>
32+
struct A;
33+
34+
template struct A<long>;
35+
} // namespace N2
36+
37+
namespace N3 {
38+
struct A {
39+
template<typename T>
40+
friend struct B;
41+
};
42+
43+
template<typename T>
44+
struct B { };
45+
46+
template struct B<long>;
47+
} // namespace N3
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
// RUN: %clang_cc1 -emit-pch -o %t.1.ast %S/Inputs/class-template-spec.cpp
2+
// RUN: %clang_cc1 -ast-merge %t.1.ast -fsyntax-only -verify %s
3+
// expected-no-diagnostics
4+
5+
template struct N0::A<short>;
6+
template struct N1::A<short>;
7+
template struct N2::A<short>;
8+
template struct N3::B<short>;

0 commit comments

Comments
 (0)