OSDN Git Service

* cpphash.c (macarg): Hoist all the flag diddling out of the
authorzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Feb 2000 00:26:47 +0000 (00:26 +0000)
committerzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 10 Feb 2000 00:26:47 +0000 (00:26 +0000)
commit0f0b378982ad0ca24ac9b4dd2e72861333e01bff
treeb97b41fd2091f08d292e94d18de3493399ff1087
parentf7cfde85f4b468ead09f4c3714449cfd3fa2716f
* cpphash.c (macarg): Hoist all the flag diddling out of the
function...
(macroexpand): ... and out of the loop that calls macarg.
Skip over the initial paren before macro arguments with
cpp_get_non_space_token; point may be some distance before
that paren.  Abort if it's not there.

* cpplib.c (parse_clear_mark): Delete function.
(parse_set_mark, parse_goto_mark): Make static.
(ACTIVE_MARK_P): New macro.
(skip_block_comment, skip_line_comment): Do not bump the line
if ACTIVE_MARK_P is true.
(cpp_pop_buffer): The buffer to be popped may not have an
active mark.
(cpp_get_token): When looking for the initial paren before
macro arguments, only set a mark in a file buffer, Always
return to that mark before proceeding to call macroexpand or
return a NAME token.

* cpplib.h: Remove prototypes of parse_set_mark,
parse_clear_mark, parse_goto_mark.
(struct cpp_options): Rename 'put_out_comments' to
'discard_comments' and invert its sense.
* cppinit.c, cpphash.c, cpplib.c: All users of
put_out_comments changed to use discard_comments, with
opposite sense.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31879 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/cpphash.c
gcc/cppinit.c
gcc/cpplib.c
gcc/cpplib.h
gcc/testsuite/gcc.dg/20000209-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/20000209-2.c [new file with mode: 0644]