After working around the stdbool issue (https://github.com/vim/vim/issues/328)
I am able to build a Windows Vim with a Perl interface, either Strawberry or
ActiveState.
With 64-bit Vim and 64-bit ActiveState Perl, I can successfully do :perl
VIM::Msg("hello") to test the interface.
But when I try doing something more complicated, like ":perldo s/abc/123/g" Vim
crashes:
> gvim.exe!ex_perldo(exarg * eap) Line 1002 + 0x21 bytes C
gvim.exe!do_one_cmd(unsigned char * * cmdlinep, int sourcing, condstack
* cstack, unsigned char * (int, void *, int)* fgetline, void * cookie) Line
2962 C
gvim.exe!do_cmdline(unsigned char * cmdline, unsigned char * (int, void
*, int)* fgetline, void * cookie, int flags) Line 1138 C
gvim.exe!nv_colon(cmdarg_S * cap) Line 5437 C
gvim.exe!normal_cmd(oparg_S * oap, int toplevel) Line 1183 C
gvim.exe!main_loop(int cmdwin, int noexmode) Line 1352 C
gvim.exe!VimMain() Line 1050 + 0x9 bytes C
gvim.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInst, char
* lpszCmdLine, int nCmdShow) Line 131 C
gvim.exe!__tmainCRTStartup() Line 275 + 0x21 bytes C
This is using the 64-bit ActiveState Perl 5.20.2.
If I instead build a 32-bit Vim with 32-bit ActiveState Perl 5.20.2, even the
:perl VIM::Msg("hello") command crashes Vim!
perl520.dll!66c54fcc()
> gvim.exe!perl_init() Line 637 C
gvim.exe!ex_perl(exarg * eap) Line 874 + 0x5 bytes C
gvim.exe!do_one_cmd(unsigned char * * cmdlinep, int sourcing, condstack
* cstack, unsigned char * (int, void *, int)* fgetline, void * cookie) Line
2962 C
gvim.exe!do_cmdline(unsigned char * cmdline, unsigned char * (int, void
*, int)* fgetline, void * cookie, int flags) Line 1138 C
gvim.exe!nv_colon(cmdarg_S * cap) Line 5437 C
gvim.exe!normal_cmd(oparg_S * oap, int toplevel) Line 1175 + 0x14
bytes C
gvim.exe!main_loop(int cmdwin, int noexmode) Line 1351 + 0xc bytes
C
gvim.exe!VimMain() Line 1053 C
gvim.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInst, char
* lpszCmdLine, int nCmdShow) Line 131 C
gvim.exe!__tmainCRTStartup() Line 275 + 0x1c bytes C
Is there anything I could be doing wrong on my end? Or is this a problem in Vim?
Vim version 7.4.872.
I do have multiple versions of Perl installed if that's relevant. I tell Vim
which to use by setting the $PATH variable at startup (in my .vimrc, or
manually if I'm testing with gvim -N -u NONE).
--
--
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/d/optout.