aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
diff options
context:
space:
mode:
authorPatrick <patrick@bitscope.com>2016-07-13 16:49:22 +1000
committerPatrick <patrick@bitscope.com>2016-07-13 17:47:46 +1000
commita3dc7ef44577dc4708ac7b4c329c1620770aadc3 (patch)
tree7ad18fa84753c5c5302e74f949cd0581b5c4ea58 /src/nvim/eval.c
parentdcbd1c7b13e98766754c4e75d3bb59021248217e (diff)
downloadrneovim-a3dc7ef44577dc4708ac7b4c329c1620770aadc3.tar.gz
rneovim-a3dc7ef44577dc4708ac7b4c329c1620770aadc3.tar.bz2
rneovim-a3dc7ef44577dc4708ac7b4c329c1620770aadc3.zip
vim-patch:7.4.1546
Problem: Sticky type checking is more annoying than useful. Solution: Remove the error for changing a variable type. https://github.com/vim/vim/commit/f6f32c38bf3319144a84a01a154c8c91939e7acf Note: There are a bunch of other changes to eval.txt that I believe are N/A and not related to this patch.
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r--src/nvim/eval.c15
1 files changed, 1 insertions, 14 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 47d44b148a..a43a389478 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -18886,19 +18886,6 @@ set_var (
|| tv_check_lock(v->di_tv.v_lock, name, false)) {
return;
}
- if (v->di_tv.v_type != tv->v_type
- && !((v->di_tv.v_type == VAR_STRING
- || v->di_tv.v_type == VAR_NUMBER)
- && (tv->v_type == VAR_STRING
- || tv->v_type == VAR_NUMBER))
- && !((v->di_tv.v_type == VAR_NUMBER
- || v->di_tv.v_type == VAR_FLOAT)
- && (tv->v_type == VAR_NUMBER
- || tv->v_type == VAR_FLOAT))
- ) {
- EMSG2(_("E706: Variable type mismatch for: %s"), name);
- return;
- }
// Handle setting internal v: variables separately where needed to
// prevent changing the type.
@@ -18908,7 +18895,7 @@ set_var (
if (copy || tv->v_type != VAR_STRING)
v->di_tv.vval.v_string = vim_strsave(get_tv_string(tv));
else {
- /* Take over the string to avoid an extra alloc/free. */
+ // Take over the string to avoid an extra alloc/free.
v->di_tv.vval.v_string = tv->vval.v_string;
tv->vval.v_string = NULL;
}