aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpplib.h
diff options
context:
space:
mode:
authorZack Weinberg <zack@wolery.cumb.org>2000-05-02 16:09:12 +0000
committerZack Weinberg <zack@gcc.gnu.org>2000-05-02 16:09:12 +0000
commitc56c2073a6268960931acd0b852b6186d4bde179 (patch)
tree90422d7ae261276adf06a32d02442c9b52f52170 /gcc/cpplib.h
parent753e6cf1b64ccc2e8f7946d4a7a010f82ff99c31 (diff)
downloadgcc-c56c2073a6268960931acd0b852b6186d4bde179.zip
gcc-c56c2073a6268960931acd0b852b6186d4bde179.tar.gz
gcc-c56c2073a6268960931acd0b852b6186d4bde179.tar.bz2
cpplib.h (CPP_POP, [...]): Delete.
* cpplib.h (CPP_POP, parse_cleanup_t): Delete. (cpp_buffer): Remove cleanup, seen_eof, manual_pop members. * cppfiles.c (file_cleanup): Delete. * cpphash.c (macro_cleanup): Delete. (collect_objlike_expansion, collect_funlike_expansion, macarg, scan_arguments): Remove CPP_POP case. * cpplex.c (null_cleanup): Delete. (cpp_pop_buffer): Do the work that was done in the cleanups here. Call _cpp_unwind_if_stack from here. (_cpp_expand_to_buffer, cpp_scan_buffer_nooutput, cpp_scan_buffer): Run until we see CPP_EOF and the top of stack is the buffer _below_ the one we stacked. (cpp_get_token): Always pop an exhausted buffer. Return CPP_EOF unless it's a macro buffer. Don't call _cpp_handle_eof. * cpplib.c (skip_if_group): Don't call cpp_get_token to increment the line number. (_cpp_handle_eof): Rename to _cpp_unwind_if_stack. * fix-header.c (read_scan_file) [parsing getchar()]: Run until we see CPP_EOF and the top of stack is the buffer _below_ the one we stacked. * scan-decls.c: Likewise. From-SVN: r33611
Diffstat (limited to 'gcc/cpplib.h')
-rw-r--r--gcc/cpplib.h15
1 files changed, 3 insertions, 12 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index c635ff6..4d005df 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -131,7 +131,6 @@ typedef struct cpp_name cpp_name;
/* Obsolete - will be removed when no code uses them still. */ \
H(CPP_COMMENT, 0) /* Only if output comments. */ \
N(CPP_HSPACE, 0) /* Horizontal white space. */ \
- N(CPP_POP, 0) /* End of buffer. */ \
N(CPP_DIRECTIVE, 0) /* #define and the like */ \
N(CPP_MACRO, 0) /* Like a NAME, but expanded. */
@@ -192,7 +191,6 @@ struct cpp_token
#define SYNTAX_ASSERT (1 << 9)
typedef int (*directive_handler) PARAMS ((cpp_reader *));
-typedef int (*parse_cleanup_t) PARAMS ((cpp_buffer *, cpp_reader *));
struct cpp_toklist
{
@@ -238,8 +236,6 @@ struct cpp_buffer
to record control macros. */
struct ihash *ihash;
- parse_cleanup_t cleanup;
-
/* If the buffer is the expansion of a macro, this points to the
macro's hash table entry. */
struct hashnode *macro;
@@ -254,9 +250,6 @@ struct cpp_buffer
/* True if this is a header file included using <FILENAME>. */
char system_header_p;
- /* True if end-of-file has already been hit once in this buffer. */
- char seen_eof;
-
/* True if buffer contains escape sequences.
Currently there are two kinds:
"\r-" means following identifier should not be macro-expanded.
@@ -271,17 +264,15 @@ struct cpp_buffer
from macro expansion text in collect_expansion and/or macarg. */
char has_escapes;
- /* Used by the C++ frontend to implement redirected input (such as for
- default argument and/or template parsing). */
- char manual_pop;
-
/* True if we have already warned about C++ comments in this file.
The warning happens only for C89 extended mode with -pedantic on,
or for -Wtraditional, and only once per file (otherwise it would
be far too noisy). */
char warned_cplusplus_comments;
- /* True if this buffer's data is mmapped. */
+ /* In a file buffer, true if this buffer's data is mmapped
+ (currently never the case). In a macro buffer, true if this
+ buffer's data must be freed. */
char mapped;
};