Hi,

2015/6/14 Sun 17:48:38 UTC+9 [email protected] wrote:
> Here is the error log:
> 
> gcc -c -Iproto -DWIN32 -DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -DHAVE_PATHDEF 
> -DFEAT_HUGE -DMS_WIN64 -DHAVE_GETTEXT -DHAVE_LOCALE_H -DDYNAMIC_GETTEXT 
> -DFEAT_C
> SCOPE -DFEAT_NETBEANS_INTG -DFEAT_GUI_W32 -DFEAT_CLIPBOARD -DFEAT_MBYTE 
> -DFEAT_MBYTE_IME -DDYNAMIC_IME -DDYNAMIC_ICONV -pipe -w -march=x86-64 -Wall 
> -Id:/dev
> el/perl/perl/lib/Core -DFEAT_PERL -DDYNAMIC_PERL 
> -DDYNAMIC_PERL_DLL=\"perl522.dll\" -DFEAT_XPM_W32 -I xpm/x64/include -I 
> xpm/x64/../include -O3 -fomit-frame
> -pointer -freg-struct-return -s if_perl.c -o gobjx86-64/if_perl.o
> In file included from d:/devel/perl/perl/lib/Core/perl.h:5470:0,
>                  from if_perl.xs:53:
> if_perl.xs: In function 'ex_perl':
> d:/devel/perl/perl/lib/Core/pp.h:62:23: error: void value not ignored as it 
> ought to be
>       mark_stack_entry = markstack_grow();     \
>                        ^
> if_perl.xs:878:6: note: in expansion of macro 'PUSHMARK'
>       PUSHMARK(SP);
>       ^
> if_perl.xs: In function 'ex_perldo':
> d:/devel/perl/perl/lib/Core/pp.h:62:23: error: void value not ignored as it 
> ought to be
>       mark_stack_entry = markstack_grow();     \
>                        ^
> if_perl.xs:981:2: note: in expansion of macro 'PUSHMARK'
>   PUSHMARK(sp);
>   ^
> Make_cyg_ming.mak:781: recipe for target 'gobjx86-64/if_perl.o' failed
> mingw32-make.exe: *** [gobjx86-64/if_perl.o] Error 1

Can you try the attached patches?

I'm not sure why the second patch is needed, but without it, Vim silently
dies when I execute :perl command.

Regards,
Ken Takata

-- 
-- 
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.
# HG changeset patch
# Parent  3ca94460e347510aa4686e03bec9153b5e21b42c

diff --git a/src/if_perl.xs b/src/if_perl.xs
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -198,7 +198,9 @@ typedef int perl_key;
 # define Perl_set_context dll_Perl_set_context
 # if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
 #  define Perl_sv_2bool_flags dll_Perl_sv_2bool_flags
-#  define Perl_xs_apiversion_bootcheck dll_Perl_xs_apiversion_bootcheck
+#  if (PERL_REVISION == 5) && (PERL_VERSION < 22)
+#   define Perl_xs_apiversion_bootcheck dll_Perl_xs_apiversion_bootcheck
+#  endif
 # else
 #  define Perl_sv_2bool dll_Perl_sv_2bool
 # endif
@@ -268,6 +270,10 @@ typedef int perl_key;
 # define Perl_call_list dll_Perl_call_list
 # define Perl_Iscopestack_ix_ptr dll_Perl_Iscopestack_ix_ptr
 # define Perl_Iunitcheckav_ptr dll_Perl_Iunitcheckav_ptr
+# if (PERL_REVISION == 5) && (PERL_VERSION >= 22)
+#  define Perl_xs_handshake dll_Perl_xs_handshake
+#  define Perl_xs_boot_epilog dll_Perl_xs_boot_epilog
+# endif
 # if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
 #  ifdef USE_ITHREADS
 #   define PL_thr_key *dll_PL_thr_key
@@ -299,7 +305,11 @@ static void (*Perl_croak_nocontext)(cons
 static I32 (*Perl_dowantarray)(pTHX);
 static void (*Perl_free_tmps)(pTHX);
 static HV* (*Perl_gv_stashpv)(pTHX_ const char*, I32);
+#if (PERL_REVISION == 5) && (PERL_VERSION >= 22)
+static I32* (*Perl_markstack_grow)(pTHX);
+#else
 static void (*Perl_markstack_grow)(pTHX);
+#endif
 static MAGIC* (*Perl_mg_find)(pTHX_ SV*, int);
 static CV* (*Perl_newXS)(pTHX_ char*, XSUBADDR_t, char*);
 static SV* (*Perl_newSV)(pTHX_ STRLEN);
@@ -321,7 +331,9 @@ static SV** (*Perl_stack_grow)(pTHX_ SV*
 static SV** (*Perl_set_context)(void*);
 #if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
 static bool (*Perl_sv_2bool_flags)(pTHX_ SV*, I32);
+# if (PERL_REVISION == 5) && (PERL_VERSION < 22)
 static void (*Perl_xs_apiversion_bootcheck)(pTHX_ SV *module, const char *api_p, STRLEN api_len);
+# endif
 #else
 static bool (*Perl_sv_2bool)(pTHX_ SV*);
 #endif
@@ -394,6 +406,10 @@ static I32* (*Perl_Iscopestack_ix_ptr)(r
 static AV** (*Perl_Iunitcheckav_ptr)(register PerlInterpreter*);
 # endif
 #endif
+#if (PERL_REVISION == 5) && (PERL_VERSION >= 22)
+static I32 (*Perl_xs_handshake)(const U32, void *, const char *, ...);
+static void (*Perl_xs_boot_epilog)(pTHX_ const U32);
+#endif
 
 #if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
 # ifdef USE_ITHREADS
@@ -453,7 +469,9 @@ static struct {
     {"Perl_set_context", (PERL_PROC*)&Perl_set_context},
 #if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
     {"Perl_sv_2bool_flags", (PERL_PROC*)&Perl_sv_2bool_flags},
+# if (PERL_REVISION == 5) && (PERL_VERSION < 22)
     {"Perl_xs_apiversion_bootcheck",(PERL_PROC*)&Perl_xs_apiversion_bootcheck},
+# endif
 #else
     {"Perl_sv_2bool", (PERL_PROC*)&Perl_sv_2bool},
 #endif
@@ -521,6 +539,10 @@ static struct {
     {"Perl_Iunitcheckav_ptr", (PERL_PROC*)&Perl_Iunitcheckav_ptr},
 # endif
 #endif
+#if (PERL_REVISION == 5) && (PERL_VERSION >= 22)
+    {"Perl_xs_handshake", (PERL_PROC*)&Perl_xs_handshake},
+    {"Perl_xs_boot_epilog", (PERL_PROC*)&Perl_xs_boot_epilog},
+#endif
 #if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
 #  ifdef USE_ITHREADS
     {"PL_thr_key", (PERL_PROC*)&dll_PL_thr_key},
# HG changeset patch
# Parent  7546ccd84a8aef12a3d8a805d76287dc3d5bd2f1

diff --git a/src/if_perl.xs b/src/if_perl.xs
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -53,6 +53,10 @@
 #include <perl.h>
 #include <XSUB.h>
 
+/* Disable API version checking on Perl 5.22. */
+#undef dXSBOOTARGSXSAPIVERCHK
+#define dXSBOOTARGSXSAPIVERCHK dXSBOOTARGSNOVERCHK
+
 
 /*
  * Work around clashes between Perl and Vim namespace.	proto.h doesn't

Raspunde prin e-mail lui