Mercurial > vim
comparison src/testdir/test_vim9_disassemble.vim @ 24490:08050e45bd06 v8.2.2785
patch 8.2.2785: Vim9: cannot redirect to local variable
Commit: https://github.com/vim/vim/commit/2d1c57ed3dd25c44b41b9ddd4cf63c01ae89007e
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Apr 19 20:50:03 2021 +0200
patch 8.2.2785: Vim9: cannot redirect to local variable
Problem: Vim9: cannot redirect to local variable.
Solution: Compile :redir when redirecting to a variable.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 19 Apr 2021 21:00:04 +0200 |
parents | f293bb501b30 |
children | e7577f79d6eb |
comparison
equal
deleted
inserted
replaced
24489:c2b93bfb68f8 | 24490:08050e45bd06 |
---|---|
134 '\d STORE $0\_s*' .. | 134 '\d STORE $0\_s*' .. |
135 ' :%s/a/\\=expr/&g#c\_s*' .. | 135 ' :%s/a/\\=expr/&g#c\_s*' .. |
136 '\d SUBSTITUTE :%s/a/\\=expr/&g#c\_s*' .. | 136 '\d SUBSTITUTE :%s/a/\\=expr/&g#c\_s*' .. |
137 ' 0 LOAD $0\_s*' .. | 137 ' 0 LOAD $0\_s*' .. |
138 ' -------------\_s*' .. | 138 ' -------------\_s*' .. |
139 '\d RETURN 0', | |
140 res) | |
141 enddef | |
142 | |
143 def s:RedirVar() | |
144 var result: string | |
145 redir =>> result | |
146 echo "text" | |
147 redir END | |
148 enddef | |
149 | |
150 def Test_disassemble_redir_var() | |
151 var res = execute('disass s:RedirVar') | |
152 assert_match('<SNR>\d*_RedirVar.*' .. | |
153 ' var result: string\_s*' .. | |
154 '\d PUSHS "\[NULL\]"\_s*' .. | |
155 '\d STORE $0\_s*' .. | |
156 ' redir =>> result\_s*' .. | |
157 '\d REDIR\_s*' .. | |
158 ' echo "text"\_s*' .. | |
159 '\d PUSHS "text"\_s*' .. | |
160 '\d ECHO 1\_s*' .. | |
161 ' redir END\_s*' .. | |
162 '\d LOAD $0\_s*' .. | |
163 '\d REDIR END\_s*' .. | |
164 '\d CONCAT\_s*' .. | |
165 '\d STORE $0\_s*' .. | |
139 '\d RETURN 0', | 166 '\d RETURN 0', |
140 res) | 167 res) |
141 enddef | 168 enddef |
142 | 169 |
143 def s:YankRange() | 170 def s:YankRange() |