forked from aniani/vim
patch 8.1.1355: obvious mistakes are accepted as valid expressions
Problem: Obvious mistakes are accepted as valid expressions. Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto, closes #3981)
This commit is contained in:
@@ -512,3 +512,14 @@ func Test_empty_concatenate()
|
||||
call assert_equal('b', 'a'[4:0] . 'b')
|
||||
call assert_equal('b', 'b' . 'a'[4:0])
|
||||
endfunc
|
||||
|
||||
func Test_broken_number()
|
||||
let X = 'bad'
|
||||
call assert_fails('echo 1X', 'E15:')
|
||||
call assert_fails('echo 0b1X', 'E15:')
|
||||
call assert_fails('echo 0b12', 'E15:')
|
||||
call assert_fails('echo 0x1X', 'E15:')
|
||||
call assert_fails('echo 011X', 'E15:')
|
||||
call assert_equal(2, str2nr('2a'))
|
||||
call assert_fails('inoremap <Char-0b1z> b', 'E474:')
|
||||
endfunc
|
||||
|
Reference in New Issue
Block a user