aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2010-10-26 13:57:44 -0400
committerJason Merrill <jason@gcc.gnu.org>2010-10-26 13:57:44 -0400
commit73c982bc87c8eb33a37ba3242f8d82bc512e4189 (patch)
tree2c4d0d47dbb85a790610e7ccb33d3f1c3347def5 /gcc
parent701c0df13eb1258e38e1b91a459c9e08d4d42d23 (diff)
downloadgcc-73c982bc87c8eb33a37ba3242f8d82bc512e4189.zip
gcc-73c982bc87c8eb33a37ba3242f8d82bc512e4189.tar.gz
gcc-73c982bc87c8eb33a37ba3242f8d82bc512e4189.tar.bz2
varasm.c (constructor_static_from_elts_p): Don't require a CONSTRUCTOR to have elements to be suitable for static...
* varasm.c (constructor_static_from_elts_p): Don't require a CONSTRUCTOR to have elements to be suitable for static initialization. Allow ARRAY_TYPE as well. From-SVN: r165975
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/varasm.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 48d6bdd..5454f67 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-10-26 Jason Merrill <jason@redhat.com>
+
+ * varasm.c (constructor_static_from_elts_p): Don't require a
+ CONSTRUCTOR to have elements to be suitable for static
+ initialization. Allow ARRAY_TYPE as well.
+
2010-10-26 Jan Hubicka <jh@suse.cz>
PR middle-end/45736
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 03e25dd..20c4ffd 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -3901,8 +3901,8 @@ constructor_static_from_elts_p (const_tree ctor)
{
return (TREE_CONSTANT (ctor)
&& (TREE_CODE (TREE_TYPE (ctor)) == UNION_TYPE
- || TREE_CODE (TREE_TYPE (ctor)) == RECORD_TYPE)
- && !VEC_empty (constructor_elt, CONSTRUCTOR_ELTS (ctor)));
+ || TREE_CODE (TREE_TYPE (ctor)) == RECORD_TYPE
+ || TREE_CODE (TREE_TYPE (ctor)) == ARRAY_TYPE));
}
static tree initializer_constant_valid_p_1 (tree value, tree endtype,