Mercurial > vim
comparison src/testdir/test_vim9_import.vim @ 27669:5c4ab8d4472c v8.2.4360
patch 8.2.4360: Vim9: allowing use of "s:" leads to inconsistencies
Commit: https://github.com/vim/vim/commit/a749a42ed25534c88c636e5ab6603f1f97b857a4
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 12 19:52:25 2022 +0000
patch 8.2.4360: Vim9: allowing use of "s:" leads to inconsistencies
Problem: Vim9: allowing use of "s:" leads to inconsistencies.
Solution: Disallow using "s:" in Vim9 script at the script level.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 12 Feb 2022 21:00:03 +0100 |
parents | db1831f585a4 |
children | 60ac4228a73d |
comparison
equal
deleted
inserted
replaced
27668:407a08328369 | 27669:5c4ab8d4472c |
---|---|
1122 END | 1122 END |
1123 writefile(lines, 'XExportReload') | 1123 writefile(lines, 'XExportReload') |
1124 lines =<< trim END | 1124 lines =<< trim END |
1125 vim9script noclear | 1125 vim9script noclear |
1126 g:loadCount += 1 | 1126 g:loadCount += 1 |
1127 var s:reloaded = 'init' | 1127 var reloaded = 'init' |
1128 import './XExportReload' as exp | 1128 import './XExportReload' as exp |
1129 | 1129 |
1130 def Again(): string | 1130 def Again(): string |
1131 return 'again' | 1131 return 'again' |
1132 enddef | 1132 enddef |
1133 | 1133 |
1134 exp.TheFunc() | 1134 exp.TheFunc() |
1135 | 1135 |
1136 if exists('s:loaded') | finish | endif | 1136 if exists('loaded') | finish | endif |
1137 var s:loaded = true | 1137 var loaded = true |
1138 | 1138 |
1139 var s:notReloaded = 'yes' | 1139 var notReloaded = 'yes' |
1140 s:reloaded = 'first' | 1140 reloaded = 'first' |
1141 def g:Values(): list<string> | 1141 def g:Values(): list<string> |
1142 return [s:reloaded, s:notReloaded, Again(), Once(), exp.exported] | 1142 return [reloaded, notReloaded, Again(), Once(), exp.exported] |
1143 enddef | 1143 enddef |
1144 | 1144 |
1145 def Once(): string | 1145 def Once(): string |
1146 return 'once' | 1146 return 'once' |
1147 enddef | 1147 enddef |