From 9eb7466604c607c9d8d79ae4534438c1d9d7546b Mon Sep 17 00:00:00 2001 From: bothner Date: Thu, 2 Oct 2003 07:30:34 +0000 Subject: [PATCH] * cpplib.c (_cpp_pop_buffer): Do generate a _cpp_do_file_change callback even when popping the main file. * cpplib.c (cpp_push_buffer): Since we no longer set return_at_eof, remove the unused return_at_eof parameter. * cppfiles.c, cpplib.c, cppmacro.c, cpppch.c, fix-header.c: Update callers of cpp_push_buffer. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72016 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/cpplib.c | 9 +++------ gcc/cppmacro.c | 8 ++------ gcc/cpppch.c | 4 ++-- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d31591aba20..a65f89666e8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -5,6 +5,8 @@ (get_non_padding_token): We no longer need to compensate for the "horrible things" the C++ front-end does with the current line number, + * cpplib.c (_cpp_pop_buffer): Do generate a _cpp_do_file_change + callback even when popping the main file. * c-lex.c (fe_file_change): Handle a NULL new_map. * fix-header.c (cb_file_change): Likewise. * c-ppoutput.c (pp_file_change): Likewise. @@ -40,6 +42,11 @@ * cpplex.c (_cpp_get_fresh_line): Return value now just depends on whether pfile->buffer is NULL after pop, ignoring return_at_eof. + * cpphash.h (struct cpp_buffer): Remove unused return_at_eof field. + * cpplib.c (cpp_push_buffer): Since we no longer set return_at_eof, + remove the unused return_at_eof parameter. + * cppfiles.c, cpplib.c, cppmacro.c, cpppch.c, fix-header.c: + Update callers of cpp_push_buffer. 2003-10-01 Zack Weinberg diff --git a/gcc/cpplib.c b/gcc/cpplib.c index 5a927555468..7fba1f3e96b 100644 --- a/gcc/cpplib.c +++ b/gcc/cpplib.c @@ -438,7 +438,7 @@ static void run_directive (cpp_reader *pfile, int dir_no, const char *buf, size_t count) { cpp_push_buffer (pfile, (const uchar *) buf, count, - /* from_stage3 */ true, 1); + /* from_stage3 */ true); /* Disgusting hack. */ if (dir_no == T_PRAGMA) pfile->buffer->file = pfile->buffer->prev->file; @@ -1911,7 +1911,7 @@ cpp_set_callbacks (cpp_reader *pfile, cpp_callbacks *cb) is the responsibility of the caller. */ cpp_buffer * cpp_push_buffer (cpp_reader *pfile, const uchar *buffer, size_t len, - int from_stage3, int return_at_eof) + int from_stage3) { cpp_buffer *new = xobnew (&pfile->buffer_ob, cpp_buffer); @@ -1922,7 +1922,6 @@ cpp_push_buffer (cpp_reader *pfile, const uchar *buffer, size_t len, new->rlimit = buffer + len; new->from_stage3 = from_stage3; new->prev = pfile->buffer; - new->return_at_eof = return_at_eof; new->need_line = true; pfile->buffer = new; @@ -1960,9 +1959,7 @@ _cpp_pop_buffer (cpp_reader *pfile) { _cpp_pop_file_buffer (pfile, inc); - /* Don't generate a callback for popping the main file. */ - if (pfile->buffer) - _cpp_do_file_change (pfile, LC_LEAVE, 0, 0, 0); + _cpp_do_file_change (pfile, LC_LEAVE, 0, 0, 0); } } diff --git a/gcc/cppmacro.c b/gcc/cppmacro.c index 045d4e37185..43f688ab7a0 100644 --- a/gcc/cppmacro.c +++ b/gcc/cppmacro.c @@ -270,7 +270,7 @@ builtin_macro (cpp_reader *pfile, cpp_hashnode *node) memcpy (nbuf, buf, len); nbuf[len]='\n'; - cpp_push_buffer (pfile, (uchar *) nbuf, len, /* from_stage3 */ true, 1); + cpp_push_buffer (pfile, (uchar *) nbuf, len, /* from_stage3 */ true); _cpp_clean_line (pfile); /* Set pfile->cur_token as required by _cpp_lex_direct. */ @@ -426,7 +426,7 @@ paste_tokens (cpp_reader *pfile, const cpp_token **plhs, const cpp_token *rhs) end = cpp_spell_token (pfile, rhs, end); *end = '\n'; - cpp_push_buffer (pfile, buf, end - buf, /* from_stage3 */ true, 1); + cpp_push_buffer (pfile, buf, end - buf, /* from_stage3 */ true); _cpp_clean_line (pfile); /* Set pfile->cur_token as required by _cpp_lex_direct. */ @@ -1136,10 +1136,6 @@ cpp_sys_macro_p (cpp_reader *pfile) void cpp_scan_nooutput (cpp_reader *pfile) { - /* Request a CPP_EOF token at the end of this file, rather than - transparently continuing with the including file. */ - pfile->buffer->return_at_eof = true; - if (CPP_OPTION (pfile, traditional)) while (_cpp_read_logical_line_trad (pfile)) ; diff --git a/gcc/cpppch.c b/gcc/cpppch.c index e1dc1d710ec..71c7aae98dd 100644 --- a/gcc/cpppch.c +++ b/gcc/cpppch.c @@ -686,8 +686,8 @@ cpp_read_state (cpp_reader *r, const char *name, FILE *f, else if (m.name_length != m.definition_length) { if (cpp_push_buffer (r, defn + m.name_length, - m.definition_length - m.name_length, - true, 1) != NULL) + m.definition_length - m.name_length, true) + != NULL) { _cpp_clean_line (r); if (!_cpp_create_definition (r, h)) -- 2.11.0