aboutsummaryrefslogtreecommitdiff
path: root/build2/lexer.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-10-16 12:10:27 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-11-04 09:26:21 +0200
commitfa47916a51f530a4c728063f71b0e8d6da4dac0f (patch)
tree03ec81a4f9192d9400f8ec7d5d1f4c967ae05b6d /build2/lexer.cxx
parentb9007109a1b6044f5b3239ccacc10946c94c46f4 (diff)
Add support for lexer name scanning customization
Diffstat (limited to 'build2/lexer.cxx')
-rw-r--r--build2/lexer.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/build2/lexer.cxx b/build2/lexer.cxx
index 8f09baf..148b7c2 100644
--- a/build2/lexer.cxx
+++ b/build2/lexer.cxx
@@ -346,7 +346,7 @@ namespace build2
//
else if (m == lexer_mode::variable)
{
- if (!alnum (c) && c != '_')
+ if (c != '_' && !(lexeme.empty () ? alpha (c) : alnum (c)))
{
if (c != '.')
done = true;
@@ -357,7 +357,7 @@ namespace build2
//
get ();
xchar p (peek ());
- done = eos (p) || !(alnum (p) || p == '_');
+ done = eos (p) || !(alpha (p) || p == '_');
unget (c);
}
}
@@ -444,7 +444,7 @@ namespace build2
if (m == lexer_mode::variable)
state_.pop ();
- return token (move (lexeme), sep, quoted, ln, cn, token_printer);
+ return token (move (lexeme), sep, quoted, ln, cn);
}