missing space while munging CCFLAGS for PERL_CAPI
[p5sagit/p5-mst-13.2.git] / pod / perldelta.pod
CommitLineData
ba8251e8 1=head1 NAME
2
e02fdbd2 3perldelta - what's new for perl5.006 (as of 5.005_54)
ba8251e8 4
5=head1 DESCRIPTION
6
7This document describes differences between the 5.005 release and this one.
8
9=head1 Incompatible Changes
10
e02fdbd2 11=head2 Perl Source Incompatibilities
12
13None known at this time.
14
15=head2 C Source Incompatibilities
16
17=over 4
18
19=item C<PERL_POLLUTE>
20
21Release 5.005 grandfathered old global symbol names by providing preprocessor
22macros for extension source compatibility. As of release 5.006, these
23preprocessor definitions are not available by default. You need to explicitly
24compile perl with C<-DPERL_POLLUTE> in order to get these definitions.
25
26=item C<PL_na> and C<dTHR> Issues
27
28The C<PL_na> global is now thread local, so a C<dTHR> declaration is needed
29in the scope in which it appears. XSUBs should handle this automatically,
30but if you have used C<PL_na> in support functions, you either need to
31change the C<PL_na> to a local variable (which is recommended), or put in
32a C<dTHR>.
33
34=back
35
36=head2 Binary Incompatibilities
37
38This release is not binary compatible with the 5.005 release and its
39maintenance versions.
40
ba8251e8 41=head1 Core Changes
42
4f19785b 43Binary numbers are now supported as literals, in s?printf formats, and
44C<oct()>:
45
46 $answer = 0b101010;
47 printf "The answer is: %b\n", oct("0b101010");
48
6c67e1bb 49The length argument of C<syswrite()> is now optional.
50
51Better 64-bit support -- but full support still a distant goal. One
52must Configure with -Duse64bits to get Configure to probe for the
53extent of 64-bit support. Depending on the platform (hints file) more
54or less 64-awareness becomes available. As of 5.005_54 at least
55somewhat 64-bit aware platforms are HP-UX 11 or better, Solaris 2.6 or
56better, IRIX 6.2 or better. Naturally 64-bit platforms like Digital
57UNIX and UNICOS also have 64-bit support.
e02fdbd2 58
ba8251e8 59=head1 Supported Platforms
60
6c67e1bb 61VM/ESA is now supported.
62
63Siemens BS200 is now supported.
64
65The Mach CThreads (NeXTstep) are now supported by the Thread extension.
66
67=head1 New tests
68
69=over 4
70
71=item op/io_const
72
73IO constants (SEEK_*, _IO*).
74
75=item op/io_dir
76
77Directory-related IO methods (new, read, close, rewind, tied delete).
78
79=item op/io_multihomed
80
81INET sockets with multi-homed hosts.
82
83=item op/io_poll
84
85IO poll().
86
87=item op/io_unix
88
89UNIX sockets.
90
91=item op/filetest
92
93File test operators.
94
95=item op/lex_assign
96
97Guard against lexicals leaking (internal stuff).
98
99=back
e02fdbd2 100
ba8251e8 101=head1 Modules and Pragmata
102
3e8c4fa0 103=head2 Modules
104
105Dumpvalue module provides screen dumps of Perl data.
106
107=head2 Pragmata
108
6c67e1bb 109Lexical warnings pragma, "use warning;", to control optional warnings.
110
111Filetest pragma, to control the behaviour of filetests (C<-r> C<-w> ...).
112Currently only one subpragma implemented, "use filetest 'access';",
113that enables the use of access(2) or equivalent to check the
114permissions instead of using stat(2) as usual. This matters
115in filesystems where there are ACLs (access control lists), the
116stat(2) might lie, while access(2) knows better.
117
e02fdbd2 118Todo.
119
ba8251e8 120=head1 Utility Changes
121
e02fdbd2 122Todo.
123
ba8251e8 124=head1 Documentation Changes
125
f8284313 126perlopentut, tutorial on opening things in Perl, was added.
127
128perlreftut, tutorial on references, was added.
e02fdbd2 129
ba8251e8 130=head1 New Diagnostics
131
6b121555 132=item /%s/: Unrecognized escape \\%c passed through
133
134(W) You used a backslash-character combination which is not recognized
135by Perl. This combination appears in an interpolated variable or a
136C<'>-delimited regular expression.
137
138=item Unrecognized escape \\%c passed through
139
140(W) You used a backslash-character combination which is not recognized
141by Perl.
e02fdbd2 142
06eaf0bc 143=item Missing command in piped open
144
145(W) You used the C<open(FH, "| command")> or C<open(FH, "command |")>
146construction, but the command was missing or blank.
147
ba8251e8 148=head1 Obsolete Diagnostics
149
e02fdbd2 150Todo.
151
ba8251e8 152=head1 BUGS
153
154If you find what you think is a bug, you might check the headers of
155recently posted articles in the comp.lang.perl.misc newsgroup.
156There may also be information at http://www.perl.com/perl/, the Perl
157Home Page.
158
159If you believe you have an unreported bug, please run the B<perlbug>
160program included with your release. Make sure you trim your bug down
161to a tiny but sufficient test case. Your bug report, along with the
162output of C<perl -V>, will be sent off to <F<perlbug@perl.com>> to be
163analysed by the Perl porting team.
164
165=head1 SEE ALSO
166
167The F<Changes> file for exhaustive details on what changed.
168
169The F<INSTALL> file for how to build Perl.
170
171The F<README> file for general stuff.
172
173The F<Artistic> and F<Copying> files for copyright information.
174
175=head1 HISTORY
176
177Written by Gurusamy Sarathy <F<gsar@umich.edu>>, with many contributions
178from The Perl Porters.
179
180Send omissions or corrections to <F<perlbug@perl.com>>.
181
182=cut