As part of a general refactoring of the Perl core to make the migration to ponie easier, assignments to the SvIVX() macro are being converted to use the SvIV_set() macro instead. The attached patch Encode.xs.diff takes care of the one case found in Encode.xs.
Also attached is the patch Encode.pm.diff. This patch is only for the Perl core if this patch is applied to the core prior to the next release of Encode is. If you have any questions or comments on these patches, please let me know. Thanks, Steve Peters [EMAIL PROTECTED]
--- ext/Encode/Encode.pm.orig Fri Apr 8 09:28:08 2005 +++ ext/Encode/Encode.pm Fri Apr 8 09:29:43 2005 @@ -3,7 +3,7 @@ # package Encode; use strict; -our $VERSION = do { my @r = (q$Revision: 2.9 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; +our $VERSION = '2.09_01'; sub DEBUG () { 0 } use XSLoader (); XSLoader::load(__PACKAGE__, $VERSION);
--- ext/Encode/Encode.xs.orig Fri Apr 8 09:27:08 2005 +++ ext/Encode/Encode.xs Fri Apr 8 09:27:44 2005 @@ -451,7 +451,7 @@ } sv_catsv(dst, encode_method(aTHX_ enc, enc->t_utf8, src, check, &offset, term, &code)); - SvIVX(off) = (IV)offset; + SvIV_set(off, (IV)offset)); if (code == ENCODE_FOUND_TERM) { ST(0) = &PL_sv_yes; }else{