Erro do compilador C2589
'identifier': token inválido no lado direito de '::'
Se um nome de classe, estrutura ou união aparecer à esquerda do operador de resolução de escopo (dois pontos), o token à direita precisará ser um membro de classe, estrutura ou união. Caso contrário, qualquer identificador global pode aparecer à direita.
O operador de resolução de escopo não pode ser sobrecarregado.
O seguinte exemplo gera o erro C2589:
// C2589.cpp
void Test(){}
class A {};
void operator :: (); // C2589
int main() {
::Test();
}