From e6450fe56177c2ce3faf4601ed4a3edf42cd90eb Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Sun, 7 Oct 2001 17:24:36 +0000 Subject: [PATCH] merge from gcc --- include/ChangeLog | 5 +++++ include/demangle.h | 10 +++++----- include/libiberty.h | 2 +- libiberty/ChangeLog | 13 +++++++++++++ libiberty/argv.c | 11 ++++++----- libiberty/cp-demangle.c | 6 +++--- libiberty/cplus-dem.c | 14 +++++++------- libiberty/hashtab.c | 8 ++++---- libiberty/strcasecmp.c | 2 +- libiberty/strerror.c | 10 +++++----- libiberty/strncasecmp.c | 2 +- libiberty/strsignal.c | 6 +++--- 12 files changed, 54 insertions(+), 35 deletions(-) diff --git a/include/ChangeLog b/include/ChangeLog index 030ebfe788..985b1ea3e8 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,8 @@ +2001-10-07 Kaveh R. Ghazi + + * demangle.h (demangler_engine): Const-ify. + * libiberty.h (buildargv): Likewise. + 2001-10-03 Vassili Karpov * bfdlink.h (struct bfd_link_info): Add nocopyreloc field. diff --git a/include/demangle.h b/include/demangle.h index dc1e1f1074..a314a2410c 100644 --- a/include/demangle.h +++ b/include/demangle.h @@ -1,5 +1,5 @@ /* Defs for interface to demanglers. - Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000 + Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -94,11 +94,11 @@ extern enum demangling_styles /* Provide information about the available demangle styles. This code is pulled from gdb into libiberty because it is useful to binutils also. */ -extern struct demangler_engine +extern const struct demangler_engine { - const char *demangling_style_name; - enum demangling_styles demangling_style; - const char *demangling_style_doc; + const char *const demangling_style_name; + const enum demangling_styles demangling_style; + const char *const demangling_style_doc; } libiberty_demanglers[]; extern char * diff --git a/include/libiberty.h b/include/libiberty.h index 315d3106c4..9501365c6e 100644 --- a/include/libiberty.h +++ b/include/libiberty.h @@ -51,7 +51,7 @@ extern "C" { /* Build an argument vector from a string. Allocates memory using malloc. Use freeargv to free the vector. */ -extern char **buildargv PARAMS ((char *)) ATTRIBUTE_MALLOC; +extern char **buildargv PARAMS ((const char *)) ATTRIBUTE_MALLOC; /* Free a vector returned by buildargv. */ diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index eaec2cad52..3896830ba0 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,16 @@ +2001-10-07 Kaveh R. Ghazi + + * argv.c (buildargv, tests, main): Const-ify. + * cp-demangle.c (operator_code): Likewise. + * cplus-dem.c (optable, libiberty_demanglers, + cplus_demangle_set_style, cplus_demangle_name_to_style, + print_demangler_list): Likewise. + * hashtab.c (higher_prime_number): Likewise. + * strcasecmp.c (charmap): Likewise. + * strerror.c (error_info, strerror, main): Likewise. + * strncasecmp.c (charmap): Likewise. + * strsignal.c (signal_info): Likewise. + 2001-09-29 DJ Delorie * configure: Regenerate. diff --git a/libiberty/argv.c b/libiberty/argv.c index 3588285458..5d848ad2a9 100644 --- a/libiberty/argv.c +++ b/libiberty/argv.c @@ -1,5 +1,5 @@ /* Create and destroy argument vectors (argv's) - Copyright (C) 1992 Free Software Foundation, Inc. + Copyright (C) 1992, 2001 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support This file is part of the libiberty library. @@ -203,7 +203,7 @@ NOTES */ char **buildargv (input) -char *input; + const char *input; { char *arg; char *copybuf; @@ -336,7 +336,7 @@ char *input; /* Simple little test driver. */ -static char *tests[] = +static const char *const tests[] = { "a simple command line", "arg 'foo' is single quoted", @@ -353,10 +353,10 @@ static char *tests[] = NULL }; -main () +int main () { char **argv; - char **test; + const char *const *test; char **targs; for (test = tests; *test != NULL; test++) @@ -377,6 +377,7 @@ main () freeargv (argv); } + return 0; } #endif /* MAIN */ diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index 5ee8a2b457..b61ff2c2c5 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -1557,11 +1557,11 @@ demangle_operator_name (dm, short_name, num_args) struct operator_code { /* The mangled code for this operator. */ - const char *code; + const char *const code; /* The source name of this operator. */ - const char *name; + const char *const name; /* The number of arguments this operator takes. */ - int num_args; + const int num_args; }; static const struct operator_code operators[] = diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 31a7555783..a464f45e15 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -157,9 +157,9 @@ struct work_stuff static const struct optable { - const char *in; - const char *out; - int flags; + const char *const in; + const char *const out; + const int flags; } optable[] = { {"nw", " new", DMGL_ANSI}, /* new (1.92, ansi) */ {"dl", " delete", DMGL_ANSI}, /* new (1.92, ansi) */ @@ -256,7 +256,7 @@ typedef enum type_kind_t tk_real } type_kind_t; -struct demangler_engine libiberty_demanglers[] = +const struct demangler_engine libiberty_demanglers[] = { { AUTO_DEMANGLING_STYLE_STRING, @@ -847,7 +847,7 @@ enum demangling_styles cplus_demangle_set_style (style) enum demangling_styles style; { - struct demangler_engine *demangler = libiberty_demanglers; + const struct demangler_engine *demangler = libiberty_demanglers; for (; demangler->demangling_style != unknown_demangling; ++demangler) if (style == demangler->demangling_style) @@ -865,7 +865,7 @@ enum demangling_styles cplus_demangle_name_to_style (name) const char *name; { - struct demangler_engine *demangler = libiberty_demanglers; + const struct demangler_engine *demangler = libiberty_demanglers; for (; demangler->demangling_style != unknown_demangling; ++demangler) if (strcmp (name, demangler->demangling_style_name) == 0) @@ -4909,7 +4909,7 @@ static void print_demangler_list (stream) FILE *stream; { - struct demangler_engine *demangler; + const struct demangler_engine *demangler; fprintf (stream, "{%s", libiberty_demanglers->demangling_style_name); diff --git a/libiberty/hashtab.c b/libiberty/hashtab.c index 89bfe085be..36ad6e4940 100644 --- a/libiberty/hashtab.c +++ b/libiberty/hashtab.c @@ -80,7 +80,7 @@ higher_prime_number (n) { /* These are primes that are near, but slightly smaller than, a power of two. */ - static unsigned long primes[] = { + static const unsigned long primes[] = { (unsigned long) 2, (unsigned long) 7, (unsigned long) 13, @@ -115,12 +115,12 @@ higher_prime_number (n) ((unsigned long) 2147483647) + ((unsigned long) 2147483644), }; - unsigned long* low = &primes[0]; - unsigned long* high = &primes[sizeof(primes) / sizeof(primes[0])]; + const unsigned long *low = &primes[0]; + const unsigned long *high = &primes[sizeof(primes) / sizeof(primes[0])]; while (low != high) { - unsigned long* mid = low + (high - low) / 2; + const unsigned long *mid = low + (high - low) / 2; if (n > *mid) low = mid + 1; else diff --git a/libiberty/strcasecmp.c b/libiberty/strcasecmp.c index dcfa407e5b..4bfe650771 100644 --- a/libiberty/strcasecmp.c +++ b/libiberty/strcasecmp.c @@ -37,7 +37,7 @@ static char sccsid[] = "@(#)strcasecmp.c 5.5 (Berkeley) 11/24/87"; * based upon ascii character sequences. */ typedef unsigned char uc; -static unsigned char charmap[] = { +static const unsigned char charmap[] = { (uc)'\000',(uc)'\001',(uc)'\002',(uc)'\003',(uc)'\004',(uc)'\005',(uc)'\006',(uc)'\007', (uc)'\010',(uc)'\011',(uc)'\012',(uc)'\013',(uc)'\014',(uc)'\015',(uc)'\016',(uc)'\017', (uc)'\020',(uc)'\021',(uc)'\022',(uc)'\023',(uc)'\024',(uc)'\025',(uc)'\026',(uc)'\027', diff --git a/libiberty/strerror.c b/libiberty/strerror.c index 6e42f9ec55..046ffe6a1b 100644 --- a/libiberty/strerror.c +++ b/libiberty/strerror.c @@ -58,10 +58,10 @@ static void init_error_tables PARAMS ((void)); struct error_info { - int value; /* The numeric value from */ - const char *name; /* The equivalent symbolic value */ + const int value; /* The numeric value from */ + const char *const name; /* The equivalent symbolic value */ #ifndef HAVE_SYS_ERRLIST - const char *msg; /* Short message about this value */ + const char *const msg; /* Short message about this value */ #endif }; @@ -625,7 +625,7 @@ char * strerror (errnoval) int errnoval; { - char *msg; + const char *msg; static char buf[32]; #ifndef HAVE_SYS_ERRLIST @@ -783,7 +783,7 @@ main () int errn; int errnmax; const char *name; - char *msg; + const char *msg; char *strerror (); errnmax = errno_max (); diff --git a/libiberty/strncasecmp.c b/libiberty/strncasecmp.c index 8ff06edefc..77cb421770 100644 --- a/libiberty/strncasecmp.c +++ b/libiberty/strncasecmp.c @@ -36,7 +36,7 @@ static char sccsid[] = "@(#)strcasecmp.c 5.5 (Berkeley) 11/24/87"; * together for a case independent comparison. The mappings are * based upon ascii character sequences. */ -static unsigned char charmap[] = { +static const unsigned char charmap[] = { '\000', '\001', '\002', '\003', '\004', '\005', '\006', '\007', '\010', '\011', '\012', '\013', '\014', '\015', '\016', '\017', '\020', '\021', '\022', '\023', '\024', '\025', '\026', '\027', diff --git a/libiberty/strsignal.c b/libiberty/strsignal.c index 2533adce29..85639f9881 100644 --- a/libiberty/strsignal.c +++ b/libiberty/strsignal.c @@ -67,10 +67,10 @@ static void init_signal_tables PARAMS ((void)); struct signal_info { - int value; /* The numeric value from */ - const char *name; /* The equivalent symbolic value */ + const int value; /* The numeric value from */ + const char *const name; /* The equivalent symbolic value */ #ifndef HAVE_SYS_SIGLIST - const char *msg; /* Short message about this value */ + const char *const msg; /* Short message about this value */ #endif };