Skip test for changing TZ if running in a pseudo-fork (on Win32)
[p5sagit/p5-mst-13.2.git] / pod / perlport.pod
index f8fb1fe..9920a83 100644 (file)
@@ -641,9 +641,6 @@ The value for C<$offset> in Unix will be C<0>, but in Mac OS will be
 some large number.  C<$offset> can then be added to a Unix time value
 to get what should be the proper value on any system.
 
-On Windows (at least), you shouldn't pass a negative value to C<gmtime> or
-C<localtime>.
-
 =head2 Character sets and character encoding
 
 Assume very little about character sets.
@@ -815,6 +812,7 @@ are a few of the more popular Unix flavors:
     dgux          dgux       AViiON-dgux
     DYNIX/ptx     dynixptx   i386-dynixptx
     FreeBSD       freebsd    freebsd-i386    
+    Haiku         haiku      BePC-haiku
     Linux         linux      arm-linux
     Linux         linux      i386-linux
     Linux         linux      i586-linux
@@ -1602,9 +1600,11 @@ C<-x>, C<-o>. (S<Mac OS>, Win32, VMS, S<RISC OS>)
 C<-b>, C<-c>, C<-k>, C<-g>, C<-p>, C<-u>, C<-A> are not implemented.
 (S<Mac OS>)
 
-C<-g>, C<-k>, C<-l>, C<-p>, C<-u>, C<-A> are not particularly meaningful.
+C<-g>, C<-k>, C<-l>, C<-u>, C<-A> are not particularly meaningful.
 (Win32, VMS, S<RISC OS>)
 
+C<-p> is not particularly meaningful. (VMS, S<RISC OS>)
+
 C<-d> is true if passed a device spec without an explicit directory.
 (VMS)
 
@@ -1863,7 +1863,10 @@ platforms.  See L<File::Glob> for portability information.
 
 =item gmtime
 
-Same portability caveats as L<localtime>.
+In theory, gmtime() is reliable from -2**63 to 2**63-1.  However,
+because work arounds in the implementation use floating point numbers,
+it will become inaccurate as the time gets larger.  This is a bug and
+will be fixed in the future.
 
 =item ioctl FILEHANDLE,FUNCTION,SCALAR
 
@@ -1914,10 +1917,9 @@ Available on 64 bit OpenVMS 8.2 and later.  (VMS)
 
 =item localtime
 
-Because Perl currently relies on the native standard C localtime()
-function, it is only safe to use times between 0 and (2**31)-1.  Times
-outside this range may result in unexpected behavior depending on your
-operating system's implementation of localtime().
+localtime() has the same range as L<gmtime>, but because time zone
+rules change its accuracy for historical and future times may degrade
+but usually by no more than an hour.
 
 =item lstat