Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: ff3529a43e792c916e55d2ee6b977573aee9c00c
      
https://github.com/Perl/perl5/commit/ff3529a43e792c916e55d2ee6b977573aee9c00c
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M cpan/Digest-MD5/MD5.xs
    M cpan/Time-Piece/Piece.xs
    M dist/Time-HiRes/HiRes.xs

  Log Message:
  -----------
  cpan/various.xs: don't force "C" linkage on system headers

This produced errors with MSVC C++ builds like:

C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\wspiapi.h(53):
error C2894: templates cannot be declared to have 'C' linkage


  Commit: 3b4552b77e29564b9382697cb97bd1ca3486d331
      
https://github.com/Perl/perl5/commit/3b4552b77e29564b9382697cb97bd1ca3486d331
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M ext/DynaLoader/dl_win32.xs

  Log Message:
  -----------
  dl_win32.xs: can't assign literal to "char *"

This generated code like:

        char *  filename;

        if (items < 3)
            filename = "DynaLoader";
        else {
            filename = (char *)SvPV_nolen(ST(2))

which failed in C++ builds (and isn't valid in C either), when
assigning a "const char *" (well, "const char [11]") to "char *".


  Commit: 25dc7302999be3098a1c2ddd2d375a25a64da2a3
      
https://github.com/Perl/perl5/commit/25dc7302999be3098a1c2ddd2d375a25a64da2a3
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M locale.c
    M sv.c

  Log Message:
  -----------
  locale.c, sv.c: compound literals are C99, but not C++

C++ has a similar feature, but it has a different syntax, both
as of C++20 do support designated struct initializers.


  Commit: 9f5462b0c86849feb697551750f3bc517f268c29
      
https://github.com/Perl/perl5/commit/9f5462b0c86849feb697551750f3bc517f268c29
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M mg.c

  Log Message:
  -----------
  mg.c: the case statements allowed jumping past the initialization of 
extended_errno

which C++ forbids.


  Commit: 8c2652c1d9709e58ccf726121d1d7bb04c96b354
      
https://github.com/Perl/perl5/commit/8c2652c1d9709e58ccf726121d1d7bb04c96b354
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M win32/win32.c
    M win32/win32sck.c

  Log Message:
  -----------
  win32.c/win32sck.c: fix const correctness

C++ builds threw an error on these.


  Commit: 50e089a0f386e4941054683b95cd4ea6d33933bd
      
https://github.com/Perl/perl5/commit/50e089a0f386e4941054683b95cd4ea6d33933bd
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M win32/perllib.c

  Log Message:
  -----------
  perllib.c: const correctness

21060 also has this fix


  Commit: 2adc7100becefff7975c486ef2b0cd2c72467571
      
https://github.com/Perl/perl5/commit/2adc7100becefff7975c486ef2b0cd2c72467571
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M win32/GNUmakefile
    M win32/Makefile

  Log Message:
  -----------
  win32/Makefile: we need C++20 for designated struct initialization

Unfortunately this means older versions of MSVC that don't have
C++20 support can no longer build perl as C++.


  Commit: 91eb43902acc7db75066188ff13e204d5c39b7e6
      
https://github.com/Perl/perl5/commit/91eb43902acc7db75066188ff13e204d5c39b7e6
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M embed.fnc
    M proto.h

  Log Message:
  -----------
  embed.fnc: make sure the 'extern "C"' Perl_ref() is visible to the definition

This caused the link stage to fail with a C++ build, as the type
annotated C++ name was used for the definition rather than the
extern "C" name.


  Commit: 97a167a906a5833848db1360c2cfa0e6cbe8f556
      
https://github.com/Perl/perl5/commit/97a167a906a5833848db1360c2cfa0e6cbe8f556
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M win32/GNUmakefile
    M win32/Makefile

  Log Message:
  -----------
  win32/makefiles: only add -std:c++20 for USE_CPLUSPLUS

and note that only 2019 or later can build as C++, since the
use of designated initialisers means we need at least C++20 and
only 2019 and 2022 support that.

"cl /?" for 2019 doesn't list "-std:c++20" as an option at least of
19.29.30148, but it does accept it.


  Commit: 492d6b6e6b407a820fc1a7d7ff2803440c2030bc
      
https://github.com/Perl/perl5/commit/492d6b6e6b407a820fc1a7d7ff2803440c2030bc
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M cpan/Compress-Raw-Bzip2/bzip2-src/compress.c
    M cpan/Compress-Raw-Zlib/zlib-src/deflate.c
    M cpan/Compress-Raw-Zlib/zlib-src/trees.c
    M cpan/Digest-MD5/t/files.t
    M cpan/MIME-Base64/Base64.xs

  Log Message:
  -----------
  C++ compatibility: eliminate "register" storage class usage

clang-16 rejects this, MSVC warns about it.

Part of fixing #21073


  Commit: 7151e1628e814269cd79afe0fd5cc53625964b44
      
https://github.com/Perl/perl5/commit/7151e1628e814269cd79afe0fd5cc53625964b44
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M dist/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm

  Log Message:
  -----------
  C++ builds: avoid generating C<< extern "C" extern "C" >>

clang++ complains about this.

The replacement prevents the warning and should be back-compatible.


  Commit: 3990d0d254210581372dc9650808daa39566b3e8
      
https://github.com/Perl/perl5/commit/3990d0d254210581372dc9650808daa39566b3e8
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M dist/Time-HiRes/Changes
    M dist/Time-HiRes/HiRes.pm
    M ext/DynaLoader/DynaLoader_pm.PL

  Log Message:
  -----------
  bump $DynaLoader::VERSION and $Time::HiRes::VERSION

for the C++ compatibility changes.

I also need to bump some cpan/ but we don't own those, so I'll
do it separately.


  Commit: 1f6d16e1d503e4c06aaf2e00eb4ed36550693ebc
      
https://github.com/Perl/perl5/commit/1f6d16e1d503e4c06aaf2e00eb4ed36550693ebc
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M Porting/Maintainers.pl
    M cpan/Time-Piece/Piece.pm
    M t/porting/customized.dat

  Log Message:
  -----------
  bump $Time::Piece::VERSION to a dev release

since we don't own it, and mark it as customized


  Commit: 638f63b6fd0ae95031ee181cb42b21277539b5f5
      
https://github.com/Perl/perl5/commit/638f63b6fd0ae95031ee181cb42b21277539b5f5
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M Porting/Maintainers.pl
    M cpan/Digest-MD5/MD5.pm
    M t/porting/customized.dat

  Log Message:
  -----------
  bump $Digest::MD5::VERSION to a dev release

since we don't own it, and mark the customized files.


  Commit: 4dc2cf45feb548059d2b42b85df91b054a459425
      
https://github.com/Perl/perl5/commit/4dc2cf45feb548059d2b42b85df91b054a459425
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M Porting/Maintainers.pl
    M cpan/MIME-Base64/lib/MIME/Base64.pm
    M cpan/MIME-Base64/lib/MIME/QuotedPrint.pm
    M t/porting/customized.dat

  Log Message:
  -----------
  bump $MIME::Base64::VERSION to a dev release

since we don't own it, and mark the modified files customized


  Commit: 38a058e3d381a450cadd5736ce19c260ff79d1d3
      
https://github.com/Perl/perl5/commit/38a058e3d381a450cadd5736ce19c260ff79d1d3
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M Porting/Maintainers.pl
    M cpan/Compress-Raw-Bzip2/lib/Compress/Raw/Bzip2.pm
    M t/porting/customized.dat

  Log Message:
  -----------
  bump $Compress::Raw::Bzip2::VERSION to a dev release

since we don't own it, and mark the modified files as customized


  Commit: fbcc226a2af13a8eb7505b7607f2cd5be60ee182
      
https://github.com/Perl/perl5/commit/fbcc226a2af13a8eb7505b7607f2cd5be60ee182
  Author: Tony Cook <t...@develop-help.com>
  Date:   2023-05-24 (Wed, 24 May 2023)

  Changed paths:
    M Porting/Maintainers.pl
    M cpan/Compress-Raw-Zlib/lib/Compress/Raw/Zlib.pm
    M t/porting/customized.dat

  Log Message:
  -----------
  bump $Compress::Raw::Zlib::VERSION to a dev release

since we don't own it, and mark the modified files as customized


Compare: https://github.com/Perl/perl5/compare/6a541b132cde...fbcc226a2af1

Reply via email to