¿Por qué no funciona la palabra clave 'auto' de C ++ 11 para miembros estáticos?

class Foo {
 public:
  static const char *constant_string;
};

auto Foo::constant_string = "foo";

int main(void) {
};

Compilado con: gcc (Ubuntu / Linaro 4.6.3-1ubuntu5) 4.6.3 así:

gcc -std=c++0x ./foo.cc 
./foo.cc:6:11: error: conflicting declaration ‘auto Foo::constant_string’
./foo.cc:3:22: error: ‘Foo::constant_string’ has a previous declaration as ‘const char* Foo::constant_string’
./foo.cc:6:11: error: declaration of ‘const char* Foo::constant_string’ outside of class is not definition [-fpermissive]

Es este comportamiento intencionado de laauto palabra clave, o un error en gcc +

Respuestas a la pregunta(2)

Su respuesta a la pregunta