cppmacro.c (paste_tokens): Only allow / to paste with =.

* cppmacro.c (paste_tokens): Only allow / to paste with =.
testsuite:
	* gcc.dg/cpp/paste13.c: New test.

From-SVN: r57978
This commit is contained in:
Neil Booth 2002-10-09 09:56:09 +00:00 committed by Neil Booth
parent 6e0ac545dd
commit 5cc6732359
4 changed files with 18 additions and 2 deletions

View File

@ -1,3 +1,7 @@
2002-10-09 Neil Booth <neil@daikokuya.co.uk>
* cppmacro.c (paste_tokens): Only allow / to paste with =.
2002-10-09 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on

View File

@ -442,8 +442,7 @@ paste_tokens (pfile, plhs, rhs)
It is simpler to insert a space here, rather than modifying the
lexer to ignore comments in some circumstances. Simply returning
false doesn't work, since we want to clear the PASTE_LEFT flag. */
if (lhs->type == CPP_DIV
&& (rhs->type == CPP_MULT || rhs->type == CPP_DIV))
if (lhs->type == CPP_DIV && rhs->type != CPP_EQ)
*end++ = ' ';
end = cpp_spell_token (pfile, rhs, end);
*end = '\0';

View File

@ -1,3 +1,7 @@
2002-10-09 Neil Booth <neil@daikokuya.co.uk>
* gcc.dg/cpp/paste13.c: New test.
2002-10-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* gcc.c-torture/execute/20020720-1.x: Take out sparc XFAILs. For

View File

@ -0,0 +1,9 @@
/* Copyright (C) 2000 Free Software Foundation, Inc. */
/* { dg-do preprocess } */
/* This used to be recognized as a comment when lexing after pasting
spellings. Neil Booth, 9 Oct 2002. */
#define a /##/=
a /* { dg-warning "valid preprocessing tok" } */