summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix the installation of pod2htmlv5.15.4Florian Ragwitz2011-10-201-1/+1
|
* Add acknowledgements to the perldeltaFlorian Ragwitz2011-10-201-3/+25
|
* Stop Porting/acknowledgements.pl from producing hatespaceFlorian Ragwitz2011-10-201-4/+3
|
* Add 5.15.4 to perlhistFlorian Ragwitz2011-10-201-0/+1
|
* Remove the MANIFEST check from the release guideFlorian Ragwitz2011-10-202-16/+1
| | | | | | We already have porting tests catching this. I really don't see how this could end up being screwed or how it'd be more likely at this point during the release process than at any other time.
* Update Module::CoreList for 5.14.4Florian Ragwitz2011-10-203-3/+678
|
* Bump the perl version in various places for 5.15.4Florian Ragwitz2011-10-2021-140/+140
|
* Get perldelta into mostly finished stateFlorian Ragwitz2011-10-201-258/+4
|
* David changelogged thisFlorian Ragwitz2011-10-201-2/+0
| | | | Thanks, David!
* [perl #101738] Make sv_sethek set the UTF8 flag correctlyFather Chrysostomos2011-10-202-1/+12
| | | | | | | | | | | | | | | It was only ever turning it on, and not turning it off if the sv hap- pened to have it on from its previous use. This caused ref() (which uses sv_sethek(TARG,...)) to return a shared scalar with the UTF8 flag on, even if it was supposed to be off. For shared scalars, the UTF8 flag on ASCII strings does make a differ- ence. The pv *and* the flags are used in hash lookup, for speed. So a scalar returned by ref() with the UTF8 flag on by mistake would not work in hash lookups. exists $classes{ref $foo} would return false, even if there were an entry for that class.
* Remove untrue comment from t/op/ref.tFather Chrysostomos2011-10-201-1/+0
| | | | This has been untrue since it was added in commit 6e592b3a.
* bisect-runner.pl now builds test_prep on NetBSD back to 5.002Nicholas Clark2011-10-201-0/+56
| | | | | The historical NetBSD hints need tweaking for dynamic linking flags, and older versions of unixish.h needs tweaking to include <signal.h>
* Remove my todo commits from perldelta templateSteffen Mueller2011-10-201-2/+0
|
* perldelta entry for improved AV/etc OUTPUT typemapsSteffen Mueller2011-10-201-1/+16
|
* Document the new, fixed AV/etc typemapsSteffen Mueller2011-10-201-4/+13
|
* Make core-cpan-diff work with a minicpanSteffen Mueller2011-10-201-1/+1
| | | | It was trying to download a test file that doesn't exist in minicpans.
* Dennis has (yet) another e-mail address :)H.Merijn Brand2011-10-191-0/+1
|
* Build failed in Jenkins: perl5 #80Dennis Kaarsemaker2011-10-191-1/+1
| | | | | | | | Tiny typo, this will fix it: [dkaarsemaker@dromedary perl]$ git diff Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
* perldelta: document base.pm changesDavid Golden2011-10-191-0/+13
|
* regexec.c: Add another place to not re-foldKarl Williamson2011-10-171-1/+1
| | | | This adds regrepeat to no keep re-folding to the recent commits
* regexec.c: Another place to not re-foldKarl Williamson2011-10-171-2/+2
| | | | | A recent commit caused regexec.c to not keep calculating the folds in one circumstance. This one adds the case in regmatch
* utf8.c: Don't use swash for to_uni_lower() latin1 callsKarl Williamson2011-10-171-2/+18
| | | | | The lowercase of latin-1 range code points is known to the perl core, so for those we can short-ciruit converting to utf8 and reading in a swash
* regexec.c: Less work in /i matchingKarl Williamson2011-10-171-2/+4
| | | | | | | | | | | If you watch an execution trace of regexec /i, often you will see it folding the same thing over and over, as it backtracks or searches ahead. regcomp.c has now been changed to always fold UTF-8 encoded EXACTF and EXCACTFU nodes. This allows these to not be re-folded each time. This commit does it just for find_by_class(). Other commits will expand this technique for other cases.
* utf8.c: Add commentKarl Williamson2011-10-171-36/+36
|
* utf8.c: White space onlyKarl Williamson2011-10-171-34/+37
| | | | | Indent newly formed blocks, and reflow comments and code to fit in narrower space
* utf8.c: Add 'input pre-folded' flags to foldEQ_utf8_flagsKarl Williamson2011-10-172-0/+26
| | | | | This adds flags so that if one of the input strings is known to already have been folded, this routine can skip the (redundant) folding step.
* regcomp.sym: Add commentsKarl Williamson2011-10-172-8/+8
|
* regcomp.c: White space onlyKarl Williamson2011-10-171-9/+9
| | | | | Indent the newly formed block, and reflow comments for narrower available space.
* regcomp.c: generate folded for EXACTF and EXACTFUKarl Williamson2011-10-173-3/+11
| | | | | | regcomp.c folds the string in these two nodes except in one case. Change that case to correspond with the predominant behavior. This enables future optimizations
* regexec.c: Stop looking for match soonerKarl Williamson2011-10-172-2/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a partial reversion of commit 7c1b9f38fcbfdb3a9e1766e02bcb991d1a5452d9 which went unnecessarily far in fixing the problem. After studying the situation some more, I see more clearly what was going on. The point is that if you have only 2 characters left in the string, but the pattern requires 3 to work, it's guaranteed to fail, so pointless, and unnecessary work, to try. So don't being a match trial at a position when there are fewer than the minimum number of characters necessary. That is what the code before that commit did. However it neglected the fact that it is possible for a single character to match multiple ones, so there is not a 1:1 ratio. This new commit assumes the worst possible ratio to calculate how far into a string is the furthest a successful match could start. This is going to in most cases still look too far, but it is much better than always going up to the final character, as the previous patch did. The maximum ratio is guaranteed by Unicode to be 3:1, but when the target isn't in UTF-8, the max is 2:1, determined simply by inspection of the defined folds. And actually, currently, the single case where it isn't 1:1 doesn't come up here, because regcomp.c guarantees that that match doesn't generate one of these EXACTFish nodes. However, I expect that to change for 5.16, and so am preparing for that case by making it 2:1.
* regexec.c: Add commentKarl Williamson2011-10-171-0/+5
|
* utf8.c: Add commentsKarl Williamson2011-10-171-1/+12
|
* pp.c: White space onlyKarl Williamson2011-10-171-16/+15
| | | | | | This outdents a block to the same level as the surrounding text, and reflows the comments to take advantage of the extra space and use fewer lines.
* pp.c: Remove disabled code for context sensitive lcKarl Williamson2011-10-171-70/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | This code was always #ifdef'd out. It would have been used to convert to a Greek final sigma from a non-final one, depending on context. The problem is that we can't know algorithmically if a final sigma is in order or not. I excerpt this quote, that I find persuasive, from correspondence from Father Chrysostomos, who knows Greek: "I cannot see how any algorithm can know to get it right. "The letter σ (or Σ in capitals) represents the number 200 in Greek numerals. Those are not just ancient Greek numerals, but are used on a regular basis even in modern Greek. In many printed books ς is used in place of ϛ, which represents the number 6. So if casefolding should change ͵ΑΣʹ to ͵αςʹ, or if an output layer changes ͵ασʹ similarly, it will be changing the number (from 1200 to 1006). You can’t get around it by checking for the Greek numeral sign (ʹ), as sometimes the tonos (΄), oxeia (´), or even the ASCII straight quote is used. And often in lists or chapter titles a dot is used instead of numeral sign. "Also, σ is commonly used at the ends of abbreviations. Changing ‘βλέπε σ. 16’ (‘see page 16’) to ‘βλέπε ς. 16’ is not acceptable. "So, no, I don’t think a programming language should be fiddling with σ versus ς. (A word processor is another matter.)"
* regexec.c: omit goto for the common caseKarl Williamson2011-10-171-13/+13
| | | | | | | The structure of this code is that initial setup is done and then gotos or fall-through used to join for the main logic. This commit just moves a block, without logic changes, so that the more common case has a fall-through instead of a goto.
* Make HvENAME** macros smaller and more efficientH.Merijn Brand2011-10-171-3/+3
| | | | | | | | | | | | | Brian's comments: if xhv_name_count == 1, HvENAME_HEK_NN returns null. So there's no need to use that macro twice. Just check for -1 The real need to make these smaller is the fact that some precompilers (e.g. HP-UX 10.20) cannot cope with the size these have grown to. The precompiler has since got an option (-Hnnn) to increase the macrospace but that option never made it to these old compilers. Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
* in op_dump() / -Dx, replace "DONE" with "NULL"David Mitchell2011-10-171-1/+1
| | | | | | When displaying op_next, it currently shows a null value as "DONE", which while meaningful on a completely compiled tree, is confusing on a partially-built tree, where multiple ops may have an op_next of null.
* simplify op_dump() / -Dx sequencingDavid Mitchell2011-10-174-112/+17
| | | | | | | | | | | | | | | | Currently, whenever we dump an op tree, we first call sequence(), which walks the tree, creating address => sequence# mappings in PL_op_sequence. Then when individual ops or op-next fields are displayed, the sequence is looked up. Instead, do away with the initial walk, and just map addresses on request. This simplifies the code. As a deliberate side-effect, it no longer assigns a seq# of zero to null ops. This makes it easer to work out what's going on when you call op_dump() during a debugging session with partially constructed op-trees. It also removes the ambiguity in "====> 0" as to whether op_next is NULL or just points to an op_null.
* document boolSV(), which is used in the default typemapTony Cook2011-10-171-0/+10
|
* perldelta: Mention another thing fixed by 2fc49ef14cFather Chrysostomos2011-10-161-0/+5
|
* cv.h: comment typoFather Chrysostomos2011-10-161-1/+1
| | | | Commit 7c60e434 removed the ‘match’.
* Restore null checks to stashpv_hvname_match [perl #101430]Father Chrysostomos2011-10-161-0/+2
| | | | | | Commit aa33328e8 inadvertently removed the null checks from stashpv_hvname_match when adding UTF8 support, resulting in crashes it List::Gen’s test suite.
* Document calling convention for XS cmp routinesFather Chrysostomos2011-10-161-0/+4
|
* Add email addr to AUTHORS to keep tests quietFather Chrysostomos2011-10-151-1/+1
|
* Increase $File::DosGlob::VERSION from 1.04 to 1.05Father Chrysostomos2011-10-151-1/+1
|
* fix a typo in a commentThorsten Glaser2011-10-151-1/+1
| | | | | | someone already fixed the expanshions but kept the preformed on the same line Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
* Correct comment in pad.cFather Chrysostomos2011-10-151-1/+1
| | | | It said exactly the opposite of what was meant.
* perldelta up to c19fd8b40Father Chrysostomos2011-10-151-2/+96
|
* Test uninit warnings for undef XS cmp retvalsFather Chrysostomos2011-10-152-1/+15
|
* Make XS sort routines work againFather Chrysostomos2011-10-154-5/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These stopped working when the CvROOT and CvXSUB fields were merged in 5.10.0: $ perl5.8.9 -le 'print sort utf8::is_utf8 2,1' Usage: utf8::is_utf8(sv) at -e line 1. $ perl5.10.0 -le 'print sort utf8::is_utf8 2,1' 12 (In the latter case, the utf8::is_utf8 routine is not being called.) pp_sort has this: if (!(cv && CvROOT(cv))) { if (cv && CvISXSUB(cv)) { But CvROOT is the same as CvXSUB, so that block is never entered for XSUBs, so this piece of code later on: if (is_xsub) PL_sortcop = (OP*)cv; else PL_sortcop = CvSTART(cv); sets PL_sortcop to CvSTART for XSUBs, but CvSTART is NULL. Later on, this if condition fails: if (PL_sortcop) { so the XSUB is treated as being absent.