This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
c++/g++ patch for /cp directory warnings
- To: jason at cygnus dot com
- Subject: c++/g++ patch for /cp directory warnings
- From: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Date: Fri, 16 Oct 1998 21:18:50 -0400 (EDT)
- Cc: egcs-patches at cygnus dot com
Here's one more bit for the /cp directory. Okay to install?
Fri Oct 16 21:04:01 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* class.c (make_method_vec): Cast 1st argument of `bzero' to (PTR).
(add_method): Likewise for arguments 1 & 2 of `bcopy'.
* decl.c (signal_catch): Mark with ATTRIBUTE_NORETURN.
* pt.c (process_partial_specialization): Cast 1st argument of
`bzero' to (PTR).
* tree.c (build_base_fields): Cast `base_align' to (int) when
comparing against one.
diff -rup orig/egcs-CVS19981015/gcc/cp/class.c egcs-CVS19981015/gcc/cp/class.c
--- orig/egcs-CVS19981015/gcc/cp/class.c Thu Oct 15 19:59:56 1998
+++ egcs-CVS19981015/gcc/cp/class.c Fri Oct 16 15:03:41 1998
@@ -1091,7 +1091,7 @@ make_method_vec (n)
new_vec = *t;
*t = TREE_CHAIN (new_vec);
TREE_CHAIN (new_vec) = NULL_TREE;
- bzero (&TREE_VEC_ELT (new_vec, 0), n * sizeof (tree));
+ bzero ((PTR) &TREE_VEC_ELT (new_vec, 0), n * sizeof (tree));
return new_vec;
}
@@ -1177,8 +1177,8 @@ add_method (type, fields, method)
{
/* We need a bigger method vector. */
tree new_vec = make_method_vec (2 * len);
- bcopy (&TREE_VEC_ELT (method_vec, 0),
- &TREE_VEC_ELT (new_vec, 0),
+ bcopy ((PTR) &TREE_VEC_ELT (method_vec, 0),
+ (PTR) &TREE_VEC_ELT (new_vec, 0),
len * sizeof (tree));
free_method_vec (method_vec);
len = 2 * len;
@@ -1219,8 +1219,8 @@ add_method (type, fields, method)
/* We know the last slot in the vector is empty
because we know that at this point there's room for
a new function. */
- bcopy (&TREE_VEC_ELT (method_vec, i),
- &TREE_VEC_ELT (method_vec, i + 1),
+ bcopy ((PTR) &TREE_VEC_ELT (method_vec, i),
+ (PTR) &TREE_VEC_ELT (method_vec, i + 1),
(len - i - 1) * sizeof (tree));
TREE_VEC_ELT (method_vec, i) = NULL_TREE;
}
diff -rup orig/egcs-CVS19981009/gcc/cp/decl.c egcs-CVS19981009/gcc/cp/decl.c
--- orig/egcs-CVS19981009/gcc/cp/decl.c Fri Oct 9 23:57:14 1998
+++ egcs-CVS19981009/gcc/cp/decl.c Sun Oct 11 00:03:17 1998
@@ -146,7 +146,7 @@ static void resume_binding_level PROTO((
static struct binding_level *make_binding_level PROTO((void));
static int namespace_bindings_p PROTO((void));
static void declare_namespace_level PROTO((void));
-static void signal_catch PROTO((int));
+static void signal_catch PROTO((int)) ATTRIBUTE_NORETURN;
static void storedecls PROTO((tree));
static void storetags PROTO((tree));
static void require_complete_types_for_parms PROTO((tree));
diff -rup orig/egcs-CVS19981015/gcc/cp/pt.c egcs-CVS19981015/gcc/cp/pt.c
--- orig/egcs-CVS19981015/gcc/cp/pt.c Thu Oct 15 19:59:54 1998
+++ egcs-CVS19981015/gcc/cp/pt.c Fri Oct 16 15:03:41 1998
@@ -1907,10 +1907,10 @@ process_partial_specialization (decl)
or some such would have been OK. */
tpd.level = TMPL_PARMS_DEPTH (current_template_parms);
tpd.parms = alloca (sizeof (int) * ntparms);
- bzero (tpd.parms, sizeof (int) * ntparms);
+ bzero ((PTR) tpd.parms, sizeof (int) * ntparms);
tpd.arg_uses_template_parms = alloca (sizeof (int) * nargs);
- bzero (tpd.arg_uses_template_parms, sizeof (int) * nargs);
+ bzero ((PTR) tpd.arg_uses_template_parms, sizeof (int) * nargs);
for (i = 0; i < nargs; ++i)
{
tpd.current_arg = i;
@@ -1993,7 +1993,7 @@ process_partial_specialization (decl)
template, not in the specialization. */
tpd2.current_arg = i;
tpd2.arg_uses_template_parms[i] = 0;
- bzero (tpd2.parms, sizeof (int) * nargs);
+ bzero ((PTR) tpd2.parms, sizeof (int) * nargs);
for_each_template_parm (type,
&mark_template_parm,
&tpd2);
diff -rup orig/egcs-CVS19981015/gcc/cp/tree.c egcs-CVS19981015/gcc/cp/tree.c
--- orig/egcs-CVS19981015/gcc/cp/tree.c Thu Oct 15 20:00:05 1998
+++ egcs-CVS19981015/gcc/cp/tree.c Fri Oct 16 15:03:41 1998
@@ -806,7 +806,7 @@ build_base_fields (rec)
base_align = MAX (base_align, DECL_ALIGN (decl));
DECL_SIZE (decl)
= size_int (MAX (TREE_INT_CST_LOW (DECL_SIZE (decl)),
- base_align));
+ (int) base_align));
}
else if (DECL_SIZE (decl) == integer_zero_node)
saw_empty = 1;