summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinstallman6
-rwxr-xr-xinstallperl10
-rw-r--r--op.c3
-rwxr-xr-xt/pragma/subs.t24
4 files changed, 32 insertions, 11 deletions
diff --git a/installman b/installman
index 1fd964d114..72c76fd8a2 100755
--- a/installman
+++ b/installman
@@ -244,7 +244,7 @@ sub link {
sub rename {
my($from,$to) = @_;
- if (-f $to and not &unlink($to)) {
+ if (-f $to and not unlink($to)) {
my($i);
for ($i = 1; $i < 50; $i++) {
last if CORE::rename($to, "$to.$i");
@@ -252,8 +252,8 @@ sub rename {
warn("Cannot rename to `$to.$i': $!"), return 0
if $i >= 50; # Give up!
}
- &link($from,$to) || return 0;
- &unlink($from)
+ link($from,$to) || return 0;
+ unlink($from);
}
sub chmod {
diff --git a/installperl b/installperl
index 07c9bba250..c65af5afa9 100755
--- a/installperl
+++ b/installperl
@@ -511,7 +511,7 @@ sub safe_unlink {
sub safe_rename {
my($from,$to) = @_;
- if (-f $to and not &unlink($to)) {
+ if (-f $to and not unlink($to)) {
my($i);
for ($i = 1; $i < 50; $i++) {
last if rename($to, "$to.$i");
@@ -520,7 +520,7 @@ sub safe_rename {
if $i >= 50; # Give up!
}
link($from,$to) || return 0;
- &unlink($from);
+ unlink($from);
}
sub link {
@@ -625,16 +625,16 @@ sub installlib {
#but we have to delete old *.al and *.ix files from the 5.000
#distribution:
#This might not work because $archname might have changed.
- &unlink("$installarchlib/$name");
+ unlink("$installarchlib/$name");
}
$packlist->{"$installlib/$name"} = { type => 'file' };
if (compare($_, "$installlib/$name") || $nonono) {
- &unlink("$installlib/$name");
+ unlink("$installlib/$name");
mkpath("$installlib/$dir", $verbose, 0777);
# HP-UX (at least) needs to maintain execute permissions
# on dynamically-loaded libraries.
copy_if_diff($_, "$installlib/$name")
- and &chmod($name =~ /\.(so|$dlext)$/o ? 0555 : 0444,
+ and chmod($name =~ /\.(so|$dlext)$/o ? 0555 : 0444,
"$installlib/$name");
}
}
diff --git a/op.c b/op.c
index 3389d932ea..84a1df9adb 100644
--- a/op.c
+++ b/op.c
@@ -4561,9 +4561,6 @@ Perl_newATTRSUB(pTHX_ I32 floor, OP *o, OP *proto, OP *attrs, OP *block)
CvGV(cv) = (GV*)SvREFCNT_inc(gv);
CvFILE(cv) = CopFILE(PL_curcop);
CvSTASH(cv) = PL_curstash;
- /* use subs; etc may have turned this on
- As we're (re)defining the sub here it's definately not imported */
- GvIMPORTED_CV_off(gv);
#ifdef USE_THREADS
CvOWNER(cv) = 0;
if (!CvMUTEXP(cv)) {
diff --git a/t/pragma/subs.t b/t/pragma/subs.t
index cebb635d60..7e48e201a8 100755
--- a/t/pragma/subs.t
+++ b/t/pragma/subs.t
@@ -114,6 +114,30 @@ EXPECT
3
########
+# override a built-in function, call after definition
+use subs qw( open ) ;
+sub open { print $_[0] + $_[1], "\n" }
+open 1,2 ;
+EXPECT
+3
+########
+
+# override a built-in function, call with ()
+use subs qw( open ) ;
+open (1,2) ;
+sub open { print $_[0] + $_[1], "\n" }
+EXPECT
+3
+########
+
+# override a built-in function, call with () after definition
+use subs qw( open ) ;
+sub open { print $_[0] + $_[1], "\n" }
+open (1,2) ;
+EXPECT
+3
+########
+
--FILE-- abc
Fred 1,2 ;
1;