On Thursday, March 17, 2016 at 7:24:18 AM UTC+9, Bram Moolenaar wrote: > Yasuhiro wrote: > > > On Wednesday, March 16, 2016 at 1:03:36 PM UTC+9, mattn wrote: > > > Sorry, still bad. I'll look into it. > > > > Updated. Should work. > > > > https://gist.github.com/mattn/394e8a95be26d9c7bce9 > > Thanks. I included it with a few more changes. > > I did find another problem: > > > function! s:cache_clear(arg) dict > return self.name . '/' . a:arg > endfunction > > let s:obj = {'name': 'foo'} > let s:obj['clear'] = function('s:cache_clear', ['bar']) > echo s:obj.clear() > " fails > call s:obj.clear() > > let F = s:obj.clear > "fails > echo F() > > > Won't have time today to look into it.
Thank you for doing this. BTW, below is another problem to be fixed? diff --git a/src/eval.c b/src/eval.c index 6280323..b9eb792 100644 --- a/src/eval.c +++ b/src/eval.c @@ -23894,6 +23894,12 @@ trans_function_name( *pp = end; } else + if (lv.ll_tv->v_type == VAR_PARTIAL && lv.ll_tv->vval.v_string != NULL) + { + name = vim_strsave(lv.ll_tv->vval.v_partial->pt_name); + *pp = end; + } + else { if (!skip && !(flags & TFN_QUIET) && (fdp == NULL || lv.ll_dict == NULL || fdp->fd_newkey == NULL)) -- -- 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 vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.