diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-01-28 18:34:35 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-01-28 18:34:35 +0100 |
commit | 97202d951685fc4d90085da676a90644cbf72571 (patch) | |
tree | 95bd89e9b4a3f61934a273819e795c49c5191568 /src/testdir | |
parent | 61015162ba834541c42da5db6f3fa0ebe1d40e87 (diff) | |
download | vim-git-97202d951685fc4d90085da676a90644cbf72571.tar.gz |
patch 8.2.2424: some tests are known to cause an error with ASANv8.2.2424
Problem: Some tests are known to cause an error with ASAN.
Solution: Add CheckNotAsan.
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/check.vim | 8 | ||||
-rw-r--r-- | src/testdir/test_ex_mode.vim | 3 | ||||
-rw-r--r-- | src/testdir/test_ins_complete.vim | 36 | ||||
-rw-r--r-- | src/testdir/test_memory_usage.vim | 8 |
4 files changed, 35 insertions, 20 deletions
diff --git a/src/testdir/check.vim b/src/testdir/check.vim index 2a4599763..e5298bc53 100644 --- a/src/testdir/check.vim +++ b/src/testdir/check.vim @@ -183,4 +183,12 @@ func s:CheckIPv6Loopback() return v:false endfunc +" Command to check for not running under ASAN +command CheckNotAsan call CheckNotAsan() +func CheckNotAsan() + if execute('version') =~# '-fsanitize=[a-z,]*\<address\>' + throw 'Skipped: does not work with ASAN' + endif +endfunc + " vim: shiftwidth=2 sts=2 expandtab diff --git a/src/testdir/test_ex_mode.vim b/src/testdir/test_ex_mode.vim index a07649e0b..ffde11e3e 100644 --- a/src/testdir/test_ex_mode.vim +++ b/src/testdir/test_ex_mode.vim @@ -207,6 +207,9 @@ func Test_ex_mode_with_global() endfunc func Test_ex_mode_count_overflow() + " The multiplication causes an integer overflow + CheckNotAsan + " this used to cause a crash let lines =<< trim END call feedkeys("\<Esc>Q\<CR>") diff --git a/src/testdir/test_ins_complete.vim b/src/testdir/test_ins_complete.vim index e59bd207e..5aa26645b 100644 --- a/src/testdir/test_ins_complete.vim +++ b/src/testdir/test_ins_complete.vim @@ -562,27 +562,33 @@ func Test_completefunc_error() call setline(1, ['', 'abcd', '']) call assert_fails('exe "normal 2G$a\<C-X>\<C-U>"', 'E578:') - " Jump to a different window from the complete function - " TODO: The following test causes an ASAN failure. Once this issue is - " addressed, enable the following test. - "func! CompleteFunc(findstart, base) - " if a:findstart == 1 - " return col('.') - 1 - " endif - " wincmd p - " return ['a', 'b'] - "endfunc - "set completefunc=CompleteFunc - "new - "call assert_fails('exe "normal a\<C-X>\<C-U>"', 'E839:') - "close! - set completefunc& delfunc CompleteFunc delfunc CompleteFunc2 close! endfunc +func Test_completefunc_error_not_asan() + " The following test causes an ASAN failure. + CheckNotAsan + + " Jump to a different window from the complete function + func! CompleteFunc(findstart, base) + if a:findstart == 1 + return col('.') - 1 + endif + wincmd p + return ['a', 'b'] + endfunc + set completefunc=CompleteFunc + new + call assert_fails('exe "normal a\<C-X>\<C-U>"', 'E839:') + close! + + set completefunc& + delfunc CompleteFunc +endfunc + " Test for returning non-string values from 'completefunc' func Test_completefunc_invalid_data() new diff --git a/src/testdir/test_memory_usage.vim b/src/testdir/test_memory_usage.vim index 49abc5677..4f78d9a09 100644 --- a/src/testdir/test_memory_usage.vim +++ b/src/testdir/test_memory_usage.vim @@ -4,11 +4,9 @@ source check.vim CheckFeature terminal CheckNotGui -if execute('version') =~# '-fsanitize=[a-z,]*\<address\>' - " Skip tests on Travis CI ASAN build because it's difficult to estimate - " memory usage. - throw 'Skipped: does not work with ASAN' -endif +" Skip tests on Travis CI ASAN build because it's difficult to estimate memory +" usage. +CheckNotAsan source shared.vim |