updated for version 7.4b.007
Problem: On 32 bit MS-Windows :perldo does not work.
Solution: Make sure time_t uses 32 bits. (Ken Takata)
diff --git a/src/if_perl.xs b/src/if_perl.xs
index 118f604..4c46f2a 100644
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -13,8 +13,22 @@
#define _memory_h /* avoid memset redeclaration */
#define IN_PERL_FILE /* don't include if_perl.pro from proto.h */
+/*
+ * Currently 32-bit version of ActivePerl is built with VC6.
+ * (http://community.activestate.com/faq/windows-compilers-perl-modules)
+ * It means that time_t should be 32-bit. However the default size of
+ * time_t is 64-bit since VC8. So we have to define _USE_32BIT_TIME_T.
+ */
+#if defined(WIN32) && !defined(_WIN64)
+# define _USE_32BIT_TIME_T
+#endif
+
#include "vim.h"
+#include <EXTERN.h>
+#include <perl.h>
+#include <XSUB.h>
+
/*
* Work around clashes between Perl and Vim namespace. proto.h doesn't