aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZack Weinberg <zack@wolery.cumb.org>2000-07-24 21:49:34 +0000
committerZack Weinberg <zack@gcc.gnu.org>2000-07-24 21:49:34 +0000
commit6f4280eff71abb396d4bf9e4b455ea68cd949e77 (patch)
treecad67533cd08c325707ca5aac9c99844289bff1a
parent4e81ae98cad81aa779f539d440d9b0f2c3f4fdff (diff)
downloadgcc-6f4280eff71abb396d4bf9e4b455ea68cd949e77.zip
gcc-6f4280eff71abb396d4bf9e4b455ea68cd949e77.tar.gz
gcc-6f4280eff71abb396d4bf9e4b455ea68cd949e77.tar.bz2
cppexp.c: Warn about unary + if -Wtraditional.
* cppexp.c: Warn about unary + if -Wtraditional. * cpplex.c (lex_line): Always set BOL on the first token of a line. From-SVN: r35239
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cppexp.c4
-rw-r--r--gcc/cpplex.c6
3 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a8d147e..d69e232 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-07-24 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c: Warn about unary + if -Wtraditional.
+ * cpplex.c (lex_line): Always set BOL on the first token of a line.
+
2000-07-24 Michael Meissner <meissner@redhat.com>
* d30v.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Delete references to
diff --git a/gcc/cppexp.c b/gcc/cppexp.c
index e80f8e8..b344247 100644
--- a/gcc/cppexp.c
+++ b/gcc/cppexp.c
@@ -849,6 +849,10 @@ _cpp_parse_expr (pfile)
top->value = v2;
top->unsignedp = unsigned2;
top->flags |= HAVE_VALUE;
+
+ if (CPP_WTRADITIONAL (pfile))
+ cpp_warning (pfile,
+ "traditional C rejects the unary plus operator");
}
else
{
diff --git a/gcc/cpplex.c b/gcc/cpplex.c
index 36beb95..bbe6f35 100644
--- a/gcc/cpplex.c
+++ b/gcc/cpplex.c
@@ -1881,10 +1881,8 @@ lex_line (pfile, list)
cur_token++->type = CPP_EOF;
}
- /* Directives, known or not, always start a new line. */
- if (first_token == 0 || list->tokens[first_token].type == CPP_HASH)
- first->flags |= BOL;
- else
+ first->flags |= BOL;
+ if (first_token != 0)
/* 6.10.3.10: Within the sequence of preprocessing tokens making
up the invocation of a function-like macro, new line is
considered a normal white-space character. */