Change 21007 by [EMAIL PROTECTED] on 2003/09/02 21:21:27

        Subject: some method calls not autoloaded
        From: Yitzchak Scott-Thoennes <[EMAIL PROTECTED]>
        Date: Tue, 2 Sep 2003 15:06:29 -0700
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

... //depot/perl/pod/perlfunc.pod#405 edit
... //depot/perl/pod/perlsub.pod#52 edit

Differences ...

==== //depot/perl/pod/perlfunc.pod#405 (text) ====
Index: perl/pod/perlfunc.pod
--- perl/pod/perlfunc.pod#404~20899~    Mon Aug 25 14:05:57 2003
+++ perl/pod/perlfunc.pod       Tue Sep  2 14:21:27 2003
@@ -2736,7 +2736,7 @@
 
 =item no Module
 
-See the C<use> function, which C<no> is the opposite of.
+See the C<use> function, of which C<no> is the opposite.
 
 =item oct EXPR
 
@@ -6160,7 +6160,8 @@
 C<import> method any way it likes, though most modules just choose to
 derive their C<import> method via inheritance from the C<Exporter> class that
 is defined in the C<Exporter> module.  See L<Exporter>.  If no C<import>
-method can be found then the call is skipped.
+method can be found then the call is skipped, even if there is an AUTOLOAD
+method.
 
 If you do not want to call the package's C<import> method (for instance,
 to stop your namespace from being altered), explicitly supply the empty list:
@@ -6200,6 +6201,8 @@
 
 There's a corresponding C<no> command that unimports meanings imported
 by C<use>, i.e., it calls C<unimport Module LIST> instead of C<import>.
+It behaves exactly as C<import> does with respect to VERSION, an
+omitted LIST, empty LIST, or no unimport method being found.
 
     no integer;
     no strict 'refs';

==== //depot/perl/pod/perlsub.pod#52 (text) ====
Index: perl/pod/perlsub.pod
--- perl/pod/perlsub.pod#51~19043~      Fri Mar 21 12:43:55 2003
+++ perl/pod/perlsub.pod        Tue Sep  2 14:21:27 2003
@@ -1259,7 +1259,7 @@
 the argument C<"Foo/Bar.pm"> in @_.  See L<perlfunc/require>.
 
 And, as you'll have noticed from the previous example, if you override
-C<glob>, the C<E<lt>*E<gt>> glob operator is overridden as well.
+C<glob>, the C<< <*> >> glob operator is overridden as well.
 
 In a similar fashion, overriding the C<readline> function also overrides
 the equivalent I/O operator C<< <FILEHANDLE> >>.
@@ -1279,7 +1279,8 @@
 of the original subroutine magically appears in the global $AUTOLOAD
 variable of the same package as the C<AUTOLOAD> routine.  The name
 is not passed as an ordinary argument because, er, well, just
-because, that's why...
+because, that's why.  (As an exception, a method call to a nonexistent
+C<import> or C<unimport> method is just skipped instead.)
 
 Many C<AUTOLOAD> routines load in a definition for the requested
 subroutine using eval(), then execute that subroutine using a special
@@ -1305,7 +1306,7 @@
     use subs qw(date who ls);
     date;
     who "am", "i";
-    ls -l;
+    ls '-l';
 
 A more complete example of this is the standard Shell module, which
 can treat undefined subroutine calls as calls to external programs.
End of Patch.

Reply via email to