summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoroldham <oldham@138bc75d-0d04-0410-961f-82ee72b054a4>2000-12-30 15:31:49 +0000
committeroldham <oldham@138bc75d-0d04-0410-961f-82ee72b054a4>2000-12-30 15:31:49 +0000
commit36c543f3af6e0f178cfb353d26f391bdfea443b2 (patch)
tree0028dd6b4eaeadecea47974de64d9f41192d90cd
parent355c57f878d3104e6cc8dfb23ab953956ede0437 (diff)
downloadgcc-36c543f3af6e0f178cfb353d26f391bdfea443b2.tar.gz
2000-12-30 Jeffrey Oldham <oldham@codesourcery.com>
* defaults.h (BUILD_VA_LIST_TYPE): New definition. * tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node is a copy, not an alias. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38561 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/defaults.h4
-rw-r--r--gcc/tree.c10
3 files changed, 15 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index afeb33c6969..38ed3eb36b2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2000-12-30 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * defaults.h (BUILD_VA_LIST_TYPE): New definition.
+ * tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node
+ is a copy, not an alias.
+
2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* calls.c (calls_function_1, case CONSTRUCTOR): New case.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index f9f7bf56a06..2f2aee9346f 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -252,5 +252,9 @@ do { ASM_OUTPUT_LABEL(FILE,LABEL_ALTERNATE_NAME (INSN)); } while (0)
#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
#endif
+#ifndef BUILD_VA_LIST_TYPE
+#define BUILD_VA_LIST_TYPE(X) ((X) = ptr_type_node)
+#endif
+
#endif /* GCC_DEFAULTS_H */
diff --git a/gcc/tree.c b/gcc/tree.c
index 03cae0aaa21..a836b99ea2a 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -4837,11 +4837,11 @@ build_common_tree_nodes_2 (short_double)
TREE_TYPE (complex_long_double_type_node) = long_double_type_node;
layout_type (complex_long_double_type_node);
-#ifdef BUILD_VA_LIST_TYPE
- BUILD_VA_LIST_TYPE (va_list_type_node);
-#else
- va_list_type_node = build_type_copy (ptr_type_node);
-#endif
+ {
+ tree t;
+ BUILD_VA_LIST_TYPE (t);
+ va_list_type_node = build_type_copy (t);
+ }
V4SF_type_node = make_node (VECTOR_TYPE);
TREE_TYPE (V4SF_type_node) = float_type_node;