diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2000-06-07 20:35:43 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2000-06-07 20:35:43 +0000 |
commit | 7eb23b1f31ad41140c1a733e55a7982af23f4767 (patch) | |
tree | 025f8bbc4164c86dd9648a8ca5093d9d6297a2e1 | |
parent | 3f8a8c683b0930176c3d10c36df48041f9fec96e (diff) | |
download | gcc-7eb23b1f31ad41140c1a733e55a7982af23f4767.zip gcc-7eb23b1f31ad41140c1a733e55a7982af23f4767.tar.gz gcc-7eb23b1f31ad41140c1a733e55a7982af23f4767.tar.bz2 |
Makefile.in (cp-demangle.o): Depend on $(INCDIR)/demangle.h.
* Makefile.in (cp-demangle.o): Depend on $(INCDIR)/demangle.h.
* cp-demangle.c: Include demangle.h.
(template_arg_list_new): DeANSIfy.
(cp_demangle): Make static and add prototype.
(operator_code, operators): Constify.
(demangle_operator_name): Likewise for variables `p1', `p2' and `p'.
From-SVN: r34446
-rw-r--r-- | libiberty/ChangeLog | 10 | ||||
-rw-r--r-- | libiberty/Makefile.in | 2 | ||||
-rw-r--r-- | libiberty/cp-demangle.c | 19 |
3 files changed, 22 insertions, 9 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index db7e559..34f2908 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,13 @@ +2000-06-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + + * Makefile.in (cp-demangle.o): Depend on $(INCDIR)/demangle.h. + + * cp-demangle.c: Include demangle.h. + (template_arg_list_new): DeANSIfy. + (cp_demangle): Make static and add prototype. + (operator_code, operators): Constify. + (demangle_operator_name): Likewise for variables `p1', `p2' and `p'. + 2000-06-05 Alex Samuel <samuel@codesourcery.com> * cp-demangle.c (demangle_prefix): Cast argument to isdigit to diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in index a789000..a95adcd 100644 --- a/libiberty/Makefile.in +++ b/libiberty/Makefile.in @@ -263,7 +263,7 @@ choose-temp.o: config.h clock.o: config.h concat.o: $(INCDIR)/libiberty.h cplus-dem.o: config.h $(INCDIR)/demangle.h -cp-demangle.o: config.h $(INCDIR)/dyn-string.h +cp-demangle.o: config.h $(INCDIR)/dyn-string.h $(INCDIR)/demangle.h dyn-string.o: config.h $(INCDIR)/dyn-string.h fdmatch.o: $(INCDIR)/libiberty.h fnmatch.o: config.h $(INCDIR)/fnmatch.h diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index 0a37293..502035f 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -44,6 +44,7 @@ #include "ansidecl.h" #include "libiberty.h" #include "dyn-string.h" +#include "demangle.h" /* If CP_DEMANGLE_DEBUG is defined, a trace of the grammar evaluation, and other debugging output, will be generated. */ @@ -513,7 +514,7 @@ substitutions_print (dm, fp) /* Creates a new template argument list. */ static template_arg_list_t -template_arg_list_new (void) +template_arg_list_new () { template_arg_list_t new_list = (template_arg_list_t) xmalloc (sizeof (struct template_arg_list_def)); @@ -775,6 +776,8 @@ static status_t demangle_local_name PARAMS ((demangling_t)); static status_t demangle_discriminator PARAMS ((demangling_t, int)); +static status_t cp_demangle + PARAMS ((char *, dyn_string_t)); /* When passed to demangle_bare_function_type, indicates that the function's return type is not encoded before its parameter types. */ @@ -1308,14 +1311,14 @@ demangle_operator_name (dm, short_name, num_args) struct operator_code { /* The mangled code for this operator. */ - char *code; + const char *code; /* The source name of this operator. */ - char *name; + const char *name; /* The number of arguments this operator takes. */ int num_args; }; - struct operator_code operators[] = + static const struct operator_code operators[] = { { "aN", "&=" , 2 }, { "aS", "=" , 2 }, @@ -1371,8 +1374,8 @@ demangle_operator_name (dm, short_name, num_args) int c0 = next_char (dm); int c1 = next_char (dm); - struct operator_code* p1 = operators; - struct operator_code* p2 = operators + num_operators; + const struct operator_code* p1 = operators; + const struct operator_code* p2 = operators + num_operators; DEMANGLE_TRACE ("operator-name", dm); @@ -1398,7 +1401,7 @@ demangle_operator_name (dm, short_name, num_args) /* Perform a binary search for the operator code. */ while (1) { - struct operator_code* p = p1 + (p2 - p1) / 2; + const struct operator_code* p = p1 + (p2 - p1) / 2; char match0 = p->code[0]; char match1 = p->code[1]; @@ -2744,7 +2747,7 @@ demangle_discriminator (dm, suppress_first) dyn_string_t. On success, returns STATUS_OK. On failure, returns an error message, and the contents of RESULT are unchanged. */ -status_t +static status_t cp_demangle (name, result) char *name; dyn_string_t result; |