diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-06-17 20:08:20 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-06-17 20:08:20 +0200 |
commit | 1ef9bbe215e13a273e74fccaddd8fc5a42c76b6e (patch) | |
tree | e7e91f215db3694732b431b3ff76eaa6008827d2 /src/testdir/test_regexp_latin.vim | |
parent | 5b1affefd0e96154517ec6f71300086ae6d22d24 (diff) | |
download | vim-git-1ef9bbe215e13a273e74fccaddd8fc5a42c76b6e.tar.gz |
patch 8.0.0645: no error for illegal back reference in NFA enginev8.0.0645
Problem: The new regexp engine does not give an error for using a back
reference where it is not allowed. (Dominique Pelle)
Solution: Check the back reference like the old engine. (closes #1774)
Diffstat (limited to 'src/testdir/test_regexp_latin.vim')
-rw-r--r-- | src/testdir/test_regexp_latin.vim | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/testdir/test_regexp_latin.vim b/src/testdir/test_regexp_latin.vim index 247e5e65a..a8fa64d2a 100644 --- a/src/testdir/test_regexp_latin.vim +++ b/src/testdir/test_regexp_latin.vim @@ -62,3 +62,13 @@ func Test_eow_with_optional() call assert_equal(expected, actual) endfor endfunc + +func Test_backref() + new + call setline(1, ['one', 'two', 'three', 'four', 'five']) + call assert_equal(3, search('\%#=1\(e\)\1')) + call assert_equal(3, search('\%#=2\(e\)\1')) + call assert_fails('call search("\\%#=1\\(e\\1\\)")', 'E65:') + call assert_fails('call search("\\%#=2\\(e\\1\\)")', 'E65:') + bwipe! +endfunc |