Uma declaração de uso não pode ser repetida no escopo da função. Por que é que?
No [namespace.udecl] / 10, você tem o seguinte exemplo:
namespace A {
int i;
}
namespace A1 {
using A::i;
using A::i; // OK: double declaration
}
void f() {
using A::i;
using A::i; // error: double declaration
}
Esse trecho é compilado no clang.