summaryrefslogtreecommitdiff
path: root/lib/open.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/open.pm')
-rw-r--r--lib/open.pm13
1 files changed, 7 insertions, 6 deletions
diff --git a/lib/open.pm b/lib/open.pm
index 4515899461..35657623fa 100644
--- a/lib/open.pm
+++ b/lib/open.pm
@@ -1,9 +1,8 @@
package open;
use warnings;
-use Carp;
$open::hint_bits = 0x20000; # HINT_LOCALIZE_HH
-our $VERSION = '1.04';
+our $VERSION = '1.04_01';
require 5.008001; # for PerlIO::get_layers()
@@ -14,6 +13,10 @@ sub _get_encname {
return;
}
+sub croak {
+ require Carp; goto &Carp::croak;
+}
+
sub _drop_oldenc {
# If by the time we arrive here there already is at the top of the
# perlio layer stack an encoding identical to what we would like
@@ -39,13 +42,11 @@ sub _drop_oldenc {
require Encode;
my ($loname, $lcname) = _get_encname($old[-2]);
unless (defined $lcname) { # Should we trust get_layers()?
- require Carp;
- Carp::croak("open: Unknown encoding '$loname'");
+ croak("open: Unknown encoding '$loname'");
}
my ($voname, $vcname) = _get_encname($new[-1]);
unless (defined $vcname) {
- require Carp;
- Carp::croak("open: Unknown encoding '$voname'");
+ croak("open: Unknown encoding '$voname'");
}
if ($lcname eq $vcname) {
binmode($h, ":pop"); # utf8 is part of the encoding layer