diff options
| author | Maxime Coste <mawww@kakoune.org> | 2017-10-08 19:03:38 +0800 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2017-11-01 14:05:14 +0800 |
| commit | db06acdfab918e12f9d5a17d18b5fac766613e3f (patch) | |
| tree | 62915a929882024d43c5c1bda46107ef385bc640 /src | |
| parent | 34b1f1ccb61c42cc2f2092e6b130d759a88472a7 (diff) | |
Regex: Fix computation of potential starts for lookaheads
Diffstat (limited to 'src')
| -rw-r--r-- | src/regex_impl.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/regex_impl.cc b/src/regex_impl.cc index 957f993b..09c8cc02 100644 --- a/src/regex_impl.cc +++ b/src/regex_impl.cc @@ -745,12 +745,12 @@ private: case ParsedRegex::ResetStart: return true; case ParsedRegex::LookAhead: - if (node->children.empty()) + if (not node->children.empty()) compute_start_chars(m_forward ? node->children.front() : node->children.back(), accepted, rejected); return true; case ParsedRegex::NegativeLookAhead: - if (node->children.empty()) + if (not node->children.empty()) compute_start_chars(m_forward ? node->children.front() : node->children.back(), rejected, accepted); return true; @@ -1124,6 +1124,11 @@ auto test_regex = UnitTest{[]{ kak_assert(vm.exec("# foo bar", RegexExecFlags::Search)); kak_assert(*vm.captures()[0] == '#'); } + + { + TestVM<> vm{R"((?=))"}; + kak_assert(vm.exec("")); + } }}; } |
