Changed the first example so that I don't have to read the text to be reminded of which one goes first. Also some other tweaks. Regards, Gisle --- perl-current/pod/perlfunc.pod 2003-10-06 22:13:44.000000000 -0700 +++ perl-hack/pod/perlfunc.pod 2003-10-23 05:28:58.000000000 -0700 @@ -6260,12 +6260,8 @@ Unix touch(1) command when the files I<already exist>. #!/usr/bin/perl - $now = time; - utime $now, $now, @ARGV; - -B<Note:> Under NFS, touch(1) uses the time of the NFS server, not -the time of the local machine. If there is a time synchronization -problem, the NFS server and local machine will have different times. + $atime = $mtime = time; + utime $atime, $mtime, @ARGV; Since perl 5.7.2, if the first two elements of the list are C<undef>, then the utime(2) function in the C library will be called with a null second @@ -6275,6 +6271,17 @@ utime undef, undef, @ARGV; +Under NFS this will use the time of the NFS server, not the time of +the local machine. If there is a time synchronization problem, the +NFS server and local machine will have different times. The Unix +touch(1) command will in fact normally use this form instead of the +one shown in the first example. + +Note that only passing one of the first two elements as C<undef> will +be equivalent of passing it as 0 and will not have the same effect as +described when they are both C<undef>. This case will also trigger an +uninitialized warning. + =item values HASH Returns a list consisting of all the values of the named hash.Thread Next