On Wed, Jan 15, 2014 at 3:44 AM, Bram Moolenaar <[email protected]> wrote:
>
> Yukihiro Nakadaira wrote:
>
> > > Patch 7.4.149
> > > Problem: Get E685 error when assigning a function to an autoload
> > > variable.
> > > (Yukihiro Nakadaira)
> > > Solution: Instead of having a global no_autoload variable, pass an
> > > autoload
> > > flag down to where it is used. (ZyX)
> > > Files: src/eval.c, src/testdir/test55.in, src/testdir/test55.ok,
> > > src/testdir/test60.in, src/testdir/test60.ok,
> > > src/testdir/sautest/autoload/footest.vim
> > >
> >
> > Sorry for my late reply. It need additional no_autoload to fix the
> > problem.
>
> Thanks. Perhaps we can add a test for your problem?
I wrote test for it. Please check the attached patch.
--
Yukihiro Nakadaira - [email protected]
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.
diff -r a42040fed96c src/testdir/Make_amiga.mak
--- a/src/testdir/Make_amiga.mak Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Make_amiga.mak Wed Jan 15 11:51:47 2014 +0900
@@ -34,7 +34,8 @@
test81.out test82.out test83.out test84.out test88.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test97.out test98.out \
- test99.out test100.out test101.out test102.out test103.out
+ test99.out test100.out test101.out test102.out test103.out \
+ test104.out
.SUFFIXES: .in .out
@@ -154,3 +155,4 @@
test101.out: test101.in
test102.out: test102.in
test103.out: test103.in
+test104.out: test104.in
diff -r a42040fed96c src/testdir/Make_dos.mak
--- a/src/testdir/Make_dos.mak Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Make_dos.mak Wed Jan 15 11:51:47 2014 +0900
@@ -33,7 +33,7 @@
test84.out test85.out test86.out test87.out test88.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
- test100.out test101.out test102.out test103.out
+ test100.out test101.out test102.out test103.out test104.out
SCRIPTS32 = test50.out test70.out
diff -r a42040fed96c src/testdir/Make_ming.mak
--- a/src/testdir/Make_ming.mak Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Make_ming.mak Wed Jan 15 11:51:47 2014 +0900
@@ -53,7 +53,7 @@
test84.out test85.out test86.out test87.out test88.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
- test100.out test101.out test102.out test103.out
+ test100.out test101.out test102.out test103.out test104.out
SCRIPTS32 = test50.out test70.out
diff -r a42040fed96c src/testdir/Make_os2.mak
--- a/src/testdir/Make_os2.mak Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Make_os2.mak Wed Jan 15 11:51:47 2014 +0900
@@ -35,7 +35,7 @@
test81.out test82.out test83.out test84.out test88.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
- test100.out test101.out test102.out test103.out
+ test100.out test101.out test102.out test103.out test104.out
.SUFFIXES: .in .out
diff -r a42040fed96c src/testdir/Make_vms.mms
--- a/src/testdir/Make_vms.mms Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Make_vms.mms Wed Jan 15 11:51:47 2014 +0900
@@ -79,7 +79,7 @@
test82.out test83.out test84.out test88.out test89.out \
test90.out test91.out test92.out test93.out test94.out \
test95.out test96.out test97.out test98.out test99.out \
- test100.out test101.out test102.out test103.out
+ test100.out test101.out test102.out test103.out test104.out
# Known problems:
# Test 30: a problem around mac format - unknown reason
diff -r a42040fed96c src/testdir/Makefile
--- a/src/testdir/Makefile Tue Jan 14 21:31:34 2014 +0100
+++ b/src/testdir/Makefile Wed Jan 15 11:51:47 2014 +0900
@@ -30,7 +30,8 @@
test84.out test85.out test86.out test87.out test88.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test97.out test98.out \
- test99.out test100.out test101.out test102.out test103.out
+ test99.out test100.out test101.out test102.out test103.out \
+ test104.out
SCRIPTS_GUI = test16.out
diff -r a42040fed96c src/testdir/sautest/autoload/Test104.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/testdir/sautest/autoload/Test104.vim Wed Jan 15 11:51:47 2014 +0900
@@ -0,0 +1,1 @@
+let Test104#numvar = 123
diff -r a42040fed96c src/testdir/test104.in
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/testdir/test104.in Wed Jan 15 11:51:47 2014 +0900
@@ -0,0 +1,16 @@
+Tests for autoload. vim: set ft=vim ts=8 :
+
+STARTTEST
+:so small.vim
+:set runtimepath+=./sautest
+:" Test to not autoload when assigning. It causes internal error.
+:try
+: let Test104#numvar = function('tr')
+: $put ='OK: ' . string(Test104#numvar)
+:catch
+: $put ='NG: ' . v:exception
+:endtry
+:/^Results/,$wq! test.out
+ENDTEST
+
+Results of test104:
diff -r a42040fed96c src/testdir/test104.ok
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/testdir/test104.ok Wed Jan 15 11:51:47 2014 +0900
@@ -0,0 +1,2 @@
+Results of test104:
+OK: function('tr')