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)
diff --git a/src/testdir/test_vim9_import.vim b/src/testdir/test_vim9_import.vim
index b688296..e844d4a 100644
--- a/src/testdir/test_vim9_import.vim
+++ b/src/testdir/test_vim9_import.vim
@@ -1454,6 +1454,28 @@
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