1
0
forked from aniani/vim

patch 9.0.0366: cannot use import->Func() in lambda

Problem:    Cannot use import->Func() in lambda. (Israel Chauca Fuentes)
Solution:   Adjust how an expression in a lambda is parsed. (closes #11042)
This commit is contained in:
Bram Moolenaar
2022-09-03 12:09:07 +01:00
parent 91a874eb88
commit 6ac69ed9a2
3 changed files with 41 additions and 3 deletions

View File

@@ -1454,6 +1454,28 @@ def Run_Test_import_in_spellsuggest_expr()
set nospell spellsuggest& verbose=0
enddef
def Test_import_in_lambda_method()
var lines =<< trim END
vim9script
export def Retarg(e: any): any
return e
enddef
END
writefile(lines, 'XexportRetarg.vim')
lines =<< trim END
vim9script
import './XexportRetarg.vim'
def Lambda(): string
var F = (x) => x->XexportRetarg.Retarg()
return F('arg')
enddef
assert_equal('arg', Lambda())
END
v9.CheckScriptSuccess(lines)
delete('XexportRetarg.vim')
enddef
def Test_export_shadows_global_function()
mkdir('Xglobdir/autoload', 'p')
var save_rtp = &rtp