namespace A{
int i;
}
int main(){
using A::i;
using A::i;
}
VS2010 - компилирует fine
gcc (ideone) - компилирует fine
Comeau - дает ошибку "ComeauTest.c", строка 10: ошибка: "я" уже объявлена в текущей области используя A:: i; "
$7.3.3/8 - "Использование-декларация - это декларация и поэтому могут быть использованы неоднократно, где (и только там) разрешено несколько деклараций.
В приведенном ниже примере показано, что код действительно плохо сформирован.
Итак, это ошибка в GCC и VS2010?
ИЗМЕНИТЬ 2:
Удалите множественный using directives
, поскольку он не был связан с запросом под рукой.