re PR preprocessor/57824 (Raw string literals not handled correctly in macro arguments or deferred pragmas)
PR preprocessor/57824 * lex.c (lex_raw_string): Allow reading new-lines if in_deferred_pragma or if parsing_args and there is still data in the current buffer. * c-c++-common/raw-string-17.c: New test. * c-c++-common/gomp/pr57824.c: New test. From-SVN: r200879
This commit is contained in:
committed by
Jakub Jelinek
parent
c26302d535
commit
d5e48350b4
@@ -1,5 +1,10 @@
|
||||
2013-07-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR preprocessor/57824
|
||||
* lex.c (lex_raw_string): Allow reading new-lines if
|
||||
in_deferred_pragma or if parsing_args and there is still
|
||||
data in the current buffer.
|
||||
|
||||
* include/cpplib.h (cpp_token_val_index): Change parameter type to
|
||||
const cpp_token *.
|
||||
* lex.c (cpp_token_val_index): Likewise.
|
||||
|
||||
+2
-2
@@ -1543,8 +1543,8 @@ lex_raw_string (cpp_reader *pfile, cpp_token *token, const uchar *base,
|
||||
else if (c == '\n')
|
||||
{
|
||||
if (pfile->state.in_directive
|
||||
|| pfile->state.parsing_args
|
||||
|| pfile->state.in_deferred_pragma)
|
||||
|| (pfile->state.parsing_args
|
||||
&& pfile->buffer->next_line >= pfile->buffer->rlimit))
|
||||
{
|
||||
cur--;
|
||||
type = CPP_OTHER;
|
||||
|
||||
Reference in New Issue
Block a user