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