diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cf039beecbcb11c307b53d4e2659c4f3e14384a9..f4bb29835a9ffaac81b487561574459d09fde020 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,16 @@
+2000-07-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+	* c-decl.c (set_current_function_name_declared, anon_aggr_type_p,
+	lang_expand_stmt): Mark parameters with ATTRIBUTE_UNUSED.
+	
+	* c-parse.in (stmt): Delete unused variables.
+
+	* convert.c (convert_to_vector): Likewise.
+
+	* gensupport.c (process_rtx): Declare attr as `rtvec' not `rtx'.
+
+	* tree.c (finish_vector_type): Prototype.
+
 2000-07-12  Bruce Korb  <bkorb@gnu.org>
 
 	* fixinc/fixfixes.c: use xmalloc
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 239bf1327fd4d7cd2e54df4ca6948532b7b73129..619c20c121620ff8ca42e06e5c26818c5924bf18 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -6818,7 +6818,7 @@ stmts_are_full_exprs_p ()
 
 int 
 anon_aggr_type_p (node)
-     tree node;
+     tree node ATTRIBUTE_UNUSED;
 {
   return 0;
 }
@@ -6904,7 +6904,7 @@ do_case (low_value, high_value)
 
 tree
 lang_expand_stmt (t)
-     tree t;
+     tree t ATTRIBUTE_UNUSED;
 {
   abort ();
   return NULL_TREE;
@@ -6914,7 +6914,7 @@ lang_expand_stmt (t)
 
 void
 set_current_function_name_declared (i)
-     int i;
+     int i ATTRIBUTE_UNUSED;
 {
   abort ();
 }
diff --git a/gcc/c-parse.in b/gcc/c-parse.in
index 646183cc340ce4efbba1b31c731d2396acdf0271..04e160d02ee91e7a6ec979eee0e4089052dc1dde 100644
--- a/gcc/c-parse.in
+++ b/gcc/c-parse.in
@@ -1843,11 +1843,11 @@ stmt:
 	  lineno_labeled_stmt
 		{ expand_end_case ($3); }
 	| BREAK ';'
-	        { tree break_stmt = build_break_stmt ();
+	        { build_break_stmt ();
 		  stmt_count++;
 		  genrtl_break_stmt (); }
 	| CONTINUE ';'
-                { tree continue_stmt = build_continue_stmt ();
+                { build_continue_stmt ();
                   stmt_count++;
 		  genrtl_continue_stmt (); }
 	| RETURN ';'
diff --git a/gcc/convert.c b/gcc/convert.c
index 6eea7d684c60c1374c8c0395ddd075e665f296a8..dd1b91a4e0b1bfb6a21e0f230a5e4bc8f18546e9 100644
--- a/gcc/convert.c
+++ b/gcc/convert.c
@@ -460,8 +460,6 @@ tree
 convert_to_vector (type, expr)
      tree type, expr;
 {
-  tree subtype = TREE_TYPE (type);
-  
   switch (TREE_CODE (TREE_TYPE (expr)))
     {
     case INTEGER_TYPE:
diff --git a/gcc/gensupport.c b/gcc/gensupport.c
index 44bd3f2e9a42ed28c807a1472760a20df666fa62..ce4869bccbee3ebaf6856790d95a6e8e3e70af23 100644
--- a/gcc/gensupport.c
+++ b/gcc/gensupport.c
@@ -173,7 +173,8 @@ process_rtx (desc, lineno)
     case DEFINE_INSN_AND_SPLIT:
       {
 	const char *split_cond;
-	rtx split, attr;
+	rtx split;
+	rtvec attr;
 	int i;
 
 	/* Create a split with values from the insn_and_split. */
diff --git a/gcc/tree.c b/gcc/tree.c
index e1551c56338ed3eb994ad931d0f1c1c61e345b35..e2ffc4b41d463bb653c047993686118ba5c2cf61 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -279,6 +279,7 @@ static int type_hash_eq PARAMS ((const void*, const void*));
 static unsigned int type_hash_hash PARAMS ((const void*));
 static void print_type_hash_statistics PARAMS((void));
 static int mark_hash_entry PARAMS((void **, void *));
+static void finish_vector_type PARAMS((tree));
 
 /* If non-null, these are language-specific helper functions for
    unsave_expr_now.  If present, LANG_UNSAVE is called before its