diff options
author | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-06-14 08:36:40 +0000 |
---|---|---|
committer | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-06-14 08:36:40 +0000 |
commit | b9e06e2c7ff6abbfa3de39167a70c9ec5bddd6f0 (patch) | |
tree | db556572564baff98034cf0aa0abbc14fc769a36 | |
parent | 3bef992e68500c54cec789863c0ee67aee10b008 (diff) | |
parent | 218ab4da7d1407175b6a98e2e1336ae429271b8c (diff) | |
download | perl-b9e06e2c7ff6abbfa3de39167a70c9ec5bddd6f0.tar.gz |
Integrate mainline
p4raw-id: //depot/perlio@17229
-rw-r--r-- | Changes | 106 | ||||
-rw-r--r-- | INSTALL | 4 | ||||
-rw-r--r-- | README.netware | 14 | ||||
-rw-r--r-- | configure.com | 7 | ||||
-rw-r--r-- | ext/Time/HiRes/HiRes.xs | 4 | ||||
-rw-r--r-- | ext/XS/APItest/APItest.xs | 2 | ||||
-rw-r--r-- | ext/XS/APItest/README | 9 | ||||
-rw-r--r-- | ext/XS/APItest/t/printf.t | 1 | ||||
-rw-r--r-- | ext/threads/shared/shared.pm | 10 | ||||
-rwxr-xr-x | ext/threads/threads.pm | 6 | ||||
-rw-r--r-- | hints/aix.sh | 2 | ||||
-rw-r--r-- | hints/hpux.sh | 21 | ||||
-rw-r--r-- | lib/ExtUtils/t/Installed.t | 2 | ||||
-rw-r--r-- | lib/Switch.pm | 7 | ||||
-rwxr-xr-x | lib/Switch/Changes | 5 | ||||
-rw-r--r-- | lib/Switch/README | 10 | ||||
-rw-r--r-- | lib/attributes.pm | 22 | ||||
-rw-r--r-- | patchlevel.h | 2 | ||||
-rw-r--r-- | perliol.h | 2 | ||||
-rw-r--r-- | pod/perldelta.pod | 16 | ||||
-rw-r--r-- | pod/perlfunc.pod | 88 | ||||
-rw-r--r-- | pod/perlopentut.pod | 36 | ||||
-rw-r--r-- | pod/perlsub.pod | 8 | ||||
-rw-r--r-- | pod/perlthrtut.pod | 3 | ||||
-rw-r--r-- | pod/perltoc.pod | 67 | ||||
-rw-r--r-- | pp_pack.c | 22 | ||||
-rw-r--r-- | t/lib/warnings/toke | 32 | ||||
-rw-r--r-- | utils/perlivp.PL | 19 | ||||
-rw-r--r-- | vms/vms.c | 16 | ||||
-rw-r--r-- | win32/config.bc | 8 | ||||
-rw-r--r-- | win32/config_H.bc | 2 | ||||
-rw-r--r-- | win32/config_H.gc | 6 |
32 files changed, 422 insertions, 137 deletions
@@ -28,6 +28,112 @@ example from http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/ Version v5.7.X Development release working toward v5.8 -------------- ____________________________________________________________________________ +[ 17205] By: jhi on 2002/06/12 13:16:32 + Log: Regen toc. + Branch: perl + ! pod/perltoc.pod +____________________________________________________________________________ +[ 17204] By: jhi on 2002/06/12 13:05:28 + Log: This should be gone now. + Branch: perl + ! INSTALL +____________________________________________________________________________ +[ 17203] By: jhi on 2002/06/12 12:58:54 + Log: NetWare doc tweak. + Branch: perl + ! README.netware +____________________________________________________________________________ +[ 17202] By: jhi on 2002/06/12 12:33:33 + Log: Subject: [PATCH pod/perlfunc.pod] Re: Change sort in scalar context behavior. + From: Abigail <abigail@foad.org> + Date: Wed, 12 Jun 2002 02:46:01 -0700 + Message-ID: <20020612024601.A8524@ucan.foad.org> + Branch: perl + ! pod/perlfunc.pod +____________________________________________________________________________ +[ 17201] By: jhi on 2002/06/12 12:31:19 + Log: Subject: [PATCH] Re: linux + usemorebits: gcc error? + From: Rafael Garcia-Suarez <raphel.garcia-suarez@hexaflux.com> + Date: Wed, 12 Jun 2002 13:50:59 +0200 + Message-ID: <3D0735A3.4020701@hexaflux.com> + Branch: perl + ! ext/Time/HiRes/HiRes.xs +____________________________________________________________________________ +[ 17200] By: jhi on 2002/06/12 12:17:02 + Log: Synchronize config.bc and config_H.bc; add SCNfldbl; + go back to disabling long doubles from MinGW because + MSVCRT doesn't do long double printfing even when gcc + would know how to handle them. + Branch: perl + ! win32/config.bc win32/config_H.bc win32/config_H.gc +____________________________________________________________________________ +[ 17199] By: nick on 2002/06/12 11:13:16 + Log: Integrate mainline + Branch: perlio + !> configure.com ext/XS/APItest/APItest.xs lib/Math/Trig.t perl.c + !> pod/perldiag.pod pod/perlmodlib.PL pod/perlmodlib.pod + !> win32/config_H.bc win32/config_H.gc +____________________________________________________________________________ +[ 17198] By: jhi on 2002/06/12 03:01:37 + Log: Subject: [PATCH @17190] configure.com: join the sPRI... party + From: "Craig A. Berry" <craigberry@mac.com> + Date: Tue, 11 Jun 2002 22:44:31 -0500 + Message-Id: <a05111b00b92c6bda8b47@[172.16.52.1]> + Branch: perl + ! configure.com +____________________________________________________________________________ +[ 17197] By: jhi on 2002/06/12 01:52:32 + Log: Test relying on undefined behaviour of atan2(0, 0) + (valiantly debugged by Mark Lutz). + Branch: perl + ! lib/Math/Trig.t +____________________________________________________________________________ +[ 17196] By: jhi on 2002/06/12 01:41:05 + Log: Regen perlmodlib. + Branch: perl + ! pod/perlmodlib.pod +____________________________________________________________________________ +[ 17195] By: jhi on 2002/06/12 01:39:18 + Log: Subject: [PATCH] perlmodlib.pod missing Config & Errno + From: sthoenna@efn.org (Yitzchak Scott-Thoennes) + Date: Tue, 11 Jun 2002 15:12:15 -0700 + Message-ID: </WnB9gzkgC5S092yn@efn.org> + Branch: perl + ! pod/perlmodlib.PL +____________________________________________________________________________ +[ 17194] By: jhi on 2002/06/12 01:35:57 + Log: Subject: [PATCH] Re: RC1 on Playstation2 + From: Tim Jenness <t.jenness@jach.hawaii.edu> + Date: Tue, 11 Jun 2002 11:55:40 -1000 (HST) + Message-ID: <Pine.LNX.4.44.0206111135130.31715-100000@lapaki> + Branch: perl + ! perl.c +____________________________________________________________________________ +[ 17193] By: jhi on 2002/06/11 19:57:23 + Log: Not that I know anything about Windows compilers + but Google leads me into believing that while Borland and + GCC support the ANSI way of printing long doubles (%L), + Visual C really doesn't support printing them. + Branch: perl + ! ext/XS/APItest/APItest.xs win32/config_H.bc win32/config_H.gc +____________________________________________________________________________ +[ 17192] By: rgs on 2002/06/11 19:00:37 + Log: Fix a cut-n-paste error. + Branch: perl + ! pod/perldiag.pod +____________________________________________________________________________ +[ 17191] By: nick on 2002/06/11 16:07:14 + Log: Integrate mainline + Branch: perlio + !> Changes INSTALL ext/XS/APItest/APItest.pm + !> ext/XS/APItest/APItest.xs ext/XS/APItest/t/printf.t + !> patchlevel.h +____________________________________________________________________________ +[ 17190] By: jhi on 2002/06/11 14:09:14 + Log: Update Changes. + Branch: perl + ! Changes patchlevel.h +____________________________________________________________________________ [ 17189] By: jhi on 2002/06/11 13:55:12 Log: Trying to printf Perl-specific datatypes using printf (with perlio or stdio) is folly, says Hugo. @@ -795,10 +795,6 @@ this support (if it is available). You can "Configure -Dusemorebits" to turn on both the 64-bit support and the long double support. -Note that on some platforms (linux 2.2.14 (RedHat 6.2, x86), libc 2.1.3) -the gcc 3.1 compiler has been reported to refuse to compile the -Time::Hires module when using -Dusemorebits or an equivalent setting. - =head2 Selecting File IO mechanisms Executive summary: in Perl 5.8, you should use the default "PerlIO" diff --git a/README.netware b/README.netware index 55c9418c9a..170cd4dfb7 100644 --- a/README.netware +++ b/README.netware @@ -110,7 +110,6 @@ Example: At the command prompt Type "nmake nwinstall". This will cause the binaries to be installed on the local machine. (Typically under the c:\perl folder) - =head1 Build new extensions To build extensions other than standard extensions, NetWare Perl has @@ -140,7 +139,11 @@ Run the following command at the command prompt: Example: - perl -Ic:/perl/5.7.2/lib/NetWare-x86-multi-thread -Ic:\perl\5.7.2\lib MakeFile.pl + perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl + +or + + perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl =item * @@ -159,7 +162,12 @@ typing I<nmake install>, will copy the files onto the NetWare server. Example: You can execute the following on the command prompt. - perl -Ic:/perl/5.7.2/lib/NetWare-x86-multi-thread -Ic:\perl\5.7.2\lib MakeFile.pl + perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl + INSTALLSITELIB=i:\perl\lib + +or + + perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl INSTALLSITELIB=i:\perl\lib =item * diff --git a/configure.com b/configure.com index ebe69afb51..d949bb2532 100644 --- a/configure.com +++ b/configure.com @@ -4730,7 +4730,12 @@ $ d_wctomb="define" $ i_locale="define" $ i_langinfo="define" $ d_locconv="define" -$ d_nl_langinfo="define" +$ IF vms_ver .GES. "6.2" +$ THEN +$ d_nl_langinfo="define" +$ ELSE +$ d_nl_langinfo="undef" +$ ENDIF $ d_setlocale="define" $ vms_cc_type="decc" $ ELSE diff --git a/ext/Time/HiRes/HiRes.xs b/ext/Time/HiRes/HiRes.xs index 3db39023cc..c66b92db08 100644 --- a/ext/Time/HiRes/HiRes.xs +++ b/ext/Time/HiRes/HiRes.xs @@ -597,7 +597,7 @@ usleep(useconds) } } else if (useconds < 0.0) croak("Time::HiRes::usleep(%"NVgf"): negative time not invented yet", useconds); - usleep((UV)useconds); + usleep((U32)useconds); } else PerlProc_pause(); gettimeofday(&Tb, NULL); @@ -620,7 +620,7 @@ sleep(...) if (seconds >= 0.0) { UV useconds = (UV)(1E6 * (seconds - (UV)seconds)); if (seconds >= 1.0) - sleep((UV)seconds); + sleep((U32)seconds); usleep(useconds); } else croak("Time::HiRes::sleep(%"NVgf"): negative time not invented yet", seconds); diff --git a/ext/XS/APItest/APItest.xs b/ext/XS/APItest/APItest.xs index 1e8ea35d01..d5c6b5271c 100644 --- a/ext/XS/APItest/APItest.xs +++ b/ext/XS/APItest/APItest.xs @@ -20,6 +20,8 @@ have_long_double() #else RETVAL = 0; #endif + OUTPUT: + RETVAL void print_long_double() diff --git a/ext/XS/APItest/README b/ext/XS/APItest/README index dbfc91a1d7..cdbf449e26 100644 --- a/ext/XS/APItest/README +++ b/ext/XS/APItest/README @@ -6,15 +6,6 @@ It is not meant to be installed. Currently tests that printf formatting works correctly. -INSTALLATION - -To install this module type the following: - - perl Makefile.PL - make - make test - make install - DEPENDENCIES None. diff --git a/ext/XS/APItest/t/printf.t b/ext/XS/APItest/t/printf.t index a17267de7b..91f328cd5c 100644 --- a/ext/XS/APItest/t/printf.t +++ b/ext/XS/APItest/t/printf.t @@ -1,6 +1,7 @@ BEGIN { chdir 't' if -d 't'; @INC = '../lib'; + push @INC, "::lib:$MacPerl::Architecture:" if $^O eq 'MacOS'; require Config; import Config; if ($Config{'extensions'} !~ /\bXS\/APItest\b/) { print "1..0 # Skip: XS::APItest was not built\n"; diff --git a/ext/threads/shared/shared.pm b/ext/threads/shared/shared.pm index c92bfe55cf..8f3c677b58 100644 --- a/ext/threads/shared/shared.pm +++ b/ext/threads/shared/shared.pm @@ -14,7 +14,7 @@ $caller[1] line $caller[2]: This Perl hasn't been configured and built properly for the threads module to work. (The 'useithreads' configuration option hasn't been used.) -Having threads support requires all of Perl and all of the modules in +Having threads support requires all of Perl and all of the XS modules in the Perl installation to be rebuilt, it is not just a question of adding the threads module. (In other words, threaded and non-threaded Perls are binary incompatible.) @@ -190,16 +190,20 @@ implemented in a future version of Perl. Does not support splice on arrays! +Taking references to the elements of shared arrays and hashes does not +autovivify the elements, and neither does slicing a shared array/hash +over non-existent indices/keys autovivify the elements. + =head1 AUTHOR Arthur Bergman E<lt>arthur at contiller.seE<gt> threads::shared is released under the same license as Perl -Documentation borrowed from Thread.pm +Documentation borrowed from the old Thread.pm =head1 SEE ALSO -L<threads>, L<perlthrtut> +L<threads>, L<perlthrtut>, L<http://www.perl.com/pub/a/2002/06/11/threads.html> =cut diff --git a/ext/threads/threads.pm b/ext/threads/threads.pm index 5739104244..af68a5003e 100755 --- a/ext/threads/threads.pm +++ b/ext/threads/threads.pm @@ -14,7 +14,7 @@ $caller[1] line $caller[2]: This Perl hasn't been configured and built properly for the threads module to work. (The 'useithreads' configuration option hasn't been used.) -Having threads support requires all of Perl and all of the modules in +Having threads support requires all of Perl and all of the XS modules in the Perl installation to be rebuilt, it is not just a question of adding the threads module. (In other words, threaded and non-threaded Perls are binary incompatible.) @@ -259,6 +259,8 @@ please join perl-ithreads@perl.org for more information =head1 SEE ALSO -L<threads::shared>, L<perlthrtut>, L<perlcall>, L<perlembed>, L<perlguts> +L<threads::shared>, L<perlthrtut>, +L<http://www.perl.com/pub/a/2002/06/11/threads.html>, +L<perlcall>, L<perlembed>, L<perlguts> =cut diff --git a/hints/aix.sh b/hints/aix.sh index e6e97a9edf..09ca0a4b57 100644 --- a/hints/aix.sh +++ b/hints/aix.sh @@ -147,7 +147,7 @@ case "$cc" in gccversion=`$cc --version | sed 's/.*(GCC) *//` fi ;; -*) ccversion=`lslpp -L | grep 'C for AIX Compiler$' | awk '{print $2}'` +*) ccversion=`lslpp -L | grep 'C for AIX Compiler$' | grep -v '\.msg\.[A-Za-z_]*\.' | awk '{print $2}'` case "$ccversion" in '') ccversion=`lslpp -L | grep 'IBM C and C++ Compilers LUM$' | awk '{print $2}'` ;; diff --git a/hints/hpux.sh b/hints/hpux.sh index 1cd190eb5b..71705163d4 100644 --- a/hints/hpux.sh +++ b/hints/hpux.sh @@ -553,7 +553,26 @@ EOM EOCBU # The mysterious io_xs memory corruption in 11.00 32bit seems to get -# fixed by not using Perl's malloc. +# fixed by not using Perl's malloc. Flip side is performance loss. +# So we want mymalloc for all situations possible +usemymalloc='y' +case "$usethreads" in + $define|true|[yY]*) usemymalloc='n' ;; + *) case "$ccisgcc" in + $undef|false|[nN]*) + case "$use64bitint" in + $undef|false|[nN]*) + case "$ccflags" in + *-DDEBUGGING*) ;; + *) usemymalloc='n' ;; + esac + ;; + esac + ;; + esac + ;; + esac + usemymalloc='n' case "$useperlio" in $undef|false|[nN]*) usemymalloc='y' ;; diff --git a/lib/ExtUtils/t/Installed.t b/lib/ExtUtils/t/Installed.t index d609f62799..a1db4340ae 100644 --- a/lib/ExtUtils/t/Installed.t +++ b/lib/ExtUtils/t/Installed.t @@ -81,7 +81,7 @@ ok( $ei->_is_under('baz', @under), '... should find file under dir' ); my $wrotelist; -ok(mkpath('auto/FakeMod')); +ok(scalar mkpath('auto/FakeMod')); END { rmtree 'auto/FakeMod' } ok(open(PACKLIST, '>auto/FakeMod/.packlist')); diff --git a/lib/Switch.pm b/lib/Switch.pm index c76ac8eb1f..31590b3dcc 100644 --- a/lib/Switch.pm +++ b/lib/Switch.pm @@ -4,7 +4,7 @@ use strict; use vars qw($VERSION); use Carp; -$VERSION = '2.07'; +$VERSION = '2.09'; # LOAD FILTERING MODULE... @@ -52,7 +52,6 @@ sub filter return $status if $status<0; $_ = filter_blocks($_,$offset); $_ = "# line $offset\n" . $_ if $offset; undef $offset; - # print STDERR $_; return $status; } @@ -492,8 +491,8 @@ Switch - A switch statement for Perl =head1 VERSION -This document describes version 2.07 of Switch, -released May 15, 2002. +This document describes version 2.09 of Switch, +released June 12, 2002. =head1 SYNOPSIS diff --git a/lib/Switch/Changes b/lib/Switch/Changes index c872bdd80f..e38254444d 100755 --- a/lib/Switch/Changes +++ b/lib/Switch/Changes @@ -68,3 +68,8 @@ Revision history for Perl extension Switch. - Updated "Perl6" syntax to reflect current design (as far as possible -- can't eliminate need to parenthesize variables, since they're ambiguous in Perl 5) + + +2.09 Wed Jun 12 22:13:30 2002 + + - Removed spurious debugging statement diff --git a/lib/Switch/README b/lib/Switch/README index 5a517403a5..0d2a8b7f26 100644 --- a/lib/Switch/README +++ b/lib/Switch/README @@ -1,5 +1,5 @@ ============================================================================== - Release of version 2.07 of Switch + Release of version 2.09 of Switch ============================================================================== @@ -26,14 +26,10 @@ COPYRIGHT ============================================================================== -CHANGES IN VERSION 2.07 +CHANGES IN VERSION 2.09 - - Corified tests - - - Updated "Perl6" syntax to reflect current design - (as far as possible -- can't eliminate need to parenthesize - variables, since they're ambiguous in Perl 5) + - Removed spurious debugging statement ============================================================================== diff --git a/lib/attributes.pm b/lib/attributes.pm index 40b35b830d..2dacd02751 100644 --- a/lib/attributes.pm +++ b/lib/attributes.pm @@ -129,9 +129,9 @@ The second example in the synopsis does something equivalent to this: Yes, that's a lot of expansion. -B<WARNING>: attribute declarations for variables are an I<experimental> -feature. The semantics of such declarations could change or be removed -in future versions. They are present for purposes of experimentation +B<WARNING>: attribute declarations for variables are still evolving. +The semantics and interfaces of such declarations could change in +future versions. They are present for purposes of experimentation with what the semantics ought to be. Do not rely on the current implementation of this feature. @@ -151,12 +151,11 @@ before those attributes will get applied. For example: will neither assign 42 to $x I<nor> will it apply the C<Bent> attribute to the variable. -An attempt to set -an unrecognized attribute is a fatal error. (The error is trappable, but -it still stops the compilation within that C<eval>.) Setting an attribute -with a name that's all lowercase letters that's not a built-in attribute -(such as "foo") -will result in a warning with B<-w> or C<use warnings 'reserved'>. +An attempt to set an unrecognized attribute is a fatal error. (The +error is trappable, but it still stops the compilation within that +C<eval>.) Setting an attribute with a name that's all lowercase +letters that's not a built-in attribute (such as "foo") will result in +a warning with B<-w> or C<use warnings 'reserved'>. =head2 Built-in Attributes @@ -191,10 +190,7 @@ as a scalar variable, as described in L<perlsub>. =back -There are no built-in attributes for anything other than subroutines. - -=for hackers -What about C<unique>? +For global variables there is C<unique> attribute: see L<perlfunc/our>. =head2 Available Subroutines diff --git a/patchlevel.h b/patchlevel.h index 8b5b66df88..84f2ea0bbe 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -79,7 +79,7 @@ #if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT) static char *local_patches[] = { NULL - ,"DEVEL17189" + ,"DEVEL17205" ,NULL }; @@ -16,7 +16,7 @@ struct PerlIO_list_s { struct _PerlIO_funcs { char *name; Size_t size; - IV kind; + U32 kind; IV (*Pushed) (pTHX_ PerlIO *f, const char *mode, SV *arg); IV (*Popped) (pTHX_ PerlIO *f); PerlIO *(*Open) (pTHX_ PerlIO_funcs *tab, diff --git a/pod/perldelta.pod b/pod/perldelta.pod index c1f08fe93d..726eecfeca 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -2580,7 +2580,8 @@ functionality and better error handling. [561] File access tests now use current process privileges rather than the user's default privileges, which could sometimes result in a mismatch -between reported access and actual access. +between reported access and actual access. This improvement is only +available on VMS v6.0 and later. There is a new C<kill> implementation based on C<sys$sigprc> that allows older VMS systems (pre-7.0) to use C<kill> to send signals rather than @@ -3165,6 +3166,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. @@ -3337,6 +3342,15 @@ 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 diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index c85d43be64..e858b26a4a 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -2626,12 +2626,22 @@ and C<IPC::SysV::Msg> documentation. =item my EXPR -=item my EXPR : ATTRIBUTES +=item my TYPE EXPR + +=item my EXPR : ATTRS + +=item my TYPE EXPR : ATTRS A C<my> declares the listed variables to be local (lexically) to the -enclosing block, file, or C<eval>. If -more than one value is listed, the list must be placed in parentheses. See -L<perlsub/"Private Variables via my()"> for details. +enclosing block, file, or C<eval>. If more than one value is listed, +the list must be placed in parentheses. + +The exact semantics and interface of TYPE and ATTRS are still +evolving. TYPE is currently bound to the use of C<fields> pragma, +and attributes are handled using the C<attributes> pragma, or starting +from Perl 5.8.0 also via the C<Attribute::Handlers> module. See +L<perlsub/"Private Variables via my()"> for details, and L<fields>, +L<attributes>, and L<Attribute::Handlers>. =item next LABEL @@ -3058,7 +3068,11 @@ See L<perlunicode> and L<encoding> for more about Unicode. =item our EXPR -=item our EXPR : ATTRIBUTES +=item our EXPR TYPE + +=item our EXPR : ATTRS + +=item our TYPE EXPR : ATTRS An C<our> declares the listed variables to be valid globals within the enclosing block, file, or C<eval>. That is, it has the same @@ -3099,15 +3113,20 @@ package, Perl will emit warnings if you have asked for them. our $bar; # emits warning An C<our> declaration may also have a list of attributes associated -with it. B<WARNING>: This is an experimental feature that may be -changed or removed in future releases of Perl. It should not be -relied upon. +with it. -The only currently recognized attribute is C<unique> which indicates -that a single copy of the global is to be used by all interpreters -should the program happen to be running in a multi-interpreter -environment. (The default behaviour would be for each interpreter -to have its own copy of the global.) Examples: +The exact semantics and interface of TYPE and ATTRS are still +evolving. TYPE is currently bound to the use of C<fields> pragma, +and attributes are handled using the C<attributes> pragma, or starting +from Perl 5.8.0 also via the C<Attribute::Handlers> module. See +L<perlsub/"Private Variables via my()"> for details, and L<fields>, +L<attributes>, and L<Attribute::Handlers>. + +The only currently recognized C<our()> attribute is C<unique> which +indicates that a single copy of the global is to be used by all +interpreters should the program happen to be running in a +multi-interpreter environment. (The default behaviour would be for +each interpreter to have its own copy of the global.) Examples: our @EXPORT : unique = qw(foo); our %EXPORT_TAGS : unique = (bar => [qw(aa bb cc)]); @@ -4483,16 +4502,18 @@ sockets but not socketpair. =item sort LIST -Sorts the LIST and returns the sorted list value. If SUBNAME or BLOCK -is omitted, C<sort>s in standard string comparison order. If SUBNAME is -specified, it gives the name of a subroutine that returns an integer -less than, equal to, or greater than C<0>, depending on how the elements -of the list are to be ordered. (The C<< <=> >> and C<cmp> -operators are extremely useful in such routines.) SUBNAME may be a -scalar variable name (unsubscripted), in which case the value provides -the name of (or a reference to) the actual subroutine to use. In place -of a SUBNAME, you can provide a BLOCK as an anonymous, in-line sort -subroutine. +In list context, this sorts the LIST and returns the sorted list value. +In scalar context, the behaviour of C<sort()> is undefined. + +If SUBNAME or BLOCK is omitted, C<sort>s in standard string comparison +order. If SUBNAME is specified, it gives the name of a subroutine +that returns an integer less than, equal to, or greater than C<0>, +depending on how the elements of the list are to be ordered. (The C<< +<=> >> and C<cmp> operators are extremely useful in such routines.) +SUBNAME may be a scalar variable name (unsubscripted), in which case +the value provides the name of (or a reference to) the actual +subroutine to use. In place of a SUBNAME, you can provide a BLOCK as +an anonymous, in-line sort subroutine. If the subroutine's prototype is C<($$)>, the elements to be compared are passed by reference in C<@_>, as for a normal subroutine. This is @@ -5197,17 +5218,22 @@ out the names of those files that contain a match: print $file, "\n"; } -=item sub BLOCK +=item sub NAME BLOCK + +=item sub NAME (PROTO) BLOCK -=item sub NAME +=item sub NAME : ATTRS BLOCK -=item sub NAME BLOCK +=item sub NAME (PROTO) : ATTRS BLOCK + +This is subroutine definition, not a real function I<per se>. +Without a BLOCK it's just a forward declaration. Without a NAME, +it's an anonymous function declaration, and does actually return +a value: the CODE ref of the closure you just created. -This is subroutine definition, not a real function I<per se>. With just a -NAME (and possibly prototypes or attributes), it's just a forward declaration. -Without a NAME, it's an anonymous function declaration, and does actually -return a value: the CODE ref of the closure you just created. See L<perlsub> -and L<perlref> for details. +See L<perlsub> and L<perlref> for details about subroutines and +references, and L<attributes> and L<Attributed::Handlers> for more +information about attributes. =item substr EXPR,OFFSET,LENGTH,REPLACEMENT diff --git a/pod/perlopentut.pod b/pod/perlopentut.pod index 34405639f4..6f7f77c432 100644 --- a/pod/perlopentut.pod +++ b/pod/perlopentut.pod @@ -838,6 +838,42 @@ how to increment a number in a file safely: close(FH) or die "can't close numfile: $!"; +=head2 IO Layers + +In Perl 5.8.0 a new I/O framework called "PerlIO" was introduced. +This is a new "plumbing" for all the I/O happening in Perl; for the +most part everything will work just as it did, but PerlIO brought in +also some new features, like the capability of think of I/O as "layers". +One I/O layer may in addition to just moving the data also do +transformations on the data. Such transformations may include +compression and decompression, encryption and decryption, and transforming +between various character encodings. + +Full discussion about the features of PerlIO is out of scope for this +tutorial, but here is how to recognize the layers being used: + +=over 4 + +=item * + +The three-(or more)-argument form of C<open()> is being used and the +second argument contains something else in addition to the usual +C<< '<' >>, C<< '>' >>, C<< '>>' >>, C<< '|' >> and their variants, +for example: + + open(my $fh, "<:utf8", $fn); + +=item * + +The two-argument form of C<binmode<open()> is being used, for example + + binmode($fh, ":encoding(utf16)"); + +=back + +For more detailed discussion about PerlIO see L<perlio>; +for more detailed discussion about Unicode and I/O see L<perluniintro>. + =head1 SEE ALSO The C<open> and C<sysopen> function in perlfunc(1); diff --git a/pod/perlsub.pod b/pod/perlsub.pod index b92c63a6f4..ce3b120633 100644 --- a/pod/perlsub.pod +++ b/pod/perlsub.pod @@ -220,9 +220,9 @@ Synopsis: my @oof = @bar; # declare @oof lexical, and init it my $x : Foo = $y; # similar, with an attribute applied -B<WARNING>: The use of attribute lists on C<my> declarations is -experimental. This feature should not be relied upon. It may -change or disappear in future releases of Perl. See L<attributes>. +B<WARNING>: The use of attribute lists on C<my> declarations is still +evolving. The current semantics and interface are subject to change. +See L<attributes> and L<Attribute::Handlers>. The C<my> operator declares the listed variables to be lexically confined to the enclosing block, conditional (C<if/unless/elsif/else>), @@ -1360,7 +1360,7 @@ parsed and invoked: use attributes __PACKAGE__, \&plugh, q[Ugly('\(")], 'Bad'; For further details on attribute lists and their manipulation, -see L<attributes>. +see L<attributes> and L<Attribute::Handlers>. =head1 SEE ALSO diff --git a/pod/perlthrtut.pod b/pod/perlthrtut.pod index 10a7c397df..2d07fb5f93 100644 --- a/pod/perlthrtut.pod +++ b/pod/perlthrtut.pod @@ -1048,6 +1048,9 @@ Management: Proc. of the International Workshop IWMM 92, St. Malo, France, September 1992, Yves Bekkers and Jacques Cohen, eds. Springer, 1992, ISBN 3540-55940-X (real-life thread applications). +Artur Bergman, "Where Wizards Fear To Tread", June 11, 2002, +L<http://www.perl.com/pub/a/2002/06/11/threads.html> + =head1 Acknowledgements Thanks (in no particular order) to Chaim Frenkel, Steve Fink, Gurusamy diff --git a/pod/perltoc.pod b/pod/perltoc.pod index dccfa05fc8..5ab395fe09 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -1796,7 +1796,7 @@ Proto, LocalPort, Listen, Reuse =back -=head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change) +=head2 perlfork - Perl's fork() emulation =over 4 @@ -2645,13 +2645,14 @@ B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, -Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, Digest, DirHandle, -Dumpvalue, Encode, English, Env, Exporter, Exporter::Heavy, -ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, -ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, -ExtUtils::MM, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, -ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, -ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, +Class::Struct, Config, Cwd, DB, DB_File, Devel::SelfStubber, Digest, +DirHandle, Dumpvalue, Encode, English, Env, Errno, Exporter, +Exporter::Heavy, ExtUtils::Command, ExtUtils::Command::MM, +ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install, +ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_Any, +ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS, +ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_UWIN, +ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree, @@ -2673,10 +2674,10 @@ Net::netent, Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO, Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color, -Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, Pod::t::basic, -SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, Socket, -Storable, Switch, Symbol, Term::ANSIColor, Term::Cap, Term::Complete, -Term::ReadLine, Test, Test::Builder, Test::Harness, Test::Harness::Assert, +Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, +Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch, +Symbol, Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, +Test::Builder, Test::Harness, Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps, Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread, Thread::Queue, @@ -5097,7 +5098,7 @@ NFS, rsync'ing the patches =item Why rsync the source tree -It's easier to rsync the source tree, It's more recent, It's more reliable +It's easier to rsync the source tree, It's more reliable =item Why rsync the patches @@ -7548,6 +7549,8 @@ SetNWBld.bat, Buildtype.bat =item Install +=item Build new extensions + =item Acknowledgements =item Authors @@ -10728,7 +10731,7 @@ C<orderlib>, C<osname>, C<osvers>, C<otherlibdirs> =item p C<package>, C<pager>, C<passcat>, C<patchlevel>, C<path_sep>, C<perl5>, -C<perl5>, C<perl>, C<perl_patchlevel> +C<perl>, C<perl_patchlevel> =item P @@ -10798,7 +10801,7 @@ C<xlibpth>, C<xs_apiversion> =item y -C<yaccflags> +C<yacc>, C<yaccflags> =item z @@ -16007,9 +16010,10 @@ MSGNUM ] ), delete ( MSGNUM ), reset (), quit () =item Functions -Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->hires( { 0 | 1 } -);, $p->bind($local_addr);, $p->ping($host [, $timeout]);, -$p->open($host);, $p->close();, pingecho($host [, $timeout]); +Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->source_verify( { +0 | 1 } );, $p->hires( { 0 | 1 } );, $p->bind($local_addr);, $p->ping($host +[, $timeout]);, $p->open($host);, $p->close();, pingecho($host [, +$timeout]); =back @@ -19542,6 +19546,33 @@ Win32::UnregisterServer(LIBRARYNAME) =back +=head2 XS::APItest - Test the perl C API + +=over 4 + +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION + +=over 4 + +=item EXPORT + +B<print_double>, B<print_long_double>, B<have_long_double>, B<print_nv>, +B<print_iv>, B<print_uv>, B<print_int>, B<print_long>, B<print_float> + +=back + +=item SEE ALSO + +=item AUTHORS + +=item COPYRIGHT AND LICENSE + +=back + =head2 XS::Typemap - module to test the XS typemaps distributed with perl =over 4 @@ -2101,7 +2101,18 @@ Perl_pack_cat(pTHX_ SV *cat, char *pat, register char *patend, register SV **beg afloat = _float_constants[0]; /* single prec. inf. */ else afloat = (float)SvNV(fromstr); #else +# if defined(VMS) && !defined(__IEEE_FP) +/* IEEE fp overflow shenanigans are unavailable on VAX and optional + * on Alpha; fake it if we don't have them. + */ + if (SvNV(fromstr) > FLT_MAX) + afloat = FLT_MAX; + else if (SvNV(fromstr) < -FLT_MAX) + afloat = -FLT_MAX; + else afloat = (float)SvNV(fromstr); +# else afloat = (float)SvNV(fromstr); +# endif #endif sv_catpvn(cat, (char *)&afloat, sizeof (float)); } @@ -2122,7 +2133,18 @@ Perl_pack_cat(pTHX_ SV *cat, char *pat, register char *patend, register SV **beg adouble = _double_constants[0]; /* double prec. inf. */ else adouble = (double)SvNV(fromstr); #else +# if defined(VMS) && !defined(__IEEE_FP) +/* IEEE fp overflow shenanigans are unavailable on VAX and optional + * on Alpha; fake it if we don't have them. + */ + if (SvNV(fromstr) > DBL_MAX) + adouble = DBL_MAX; + else if (SvNV(fromstr) < -DBL_MAX) + adouble = -DBL_MAX; + else adouble = (double)SvNV(fromstr); +# else adouble = (double)SvNV(fromstr); +# endif #endif sv_catpvn(cat, (char *)&adouble, sizeof (double)); } diff --git a/t/lib/warnings/toke b/t/lib/warnings/toke index d2695d6b26..0a5346a50f 100644 --- a/t/lib/warnings/toke +++ b/t/lib/warnings/toke @@ -378,20 +378,20 @@ $a = -123._456; print "$a\n"; # 25 $a = -123.4_56; print "$a\n"; $a = -123.45_6; print "$a\n"; $a = -123.456_; print "$a\n"; # 28 -$a = 123.456E_12; print "$a\n"; # 29 -$a = 123.456E1_2; print "$a\n"; -$a = 123.456E12_; print "$a\n"; # 31 -$a = 123.456E_+12; print "$a\n"; # 32 -$a = 123.456E+_12; print "$a\n"; # 33 -$a = 123.456E+1_2; print "$a\n"; -$a = 123.456E+12_; print "$a\n"; # 35 +$a = 123.456E_12; printf("%.0f\n", $a); # 29 +$a = 123.456E1_2; printf("%.0f\n", $a); +$a = 123.456E12_; printf("%.0f\n", $a); # 31 +$a = 123.456E_+12; printf("%.0f\n", $a); # 32 +$a = 123.456E+_12; printf("%.0f\n", $a); # 33 +$a = 123.456E+1_2; printf("%.0f\n", $a); +$a = 123.456E+12_; printf("%.0f\n", $a); # 35 $a = 123.456E_-12; print "$a\n"; # 36 $a = 123.456E-_12; print "$a\n"; # 37 $a = 123.456E-1_2; print "$a\n"; $a = 123.456E-12_; print "$a\n"; # 39 $a = 1__23; print "$a\n"; # 40 $a = 12.3__4; print "$a\n"; # 41 -$a = 12.34e1__2; print "$a\n"; # 42 +$a = 12.34e1__2; printf("%.0f\n", $a); # 42 no warnings 'syntax' ; $a = _123; print "$a\n"; $a = 1_23; print "$a\n"; @@ -419,20 +419,20 @@ $a = -123._456; print "$a\n"; $a = -123.4_56; print "$a\n"; $a = -123.45_6; print "$a\n"; $a = -123.456_; print "$a\n"; -$a = 123.456E_12; print "$a\n"; -$a = 123.456E1_2; print "$a\n"; -$a = 123.456E12_; print "$a\n"; -$a = 123.456E_+12; print "$a\n"; -$a = 123.456E+_12; print "$a\n"; -$a = 123.456E+1_2; print "$a\n"; -$a = 123.456E+12_; print "$a\n"; +$a = 123.456E_12; printf("%.0f\n", $a); +$a = 123.456E1_2; printf("%.0f\n", $a); +$a = 123.456E12_; printf("%.0f\n", $a); +$a = 123.456E_+12; printf("%.0f\n", $a); +$a = 123.456E+_12; printf("%.0f\n", $a); +$a = 123.456E+1_2; printf("%.0f\n", $a); +$a = 123.456E+12_; printf("%.0f\n", $a); $a = 123.456E_-12; print "$a\n"; $a = 123.456E-_12; print "$a\n"; $a = 123.456E-1_2; print "$a\n"; $a = 123.456E-12_; print "$a\n"; $a = 1__23; print "$a\n"; $a = 12.3__4; print "$a\n"; -$a = 12.34e1__2; print "$a\n"; +$a = 12.34e1__2; printf("%.0f\n", $a); EXPECT OPTIONS regex Misplaced _ in number at - line 6. diff --git a/utils/perlivp.PL b/utils/perlivp.PL index fa7a8396ad..fd58e87824 100644 --- a/utils/perlivp.PL +++ b/utils/perlivp.PL @@ -14,9 +14,9 @@ use Cwd; # This forces PL files to create target in same directory as PL file. # This is so that make depend always knows where to find PL derivatives. -$origdir = cwd; +my $origdir = cwd; chdir dirname($0); -$file = basename($0, '.PL'); +my $file = basename($0, '.PL'); $file .= '.com' if $^O eq 'VMS'; # Create output file. @@ -37,7 +37,7 @@ $Config{'startperl'} print OUT <<'!NO!SUBS!'; -# perlivp V 0.01 +# perlivp V 0.02 sub usage { @@ -56,7 +56,7 @@ Usage: exit; } -use vars (%opt); # allow testing with older versions (do not use our) +use vars qw(%opt); # allow testing with older versions (do not use our) @opt{ qw/? H h P p V v/ } = qw(0 0 0 0 0 0 0); @@ -88,8 +88,15 @@ if (defined($Config{'perlpath'})) { $perlpath = $Config{'perlpath'}; } # Of course some platforms are distinct... if ($^O eq 'VMS') { $perlpath = $^X; } +# The useithreads Config variable plays a role in whether or not +# threads and threads/shared work when C<use>d. They apparently always +# get installed on systems that can run Configure. +my $useithreads = ''; +if (defined($Config{'useithreads'})) { $useithreads = $Config{'useithreads'}; } + print OUT <<"!GROK!THIS!"; my \$perlpath = '$perlpath'; +my \$useithreads = '$useithreads'; !GROK!THIS! print OUT <<'!NO!SUBS!'; @@ -199,6 +206,10 @@ if (defined($Config{'extensions'})) { my @extensions = split(/\s+/,$Config{'extensions'}); foreach (@extensions) { next if ($_ eq ''); + if ( $useithreads !~ /define/i ) { + next if ($_ eq 'threads'); + next if ($_ eq 'threads/shared'); + } next if ($_ eq 'Devel/DProf'); # VMS$ perl -e "eval ""require \""Devel/DProf.pm\"";"" print $@" # \NT> perl -e "eval \"require 'Devel/DProf.pm'\"; print $@" @@ -3341,6 +3341,7 @@ static char *mp_do_pathify_dirspec(pTHX_ char *dir,char *buf, int ts) unsigned long int retlen; char *retpath, *cp1, *cp2, trndir[NAM$C_MAXRSS+1]; unsigned short int trnlnm_iter_count; + STRLEN trnlen; if (!dir || !*dir) { set_errno(EINVAL); set_vaxc_errno(SS$_BADPARAM); return NULL; @@ -3354,7 +3355,7 @@ static char *mp_do_pathify_dirspec(pTHX_ char *dir,char *buf, int ts) && my_trnlnm(trndir,trndir,0)) { trnlnm_iter_count++; if (trnlnm_iter_count >= PERL_LNM_MAX_ITER) break; - STRLEN trnlen = strlen(trndir); + trnlen = strlen(trndir); /* Trap simple rooted lnms, and return lnm:[000000] */ if (!strcmp(trndir+trnlen-2,".]")) { @@ -6636,13 +6637,17 @@ Perl_cando_by_name(pTHX_ I32 bit, Uid_t effective, char *fname) /* Before we call $check_access, create a user profile with the current * process privs since otherwise it just uses the default privs from the - * UAF and might give false positives or negatives. + * UAF and might give false positives or negatives. This only works on + * VMS versions v6.0 and later since that's when sys$create_user_profile + * became available. */ /* get current process privs and username */ _ckvmssts(sys$getjpiw(0,0,0,jpilst,iosb,0,0)); _ckvmssts(iosb[0]); +#if defined(__VMS_VER) && __VMS_VER >= 60000000 + /* find out the space required for the profile */ _ckvmssts(sys$create_user_profile(&usrdsc,&usrprolst,0,0, &usrprodsc.dsc$w_length,0)); @@ -6656,6 +6661,13 @@ Perl_cando_by_name(pTHX_ I32 bit, Uid_t effective, char *fname) retsts = sys$check_access(&objtyp,&namdsc,0,armlst,0,0,0,&usrprodsc); Safefree(usrprodsc.dsc$a_pointer); if (retsts == SS$_NOCALLPRIV) retsts = SS$_NOPRIV; /* not really 3rd party */ + +#else + + retsts = sys$check_access(&objtyp,&namdsc,&usrdsc,armlst); + +#endif + if (retsts == SS$_NOPRIV || retsts == SS$_NOSUCHOBJECT || retsts == SS$_INVFILFOROP || retsts == RMS$_FNF || retsts == RMS$_SYN || retsts == RMS$_DIR || retsts == RMS$_DEV || retsts == RMS$_DNF) { diff --git a/win32/config.bc b/win32/config.bc index 0df9810030..483ffcd41e 100644 --- a/win32/config.bc +++ b/win32/config.bc @@ -793,14 +793,14 @@ sPRIFUldbl='"F"' sPRIGUldbl='"G"' sPRIXU64='"lX"' sPRId64='"ld"' -sPRIeldbl='"e"' -sPRIfldbl='"f"' -sPRIgldbl='"g"' +sPRIeldbl='"Le"' +sPRIfldbl='"Lf"' +sPRIgldbl='"Lg"' sPRIi64='"li"' sPRIo64='"lo"' sPRIu64='"lu"' sPRIx64='"lx"' -sSCNfldbl='"f"' +sSCNfldbl='"Lf"' sched_yield='' scriptdir='~INST_TOP~~INST_VER~\bin' scriptdirexp='~INST_TOP~~INST_VER~\bin' diff --git a/win32/config_H.bc b/win32/config_H.bc index 3fa348c71f..3e4e80c576 100644 --- a/win32/config_H.bc +++ b/win32/config_H.bc @@ -2930,7 +2930,7 @@ #define PERL_PRIfldbl "Lf" /**/ #define PERL_PRIgldbl "Lg" /**/ #define PERL_PRIeldbl "Le" /**/ -#define PERL_SCNfldbl "f" /**/ +#define PERL_SCNfldbl "Lf" /**/ /* Off_t: * This symbol holds the type used to declare offsets in the kernel. diff --git a/win32/config_H.gc b/win32/config_H.gc index 85c000a83e..a968ec6f3c 100644 --- a/win32/config_H.gc +++ b/win32/config_H.gc @@ -2927,9 +2927,9 @@ * This symbol, if defined, contains the string used by stdio to * format long doubles (format 'f') for input. */ -#define PERL_PRIfldbl "Lf" /**/ -#define PERL_PRIgldbl "Lg" /**/ -#define PERL_PRIeldbl "Le" /**/ +/*#define PERL_PRIfldbl "f" /**/ +/*#define PERL_PRIgldbl "g" /**/ +/*#define PERL_PRIeldbl "e" /**/ /*#define PERL_SCNfldbl "f" /**/ /* Off_t: |