aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2007-08-18 17:54:11 +0000
committerTom Tromey <tromey@gcc.gnu.org>2007-08-18 17:54:11 +0000
commitcda5e672d80cf69da6901c62ec155a0731277b95 (patch)
tree4c75e2cbaa26bf6fb1d0cb5e2c8b8967e47c1bc2 /libcpp
parentc8aea42ce2c691e4e891476c456f4650d3757810 (diff)
re PR preprocessor/32974 (#pragma GCC dependency generates extra token error.)
gcc/testsuite PR preprocessor/32974: * gcc.dg/cpp/pr32974.c: New file. libcpp PR preprocessor/32974: * directives.c (parse_include): Don't check for EOL when processing #pragma dependency. From-SVN: r127614
Diffstat (limited to 'libcpp')
-rw-r--r--libcpp/ChangeLog6
-rw-r--r--libcpp/directives.c6
2 files changed, 11 insertions, 1 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 0157cf3cee2..7e8dfd5a642 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,9 @@
+2007-08-18 Tom Tromey <tromey@redhat.com>
+
+ PR preprocessor/32974:
+ * directives.c (parse_include): Don't check for EOL when
+ processing #pragma dependency.
+
2007-07-30 Ollie Wild <aaw@google.com>
* directives-only.c: New file.
diff --git a/libcpp/directives.c b/libcpp/directives.c
index 38ca949f8c9..7f7216265c9 100644
--- a/libcpp/directives.c
+++ b/libcpp/directives.c
@@ -698,7 +698,11 @@ parse_include (cpp_reader *pfile, int *pangle_brackets,
return NULL;
}
- if (buf == NULL || CPP_OPTION (pfile, discard_comments))
+ if (pfile->directive == &dtable[T_PRAGMA])
+ {
+ /* This pragma allows extra tokens after the file name. */
+ }
+ else if (buf == NULL || CPP_OPTION (pfile, discard_comments))
check_eol (pfile);
else
{