xref: /llvm-project/clang/test/Modules/Inputs/namespaces-left.h (revision 696e812bb3f7eb03b97a624b8ab487bb70e8f600)
1309271b0SRichard Smith namespace RedeclAcrossImport {
2309271b0SRichard Smith   enum E { e };
3309271b0SRichard Smith }
4309271b0SRichard Smith 
5961eae5fSRichard Smith namespace AddAndReexportBeforeImport {
6961eae5fSRichard Smith   struct S {};
7961eae5fSRichard Smith   extern struct S t;
8961eae5fSRichard Smith }
9961eae5fSRichard Smith 
10c50d4924SDouglas Gregor @import namespaces_top;
11e57e752bSDouglas Gregor 
12309271b0SRichard Smith namespace RedeclAcrossImport {
13309271b0SRichard Smith   E x = e;
14309271b0SRichard Smith }
15309271b0SRichard Smith 
16645d755dSRichard Smith float &global(float);
17645d755dSRichard Smith float &global2(float);
18645d755dSRichard Smith 
19645d755dSRichard Smith namespace LookupBeforeImport {
20645d755dSRichard Smith   float &f(float);
21645d755dSRichard Smith }
22645d755dSRichard Smith 
23e57e752bSDouglas Gregor namespace N1 { }
24e57e752bSDouglas Gregor 
25e57e752bSDouglas Gregor namespace N1 {
26e57e752bSDouglas Gregor   float& f(float);
27e57e752bSDouglas Gregor }
28e57e752bSDouglas Gregor 
29e57e752bSDouglas Gregor namespace N2 {
30e57e752bSDouglas Gregor   float& f(float);
31e57e752bSDouglas Gregor }
32cfe7dc6bSDouglas Gregor 
33cfe7dc6bSDouglas Gregor 
34cfe7dc6bSDouglas Gregor 
35cfe7dc6bSDouglas Gregor 
36cfe7dc6bSDouglas Gregor 
37cfe7dc6bSDouglas Gregor namespace N5 {
38cfe7dc6bSDouglas Gregor   int &f(int);
39cfe7dc6bSDouglas Gregor }
40cfe7dc6bSDouglas Gregor 
41cfe7dc6bSDouglas Gregor namespace N6 {
42cfe7dc6bSDouglas Gregor   int &f(int);
43cfe7dc6bSDouglas Gregor }
44cfe7dc6bSDouglas Gregor 
45cfe7dc6bSDouglas Gregor namespace N7 {
46cfe7dc6bSDouglas Gregor   int &f(int);
47cfe7dc6bSDouglas Gregor }
489b47f941SDouglas Gregor 
499b47f941SDouglas Gregor namespace N8 {
509b47f941SDouglas Gregor   int &f(int);
519b47f941SDouglas Gregor }
529b47f941SDouglas Gregor 
539b47f941SDouglas Gregor namespace N9 {
549b47f941SDouglas Gregor   int &f(int);
559b47f941SDouglas Gregor }
569b47f941SDouglas Gregor 
579b47f941SDouglas Gregor namespace N10 {
589b47f941SDouglas Gregor   int &f(int);
599b47f941SDouglas Gregor }
60540fd813SDouglas Gregor 
61540fd813SDouglas Gregor namespace N11 {
62540fd813SDouglas Gregor   namespace {
63540fd813SDouglas Gregor     class Foo;
64540fd813SDouglas Gregor   }
65540fd813SDouglas Gregor   Foo *getFoo();
66540fd813SDouglas Gregor }
67540fd813SDouglas Gregor 
68540fd813SDouglas Gregor namespace N12 {
69540fd813SDouglas Gregor   namespace {
70540fd813SDouglas Gregor     class Foo;
71540fd813SDouglas Gregor   }
72540fd813SDouglas Gregor   Foo *getFoo();
73540fd813SDouglas Gregor }
74*696e812bSRichard Smith 
75*696e812bSRichard Smith namespace Empty {}
76