cpplib.c (_cpp_handle_directive): Move #define-specific code to the #define handler...

* cpplib.c (_cpp_handle_directive): Move #define-specific
	code to the #define handler...
	(do_define): ...here.
	(lex_macro_node): No longer a need to check for comments here.

From-SVN: r55077
This commit is contained in:
Neil Booth 2002-06-28 20:27:14 +00:00 committed by Neil Booth
parent 2cc2149737
commit 1d63a28afc
2 changed files with 14 additions and 20 deletions

View File

@ -1,3 +1,10 @@
2002-06-28 Neil Booth <neil@daikokuya.co.uk>
* cpplib.c (_cpp_handle_directive): Move #define-specific
code to the #define handler...
(do_define): ...here.
(lex_macro_node): No longer a need to check for comments here.
2002-06-28 Stephane Carrez <stcarrez@nerim.fr>
* config/m68hc11/m68hc11.c (autoinc_mode): New function.

View File

@ -443,16 +443,7 @@ _cpp_handle_directive (pfile, indented)
prepare_directive_trad (pfile);
if (dir)
{
/* If we are processing a `#define' directive and we have been
requested to expand comments into macros, then re-enable
saving of comments. */
if (dir == &dtable[T_DEFINE])
pfile->state.save_comments =
! CPP_OPTION (pfile, discard_comments_in_macro_exp);
(*pfile->directive->handler) (pfile);
}
(*pfile->directive->handler) (pfile);
else if (skip == 0)
_cpp_backup_tokens (pfile, 1);
@ -502,16 +493,7 @@ lex_macro_node (pfile)
In C++, it may not be any of the "named operators" either,
per C++98 [lex.digraph], [lex.key].
Finally, the identifier may not have been poisoned. (In that case
the lexer has issued the error message for us.)
Note that if we're copying comments into macro expansions, we
could encounter comment tokens here, so eat them all up first. */
if (! CPP_OPTION (pfile, discard_comments_in_macro_exp))
{
while (token->type == CPP_COMMENT)
token = _cpp_lex_token (pfile);
}
the lexer has issued the error message for us.) */
if (token->type == CPP_NAME)
{
@ -545,6 +527,11 @@ do_define (pfile)
if (node)
{
/* If we have been requested to expand comments into macros,
then re-enable saving of comments. */
pfile->state.save_comments =
! CPP_OPTION (pfile, discard_comments_in_macro_exp);
if (_cpp_create_definition (pfile, node))
if (pfile->cb.define)
(*pfile->cb.define) (pfile, pfile->directive_line, node);