1 | -------------
|
---|
2 | Version 5.001
|
---|
3 | -------------
|
---|
4 |
|
---|
5 | Nearly all the changes for 5.001 were bug fixes of one variety or another,
|
---|
6 | so here's the bug list, along with the "resolution" for each of them. If
|
---|
7 | you wish to correspond about any of them, please include the bug number.
|
---|
8 |
|
---|
9 | There were a few that can be construed as enhancements:
|
---|
10 | NETaa13059: now warns of use of \1 where $1 is necessary.
|
---|
11 | NETaa13512: added $SIG{__WARN__} and $SIG{__DIE__} hooks
|
---|
12 | NETaa13520: added closures
|
---|
13 | NETaa13530: scalar keys now resets hash iterator
|
---|
14 | NETaa13641: added Tim's fancy new import whizbangers
|
---|
15 | NETaa13710: cryptswitch needed to be more "useable"
|
---|
16 | NETaa13716: Carp now allows multiple packages to be skipped out of
|
---|
17 | NETaa13716: now counts imported routines as "defined" for redef warnings
|
---|
18 | (and, of course, much of the stuff from the perl5-porters)
|
---|
19 |
|
---|
20 | NETaa12974: README incorrectly said it was a pre-release.
|
---|
21 | Files patched: README
|
---|
22 |
|
---|
23 | NETaa13033: goto pushed a bogus scope on the context stack.
|
---|
24 | From: Steve Vinoski
|
---|
25 | Files patched: pp_ctl.c
|
---|
26 | The goto operator pushed an extra bogus scope onto the context stack. (This
|
---|
27 | often didn't matter, since many things pop extra unrecognized scopes off.)
|
---|
28 |
|
---|
29 | NETaa13034: tried to get valid pointer from undef.
|
---|
30 | From: Castor Fu
|
---|
31 | Also: Achille Hui, the Day Dreamer
|
---|
32 | Also: Eric Arnold
|
---|
33 | Files patched: pp_sys.c
|
---|
34 | Now treats undef specially, and calls SvPV_force on any non-numeric scalar
|
---|
35 | value to get a real pointer to somewhere.
|
---|
36 |
|
---|
37 | NETaa13035: included package info with filehandles.
|
---|
38 | From: Jack Shirazi - BIU
|
---|
39 | Files patched: pp_hot.c pp_sys.c
|
---|
40 | Now passes a glob to filehandle methods to keep the package info intact.
|
---|
41 |
|
---|
42 | NETaa13048: didn't give strict vars message on every occurrence.
|
---|
43 | From: Doug Campbell
|
---|
44 | Files patched: gv.c
|
---|
45 | It now complains about every occurrence. (The bug resulted from an
|
---|
46 | ill-conceived attempt to suppress a duplicate error message in a
|
---|
47 | suboptimal fashion.)
|
---|
48 |
|
---|
49 | NETaa13052: test for numeric sort sub return value fooled by taint magic.
|
---|
50 | From: Peter Jaspers-Fayer
|
---|
51 | Files patched: pp_ctl.c sv.h
|
---|
52 | The test to see if the sort sub return value was numeric looked at the
|
---|
53 | public flags rather than the private flags of the SV, so taint magic
|
---|
54 | hid that info from the sort.
|
---|
55 |
|
---|
56 | NETaa13053: forced a2p to use byacc
|
---|
57 | From: Andy Dougherty
|
---|
58 | Files patched: MANIFEST x2p/Makefile.SH x2p/a2p.c
|
---|
59 | a2p.c is now pre-byacced and shipped with the kit.
|
---|
60 |
|
---|
61 | NETaa13055: misnamed constant in previous patch.
|
---|
62 | From: Conrad Augustin
|
---|
63 | Files patched: op.c op.h toke.c
|
---|
64 | The tokener translates $[ to a constant, but with a special marking in case
|
---|
65 | the constant gets assigned to or localized. Unfortunately, the marking
|
---|
66 | was done with a combination of OPf_SPECIAL and OPf_MOD that was easily
|
---|
67 | spoofed. There is now a private OPpCONST_ARYLEN flag for this purpose.
|
---|
68 |
|
---|
69 | NETaa13055: use of OPf_SPECIAL for $[ lvaluehood was too fragile.
|
---|
70 | Files patched: op.c op.h toke.c
|
---|
71 | (same)
|
---|
72 |
|
---|
73 | NETaa13056: convert needs to throw away any number info on its list.
|
---|
74 | From: Jack Shirazi - BIU
|
---|
75 | Files patched: op.c
|
---|
76 | The listiness of the argument list leaked out to the subroutine call because
|
---|
77 | of how prepend_elem and append_elem reuse an existing list. The convert()
|
---|
78 | routine just needs to discard any listiness it finds on its argument.
|
---|
79 |
|
---|
80 | NETaa13058: AUTOLOAD shouldn't assume size of @_ is meaningful.
|
---|
81 | From: Florent Guillaume
|
---|
82 | Files patched: ext/DB_File/DB_File.pm ext/Fcntl/Fcntl.pm ext/GDBM_File/GDBM_File.pm ext/Socket/Socket.pm h2xs.SH
|
---|
83 | I just deleted the optimization, which is silly anyway since the eventual
|
---|
84 | subroutine definition is cached.
|
---|
85 |
|
---|
86 | NETaa13059: now warns of use of \1 where $1 is necessary.
|
---|
87 | From: Gustaf Neumann
|
---|
88 | Files patched: toke.c
|
---|
89 | Now says
|
---|
90 |
|
---|
91 | Can't use \1 to mean $1 in expression at foo line 2
|
---|
92 |
|
---|
93 | along with an explanation in perldiag.
|
---|
94 |
|
---|
95 | NETaa13060: no longer warns on attempt to read <> operator's transition state.
|
---|
96 | From: Chaim Frenkel
|
---|
97 | Files patched: pp_hot.c
|
---|
98 | No longer warns on <> operator's transitional state.
|
---|
99 |
|
---|
100 | NETaa13140: warning said $ when @ would be more appropriate.
|
---|
101 | From: David J. MacKenzie
|
---|
102 | Files patched: op.c pod/perldiag.pod
|
---|
103 | Now says
|
---|
104 |
|
---|
105 | (Did you mean $ or @ instead of %?)
|
---|
106 |
|
---|
107 | and added more explanation to perldiag.
|
---|
108 |
|
---|
109 | NETaa13149: was reading freed memory to make incorrect error message.
|
---|
110 | Files patched: pp_ctl.c
|
---|
111 | It was reading freed memory to make an error message that would be
|
---|
112 | incorrect in any event because it had the inner filename rather than
|
---|
113 | the outer.
|
---|
114 |
|
---|
115 | NETaa13149: confess was sometimes less informative than croak
|
---|
116 | From: Jack Shirazi
|
---|
117 | Files patched: lib/Carp.pm
|
---|
118 | (same)
|
---|
119 |
|
---|
120 | NETaa13150: stderr needs to be STDERR in package
|
---|
121 | From: Jack Shirazi
|
---|
122 | Files patched: lib/File/CheckTree.pm
|
---|
123 | Also fixed pl2pm to translate the filehandles to uppercase.
|
---|
124 |
|
---|
125 | NETaa13150: uppercases stdin, stdout and stderr
|
---|
126 | Files patched: pl2pm
|
---|
127 | (same)
|
---|
128 |
|
---|
129 | NETaa13154: array assignment didn't notice package magic.
|
---|
130 | From: Brian Reichert
|
---|
131 | Files patched: pp_hot.c
|
---|
132 | The list assignment operator looked for only set magic, but set magic is
|
---|
133 | only on the elements of a magical hash, not on the hash as a whole. I made
|
---|
134 | the operator look for any magic at all on the target array or hash.
|
---|
135 |
|
---|
136 | NETaa13155: &DB::DB left trash on the stack.
|
---|
137 | From: Thomas Koenig
|
---|
138 | Files patched: lib/perl5db.pl pp_ctl.c
|
---|
139 | The call by pp_dbstate() to &DB::DB left trash on the stack. It now
|
---|
140 | calls DB in list context, and DB returns ().
|
---|
141 |
|
---|
142 | NETaa13156: lexical variables didn't show up in debugger evals.
|
---|
143 | From: Joergen Haegg
|
---|
144 | Files patched: op.c
|
---|
145 | The code that searched back up the context stack for the lexical scope
|
---|
146 | outside the eval only partially took into consideration that there
|
---|
147 | might be extra debugger subroutine frames that shouldn't be used, and
|
---|
148 | ended up comparing the wrong statement sequence number to the range of
|
---|
149 | valid sequence numbers for the scope of the lexical variable. (There
|
---|
150 | was also a bug fixed in passing that caused the scope of lexical to go
|
---|
151 | clear to the end of the subroutine even if it was within an inner block.)
|
---|
152 |
|
---|
153 | NETaa13157: any request for autoloaded DESTROY should create a null one.
|
---|
154 | From: Tom Christiansen
|
---|
155 | Files patched: lib/AutoLoader.pm
|
---|
156 | If DESTROY.al is not located, it now creates sub DESTROY {} automatically.
|
---|
157 |
|
---|
158 | NETaa13158: now preserves $@ around destructors while leaving eval.
|
---|
159 | From: Tim Bunce
|
---|
160 | Files patched: pp_ctl.c
|
---|
161 | Applied supplied patch, except the whole second hunk can be replaced with
|
---|
162 |
|
---|
163 | sv_insert(errsv, 0, 0, message, strlen(message));
|
---|
164 |
|
---|
165 | NETaa13160: clarified behavior of split without arguments
|
---|
166 | From: Harry Edmon
|
---|
167 | Files patched: pod/perlfunc.pod
|
---|
168 | Clarified the behavior of split without arguments.
|
---|
169 |
|
---|
170 | NETaa13162: eval {} lost list/scalar context
|
---|
171 | From: Dov Grobgeld
|
---|
172 | Files patched: op.c
|
---|
173 | LEAVETRY didn't propagate number to ENTERTRY.
|
---|
174 |
|
---|
175 | NETaa13163: clarified documentation of foreach using my variable
|
---|
176 | From: Tom Christiansen
|
---|
177 | Files patched: pod/perlsyn.pod
|
---|
178 | Explained that foreach using a lexical is still localized.
|
---|
179 |
|
---|
180 | NETaa13164: the dot detector for the end of formats was over-rambunctious.
|
---|
181 | From: John Stoffel
|
---|
182 | Files patched: toke.c
|
---|
183 | The dot detector for the end of formats was over-rambunctious. It would
|
---|
184 | pick up any dot that didn't have a space in front of it.
|
---|
185 |
|
---|
186 | NETaa13165: do {} while 1 never linked outer block into next chain.
|
---|
187 | From: Gisle Aas
|
---|
188 | Files patched: op.c
|
---|
189 | When the conditional of do {} while 1; was optimized away, it confused the
|
---|
190 | postfix order construction so that the block that ordinarily sits around the
|
---|
191 | whole loop was never executed. So when the loop tried to unstack between
|
---|
192 | iterations, it got the wrong context, and blew away the lexical variables
|
---|
193 | of the outer scope. Fixed it by introducing a NULL opcode that will be
|
---|
194 | optimized away later.
|
---|
195 |
|
---|
196 | NETaa13167: coercion was looking at public bits rather than private bits.
|
---|
197 | From: Randal L. Schwartz
|
---|
198 | Also: Thomas Riechmann
|
---|
199 | Also: Shane Castle
|
---|
200 | Files patched: sv.c
|
---|
201 | There were some bad ifdefs around the various varieties of set*id(). In
|
---|
202 | addition, tainting was interacting badly with assignment to $> because
|
---|
203 | sv_2iv() was examining SvPOK rather than SvPOKp, and so couldn't coerce
|
---|
204 | a string uid to an integer one.
|
---|
205 |
|
---|
206 | NETaa13167: had some ifdefs wrong on set*id.
|
---|
207 | Files patched: mg.c pp_hot.c
|
---|
208 | (same)
|
---|
209 |
|
---|
210 | NETaa13168: relaxed test for comparison of new and old fds
|
---|
211 | From: Casper H.S. Dik
|
---|
212 | Files patched: t/lib/posix.t
|
---|
213 | I relaxed the comparison to just check that the new fd is greater.
|
---|
214 |
|
---|
215 | NETaa13169: autoincrement can corrupt scalar value state.
|
---|
216 | From: Gisle Aas
|
---|
217 | Also: Tom Christiansen
|
---|
218 | Files patched: sv.c
|
---|
219 | It assumed a PV didn't need to be upgraded to become an NV.
|
---|
220 |
|
---|
221 | NETaa13169: previous patch could leak a string pointer.
|
---|
222 | Files patched: sv.c
|
---|
223 | (same)
|
---|
224 |
|
---|
225 | NETaa13170: symbols missing from global.sym
|
---|
226 | From: Tim Bunce
|
---|
227 | Files patched: global.sym
|
---|
228 | Applied suggested patch.
|
---|
229 |
|
---|
230 | NETaa13171: \\ in <<'END' shouldn't reduce to \.
|
---|
231 | From: Randal L. Schwartz
|
---|
232 | Files patched: toke.c
|
---|
233 | <<'END' needed to bypass ordinary single-quote processing.
|
---|
234 |
|
---|
235 | NETaa13172: 'use integer' turned off magical autoincrement.
|
---|
236 | From: Erich Rickheit KSC
|
---|
237 | Files patched: pp.c pp_hot.c
|
---|
238 | The integer versions of the increment and decrement operators were trying too
|
---|
239 | hard to be efficient.
|
---|
240 |
|
---|
241 | NETaa13172: deleted duplicate increment and decrement code
|
---|
242 | Files patched: opcode.h opcode.pl pp.c
|
---|
243 | (same)
|
---|
244 |
|
---|
245 | NETaa13173: install should make shared libraries executable.
|
---|
246 | From: Brian Grossman
|
---|
247 | Also: Dave Nadler
|
---|
248 | Also: Eero Pajarre
|
---|
249 | Files patched: installperl
|
---|
250 | Now gives permission 555 to any file ending with extension specified by $dlext.
|
---|
251 |
|
---|
252 | NETaa13176: ck_rvconst didn't free the const it used up.
|
---|
253 | From: Nick Duffek
|
---|
254 | Files patched: op.c
|
---|
255 | I checked in many random memory leaks under this bug number, since it
|
---|
256 | was an eval that brought many of them out.
|
---|
257 |
|
---|
258 | NETaa13176: didn't delete XRV for temp ref of destructor.
|
---|
259 | Files patched: sv.c
|
---|
260 | (same)
|
---|
261 |
|
---|
262 | NETaa13176: didn't delete op_pmshort in matching operators.
|
---|
263 | Files patched: op.c
|
---|
264 | (same)
|
---|
265 |
|
---|
266 | NETaa13176: eval leaked the name of the eval.
|
---|
267 | Files patched: scope.c
|
---|
268 | (same)
|
---|
269 |
|
---|
270 | NETaa13176: gp_free didn't free the format.
|
---|
271 | Files patched: gv.c
|
---|
272 | (same)
|
---|
273 |
|
---|
274 | NETaa13176: minor leaks in loop exits and constant subscript optimization.
|
---|
275 | Files patched: op.c
|
---|
276 | (same)
|
---|
277 |
|
---|
278 | NETaa13176: plugged some duplicate struct allocation memory leaks.
|
---|
279 | Files patched: perl.c
|
---|
280 | (same)
|
---|
281 |
|
---|
282 | NETaa13176: sv_clear of an FM didn't clear anything.
|
---|
283 | Files patched: sv.c
|
---|
284 | (same)
|
---|
285 |
|
---|
286 | NETaa13176: tr/// didn't mortalize its return value.
|
---|
287 | Files patched: pp.c
|
---|
288 | (same)
|
---|
289 |
|
---|
290 | NETaa13177: SCOPE optimization hid line number info
|
---|
291 | From: David J. MacKenzie
|
---|
292 | Also: Hallvard B Furuseth
|
---|
293 | Files patched: op.c
|
---|
294 | Every pass on the syntax tree has to keep track of the current statement.
|
---|
295 | Unfortunately, the single-statement block was optimized into a single
|
---|
296 | statement between the time the variable was parsed and the time the
|
---|
297 | void code scan was done, so that pass didn't see the OP_NEXTSTATE
|
---|
298 | operator, because it has been optimized to an OP_NULL.
|
---|
299 |
|
---|
300 | Fortunately, null operands remember what they were, so it was pretty easy
|
---|
301 | to make it set the correct line number anyway.
|
---|
302 |
|
---|
303 | NETaa13178: some linux doesn't handle nm well
|
---|
304 | From: Alan Modra
|
---|
305 | Files patched: hints/linux.sh
|
---|
306 | Applied supplied patch.
|
---|
307 |
|
---|
308 | NETaa13180: localized slice now pre-extends array
|
---|
309 | From: Larry Schuler
|
---|
310 | Files patched: pp.c
|
---|
311 | A localized slice now pre-extends its array to avoid reallocation during
|
---|
312 | the scope of the local.
|
---|
313 |
|
---|
314 | NETaa13181: m//g didn't keep track of whether previous match matched null.
|
---|
315 | From: "philippe.verdret"
|
---|
316 | Files patched: mg.h pp_hot.c
|
---|
317 | A pattern isn't allowed to match a null string in the same place twice in
|
---|
318 | a row. m//g wasn't keeping track of whether the previous match matched
|
---|
319 | the null string.
|
---|
320 |
|
---|
321 | NETaa13182: now includes whitespace as a regexp metacharacter.
|
---|
322 | From: Larry Wall
|
---|
323 | Files patched: toke.c
|
---|
324 | scan_const() now counts " \t\n\r\f\v" as metacharacters when scanning a pattern.
|
---|
325 |
|
---|
326 | NETaa13183: sv_setsv shouldn't try to clone an object.
|
---|
327 | From: Peter Gordon
|
---|
328 | Files patched: sv.c
|
---|
329 | The sv_mortalcopy() done by the return in STORE called sv_setsv(),
|
---|
330 | which cloned the object. sv_setsv() shouldn't be in the business of
|
---|
331 | cloning objects.
|
---|
332 |
|
---|
333 | NETaa13184: bogus warning on quoted signal handler name removed.
|
---|
334 | From: Dan Carson
|
---|
335 | Files patched: toke.c
|
---|
336 | Now doesn't complain unless the first non-whitespace character after the =
|
---|
337 | is an alphabetic character.
|
---|
338 |
|
---|
339 | NETaa13186: now croaks on chop($')
|
---|
340 | From: Casper H.S. Dik
|
---|
341 | Files patched: doop.c
|
---|
342 | Now croaks on chop($') and such.
|
---|
343 |
|
---|
344 | NETaa13187: "${foo::bar}" now counts as mere delimitation, not as a bareword.
|
---|
345 | From: Jay Rogers
|
---|
346 | Files patched: toke.c
|
---|
347 | "${foo::bar}" now counts as mere delimitation, not as a bareword inside a
|
---|
348 | reference block.
|
---|
349 |
|
---|
350 | NETaa13188: for backward compatibility, looks for "perl -" before "perl".
|
---|
351 | From: Russell Mosemann
|
---|
352 | Files patched: toke.c
|
---|
353 | Now allows non-whitespace characters on the #! line between the "perl"
|
---|
354 | and the "-".
|
---|
355 |
|
---|
356 | NETaa13188: now allows non-whitespace after #!...perl before switches.
|
---|
357 | Files patched: toke.c
|
---|
358 | (same)
|
---|
359 |
|
---|
360 | NETaa13189: derivative files need to be removed before recreation
|
---|
361 | From: Simon Leinen
|
---|
362 | Also: Dick Middleton
|
---|
363 | Also: David J. MacKenzie
|
---|
364 | Files patched: embed_h.sh x2p/Makefile.SH
|
---|
365 | Fixed various little nits as suggested in several messages.
|
---|
366 |
|
---|
367 | NETaa13190: certain assignments can spoof pod directive recognizer
|
---|
368 | From: Ilya Zakharevich
|
---|
369 | Files patched: toke.c
|
---|
370 | The lexer now only recognizes pod directives where a statement is expected.
|
---|
371 |
|
---|
372 | NETaa13194: now returns undef when there is no curpm.
|
---|
373 | From: lusol@Dillon.CC.Lehigh.EDU
|
---|
374 | Files patched: mg.c
|
---|
375 | Since there was no regexp prior to the "use", it was returning whatever the
|
---|
376 | last successful match was within the "use", because there was no current
|
---|
377 | regexp, so it treated it as a normal variable. It now returns undef.
|
---|
378 |
|
---|
379 | NETaa13195: semop had one S too many.
|
---|
380 | From: Joachim Huober
|
---|
381 | Files patched: opcode.pl
|
---|
382 | The entry in opcode.pl had one too many S's.
|
---|
383 |
|
---|
384 | NETaa13196: always assumes it's a Perl script if -c is used.
|
---|
385 | From: Dan Carson
|
---|
386 | Files patched: toke.c
|
---|
387 | It now will assume it's a Perl script if the -c switch is used.
|
---|
388 |
|
---|
389 | NETaa13197: changed implicit -> message to be more understandable.
|
---|
390 | From: Bruce Barnett
|
---|
391 | Files patched: op.c pod/perldiag.pod
|
---|
392 | I changed the error message to be more understandable. It now says
|
---|
393 |
|
---|
394 | Can't use subscript on sort...
|
---|
395 |
|
---|
396 |
|
---|
397 | NETaa13201: added OPpCONST_ENTERED flag to properly enter filehandle symbols.
|
---|
398 | From: E. Jay Berkenbilt
|
---|
399 | Also: Tom Christiansen
|
---|
400 | Files patched: op.c op.h toke.c
|
---|
401 | The grammatical reduction of a print statement didn't properly count
|
---|
402 | the filehandle as a symbol reference because it couldn't distinguish
|
---|
403 | between a symbol entered earlier in the program and a symbol entered
|
---|
404 | for the first time down in the lexer.
|
---|
405 |
|
---|
406 | NETaa13203: README shouldn't mention uperl.o any more.
|
---|
407 | From: Anno Siegel
|
---|
408 | Files patched: README
|
---|
409 |
|
---|
410 | NETaa13204: .= shouldn't warn on uninitialized target.
|
---|
411 | From: Pete Peterson
|
---|
412 | Files patched: pp_hot.c
|
---|
413 | No longer warns on uninitialized target of .= operator.
|
---|
414 |
|
---|
415 | NETaa13206: handy macros in XSUB.h
|
---|
416 | From: Tim Bunce
|
---|
417 | Files patched: XSUB.h
|
---|
418 | Added suggested macros.
|
---|
419 |
|
---|
420 | NETaa13228: commonality checker didn't treat lexicals as variables.
|
---|
421 | From: mcook@cognex.com
|
---|
422 | Files patched: op.c opcode.pl
|
---|
423 | The list assignment operator tries to avoid unnecessary copies by doing the
|
---|
424 | assignment directly if there are no common variables on either side of the
|
---|
425 | equals. Unfortunately, the code that decided that only recognized references
|
---|
426 | to dynamic variables, not lexical variables.
|
---|
427 |
|
---|
428 | NETaa13229: fixed sign stuff for complement, integer coercion.
|
---|
429 | From: Larry Wall
|
---|
430 | Files patched: perl.h pp.c sv.c
|
---|
431 | Fixed ~0 and integer coercions.
|
---|
432 |
|
---|
433 | NETaa13230: no longer tries to reuse scratchpad temps if tainting in effect.
|
---|
434 | From: Luca Fini
|
---|
435 | Files patched: op.c
|
---|
436 | I haven't reproduced it, but I believe the problem is the reuse of scratchpad
|
---|
437 | temporaries between statements. I've made it not try to reuse them if
|
---|
438 | tainting is in effect.
|
---|
439 |
|
---|
440 | NETaa13231: *foo = *bar now prevents typo warnings on "foo"
|
---|
441 | From: Robin Barker
|
---|
442 | Files patched: sv.c
|
---|
443 | Aliasing of the form *foo = *bar is now protected from the typo warnings.
|
---|
444 | Previously only the *foo = \$bar form was.
|
---|
445 |
|
---|
446 | NETaa13235: require BAREWORD now introduces package name immediately.
|
---|
447 | From: Larry Wall
|
---|
448 | Files patched: toke.c
|
---|
449 | require BAREWORD now introduces package name immediately. This lets the
|
---|
450 | method intuit code work right even though the require hasn't actually run
|
---|
451 | yet.
|
---|
452 |
|
---|
453 | NETaa13289: didn't calculate correctly using arybase.
|
---|
454 | From: Jared Rhine
|
---|
455 | Files patched: pp.c pp_hot.c
|
---|
456 | The runtime code didn't use curcop->cop_arybase correctly.
|
---|
457 |
|
---|
458 | NETaa13301: store now throws exception on error
|
---|
459 | From: Barry Friedman
|
---|
460 | Files patched: ext/GDBM_File/GDBM_File.xs ext/NDBM_File/NDBM_File.xs ext/ODBM_File/ODBM_File.xs ext/SDBM_File/SDBM_File.xs
|
---|
461 | Changed warn to croak in ext/*DBM_File/*.xs.
|
---|
462 |
|
---|
463 | NETaa13302: ctime now takes Time_t rather than Time_t*.
|
---|
464 | From: Rodger Anderson
|
---|
465 | Files patched: ext/POSIX/POSIX.xs
|
---|
466 | Now declares a Time_t and takes the address of that in CODE.
|
---|
467 |
|
---|
468 | NETaa13302: shorter way to do this patch
|
---|
469 | Files patched: ext/POSIX/POSIX.xs
|
---|
470 | (same)
|
---|
471 |
|
---|
472 | NETaa13304: could feed too large $@ back into croak, whereupon it croaked.
|
---|
473 | From: Larry Wall
|
---|
474 | Files patched: perl.c
|
---|
475 | callist() could feed $@ back into croak with more than a bare %s. (croak()
|
---|
476 | handles long strings with a bare %s okay.)
|
---|
477 |
|
---|
478 | NETaa13305: compiler misoptimized RHS to outside of s/a/print/e
|
---|
479 | From: Brian S. Cashman <bsc@umich.edu>
|
---|
480 | Files patched: op.c
|
---|
481 | The syntax tree was being misconstructed because the compiler felt that
|
---|
482 | the RHS was invariant, so it did it outside the s///.
|
---|
483 |
|
---|
484 | NETaa13314: assigning mortal to lexical leaks
|
---|
485 | From: Larry Wall
|
---|
486 | Files patched: sv.c
|
---|
487 | In stealing strings, sv_setsv was checking SvPOK to see if it should free
|
---|
488 | the destination string. It should have been checking SvPVX.
|
---|
489 |
|
---|
490 | NETaa13316: wait4pid now recalled when errno == EINTR
|
---|
491 | From: Robert J. Pankratz
|
---|
492 | Files patched: pp_sys.c util.c
|
---|
493 | system() and the close() of a piped open now recall wait4pid if it returned
|
---|
494 | prematurely with errno == EINTR.
|
---|
495 |
|
---|
496 | NETaa13329: needed to localize taint magic
|
---|
497 | From: Brian Katzung
|
---|
498 | Files patched: sv.c doio.c mg.c pp_hot.c pp_sys.c scope.c taint.c
|
---|
499 | Taint magic is now localized better, though I had to resort to a kludge
|
---|
500 | to allow a value to be both tainted and untainted simultaneously during
|
---|
501 | the assignment of
|
---|
502 |
|
---|
503 | local $foo = $_[0];
|
---|
504 |
|
---|
505 | when $_[0] is a reference to the variable $foo already.
|
---|
506 |
|
---|
507 | NETaa13341: clarified interaction of AnyDBM_File::ISA and "use"
|
---|
508 | From: Ian Phillipps
|
---|
509 | Files patched: pod/modpods/AnyDBMFile.pod
|
---|
510 | The doc was misleading.
|
---|
511 |
|
---|
512 | NETaa13342: grep and map with block would enter block but never leave it.
|
---|
513 | From: Ian Phillipps
|
---|
514 | Files patched: op.c
|
---|
515 | The compiler use some sort-checking code to handle the arguments of
|
---|
516 | grep and map. Unfortunately, this wiped out the block exit opcode while
|
---|
517 | leaving the block entry opcode. This doesn't matter to sort, but did
|
---|
518 | matter to grep and map. It now leave the block entry intact.
|
---|
519 |
|
---|
520 | The reason it worked without the my is because the block entry and exit
|
---|
521 | were optimized away to an OP_SCOPE, which it doesn't matter if it's there
|
---|
522 | or not.
|
---|
523 |
|
---|
524 | NETaa13343: goto needed to longjmp when in a signal handler.
|
---|
525 | From: Robert Partington
|
---|
526 | Files patched: pp_ctl.c
|
---|
527 | goto needed to longjmp() when in a signal handler to get back into the
|
---|
528 | right run() context.
|
---|
529 |
|
---|
530 |
|
---|
531 | NETaa13344: strict vars shouldn't apply to globs or filehandles.
|
---|
532 | From: Andrew Wilcox
|
---|
533 | Files patched: gv.c
|
---|
534 | Filehandles and globs will be excepted from "strict vars", so that you can
|
---|
535 | do the standard Perl 4 trick of
|
---|
536 |
|
---|
537 | use strict;
|
---|
538 | sub foo {
|
---|
539 | local(*IN);
|
---|
540 | open(IN,"file");
|
---|
541 | }
|
---|
542 |
|
---|
543 |
|
---|
544 | NETaa13345: assert.pl didn't use package DB
|
---|
545 | From: Hans Mulder
|
---|
546 | Files patched: lib/assert.pl
|
---|
547 | Now it does.
|
---|
548 |
|
---|
549 | NETaa13348: av_undef didn't free scalar representing $#foo.
|
---|
550 | From: David Filo
|
---|
551 | Files patched: av.c
|
---|
552 | av_undef didn't free scalar representing $#foo.
|
---|
553 |
|
---|
554 | NETaa13349: sort sub accumulated save stack entries
|
---|
555 | From: David Filo
|
---|
556 | Files patched: pp_ctl.c
|
---|
557 | COMMON only gets set if assigning to @_, which is reasonable. Most of the
|
---|
558 | problem was a memory leak.
|
---|
559 |
|
---|
560 | NETaa13351: didn't treat indirect filehandles as references.
|
---|
561 | From: Andy Dougherty
|
---|
562 | Files patched: op.c
|
---|
563 | Now produces
|
---|
564 |
|
---|
565 | Can't use an undefined value as a symbol reference at ./foo line 3.
|
---|
566 |
|
---|
567 |
|
---|
568 | NETaa13352: OP_SCOPE allocated as UNOP rather than LISTOP.
|
---|
569 | From: Andy Dougherty
|
---|
570 | Files patched: op.c
|
---|
571 |
|
---|
572 | NETaa13353: scope() didn't release filegv on OP_SCOPE optimization.
|
---|
573 | From: Larry Wall
|
---|
574 | Files patched: op.c
|
---|
575 | When scope() nulled out a NEXTSTATE, it didn't release its filegv reference.
|
---|
576 |
|
---|
577 | NETaa13355: hv_delete now avoids useless mortalcopy
|
---|
578 | From: Larry Wall
|
---|
579 | Files patched: hv.c op.c pp.c pp_ctl.c proto.h scope.c util.c
|
---|
580 | hv_delete now avoids useless mortalcopy.
|
---|
581 |
|
---|
582 |
|
---|
583 | NETaa13359: comma operator section missing its heading
|
---|
584 | From: Larry Wall
|
---|
585 | Files patched: pod/perlop.pod
|
---|
586 |
|
---|
587 | NETaa13359: random typo
|
---|
588 | Files patched: pod/perldiag.pod
|
---|
589 |
|
---|
590 | NETaa13360: code to handle partial vec values was bogus.
|
---|
591 | From: Conrad Augustin
|
---|
592 | Files patched: pp.c
|
---|
593 | The code that Mark J. added a long time ago to handle values that were partially
|
---|
594 | off the end of the string was incorrect.
|
---|
595 |
|
---|
596 | NETaa13361: made it not interpolate inside regexp comments
|
---|
597 | From: Martin Jost
|
---|
598 | Files patched: toke.c
|
---|
599 | To avoid surprising people, it no longer interpolates inside regexp
|
---|
600 | comments.
|
---|
601 |
|
---|
602 | NETaa13362: ${q[1]} should be interpreted like it used to
|
---|
603 | From: Hans Mulder
|
---|
604 | Files patched: toke.c
|
---|
605 | Now resolves ${keyword[1]} to $keyword[1] and warns if -w. Likewise for {}.
|
---|
606 |
|
---|
607 | NETaa13363: meaning of repeated search chars undocumented in tr///
|
---|
608 | From: Stephen P. Potter
|
---|
609 | Files patched: pod/perlop.pod
|
---|
610 | Documented that repeated characters use the first translation given.
|
---|
611 |
|
---|
612 | NETaa13365: if closedir fails, don't try it again.
|
---|
613 | From: Frank Crawford
|
---|
614 | Files patched: pp_sys.c
|
---|
615 | Now does not attempt to closedir a second time.
|
---|
616 |
|
---|
617 | NETaa13366: can't do block scope optimization on $1 et al when tainting.
|
---|
618 | From: Andrew Vignaux
|
---|
619 | Files patched: toke.c
|
---|
620 | The tainting mechanism assumes that every statement starts out
|
---|
621 | untainted. Unfortunately, the scope removal optimization for very
|
---|
622 | short blocks removed the statementhood of statements that were
|
---|
623 | attempting to read $1 as an untainted value, with the effect that $1
|
---|
624 | appeared to be tainted anyway. The optimization is now disabled when
|
---|
625 | tainting and the block contains $1 (or equivalent).
|
---|
626 |
|
---|
627 | NETaa13366: fixed this a better way in toke.c.
|
---|
628 | Files patched: op.c
|
---|
629 | (same)
|
---|
630 |
|
---|
631 | NETaa13366: need to disable scope optimization when tainting.
|
---|
632 | Files patched: op.c
|
---|
633 | (same)
|
---|
634 |
|
---|
635 | NETaa13367: Did a SvCUR_set without nulling out final char.
|
---|
636 | From: "Rob Henderson" <robh@cs.indiana.edu>
|
---|
637 | Files patched: doop.c pp.c pp_sys.c
|
---|
638 | When do_vop set the length on its result string it neglected to null-terminate
|
---|
639 | it.
|
---|
640 |
|
---|
641 | NETaa13368: bigrat::norm sometimes chucked sign
|
---|
642 | From: Greg Kuperberg
|
---|
643 | Files patched: lib/bigrat.pl
|
---|
644 | The normalization routine was assuming that the gcd of two numbers was
|
---|
645 | never negative, and based on that assumption managed to move the sign
|
---|
646 | to the denominator, where it was deleted on the assumption that the
|
---|
647 | denominator is always positive.
|
---|
648 |
|
---|
649 | NETaa13368: botched previous patch
|
---|
650 | Files patched: lib/bigrat.pl
|
---|
651 | (same)
|
---|
652 |
|
---|
653 | NETaa13369: # is now a comment character, and \# should be left for regcomp.
|
---|
654 | From: Simon Parsons
|
---|
655 | Files patched: toke.c
|
---|
656 | It was not skipping the comment when it skipped the white space, and constructed
|
---|
657 | an opcode that tried to match a null string. Unfortunately, the previous
|
---|
658 | star tried to use the first character of the null string to optimize where
|
---|
659 | to recurse, so it never matched.
|
---|
660 |
|
---|
661 | NETaa13369: comment after regexp quantifier induced non-match.
|
---|
662 | Files patched: regcomp.c
|
---|
663 | (same)
|
---|
664 |
|
---|
665 | NETaa13370: some code assumed SvCUR was of type int.
|
---|
666 | From: Spider Boardman
|
---|
667 | Files patched: pp_sys.c
|
---|
668 | Did something similar to the proposed patch. I also fixed the problem that
|
---|
669 | it assumed the type of SvCUR was int. And fixed get{peer,sock}name the
|
---|
670 | same way.
|
---|
671 |
|
---|
672 | NETaa13375: sometimes dontbother wasn't added back into strend.
|
---|
673 | From: Jamshid Afshar
|
---|
674 | Files patched: regexec.c
|
---|
675 | When the /g modifier was used, the regular expression code would calculate
|
---|
676 | the end of $' too short by the minimum number of characters the pattern could
|
---|
677 | match.
|
---|
678 |
|
---|
679 | NETaa13375: sv_setpvn now disallows negative length.
|
---|
680 | Files patched: sv.c
|
---|
681 | (same)
|
---|
682 |
|
---|
683 | NETaa13376: suspected indirect objecthood prevented recognition of lexical.
|
---|
684 | From: Gisle.Aas@nr.no
|
---|
685 | Files patched: toke.c
|
---|
686 | When $data[0] is used in a spot that might be an indirect object, the lexer
|
---|
687 | was getting confused over the rule that says the $data in $$data[0] isn't
|
---|
688 | an array element. (The lexer uses XREF state for both indirect objects
|
---|
689 | and for variables used as names.)
|
---|
690 |
|
---|
691 | NETaa13377: -I processesing ate remainder of #! line.
|
---|
692 | From: Darrell Schiebel
|
---|
693 | Files patched: perl.c
|
---|
694 | I made the -I processing in moreswitches look for the end of the string,
|
---|
695 | delimited by whitespace.
|
---|
696 |
|
---|
697 | NETaa13379: ${foo} now treated the same outside quotes as inside
|
---|
698 | From: Hans Mulder
|
---|
699 | Files patched: toke.c
|
---|
700 | ${bareword} is now treated the same outside quotes as inside.
|
---|
701 |
|
---|
702 | NETaa13379: previous fix for this bug was botched
|
---|
703 | Files patched: toke.c
|
---|
704 | (same)
|
---|
705 |
|
---|
706 | NETaa13381: TEST should check for perl link
|
---|
707 | From: Andy Dougherty
|
---|
708 | Files patched: t/TEST
|
---|
709 | die "You need to run \"make test\" first to set things up.\n" unless -e 'perl';
|
---|
710 |
|
---|
711 |
|
---|
712 | NETaa13384: fixed version 0.000 botch.
|
---|
713 | From: Larry Wall
|
---|
714 | Files patched: installperl
|
---|
715 |
|
---|
716 | NETaa13385: return 0 from required file loses message
|
---|
717 | From: Malcolm Beattie
|
---|
718 | Files patched: pp_ctl.c
|
---|
719 | Works right now.
|
---|
720 |
|
---|
721 | NETaa13387: added pod2latex
|
---|
722 | From: Taro KAWAGISHI
|
---|
723 | Files patched: MANIFEST pod/pod2latex
|
---|
724 | Added most recent copy to pod directory.
|
---|
725 |
|
---|
726 | NETaa13388: constant folding now prefers integer results over double
|
---|
727 | From: Ilya Zakharevich
|
---|
728 | Files patched: op.c
|
---|
729 | Constant folding now prefers integer results over double.
|
---|
730 |
|
---|
731 | NETaa13389: now treats . and exec as shell metathingies
|
---|
732 | From: Hans Mulder
|
---|
733 | Files patched: doio.c
|
---|
734 | Now treats . and exec as shell metathingies.
|
---|
735 |
|
---|
736 | NETaa13395: eval didn't check taintedness.
|
---|
737 | From: Larry Wall
|
---|
738 | Files patched: pp_ctl.c
|
---|
739 |
|
---|
740 | NETaa13396: $^ coredumps at end of string
|
---|
741 | From: Paul Rogers
|
---|
742 | Files patched: toke.c
|
---|
743 | The scan_ident() didn't check for a null following $^.
|
---|
744 |
|
---|
745 | NETaa13397: improved error messages when operator expected
|
---|
746 | From: Larry Wall
|
---|
747 | Files patched: toke.c
|
---|
748 | Added message (Do you need to predeclare BAR?). Also fixed the missing
|
---|
749 | semicolon message.
|
---|
750 |
|
---|
751 | NETaa13399: cleanup by Andy
|
---|
752 | From: Larry Wall
|
---|
753 | Files patched: Changes Configure Makefile.SH README cflags.SH config.H config_h.SH deb.c doop.c dump.c ext/DB_File/DB_File.pm ext/DB_File/DB_File.xs ext/DynaLoader/DynaLoader.pm ext/Fcntl/Fcntl.pm ext/GDBM_File/GDBM_File.pm ext/POSIX/POSIX.pm ext/SDBM_File/sdbm/sdbm.h ext/Socket/Socket.pm ext/util/make_ext h2xs.SH hints/aix.sh hints/bsd386.sh hints/dec_osf.sh hints/esix4.sh hints/freebsd.sh hints/irix_5.sh hints/next_3_2.sh hints/sunos_4_1.sh hints/svr4.sh hints/ultrix_4.sh installperl lib/AutoSplit.pm lib/Cwd.pm lib/ExtUtils/MakeMaker.pm lib/ExtUtils/xsubpp lib/Term/Cap.pm mg.c miniperlmain.c perl.c perl.h perl_exp.SH pod/Makefile pod/perldiag.pod pod/pod2html pp.c pp_ctl.c pp_hot.c pp_sys.c proto.h sv.h t/re_tests util.c x2p/Makefile.SH x2p/a2p.h x2p/a2py.c x2p/handy.h x2p/hash.c x2p/hash.h x2p/str.c x2p/str.h x2p/util.c x2p/util.h x2p/walk.c
|
---|
754 |
|
---|
755 | NETaa13399: cleanup from Andy
|
---|
756 | Files patched: MANIFEST
|
---|
757 |
|
---|
758 | NETaa13399: configuration cleanup
|
---|
759 | Files patched: Configure Configure MANIFEST MANIFEST Makefile.SH Makefile.SH README config.H config.H config_h.SH config_h.SH configpm ext/DynaLoader/DynaLoader.pm ext/DynaLoader/dl_hpux.xs ext/NDBM_File/Makefile.PL ext/ODBM_File/Makefile.PL ext/util/make_ext handy.h hints/aix.sh hints/hpux_9.sh hints/hpux_9.sh hints/irix_4.sh hints/linux.sh hints/mpeix.sh hints/next_3_2.sh hints/solaris_2.sh hints/svr4.sh installperl installperl lib/AutoSplit.pm lib/ExtUtils/MakeMaker.pm lib/ExtUtils/MakeMaker.pm lib/ExtUtils/xsubpp lib/Getopt/Long.pm lib/Text/Tabs.pm makedepend.SH makedepend.SH mg.c op.c perl.h perl_exp.SH pod/perl.pod pod/perldiag.pod pod/perlsyn.pod pod/pod2man pp_sys.c proto.h proto.h unixish.h util.c util.c vms/config.vms writemain.SH x2p/a2p.h x2p/a2p.h x2p/a2py.c x2p/a2py.c x2p/handy.h x2p/util.c x2p/walk.c x2p/walk.c
|
---|
760 |
|
---|
761 | NETaa13399: new files from Andy
|
---|
762 | Files patched: ext/DB_File/Makefile.PL ext/DynaLoader/Makefile.PL ext/Fcntl/Makefile.PL ext/GDBM_File/Makefile.PL ext/NDBM_File/Makefile.PL ext/ODBM_File/Makefile.PL ext/POSIX/Makefile.PL ext/SDBM_File/Makefile.PL ext/SDBM_File/sdbm/Makefile.PL ext/Socket/Makefile.PL globals.c hints/convexos.sh hints/irix_6.sh
|
---|
763 |
|
---|
764 | NETaa13399: patch0l from Andy
|
---|
765 | Files patched: Configure MANIFEST Makefile.SH config.H config_h.SH ext/DB_File/Makefile.PL ext/GDBM_File/Makefile.PL ext/NDBM_File/Makefile.PL ext/POSIX/POSIX.xs ext/SDBM_File/sdbm/Makefile.PL ext/util/make_ext h2xs.SH hints/next_3_2.sh hints/solaris_2.sh hints/unicos.sh installperl lib/Cwd.pm lib/ExtUtils/MakeMaker.pm makeaperl.SH vms/config.vms x2p/util.c x2p/util.h
|
---|
766 |
|
---|
767 | NETaa13399: stuff from Andy
|
---|
768 | Files patched: Configure MANIFEST Makefile.SH configpm hints/dec_osf.sh hints/linux.sh hints/machten.sh lib/ExtUtils/MakeMaker.pm util.c
|
---|
769 |
|
---|
770 | NETaa13399: Patch 0k from Andy
|
---|
771 | Files patched: Configure MANIFEST Makefile.SH config.H config_h.SH hints/dec_osf.sh hints/mpeix.sh hints/next_3_0.sh hints/ultrix_4.sh installperl lib/ExtUtils/MakeMaker.pm lib/File/Path.pm makeaperl.SH minimod.PL perl.c proto.h vms/config.vms vms/ext/MM_VMS.pm x2p/a2p.h
|
---|
772 |
|
---|
773 | NETaa13399: Patch 0m from Andy
|
---|
774 | Files patched: Configure MANIFEST Makefile.SH README config.H config_h.SH ext/DynaLoader/README ext/POSIX/POSIX.xs ext/SDBM_File/sdbm/sdbm.h ext/util/extliblist hints/cxux.sh hints/linux.sh hints/powerunix.sh lib/ExtUtils/MakeMaker.pm malloc.c perl.h pp_sys.c util.c
|
---|
775 |
|
---|
776 | NETaa13400: pod2html update from Bill Middleton
|
---|
777 | From: Larry Wall
|
---|
778 | Files patched: pod/pod2html
|
---|
779 |
|
---|
780 | NETaa13401: Boyer-Moore code attempts to compile string longer than 255.
|
---|
781 | From: Kyriakos Georgiou
|
---|
782 | Files patched: util.c
|
---|
783 | The Boyer-Moore table uses unsigned char offsets, but the BM compiler wasn't
|
---|
784 | rejecting strings longer than 255 chars, and was miscompiling them.
|
---|
785 |
|
---|
786 | NETaa13403: missing a $ on variable name
|
---|
787 | From: Wayne Scott
|
---|
788 | Files patched: installperl
|
---|
789 | Yup, it was missing.
|
---|
790 |
|
---|
791 | NETaa13406: didn't wipe out dead match when proceeding to next BRANCH
|
---|
792 | From: Michael P. Clemens
|
---|
793 | Files patched: regexec.c
|
---|
794 | The code to check alternatives didn't invalidate backreferences matched by the
|
---|
795 | failed branch.
|
---|
796 |
|
---|
797 | NETaa13407: overload upgrade
|
---|
798 | From: owner-perl5-porters@nicoh.com
|
---|
799 | Also: Ilya Zakharevich
|
---|
800 | Files patched: MANIFEST gv.c lib/Math/BigInt.pm perl.h pod/perlovl.pod pp.c pp.h pp_hot.c sv.c t/lib/bigintpm.t t/op/overload.t
|
---|
801 | Applied supplied patch, and fixed bug induced by use of sv_setsv to do
|
---|
802 | a deep copy, since sv_setsv no longer copies objecthood.
|
---|
803 |
|
---|
804 | NETaa13409: sv_gets tries to grow string at EOF
|
---|
805 | From: Harold O Morris
|
---|
806 | Files patched: sv.c
|
---|
807 | Applied suggested patch, only two statements earlier, since the end code
|
---|
808 | also does SvCUR_set.
|
---|
809 |
|
---|
810 | NETaa13410: delaymagic did =~ instead of &= ~
|
---|
811 | From: Andreas Schwab
|
---|
812 | Files patched: pp_hot.c
|
---|
813 | Applied supplied patch.
|
---|
814 |
|
---|
815 | NETaa13411: POSIX didn't compile under -DLEAKTEST
|
---|
816 | From: Frederic Chauveau
|
---|
817 | Files patched: ext/POSIX/POSIX.xs
|
---|
818 | Used NEWSV instead of newSV.
|
---|
819 |
|
---|
820 | NETaa13412: new version from Tony Sanders
|
---|
821 | From: Tony Sanders
|
---|
822 | Files patched: lib/Term/Cap.pm
|
---|
823 | Installed as Term::Cap.pm
|
---|
824 |
|
---|
825 | NETaa13413: regmust extractor needed to restart loop on BRANCH for (?:) to work
|
---|
826 | From: DESARMENIEN
|
---|
827 | Files patched: regcomp.c
|
---|
828 | The BRANCH skipper should have restarted the loop from the top.
|
---|
829 |
|
---|
830 | NETaa13414: the check for accidental list context was done after pm_short check
|
---|
831 | From: Michael H. Coen
|
---|
832 | Files patched: pp_hot.c
|
---|
833 | Moved check for accidental list context to before the pm_short optimization.
|
---|
834 |
|
---|
835 | NETaa13418: perlre.pod babbled nonsense about | in character classes
|
---|
836 | From: Philip Hazel
|
---|
837 | Files patched: pod/perlre.pod
|
---|
838 | Removed bogus brackets. Now reads:
|
---|
839 | Note however that "|" is interpreted as a literal with square brackets,
|
---|
840 | so if you write C<[fee|fie|foe]> you're really only matching C<[feio|]>.
|
---|
841 |
|
---|
842 | NETaa13419: need to document introduction of lexical variables
|
---|
843 | From: "Heading, Anthony"
|
---|
844 | Files patched: pod/perlfunc.pod
|
---|
845 | Now mentions that lexicals aren't introduced till after the current statement.
|
---|
846 |
|
---|
847 | NETaa13420: formats that overflowed a page caused endless top of forms
|
---|
848 | From: Hildo@CONSUL.NL
|
---|
849 | Files patched: pp_sys.c
|
---|
850 | If a record is too large to fit on a page, it now prints whatever will
|
---|
851 | fit and then calls top of form again on the remainder.
|
---|
852 |
|
---|
853 | NETaa13423: the code to do negative list subscript in scalar context was missing
|
---|
854 | From: Steve McDougall
|
---|
855 | Files patched: pp.c
|
---|
856 | The negative subscript code worked right in list context but not in scalar
|
---|
857 | context. In fact, there wasn't code to do it in the scalar context.
|
---|
858 |
|
---|
859 | NETaa13424: existing but undefined CV blocked inheritance
|
---|
860 | From: Spider Boardman
|
---|
861 | Files patched: gv.c
|
---|
862 | Applied supplied patch.
|
---|
863 |
|
---|
864 | NETaa13425: removed extra argument to croak
|
---|
865 | From: "R. Bernstein"
|
---|
866 | Files patched: regcomp.c
|
---|
867 | Removed extra argument.
|
---|
868 |
|
---|
869 | NETaa13427: added return types
|
---|
870 | From: "R. Bernstein"
|
---|
871 | Files patched: x2p/a2py.c
|
---|
872 | Applied suggested patch.
|
---|
873 |
|
---|
874 | NETaa13427: added static declarations
|
---|
875 | Files patched: x2p/walk.c
|
---|
876 | (same)
|
---|
877 |
|
---|
878 | NETaa13428: split was assuming that all backreferences were defined
|
---|
879 | From: Dave Schweisguth
|
---|
880 | Files patched: pp.c
|
---|
881 | split was assuming that all backreferences were defined.
|
---|
882 |
|
---|
883 | NETaa13430: hoistmust wasn't hoisting anchored shortcircuit's length
|
---|
884 | From: Tom Christiansen
|
---|
885 | Also: Rob Hooft
|
---|
886 | Files patched: toke.c
|
---|
887 |
|
---|
888 | NETaa13432: couldn't call code ref under debugger
|
---|
889 | From: Mike Fletcher
|
---|
890 | Files patched: op.c pp_hot.c sv.h
|
---|
891 | The debugging code assumed it could remember a name to represent a subroutine,
|
---|
892 | but anonymous subroutines don't have a name. It now remembers a CV reference
|
---|
893 | in that case.
|
---|
894 |
|
---|
895 | NETaa13435: 1' dumped core
|
---|
896 | From: Larry Wall
|
---|
897 | Files patched: toke.c
|
---|
898 | Didn't check a pointer for nullness.
|
---|
899 |
|
---|
900 | NETaa13436: print foo(123) didn't treat foo as subroutine
|
---|
901 | From: mcook@cognex.com
|
---|
902 | Files patched: toke.c
|
---|
903 | Now treats it as a subroutine rather than a filehandle.
|
---|
904 |
|
---|
905 | NETaa13437: &$::foo didn't think $::foo was a variable name
|
---|
906 | From: mcook@cognex.com
|
---|
907 | Files patched: toke.c
|
---|
908 | Now treats $::foo as a global variable.
|
---|
909 |
|
---|
910 | NETaa13439: referred to old package name
|
---|
911 | From: Tom Christiansen
|
---|
912 | Files patched: lib/Sys/Syslog.pm
|
---|
913 | Wasn't a strict refs problem after all. It was simply referring to package
|
---|
914 | syslog, which had been renamed to Sys::Syslog.
|
---|
915 |
|
---|
916 | NETaa13440: stat operations didn't know what to do with glob or ref to glob
|
---|
917 | From: mcook@cognex.com
|
---|
918 | Files patched: doio.c pp_sys.c
|
---|
919 | Now knows about the kinds of filehandles returned by FileHandle constructors
|
---|
920 | and such.
|
---|
921 |
|
---|
922 | NETaa13442: couldn't find name of copy of deleted symbol table entry
|
---|
923 | From: Spider Boardman
|
---|
924 | Files patched: gv.c gv.h
|
---|
925 | I did a much simpler fix. When gp_free notices that it's freeing the
|
---|
926 | master GV, it nulls out gp_egv. The GvENAME and GvESTASH macros know
|
---|
927 | to revert to gv if egv is null.
|
---|
928 |
|
---|
929 | This has the advantage of not creating a reference loop.
|
---|
930 |
|
---|
931 | NETaa13443: couldn't override an XSUB
|
---|
932 | From: William Setzer
|
---|
933 | Files patched: op.c
|
---|
934 | When the newSUB and newXS routines checked for whether the old sub was
|
---|
935 | defined, they only looked at CvROOT(cv), not CvXSUB(cv).
|
---|
936 |
|
---|
937 | NETaa13443: needed to do same thing in newXS
|
---|
938 | Files patched: op.c
|
---|
939 | (same)
|
---|
940 |
|
---|
941 | NETaa13444: -foo now doesn't warn unless sub foo is defined
|
---|
942 | From: Larry Wall
|
---|
943 | Files patched: toke.c
|
---|
944 | Made it not warn on -foo, unless there is a sub foo defined.
|
---|
945 |
|
---|
946 | NETaa13451: in scalar context, pp_entersub now guarantees one item from XSUB
|
---|
947 | From: Nick Gianniotis
|
---|
948 | Files patched: pp_hot.c
|
---|
949 | The pp_entersub routine now guarantees that an XSUB in scalar context
|
---|
950 | returns one and only one value. If there are fewer, it pushes undef,
|
---|
951 | and if there are more, it returns the last one.
|
---|
952 |
|
---|
953 | NETaa13457: now explicitly disallows printf format with 'n' or '*'.
|
---|
954 | From: lees@cps.msu.edu
|
---|
955 | Files patched: doop.c
|
---|
956 | Now says
|
---|
957 |
|
---|
958 | Use of n in printf format not supported at ./foo line 3.
|
---|
959 |
|
---|
960 |
|
---|
961 | NETaa13458: needed to call SvPOK_only() in pp_substr
|
---|
962 | From: Wayne Scott
|
---|
963 | Files patched: pp.c
|
---|
964 | Needed to call SvPOK_only() in pp_substr.
|
---|
965 |
|
---|
966 | NETaa13459: umask and chmod now warn about missing initial 0 even with paren
|
---|
967 | From: Andreas Koenig
|
---|
968 | Files patched: toke.c
|
---|
969 | Now skips parens as well as whitespace looking for argument.
|
---|
970 |
|
---|
971 | NETaa13460: backtracking didn't work on .*? because reginput got clobbered
|
---|
972 | From: Andreas Koenig
|
---|
973 | Files patched: regexec.c
|
---|
974 | When .*? did a probe of the rest of the string, it clobbered reginput,
|
---|
975 | so the next call to match a . tried to match the newline and failed.
|
---|
976 |
|
---|
977 | NETaa13475: \(@ary) now treats array as list of scalars
|
---|
978 | From: Tim Bunce
|
---|
979 | Files patched: op.c
|
---|
980 | The mod() routine now refrains from marking @ary as an lvalue if it's in parens
|
---|
981 | and is the subject of an OP_REFGEN.
|
---|
982 |
|
---|
983 | NETaa13481: accept buffer wasn't aligned good enough
|
---|
984 | From: Holger Bechtold
|
---|
985 | Also: Christian Murphy
|
---|
986 | Files patched: pp_sys.c
|
---|
987 | Applied suggested patch.
|
---|
988 |
|
---|
989 | NETaa13486: while (<>) now means while (defined($_ = <>))
|
---|
990 | From: Jim Balter
|
---|
991 | Files patched: op.c pod/perlop.pod
|
---|
992 | while (<HANDLE>) now means while (defined($_ = <HANDLE>)).
|
---|
993 |
|
---|
994 | NETaa13500: needed DESTROY in FileHandle
|
---|
995 | From: Tim Bunce
|
---|
996 | Files patched: ext/POSIX/POSIX.pm
|
---|
997 | Added DESTROY method. Also fixed ungensym to use POSIX:: instead of _POSIX.
|
---|
998 | Removed ungensym from close method, since DESTROY should do that now.
|
---|
999 |
|
---|
1000 | NETaa13502: now complains if you use local on a lexical variable
|
---|
1001 | From: Larry Wall
|
---|
1002 | Files patched: op.c
|
---|
1003 | Now says something like
|
---|
1004 |
|
---|
1005 | Can't localize lexical variable $var at ./try line 6.
|
---|
1006 |
|
---|
1007 | NETaa13512: added $SIG{__WARN__} and $SIG{__DIE__} hooks
|
---|
1008 | From: Larry Wall
|
---|
1009 | Files patched: embed.h gv.c interp.sym mg.c perl.h pod/perlvar.pod pp_ctl.c util.c Todo pod/perldiag.pod
|
---|
1010 |
|
---|
1011 | NETaa13514: statements before intro of lex var could see lex var
|
---|
1012 | From: William Setzer
|
---|
1013 | Files patched: op.c
|
---|
1014 | When a lexical variable is declared, introduction is delayed until
|
---|
1015 | the start of the next statement, so that any initialization code runs
|
---|
1016 | outside the scope of the new variable. Thus,
|
---|
1017 |
|
---|
1018 | my $y = 3;
|
---|
1019 | my $y = $y;
|
---|
1020 | print $y;
|
---|
1021 |
|
---|
1022 | should print 3. Unfortunately, the declaration was marked with the
|
---|
1023 | beginning location at the time that "my $y" was processed instead of
|
---|
1024 | when the variable was introduced, so any embedded statements within
|
---|
1025 | an anonymous subroutine picked up the wrong "my". The declaration
|
---|
1026 | is now labelled correctly when the variable is actually introduced.
|
---|
1027 |
|
---|
1028 | NETaa13520: added closures
|
---|
1029 | From: Larry Wall
|
---|
1030 | Files patched: Todo cv.h embed.h global.sym gv.c interp.sym op.c perl.c perl.h pod/perlform.pod pp.c pp_ctl.c pp_hot.c sv.c sv.h toke.c
|
---|
1031 |
|
---|
1032 | NETaa13520: test to see if lexical works in a format now
|
---|
1033 | Files patched: t/op/write.t
|
---|
1034 |
|
---|
1035 | NETaa13522: substitution couldn't be used on a substr()
|
---|
1036 | From: Hans Mulder
|
---|
1037 | Files patched: pp_ctl.c pp_hot.c
|
---|
1038 | Changed pp_subst not to use sv_replace() anymore, which didn't handle lvalues
|
---|
1039 | and was overkill anyway. Should be slightly faster this way too.
|
---|
1040 |
|
---|
1041 | NETaa13525: G_EVAL mode in perl_call_sv didn't return values right.
|
---|
1042 | Files patched: perl.c
|
---|
1043 |
|
---|
1044 | NETaa13525: consolidated error message
|
---|
1045 | From: Larry Wall
|
---|
1046 | Files patched: perl.h toke.c
|
---|
1047 |
|
---|
1048 | NETaa13525: derived it
|
---|
1049 | Files patched: perly.h
|
---|
1050 |
|
---|
1051 | NETaa13525: missing some values from embed.h
|
---|
1052 | Files patched: embed.h
|
---|
1053 |
|
---|
1054 | NETaa13525: random cleanup
|
---|
1055 | Files patched: MANIFEST Todo cop.h lib/TieHash.pm lib/perl5db.pl opcode.h patchlevel.h pod/perldata.pod pod/perlsub.pod t/op/ref.t toke.c
|
---|
1056 |
|
---|
1057 | NETaa13525: random cleanup
|
---|
1058 | Files patched: pp_ctl.c util.c
|
---|
1059 |
|
---|
1060 | NETaa13527: File::Find needed to export $name and $dir
|
---|
1061 | From: Chaim Frenkel
|
---|
1062 | Files patched: lib/File/Find.pm
|
---|
1063 | They are now exported.
|
---|
1064 |
|
---|
1065 | NETaa13528: cv_undef left unaccounted-for GV pointer in CV
|
---|
1066 | From: Tye McQueen
|
---|
1067 | Also: Spider Boardman
|
---|
1068 | Files patched: op.c
|
---|
1069 |
|
---|
1070 | NETaa13530: scalar keys now resets hash iterator
|
---|
1071 | From: Tim Bunce
|
---|
1072 | Files patched: doop.c
|
---|
1073 | scalar keys() now resets the hash iterator.
|
---|
1074 |
|
---|
1075 | NETaa13531: h2ph doesn't check defined right
|
---|
1076 | From: Casper H.S. Dik
|
---|
1077 | Files patched: h2ph.SH
|
---|
1078 |
|
---|
1079 | NETaa13540: VMS update
|
---|
1080 | From: Larry Wall
|
---|
1081 | Files patched: MANIFEST README.vms doio.c embed.h ext/DynaLoader/dl_vms.xs interp.sym lib/Cwd.pm lib/ExtUtils/xsubpp lib/File/Basename.pm lib/File/Find.pm lib/File/Path.pm mg.c miniperlmain.c perl.c perl.h perly.c perly.c.diff pod/perldiag.pod pp_ctl.c pp_hot.c pp_sys.c proto.h util.c vms/Makefile vms/config.vms vms/descrip.mms vms/ext/Filespec.pm vms/ext/MM_VMS.pm vms/ext/VMS/stdio/Makefile.PL vms/ext/VMS/stdio/stdio.pm vms/ext/VMS/stdio/stdio.xs vms/genconfig.pl vms/perlvms.pod vms/sockadapt.c vms/sockadapt.h vms/vms.c vms/vmsish.h vms/writemain.pl
|
---|
1082 |
|
---|
1083 | NETaa13540: got some duplicate code
|
---|
1084 | Files patched: lib/File/Path.pm
|
---|
1085 |
|
---|
1086 | NETaa13540: stuff from Charles
|
---|
1087 | Files patched: MANIFEST README.vms lib/ExtUtils/MakeMaker.pm lib/ExtUtils/MakeMaker.pm lib/ExtUtils/xsubpp lib/File/Basename.pm lib/File/Path.pm perl.c perl.h pod/perldiag.pod pod/perldiag.pod vms/Makefile vms/Makefile vms/config.vms vms/config.vms vms/descrip.mms vms/descrip.mms vms/ext/Filespec.pm vms/ext/Filespec.pm vms/ext/MM_VMS.pm vms/ext/MM_VMS.pm vms/ext/VMS/stdio/stdio.pm vms/ext/VMS/stdio/stdio.xs vms/gen_shrfls.pl vms/gen_shrfls.pl vms/genconfig.pl vms/genconfig.pl vms/mms2make.pl vms/perlvms.pod vms/sockadapt.h vms/test.com vms/vms.c vms/vms.c vms/vmsish.h vms/vmsish.h vms/writemain.pl
|
---|
1088 |
|
---|
1089 | NETaa13540: tweak from Charles
|
---|
1090 | Files patched: lib/File/Path.pm
|
---|
1091 |
|
---|
1092 | NETaa13552: scalar unpack("P4",...) ignored the 4
|
---|
1093 | From: Eric Arnold
|
---|
1094 | Files patched: pp.c
|
---|
1095 | The optimization that tried to do only one item in a scalar context didn't
|
---|
1096 | realize that the argument to P was not a repeat count.
|
---|
1097 |
|
---|
1098 | NETaa13553: now warns about 8 or 9 in octal escapes
|
---|
1099 | From: Mike Rogers
|
---|
1100 | Files patched: util.c
|
---|
1101 | Now warns if it finds 8 or 9 before the end of the octal escape sequence.
|
---|
1102 | So \039 produces a warning, but \0339 does not.
|
---|
1103 |
|
---|
1104 | NETaa13554: now allows foreach ${"name"}
|
---|
1105 | From: Johan Holtman
|
---|
1106 | Files patched: op.c
|
---|
1107 | Instead of trying to remove OP_RV2SV, the compiler now just transmutes it into an
|
---|
1108 | OP_RV2GV, which is a no-op for ordinary variables and does the right
|
---|
1109 | thing for ${"name"}.
|
---|
1110 |
|
---|
1111 | NETaa13559: substitution now always checks for readonly
|
---|
1112 | From: Rodger Anderson
|
---|
1113 | Files patched: pp_hot.c
|
---|
1114 | Substitution now always checks for readonly.
|
---|
1115 |
|
---|
1116 | NETaa13561: added explanations of closures and curly-quotes
|
---|
1117 | From: Larry Wall
|
---|
1118 | Files patched: pod/perlref.pod
|
---|
1119 |
|
---|
1120 | NETaa13562: null components in path cause indigestion
|
---|
1121 | From: Ambrose Kofi Laing
|
---|
1122 | Files patched: lib/Cwd.pm lib/pwd.pl
|
---|
1123 |
|
---|
1124 | NETaa13575: documented semantics of negative substr length
|
---|
1125 | From: Jeff Bouis
|
---|
1126 | Files patched: pod/perlfunc.pod
|
---|
1127 | Documented the fact that negative length now leaves characters off the end,
|
---|
1128 | and while I was at it, made it work right even if offset wasn't 0.
|
---|
1129 |
|
---|
1130 | NETaa13575: negative length to substr didn't work when offset non-zero
|
---|
1131 | Files patched: pp.c
|
---|
1132 | (same)
|
---|
1133 |
|
---|
1134 | NETaa13575: random cleanup
|
---|
1135 | Files patched: pod/perlfunc.pod
|
---|
1136 | (same)
|
---|
1137 |
|
---|
1138 | NETaa13580: couldn't localize $ACCUMULATOR
|
---|
1139 | From: Larry Wall
|
---|
1140 | Files patched: gv.c lib/English.pm mg.c perl.c sv.c
|
---|
1141 | Needed to make $^A a real magical variable. Also lib/English.pm wasn't
|
---|
1142 | exporting good.
|
---|
1143 |
|
---|
1144 | NETaa13583: doc mods from Tom
|
---|
1145 | From: Larry Wall
|
---|
1146 | Files patched: pod/modpods/AnyDBMFile.pod pod/modpods/Basename.pod pod/modpods/Benchmark.pod pod/modpods/Cwd.pod pod/modpods/Dynaloader.pod pod/modpods/Exporter.pod pod/modpods/Find.pod pod/modpods/Finddepth.pod pod/modpods/Getopt.pod pod/modpods/MakeMaker.pod pod/modpods/Open2.pod pod/modpods/POSIX.pod pod/modpods/Ping.pod pod/modpods/less.pod pod/modpods/strict.pod pod/perlapi.pod pod/perlbook.pod pod/perldata.pod pod/perlform.pod pod/perlfunc.pod pod/perlipc.pod pod/perlmod.pod pod/perlobj.pod pod/perlref.pod pod/perlrun.pod pod/perlsec.pod pod/perlsub.pod pod/perltrap.pod pod/perlvar.pod
|
---|
1147 |
|
---|
1148 | NETaa13589: return was enforcing list context on its arguments
|
---|
1149 | From: Tim Freeman
|
---|
1150 | Files patched: opcode.pl
|
---|
1151 | A return was being treated like a normal list operator, in that it was
|
---|
1152 | setting list context on its arguments. This was bogus.
|
---|
1153 |
|
---|
1154 | NETaa13591: POSIX::creat used wrong argument
|
---|
1155 | From: Paul Marquess
|
---|
1156 | Files patched: ext/POSIX/POSIX.pm
|
---|
1157 | Applied suggested patch.
|
---|
1158 |
|
---|
1159 | NETaa13605: use strict refs error message now displays bad ref
|
---|
1160 | From: Peter Gordon
|
---|
1161 | Files patched: perl.h pod/perldiag.pod pp.c pp_hot.c
|
---|
1162 | Now says
|
---|
1163 |
|
---|
1164 | Can't use string ("2") as a HASH ref while "strict refs" in use at ./foo line 12.
|
---|
1165 |
|
---|
1166 | NETaa13630: eof docs were unclear
|
---|
1167 | From: Hallvard B Furuseth
|
---|
1168 | Files patched: pod/perlfunc.pod
|
---|
1169 | Applied suggested patch.
|
---|
1170 |
|
---|
1171 | NETaa13636: $< and $> weren't refetched on undump restart
|
---|
1172 | From: Steve Pearlmutter
|
---|
1173 | Files patched: perl.c
|
---|
1174 | The code in main() bypassed perl_construct on an undump restart, which bypassed
|
---|
1175 | the code that set $< and $>.
|
---|
1176 |
|
---|
1177 | NETaa13641: added Tim's fancy new import whizbangers
|
---|
1178 | From: Tim Bunce
|
---|
1179 | Files patched: lib/Exporter.pm
|
---|
1180 | Applied suggested patch.
|
---|
1181 |
|
---|
1182 | NETaa13649: couldn't AUTOLOAD a symbol reference
|
---|
1183 | From: Larry Wall
|
---|
1184 | Files patched: pp_hot.c
|
---|
1185 | pp_entersub needed to guarantee a CV so it would get to the AUTOLOAD code.
|
---|
1186 |
|
---|
1187 | NETaa13651: renamed file had wrong package name
|
---|
1188 | From: Andreas Koenig
|
---|
1189 | Files patched: lib/File/Path.pm
|
---|
1190 | Applied suggested patch.
|
---|
1191 |
|
---|
1192 | NETaa13660: now that we're testing distribution we can diagnose RANDBITS errors
|
---|
1193 | From: Karl Glazebrook
|
---|
1194 | Files patched: t/op/rand.t
|
---|
1195 | Changed to suggested algorithm. Also duplicated it to test rand(100) too.
|
---|
1196 |
|
---|
1197 | NETaa13660: rand.t didn't test for proper distribution within range
|
---|
1198 | Files patched: t/op/rand.t
|
---|
1199 | (same)
|
---|
1200 |
|
---|
1201 | NETaa13671: array slice misbehaved in a scalar context
|
---|
1202 | From: Tye McQueen
|
---|
1203 | Files patched: pp.c
|
---|
1204 | A spurious else prevented the scalar-context-handling code from running.
|
---|
1205 |
|
---|
1206 | NETaa13672: filehandle constructors in POSIX don't return failure successfully
|
---|
1207 | From: Ian Phillipps
|
---|
1208 | Files patched: ext/POSIX/POSIX.pm
|
---|
1209 | Applied suggested patch.
|
---|
1210 |
|
---|
1211 |
|
---|
1212 | NETaa13678: forced $1 to always be untainted
|
---|
1213 | From: Ka-Ping Yee
|
---|
1214 | Files patched: mg.c
|
---|
1215 | I believe the bug that triggered this was fixed elsewhere, but just in case,
|
---|
1216 | I put in explicit code to force $1 et al not to be tainted regardless.
|
---|
1217 |
|
---|
1218 | NETaa13682: formline doc need to discuss ~ and ~~ policy
|
---|
1219 | From: Peter Gordon
|
---|
1220 | Files patched: pod/perlfunc.pod
|
---|
1221 |
|
---|
1222 | NETaa13686: POSIX::open and POSIX::mkfifo didn't check tainting
|
---|
1223 | From: Larry Wall
|
---|
1224 | Files patched: ext/POSIX/POSIX.xs
|
---|
1225 | open() and mkfifo() now check tainting.
|
---|
1226 |
|
---|
1227 | NETaa13687: new Exporter.pm
|
---|
1228 | From: Tim Bunce
|
---|
1229 | Files patched: lib/Exporter.pm
|
---|
1230 | Added suggested changes, except for @EXPORTABLE, because it looks too much
|
---|
1231 | like @EXPORTTABLE. Decided to stick with @EXPORT_OK because it looks more
|
---|
1232 | like an adjunct. Also added an export_tags routine. The keys in the
|
---|
1233 | %EXPORT_TAGS hash no longer use colons, to make the initializers prettier.
|
---|
1234 |
|
---|
1235 | NETaa13687: new Exporter.pm
|
---|
1236 | Files patched: ext/POSIX/POSIX.pm
|
---|
1237 | (same)
|
---|
1238 |
|
---|
1239 | NETaa13694: add sockaddr_in to Socket.pm
|
---|
1240 | From: Tim Bunce
|
---|
1241 | Files patched: ext/Socket/Socket.pm
|
---|
1242 | Applied suggested patch.
|
---|
1243 |
|
---|
1244 | NETaa13695: library routines should use qw() as good example
|
---|
1245 | From: Dean Roehrich
|
---|
1246 | Files patched: ext/DB_File/DB_File.pm ext/DynaLoader/DynaLoader.pm ext/Fcntl/Fcntl.pm ext/GDBM_File/GDBM_File.pm ext/POSIX/POSIX.pm ext/Socket/Socket.pm
|
---|
1247 | Applied suggested patch.
|
---|
1248 |
|
---|
1249 | NETaa13696: myconfig should be a routine in Config.pm
|
---|
1250 | From: Kenneth Albanowski
|
---|
1251 | Files patched: configpm
|
---|
1252 | Applied suggested patch.
|
---|
1253 |
|
---|
1254 | NETaa13704: fdopen closed fd on failure
|
---|
1255 | From: Hallvard B Furuseth
|
---|
1256 | Files patched: doio.c
|
---|
1257 | Applied suggested patch.
|
---|
1258 |
|
---|
1259 | NETaa13706: Term::Cap doesn't work
|
---|
1260 | From: Dean Roehrich
|
---|
1261 | Files patched: lib/Term/Cap.pm
|
---|
1262 | Applied suggested patch.
|
---|
1263 |
|
---|
1264 | NETaa13710: cryptswitch needed to be more "useable"
|
---|
1265 | From: Tim Bunce
|
---|
1266 | Files patched: embed.h global.sym perl.h toke.c
|
---|
1267 | The cryptswitch_fp function now can operate in two modes. It can
|
---|
1268 | modify the global rsfp to redirect input as before, or it can modify
|
---|
1269 | linestr and return true, indicating that it is not necessary for yylex
|
---|
1270 | to read another line since cryptswitch_fp has just done it.
|
---|
1271 |
|
---|
1272 | NETaa13712: new_tmpfile() can't be called as constructor
|
---|
1273 | From: Hans Mulder
|
---|
1274 | Files patched: ext/POSIX/POSIX.xs
|
---|
1275 | Now allows new_tmpfile() to be called as a constructor.
|
---|
1276 |
|
---|
1277 | NETaa13714: variable method call not documented
|
---|
1278 | From: "Randal L. Schwartz"
|
---|
1279 | Files patched: pod/perlobj.pod
|
---|
1280 | Now indicates that OBJECT->$method() works.
|
---|
1281 |
|
---|
1282 | NETaa13715: PACK->$method produces spurious warning
|
---|
1283 | From: Larry Wall
|
---|
1284 | Files patched: toke.c
|
---|
1285 | The -> operator was telling the lexer to expect an operator when the
|
---|
1286 | next thing was a variable.
|
---|
1287 |
|
---|
1288 | NETaa13716: Carp now allows multiple packages to be skipped out of
|
---|
1289 | From: Larry Wall
|
---|
1290 | Files patched: lib/Carp.pm
|
---|
1291 | The subroutine redefinition warnings now warn on import collisions.
|
---|
1292 |
|
---|
1293 | NETaa13716: Exporter catches warnings and gives a better line number
|
---|
1294 | Files patched: lib/Exporter.pm
|
---|
1295 | (same)
|
---|
1296 |
|
---|
1297 | NETaa13716: now counts imported routines as "defined" for redef warnings
|
---|
1298 | Files patched: op.c sv.c
|
---|
1299 | (same)
|
---|