Skip Menu |

This queue is for tickets about the Encode CPAN distribution.

Report information
The Basics
Id: 16663
Status: open
Priority: 0/
Queue: Encode

People
Owner: Nobody in particular
Requestors: dazio_r [...] yahoo.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: (no value)
Fixed in: (no value)



Subject: encoding iso-2022-jp doesnot work on ebcdic
perl-5.8.7.tar.gz from cpan.org was used. Perl version : 5.8.7 Operating System : z/OS 1.4 --------------------------------- use encoding 'iso-2022-jp'; $a = "$B&&(B"; # && is \x50\x50 on EBCDIC which is valid acc to jis0208.ucm print "a : $a\n"; ---------------------------------- On running the above script, the o/p on ebcdic : Malformed UTF-8 character (unexpected end of string) at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line 330. Malformed UTF-8 character (unexpected continuation byte 0x6a, with no preceding start byte) in pattern match (m//) at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line 337. Malformed UTF-8 character (unexpected continuation byte 0x6a, with no preceding start byte) in pattern match (m//) at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line 337. */Bæ=-╚╬╔ceB&-1dB°°B& Notes : iso-2022-jp was enabled by removing the line : 'iso-2022-jp' => 'Encode::JP', outside the unless (ord 'A' == 193) block.
On Wed Dec 21 08:56:44 2005, guest wrote: Show quoted text
> > perl-5.8.7.tar.gz from cpan.org was used. > > Perl version : 5.8.7 > Operating System : z/OS 1.4 > > --------------------------------- > use encoding 'iso-2022-jp'; > $a = "$B&&(B"; # && is \x50\x50 on EBCDIC which is valid acc to > jis0208.ucm > print "a : $a\n"; > ---------------------------------- > > On running the above script, the o/p on ebcdic : > > Malformed UTF-8 character (unexpected end of string) > at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl > line 330. > Malformed UTF-8 character (unexpected continuation > byte 0x6a, with no preceding start byte) in pattern > match (m//) at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line > 337. > Malformed UTF-8 character (unexpected continuation > byte 0x6a, with no preceding start byte) in pattern > match (m//) at > /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line > 337. > */Bæ=-╚╬╔ceB&-1dB°°B& > > Notes : iso-2022-jp was enabled by removing the line : > 'iso-2022-jp' => 'Encode::JP', > outside the unless (ord 'A' == 193) block.
Encode::(CN|JP|KR|TW) does not work well on EBCDIC platforms. Sorry. What I need is EBCDIC platform which I have no access. patches welcome. Dan the Encode Maintainer
From: SMPETERS [...] cpan.org
On Sun Jan 15 10:00:21 2006, DANKOGAI wrote: Show quoted text
> On Wed Dec 21 08:56:44 2005, guest wrote:
> > > > perl-5.8.7.tar.gz from cpan.org was used. > > > > Perl version : 5.8.7 > > Operating System : z/OS 1.4 > > > > --------------------------------- > > use encoding 'iso-2022-jp'; > > $a = "$B&&(B"; # && is \x50\x50 on EBCDIC which is valid acc to > > jis0208.ucm > > print "a : $a\n"; > > ---------------------------------- > > > > On running the above script, the o/p on ebcdic : > > > > Malformed UTF-8 character (unexpected end of string) > > at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl > > line 330. > > Malformed UTF-8 character (unexpected continuation > > byte 0x6a, with no preceding start byte) in pattern > > match (m//) at /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line > > 337. > > Malformed UTF-8 character (unexpected continuation > > byte 0x6a, with no preceding start byte) in pattern > > match (m//) at > > /u/isldev2/tmp_dbg/perl-5.8.7/lib/utf8_heavy.pl line > > 337. > > */Bæ=-╚╬╔ceB&-1dB°°B& > > > > Notes : iso-2022-jp was enabled by removing the line : > > 'iso-2022-jp' => 'Encode::JP', > > outside the unless (ord 'A' == 193) block.
> > Encode::(CN|JP|KR|TW) does not work well on EBCDIC platforms. Sorry. > What I need is > EBCDIC platform which I have no access. patches welcome. > > Dan the Encode Maintainer >
In the Perl core, we have some people trying to support Perl on EBCDIC platforms. Unfortunately, we have no access either. There is one test, however, that relies on Encode::MIME::Header::ISO_2022_JP, which isn't available on EBCDIC. I made the following change to the Perl core to get the tests skipped on EBCDIC platforms. Thanks! ==== //depot/perl/ext/Encode/t/mime_header_iso2022jp.t#3 (text) ==== @@ -1,5 +1,11 @@ -use Test::More tests => 14; +use Test::More; + +if( ord("A") == 193 ) { + plan skip_all => 'No Encode::MIME::Header::ISO_2022_JP on EBCDIC Platforms'; +} else { + plan tests => 14; +} use strict; use Encode;