This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta: document base.pm changes
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
19e72bbf 3=for comment
b53e16ae 4This has been completed up to c19fd8b40, except for:
19e72bbf
FC
5d9018cbe5b480ba29cc6151aba8f5102a7e009c4 (Eric Brine)
6 -- while I (use git blame to find out who) see how this change within
7 lex_read_unichar is correct, I cannot tell at a glance what visible
8 effects this bug has at the Perl level or through the lexer API.
9a04eb69c733e84250299f12df200f10b76b0a45c (David Golden)
107a799f6bb3cac2e1bf9bede83579324cffa59c16 (David Golden)
11be48bbe8d671b6841c3ec7cb734b98071afe3cd9 (Chip)
b53e16ae
FC
12b64f48ffd8bf2c857b777e167188f0434333cc7b (Steffen Müller)
131d2615b4c7e80af2a76441add35092ec4d81724f (Steffen Müller)
19e72bbf 14
44691e6f
AB
15=head1 NAME
16
3432e5a1
SL
17[ this is a template for a new perldelta file. Any text flagged as
18XXX needs to be processed before release. ]
19
20perldelta - what is new for perl v5.15.4
760696b8 21
5438d4b8 22=head1 DESCRIPTION
5cd408a2 23
3432e5a1
SL
24This document describes differences between the 5.15.3 release and
25the 5.15.4 release.
5cd408a2 26
3432e5a1
SL
27If you are upgrading from an earlier release such as 5.15.3, first read
28L<perl5153delta>, which describes differences between 5.15.3 and
295.15.4.
062678b2 30
63ac71b9 31=head1 Notice
4185c919 32
3432e5a1 33XXX Any important notices here
0afed34d 34
63ac71b9 35=head1 Core Enhancements
0afed34d 36
3f728e2e 37=head2 $^X converted to an absolute path on FreeBSD, OS X and Solaris
d2006265 38
3f728e2e
NC
39C<$^X> is now converted to an absolute path on OS X, FreeBSD (without
40needing F</proc> mounted) and Solaris 10 and 11. This augments the
41previous approach of using F</proc> on Linux, FreeBSD and NetBSD
42(in all cases, where mounted).
43
44This makes relocatable perl installations more useful on these platforms.
45(See "Relocatable @INC" in F<INSTALL>)
d6cf2367 46
6d110ad0
FC
47=head2 Unicode Symbol Names
48
49Perl now has proper support for Unicode in symbol names. It used to be
50that C<*{$foo}> would ignore the internal UTF8 flag and use the bytes of
51the underlying representation to look up the symbol. That meant that
52C<*{"\x{100}"}> and C<*{"\xc4\x80"}> would return the same thing. All
53these parts of Perl have been fixed to account for Unicode:
54
55=over
56
57=item *
58
59Method names (including those passed to C<use overload>)
60
61=item *
62
63Typeglob names (including names of variables, subroutines and filehandles)
64
65=item *
66
67Package names
68
69=item *
70
b2ef4871 71Constant subroutine names (not null-clean yet)
6d110ad0
FC
72
73=item *
74
75C<goto>
76
77=item *
78
79Symbolic dereferencing
80
81=item *
82
83Second argument to C<bless()> and C<tie()>
84
85=item *
86
87Return value of C<ref()>
88
89=item *
90
91Package names returned by C<caller()>
92
93=item *
94
95Subroutine prototypes
96
97=item *
98
99Attributes
100
101=item *
102
103Various warnings and error messages that mention variable names or values,
104methods, etc.
105
106=back
107
108In addition, a parsing bug has been fixed that prevented C<*{é}> from
109implicitly quoting the name, but instead interpreted it as C<*{+é}>, which
110would cause a strict violation.
111
112C<*{"*a::b"}> automatically strips off the * if it is followed by an ASCII
113letter. That has been extended to all Unicode identifier characters.
114
115C<$é> is now subject to "Used only once" warnings. It used to be exempt,
116as it was treated as a punctuation variable.
117
b53e16ae
FC
118Also, single-character Unicode punctuation variables (like $‰) are now
119supported [perl #69032]. They are also supported with C<our> and C<my>,
120but that is a mistake that will be fixed before 5.16.
121
b2ef4871 122=head2 Support for Embedded Nulls
6d110ad0 123
b2ef4871 124Some parts of Perl did not work correctly with nulls (C<chr 0>) embedded in
6d110ad0
FC
125strings. That meant that, for instance, C<< $m = "a\0b"; foo->$m >> would
126call the "a" method, instead of the actual method name contained in $m.
b2ef4871 127These parts of perl have been fixed to support nulls:
6d110ad0
FC
128
129=over
130
131=item *
132
133Method names
134
135=item *
136
137Typeglob names (including filehandle names)
138
139=item *
140
141Package names
142
143=item *
144
145Autoloading
146
147=item *
148
149Return value of C<ref()>
150
151=item *
152
153Package names returned by C<caller()>
154
155=item *
156
157Filehandle warnings
158
159=item *
160
161Typeglob elements (C<*foo{"THING\0stuff"}>)
162
163=item *
164
165Signal names
166
167=item *
168
169Various warnings and error messages that mention variable names or values,
170methods, etc.
171
172=back
173
174One side effect of these changes is that blessing into "\0" no longer
175causes C<ref()> to return false.
176
b53e16ae
FC
177=head2 Autoloaded sort subroutines
178
179Custom sort subroutines can now be autoloaded [perl #30661]:
180
181 sub AUTOLOAD { ... }
182 @sorted = sort foo @list; # uses AUTOLOAD
183
63ac71b9 184=head1 Security
0afed34d 185
3432e5a1
SL
186XXX Any security-related notices go here. In particular, any security
187vulnerabilities closed should be noted here rather than in the
188L</Selected Bug Fixes> section.
46661105 189
3432e5a1 190[ List each security issue as a =head2 entry ]
46661105 191
5438d4b8 192=head1 Incompatible Changes
7818c927 193
3432e5a1 194XXX For a release on a stable branch, this section aspires to be:
e1dccc0d 195
3432e5a1
SL
196 There are no changes intentionally incompatible with 5.XXX.XXX
197 If any exist, they are bugs and reports are welcome.
7b2b001e 198
3432e5a1 199[ List each incompatible change as a =head2 entry ]
bdb9ba77 200
3432e5a1 201=head1 Deprecations
7ec04da5 202
3432e5a1
SL
203XXX Any deprecated features, syntax, modules etc. should be listed here.
204In particular, deprecated modules should be listed here even if they are
205listed as an updated module in the L</Modules and Pragmata> section.
7ec04da5 206
3432e5a1 207[ List each deprecation as a =head2 entry ]
d6cf2367 208
3432e5a1 209=head1 Performance Enhancements
d6cf2367 210
3432e5a1
SL
211XXX Changes which enhance performance without changing behaviour go here. There
212may well be none in a stable release.
5d4ff231 213
3432e5a1 214[ List each enhancement as a =item entry ]
e46d9735 215
63ac71b9 216=over 4
e46d9735
CBW
217
218=item *
219
b53e16ae
FC
220C<substr> no longer calculates a value to return when called in void
221context.
828d6195 222
3432e5a1 223=back
83307084 224
3432e5a1 225=head1 Modules and Pragmata
83307084 226
3432e5a1
SL
227XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
228go here. If Module::CoreList is updated, generate an initial draft of the
229following sections using F<Porting/corelist-perldelta.pl>, which prints stub
230entries to STDOUT. Results can be pasted in place of the '=head2' entries
231below. A paragraph summary for important changes should then be added by hand.
232In an ideal world, dual-life modules would have a F<Changes> file that could be
233cribbed.
83307084 234
3432e5a1 235[ Within each section, list entries as a =item entry ]
83307084 236
3432e5a1 237=head2 New Modules and Pragmata
d93f0209 238
3432e5a1 239=over 4
d93f0209 240
60527824
FR
241=item *
242
3432e5a1 243XXX
d6cf2367 244
3432e5a1 245=back
d39de893 246
3432e5a1 247=head2 Updated Modules and Pragmata
d39de893 248
3432e5a1 249=over 4
39afdc5a
CBW
250
251=item *
252
1e915955 253L<Archive::Tar> has been upgraded from version 1.78 to version 1.80.
666c7ca6 254
7b8e5ef0
GG
255=item *
256
91710846
DG
257L<base> has been upgraded from version 2.17 to version 2.18.
258
259C<base> no longer sets a module's C<$VERSION> to "-1" when a module it loads
260does not define a C<$VERSION>. This change has been made because "-1" is not
261a valid version number under the new "lax" criteria used internally by
262C<UNIVERSAL::VERSION>. (See L<versioN> for more on "lax" version criteria.)
263
264C<base> no longer internally skips loading modules it has already loaded and
265instead relies on C<require> to inspect C<%INC>. This fixes a bug when C<base>
266is used with code that clear C<%INC> to force a module to be reloaded.
267
268=item *
269
a2fa999d
CBW
270L<Digest> has been upgraded from version 1.16 to version 1.17.
271
272=item *
273
19e72bbf
FC
274L<DynaLoader> has been upgraded from version 1.13 to 1.14.
275
276It stopped exporting its symbols with the ExtUtils::ParseXS changes in
1e915955 2775.15.2. Now it exports them once more.
19e72bbf
FC
278
279=item *
280
7b8e5ef0
GG
281L<ExtUtils::MakeMaker> has been upgraded from version 6.59 to version 6.61_01.
282
bd65daab
CBW
283=item *
284
02e7ec6d 285L<ExtUtils::ParseXS> has been upgraded from version 3.04_04 to version 3.05.
bd65daab 286
3f2cb5bf
S
287=item *
288
02e7ec6d
CBW
289L<Module::Load> has been upgraded from version 0.20 to version 0.22.
290
291Resolve possible security problem [http://goo.gl/YzHRU] where a '::' prefixed
292module can 'jump' out of @INC
293
294=item *
295
1e915955
CBW
296L<perlfaq> has been upgraded from version 5.0150034 to version 5.0150035.
297
298=item *
299
b2ef759e
CBW
300L<Unicode::Collate> has been upgraded from version 0.78 to version 0.80.
301
302Locales updated to CLDR 2.0: ar, be, bg, ha, hr, kk, lt.
303Newly supported locales: as, fi__phonebook, gu, hi, kn, kok and ln.
3f2cb5bf 304
3432e5a1 305=back
666c7ca6 306
3432e5a1 307=head2 Removed Modules and Pragmata
d6cf2367 308
3432e5a1 309=over 4
d6cf2367
FC
310
311=item *
312
3432e5a1 313XXX
a9feb6cb 314
3432e5a1 315=back
a9feb6cb 316
3432e5a1 317=head1 Documentation
8fe353ef 318
3432e5a1
SL
319XXX Changes to files in F<pod/> go here. Consider grouping entries by
320file and be sure to link to the appropriate page, e.g. L<perlfunc>.
8fe353ef 321
3432e5a1 322=head2 New Documentation
8fe353ef 323
3432e5a1 324XXX Changes which create B<new> files in F<pod/> go here.
60527824 325
3432e5a1 326=head3 L<XXX>
7ac26854 327
3432e5a1 328XXX Description of the purpose of the new file here
7ac26854 329
3432e5a1 330=head2 Changes to Existing Documentation
7ac26854 331
3432e5a1
SL
332XXX Changes which significantly change existing files in F<pod/> go here.
333However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
334section.
518487b2 335
19e72bbf 336=head3 L<perlfunc>, L<open>
daef35db 337
3432e5a1 338=over 4
83307084
SL
339
340=item *
341
19e72bbf
FC
342As an accident of history, C<open $fh, "<:", ...> applies the default
343layers for the platform (C<:raw> on Unix, C<:crlf> on Windows), ignoring
344whatever is declared by L<open.pm|open>. This seems such a useful feature
345it has been documented in L<perlfunc|perlfunc/open> and L<open>.
b420b12a 346
3432e5a1 347=back
b420b12a 348
b53e16ae
FC
349=head3 L<perlapi>
350
351=over 4
352
353=item *
354
355The HV API has long accepted negative lengths to indicate that the key is
356in UTF8. Now this is documented.
357
358=back
359
360=head3 L<perlguts>
361
362=over 4
363
364=item *
365
366A new section, L<Autoloading with XSUBs|perlguts/Autoloading with XSUBs>,
367has been added, which explains the two APIs for accessing the name of the
368autoloaded sub.
369
370=back
371
3432e5a1 372=head1 Diagnostics
83307084 373
3432e5a1
SL
374The following additions or changes have been made to diagnostic output,
375including warnings and fatal error messages. For the complete list of
376diagnostic messages, see L<perldiag>.
83307084 377
3432e5a1
SL
378XXX New or changed warnings emitted by the core's C<C> code go here. Also
379include any changes in L<perldiag> that reconcile it to the C<C> code.
83307084 380
3432e5a1
SL
381[ Within each section, list entries as a =item entry that links to perldiag,
382 e.g.
83307084 383
3432e5a1 384 =item *
d6cf2367 385
3432e5a1
SL
386 L<Invalid version object|perldiag/"Invalid version object">
387]
d6cf2367 388
3432e5a1 389=head2 New Diagnostics
d6cf2367 390
3432e5a1 391XXX Newly added diagnostic messages go here
daef35db 392
3432e5a1 393=head3 New Errors
259925f6 394
3432e5a1 395=over 4
9840cdee
CBW
396
397=item *
398
3432e5a1 399XXX L<message|perldiag/"message">
54e02335 400
63ac71b9 401=back
310913d4 402
3432e5a1 403=head3 New Warnings
dc80b0c6 404
63ac71b9 405=over 4
83b32788
CBW
406
407=item *
408
3432e5a1 409XXX L<message|perldiag/"message">
4eb81ef2 410
63ac71b9 411=back
4eb81ef2 412
3432e5a1
SL
413=head2 Changes to Existing Diagnostics
414
415XXX Changes (i.e. rewording) of diagnostic messages go here
d6cf2367
FC
416
417=over 4
418
419=item *
420
c634fdd3
KW
421The message,
422"Code point 0x%X is not Unicode, no properties match it; all inverse
423prop erties do" has been changed to "Code point 0x%X is not Unicode, all
424\p{} matches fail; all \P{} matches succeed"
425
d6cf2367
FC
426
427=back
428
3432e5a1 429=head1 Utility Changes
d6cf2367 430
3432e5a1
SL
431XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
432here. Most of these are built within the directories F<utils> and F<x2p>.
b89e9b0d 433
3432e5a1
SL
434[ List utility changes as a =head3 entry for each utility and =item
435entries for each change
436Use L<XXX> with program names to get proper documentation linking. ]
0cb4637e 437
3432e5a1 438=head3 L<XXX>
4abaf918 439
5438d4b8 440=over 4
4abaf918
Z
441
442=item *
443
3432e5a1 444XXX
8b00e523 445
e8e35311
FC
446=back
447
63ac71b9 448=head1 Configuration and Compilation
b908e258 449
3432e5a1
SL
450XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
451go here. Any other changes to the Perl build process should be listed here.
452However, any platform-specific changes should be listed in the
453L</Platform Support> section, instead.
b908e258 454
3432e5a1 455[ List changes as a =item entry ].
bbc28bfc 456
34dc2ec0 457=over 4
42a91c97 458
6693394d 459=item *
42a91c97 460
3432e5a1 461XXX
d2006265 462
3432e5a1 463=back
9cfd094e 464
3432e5a1 465=head1 Testing
9cfd094e 466
3432e5a1
SL
467XXX Any significant changes to the testing of a freshly built perl should be
468listed here. Changes which create B<new> files in F<t/> go here as do any
469large changes to the testing harness (e.g. when parallel testing was added).
470Changes to existing files in F<t/> aren't worth summarising, although the bugs
471that they represent may be covered elsewhere.
9cfd094e 472
3432e5a1 473[ List each test improvement as a =item entry ]
7c4c6e7c 474
3432e5a1 475=over 4
95f7e41f 476
83307084 477=item *
95f7e41f 478
6692294e
NC
479F<t/porting/checkcfgvar.t> now tests that all config.sh-style files are
480complete. These are used by the various non-*nix to generate their
481F<config.h>, and an incomplete input file will generate invalid output.
df5b44bd 482
63ac71b9 483=back
310913d4 484
83307084 485=head1 Platform Support
df5b44bd 486
3432e5a1 487XXX Any changes to platform support should be listed in the sections below.
7818c927 488
3432e5a1
SL
489[ Within the sections, list each platform as a =item entry with specific
490changes as paragraphs below it. ]
83307084 491
3432e5a1 492=head2 New Platforms
7818c927 493
3432e5a1
SL
494XXX List any platforms that this version of perl compiles on, that previous
495versions did not. These will either be enabled by new files in the F<hints/>
496directories, or new subdirectories and F<README> files at the top level of the
497source tree.
3fdd840f 498
63ac71b9 499=over 4
7ffa7e75 500
3432e5a1 501=item XXX-some-platform
862b2c43 502
3432e5a1 503XXX
d6cf2367 504
63ac71b9 505=back
c973bd4f 506
3432e5a1 507=head2 Discontinued Platforms
fdd313f4 508
3432e5a1 509XXX List any platforms that this version of perl no longer compiles on.
c39e29ea 510
3432e5a1 511=over 4
c39e29ea 512
3432e5a1 513=item XXX-some-platform
c39e29ea 514
3432e5a1 515XXX
d6cf2367 516
3432e5a1 517=back
d6cf2367 518
3432e5a1 519=head2 Platform-Specific Notes
d6cf2367 520
3432e5a1
SL
521XXX List any changes for specific platforms. This could include configuration
522and compilation changes or changes in portability/compatibility. However,
523changes within modules for platforms should generally be listed in the
524L</Modules and Pragmata> section.
d6cf2367 525
3432e5a1 526=over 4
d6cf2367 527
3432e5a1 528=item XXX-some-platform
d6cf2367 529
3432e5a1 530XXX
d6cf2367 531
3432e5a1 532=back
d6cf2367 533
3432e5a1 534=head1 Internal Changes
d6cf2367 535
3432e5a1
SL
536XXX Changes which affect the interface available to C<XS> code go here.
537Other significant internal changes for future core maintainers should
538be noted as well.
d6cf2367 539
3432e5a1 540[ List each change as a =item entry ]
5d4ff231 541
3432e5a1 542=over 4
5d4ff231 543
a3342be3
FC
544=item *
545
6d110ad0
FC
546These new functions have been added as part of the work on Unicode symbols:
547
548 HvNAMELEN
549 HvNAMEUTF8
550 HvENAMELEN
551 HvENAMEUTF8
552 gv_init_pv
553 gv_init_pvn
554 gv_init_pvsv
555 gv_fetchmeth_pv
556 gv_fetchmeth_pvn
557 gv_fetchmeth_sv
558 gv_fetchmeth_pv_autoload
559 gv_fetchmeth_pvn_autoload
560 gv_fetchmeth_sv_autoload
561 gv_fetchmethod_pv_flags
562 gv_fetchmethod_pvn_flags
563 gv_fetchmethod_sv_flags
564 gv_autoload_pv
565 gv_autoload_pvn
566 gv_autoload_sv
567 newGVgen_flags
568 sv_derived_from_pv
569 sv_derived_from_pvn
570 sv_derived_from_sv
571 sv_does_pv
572 sv_does_pvn
573 sv_does_sv
574 whichsig_pv
575 whichsig_pvn
576 whichsig_sv
577
578The gv_fetchmethod_*_flags functions, like gv_fetchmethod_flags, are
579experimental and may change in a future release.
580
581=item *
582
583The following functions were added. These are I<not> part of the API:
584
585 GvNAMEUTF8
586 GvENAMELEN
587 GvENAME_HEK
588 CopSTASH_flags
589 CopSTASH_flags_set
590 PmopSTASH_flags
591 PmopSTASH_flags_set
592 sv_sethek
b53e16ae
FC
593 HEKfARG
594
595There is also a C<HEKf> macro corresponding to C<SVf>, for
596interpolating HEKs in formatted strings.
6d110ad0
FC
597
598=item *
599
600C<sv_catpvn_flags> takes a couple of new internal-only flags,
601C<SV_CATBYTES> and C<SV_CATUTF8>, which tell it whether the char array to
602be concatenated is UTF8. This allows for more efficient concatenation than
603creating temporary SVs to pass to C<sv_catsv>.
60092ce4 604
b53e16ae
FC
605=item *
606
607For XS AUTOLOAD subs, $AUTOLOAD is set once more, as it was in 5.6.0. This
608is in addition to setting C<SvPVX(cv)>, for compatibility with 5.8 to 5.14.
609See L<perlguts/Autoloading with XSUBs>.
610
611=item *
612
613Perl now checks whether the array (the linearised isa) returned by a MRO
614plugin begins with the name of the class itself, for which the array was
615created, instead of assuming that it does. This prevents the first element
616from being skipped during method lookup. It also means that
617C<mro::get_linear_isa> may return an array with one more element than the
618MRO plugin provided [perl #94306].
619
3432e5a1 620=back
60092ce4 621
3432e5a1 622=head1 Selected Bug Fixes
309aab3a 623
3432e5a1
SL
624XXX Important bug fixes in the core language are summarised here.
625Bug fixes in files in F<ext/> and F<lib/> are best summarised in
626L</Modules and Pragmata>.
309aab3a 627
3432e5a1 628[ List each fix as a =item entry ]
1f26655e 629
3432e5a1 630=over 4
1f26655e 631
433644ee
FC
632=item *
633
19e72bbf
FC
634In Perl 5.14.0, C<$tainted ~~ @array> stopped working properly. Sometimes
635it would erroneously fail (when C<$tainted> contained a string that occurs
636in the array I<after> the first element) or erroneously succeed (when
637C<undef> occurred after the first element) [perl #93590].
638
639=item *
640
641Perl 5.15.0 introduced a minor regression, in that an object referenced by
642a deleted hash element would be able to access the freed element from its
643DESTROY method, causing panic errors [perl #99660].
644
645=item *
646
647Functions in the CORE package can now be called as methods. That used to
648work only when they had been called or referenced already. So
649C<< "foo"->CORE::ucfirst >> returns Foo.
650
651=item *
652
653C<use> and C<require> are no longer affected by the I/O layers active in
654the caller's scope (enabled by L<open.pm|open>) [perl #96008].
655
656=item *
657
658Errors that occur when methods cannot be found during overloading now
659mention the correct package name, as they did in 5.8.x, instead of
660erroneously mentioning the "overload" package, as they have since 5.10.0.
661
662=item *
663
664Undefining C<%overload::> no longer causes a crash.
433644ee 665
6d110ad0
FC
666=item *
667
668C<our $::é; $é> (which is invalid) no longer produces the "Compilation
669error at lib/utf8_heavy.pl..." error message, which it started emitting in
6705.10.0 [perl #99984].
671
b377a702
KW
672=item *
673
674A minor regression, introduced Perl 5.15.0, has been fixed in which some
675regular expression Unicode property matches (C<\p{...}>) matched
676non-Unicode code points.
677
7c1b9f38
KW
678=item *
679
680In case-insensitive regular expression pattern matching, no longer on
681UTF-8 encoded strings does the scan for the start of match only look at
682the first possible position. This caused matches such as
683C<"f\x{FB00}" =~ /ff/i> to fail.
684
b53e16ae
FC
685=item *
686
687On 64-bit systems, C<read()> now understands large string offsets beyond
688the 32-bit range.
689
690=item *
691
692Errors that occur when processing subroutine attributes no longer cause the
693subroutine's op tree to leak.
694
695=item *
696
697C<sort> now works once more with custom sort routines that are XSUBs. It
698stopped working in 5.10.0.
699
700=item *
701
ca955add
FC
702C<sort> with a constant for a custom sort routine, although it produces
703unsorted results, no longer crashes. It started crashing in 5.10.0.
704
705=item *
706
b53e16ae
FC
707Warnings produced when a custom sort routine returns a non-numeric value
708now contain "in sort"; e.g., "Use of uninitialized value in sort".
709
710=item *
711
712C<< sort { $a <=> $b } >>, which is optimised internally, now produces
713"uninitialized" warnings for NaNs (not-a-number values), since C<< <=> >>
714returns C<undef> for those. This brings it in line with
715S<C<< sort { 1; $a <=> $b } >>> and other more complex cases, which are not
716optimised [perl #94390].
717
718=item *
719
720C<..> and C<...> in list context now call FETCH only once on tied
721arguments, instead of three or four times [perl #53554].
722
723=item *
724
725C<..> and C<...> in list context now mention the name of the variable in
726"uninitialized" warnings for string (as opposed to numeric) ranges.
727
63ac71b9 728=back
bbc28bfc 729
7d3f03b7
SL
730=head1 Known Problems
731
3432e5a1
SL
732XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
733tests that had to be C<TODO>ed for the release would be noted here, unless
734they were specific to a particular platform (see below).
7d3f03b7 735
3432e5a1
SL
736This is a list of some significant unfixed bugs, which are regressions
737from either 5.XXX.XXX or 5.XXX.XXX.
738
739[ List each fix as a =item entry ]
7d3f03b7 740
3432e5a1 741=over 4
7d3f03b7
SL
742
743=item *
744
19e72bbf
FC
745XXX A couple of modules were broken by stdbool.h changes, or was that in
7465.15.3?
7d3f03b7 747
3432e5a1 748=back
7d3f03b7 749
3432e5a1 750=head1 Obituary
7d3f03b7 751
3432e5a1
SL
752XXX If any significant core contributor has died, we've added a short obituary
753here.
7d3f03b7 754
44691e6f
AB
755=head1 Acknowledgements
756
3432e5a1
SL
757XXX Generate this with:
758
759 perl Porting/acknowledgements.pl v5.15.3..HEAD
29cf780c 760
44691e6f
AB
761=head1 Reporting Bugs
762
763If you find what you think is a bug, you might check the articles
34dc2ec0 764recently posted to the comp.lang.perl.misc newsgroup and the perl
44691e6f
AB
765bug database at http://rt.perl.org/perlbug/ . There may also be
766information at http://www.perl.org/ , the Perl Home Page.
767
768If you believe you have an unreported bug, please run the L<perlbug>
769program included with your release. Be sure to trim your bug down
770to a tiny but sufficient test case. Your bug report, along with the
771output of C<perl -V>, will be sent off to perlbug@perl.org to be
772analysed by the Perl porting team.
773
774If the bug you are reporting has security implications, which make it
775inappropriate to send to a publicly archived mailing list, then please send
34dc2ec0 776it to perl5-security-report@perl.org. This points to a closed subscription
b4707b2a
FC
777unarchived mailing list, which includes
778all the core committers, who will be able
44691e6f
AB
779to help assess the impact of issues, figure out a resolution, and help
780co-ordinate the release of patches to mitigate or fix the problem across all
34dc2ec0
DM
781platforms on which Perl is supported. Please only use this address for
782security issues in the Perl core, not for modules independently
44691e6f
AB
783distributed on CPAN.
784
785=head1 SEE ALSO
786
787The F<Changes> file for an explanation of how to view exhaustive details
788on what changed.
789
790The F<INSTALL> file for how to build Perl.
791
792The F<README> file for general stuff.
793
794The F<Artistic> and F<Copying> files for copyright information.
795
796=cut