summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Allow [[:blank:]] to work under localeKarl Williamson2012-02-093-5/+15
| | | | | | This takes advantage of the recently added Configure probe, and if the platform has an isblank library function, calls that under locale. This now matches the documentation
* Use system isascii() when available under localeKarl Williamson2012-02-093-2/+15
| | | | | | | We have code that assumes that ASCII should be locale dependent, but it was missing its final link. This supplies that, and makes the code work as documented. I thought it better to do that then to document yet another exception.
* regcomp.c: Rmv no-longer used variables and codeKarl Williamson2012-02-091-6/+0
|
* reg_posixcc.t: Add tests for \v, \V, \h, \HKarl Williamson2012-02-091-1/+5
|
* regcomp.c: Use compiled-in inversion listsKarl Williamson2012-02-094-146/+332
| | | | | | | | | This uses the compiled inversion lists to generate Posix character classes and things like \v, \s inside bracketed character classes. This paves the way for future optimizations, and fixes the bug which has no formal bug number that /[[:ascii:]]/i matched non-Ascii characters, such as the Kelvin sign, unlike /\p{ascii}/i.
* Add compile-time inversion lists for POSIX classesKarl Williamson2012-02-096-2/+739
| | | | | | | | | | | | | | These will be used in regcomp.c to replace the existing bit-wise handling of these, enabling subsequent optimizations. These are compiled-in, and hence affect the memory footprint of every program, including those that don't use Unicode. The lists that aren't tiny are therefore currently restricted to only the Latin1 range; anything needed beyond that will have to be read in at execution time, just as before. The design allows for easy conversion from Latin1 to use the full Unicode range, should it be deemed desirable for some or all of these.
* regcomp.c: Use compile-time invlistsKarl Williamson2012-02-094-11/+29
| | | | | | This creates three simple compile-time inversion lists from the data that has been generated in a previous commit, and uses two of them. Three PL_ variables are used to store them.
* Add regen/mk_invlists.pl, charclass_invlists.hKarl Williamson2012-02-095-1/+130
| | | | | | | This will be used to generate compile-time inversion lists in a C hdr file that can be included in programs for initialization speed Three simple inversion lists are included in this initial commit
* regcomp.c: Add ability to have compiled-in inversion listsKarl Williamson2012-02-094-1/+69
| | | | | | | | | This adds a routine that will take a C array and quickly create an inversion list that points to that array. Thus the array had better be exactly the internal form that is required for an inversion list. To make sure that this doesn't get out of sync, a new field in the list's header is created that is a combination of version-number/inversion-list-type.
* handy.h: Add commentKarl Williamson2012-02-091-0/+4
|
* t/re/re_tests: Add Todo testKarl Williamson2012-02-091-0/+2
| | | | | | This bug was spotted by Tom Christiansen, but no bug report has been written. /[[:ascii:]]/i should match the same set of code points as /\p{ASCII}/i. But it is matching things outside the ASCII range
* regcomp.c: Use new complement unionKarl Williamson2012-02-091-12/+4
| | | | | | Previous commits have changed the API of invlist_union so the first parameter can be NULL, and are to take the complement of the 2nd. We can take advantage of that to simplify this code.
* regcomp.c: Add ability to take union of a complementKarl Williamson2012-02-095-11/+62
| | | | | | | | | Previous commits have added the ability to the inversion list intersection routine to take the complement of one of its inputs. Likewise, for unions, this will be a frequent paradigm, and it is cheaper to do the complement of an input in the routine than to construct a new temporary that is the desired complement, and throw it away.
* regcomp.c: _invlist_subtract() becomes a macroKarl Williamson2012-02-095-46/+7
| | | | | | This function is no longer necessary, as it is just a call to the newly created _invlist_intersection_maybe_complement_2nd() with the correct parameters.
* regcomp.c: Add ability to take intersection of complementKarl Williamson2012-02-095-12/+70
| | | | | | | | | | | | | It turns out that it is a common paradigm to want to take the intersection of an inversion list with the complement of another inversion list. In fact, this is the how to subtract the second inversion list from the first, as what remains in the first after the subtraction is everything in it that is not in the second. It also turns out that it adds very few cycles to an intersection to complement one (or both, should we choose to) of the operands. By adding this capability, we don't have to create a copy of the inverted operand beforehand, just to throw it away.
* regcomp.c: Use NULL first parameter to _invlist_unionKarl Williamson2012-02-091-6/+1
| | | | | A previous commit has changed _invlist_union() to accept a NULL first parameter. This takes advantage of that to simplify some code.
* regcomp.c: Chg invlist_union() to accept NULL first paramKarl Williamson2012-02-093-7/+9
| | | | | | | It is common in a loop to keep adding inversion lists to a current running total. But the first time through, the current union list needs to be initialized from NULL. This puts that code in the function instead of the callers each having to do it.
* Add new email address for Reini UrbanReini Urban2012-02-091-1/+1
|
* Silence compiler warningsRobin Barker2012-02-094-8/+2
| | | | | | | Cf. RT #110208. - Remove missing unused variables: op.c, regcomp.c - Silence -Wformat type error: sv.c - Cast first part of (,) expression as (void): gv.c
* README.cygwin now has fewer pod issues, update known_pod_issues.dattonyc/cygnotesTony Cook2012-02-091-1/+1
|
* add Cygwin::sync_winenv [perl #110190]Reini Urban2012-02-092-0/+14
| | | | | | Cygwin::sync_winenv should fix [CPAN #65052], ADODB missing %COMMONPROGRAMFILES%. sync_winenv code and solution by Chris Day.
* Revise perlcygwin.pod for cygwin-1.7Reini Urban2012-02-091-77/+61
| | | | | | | cygwin does not support windows prior NT5 anymore. cygwin paths are now all UTF8 encoded, special pathname characters and names are now allowed. Removed outdated cruft and fix wrong parts.
* Update Module-Metadata to CPAN version 1.000009Chris 'BinGOs' Williams2012-02-084-16/+35
| | | | | | | | | | [DELTA] 1.0.9 2012-02-08 12:00:00 - API of 'provides' changed to require a 'version' argument to future proof the function against CPAN Meta Spec changes (DAGOLDEN) - Fatal errors now use 'croak' instead of 'die'; Carp added as prerequisite (DAGOLDEN)
* Clean up Pod::Html's cache as part of distclean on *nix.Nicholas Clark2012-02-083-2/+1
| | | | | | This has been done on win32 since commit b4a415570dc258dd in 2006. However, the new Pod::Html caching code only uses one file, pod2htmd.tmp, so remove now redundant cleanup code for pod2htmi.tmp.
* Move lib/Pod/t/eol.t to ext/Pod-Html, as it's testing Pod::Html.Nicholas Clark2012-02-083-2/+1
|
* Convert triplicated code in lib/Pod/t/eol.t to a loop.Nicholas Clark2012-02-081-37/+13
|
* Refactor lib/Pod/t/eol.tNicholas Clark2012-02-081-38/+39
| | | | | | | | | * use variables for the names of temporary files * use lexicals for file handles * check the return value of close * use is() rather than ok() with == [possibly still dubious that it's using unpack checksums for comparison, instead of SHAs or simply File::Compare]
* The cleanup code in lib/Pod/t/eol.t needs updating to track Pod::Html changes.Nicholas Clark2012-02-081-2/+1
| | | | | | eol.t gained code to clean up temporary files it generated as part of commit 0ec158f4b0db050a in 2002. The temporary file names used by Pod::Html were changed by commit 33869856bc668ad8 in 2003, but eol.t had never been updated.
* Add PERL_RELOCATABLE_INCPUSH to PL_non_bincompat_options, and hence -V output.Nicholas Clark2012-02-081-0/+3
| | | | | | | | PERL_RELOCATABLE_INCPUSH was added in commit f31c6eed22759301. As it causes a small specific behaviour change that isn't visible in any other configuration option, it seems useful to indicate that the perl binary has been compiled with it, to aid debugging. (Specifically, debugging of "Why isn't this working?" when it failed to be enabled.)
* Update Parse-CPAN-Meta to CPAN version 1.4402Chris 'BinGOs' Williams2012-02-084-12/+19
| | | | | | | [DELTA] 1.4402 Tue Feb 07 2012 - Minor maintenance: standardized newlines to Unix style
* Update CPAN-Meta-YAML to CPAN version 0.007Chris 'BinGOs' Williams2012-02-083-5/+5
| | | | | | | | | | [DELTA] 0.007 2012-02-07 22:42:42 EST5EDT - Generated from ADAMK/YAML-Tiny-1.50.tar.gz - Documentation fix to replace missing abstract
* Update Module-Metadata to CPAN version 1.000008Chris 'BinGOs' Williams2012-02-084-7/+174
| | | | | | | | [DELTA] 1.0.8 2012-02-07 22:30:00 - Adds 'provides' method to generate a CPAN META provides data structure correctly; use of package_versions_from_directory is discouraged (DAGOLDEN)
* fix cygwin -Uuseithreads hintsReini Urban2012-02-081-1/+1
| | | | | Before -Uuseithreads resulted in a threaded perl. Now -Uuseithreads and -Uusethreads DWIM
* is_duplicate_pod() and get_pod_metadata() in pod_lib.pl modified $_smoke-me/bleadNicholas Clark2012-02-071-0/+2
| | | | | | | Reported by Reini Urban in RT #110078, installperl generated a warning and failed to install CORE.pod, because is_duplicate_pod() modified $_ is_duplicate_pod() and get_pod_metadata() now both localise $_, to ensure that they don't corrupt any caller's state.
* avoid making a new top-level package for one helperRicardo Signes2012-02-071-22/+11
|
* Update CPAN-Meta-YAML to CPAN version 0.006Chris 'BinGOs' Williams2012-02-073-5/+10
| | | | | | | | | | | [DELTA] 0.006 2012-02-06 20:51:47 EST5EDT - Generated from ADAMK/YAML-Tiny-1.50.tar.gz - Set back configure_requires prerequisite for ExtUtils::MakeMaker from 6.30 to 6.17 (per request from Andreas Koenig)
* in Carp, fix circular dep on Perl 5.6Zefram2012-02-073-0/+21
| | | | | | The circular dependency between Carp and warnings was causing trouble with new versions of Carp against very old versions of warnings (versions that were bundled with Perl 5.6). No functional effect on blead.
* add an alias for marcg's other emailRicardo Signes2012-02-061-0/+1
|
* Fix portability issue with Pod::Html test caseMarc Green2012-02-061-2/+2
|
* Modernize the use of open() (copied from old code)Marc Green2012-02-061-6/+6
|
* Update MANIFESTMarc Green2012-02-061-0/+2
|
* Re-add cache featureMarc Green2012-02-064-14/+209
| | | | | ./installhtml was unacceptably slow without pod2html caching, so this commit re-adds it.
* note which releases have shippedRicardo Signes2012-02-061-25/+19
| | | | | | | this is to make it easier to scan and find which release is the next unscheduled, unshipped one, so we (I) can see how far off we have scheduled and whether a next volutneer needs to be volunteered
* Document the special meaning of "indir" on the shebang lineRafael Garcia-Suarez2012-02-061-5/+6
|
* sync version.pm code with CPANDavid Golden2012-02-054-18/+20
| | | | | | Applied patch from John Peacock, but added whitespace fixes, corrected pod link error and updated known Pod issues to reflect a fix.
* In t/porting/authors.t, correct a typo in the git log format string.Nicholas Clark2012-02-051-1/+1
| | | | | The format added in commit 3ea0c581844689ab had a typo - %cn (committer name) used instead of %ce (committer e-mail).
* In bisect-runner.pl, don't set $defines{cc} if printing usage messages.Nicholas Clark2012-02-051-1/+9
| | | | | | ccache isn't needed to print a usage message. The current heuristic for detecting ccache is noisy if it fails, which interferes with any usage or error output.
* bisect.pl --help should show the full documentation, not just the usage.Nicholas Clark2012-02-051-1/+1
| | | | | | | The initial paragraphs of documentation are actually more useful than most of the options documentation. So show them too. Suggested by David Leadbeater.
* warnings.pm docs: clarify categories are in perllexwarnDavid Golden2012-02-042-2/+4
|
* Unicode::UCD move =item in podKarl Williamson2012-02-041-38/+38
| | | | | This merely moves a whole=item to another place, in preparation for future commits