Commit b8cd77f4 by Jakub Jelinek Committed by Jakub Jelinek

re PR preprocessor/61977 (powerpc preprocessor breaks on lines that end with "vector")

	PR preprocessor/61977
	* lex.c (cpp_peek_token): Temporarily clear pfile->cb.line_change.

	* gcc.target/powerpc/pr61977-1.c: New test.
	* gcc.target/powerpc/pr61977-2.c: New test.

From-SVN: r221839
parent 860f8be4
2015-04-02 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/61977
* gcc.target/powerpc/pr61977-1.c: New test.
* gcc.target/powerpc/pr61977-2.c: New test.
2015-04-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56100
......
/* PR preprocessor/61977 */
/* { dg-do preprocess } */
/* { dg-options "-mno-altivec -mno-vsx" } */
int y; vector
int x;
/* { dg-final { scan-file "pr61977-1.i" "(^|\\n)int y; vector\\n" } } */
/* PR preprocessor/61977 */
/* { dg-do preprocess } */
/* { dg-options "-maltivec" } */
int y; vector
int x;
/* { dg-final { scan-file "pr61977-2.i" "(^|\\n)int y; __attribute__\\(\\(altivec\\(vector__\\)\\)\\)\\n" } } */
2015-04-02 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/61977
* lex.c (cpp_peek_token): Temporarily clear pfile->cb.line_change.
2015-03-23 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/65238
......
......@@ -2080,6 +2080,12 @@ cpp_peek_token (cpp_reader *pfile, int index)
count = index;
pfile->keep_tokens++;
/* For peeked tokens temporarily disable line_change reporting,
until the tokens are parsed for real. */
void (*line_change) (cpp_reader *, const cpp_token *, int)
= pfile->cb.line_change;
pfile->cb.line_change = NULL;
do
{
peektok = _cpp_lex_token (pfile);
......@@ -2090,6 +2096,7 @@ cpp_peek_token (cpp_reader *pfile, int index)
_cpp_backup_tokens_direct (pfile, count + 1);
pfile->keep_tokens--;
pfile->cb.line_change = line_change;
return peektok;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment