From 3fd9ffd36893cd82549956de6960282791573b87 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 9 Sep 2018 17:50:48 -0400 Subject: vim-patch:8.0.1377: cannot call a dict function in autoloaded dict Problem: Cannot call a dict function in autoloaded dict. Solution: Call get_lval() passing the read-only flag. https://github.com/vim/vim/commit/6e65d594aa33be11f6074f26e9ff81b52504c62b --- src/nvim/testdir/test_autoload.vim | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 src/nvim/testdir/test_autoload.vim (limited to 'src/nvim/testdir/test_autoload.vim') diff --git a/src/nvim/testdir/test_autoload.vim b/src/nvim/testdir/test_autoload.vim new file mode 100644 index 0000000000..a92851f655 --- /dev/null +++ b/src/nvim/testdir/test_autoload.vim @@ -0,0 +1,11 @@ +" Tests for autoload + +set runtimepath=./sautest + +func! Test_autoload_dict_func() + let g:loaded_foo_vim = 0 + let g:called_foo_bar_echo = 0 + call g:foo#bar.echo() + call assert_equal(1, g:loaded_foo_vim) + call assert_equal(1, g:called_foo_bar_echo) +endfunc -- cgit From 39ab7cc6fb5948542f4ccc1d4067fdcca5183964 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 9 Sep 2018 20:28:07 -0400 Subject: vim-patch:8.0.1378: autoload script sources itself when defining function Problem: Autoload script sources itself when defining function. Solution: Pass TFN_NO_AUTOLOAD to trans_function_name(). (Yasuhiro Matsumoto, closes vim/vim#2423) https://github.com/vim/vim/commit/3388d334572f9d65a603d09d75e363805d96c5d9 --- src/nvim/testdir/test_autoload.vim | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/nvim/testdir/test_autoload.vim') diff --git a/src/nvim/testdir/test_autoload.vim b/src/nvim/testdir/test_autoload.vim index a92851f655..7396c227c9 100644 --- a/src/nvim/testdir/test_autoload.vim +++ b/src/nvim/testdir/test_autoload.vim @@ -2,10 +2,16 @@ set runtimepath=./sautest -func! Test_autoload_dict_func() +func Test_autoload_dict_func() let g:loaded_foo_vim = 0 let g:called_foo_bar_echo = 0 call g:foo#bar.echo() call assert_equal(1, g:loaded_foo_vim) call assert_equal(1, g:called_foo_bar_echo) endfunc + +func Test_source_autoload() + let g:loaded_sourced_vim = 0 + source sautest/autoload/sourced.vim + call assert_equal(1, g:loaded_sourced_vim) +endfunc -- cgit