Document the DJGPP status.
[p5sagit/p5-mst-13.2.git] / pod / perldelta.pod
index 509357c..12b48cc 100644 (file)
@@ -118,6 +118,24 @@ point format on OpenVMS Alpha, potentially breaking binary compatibility
 with external libraries or existing data.  G_FLOAT is still available as
 a configuration option.  The default on VAX (D_FLOAT) has not changed.
 
+=head2 New Unicode Semantics (no more C<use utf8>, almost)
+
+Previously in Perl 5.6 to use Unicode one would say "use utf8" and
+then the operations (like string concatenation) were Unicode-aware
+in that lexical scope.
+
+This was found to be an inconvenient interface, and in Perl 5.8 the
+Unicode model has completely changed: now the "Unicodeness" is bound
+to the data itself, and for most of the time "use utf8" is not needed
+at all.  The only remaining use of "use utf8" is when the Perl script
+itself has been written in the UTF-8 encoding of Unicode.  (UTF-8 has
+not been made the default since there are many Perl scripts out there
+that are using various national eight-bit character sets, which would
+be illegal in UTF-8.)
+
+See L<perluniintro> for the explanation of the current model,
+and L<utf8> for the current use of the utf8 pragma.
+
 =head2 New Unicode Properties
 
 Unicode I<scripts> are now supported. Scripts are similar to (and superior
@@ -299,6 +317,42 @@ behaviour. See L<"Localising Tied Arrays and Hashes Is Broken">.
 
 =head1 Core Enhancements
 
+=head2 Unicode Overhaul
+
+Unicode in general should be now much more usable than in Perl 5.6.0
+(or even in 5.6.1).  Unicode can be used in hash keys, Unicode in
+regular expressions should work now, Unicode in tr/// should work now,
+Unicode in I/O should work now.  See L<perluniintro> for introduction
+and L<perlunicode> for details.
+
+=over 4
+
+=item *
+
+The Unicode Character Database coming with Perl has been upgraded
+to Unicode 3.2.0.  For more information, see http://www.unicode.org/ .
+[561+] (5.6.1 has UCD 3.0.1.)
+
+=item *
+
+For developers interested in enhancing Perl's Unicode capabilities:
+almost all the UCD files are included with the Perl distribution in
+the F<lib/unicore> subdirectory.  The most notable omission, for space
+considerations, is the Unihan database.
+
+=item *
+
+The properties \p{Blank} and \p{SpacePerl} have been added. "Blank" is like
+C isblank(), that is, it contains only "horizontal whitespace" (the space
+character is, the newline isn't), and the "SpacePerl" is the Unicode
+equivalent of C<\s> (\p{Space} isn't, since that includes the vertical
+tabulator character, whereas C<\s> doesn't.)
+
+See "New Unicode Properties" earlier in this document for additional
+information on changes with Unicode properties.
+
+=back
+
 =head2 PerlIO is Now The Default
 
 =over 4
@@ -392,23 +446,19 @@ Anonymous temporary files are available without need to
 
 That is a literal undef, not an undefined value.
 
-=item *
-
-The list form of C<open> is now implemented for pipes (at least on UNIX):
-
-   open($fh,"-|", 'cat', '/etc/motd')
-
-creates a pipe, and runs the equivalent of exec('cat', '/etc/motd') in
-the child process.
+=back
 
-=item *
+=head2 ithreads
 
-If your locale environment variables (LANGUAGE, LC_ALL, LC_CTYPE, LANG)
-contain the strings 'UTF-8' or 'UTF8' (case-insensitive matching),
-the default encoding of your STDIN, STDOUT, and STDERR, and of
-B<any subsequent file open>, is UTF-8.
+The new interpreter threads ("ithreads" for short) implementation of
+multithreading, by Arthur Bergman, replaces the old "5.005 threads"
+implementation.  In the ithreads model any data sharing between
+threads must be explicit, as opposed to the model where data sharing
+was implicit.  See L<threads> and L<threads::shared>, and
+L<perlthrtut>.
 
-=back
+As a part of the ithreads implementation Perl will also use
+any necessary and detectable reentrant libc interfaces.
 
 =head2 Restricted Hashes
 
@@ -432,42 +482,6 @@ internal state since the current operation is always finished first,
 but the signal may take more time to get heard.  Note that breaking
 out from potentially blocking operations should still work, though.
 
-=head2 Unicode Overhaul
-
-Unicode in general should be now much more usable than in Perl 5.6.0
-(or even in 5.6.1).  Unicode can be used in hash keys, Unicode in
-regular expressions should work now, Unicode in tr/// should work now,
-Unicode in I/O should work now.  See L<perluniintro> for introduction
-and L<perlunicode> for details.
-
-=over 4
-
-=item *
-
-The Unicode Character Database coming with Perl has been upgraded
-to Unicode 3.2.0.  For more information, see http://www.unicode.org/ .
-[561+] (5.6.1 has UCD 3.0.1.)
-
-=item *
-
-For developers interested in enhancing Perl's Unicode capabilities:
-almost all the UCD files are included with the Perl distribution in
-the F<lib/unicore> subdirectory.  The most notable omission, for space
-considerations, is the Unihan database.
-
-=item *
-
-The properties \p{Blank} and \p{SpacePerl} have been added. "Blank" is like
-C isblank(), that is, it contains only "horizontal whitespace" (the space
-character is, the newline isn't), and the "SpacePerl" is the Unicode
-equivalent of C<\s> (\p{Space} isn't, since that includes the vertical
-tabulator character, whereas C<\s> doesn't.)
-
-See "New Unicode Properties" earlier in this document for additional
-information on changes with Unicode properties.
-
-=back
-
 =head2 Understanding of Numbers
 
 In general a lot of fixing has happened in the area of Perl's
@@ -1128,9 +1142,7 @@ L<threads::shared>, and L<perlthrtut>.
 =item *
 
 C<threads::shared>, by Arthur Bergman, allows data sharing for
-interpreter threads.  In the ithreads model any data sharing between
-threads must be explicit, as opposed to the old 5.005 thread model
-where data sharing was implicit.  See L<threads::shared>.
+interpreter threads.  See L<threads::shared>.
 
 =item *
 
@@ -3122,6 +3134,164 @@ to be closer to the library/extension they are testing.)
 
 =head1 Known Problems
 
+=head2 The Compiler Suite Is Still Very Experimental
+
+The compiler suite is slowly getting better but it continues to be
+highly experimental.  Use in production environments is discouraged.
+
+=head2 Localising Tied Arrays and Hashes Is Broken
+
+    local %tied_array;
+
+doesn't work as one would expect: the old value is restored
+incorrectly.  This will be changed in a future release, but we don't
+know yet what the new semantics will exactly be.  In any case, the
+change will break existing code that relies on the current
+(ill-defined) semantics, so just avoid doing this in general.
+
+=head2 Building Extensions Can Fail Because Of Largefiles
+
+Some extensions like mod_perl are known to have issues with
+`largefiles', a change brought by Perl 5.6.0 in which file offsets
+default to 64 bits wide, where supported.  Modules may fail to compile
+at all, or they may compile and work incorrectly.  Currently, there
+is no good solution for the problem, but Configure now provides
+appropriate non-largefile ccflags, ldflags, libswanted, and libs
+in the %Config hash (e.g., $Config{ccflags_nolargefiles}) so the
+extensions that are having problems can try configuring themselves
+without the largefileness.  This is admittedly not a clean solution,
+and the solution may not even work at all.  One potential failure is
+whether one can (or, if one can, whether it's a good idea to) link
+together at all binaries with different ideas about file offsets;
+all this is platform-dependent.
+
+=head2 Modifying $_ Inside for(..)
+
+   for (1..5) { $_++ }
+
+works without complaint.  It shouldn't.  (You should be able to
+modify only lvalue elements inside the loops.)  You can see the
+correct behaviour by replacing the 1..5 with 1, 2, 3, 4, 5.
+
+=head2 mod_perl 1.26 Doesn't Build With Threaded Perl
+
+Use mod_perl 1.27 or higher.
+
+=head2 lib/ftmp-security tests warn 'system possibly insecure'
+
+Don't panic.  Read the 'make test' section of INSTALL instead.
+
+=head2 libwww-perl (LWP) fails base/date #51
+
+Use libwww-perl 5.65 or later.
+
+=head2 PDL failing some tests
+
+Use PDL 2.3.4 or later.
+
+=head2 Perl_get_sv
+
+You may get errors like 'Undefined symbol "Perl_get_sv"' or "can't
+resolve symbol 'Perl_get_sv'", or the symbol may be "Perl_sv_2pv".
+This probably means that you are trying to use an older shared Perl
+library (or extensions linked with such) with Perl 5.8.0 executable.
+Perl used to have such a subroutine, but that is no more the case.
+Check your shared library path, and any shared Perl libraries in those
+directories.
+
+Sometimes this problem may also indicate a partial Perl 5.8.0
+installation, see L</"Mac OS X dyld undefined symbols"> for an
+example and how to deal with it.
+
+=head2 Self-tying Problems
+
+Self-tying of arrays and hashes is broken in rather deep and
+hard-to-fix ways.  As a stop-gap measure to avoid people from getting
+frustrated at the mysterious results (core dumps, most often), it is
+forbidden for now (you will get a fatal error even from an attempt).
+
+A change to self-tying of globs has caused them to be recursively
+referenced (see: L<perlobj/"Two-Phased Garbage Collection">).  You
+will now need an explicit untie to destroy a self-tied glob.  This
+behaviour may be fixed at a later date.
+
+Self-tying of scalars and IO thingies works.
+
+=head2 ext/threads/t/libc
+
+If this test fails, it indicates that your libc (C library) is not
+threadsafe.  This particular test stress tests the localtime() call to
+find out whether it is threadsafe.  See L<perlthrtut> for more information.
+
+=head2 Failure of Thread (5.005-style) tests
+
+B<Note that support for 5.005-style threading is deprecated,
+experimental and practically unsupported.  In 5.10, it is expected
+to be removed.  You should migrate your code to ithreads.>
+
+The following tests are known to fail due to fundamental problems in
+the 5.005 threading implementation. These are not new failures--Perl
+5.005_0x has the same bugs, but didn't have these tests.
+
+ ../ext/B/t/xref.t                    255 65280    14   12  85.71%  3-14
+ ../ext/List/Util/t/first.t           255 65280     7    4  57.14%  2 5-7
+ ../lib/English.t                       2   512    54    2   3.70%  2-3
+ ../lib/FileCache.t                                 5    1  20.00%  5
+ ../lib/Filter/Simple/t/data.t                      6    3  50.00%  1-3
+ ../lib/Filter/Simple/t/filter_only.                9    3  33.33%  1-2 5
+ ../lib/Math/BigInt/t/bare_mbf.t                 1627    4   0.25%  8 11 1626-1627
+ ../lib/Math/BigInt/t/bigfltpm.t                 1629    4   0.25%  10 13 1628-
+                                                                    1629
+ ../lib/Math/BigInt/t/sub_mbf.t                  1633    4   0.24%  8 11 1632-1633
+ ../lib/Math/BigInt/t/with_sub.t                 1628    4   0.25%  9 12 1627-1628
+ ../lib/Tie/File/t/31_autodefer.t     255 65280    65   32  49.23%  34-65
+ ../lib/autouse.t                                  10    1  10.00%  4
+ op/flip.t                                         15    1   6.67%  15
+
+These failures are unlikely to get fixed as 5.005-style threads
+are considered fundamentally broken.  (Basically what happens is that
+competing threads can corrupt shared global state, one good example
+being regular expression engine's state.)
+
+=head2 Timing problems
+
+The following tests may fail intermittently because of timing
+problems, for example if the system is heavily loaded.
+
+    t/op/alarm.t
+    ext/Time/HiRes/HiRes.t
+    lib/Benchmark.t
+    lib/Memoize/t/expmod_t.t
+    lib/Memoize/t/speed.t
+
+In case of failure please try running them manually, for example
+
+    ./perl -Ilib ext/Time/HiRes/HiRes.t
+
+=head2 Tied/Magical Array/Hash Elements Do Not Autovivify
+
+For normal arrays C<$foo = \$bar[1]> will assign C<undef> to
+C<$bar[1]> (assuming that it didn't exist before), but for
+tied/magical arrays and hashes such autovivification does not happen
+because there is currently no way to catch the reference creation.
+The same problem affects slicing over non-existent indices/keys of
+a tied/magical array/hash.
+
+=head2 Unicode in package/class and subroutine names does not work
+
+One can have Unicode in identifier names, but not in package/class or
+subroutine names.  While some limited functionality towards this does
+exist as of Perl 5.8.0, that is more accidental than designed; use of
+Unicode for the said purposes is unsupported.
+
+One reason of this unfinishedness is its (currently) inherent
+unportability: since both package names and subroutine names may
+need to be mapped to file and directory names, the Unicode capability
+of the filesystem becomes important-- and there unfortunately aren't
+portable answers.
+
+=head1 Platform Specific Problems
+
 =head2 AIX
 
 =over 4
@@ -3205,17 +3375,44 @@ detailed in here: http://sources.redhat.com/ml/cygwin/2001-12/msg00894.html
 
 One can build but not install (or test the build of) the NDBM_File
 on FAT filesystems.  Installation (or build) on NTFS works fine.
+If one attempts the test on a FAT install (or build) the following
+failures are expected:
 
-=head2 ext/threads/t/libc
+ ../ext/NDBM_File/ndbm.t       13  3328    71   59  83.10%  1-2 4 16-71
+ ../ext/ODBM_File/odbm.t      255 65280    ??   ??       %  ??
+ ../lib/AnyDBM_File.t           2   512    12    2  16.67%  1 4
+ ../lib/Memoize/t/errors.t      0   139    11    5  45.45%  7-11
+ ../lib/Memoize/t/tie_ndbm.t   13  3328     4    4 100.00%  1-4
+ run/fresh_perl.t                          97    1   1.03%  91
 
-If this test fails, it indicates that your libc (C library) is not
-threadsafe.  This particular test stress tests the localtime() call to
-find out whether it is threadsafe.  See L<perlthrtut> for more information.
+NDBM_File fails and ODBM_File just coredumps.
+
+=head2 DJGPP Failures
+
+ t/op/stat............................FAILED at test 29
+ lib/File/Find/t/find.................FAILED at test 1
+ lib/File/Find/t/taint................FAILED at test 1
+ lib/h2xs.............................FAILED at test 15
+ lib/Pod/t/eol........................FAILED at test 1
+ lib/Test/Harness/t/strap-analyze.....FAILED at test 8
+ lib/Test/Harness/t/test-harness......FAILED at test 23
+ lib/Test/Simple/t/exit...............FAILED at test 1
+
+The above failures are known as of 5.8.0 with native builds with long
+filenames, but there are a few more if running under dosemu because of
+limitations (and maybe bugs) of dosemu:
+
+ t/comp/cpp...........................FAILED at test 3
+ t/op/inccode.........................(crash)
+
+and a few lib/ExtUtils tests, and several hundred Encode/t/Aliases.t
+failures that work fine with long filenames.  So you really might
+prefer native builds and long filenames.
 
 =head2 FreeBSD built with ithreads coredumps reading large directories
 
-This is a known bug in FreeBSD's readdir_r() (see L<perlfreebsd>
-(README.freebsd)), which hopefully will be fixed in FreeBSD 4.6.
+This is a known bug in FreeBSD 4.5's readdir_r(), it has been fixed in
+FreeBSD 4.6 (see L<perlfreebsd> (README.freebsd)).
 
 =head2 FreeBSD Failing locale Test 117 For ISO 8859-15 Locales
 
@@ -3226,28 +3423,17 @@ case-insensitively.  Apparently this problem has been fixed in
 the latest FreeBSD releases.
 ( http://www.freebsd.org/cgi/query-pr.cgi?pr=34308 )
 
-=head2 IRIX fails ext/List/Util/t/shuffle.t
+=head2 IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5
 
-IRIX with MIPSpro 7.3.1.3m compiler may fail the said List::Util test
-by dumping core.  This seems to be a compiler error since if compiled
-with gcc no core dump ensues, and no failures on the said test on any
-other platform.
+IRIX with MIPSpro 7.3.1.2m or 7.3.1.3m compiler may fail the List::Util
+test ext/List/Util/t/shuffle.t by dumping core.  This seems to be
+a compiler error since if compiled with gcc no core dump ensues, and
+no failures have been seen on the said test on any other platform.
 
-=head2 Modifying $_ Inside for(..)
-
-   for (1..5) { $_++ }
-
-works without complaint.  It shouldn't.  (You should be able to
-modify only lvalue elements inside the loops.)  You can see the
-correct behaviour by replacing the 1..5 with 1, 2, 3, 4, 5.
-
-=head2 mod_perl 1.26 Doesn't Build With Threaded Perl
-
-Use mod_perl 1.27 or higher.
-
-=head2 lib/ftmp-security tests warn 'system possibly insecure'
+Similarly, building the Digest::MD5 extension has been
+known to fail with "*** Termination code 139 (bu21)".
 
-Don't panic.  Read the 'make test' section of INSTALL instead.
+The cure is to drop optimization level (Configure -Doptimize=-O2).
 
 =head2 HP-UX lib/posix Subtest 9 Fails When LP64-Configured
 
@@ -3265,10 +3451,6 @@ This is a known bug in the glibc 2.2.5 with long long integers.
 
 No known fix.
 
-=head2 libwww-perl (LWP) fails base/date #51
-
-Use libwww-perl 5.65 or later.
-
 =head2 Mac OS X
 
 Please remember to set your environment variable LC_ALL to "C"
@@ -3296,6 +3478,29 @@ this is not Perl's fault-- the libc of Mac OS X is not threadsafe
 (in this particular test, the localtime() call is found to be
 threadunsafe.)
 
+=head2 Mac OS X dyld undefined symbols
+
+If after installing Perl 5.8.0 you are getting warnings about missing
+symbols, for example
+
+    dyld: perl Undefined symbols
+    _perl_sv_2pv
+    _perl_get_sv
+
+you probably have an old pre-Perl-5.8.0 installation (or parts of one)
+in /Library/Perl (the undefined symbols used to exist in pre-5.8.0 Perls).
+It seems that for some reason "make install" doesn't always completely
+overwrite the files in /Library/Perl.  You can move the old Perl
+shared library out of the way like this:
+
+    cd /Library/Perl/darwin/CORE
+    mv libperl.dylib libperlold.dylib
+
+and then reissue "make install".  Note that the above of course is
+extremely disruptive for anything using the /usr/local/bin/perl.
+If that doesn't help, you may have to try removing all the .bundle
+files from beneath /Library/Perl, and again "make install"-ing.
+
 =head2 OS/2 Test Failures
 
 The following tests are known to fail on OS/2 (for clarity
@@ -3364,72 +3569,10 @@ is serious but as of yet unsolved.  It points at some problems with the
 signedness handling of the C compiler, as do the 64bitint, arith, and pow
 failures.  Most of the rest point at problems with SysV IPC.
 
-=head2 PDL failing some tests
-
-Use PDL 2.3.4 or later.
-
 =head2 Term::ReadKey not working on Win32
 
 Use Term::ReadKey 2.20 or later.
 
-=head2 Failure of Thread (5.005-style) tests
-
-B<Note that support for 5.005-style threading is deprecated,
-experimental and practically unsupported.  In 5.10, it is expected
-to be removed.  You should migrate your code to ithreads.>
-
-The following tests are known to fail due to fundamental problems in
-the 5.005 threading implementation. These are not new failures--Perl
-5.005_0x has the same bugs, but didn't have these tests.
-
- ../ext/B/t/xref.t                    255 65280    14   12  85.71%  3-14
- ../ext/List/Util/t/first.t           255 65280     7    4  57.14%  2 5-7
- ../lib/English.t                       2   512    54    2   3.70%  2-3
- ../lib/FileCache.t                                 5    1  20.00%  5
- ../lib/Filter/Simple/t/data.t                      6    3  50.00%  1-3
- ../lib/Filter/Simple/t/filter_only.                9    3  33.33%  1-2 5
- ../lib/Math/BigInt/t/bare_mbf.t                 1627    4   0.25%  8 11 1626-1627
- ../lib/Math/BigInt/t/bigfltpm.t                 1629    4   0.25%  10 13 1628-
-                                                                    1629
- ../lib/Math/BigInt/t/sub_mbf.t                  1633    4   0.24%  8 11 1632-1633
- ../lib/Math/BigInt/t/with_sub.t                 1628    4   0.25%  9 12 1627-1628
- ../lib/Tie/File/t/31_autodefer.t     255 65280    65   32  49.23%  34-65
- ../lib/autouse.t                                  10    1  10.00%  4
- op/flip.t                                         15    1   6.67%  15
-
-These failures are unlikely to get fixed as 5.005-style threads
-are considered fundamentally broken.  (Basically what happens is that
-competing threads can corrupt shared global state, one good example
-being regular expression engine's state.)
-
-=head2 Timing problems
-
-The following tests may fail intermittently because of timing
-problems, for example if the system is heavily loaded.
-
-    t/op/alarm.t
-    ext/Time/HiRes/HiRes.t
-    lib/Benchmark.t
-    lib/Memoize/t/expmod_t.t
-    lib/Memoize/t/speed.t
-
-In case of failure please try running them manually, for example
-
-    ./perl -Ilib ext/Time/HiRes/HiRes.t
-
-=head2 Unicode in package/class and subroutine names does not work
-
-One can have Unicode in identifier names, but not in package/class or
-subroutine names.  While some limited functionality towards this does
-exist as of Perl 5.8.0, that is more accidental than designed; use of
-Unicode for the said purposes is unsupported.
-
-One reason of this unfinishedness is its (currently) inherent
-unportability: since both package names and subroutine names may
-need to be mapped to file and directory names, the Unicode capability
-of the filesystem becomes important-- and there unfortunately aren't
-portable answers.
-
 =head2 UNICOS/mk
 
 =over 4
@@ -3496,7 +3639,7 @@ Use XML::Parser 2.31 or later.
 
 =head2 z/OS (OS/390)
 
-z/OS has rather many test failures but the situation is actually
+z/OS has rather many test failures but the situation is actually much
 better than it was in 5.6.0; it's just that so many new modules and
 tests have been added.
 
@@ -3509,7 +3652,8 @@ tests have been added.
                                                               110-111 150 161
  ../lib/ExtUtils/t/Constant.t   121 30976    48   48 100.00%  1-48
  ../lib/ExtUtils/t/Embed.t                    9    9 100.00%  1-9
- op/pat.t                         0    11   922  283  30.69%  640-922
+ op/pat.t                                   922    7   0.76%  665 776 785 832-
+                                                              834 845
  op/sprintf.t                               224    3   1.34%  98 100 136
  op/tr.t                                     97    5   5.15%  63 71-74
  uni/fold.t                                 780    6   0.77%  61 169 196 661
@@ -3523,55 +3667,6 @@ that with Unicode).  The Constant and Embed are probably problems in
 the tests (since they test Perl's ability to build extensions, and
 that seems to be working reasonably well.)
 
-=head2 Localising Tied Arrays and Hashes Is Broken
-
-    local %tied_array;
-
-doesn't work as one would expect: the old value is restored
-incorrectly.  This will be changed in a future release, but we don't
-know yet what the new semantics will exactly be.  In any case, the
-change will break existing code that relies on the current
-(ill-defined) semantics, so just avoid doing this in general.
-
-=head2 Self-tying Problems
-
-Self-tying of arrays and hashes is broken in rather deep and
-hard-to-fix ways.  As a stop-gap measure to avoid people from getting
-frustrated at the mysterious results (core dumps, most often), it is
-forbidden for now (you will get a fatal error even from an attempt).
-
-A change to self-tying of globs has caused them to be recursively
-referenced (see: L<perlobj/"Two-Phased Garbage Collection">).  You
-will now need an explicit untie to destroy a self-tied glob.  This
-behaviour may be fixed at a later date.
-
-Self-tying of scalars and IO thingies works.
-
-=head2 Tied/Magical Array/Hash Elements Do Not Autovivify
-
-For normal arrays C<$foo = \$bar[1]> will assign C<undef> to
-C<$bar[1]> (assuming that it didn't exist before), but for
-tied/magical arrays and hashes such autovivification does not happen
-because there is currently no way to catch the reference creation.
-The same problem affects slicing over non-existent indices/keys of
-a tied/magical array/hash.
-
-=head2 Building Extensions Can Fail Because Of Largefiles
-
-Some extensions like mod_perl are known to have issues with
-`largefiles', a change brought by Perl 5.6.0 in which file offsets
-default to 64 bits wide, where supported.  Modules may fail to compile
-at all, or they may compile and work incorrectly.  Currently, there
-is no good solution for the problem, but Configure now provides
-appropriate non-largefile ccflags, ldflags, libswanted, and libs
-in the %Config hash (e.g., $Config{ccflags_nolargefiles}) so the
-extensions that are having problems can try configuring themselves
-without the largefileness.  This is admittedly not a clean solution,
-and the solution may not even work at all.  One potential failure is
-whether one can (or, if one can, whether it's a good idea to) link
-together at all binaries with different ideas about file offsets;
-all this is platform-dependent.
-
 =head2 Unicode Support on EBCDIC Still Spotty
 
 Though mostly working, Unicode support still has problem spots on
@@ -3579,23 +3674,6 @@ EBCDIC platforms.  One such known spot are the C<\p{}> and C<\P{}>
 regular expression constructs for code points less than 256: the
 C<pP> are testing for Unicode code points, not knowing about EBCDIC.
 
-=head2 The Compiler Suite Is Still Very Experimental
-
-The compiler suite is slowly getting better but it continues to be
-highly experimental.  Use in production environments is discouraged.
-
-=head2 The Long Double Support Is Still Experimental
-
-The ability to configure Perl's numbers to use "long doubles",
-floating point numbers of hopefully better accuracy, is still
-experimental.  The implementations of long doubles are not yet
-widespread and the existing implementations are not quite mature
-or standardised, therefore trying to support them is a rare
-and moving target.  The gain of more precision may also be offset
-by slowdown in computations (more bits to move around, and the
-operations are more likely to be executed by less optimised
-libraries).
-
 =head2 Seen In Perl 5.7 But Gone Now
 
 C<Time::Piece> (previously known as C<Time::Object>) was removed