1*0333dd95SReid Kleckner // Merge success 2*0333dd95SReid Kleckner namespace N1 { 3*0333dd95SReid Kleckner int x; 4*0333dd95SReid Kleckner } 5*0333dd95SReid Kleckner 6*0333dd95SReid Kleckner // Merge multiple namespaces 7*0333dd95SReid Kleckner namespace N2 { 8*0333dd95SReid Kleckner extern int x; 9*0333dd95SReid Kleckner } 10*0333dd95SReid Kleckner namespace N2 { 11*0333dd95SReid Kleckner extern float y; 12*0333dd95SReid Kleckner } 13*0333dd95SReid Kleckner 14*0333dd95SReid Kleckner // Merge namespace with conflict 15*0333dd95SReid Kleckner namespace N3 { 16*0333dd95SReid Kleckner extern float z; 17*0333dd95SReid Kleckner } 18*0333dd95SReid Kleckner 19*0333dd95SReid Kleckner namespace AliasWithSameName = N3; 20*0333dd95SReid Kleckner 21*0333dd95SReid Kleckner namespace TestUnresolvedTypenameAndValueDecls { 22*0333dd95SReid Kleckner template <class T> class Base { 23*0333dd95SReid Kleckner public: 24*0333dd95SReid Kleckner typedef T foo; 25*0333dd95SReid Kleckner void bar(); 26*0333dd95SReid Kleckner }; 27*0333dd95SReid Kleckner } 28