aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKazu Hirata <kazu@cs.umass.edu>2005-05-07 02:29:34 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2005-05-07 02:29:34 +0000
commit9857866d53d6675bfad833ac3a0285fd9c2cba87 (patch)
tree9e44532889ee3de07440e82a17c4a52c51902938
parent8d9e4906a8d38d856f9a020dcb6f0d7b643b854b (diff)
downloadgcc-9857866d53d6675bfad833ac3a0285fd9c2cba87.zip
gcc-9857866d53d6675bfad833ac3a0285fd9c2cba87.tar.gz
gcc-9857866d53d6675bfad833ac3a0285fd9c2cba87.tar.bz2
decl.c (wrapup_globals_for_namespace): Use VEC instead of VARRAY.
* decl.c (wrapup_globals_for_namespace): Use VEC instead of VARRAY. * name-lookup.c (add_decl_to_level, begin_scope): Likewise. * name-lookup.h (cp_binding_level): Change the type of static_decls to VEC(tree,gc)*. From-SVN: r99346
-rw-r--r--gcc/cp/ChangeLog8
-rw-r--r--gcc/cp/decl.c6
-rw-r--r--gcc/cp/name-lookup.c12
-rw-r--r--gcc/cp/name-lookup.h2
4 files changed, 18 insertions, 10 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index afb3073..5b229ef 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,11 @@
+2005-05-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * decl.c (wrapup_globals_for_namespace): Use VEC instead of
+ VARRAY.
+ * name-lookup.c (add_decl_to_level, begin_scope): Likewise.
+ * name-lookup.h (cp_binding_level): Change the type of
+ static_decls to VEC(tree,gc)*.
+
2005-05-06 Kazu Hirata <kazu@cs.umass.edu>
* decl2.c (spew_debug): Remove.
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index eb3bf4d..15f74c0 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -786,9 +786,9 @@ int
wrapup_globals_for_namespace (tree namespace, void* data)
{
struct cp_binding_level *level = NAMESPACE_LEVEL (namespace);
- varray_type statics = level->static_decls;
- tree *vec = &VARRAY_TREE (statics, 0);
- int len = VARRAY_ACTIVE_SIZE (statics);
+ VEC(tree,gc) *statics = level->static_decls;
+ tree *vec = VEC_address (tree, statics);
+ int len = VEC_length (tree, statics);
int last_time = (data != 0);
if (last_time)
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index 78f8325..0bb8888 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -546,7 +546,7 @@ add_decl_to_level (tree decl, cxx_scope *b)
&& (TREE_STATIC (decl) || DECL_EXTERNAL (decl)))
|| (TREE_CODE (decl) == FUNCTION_DECL
&& (!TREE_PUBLIC (decl) || DECL_DECLARED_INLINE_P (decl))))
- VARRAY_PUSH_TREE (b->static_decls, decl);
+ VEC_safe_push (tree, gc, b->static_decls, decl);
}
}
@@ -1264,11 +1264,11 @@ begin_scope (scope_kind kind, tree entity)
case sk_namespace:
NAMESPACE_LEVEL (entity) = scope;
- VARRAY_TREE_INIT (scope->static_decls,
- DECL_NAME (entity) == std_identifier
- || DECL_NAME (entity) == global_scope_name
- ? 200 : 10,
- "Static declarations");
+ scope->static_decls =
+ VEC_alloc (tree, gc,
+ DECL_NAME (entity) == std_identifier
+ || DECL_NAME (entity) == global_scope_name
+ ? 200 : 10);
break;
default:
diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h
index 5aeb80b..19bcec0 100644
--- a/gcc/cp/name-lookup.h
+++ b/gcc/cp/name-lookup.h
@@ -188,7 +188,7 @@ struct cp_binding_level GTY(())
tree namespaces;
/* An array of static functions and variables (for namespaces only) */
- varray_type static_decls;
+ VEC(tree,gc) *static_decls;
/* A chain of VTABLE_DECL nodes. */
tree vtables;