summaryrefslogtreecommitdiff
path: root/ext/Fcntl/Fcntl.pm
diff options
context:
space:
mode:
Diffstat (limited to 'ext/Fcntl/Fcntl.pm')
-rw-r--r--ext/Fcntl/Fcntl.pm7
1 files changed, 3 insertions, 4 deletions
diff --git a/ext/Fcntl/Fcntl.pm b/ext/Fcntl/Fcntl.pm
index 74de3dfc65..ab19670af7 100644
--- a/ext/Fcntl/Fcntl.pm
+++ b/ext/Fcntl/Fcntl.pm
@@ -76,9 +76,8 @@ $VERSION = "1.03";
);
sub AUTOLOAD {
- my($constname);
- ($constname = $AUTOLOAD) =~ s/.*:://;
- my $val = constant($constname, (@_ && (caller(0))[4]) ? $_[0] : 0);
+ (my $constname = $AUTOLOAD) =~ s/.*:://;
+ my $val = constant($constname, 0);
if ($! != 0) {
if ($! =~ /Invalid/) {
$AutoLoader::AUTOLOAD = $AUTOLOAD;
@@ -90,7 +89,7 @@ sub AUTOLOAD {
";
}
}
- eval "sub $AUTOLOAD { $val }";
+ *$AUTOLOAD = sub { $val };
goto &$AUTOLOAD;
}