xref: /llvm-project/clang/test/ASTMerge/class/Inputs/class2.cpp (revision 0333dd95636da52229ca14b4e5525c1cd8ba62d2)
1*0333dd95SReid Kleckner struct A {
2*0333dd95SReid Kleckner   public:
3*0333dd95SReid Kleckner     int x;
4*0333dd95SReid Kleckner };
5*0333dd95SReid Kleckner 
6*0333dd95SReid Kleckner struct B : A {
7*0333dd95SReid Kleckner   int y;
8*0333dd95SReid Kleckner   int foo();
9*0333dd95SReid Kleckner };
10*0333dd95SReid Kleckner 
11*0333dd95SReid Kleckner enum E {
12*0333dd95SReid Kleckner   a = 0,
13*0333dd95SReid Kleckner   b = 1
14*0333dd95SReid Kleckner };
15*0333dd95SReid Kleckner 
16*0333dd95SReid Kleckner //Friend import tests
17*0333dd95SReid Kleckner void f();
18*0333dd95SReid Kleckner int g(int a);
19*0333dd95SReid Kleckner struct X;
20*0333dd95SReid Kleckner struct Y;
21*0333dd95SReid Kleckner 
22*0333dd95SReid Kleckner struct F1 {
23*0333dd95SReid Kleckner public:
24*0333dd95SReid Kleckner   int x;
25*0333dd95SReid Kleckner   friend struct X;
26*0333dd95SReid Kleckner   friend int g(int);
27*0333dd95SReid Kleckner   friend void f();
28*0333dd95SReid Kleckner };
29*0333dd95SReid Kleckner 
30*0333dd95SReid Kleckner struct F2 {
31*0333dd95SReid Kleckner public:
32*0333dd95SReid Kleckner   int x;
33*0333dd95SReid Kleckner   friend struct X;
34*0333dd95SReid Kleckner };
35*0333dd95SReid Kleckner 
36*0333dd95SReid Kleckner struct F3 {
37*0333dd95SReid Kleckner public:
38*0333dd95SReid Kleckner   int x;
39*0333dd95SReid Kleckner   friend void f();
40*0333dd95SReid Kleckner };
41