diff options
author | Zack Weinberg <zack@wolery.cumb.org> | 2000-03-07 20:58:47 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2000-03-07 20:58:47 +0000 |
commit | b0699daddf1eead3861e67808ac915f21f82dcf3 (patch) | |
tree | 1a0ac2a2bf6f6751175dddcf0bf7464c1266fe1a /gcc/cpplib.c | |
parent | 79e69af0254238d0b5fa1940c5f7ecfce9e11bcd (diff) | |
download | gcc-b0699daddf1eead3861e67808ac915f21f82dcf3.zip gcc-b0699daddf1eead3861e67808ac915f21f82dcf3.tar.gz gcc-b0699daddf1eead3861e67808ac915f21f82dcf3.tar.bz2 |
cppfiles.c (_cpp_find_include_file): Make sure ih->name is initialized.
* cppfiles.c (_cpp_find_include_file): Make sure ih->name is
initialized.
* cppinit.c (cpp_cleanup): Free imp->nshort also.
* cpperror.c (cpp_print_containing_files,
cpp_print_file_and_line, v_cpp_message): Rename to
print_containing_files, print_file_and_line, and v_message.
* cppexp.c (cpp_parse_expr, cpp_parse_escape, cpp_lex): Rename
to _cpp_parse_expr, parse_escape, and lex.
(parse_charconst): Remove broken multibyte support.
* cppfiles.c (include_hash): Make static.
(cpp_included): New function.
(merge_include_chains, find_include_file, finclude,
simplify_pathname): Rename to _cpp_merge_include_chains,
_cpp_find_include_file, _cpp_read_include_file, and
_cpp_simplify_pathname.
* cpphash.c (cpp_lookup, free_definition, delete_macro,
cpp_install, create_definition, macroexpand, compare_defs,
dump_definition): Rename to _cpp_lookup, _cpp_free_definition,
_cpp_delete_macro, _cpp_install, _cpp_create_definition,
_cpp_macroexpand, _cpp_compare_defs, and _cpp_dump_definition.
* cppinit.c (cpp_handle_option): Rename to handle_option, make
static.
* cpplib.c: Remove extern prototype of cpp_parse_expr.
* cpphash.h: Update prototypes.
* cpplib.h: Likewise. Prototype _cpp_parse_expr here.
From-SVN: r32390
Diffstat (limited to 'gcc/cpplib.c')
-rw-r--r-- | gcc/cpplib.c | 67 |
1 files changed, 31 insertions, 36 deletions
diff --git a/gcc/cpplib.c b/gcc/cpplib.c index 567f940..c97af56 100644 --- a/gcc/cpplib.c +++ b/gcc/cpplib.c @@ -41,10 +41,6 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ case CPP_BUMP_LINE must not be called. */ #define ACTIVE_MARK_P() (CPP_BUFFER (pfile)->mark != -1) -/* External declarations. */ - -extern HOST_WIDEST_INT cpp_parse_expr PARAMS ((cpp_reader *)); - /* `struct directive' defines one #-directive, including how to handle it. */ struct directive @@ -259,7 +255,7 @@ cpp_defined (pfile, id, len) const U_CHAR *id; int len; { - HASHNODE *hp = cpp_lookup (pfile, id, len); + HASHNODE *hp = _cpp_lookup (pfile, id, len); if (hp && hp->type == T_POISON) { cpp_error (pfile, "attempt to use poisoned `%s'", hp->name); @@ -686,17 +682,17 @@ do_define (pfile, keyword) as an object-like macro if this happens, with a warning. */ cpp_pedwarn (pfile, "missing white space after `#define %.*s'", len, sym); - def = create_definition (pfile, funlike); + def = _cpp_create_definition (pfile, funlike); if (def == 0) return 0; - if ((hp = cpp_lookup (pfile, sym, len)) != NULL) + if ((hp = _cpp_lookup (pfile, sym, len)) != NULL) { int ok; /* Redefining a macro is ok if the definitions are the same. */ if (hp->type == T_MACRO) - ok = ! compare_defs (pfile, def, hp->value.defn); + ok = ! _cpp_compare_defs (pfile, def, hp->value.defn); /* Redefining a constant is ok with -D. */ else if (hp->type == T_CONST || hp->type == T_STDC) ok = ! CPP_OPTIONS (pfile)->done_initializing; @@ -721,17 +717,17 @@ do_define (pfile, keyword) { /* Replace the old definition. */ if (hp->type == T_MACRO) - free_definition (hp->value.defn); + _cpp_free_definition (hp->value.defn); hp->type = T_MACRO; hp->value.defn = def; } } else - cpp_install (pfile, sym, len, T_MACRO, (char *) def); + _cpp_install (pfile, sym, len, T_MACRO, (char *) def); if (CPP_OPTIONS (pfile)->debug_output || CPP_OPTIONS (pfile)->dump_macros == dump_definitions) - dump_definition (pfile, sym, len, def); + _cpp_dump_definition (pfile, sym, len, def); else if (CPP_OPTIONS (pfile)->dump_macros == dump_names) pass_thru_directive (sym, len, pfile, keyword); @@ -1201,7 +1197,7 @@ do_include (pfile, keyword) return 0; } - fd = find_include_file (pfile, ftok, search_start, &ihash, &before); + fd = _cpp_find_include_file (pfile, ftok, search_start, &ihash, &before); if (fd == -2) return 0; @@ -1280,7 +1276,7 @@ do_include (pfile, keyword) if (angle_brackets) pfile->system_include_depth++; /* Decremented in file_cleanup. */ - if (finclude (pfile, fd, ihash)) + if (_cpp_read_include_file (pfile, fd, ihash)) { output_line_command (pfile, enter_file); pfile->only_seen_white = 2; @@ -1479,7 +1475,7 @@ do_undef (pfile, keyword) } CPP_SET_WRITTEN (pfile, here); - while ((hp = cpp_lookup (pfile, name, len)) != NULL) + while ((hp = _cpp_lookup (pfile, name, len)) != NULL) { /* If we are generating additional info for debugging (with -g) we need to pass through all effective #undef commands. */ @@ -1491,7 +1487,7 @@ do_undef (pfile, keyword) { if (hp->type != T_MACRO) cpp_warning (pfile, "undefining `%s'", hp->name); - delete_macro (hp); + _cpp_delete_macro (hp); } } @@ -1705,7 +1701,6 @@ do_pragma_implementation (pfile) { /* Be quiet about `#pragma implementation' for a file only if it hasn't been included yet. */ - struct include_hash *ptr; enum cpp_token token; long written = CPP_WRITTEN (pfile); U_CHAR *name; @@ -1723,9 +1718,8 @@ do_pragma_implementation (pfile) name = pfile->token_buffer + written + 1; copy = xstrdup (name); copy[strlen(copy)] = '\0'; /* trim trailing quote */ - - ptr = include_hash (pfile, copy, 0); - if (ptr) + + if (cpp_included (pfile, copy)) cpp_warning (pfile, "`#pragma implementation' for `%s' appears after file is included", copy); @@ -1766,18 +1760,19 @@ do_pragma_poison (pfile) p = pfile->token_buffer + written; len = strlen (p); - if ((hp = cpp_lookup (pfile, p, len))) + if ((hp = _cpp_lookup (pfile, p, len))) { if (hp->type != T_POISON) { cpp_warning (pfile, "poisoning existing macro `%s'", p); - free_definition (hp->value.defn); + if (hp->type == T_MACRO) + _cpp_free_definition (hp->value.defn); hp->value.defn = 0; hp->type = T_POISON; } } else - cpp_install (pfile, p, len, T_POISON, 0); + _cpp_install (pfile, p, len, T_POISON, 0); if (writeit) CPP_PUTC (pfile, ' '); } @@ -1952,7 +1947,7 @@ eval_if_expression (pfile) long old_written = CPP_WRITTEN (pfile); pfile->parsing_if_directive++; - value = cpp_parse_expr (pfile); + value = _cpp_parse_expr (pfile); pfile->parsing_if_directive--; skip_rest_of_line (pfile); @@ -2683,7 +2678,7 @@ cpp_get_token (pfile) return CPP_NAME; ident = pfile->token_buffer + before_name_written; ident_len = CPP_PWRITTEN (pfile) - ident; - hp = cpp_lookup (pfile, ident, ident_len); + hp = _cpp_lookup (pfile, ident, ident_len); if (!hp) return CPP_NAME; if (hp->type == T_DISABLED) @@ -2751,7 +2746,7 @@ cpp_get_token (pfile) /* This is now known to be a macro call. Expand the macro, reading arguments as needed, and push the expansion on the input stack. */ - macroexpand (pfile, hp); + _cpp_macroexpand (pfile, hp); CPP_SET_WRITTEN (pfile, before_name_written); } goto get_next; @@ -3085,16 +3080,16 @@ do_assert (pfile, keyword) thislen = strlen (sym); baselen = index (sym, '(') - sym; - this = cpp_lookup (pfile, sym, thislen); + this = _cpp_lookup (pfile, sym, thislen); if (this) { cpp_warning (pfile, "`%s' re-asserted", sym); goto error; } - base = cpp_lookup (pfile, sym, baselen); + base = _cpp_lookup (pfile, sym, baselen); if (! base) - base = cpp_install (pfile, sym, baselen, T_ASSERT, 0); + base = _cpp_install (pfile, sym, baselen, T_ASSERT, 0); else if (base->type != T_ASSERT) { /* Token clash - but with what?! */ @@ -3102,7 +3097,7 @@ do_assert (pfile, keyword) goto error; } - this = cpp_install (pfile, sym, thislen, T_ASSERT, + this = _cpp_install (pfile, sym, thislen, T_ASSERT, (char *)base->value.aschain); base->value.aschain = this; @@ -3143,7 +3138,7 @@ do_unassert (pfile, keyword) thislen = strlen (sym); if (ret == 1) { - base = cpp_lookup (pfile, sym, thislen); + base = _cpp_lookup (pfile, sym, thislen); if (! base) goto error; /* It isn't an error to #undef what isn't #defined, so it isn't an error to #unassert what isn't @@ -3152,16 +3147,16 @@ do_unassert (pfile, keyword) for (this = base->value.aschain; this; this = next) { next = this->value.aschain; - delete_macro (this); + _cpp_delete_macro (this); } - delete_macro (base); + _cpp_delete_macro (base); } else { baselen = index (sym, '(') - sym; - base = cpp_lookup (pfile, sym, baselen); + base = _cpp_lookup (pfile, sym, baselen); if (! base) goto error; - this = cpp_lookup (pfile, sym, thislen); + this = _cpp_lookup (pfile, sym, thislen); if (! this) goto error; next = base; @@ -3169,10 +3164,10 @@ do_unassert (pfile, keyword) next = next->value.aschain; next->value.aschain = this->value.aschain; - delete_macro (this); + _cpp_delete_macro (this); if (base->value.aschain == NULL) - delete_macro (base); /* Last answer for this predicate deleted. */ + _cpp_delete_macro (base); /* Last answer for this predicate deleted. */ } pfile->limit = (unsigned char *) sym; /* Pop */ |