X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Futf8.pm;h=f06b893a591b60cb3c0bd9ff6a0b1ac50ce13a4d;hb=190eec7cba34ea20a9dea7228e79de06d80262f7;hp=d9e9becdda5c9e5917296d33566132db3868c209;hpb=cb50131aab68ac6dda048612c6e853b8cb08701e;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/utf8.pm b/lib/utf8.pm index d9e9bec..f06b893 100644 --- a/lib/utf8.pm +++ b/lib/utf8.pm @@ -1,17 +1,26 @@ package utf8; +if (ord('A') != 193) { # make things more pragmatic for EBCDIC folk + +$utf8::hint_bits = 0x00800000; + +our $VERSION = '1.00'; + sub import { - $^H |= 0x00800000; + $^H |= $utf8::hint_bits; $enc{caller()} = $_[1] if $_[1]; } sub unimport { - $^H &= ~0x00800000; + $^H &= ~$utf8::hint_bits; } sub AUTOLOAD { require "utf8_heavy.pl"; - goto &$AUTOLOAD; + goto &$AUTOLOAD if defined &$AUTOLOAD; + Carp::croak("Undefined subroutine $AUTOLOAD called"); +} + } 1; @@ -29,7 +38,7 @@ utf8 - Perl pragma to enable/disable UTF-8 in source code =head1 DESCRIPTION WARNING: The implementation of Unicode support in Perl is incomplete. -Expect sudden and unannounced changes! +See L for the exact details. The C pragma tells the Perl parser to allow UTF-8 in the program text in the current lexical scope. The C pragma @@ -42,7 +51,9 @@ in future we would like to standardize on the UTF-8 encoding for source text. Until UTF-8 becomes the default format for source text, this pragma should be used to recognize UTF-8 in the source. When UTF-8 becomes the standard source format, this pragma will -effectively become a no-op. +effectively become a no-op. This pragma already is a no-op on +EBCDIC platforms (where it is alright to code perl in EBCDIC +rather than UTF-8). Enabling the C pragma has the following effects: @@ -70,6 +81,6 @@ of byte semantics. =head1 SEE ALSO -L, L +L, L =cut