Why is the using directive using namespace std; in when enclosed in an anonymous namespace behaves as if it appeared at global scope?
#include <iostream>
namespace x
{
using namespace std;
void g()
{
cout << 1;
}
}
int main()
{
cout << 1; // compiles fine if `namespace x` is replaced with `namespace`
}