Branch: refs/heads/davem/wip_xspod
Home: https://github.com/Perl/perl5
Commit: 9cc350631033876535bac5ecba48fb46611d3095
https://github.com/Perl/perl5/commit/9cc350631033876535bac5ecba48fb46611d3095
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M XSUB.h
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update default, length(s), ... params
Rewrite (and retitle) these three subsections:
=head3 Default Parameter Values
=head3 The C<length(NAME)> Keyword
=head3 Variable-length Parameter Lists
Commit: 91d1522660e07f1b8fcf8bd2aaacd827a7168157
https://github.com/Perl/perl5/commit/91d1522660e07f1b8fcf8bd2aaacd827a7168157
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: Input part, PREINIT sections
Add text for the new '=head2 The XSUB Input Part' section, and rewrite
the existing entry for the PREINIT keyword.
Commit: 7161be834d6f958f63a5eb9f419320e3b567ddd8
https://github.com/Perl/perl5/commit/7161be834d6f958f63a5eb9f419320e3b567ddd8
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update 'The INPUT: Keyword' section
This commit completely rewrites this section and subsections:
=head3 The INPUT: Keyword
=head4 The NO_INIT Keyword
=head4 Initializing Function Parameters
=head4 The & Unary Operator
It de-emphasises the INPUT keyword and suggests using ANSI XS signatures
etc instead.
Commit: 383515ff1a5d207fec6df80ef391c8f6a3a870de
https://github.com/Perl/perl5/commit/383515ff1a5d207fec6df80ef391c8f6a3a870de
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update 'SCOPE: Keyword' section
Commit: c34a1181411aa7a785ed40f42aee71974b2bbec9
https://github.com/Perl/perl5/commit/c34a1181411aa7a785ed40f42aee71974b2bbec9
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: init part, INIT sections
Add text for the new '=head2 The XSUB Init Part' section, and rewrite
the existing entry for the INIT keyword.
Commit: 1744e61f22d85e7e1718f32bb6be80d44d865fa3
https://github.com/Perl/perl5/commit/1744e61f22d85e7e1718f32bb6be80d44d865fa3
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: code part, autocall, C_ARGS
Add text to the new
=head2 The XSUB Code Part
=head3 Auto-calling a C function
sections, and rewrite the existing
=head4 The C_ARGS: Keyword
section
Commit: a0042e8b99ce5533a34b2523df808461b85e149d
https://github.com/Perl/perl5/commit/a0042e8b99ce5533a34b2523df808461b85e149d
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: CODE, PPCODE
Rewrite these sections:
=head3 The CODE: Keyword
=head3 The PPCODE: Keyword
Commit: 03f3d8b816a452ec5b861bcecb829d3d6c23c8fb
https://github.com/Perl/perl5/commit/03f3d8b816a452ec5b861bcecb829d3d6c23c8fb
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update NOT_IMPLEMENTED_YET: keyword
This keyword formerly wasn't documented. The docs now say "this is what
it is, but don't use it".
Commit: 1018b90501ece1a7a4459b639a35043b5417ead4
https://github.com/Perl/perl5/commit/1018b90501ece1a7a4459b639a35043b5417ead4
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: output part
Add text to the new
=head2 The XSUB Output Part
section, and rewrite the text in these existing sections:
=head3 The POSTCALL: Keyword
=head3 The OUTPUT: Keyword
Commit: 31b44be8924a7d426c4787d7e593835996e56ef6
https://github.com/Perl/perl5/commit/31b44be8924a7d426c4787d7e593835996e56ef6
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: cleanup part
Add text to the new
=head2 The XSUB Cleanup Part
section, and rewrite the text in this existing section:
=head3 The CLEANUP: Keyword
Commit: 273a91c1f1ad1a431ab05fa577b2fc675f57d8ec
https://github.com/Perl/perl5/commit/273a91c1f1ad1a431ab05fa577b2fc675f57d8ec
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update generic intro, PROTOTYPE
Add text to the new
=head2 XSUB Generic Keywords
section, and rewrite the text in this existing section:
=head3 The PROTOTYPE: Keyword
Commit: 2864ffc7847edd3a2d5501e95683ed90f97a0b19
https://github.com/Perl/perl5/commit/2864ffc7847edd3a2d5501e95683ed90f97a0b19
Author: David Mitchell <[email protected]>
Date: 2025-09-24 (Wed, 24 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: mention package name types
Explain that a 'C' parameter type in an XSUB declaration can actually
be a Perl package name or similar, e.g.
Foo::Bar
f(Foo::Bar obj, char *s)
Commit: 6a7025fed743883007c7112adec0ca45ee5ac3fe
https://github.com/Perl/perl5/commit/6a7025fed743883007c7112adec0ca45ee5ac3fe
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update OVERLOAD, add T_PTROBJ
First, add a new subsection
=head3 T_PTROBJ and opaque handles
to the TYPEMAPs section explaining how this typemap can be used to
map between Perl objects and C library handles. It provides a
fully-worked example of wrapping a simple arithmetic library.
Then completely rewrite the
=head3 The OVERLOAD: Keyword
section. In particular, it now refers to the new T_PTROBJ example and
shows how it can be extended to use overloading.
Commit: 813423d90161580a565b4dd90556b3d9d1046589
https://github.com/Perl/perl5/commit/813423d90161580a565b4dd90556b3d9d1046589
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: document ATTRS
This keyword was undocumented, even though it had been added 25 years
ago.
Commit: e97589946409d64a1f8e7a85a588a996b3b77cf4
https://github.com/Perl/perl5/commit/e97589946409d64a1f8e7a85a588a996b3b77cf4
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: add "Sharing XSUB bodies" section
Populate the introduction to this new section.
Commit: 0e74c95e70ec063c1cd4aecc41b4b1097b74d5c6
https://github.com/Perl/perl5/commit/0e74c95e70ec063c1cd4aecc41b4b1097b74d5c6
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: ALIAS
Rewrite this section:
=head3 The ALIAS: Keyword
Commit: ce2509fe04471f047439a99cb006397bb30a2c2d
https://github.com/Perl/perl5/commit/ce2509fe04471f047439a99cb006397bb30a2c2d
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update INTERFACE, INTERFACE_MACRO
Rewrite these sections:
=head3 The INTERFACE: Keyword
=head3 The INTERFACE_MACRO: Keyword
also demote the second to be a head4 child of the first. Then expand
the T_PTROBJ example to use INTERFACE as an alternative to ALIAS.
Commit: f16ca14bc18f2af60910038dfb0cc81d19349628
https://github.com/Perl/perl5/commit/f16ca14bc18f2af60910038dfb0cc81d19349628
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: update: CASE
Rewrite this section:
=head3 The CASE: Keyword
Commit: e8d92cd049f26a2b9aa6e19d3fff22a7a0f71de0
https://github.com/Perl/perl5/commit/e8d92cd049f26a2b9aa6e19d3fff22a7a0f71de0
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
Log Message:
-----------
perlxs.pod: add "Using Typemaps" section
Populate this new section (except for the T_PTROBJ subsection, which had
already been added by an earlier commit within this branch).
Note that the "Common typemaps" subsection could probably benefit
from some further expansion by someone familiar with which built-in
T_FOO entries are useful.
Commit: 558681c78e13c5bf1a40ea8fd36886d404024032
https://github.com/Perl/perl5/commit/558681c78e13c5bf1a40ea8fd36886d404024032
Author: David Mitchell <[email protected]>
Date: 2025-09-28 (Sun, 28 Sep 2025)
Changed paths:
M dist/ExtUtils-ParseXS/lib/perlxs.pod
M t/porting/known_pod_issues.dat
Log Message:
-----------
perlxs.pod: update "Using XS With C++" section
Rewrite this section:
=head2 Using XS With C++
Disclaimer: I've never written a proper C++ program. I had to
(literally) dust off my 34-year old copy of Stroustrup(*) and also do
some Googling. Hopefully what I've written is sane.
(*) This was bought back in the days when people used to to learn things
by buying books, and when I thought that I ought to know something about
this new-fangled C++ thing. I never got round to reading all of it: I
discovered Perl around the same time, which looked to be a lot more fun.
Compare: https://github.com/Perl/perl5/compare/4d6f204f3b11...558681c78e13
To unsubscribe from these emails, change your notification settings at
https://github.com/Perl/perl5/settings/notifications