¿Debería (en C ++ 11) std :: vector :: resize (size_type) trabajar para el value_type int. Constructible predeterminado [4]?

En C ++ 11, hay dos versiones destd::vector::resize():

void resize( size_type count );
void resize( size_type count, const value_type& value);

Entiendo (como lo sugiere uno de los comentarios a una de las respuestas aesta pregunta) que lo primero requierevalue_type ser constructible por defecto, mientras que el segundo requiere que sea copiable constructible. Sin embargo, (gcc 4.7.0)

using namespace std;
typedef int block[4];
vector<block> A;
static_assert(is_default_constructible<block>::value,";-("); //  does not fire
A.resize(100);                                               //  compiler error

Así que o mi entendimiento fue incorrecto o gcc está defectuoso. ¿Cual?