Thomas wrote:

> I noticed that code like this stops working in vim7:
> 
> fun! <SID>FooBar()
>      echom 1
> endf
> 
> let x = "Bar"
> call <SID>Foo{x}()
> 
> Is this intentional? I quickly scanned through version7.txt but didn't 
> find any info on this -- at least nothing I think of referring to this 
> problem.

Please try out this patch and check for any side effects:

*** ../../vim-7.0/src/eval.c    Sun May  7 17:53:33 2006
--- eval.c      Tue May  9 12:50:26 2006
***************
*** 18963,18969 ****
      else if (lead > 0)
      {
        lead = 3;
!       if (eval_fname_sid(lv.ll_exp_name != NULL ? lv.ll_exp_name : *pp))
        {
            /* It's "s:" or "<SID>" */
            if (current_SID <= 0)
--- 18963,18970 ----
      else if (lead > 0)
      {
        lead = 3;
!       if ((lv.ll_exp_name != NULL && eval_fname_sid(lv.ll_exp_name))
!                                                      || eval_fname_sid(*pp))
        {
            /* It's "s:" or "<SID>" */
            if (current_SID <= 0)

-- 
hundred-and-one symptoms of being an internet addict:
67. Your hard drive crashes. You haven't logged in for two hours.  You start
    to twitch. You pick up the phone and manually dial your ISP's access
    number. You try to hum to communicate with the modem.  You succeed.

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\        download, build and distribute -- http://www.A-A-P.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Reply via email to