CheckDefFailure(['func Nested()', 'endfunc'], 'E1086:')
enddef
+func Test_call_default_args_from_func()
+ call assert_equal('string', MyDefaultArgs())
+ call assert_equal('one', MyDefaultArgs('one'))
+ call assert_fails('call MyDefaultArgs("one", "two")', 'E118:')
+endfunc
+
def Test_nested_global_function()
let lines =<< trim END
vim9script
return 'inner'
enddef
enddef
-# Outer()
-# assert_equal('inner', g:Inner())
-# delfunc g:Inner
-# Outer()
-# assert_equal('inner', g:Inner())
-# delfunc g:Inner
-# Outer()
-# assert_equal('inner', g:Inner())
-# delfunc g:Inner
+ defcompile
+ Outer()
+ assert_equal('inner', g:Inner())
+ delfunc g:Inner
+ Outer()
+ assert_equal('inner', g:Inner())
+ delfunc g:Inner
+ Outer()
+ assert_equal('inner', g:Inner())
+ delfunc g:Inner
END
CheckScriptSuccess(lines)
enddef
-func Test_call_default_args_from_func()
- call assert_equal('string', MyDefaultArgs())
- call assert_equal('one', MyDefaultArgs('one'))
- call assert_fails('call MyDefaultArgs("one", "two")', 'E118:')
-endfunc
-
func TakesOneArg(arg)
echo a:arg
endfunc
fp->uf_flags = (ufunc->uf_flags & ~FC_VIM9) | FC_COPY;
fp->uf_def_status = ufunc->uf_def_status;
fp->uf_dfunc_idx = ufunc->uf_dfunc_idx;
- if (ga_copy_strings(&fp->uf_args, &ufunc->uf_args) == FAIL
- || ga_copy_strings(&fp->uf_def_args, &ufunc->uf_def_args)
+ if (ga_copy_strings(&ufunc->uf_args, &fp->uf_args) == FAIL
+ || ga_copy_strings(&ufunc->uf_def_args, &fp->uf_def_args)
== FAIL
- || ga_copy_strings(&fp->uf_lines, &ufunc->uf_lines) == FAIL)
+ || ga_copy_strings(&ufunc->uf_lines, &fp->uf_lines) == FAIL)
goto failed;
fp->uf_name_exp = ufunc->uf_name_exp == NULL ? NULL