diff options
Diffstat (limited to 'src/nvim/eval/executor.c')
-rw-r--r-- | src/nvim/eval/executor.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/nvim/eval/executor.c b/src/nvim/eval/executor.c index 4f83eaa173..bdca0338ed 100644 --- a/src/nvim/eval/executor.c +++ b/src/nvim/eval/executor.c @@ -31,9 +31,10 @@ char *e_list_index_out_of_range_nr int eexe_mod_op(typval_T *const tv1, const typval_T *const tv2, const char *const op) FUNC_ATTR_NONNULL_ALL FUNC_ATTR_NO_SANITIZE_UNDEFINED { - // Can't do anything with a Funcref, a Dict or special value on the right. + // Can't do anything with a Funcref or Dict on the right. + // v:true and friends only work with "..=". if (tv2->v_type != VAR_FUNC && tv2->v_type != VAR_DICT - && tv2->v_type != VAR_BOOL && tv2->v_type != VAR_SPECIAL) { + && ((tv2->v_type != VAR_BOOL && tv2->v_type != VAR_SPECIAL) || *op == '.')) { switch (tv1->v_type) { case VAR_DICT: case VAR_FUNC: |