summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2010-05-14 17:29:24 -0700
committerCarl Worth <cworth@cworth.org>2010-05-14 17:29:24 -0700
commite36a4d5be9a9fa3abc4fb5d0b6c3601934f7a343 (patch)
tree6c6f6d97a1a29a3fc31655d8c125587a9a40af99
parent81f01432bd4aad8e8b87ae273eb05297e35eff07 (diff)
Fix two whitespace bugs in the lexer.
The first bug was not allowing whitespace between '#' and the directive name. The second bug was swallowing a terminating newline along with any trailing whitespace on a line. With these two fixes, and the previous commit to stop emitting SPACE tokens, the recently added extra-whitespace test now passes.
-rw-r--r--glcpp-lex.l4
1 files changed, 2 insertions, 2 deletions
diff --git a/glcpp-lex.l b/glcpp-lex.l
index 3c9dda46d4..97ff1175f1 100644
--- a/glcpp-lex.l
+++ b/glcpp-lex.l
@@ -39,7 +39,7 @@ SPACE [[:space:]]
NONSPACE [^[:space:]]
NEWLINE [\n]
HSPACE [ \t]
-HASH ^{HSPACE}*#
+HASH ^{HSPACE}*#{HSPACE}*
IDENTIFIER [_a-zA-Z][_a-zA-Z0-9]*
TOKEN [^[:space:](),]+
@@ -109,6 +109,6 @@ TOKEN [^[:space:](),]+
return NEWLINE;
}
-{SPACE}+
+{HSPACE}+
%%