Соответствует ли объявление, использующее «auto», внешнему объявлению, в котором используется конкретный спецификатор типа?
Рассмотрим следующую программу:
extern int x;
auto x = 42;
int main() { }
Clang 3.5 принимает его (живое демо), GCC 4.9 и VS2013 нет (живое демо для бывшего). Кто прав, и где в стандарте C ++ указано правильное поведение?