diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 58c35b397af4f8cdb96744daec909eaf8d501c6c..5412506d9dbcacc243abff019dee9a381bac8c82 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2011-05-04  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* stor-layout.c (variable_size): Do not issue errors.
+
 2011-05-04  Richard Guenther  <rguenther@suse.de>
 
 	* coverage.c (tree_coverage_counter_ref): Use integer_type_node
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 37865a75d6b66ea34b90088be21e8a16fdfe3af1..88c090b4681de22b7b2816d7fb9146be09aede6a 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -152,16 +152,6 @@ variable_size (tree size)
        that determine sizes for variable size objects.  Trust it.  */
     return size;
 
-  if (lang_hooks.decls.global_bindings_p ())
-    {
-      if (TREE_CONSTANT (size))
-	error ("type size can%'t be explicitly evaluated");
-      else
-	error ("variable-size type declared outside of any function");
-
-      return size_one_node;
-    }
-
   put_pending_size (save);
 
   return size;