aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@casey.cygnus.com>2000-03-08 15:56:16 +0000
committerJason Merrill <jason@gcc.gnu.org>2000-03-08 10:56:16 -0500
commit967561999ccb9c46f692b62ee7b83ce1e099ca2a (patch)
tree7a68c1fc23fc74c65b732b73e560a8804e8e6fde /gcc
parent4730fa4fadc52d73257e885543b5d60ade9d1d49 (diff)
downloadgcc-967561999ccb9c46f692b62ee7b83ce1e099ca2a.zip
gcc-967561999ccb9c46f692b62ee7b83ce1e099ca2a.tar.gz
gcc-967561999ccb9c46f692b62ee7b83ce1e099ca2a.tar.bz2
typeck2.c (process_init_constructor): Set TREE_PURPOSE of array CONSTRUCTOR elements.
* typeck2.c (process_init_constructor): Set TREE_PURPOSE of array CONSTRUCTOR elements. Don't use expr_tree_cons. From-SVN: r32422
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/typeck2.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index c4af8f9..1fe2948 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2000-03-08 Jason Merrill <jason@casey.cygnus.com>
+
+ * typeck2.c (process_init_constructor): Set TREE_PURPOSE of
+ array CONSTRUCTOR elements. Don't use expr_tree_cons.
+
2000-03-08 Nathan Sidwell <nathan@codesourcery.com>
* decl.c (cp_make_fname_decl): New function.
diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c
index 9c1a33e..e3614d7 100644
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -811,7 +811,7 @@ process_init_constructor (type, init, elts)
allconstant = 0;
else if (! initializer_constant_valid_p (next1, TREE_TYPE (next1)))
allsimple = 0;
- members = expr_tree_cons (NULL_TREE, next1, members);
+ members = tree_cons (size_int (i), next1, members);
}
}
else if (TREE_CODE (type) == RECORD_TYPE)
@@ -844,7 +844,7 @@ process_init_constructor (type, init, elts)
{
if (! DECL_NAME (field) && DECL_C_BIT_FIELD (field))
{
- members = expr_tree_cons (field, integer_zero_node, members);
+ members = tree_cons (field, integer_zero_node, members);
continue;
}
@@ -920,7 +920,7 @@ process_init_constructor (type, init, elts)
allconstant = 0;
else if (! initializer_constant_valid_p (next1, TREE_TYPE (next1)))
allsimple = 0;
- members = expr_tree_cons (field, next1, members);
+ members = tree_cons (field, next1, members);
}
}
else if (TREE_CODE (type) == UNION_TYPE
@@ -991,7 +991,7 @@ process_init_constructor (type, init, elts)
allconstant = 0;
else if (initializer_constant_valid_p (next1, TREE_TYPE (next1)) == 0)
allsimple = 0;
- members = expr_tree_cons (field, next1, members);
+ members = tree_cons (field, next1, members);
}
/* If arguments were specified as a list, just remove the ones we used. */