// { dg-do run } | |
// Check namespace aliases inside blocks | |
namespace A { | |
int i; | |
void f(){ | |
i = 0; | |
} | |
} | |
int g(); | |
int main () | |
{ | |
namespace B = A; | |
B::i=42; | |
B::f(); | |
using namespace B; | |
f(); | |
// A::i is now 0, B::i is 1 | |
return g(); | |
} | |
namespace B { | |
int i = 1; | |
} | |
int g() | |
{ | |
namespace x = A; | |
if (x::i) | |
{ | |
namespace x = B; | |
return x::i; | |
} | |
return x::i; | |
} |