aboutsummaryrefslogtreecommitdiff
path: root/build2/test/script/parser.cxx
AgeCommit message (Collapse)AuthorFilesLines
2019-07-05Move config, dist, test, and install modules into libraryKaren Arutyunov1-3451/+0
2019-07-01Split build system into library and driverBoris Kolpackov1-2/+4
2019-06-05Add test id verificationKaren Arutyunov1-1/+13
2019-01-16Update copyright yearKaren Arutyunov1-1/+1
2018-05-19Update copyright yearKaren Arutyunov1-1/+1
2018-05-16Redo testscript diagnostics not to rely on invalid pathsKaren Arutyunov1-25/+10
2018-02-16Add support for detecting dependency cyclesBoris Kolpackov1-6/+6
2018-02-08Fix broken id assigning for testscript if-else scopesKaren Arutyunov1-1/+1
2018-01-05Work around bogus ubsan reportBoris Kolpackov1-1/+2
2017-12-01Fix GCC 7 -fimplicit-fallthrough warningsBoris Kolpackov1-22/+16
2017-06-19Add support for exit testscript builtinKaren Arutyunov1-267/+317
2017-06-12Remove few unused lambda capturesBoris Kolpackov1-1/+1
2017-05-01Add hxx extension for headersKaren Arutyunov1-4/+4
2017-04-01Redo handling of unhandled exceptions in async executionBoris Kolpackov1-9/+2
Here is the problem: noexcept looses the call stack. That is, unlike an unhandled exception, if noexcept is tripped, then you won't see the place where it was thrown. In this new implementation we now have noexcept only on the task thunk. And the task is called via a thunk only in case of async execution. This means that if we are executing serially (-j 1), then this will be an unhandled exception, not noexcept. Hopefully will be a bit easier to debug.
2017-03-24Fix diagnostics interleaving charactersKaren Arutyunov1-1/+2
2017-03-17Catch and dump unhandled exceptions in async task functionsBoris Kolpackov1-11/+24
The problem with relying on noexcept for this is that there is no stack.
2017-03-16Add support for >! test command redirectKaren Arutyunov1-0/+10
2017-03-15Add support for config.test.output variableKaren Arutyunov1-7/+12
2017-03-15Implement parallel testscript execution for single targetBoris Kolpackov1-4/+5
2017-03-10Implement support for wildcard patternsBoris Kolpackov1-5/+40
2017-03-02Implement parallel matchBoris Kolpackov1-17/+20
2017-03-01Add set builtinKaren Arutyunov1-7/+47
2017-02-13Make GCC 4.9, VC14 happyBoris Kolpackov1-1/+1
2017-02-13Implement parallel error propagation, keep_going modeBoris Kolpackov1-30/+56
Keep going is the default but there is now the -s|--serial-stop that makes the driver run serially and stop at first error. Also fix some lockups, other minor improvements/features.
2017-02-11Fix testscript parser not to strip leading blanks in here-docKaren Arutyunov1-7/+16
2017-01-31Add support for test command pipe, expression and command-ifKaren Arutyunov1-6/+15
2017-01-24Add support for shared here-documentsKaren Arutyunov1-19/+86
2017-01-24Add support for comparison of test command output to a fileKaren Arutyunov1-6/+24
2017-01-19Add support for portable path modifer and dot character escaping inversionKaren Arutyunov1-199/+187
2017-01-18Add missing diagnostics in testscript parserBoris Kolpackov1-0/+25
2017-01-12Implement support for narrowing down tests (config.test)Boris Kolpackov1-2/+10
2017-01-09Workaround libc++'s basic_string<line_char> crashKaren Arutyunov1-2/+2
2017-01-09Make use of operator<<(ostream, exception)Karen Arutyunov1-14/+16
2017-01-05Update copyright yearBoris Kolpackov1-1/+1
2017-01-05Add support for regex in runnerKaren Arutyunov1-45/+437
2017-01-04Treat any testscript line that starts with dot as directiveBoris Kolpackov1-24/+32
Even though we currently only recognize the include directive, we reserve any line that begins with a dot for future.
2017-01-04Change lexer modes to be semantically accurateBoris Kolpackov1-4/+6
2016-12-16Add line_regexKaren Arutyunov1-10/+16
2016-12-15Implement test.redirects, test.cleanupsBoris Kolpackov1-3/+5
2016-12-13Handle exceptions in parallel tests runsBoris Kolpackov1-19/+52
Currently we still stop on first error (or soon after) though the default mode should eventually be to keep going.
2016-12-09Initial parallel scheduler implementation, use to run testscripsBoris Kolpackov1-126/+61
2016-12-05Eliminate the use of '/...' paths on WindowsKaren Arutyunov1-3/+1
2016-12-05Adapt to semantics change of path::normalize()Karen Arutyunov1-1/+3
2016-12-01Implement testscript variable-ifBoris Kolpackov1-73/+115
Now a variable-only if is treated the same as a single variable when deciding whether it is part of a test or setup/teardown.
2016-11-30Add support for typed/untyped concatenated expansionBoris Kolpackov1-1/+1
2016-11-26Spec testscript regex, add support in token/lexerBoris Kolpackov1-77/+47
2016-11-25Implement literal here-document supportBoris Kolpackov1-27/+54
2016-11-25Allow here-document end marker to be wholly quotedBoris Kolpackov1-2/+39
2016-11-25Distinguish token quoting type and completenessBoris Kolpackov1-9/+12
2016-11-23Implement value type propagation on expansionBoris Kolpackov1-1/+1
Currently, we only propagate types of sole, unquoted expansions (variable, function call, or eval context), similar to NULL. To untypify the value, simply quote it.