From: Jan Dubois Date: Tue, 16 Mar 2010 07:39:58 +0000 (-0700) Subject: Update Windows specific changes X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=d13f857185774c91c7e35a1349a7ff94f0593ff8;p=p5sagit%2Fp5-mst-13.2.git Update Windows specific changes --- diff --git a/pod/perl5120delta.pod b/pod/perl5120delta.pod index 1cd421e..1bfd5f2 100644 --- a/pod/perl5120delta.pod +++ b/pod/perl5120delta.pod @@ -2192,11 +2192,6 @@ POSIX::strftime() can now handle Unicode characters in the format string. =item * -The Windows select() implementation now supports all empty Cs -more correctly. - -=item * - The C category was removed from 5 warnings that should only be in C. @@ -2277,7 +2272,9 @@ Rainer Weikusat was used; Daniel Burr also proposed a similar fix). =item * -F now supports C subroutines. Additionally, the debugger now correctly handles proxy constant subroutines, and subroutine stubs. +F now supports C subroutines. Additionally, the +debugger now correctly handles proxy constant subroutines, and +subroutine stubs. =item * @@ -2541,11 +2538,6 @@ spurious warning like the following: =item * -On Windows, C<'.\foo'> and C<'..\foo'> were treated differently than -C<'./foo'> and C<'../foo'> by C and C [RT #63492]. - -=item * - Assigning a format to a glob could corrupt the format; e.g.: *bar=*foo{FORMAT}; # foo format now bad @@ -2887,44 +2879,87 @@ There is now support for Symbian S60 3.2 SDK and S60 5.0 SDK. =back -=item Win32 +=item Windows =over 4 =item * -Initial support for mingw64 is now available. +Perl 5.12 supports Windows 2000 and later. The supporting code for +legacy versions of Windows is still included, but will be removed +during the next development cycle. =item * -Various bits of Perl's build infrastructure are no longer converted to -win32 line endings at release time. If this hurts you, please report the -problem with the L program included with perl. +Initial support for building Perl with MinGW-w64 is now available. =item * -Always add a manifest resource to C to specify the C +F now includes a manifest resource to specify the C settings for Windows Vista and later. Without this setting Windows -will treat C as a legacy application and apply various +would treat F as a legacy application and apply various heuristics like redirecting access to protected file system areas (like the "Program Files" folder) to the users "VirtualStore" instead of generating a proper "permission denied" error. -For VC8 and VC9 this manifest setting is automatically generated by -the compiler/linker (together with the binding information for their -respective runtime libraries); for all other compilers we need to -embed the manifest resource explicitly in the external resource file. +The manifest resource also requests the Microsoft Common-Controls +version 6.0 (themed controls introduced in Windows XP). Check out the +Win32::VisualStyles module on CPAN to switch back to old style +unthemed controls for legacy applications. + +=item * + +The C<-t> filetest operator now only returns true if the filehandle +is connected to a console window. In previous versions of Perl it +would return true for all character mode devices, including F +and F. + +=item * + +The C<-p> filetest operator now works correctly, and the +Fcntl::S_IFIFO constant is defined when Perl is compiled with +Microsoft Visual C. In previous Perl versions C<-p> always +returned a false value, and the Fcntl::S_IFIFO constant +was not defined. + +This bug is specific to Microsoft Visual C and never affected +Perl binaries built with MinGW. + +=item * + +The socket error codes are now more widely supported: The POSIX +module will define the symbolic names, like POSIX::EWOULDBLOCK, +and stringification of socket error codes in $! works as well +now; + + C:\>perl -MPOSIX -E "$!=POSIX::EWOULDBLOCK; say $!" + A non-blocking socket operation could not be completed immediately. + +=item * + +flock() will now set sensible error codes in $!. Previous Perl versions +copied the value of $^E into $!, which caused much confusion. + +=item * + +select() now supports all empty Cs more correctly. -This change also requests the Microsoft Common-Controls version 6.0 -(themed controls introduced in Windows XP) via the dependency list -in the assembly manifest. For VC8 and VC9 this is specified using the -C linker commandline option instead. +=item * + +C<'.\foo'> and C<'..\foo'> were treated differently than +C<'./foo'> and C<'../foo'> by C and C [RT #63492]. =item * Improved message window handling means that C and C messages will no longer be dropped under race conditions. +=item * + +Various bits of Perl's build infrastructure are no longer converted to +win32 line endings at release time. If this hurts you, please report the +problem with the L program included with perl. + =back =back @@ -2961,7 +2996,9 @@ will appear to hang as they get into a very long running loop [RT #72998]. =item * -Several porters have reported mysterious crashes when Perl's entire test suite is run after a build on certain Windows 2000 systems. When run by hand, the individual tests reportedly work fine. +Several porters have reported mysterious crashes when Perl's entire +test suite is run after a build on certain Windows 2000 systems. When +run by hand, the individual tests reportedly work fine. =back @@ -2988,7 +3025,9 @@ Perl 5.12.0 represents approximately two years of development since Perl 5.10.0 and contains over 750,000 lines of changes across over 3000 files from over 200 authors and committers. -Perl continues to flourish into its third decade thanks to a vibrant community of users and developers. The following people are known to have contributed the improvements that became Perl 5.12.0: +Perl continues to flourish into its third decade thanks to a vibrant +community of users and developers. The following people are known to +have contributed the improvements that became Perl 5.12.0: Aaron Crane, Abe Timmerman, Abhijit Menon-Sen, Abigail, Adam Russell, Adriano Ferreira, Ævar Arnfjörð Bjarmason, Alan Grover, Alexandr