diff --git a/src/if_perl.xs b/src/if_perl.xs index e1e6ada220..9b8d2c2f69 100644 --- a/src/if_perl.xs +++ b/src/if_perl.xs @@ -611,7 +611,7 @@ newWINrv(rv, ptr) if (ptr->w_perl_private == NULL) { ptr->w_perl_private = newSV(0); - sv_setiv(ptr->w_perl_private, (IV)ptr); + sv_setiv(ptr->w_perl_private, PTR2IV(ptr)); } else SvREFCNT_inc(ptr->w_perl_private); @@ -629,7 +629,7 @@ newBUFrv(rv, ptr) if (ptr->b_perl_private == NULL) { ptr->b_perl_private = newSV(0); - sv_setiv(ptr->b_perl_private, (IV)ptr); + sv_setiv(ptr->b_perl_private, PTR2IV(ptr)); } else SvREFCNT_inc(ptr->b_perl_private); diff --git a/src/typemap b/src/typemap index 40049237be..ca1600ef2e 100644 --- a/src/typemap +++ b/src/typemap @@ -6,7 +6,7 @@ INPUT T_VIOBJNOMUNGE if (sv_isa($arg, \"${ntype}\")) { IV tmp = SvIV((SV*)SvRV($arg)); - $var = ($type) tmp; + $var = INT2PTR($type, tmp); if (!tmp) croak(\"$ntype no longer exists\"); } diff --git a/src/version.c b/src/version.c index bce741c093..22a7998263 100644 --- a/src/version.c +++ b/src/version.c @@ -714,6 +714,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 439, /**/ 438, /**/