Problem: Internal error when using test_void() and test_unknown().
(Dominique Pelle)
Solution: Give a normal error.
#endif
case VAR_UNKNOWN:
case VAR_VOID:
- internal_error("f_empty(UNKNOWN)");
+ // Let's not use internal_error() here, otherwise
+ // empty(test_unknown()) with ABORT_ON_INTERNAL_ERROR defined makes
+ // Vim abort.
+ semsg(_(e_intern2), "f_empty(UNKNOWN)");
n = TRUE;
break;
}
case VAR_BLOB: n = VAR_TYPE_BLOB; break;
case VAR_UNKNOWN:
case VAR_VOID:
- internal_error("f_type(UNKNOWN)");
+ // Let's not use internal_error() here, otherwise
+ // empty(test_unknown()) with ABORT_ON_INTERNAL_ERROR defined
+ // makes Vim abort.
+ semsg(_(e_intern2), "f_type(UNKNOWN)");
n = -1;
break;
}
call assert_equal(0, empty(function('Test_empty')))
call assert_equal(0, empty(function('Test_empty', [0])))
+
+ call assert_fails("call empty(test_void())", 'E685:')
+ call assert_fails("call empty(test_unknown())", 'E685:')
endfunc
func Test_len()
call assert_equal(v:t_none, type(v:none))
call assert_equal(v:t_none, type(v:null))
+ call assert_fails("call type(test_void())", 'E685:')
+ call assert_fails("call type(test_unknown())", 'E685:')
call assert_equal(0, 0 + v:false)
call assert_equal(1, 0 + v:true)
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 331,
/**/
330,
/**/