Mercurial > vim
comparison src/evalvars.c @ 21548:4e679db1c404 v8.2.1324
patch 8.2.1324: Vim9: line break after "=" does not work
Commit: https://github.com/vim/vim/commit/c7e44a7e4caedc1bc33f5c8e481109c0ae002823
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Jul 29 21:37:43 2020 +0200
patch 8.2.1324: Vim9: line break after "=" does not work
Problem: Vim9: line break after "=" does not work.
Solution: Also allow for NUL after "=". (closes https://github.com/vim/vim/issues/6549)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 29 Jul 2020 21:45:04 +0200 |
parents | 574517d682cf |
children | 586241ee8096 |
comparison
equal
deleted
inserted
replaced
21547:a24d2c2cbffd | 21548:4e679db1c404 |
---|---|
799 expr += 2; | 799 expr += 2; |
800 } | 800 } |
801 else | 801 else |
802 ++expr; | 802 ++expr; |
803 | 803 |
804 if (vim9script && (!VIM_ISWHITE(*argend) || !VIM_ISWHITE(*expr))) | 804 if (vim9script && (!VIM_ISWHITE(*argend) |
805 || !IS_WHITE_OR_NUL(*expr))) | |
805 { | 806 { |
806 vim_strncpy(op, expr - len, len); | 807 vim_strncpy(op, expr - len, len); |
807 semsg(_(e_white_both), op); | 808 semsg(_(e_white_both), op); |
808 i = FAIL; | 809 i = FAIL; |
809 } | 810 } |
810 expr = skipwhite(expr); | |
811 | 811 |
812 if (eap->skip) | 812 if (eap->skip) |
813 ++emsg_skip; | 813 ++emsg_skip; |
814 CLEAR_FIELD(evalarg); | 814 CLEAR_FIELD(evalarg); |
815 evalarg.eval_flags = eap->skip ? 0 : EVAL_EVALUATE; | 815 evalarg.eval_flags = eap->skip ? 0 : EVAL_EVALUATE; |
816 if (getline_equal(eap->getline, eap->cookie, getsourceline)) | 816 if (getline_equal(eap->getline, eap->cookie, getsourceline)) |
817 { | 817 { |
818 evalarg.eval_getline = eap->getline; | 818 evalarg.eval_getline = eap->getline; |
819 evalarg.eval_cookie = eap->cookie; | 819 evalarg.eval_cookie = eap->cookie; |
820 } | 820 } |
821 expr = skipwhite_and_linebreak(expr, &evalarg); | |
821 i = eval0(expr, &rettv, eap, &evalarg); | 822 i = eval0(expr, &rettv, eap, &evalarg); |
822 if (eap->skip) | 823 if (eap->skip) |
823 --emsg_skip; | 824 --emsg_skip; |
824 clear_evalarg(&evalarg, eap); | 825 clear_evalarg(&evalarg, eap); |
825 } | 826 } |