diff options
46 files changed, 184 insertions, 102 deletions
diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 1648452b242..48ea6304061 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1254,9 +1254,10 @@ c-decl.o : c-decl.c $(CONFIG_H) system.h $(TREE_H) c-tree.h c-lex.h flags.h \ output.h toplev.h c-typeck.o : c-typeck.c $(CONFIG_H) system.h $(TREE_H) c-tree.h flags.h \ output.h expr.h insn-codes.h $(RTL_H) toplev.h -c-lang.o : c-lang.c $(CONFIG_H) system.h $(TREE_H) +c-lang.o : c-lang.c $(CONFIG_H) system.h $(TREE_H) c-tree.h c-lex.h toplev.h c-lex.o : c-lex.c $(CONFIG_H) system.h $(TREE_H) $(RTL_H) c-lex.h c-tree.h \ - $(srcdir)/c-parse.h input.h flags.h $(srcdir)/c-gperf.h c-pragma.h toplev.h + $(srcdir)/c-parse.h input.h flags.h $(srcdir)/c-gperf.h c-pragma.h \ + toplev.h output.h c-aux-info.o : c-aux-info.c $(CONFIG_H) system.h $(TREE_H) c-tree.h flags.h c-convert.o : c-convert.c $(CONFIG_H) system.h $(TREE_H) flags.h toplev.h c-pragma.o: c-pragma.c $(CONFIG_H) system.h $(TREE_H) except.h function.h \ @@ -1299,7 +1300,7 @@ s-under: $(GCC_PASSES) # A file used by all variants of C. c-common.o : c-common.c $(CONFIG_H) system.h $(TREE_H) c-tree.h c-lex.h \ - flags.h toplev.h + flags.h toplev.h output.h # Language-independent files. @@ -1354,7 +1355,7 @@ function.o : function.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ insn-config.h $(RECOG_H) output.h toplev.h stmt.o : stmt.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ insn-flags.h insn-config.h insn-codes.h hard-reg-set.h expr.h except.h \ - loop.h $(RECOG_H) toplev.h + loop.h $(RECOG_H) toplev.h output.h except.o : except.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ function.h insn-flags.h insn-codes.h expr.h regs.h hard-reg-set.h \ insn-config.h $(RECOG_H) output.h except.h toplev.h @@ -1362,7 +1363,7 @@ expr.o : expr.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ regs.h insn-flags.h insn-codes.h expr.h insn-config.h $(RECOG_H) output.h \ typeclass.h hard-reg-set.h toplev.h calls.o : calls.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h expr.h \ - insn-codes.h insn-flags.h regs.h toplev.h + insn-codes.h insn-flags.h regs.h toplev.h output.h expmed.o : expmed.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ insn-flags.h insn-config.h insn-codes.h expr.h $(RECOG_H) real.h explow.o : explow.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ @@ -1389,7 +1390,7 @@ getpwd.o : getpwd.c $(CONFIG_H) system.h integrate.o : integrate.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ integrate.h insn-flags.h insn-config.h insn-codes.h expr.h real.h regs.h \ - function.h output.h $(RECOG_H) except.h + function.h output.h $(RECOG_H) except.h toplev.h jump.o : jump.c $(CONFIG_H) system.h $(RTL_H) flags.h hard-reg-set.h regs.h \ insn-config.h insn-codes.h insn-flags.h $(RECOG_H) expr.h real.h except.h @@ -1409,7 +1410,8 @@ combine.o : combine.c $(CONFIG_H) system.h $(RTL_H) flags.h \ insn-config.h insn-flags.h insn-codes.h insn-attr.h regs.h expr.h \ $(BASIC_BLOCK_H) $(RECOG_H) real.h hard-reg-set.h regclass.o : regclass.c $(CONFIG_H) system.h $(RTL_H) hard-reg-set.h flags.h \ - $(BASIC_BLOCK_H) regs.h insn-config.h $(RECOG_H) reload.h real.h toplev.h + $(BASIC_BLOCK_H) regs.h insn-config.h $(RECOG_H) reload.h real.h toplev.h \ + output.h local-alloc.o : local-alloc.c $(CONFIG_H) system.h $(RTL_H) flags.h \ $(BASIC_BLOCK_H) regs.h hard-reg-set.h insn-config.h $(RECOG_H) output.h bitmap.o : bitmap.c $(CONFIG_H) system.h $(RTL_H) flags.h $(BASIC_BLOCK_H) \ @@ -1439,7 +1441,7 @@ $(SCHED_PREFIX)sched.o : $(SCHED_PREFIX)sched.c $(CONFIG_H) system.h $(RTL_H) \ final.o : final.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h regs.h \ $(RECOG_H) conditions.h insn-config.h insn-attr.h except.h real.h output.h \ hard-reg-set.h insn-flags.h insn-codes.h gstab.h xcoffout.h defaults.h \ - toplev.h + toplev.h reload.h recog.o : recog.c $(CONFIG_H) system.h $(RTL_H) \ regs.h $(RECOG_H) hard-reg-set.h flags.h insn-config.h insn-attr.h \ insn-flags.h insn-codes.h real.h diff --git a/gcc/c-common.c b/gcc/c-common.c index 913e2e20b97..bc93ea28d03 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -26,6 +26,7 @@ Boston, MA 02111-1307, USA. */ #include "flags.h" #include "obstack.h" #include "toplev.h" +#include "output.h" #ifndef WCHAR_TYPE_SIZE #ifdef INT_TYPE_SIZE @@ -1235,7 +1236,6 @@ check_format_info (info, params) int length_char; int format_char; int format_length; - int integral_format; tree format_tree; tree cur_param; tree cur_type; diff --git a/gcc/c-decl.c b/gcc/c-decl.c index ba67ec5c037..6a0e0eaceeb 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -808,17 +808,17 @@ c_decode_option (p) void print_lang_decl (file, node, indent) - FILE *file; - tree node; - int indent; + FILE *file ATTRIBUTE_UNUSED; + tree node ATTRIBUTE_UNUSED; + int indent ATTRIBUTE_UNUSED; { } void print_lang_type (file, node, indent) - FILE *file; - tree node; - int indent; + FILE *file ATTRIBUTE_UNUSED; + tree node ATTRIBUTE_UNUSED; + int indent ATTRIBUTE_UNUSED; { } @@ -4083,7 +4083,7 @@ finish_decl (decl, init, asmspec_tree) tree maybe_build_cleanup (decl) - tree decl; + tree decl ATTRIBUTE_UNUSED; { /* There are no cleanups in C. */ return NULL_TREE; @@ -7296,6 +7296,6 @@ pop_c_function_context () void copy_lang_decl (node) - tree node; + tree node ATTRIBUTE_UNUSED; { } diff --git a/gcc/c-lang.c b/gcc/c-lang.c index 326b97f9096..ca1e9fef443 100644 --- a/gcc/c-lang.c +++ b/gcc/c-lang.c @@ -23,6 +23,9 @@ Boston, MA 02111-1307, USA. */ #include "system.h" #include "tree.h" #include "input.h" +#include "c-tree.h" +#include "c-lex.h" +#include "toplev.h" /* Each of the functions defined here is an alternative to a function in objc-actions.c. */ @@ -65,9 +68,9 @@ print_lang_statistics () void lang_print_xnode (file, node, indent) - FILE *file; - tree node; - int indent; + FILE *file ATTRIBUTE_UNUSED; + tree node ATTRIBUTE_UNUSED; + int indent ATTRIBUTE_UNUSED; { } @@ -75,35 +78,36 @@ lang_print_xnode (file, node, indent) tree lookup_interface (arg) - tree arg; + tree arg ATTRIBUTE_UNUSED; { return 0; } tree is_class_name (arg) - tree arg; + tree arg ATTRIBUTE_UNUSED; { return 0; } void maybe_objc_check_decl (decl) - tree decl; + tree decl ATTRIBUTE_UNUSED; { } int maybe_objc_comptypes (lhs, rhs, reflexive) - tree lhs, rhs; - int reflexive; + tree lhs ATTRIBUTE_UNUSED; + tree rhs ATTRIBUTE_UNUSED; + int reflexive ATTRIBUTE_UNUSED; { return -1; } tree maybe_objc_method_name (decl) - tree decl; + tree decl ATTRIBUTE_UNUSED; { return 0; } @@ -122,8 +126,8 @@ recognize_objc_keyword () tree build_objc_string (len, str) - int len; - char *str; + int len ATTRIBUTE_UNUSED; + char *str ATTRIBUTE_UNUSED; { abort (); return NULL_TREE; diff --git a/gcc/c-lex.c b/gcc/c-lex.c index 6f84131dc3e..a180711e813 100644 --- a/gcc/c-lex.c +++ b/gcc/c-lex.c @@ -25,6 +25,7 @@ Boston, MA 02111-1307, USA. */ #include "rtl.h" #include "tree.h" #include "input.h" +#include "output.h" #include "c-lex.h" #include "c-tree.h" #include "flags.h" diff --git a/gcc/c-lex.h b/gcc/c-lex.h index 66726ab7b3c..d0df996b263 100644 --- a/gcc/c-lex.h +++ b/gcc/c-lex.h @@ -75,7 +75,7 @@ extern char *token_buffer; /* Pointer to token buffer. */ extern tree make_pointer_declarator PROTO((tree, tree)); extern void reinit_parse_for_function PROTO((void)); -extern void position_after_whitespace PROTO((void)); +extern void position_after_white_space PROTO((void)); extern int check_newline PROTO((void)); extern int yylex PROTO((void)); diff --git a/gcc/c-tree.h b/gcc/c-tree.h index 69347835a9f..cca93884ec5 100644 --- a/gcc/c-tree.h +++ b/gcc/c-tree.h @@ -149,6 +149,7 @@ struct lang_type extern tree lookup_interface PROTO((tree)); extern tree is_class_name PROTO((tree)); extern void maybe_objc_check_decl PROTO((tree)); +extern void finish_file PROTO((void)); extern int maybe_objc_comptypes PROTO((tree, tree, int)); extern tree maybe_building_objc_message_expr PROTO((void)); extern tree maybe_objc_method_name PROTO((tree)); @@ -167,6 +168,9 @@ extern void check_function_format PROTO((tree, tree, tree)); NOP_EXPR is used as a special case (see truthvalue_conversion). */ extern void binary_op_error PROTO((enum tree_code)); extern void c_expand_expr_stmt PROTO((tree)); +extern void c_expand_start_cond PROTO((tree, int, int)); +extern void c_expand_start_else PROTO((void)); +extern void c_expand_end_cond PROTO((void)); /* Validate the expression after `case' and apply default promotions. */ extern tree check_case_value PROTO((tree)); /* Concatenate a list of STRING_CST nodes into one STRING_CST. */ @@ -366,6 +370,7 @@ extern void c_expand_return PROTO((tree)); extern tree c_expand_start_case PROTO((tree)); /* in c-iterate.c */ +extern void init_iterators PROTO((void)); extern void iterator_expand PROTO((tree)); extern void iterator_for_loop_start PROTO((tree)); extern void iterator_for_loop_end PROTO((tree)); diff --git a/gcc/caller-save.c b/gcc/caller-save.c index c808ecaeeea..375d2081097 100644 --- a/gcc/caller-save.c +++ b/gcc/caller-save.c @@ -505,7 +505,8 @@ save_call_clobbered_regs (insn_mode) static void set_reg_live (reg, setter) - rtx reg, setter; + rtx reg; + rtx setter ATTRIBUTE_UNUSED; { register int regno, endregno, i; enum machine_mode mode = GET_MODE (reg); diff --git a/gcc/calls.c b/gcc/calls.c index 16a0346c6a9..8133cc0f58a 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -32,6 +32,7 @@ Boston, MA 02111-1307, USA. */ #include "regs.h" #include "insn-flags.h" #include "toplev.h" +#include "output.h" /* Decide whether a function's arguments should be processed from first to last or from last to first. diff --git a/gcc/cccp.c b/gcc/cccp.c index cecdd2ac4eb..91aa331b072 100644 --- a/gcc/cccp.c +++ b/gcc/cccp.c @@ -10224,7 +10224,7 @@ pfatal_with_name (name) static void pipe_closed (signo) /* If this is missing, some compilers complain. */ - int signo; + int signo ATTRIBUTE_UNUSED; { fatal ("output pipe has been closed"); } diff --git a/gcc/combine.c b/gcc/combine.c index ef8ed46333d..68c084f047d 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -88,9 +88,10 @@ Boston, MA 02111-1307, USA. */ #include "flags.h" #include "regs.h" #include "hard-reg-set.h" -#include "expr.h" #include "basic-block.h" #include "insn-config.h" +/* Include expr.h after insn-config.h so we get HAVE_conditional_move. */ +#include "expr.h" #include "insn-flags.h" #include "insn-codes.h" #include "insn-attr.h" diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h index 55d42c7fc50..9d96225a4aa 100644 --- a/gcc/config/mips/iris6.h +++ b/gcc/config/mips/iris6.h @@ -118,8 +118,8 @@ Boston, MA 02111-1307, USA. */ /* The Irix 6.0.1 assembler doesn't like labels in the text section, so just avoid emitting them. */ -#define ASM_IDENTIFY_GCC -#define ASM_IDENTIFY_LANGUAGE +#define ASM_IDENTIFY_GCC(x) ((void)0) +#define ASM_IDENTIFY_LANGUAGE(x) ((void)0) /* Irix 5 stuff that we don't need for Irix 6. */ /* ??? We do need this for the -mabi=32 switch though. */ diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 5da733b8e07..8186f5fa7e8 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -6724,12 +6724,14 @@ sparc_check_64 (x, insn) set_once = 1; if (insn == 0) - if (set_once) - insn = get_last_insn_anywhere (); - else - return 0; + { + if (set_once) + insn = get_last_insn_anywhere (); + else + return 0; + } - while (insn = PREV_INSN (insn)) + while ((insn = PREV_INSN (insn))) { switch (GET_CODE (insn)) { diff --git a/gcc/cplus-dem.c b/gcc/cplus-dem.c index 266a112326f..8f6809100c5 100644 --- a/gcc/cplus-dem.c +++ b/gcc/cplus-dem.c @@ -230,7 +230,7 @@ typedef struct string /* Beware: these aren't required to be */ static char * mop_up PARAMS ((struct work_stuff *, string *, int)); -static char * +static void squangle_mop_up PARAMS ((struct work_stuff *)); #if 0 @@ -239,7 +239,7 @@ demangle_method_args PARAMS ((struct work_stuff *, const char **, string *)); #endif static char * -internal_cplus_demangle PARAMS ((struct work_stuff *, const char *, int)); +internal_cplus_demangle PARAMS ((struct work_stuff *, const char *)); static int demangle_template_template_parm PARAMS ((struct work_stuff *work, @@ -422,7 +422,7 @@ cplus_demangle_opname (opname, result, options) char *result; int options; { - int len, i, len1, ret; + int len, len1, ret; string type; struct work_stuff work[1]; const char *tem; @@ -453,6 +453,7 @@ cplus_demangle_opname (opname, result, options) if (opname[4] == '\0') { /* Operator. */ + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { if (strlen (optable[i].in) == 2 @@ -470,6 +471,7 @@ cplus_demangle_opname (opname, result, options) if (opname[2] == 'a' && opname[5] == '\0') { /* Assignment. */ + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { if (strlen (optable[i].in) == 3 @@ -493,6 +495,7 @@ cplus_demangle_opname (opname, result, options) if (len >= 10 /* op$assign_ */ && memcmp (opname + 3, "assign_", 7) == 0) { + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { len1 = len - 10; @@ -509,6 +512,7 @@ cplus_demangle_opname (opname, result, options) } else { + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { len1 = len - 3; @@ -551,7 +555,7 @@ cplus_mangle_opname (opname, options) const char *opname; int options; { - int i; + size_t i; int len; len = strlen (opname); @@ -605,7 +609,7 @@ cplus_demangle (mangled, options) if ((work -> options & DMGL_STYLE_MASK) == 0) work -> options |= (int) current_demangling_style & DMGL_STYLE_MASK; - ret = internal_cplus_demangle (work, mangled, options); + ret = internal_cplus_demangle (work, mangled); squangle_mop_up (work); return (ret); } @@ -618,10 +622,9 @@ cplus_demangle (mangled, options) calls go directly to this routine to avoid resetting that info. */ static char * -internal_cplus_demangle (work, mangled, options) +internal_cplus_demangle (work, mangled) struct work_stuff *work; const char *mangled; - int options; { string decl; @@ -679,7 +682,7 @@ internal_cplus_demangle (work, mangled, options) /* Clear out and squangling related storage */ -static char * +static void squangle_mop_up (work) struct work_stuff *work; { @@ -1340,7 +1343,7 @@ demangle_template_value_parm (work, mangled, s) char *p = xmalloc (symbol_len + 1), *q; strncpy (p, *mangled, symbol_len); p [symbol_len] = '\0'; - q = internal_cplus_demangle (work, p, work->options); + q = internal_cplus_demangle (work, p); string_appendn (s, "&", 1); if (q) { @@ -2073,7 +2076,7 @@ gnu_special (work, mangled, declp) else if (strncmp (*mangled, "__thunk_", 8) == 0) { int delta = ((*mangled) += 8, consume_count (mangled)); - char *method = internal_cplus_demangle (work, ++*mangled, work->options); + char *method = internal_cplus_demangle (work, ++*mangled); if (method) { char buf[50]; diff --git a/gcc/cppexp.c b/gcc/cppexp.c index bf0b8a03d14..bb462af9524 100644 --- a/gcc/cppexp.c +++ b/gcc/cppexp.c @@ -617,7 +617,7 @@ left_shift (pfile, a, unsignedp, b) static long right_shift (pfile, a, unsignedp, b) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; long a; int unsignedp; unsigned long b; diff --git a/gcc/cpphash.c b/gcc/cpphash.c index 8fd1cca7311..b1375e14338 100644 --- a/gcc/cpphash.c +++ b/gcc/cpphash.c @@ -58,7 +58,7 @@ hashf (name, len, hashsize) HASHNODE * cpp_lookup (pfile, name, len, hash) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; const U_CHAR *name; int len; int hash; @@ -193,7 +193,7 @@ install (name, len, type, ivalue, value, hash) void cpp_hash_cleanup (pfile) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; { register int i; for (i = HASHSIZE; --i >= 0; ) diff --git a/gcc/cpplib.c b/gcc/cpplib.c index 80865afb161..08a30a6d321 100644 --- a/gcc/cpplib.c +++ b/gcc/cpplib.c @@ -242,6 +242,7 @@ static char *savestring (); static void conditional_skip (); static void skip_if_group (); +static int parse_name PARAMS ((cpp_reader *, int)); /* Last arg to output_line_command. */ enum file_change_code {same_file, enter_file, leave_file}; @@ -768,15 +769,15 @@ cpp_options_init (opts) enum cpp_token null_underflow (pfile) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; { return CPP_EOF; } int null_cleanup (pbuf, pfile) - cpp_buffer *pbuf; - cpp_reader *pfile; + cpp_buffer *pbuf ATTRIBUTE_UNUSED; + cpp_reader *pfile ATTRIBUTE_UNUSED; { return 0; } @@ -784,7 +785,7 @@ null_cleanup (pbuf, pfile) int macro_cleanup (pbuf, pfile) cpp_buffer *pbuf; - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; { HASHNODE *macro = (HASHNODE *) pbuf->data; if (macro->type == T_DISABLED) @@ -797,7 +798,7 @@ macro_cleanup (pbuf, pfile) int file_cleanup (pbuf, pfile) cpp_buffer *pbuf; - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; { if (pbuf->buf) { @@ -5200,7 +5201,7 @@ cpp_get_non_space_token (pfile) /* Parse an identifier starting with C. */ -int +static int parse_name (pfile, c) cpp_reader *pfile; int c; { diff --git a/gcc/cpplib.h b/gcc/cpplib.h index 346ce44037d..c474c3f9eb5 100644 --- a/gcc/cpplib.h +++ b/gcc/cpplib.h @@ -663,6 +663,11 @@ extern cpp_buffer *cpp_pop_buffer PARAMS ((cpp_reader *)); extern cpp_hashnode *cpp_lookup PARAMS ((cpp_reader *, const unsigned char *, int, int)); +extern void cpp_reader_init PARAMS ((cpp_reader *)); +extern void cpp_options_init PARAMS ((cpp_options *)); +extern int cpp_start_read PARAMS ((cpp_reader *, char *)); +extern int cpp_read_check_assertion PARAMS ((cpp_reader *)); +extern void skip_rest_of_line PARAMS ((cpp_reader *)); #ifdef __cplusplus } diff --git a/gcc/crtstuff.c b/gcc/crtstuff.c index e6238de5e9b..3c53cef81dd 100644 --- a/gcc/crtstuff.c +++ b/gcc/crtstuff.c @@ -274,7 +274,7 @@ __frame_dummy () #endif /* defined(INIT_SECTION_ASM_OP) */ /* Force cc1 to switch to .data section. */ -static func_ptr force_to_data[0] = { }; +static func_ptr force_to_data[0] __attribute__ ((__unused__)) = { }; /* NOTE: In order to be able to support SVR4 shared libraries, we arrange to have one set of symbols { __CTOR_LIST__, __DTOR_LIST__, __CTOR_END__, @@ -294,7 +294,8 @@ static func_ptr force_to_data[0] = { }; CTOR_LIST_BEGIN; #else asm (CTORS_SECTION_ASM_OP); /* cc1 doesn't know that we are switching! */ -STATIC func_ptr __CTOR_LIST__[1] = { (func_ptr) (-1) }; +STATIC func_ptr __CTOR_LIST__[1] __attribute__ ((__unused__)) + = { (func_ptr) (-1) }; #endif #ifdef DTOR_LIST_BEGIN @@ -421,7 +422,7 @@ __do_global_ctors () #endif /* defined(INIT_SECTION_ASM_OP) */ /* Force cc1 to switch to .data section. */ -static func_ptr force_to_data[0] = { }; +static func_ptr force_to_data[0] __attribute__ ((__unused__)) = { }; /* Put a word containing zero at the end of each of our two lists of function addresses. Note that the words defined here go into the .ctors and .dtors @@ -440,7 +441,8 @@ STATIC func_ptr __CTOR_END__[1] = { (func_ptr) 0 }; DTOR_LIST_END; #else asm (DTORS_SECTION_ASM_OP); /* cc1 doesn't know that we are switching! */ -STATIC func_ptr __DTOR_END__[1] = { (func_ptr) 0 }; +STATIC func_ptr __DTOR_END__[1] __attribute__ ((__unused__)) + = { (func_ptr) 0 }; #endif #ifdef EH_FRAME_SECTION_ASM_OP @@ -449,7 +451,7 @@ STATIC func_ptr __DTOR_END__[1] = { (func_ptr) 0 }; typedef unsigned int ui32 __attribute__ ((mode (SI))); asm (EH_FRAME_SECTION_ASM_OP); -STATIC ui32 __FRAME_END__[] = { 0 }; +STATIC ui32 __FRAME_END__[] __attribute__ ((__unused__)) = { 0 }; #endif /* EH_FRAME_SECTION */ #endif /* defined(CRT_END) */ diff --git a/gcc/cse.c b/gcc/cse.c index 26dd99132ff..6d513c121be 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -7933,7 +7933,7 @@ static rtx cse_check_loop_start_value; static void cse_check_loop_start (x, set) rtx x; - rtx set; + rtx set ATTRIBUTE_UNUSED; { if (cse_check_loop_start_value == 0 || GET_CODE (x) == CC0 || GET_CODE (x) == PC) diff --git a/gcc/dbxout.c b/gcc/dbxout.c index eed81f59e2a..dc7b754af43 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -134,6 +134,13 @@ Boston, MA 02111-1307, USA. */ #endif #endif +char *getpwd (); + +/* Typical USG systems don't have stab.h, and they also have + no use for DBX-format debugging info. */ + +#if defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO) + static int flag_minimal_debug = MINIMAL_DEBUG; /* Nonzero if we have actually used any of the GDB extensions @@ -148,13 +155,6 @@ static int have_used_extensions = 0; static int source_label_number = 1; -char *getpwd (); - -/* Typical USG systems don't have stab.h, and they also have - no use for DBX-format debugging info. */ - -#if defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO) - #ifdef DEBUG_SYMS_TEXT #define FORCE_TEXT text_section (); #else diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index a48bd84fd67..12ad09a79e1 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -2506,7 +2506,9 @@ static tree member_declared_type PROTO((tree)); static char *decl_start_label PROTO((tree)); static void gen_array_type_die PROTO((tree, dw_die_ref)); static void gen_set_type_die PROTO((tree, dw_die_ref)); +#if 0 static void gen_entry_point_die PROTO((tree, dw_die_ref)); +#endif static void pend_type PROTO((tree)); static void output_pending_types_for_scope PROTO((dw_die_ref)); static void gen_inlined_enumeration_type_die PROTO((tree, dw_die_ref)); @@ -7816,6 +7818,7 @@ gen_set_type_die (type, context_die) add_type_attribute (type_die, TREE_TYPE (type), 0, 0, context_die); } +#if 0 static void gen_entry_point_die (decl, context_die) register tree decl; @@ -7837,6 +7840,7 @@ gen_entry_point_die (decl, context_die) else add_AT_lbl_id (decl_die, DW_AT_low_pc, decl_start_label (decl)); } +#endif /* Remember a type in the pending_types_list. */ diff --git a/gcc/except.h b/gcc/except.h index 0356bd398e9..d93a8c979d8 100644 --- a/gcc/except.h +++ b/gcc/except.h @@ -139,6 +139,10 @@ extern rtx catch_clauses; #endif +/* Test: is exception handling turned on? */ + +extern int doing_eh PROTO ((int)); + /* Toplevel initialization for EH. */ extern void init_eh PROTO((void)); diff --git a/gcc/expr.c b/gcc/expr.c index d416e922718..dcbde150588 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -32,8 +32,9 @@ Boston, MA 02111-1307, USA. */ #include "function.h" #include "insn-flags.h" #include "insn-codes.h" -#include "expr.h" #include "insn-config.h" +/* Include expr.h after insn-config.h so we get HAVE_conditional_move. */ +#include "expr.h" #include "recog.h" #include "output.h" #include "typeclass.h" diff --git a/gcc/final.c b/gcc/final.c index 6781456c1bd..d45b5774196 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -68,6 +68,7 @@ Boston, MA 02111-1307, USA. */ #include "output.h" #include "except.h" #include "toplev.h" +#include "reload.h" /* Get N_SLINE and N_SOL from stab.h if we can expect the file to exist. */ #if defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO) @@ -989,7 +990,8 @@ shorten_branches (first) min_labelno = get_first_label_num (); label_align = (short*) xmalloc ((max_labelno - min_labelno + 1) * sizeof (short)); - bzero (label_align, (max_labelno - min_labelno + 1) * sizeof (short)); + bzero ((char *) label_align, + (max_labelno - min_labelno + 1) * sizeof (short)); uid_shuid = (int *) xmalloc (max_uid * sizeof *uid_shuid); diff --git a/gcc/fix-header.c b/gcc/fix-header.c index 3456e531c13..74c251a48e0 100644 --- a/gcc/fix-header.c +++ b/gcc/fix-header.c @@ -1341,7 +1341,7 @@ cpp_file_line_for_message (filename, line, column) void cpp_print_containing_files (pfile) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; { } @@ -1377,7 +1377,7 @@ fatal (str, arg) void cpp_fatal (pfile, str, arg) - cpp_reader *pfile; + cpp_reader *pfile ATTRIBUTE_UNUSED; char *str, *arg; { fatal (str, arg); diff --git a/gcc/flow.c b/gcc/flow.c index 2598f8c3513..14791e2de32 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -414,7 +414,7 @@ find_basic_blocks_1 (f, nonlocal_label_list, live_reachable_p) bzero (block_live, n_basic_blocks); bzero (block_marked, n_basic_blocks); bzero (basic_block_computed_jump_target, n_basic_blocks); - bzero (active_eh_handler, (max_uid_for_flow + 1) * sizeof (rtx)); + bzero ((char *) active_eh_handler, (max_uid_for_flow + 1) * sizeof (rtx)); current_function_has_computed_jump = 0; /* Initialize with just block 0 reachable and no blocks marked. */ diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c index 5b73f959b41..3038f684a92 100644 --- a/gcc/genattrtab.c +++ b/gcc/genattrtab.c @@ -2392,7 +2392,7 @@ make_length_attrs () "*insn_current_length"}; static rtx (*no_address_fn[]) PROTO((rtx)) = {identity_fn, zero_fn, zero_fn}; static rtx (*address_fn[]) PROTO((rtx)) = {max_fn, one_fn, identity_fn}; - int i; + size_t i; struct attr_desc *length_attr, *new_attr; struct attr_value *av, *new_av; struct insn_ent *ie, *new_ie; @@ -2443,14 +2443,14 @@ identity_fn (exp) static rtx zero_fn (exp) - rtx exp; + rtx exp ATTRIBUTE_UNUSED; { return make_numeric_value (0); } static rtx one_fn (exp) - rtx exp; + rtx exp ATTRIBUTE_UNUSED; { return make_numeric_value (1); } diff --git a/gcc/genextract.c b/gcc/genextract.c index 288b32bcbaf..32c991682d2 100644 --- a/gcc/genextract.c +++ b/gcc/genextract.c @@ -459,7 +459,7 @@ from the machine description file `md'. */\n\n"); /* This variable exists only so it can be the "location" of any missing operand whose numbers are skipped by a given pattern. */ - printf ("static rtx junk;\n"); + printf ("static rtx junk ATTRIBUTE_UNUSED;\n"); printf ("extern rtx recog_operand[];\n"); printf ("extern rtx *recog_operand_loc[];\n"); diff --git a/gcc/gengenrtl.c b/gcc/gengenrtl.c index a631c4ee0df..419ed31d5f8 100644 --- a/gcc/gengenrtl.c +++ b/gcc/gengenrtl.c @@ -262,7 +262,7 @@ gencode (f) fputs (" else if (sizeof(struct rtx_def) - sizeof(rtunion) == sizeof(HOST_WIDE_INT))\n", f); fputs (" *(HOST_WIDE_INT *)rt = 0;\n", f); fputs (" else\n", f); - fputs (" bzero(rt, sizeof(struct rtx_def) - sizeof(rtunion));\n\n", f); + fputs (" bzero((char *) rt, sizeof(struct rtx_def) - sizeof(rtunion));\n\n", f); fputs (" return rt;\n}\n\n", f); for (fmt = formats; *fmt; ++fmt) diff --git a/gcc/integrate.c b/gcc/integrate.c index ea1acc4161b..2f8dde132dd 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -36,6 +36,7 @@ Boston, MA 02111-1307, USA. */ #include "real.h" #include "except.h" #include "function.h" +#include "toplev.h" #include "obstack.h" #define obstack_chunk_alloc xmalloc diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index 8a913deb851..1b33c05b1b4 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -3360,6 +3360,7 @@ EH_TABLE_LOOKUP #else +#ifdef DWARF2_UNWIND_INFO typedef struct exception_table { void *start; void *end; @@ -3404,6 +3405,7 @@ find_exception_handler (void *pc, exception_table *table) return (void *) 0; } +#endif /* DWARF2_UNWIND_INFO */ #endif /* EH_TABLE_LOOKUP */ #ifdef DWARF2_UNWIND_INFO diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in index 1e4fd67bfe9..df6c3bcdfb4 100644 --- a/gcc/objc/Make-lang.in +++ b/gcc/objc/Make-lang.in @@ -88,7 +88,7 @@ $(srcdir)/objc/objc-parse.y: $(srcdir)/c-parse.in objc-act.o : $(srcdir)/objc/objc-act.c \ $(CONFIG_H) $(TREE_H) $(RTL_H) system.h \ - $(srcdir)/c-tree.h $(srcdir)/c-lex.h \ + $(srcdir)/c-tree.h $(srcdir)/c-lex.h $(srcdir)/toplev.h \ $(srcdir)/flags.h $(srcdir)/objc/objc-act.h $(srcdir)/input.h \ $(srcdir)/function.h $(srcdir)/output.h $(srcdir)/c-parse.h $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -I$(srcdir)/objc \ diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c index 463ef692c38..b7165dfb89b 100644 --- a/gcc/objc/objc-act.c +++ b/gcc/objc/objc-act.c @@ -49,6 +49,7 @@ Boston, MA 02111-1307, USA. */ #include "except.h" #include "function.h" #include "output.h" +#include "toplev.h" /* This is the default way of generating a method name. */ /* I am not sure it is really correct. @@ -695,9 +696,9 @@ lang_decode_option (p) void lang_print_xnode (file, node, indent) - FILE *file; - tree node; - int indent; + FILE *file ATTRIBUTE_UNUSED; + tree node ATTRIBUTE_UNUSED; + int indent ATTRIBUTE_UNUSED; { } @@ -6419,7 +6420,7 @@ start_protocol (code, name, list) void finish_protocol (protocol) - tree protocol; + tree protocol ATTRIBUTE_UNUSED; { } diff --git a/gcc/output.h b/gcc/output.h index de06f45b956..40a26b01e43 100644 --- a/gcc/output.h +++ b/gcc/output.h @@ -155,6 +155,10 @@ extern void exception_section PROTO((void)); The rtl is stored into DECL. */ extern void make_function_rtl PROTO((tree)); +/* Declare DECL to be a weak symbol. */ +extern void declare_weak PROTO ((tree)); +#endif /* TREE_CODE */ + /* Decode an `asm' spec for a declaration as a register name. Return the register number, or -1 if nothing specified, or -2 if the ASMSPEC is not `cc' or `memory' and is not recognized, @@ -164,6 +168,7 @@ extern void make_function_rtl PROTO((tree)); Prefixes such as % are optional. */ extern int decode_reg_name PROTO((char *)); +#ifdef TREE_CODE /* Create the DECL_RTL for a declaration for a static or external variable or static or external function. ASMSPEC, if not 0, is the string which the user specified @@ -180,6 +185,8 @@ extern void make_var_volatile PROTO((tree)); /* Output alignment directive to align for constant expression EXP. */ extern void assemble_constant_align PROTO((tree)); +extern void assemble_alias PROTO((tree, tree)); + /* Output a string of literal assembler code for an `asm' keyword used between functions. */ extern void assemble_asm PROTO((tree)); @@ -232,7 +239,7 @@ extern void assemble_variable PROTO((tree, int, int, int)); (Most assemblers don't need this, so we normally output nothing.) Do nothing if DECL is not external. */ extern void assemble_external PROTO((tree)); -#endif +#endif /* TREE_CODE */ #ifdef RTX_CODE /* Similar, for calling a library function FUN. */ diff --git a/gcc/regclass.c b/gcc/regclass.c index 5c605eb8891..e7ea926b274 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -35,6 +35,7 @@ Boston, MA 02111-1307, USA. */ #include "reload.h" #include "real.h" #include "toplev.h" +#include "output.h" #ifndef REGISTER_MOVE_COST #define REGISTER_MOVE_COST(x, y) 2 diff --git a/gcc/reload.h b/gcc/reload.h index 3ca2e98b61a..d35dc3fa6b5 100644 --- a/gcc/reload.h +++ b/gcc/reload.h @@ -217,6 +217,8 @@ extern int regno_clobbered_p PROTO((int, rtx)); /* Functions in reload1.c: */ +extern int reloads_conflict PROTO ((int, int)); + int count_occurrences PROTO((rtx, rtx)); /* Initialize the reload pass once per compilation. */ diff --git a/gcc/rtl.h b/gcc/rtl.h index bd2e9cf895d..0d8b9b46891 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -1202,6 +1202,7 @@ extern void debug_rtx_list PROTO ((rtx, int)); extern rtx debug_rtx_find PROTO ((rtx, int)); #ifdef BUFSIZ extern void print_rtl PROTO ((FILE *, rtx)); +extern void print_rtl_single PROTO ((FILE *, rtx)); extern void print_inline_rtx PROTO ((FILE *, rtx, int)); #endif @@ -1292,12 +1293,14 @@ extern rtx expand_mult_highpart PROTO ((enum machine_mode, rtx, int, int)); /* In global.c */ +extern void mark_elimiation PROTO ((int, int)); #ifdef BUFSIZ extern int global_alloc PROTO ((FILE *)); extern void dump_global_regs PROTO ((FILE *)); #endif /* In regclass.c */ +extern int reg_class_subset_p PROTO ((enum reg_class, enum reg_class)); extern void globalize_reg PROTO ((int)); extern void init_regs PROTO ((void)); extern void init_reg_sets PROTO ((void)); @@ -1329,6 +1332,7 @@ extern void init_caller_save PROTO ((void)); /* In profile.c */ extern void init_branch_prob PROTO ((char *)); +extern void output_func_start_profiler PROTO ((void)); /* In reg-stack.c */ #ifdef BUFSIZ diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 22215ae0cde..e2fc66a906e 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -455,7 +455,8 @@ static int reg_set_flag; static void reg_set_p_1 (x, pat) - rtx x, pat; + rtx x; + rtx pat ATTRIBUTE_UNUSED; { /* We don't want to return 1 if X is a MEM that contains a register within REG_SET_REG. */ diff --git a/gcc/scan-decls.c b/gcc/scan-decls.c index aa9390b7c74..5b947a412e3 100644 --- a/gcc/scan-decls.c +++ b/gcc/scan-decls.c @@ -20,6 +20,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "hconfig.h" #include "system.h" #include "cpplib.h" +#include "scan.h" int brace_nesting = 0; diff --git a/gcc/scan.h b/gcc/scan.h index 929a1ef5fee..12879c015bf 100644 --- a/gcc/scan.h +++ b/gcc/scan.h @@ -60,6 +60,8 @@ extern int read_upto _PARAMS((FILE *, sstring *, int)); extern char *xmalloc _PARAMS((unsigned)); extern char *xrealloc _PARAMS((char *, unsigned)); extern unsigned long hash _PARAMS((const char *)); +extern void recognized_function _PARAMS((char *, int, int, char *, int, int, char *, int)); +extern void recognized_extern _PARAMS((char *, int, char *, int)); /* get_token is a simple C lexer. */ #define IDENTIFIER_TOKEN 300 diff --git a/gcc/stmt.c b/gcc/stmt.c index 7847e2dec7c..fc8c382d958 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -51,6 +51,7 @@ Boston, MA 02111-1307, USA. */ #include "recog.h" #include "machmode.h" #include "toplev.h" +#include "output.h" #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free diff --git a/gcc/toplev.c b/gcc/toplev.c index 56d8222f443..59d81ac9b1e 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -153,12 +153,10 @@ extern void print_rtl_with_bb (); void rest_of_decl_compilation (); void error_with_file_and_line PVPROTO((char *file, int line, char *s, ...)); void error_with_decl PVPROTO((tree decl, char *s, ...)); -void error_for_asm PVPROTO((rtx insn, char *s, ...)); void error PVPROTO((char *s, ...)); void fatal PVPROTO((char *s, ...)); void warning_with_file_and_line PVPROTO((char *file, int line, char *s, ...)); void warning_with_decl PVPROTO((tree decl, char *s, ...)); -void warning_for_asm PVPROTO((rtx insn, char *s, ...)); void warning PVPROTO((char *s, ...)); void pedwarn PVPROTO((char *s, ...)); void pedwarn_with_decl PVPROTO((tree decl, char *s, ...)); @@ -189,7 +187,9 @@ static void vsorry PROTO((char *, va_list)); static void v_really_sorry PROTO((char *, va_list)); static void float_signal PROTO((int)); static void pipe_closed PROTO((int)); +#if 0 static void output_lang_identify PROTO((FILE *)); +#endif static void open_dump_file PROTO((char *, char *)); static void close_dump_file PROTO((void (*) (FILE *, rtx), rtx)); static void dump_rtl PROTO((char *, tree, void (*) (FILE *, rtx), rtx)); @@ -1989,7 +1989,7 @@ jmp_buf float_handler; static void float_signal (signo) /* If this is missing, some compilers complain. */ - int signo; + int signo ATTRIBUTE_UNUSED; { if (float_handled == 0) abort (); @@ -2056,7 +2056,7 @@ pop_float_handler (handled, handler) static void pipe_closed (signo) /* If this is missing, some compilers complain. */ - int signo; + int signo ATTRIBUTE_UNUSED; { fatal ("output pipe has been closed"); } @@ -2138,6 +2138,7 @@ output_file_directive (asm_file, input_name) /* Routine to build language identifier for object file. */ +#if 0 static void output_lang_identify (asm_out_file) FILE *asm_out_file; @@ -2147,6 +2148,7 @@ output_lang_identify (asm_out_file) sprintf (s, "__gnu_compiled_%s", lang_identify ()); ASM_OUTPUT_LABEL (asm_out_file, s); } +#endif /* Routine to open a dump file. */ static void diff --git a/gcc/toplev.h b/gcc/toplev.h index 55790e5bb3a..c6af2fb07a0 100644 --- a/gcc/toplev.h +++ b/gcc/toplev.h @@ -5,6 +5,8 @@ #ifndef __GCC_TOPLEV_H__ #define __GCC_TOPLEV_H__ +extern int count_error PROTO ((int)); +extern void strip_off_ending PROTO ((char *, int)); extern void print_time PROTO ((char *, int)); extern int get_run_time PROTO ((void)); extern void debug_start_source_file PROTO ((char *)); @@ -40,4 +42,8 @@ extern void warning_with_decl PVPROTO ((union tree_node *, char *, ...)); extern void error_with_decl PVPROTO ((union tree_node *, char *, ...)); extern void announce_function PROTO ((union tree_node *)); +extern void error_for_asm PVPROTO((struct rtx_def *, char *, ...)) + ATTRIBUTE_PRINTF_2; +extern void warning_for_asm PVPROTO((struct rtx_def *, char *, ...)) + ATTRIBUTE_PRINTF_2; #endif /* __GCC_TOPLEV_H */ diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index b0d51894154..89ee87b861d 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,12 @@ +Wed May 13 14:24:38 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + + * cplus-dem.c (squangle_mop_up): Change return type to void. + (internal_cplus_demangle): Remove unused parameter `options'. + All callers changed. + (cplus_demangle_opname): Remove function wide variable `int i' and + replace with `size_t i' at each location where it is used. + (cplus_mangle_opname): change type of `i' from int to size_t. + Mon Apr 27 15:53:30 EDT 1998 Andrew MacLeod <amacleod@cygnus.com> * cplus-dem.c (demangle_qualified): Replace missing else. diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 266a112326f..8f6809100c5 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -230,7 +230,7 @@ typedef struct string /* Beware: these aren't required to be */ static char * mop_up PARAMS ((struct work_stuff *, string *, int)); -static char * +static void squangle_mop_up PARAMS ((struct work_stuff *)); #if 0 @@ -239,7 +239,7 @@ demangle_method_args PARAMS ((struct work_stuff *, const char **, string *)); #endif static char * -internal_cplus_demangle PARAMS ((struct work_stuff *, const char *, int)); +internal_cplus_demangle PARAMS ((struct work_stuff *, const char *)); static int demangle_template_template_parm PARAMS ((struct work_stuff *work, @@ -422,7 +422,7 @@ cplus_demangle_opname (opname, result, options) char *result; int options; { - int len, i, len1, ret; + int len, len1, ret; string type; struct work_stuff work[1]; const char *tem; @@ -453,6 +453,7 @@ cplus_demangle_opname (opname, result, options) if (opname[4] == '\0') { /* Operator. */ + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { if (strlen (optable[i].in) == 2 @@ -470,6 +471,7 @@ cplus_demangle_opname (opname, result, options) if (opname[2] == 'a' && opname[5] == '\0') { /* Assignment. */ + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { if (strlen (optable[i].in) == 3 @@ -493,6 +495,7 @@ cplus_demangle_opname (opname, result, options) if (len >= 10 /* op$assign_ */ && memcmp (opname + 3, "assign_", 7) == 0) { + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { len1 = len - 10; @@ -509,6 +512,7 @@ cplus_demangle_opname (opname, result, options) } else { + size_t i; for (i = 0; i < sizeof (optable) / sizeof (optable[0]); i++) { len1 = len - 3; @@ -551,7 +555,7 @@ cplus_mangle_opname (opname, options) const char *opname; int options; { - int i; + size_t i; int len; len = strlen (opname); @@ -605,7 +609,7 @@ cplus_demangle (mangled, options) if ((work -> options & DMGL_STYLE_MASK) == 0) work -> options |= (int) current_demangling_style & DMGL_STYLE_MASK; - ret = internal_cplus_demangle (work, mangled, options); + ret = internal_cplus_demangle (work, mangled); squangle_mop_up (work); return (ret); } @@ -618,10 +622,9 @@ cplus_demangle (mangled, options) calls go directly to this routine to avoid resetting that info. */ static char * -internal_cplus_demangle (work, mangled, options) +internal_cplus_demangle (work, mangled) struct work_stuff *work; const char *mangled; - int options; { string decl; @@ -679,7 +682,7 @@ internal_cplus_demangle (work, mangled, options) /* Clear out and squangling related storage */ -static char * +static void squangle_mop_up (work) struct work_stuff *work; { @@ -1340,7 +1343,7 @@ demangle_template_value_parm (work, mangled, s) char *p = xmalloc (symbol_len + 1), *q; strncpy (p, *mangled, symbol_len); p [symbol_len] = '\0'; - q = internal_cplus_demangle (work, p, work->options); + q = internal_cplus_demangle (work, p); string_appendn (s, "&", 1); if (q) { @@ -2073,7 +2076,7 @@ gnu_special (work, mangled, declp) else if (strncmp (*mangled, "__thunk_", 8) == 0) { int delta = ((*mangled) += 8, consume_count (mangled)); - char *method = internal_cplus_demangle (work, ++*mangled, work->options); + char *method = internal_cplus_demangle (work, ++*mangled); if (method) { char buf[50]; |