aboutsummaryrefslogtreecommitdiff
path: root/build2/test
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-11-09 17:06:35 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-11-09 17:06:35 +0200
commit323e774380995c04ae705e29ae0e51d62246333d (patch)
tree83c18773c1efbfcdb7d3eef77d837880df21dc10 /build2/test
parent3b0df49b8828921edfb7b764b0628fb164dab852 (diff)
Add support for for-loop
The semantics is similar to the C++11 range-based for: list = 1 2 3 for i: $list print $i Note that there is no scoping of any kind for the loop variable ('i' in the above example). See tests/loop/for.test for some examples/ideas. In the future the plan is to also support more general while-loop as well as break and continue.
Diffstat (limited to 'build2/test')
-rw-r--r--build2/test/script/lexer.hxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/build2/test/script/lexer.hxx b/build2/test/script/lexer.hxx
index a262764..5e013b2 100644
--- a/build2/test/script/lexer.hxx
+++ b/build2/test/script/lexer.hxx
@@ -49,7 +49,11 @@ namespace build2
const path& name,
lexer_mode m,
const char* escapes = nullptr)
- : base_lexer (is, name, nullptr, false)
+ : base_lexer (is,
+ name,
+ 1 /* line */,
+ nullptr /* escapes */,
+ false /* set_mode */)
{
mode (m, '\0', escapes);
}