This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Steve Hay [Fri, 31 Jul 2015 07:20:18 +0000 (08:20 +0100)]
Upgrade Encode from version 2.75 to 2.76
H.Merijn Brand [Thu, 30 Jul 2015 10:38:52 +0000 (12:38 +0200)]
Add Ivan Pozdeev to AUTHORS
H.Merijn Brand [Thu, 30 Jul 2015 09:08:38 +0000 (11:08 +0200)]
extra guard against spaces in paths (spotted by Ivan Pozdeev)
H.Merijn Brand [Thu, 30 Jul 2015 08:48:51 +0000 (10:48 +0200)]
Consistently use -o a.out (spotted by Ivan Pozdeev)
H.Merijn Brand [Thu, 30 Jul 2015 08:39:07 +0000 (10:39 +0200)]
There is no default dflt for usedtrace (spotted by Ivan Pozdeev)
Tony Cook [Thu, 30 Jul 2015 02:01:17 +0000 (12:01 +1000)]
perldelta for
3480fbaaaea8
Daniel Dragan [Wed, 29 Jul 2015 13:54:51 +0000 (09:54 -0400)]
Cwd.pm, dont repeatedly access magic %ENV vars
%ENV is magic/tied, a lexical is faster than calling out to magic APIs
with gets and sets (or checks for them). Less glob and hash lookups too.
Return the lexical instead of the magic var so there isn't a search for
magic from pp_leavesub's sv_mortalcopy. Even though env mg vtable doesn't
have a getter or GMAGIC, SvVSTRING_mg executes mg_find for random, get
and set magic inside Perl_sv_setsv_flags.
Chris 'BinGOs' Williams [Wed, 29 Jul 2015 13:42:45 +0000 (14:42 +0100)]
Update perlfaq to CPAN version 5.021010
[DELTA]
5.021010
20152015-07-28 18:30:48Z
* Fix typo (Douglas L. Jenkins)
* Fix Time::Seconds example (Niko Tyni)
* Basic README.pod (Shlomi Fish)
Jarkko Hietaniemi [Tue, 28 Jul 2015 23:11:38 +0000 (19:11 -0400)]
Use U64 (a type) instead of U64TYPE (a define).
Builds on top of
16d89be8.
Karl Williamson [Wed, 29 Jul 2015 04:17:01 +0000 (22:17 -0600)]
Allow perl to work again with all Unicode releases
Compiling perl to work with early Unicode releases is a goal, but has
been broken since 5.18. This sequence of commits gets this working
again, actually better than before.
Karl Williamson [Wed, 29 Jul 2015 03:24:40 +0000 (21:24 -0600)]
perldelta entry for mktables changes
Karl Williamson [Wed, 29 Jul 2015 03:19:52 +0000 (21:19 -0600)]
lib/unicore/README.perl: Update
This makes some changes and adds instructions for compiling older
Unicode versions.
Karl Williamson [Wed, 29 Jul 2015 02:52:57 +0000 (20:52 -0600)]
mktables: Minimize use of version numbers for decisions
I found these places where file existence can be used instead of knowing
what version something happened in. Sometimes those numbers are wrong,
and one of these was. If it can be avoided, better not to use version
numbers
Karl Williamson [Wed, 29 Jul 2015 02:34:22 +0000 (20:34 -0600)]
mktables: improve LineBreak table for early Unicodes
It turns out that the generated map files look better (even if
functionally equivalent) if the default mapping is the one to the
above-Unicode code points. This was the only one that had it different.
Karl Williamson [Tue, 28 Jul 2015 21:58:47 +0000 (15:58 -0600)]
mktables: Make sure \p{Space} works in all Unicodes
This isn't defined by Unicode until a later version, but Perl wants it
in all versions.
Karl Williamson [Tue, 28 Jul 2015 21:21:16 +0000 (15:21 -0600)]
mktables: Fix up Name_Alias in early Unicodes
perl needs the Name_Alias property accessible in all releases in order
for charnames to work properly. However the property was not created
until Unicode version 5.0. Previously, the property was made available
to all Unicode versions, which is contrary to the policy of exposing
properties to public use only when Unicode so exposes them. Thus the
behavior is as close as possible to Unicode-specified. This commit
creates an internal-only property for the perl core, and removes the
general access on early Unicode releases.
Karl Williamson [Tue, 28 Jul 2015 04:45:31 +0000 (22:45 -0600)]
mktables: Add handling of WB and SB for early Unicodes
This allows \b{wb} and \b{sb} to work on all Unicode releases. The huge
number of differences in charclass_invlists.h is only because the names
of the SB and WB tables change, and the code automatically
re-alphabetizes things.
Karl Williamson [Mon, 27 Jul 2015 14:12:02 +0000 (08:12 -0600)]
mktables: Fix GCB to work on early Unicodes
The GCB property was not properly being generated in early Unicode
releases. The huge commit diff is due solely to the fact that the name
changes of this property so it is sure to not be accessible outside the
perl core, and the property tables are automatically resorted
alphabetically.
Karl Williamson [Mon, 27 Jul 2015 04:57:51 +0000 (22:57 -0600)]
mktables: Convert Hangul_Syllable_Type to use new early infrastructure
This allows us to remove some special handling.
Karl Williamson [Mon, 27 Jul 2015 04:47:56 +0000 (22:47 -0600)]
mktables: Convert PropValueAliases.txt to use new early infrastructure
This file is crucial to compiling perl these days. This commit converts
to use the new infrastructure for dealing with compiling Unicode
releases prior to when this file was made available.
Karl Williamson [Mon, 27 Jul 2015 04:40:39 +0000 (22:40 -0600)]
mktables: Convert PropertyAliases.txt to use new early infrastructure
This file is crucial to compiling perl these days. This commit converts
to use the new infrastructure for dealing with compiling Unicode
releases prior to when this file was made available.
Karl Williamson [Mon, 27 Jul 2015 04:35:02 +0000 (22:35 -0600)]
mktables: Add code for easier handling of early Unicode versions
This adds infrastructure to the constructor of the Input_file class to
allow an alternative to be specified when compiling a Unicode release
that is earlier than the file first became available.
This is only used when the property is used by core perl and has to work
in all releases. For example the qr/\X/ construct should always work,
but relies on a property that isn't specified before Unicode 4.1. This
allows for easier specification of how to handle this type of case.
Karl Williamson [Mon, 27 Jul 2015 04:18:02 +0000 (22:18 -0600)]
mktables: Use Input_file class for always skipped files
Until this commit there were two mechanisms available to specify files
in the Unicode Character Database are not used by mktables. Now there
is one. The global that contained such files is deleted, and instead
all such files are specified by an Input_file class object. This has
the advantage of just one method, and the constructor already has
parameters to specify when a file first appeared, and when it was
removed. This allows automatic generation of the pod, listing just the
appropriate files for the version being compiled. It also allows for
the automatic check of all files to see that they are DOS 8.3 filesystem
compatible. And it allows for some code simplification.
Unicode specifies some .html files in the UCD. These are always skipped
(so far, and likely forever), and were in the global. Now they are in
the constructor, which means that the code that looks for potential
files that aren't being handled has to be changed to also look for .html
files as well.
Karl Williamson [Mon, 27 Jul 2015 04:25:57 +0000 (22:25 -0600)]
mktables: For 8.3 filesystems, the suffix matters
Two files can have the same file name, but be different if they have
different suffixes. Until this commit, mktables thought they were the
same, because it ignored the suffix when calculating this. Some files
are version strings like "3.1" which look like a floating point number.
These are converted to like "3_1" first so that the .1 doesn't look like
a suffix.
Karl Williamson [Sun, 26 Jul 2015 16:33:21 +0000 (10:33 -0600)]
mktables: Use new infrastructure for optional files
This follows up the previous commit by actually using the new
infrastructure it created. The optional Unihan files are switched to
use the new capabilities. This means that the globals they previously
used are no longer necessary, and are ripped out here.
Karl Williamson [Sun, 26 Jul 2015 16:14:11 +0000 (10:14 -0600)]
mktables: Improve handling of optional files
Some files in the Unicode Character Database are optional for perl.
Currently these are all Unihan files for East Asian languages. This
commit adds infrastructure to the class for input file objects to more
automatically handle the case when the file is present vs not.
Currently, one has to hand edit mktables to cope with the file getting
plunked down in the directory to be compiled. This commit is a step
towards making the editing unnecessary.
Karl Williamson [Mon, 27 Jul 2015 03:30:07 +0000 (21:30 -0600)]
mktables: Add specifiable construction handler for Input_file class
This object is for the files in the Unicode Character Database. This
commit adds the capability for the constructor new() to be passed a code
reference to call after everything else is constructed, but before
control is returned.
Karl Williamson [Sun, 26 Jul 2015 04:35:36 +0000 (22:35 -0600)]
mktables: Unicode has withdrawn some files in the UCD
This adds the capability to mktables to seamlessly handle the case where
Unicode has removed a file from the Unicode Character Database that
existed in prior versions. The constructor for the object tells what
release no longer has it. The file is looked for only when compiling a
Unicode version in the window that had it.
Karl Williamson [Sun, 26 Jul 2015 03:45:46 +0000 (21:45 -0600)]
mktables: Revamp constructor and run method for input objects
Each .txt file that Unicode furnishes as part of the Unicode Character
Database has an object created for it, and there is a run() method to
actually look at the input file and process it. This commit moves some
code from the run() method into the constructor to pave the way for
future commits (hence some of the awkward constructs and indentation in
this one; these minimize the commitdiffs in later ones).
Karl Williamson [Sun, 26 Jul 2015 01:19:05 +0000 (19:19 -0600)]
mktables: Allow multiple eof handlers for input files
The Input_file class is hereby extended so there can be more than one
subroutine stacked to call when an EOF is encountered. This new
capability will be used in later commits. There is no current need for
any outside class to look at this, so that capability is removed.
Karl Williamson [Sun, 26 Jul 2015 01:11:40 +0000 (19:11 -0600)]
mktables: Suppress output files that shouldn't be written
mktables takes files as input as furnished by Unicode, munges things,
and outputs files containing tables that are more suitable for use by
the rest of perl. A placeholder table is one that isn't supposed to be
output, but whose values are needed for internal calculations. Prior to
this commit, those tables were being output.
Karl Williamson [Sun, 26 Jul 2015 01:04:03 +0000 (19:04 -0600)]
mktables: Rmv extraneous sub return value
The return value of this function isn't looked at.
Karl Williamson [Sun, 26 Jul 2015 00:57:13 +0000 (18:57 -0600)]
mktables: Handle default for Gc property better
Unicode changed the default name they specify in their data from the
abbreviation to the long form in version 7
Karl Williamson [Sun, 26 Jul 2015 00:52:37 +0000 (18:52 -0600)]
mktables: Handle \b{gcb}, \X better in Unicode 1
The Hangul syllables in version 1 of Unicode were withdrawn and replaced
with the ones we know in version 2. Should perl ever be compiled on
version 1, this commit causes the old syllables to work better than they
do now, though imperfectly. This is used only in the \X and \b{gcb}
constructs.
Karl Williamson [Sat, 25 Jul 2015 04:43:55 +0000 (22:43 -0600)]
mktables: Two files came along later than mktables thinks
NormTest.txt LBTest.txt were really in later releases. This fixes that
and moves each constructor to be in the respective release's group of
files.
Karl Williamson [Fri, 24 Jul 2015 14:44:25 +0000 (08:44 -0600)]
mktables: Use variables for repeated text
This text is actually used to group values in the generated pod. By
using a variable, we make sure it is exact in every usage, so the values
are sure to get grouped properly.
Karl Williamson [Fri, 24 Jul 2015 03:04:03 +0000 (21:04 -0600)]
mktables: Rmv wrong code point in list
This was a typo, but it hasn't done any harm as it is an unassigned code
point, which gets weeded out. Still it has no business being here.
Karl Williamson [Sun, 5 Jul 2015 04:23:41 +0000 (22:23 -0600)]
mktables: Easier debugging
This turns off some inconsequential annoying warnings during certain
debugging situations
Karl Williamson [Sat, 11 Jul 2015 04:09:18 +0000 (22:09 -0600)]
mktables: Remove unused assignment
Karl Williamson [Mon, 27 Jul 2015 04:02:19 +0000 (22:02 -0600)]
mktables: Reindent after prev. commit
That commit added a nesting block, so indent an extra level, and reflow
the text to fit in 79 columns.
Karl Williamson [Sat, 4 Jul 2015 18:01:18 +0000 (12:01 -0600)]
Properly handle the Unicode kIICore property
This property is not included in the standard Perl distribution, but it
is normative in the Unicode Unihan database and perl can be compiled to
include it. This property is currently unique in that it operates much
like how Perl defines string truthfulness: non-empty values are
considered true. That is \p{kIICore} matches all characters which have
a non-empty value for this property, plus the actual values have
meaning that may need to be examined in some circumstances. These can
be retrieved via Unicode::UCD::prop_invmap().
Unicode 7.0 changed this property without my noticing, and went a very
different direction with it than I anticipated. And the perl
interpreter would loop when trying to deal with it under some
circumstances.
This property is true for all 'core' Chinese/Japanese/Korean characters
that every implementation of CJK things should strive to handle, i.e., the
minimally acceptable set, though the values now specify a precedence as
their first letter, A, B, or C (I suppose this means one could implement
just the A level ones first). The remaining letters in each value
encode the standards which were used as the source for the character.
In previous versions of the Standard, every non-null value was the
string "2.1".
Karl Williamson [Sat, 4 Jul 2015 17:43:16 +0000 (11:43 -0600)]
perluniprops: Don't list longer name as shorter
perluniprops has cross references to shorter synonyms for properties.
In the section for the properties accessible by Unicode::UCD (not \p{}),
sometimes the shorter name wasn't actually shorter. This fixes that.
Karl Williamson [Sun, 5 Jul 2015 04:28:05 +0000 (22:28 -0600)]
Unicode::UCD: Handle inverted input
No current input comes inverted, but it could some time in the future,
and we wouldn't know. In one case, it's easy to handle, so do so; in
another, die with a message so won't sneak past. At that point, if and
when it happens, time could be spent figuring out the best way to handle
the situation.
Karl Williamson [Wed, 1 Jul 2015 20:13:21 +0000 (14:13 -0600)]
lib/Unicode/UCD.t: White-space only
Re-indent after the previous commit
Karl Williamson [Sat, 27 Jun 2015 21:43:01 +0000 (15:43 -0600)]
lib/Unicode/UCD.t: Fix to work on older Unicodes
This commit causes this test to pass tests even when run on old
Unicodes, back to 3.0, where it becomes just too much. Most tests
aren't structured to pass on older Unicodes, but it's somewhat important
that this one does.
Karl Williamson [Sat, 27 Jun 2015 21:33:43 +0000 (15:33 -0600)]
Unicode::UCD: Add pod text about old Unicodes
Karl Williamson [Sat, 27 Jun 2015 21:32:49 +0000 (15:32 -0600)]
Unicode::UCD: Handle old Unicode files
The formats of some older Unicode releases can be different than
previously expected.
Karl Williamson [Sat, 27 Jun 2015 21:31:31 +0000 (15:31 -0600)]
Unicode::UCD: Handle old Unicode Blocks file format
Karl Williamson [Sat, 27 Jun 2015 21:26:55 +0000 (15:26 -0600)]
XS-APItest/t/handy.t: Handle early Unicodes
This changes, for properties that aren't defined in all Unicode
versions, to use synonyms that are defined in all. It also better
checks for empty property tables, and knows that the format of some
returns can be different than previously constrained to be.
Karl Williamson [Sat, 27 Jun 2015 21:19:52 +0000 (15:19 -0600)]
regen/mk_invlists.pl: Handle early Unicodes CF
In very early Unicode releases, the case folding table can be in a
different format.
Karl Williamson [Sat, 27 Jun 2015 20:32:15 +0000 (14:32 -0600)]
regen/mk_invlists.pl: White-space only
Reindent after the previous commit introduced an outer block
Karl Williamson [Sat, 27 Jun 2015 20:30:30 +0000 (14:30 -0600)]
regen/mk_invlists.pl: Properly handle empty properties
This failed to adequately handle empty properties; something that wasn't
seen until compiling older Unicode releases.
Karl Williamson [Sat, 27 Jun 2015 20:14:31 +0000 (14:14 -0600)]
regen/mk_PL_charclass.pl: Use names known in all Unicodes
This just changes, for properties that aren't defined in all Unicode
versions, to use synonyms that are defined in all
Karl Williamson [Sat, 27 Jun 2015 20:11:04 +0000 (14:11 -0600)]
regen/regcharclass.pl: Work on early Unicodes
This just changes, for properties that aren't defined in all Unicode
versions, to use synonyms that are defined in all
Karl Williamson [Sat, 27 Jun 2015 19:46:14 +0000 (13:46 -0600)]
mktables: Add new alias status for internal-only
This makes it easier to control whether a synonym for a property value
is shown to and is accessible by users.
Karl Williamson [Fri, 26 Jun 2015 20:17:06 +0000 (14:17 -0600)]
mktables: Get fold generation to work on early Unicodes
CaseFolding.txt isn't present in early Unicodes. For these lowercasing
is used instead. But the format of the lowercasing table isn't quite
the same, so add code to handle the differences.
Karl Williamson [Fri, 26 Jun 2015 19:20:18 +0000 (13:20 -0600)]
mktables: Skip Hangul autogeneration on early Unicodes
Unicode Version 1 used completely different Hangul Syllables, so the
algorithm for the later versions doesn't apply
Karl Williamson [Fri, 26 Jun 2015 18:27:41 +0000 (12:27 -0600)]
mktables: White-space, comment, debugging changes only
This adds comments, fixes up some white space and adds some things to
trace (when enabled)
Karl Williamson [Fri, 26 Jun 2015 18:23:13 +0000 (12:23 -0600)]
mktables: Make surrogates work in all Unicodes
Surrogates aren't in all Unicode releases. This creates a table that is
accessible in all releases, but is empty in those that don't have
surrogates.
Karl Williamson [Fri, 26 Jun 2015 18:14:12 +0000 (12:14 -0600)]
mktables: Fixup Unicode 5.0 propvalue aliases for Blocks
These used an anomalous form in this release only.
Karl Williamson [Fri, 26 Jun 2015 18:12:16 +0000 (12:12 -0600)]
mktables: Add true/false aliases in early Unicodes
Before Unicode 5.0, the aliases for True and False were just assumed,
and not specifically mentioned. This commit adds them for those early
releases.
Karl Williamson [Fri, 26 Jun 2015 17:59:30 +0000 (11:59 -0600)]
utf8_heavy.pl: White-space only
Reindent after previous commit added an outer block
Karl Williamson [Fri, 26 Jun 2015 17:50:18 +0000 (11:50 -0600)]
mktables: Allow strictly named map tables
There are several types of tables generated by mktables. Most are
binary (match) tables, but another class is mapping tables. The names
for these may be loosely matched, but until this commit only the match
tables could have strict matching applied.
Strict matching is used for certain table names where loose could be
ambiguous, and for all names that aren't to be used by anything except
the perl core.
Karl Williamson [Fri, 26 Jun 2015 17:27:49 +0000 (11:27 -0600)]
mktables: Move debugging line out of loop
It should only be printed once, when it does get printed (as it is
usually commented out).
Karl Williamson [Fri, 26 Jun 2015 04:10:22 +0000 (22:10 -0600)]
mktables: Define non-char in all Unicode releases
Perl needs the NChar property to compile, but Unicode did not furnish it
in early releases. This commit will use the Unicode definition if
available, but otherwise computes it itself.
Karl Williamson [Fri, 26 Jun 2015 04:05:54 +0000 (22:05 -0600)]
mktables: Define quotemeta better in early Unicode releases
This property is needed by Perl to compile properly in all Unicode
releases, but Unicode did not furnish data for it in early releases.
Prior to this commit, the definition in such releases was set lazily to
an inaccurate value. But it's not hard to do it correctly.
Karl Williamson [Fri, 26 Jun 2015 03:56:17 +0000 (21:56 -0600)]
mktables: Define PatWS for Unicode versions missing it
This property is used by Perl in all Unicode releases, so needs to be
present in all releases, but Unicode did not define it in early
releases, though it should have the same short definition in all of
them. If there is no Unicode data defining it, hard-code the definition
into mktables.
Karl Williamson [Fri, 26 Jun 2015 03:38:57 +0000 (21:38 -0600)]
mktables: Escape literal "{" in regex
It's now deprecated if we fail to do so.
Karl Williamson [Wed, 24 Jun 2015 18:37:55 +0000 (12:37 -0600)]
regen/mk_PL_charclass.pl: Don't confuse simple with multi folds
On early Unicode releases, this was saying that a character had a simple
fold from above Latin1, whereas it didn't. This was caused by not
keeping the simple folds separate from the multi-character ones.
The solution is to keep a separate data structure for the simple ones.
Karl Williamson [Wed, 29 Jul 2015 03:42:14 +0000 (21:42 -0600)]
f
Karl Williamson [Wed, 24 Jun 2015 17:22:02 +0000 (11:22 -0600)]
Handle Unicode 3.0.1 /i Turkish "i" rules
Actually, there are no special rules for this Unicode release. All the
4 "i" characters are considered equivalent under /i only in this
release. (Upper and lowercase dotted and dotless "i"). This
adds special cases that are only compiled in for that release.
Karl Williamson [Wed, 24 Jun 2015 16:22:07 +0000 (10:22 -0600)]
regen/unicode_constants.pl: Add U+130, +131
These will be used in the next commit
Karl Williamson [Mon, 22 Jun 2015 17:18:48 +0000 (11:18 -0600)]
regen/mk_PL_charclass.pl: Add extra info to debug line
This is currently commented out, but this is helpful during
the times when it is used.
Karl Williamson [Mon, 22 Jun 2015 16:46:39 +0000 (10:46 -0600)]
regen/regcharclass.pl: Handle empty lists
Short circuit the remaining code and return a 0 if the input doesn't
match anything
Karl Williamson [Mon, 22 Jun 2015 16:22:34 +0000 (10:22 -0600)]
lib/locale.t: Fail more gracefully
If a character's name is unknown, say that instead of an unitialized
warning.
Karl Williamson [Mon, 22 Jun 2015 16:06:45 +0000 (10:06 -0600)]
mktables: Handle early Unicodes' script names
These were all caps in early releases
Karl Williamson [Mon, 22 Jun 2015 03:52:58 +0000 (21:52 -0600)]
uc(sharp s) is itself in very early Unicode versions
Karl Williamson [Mon, 22 Jun 2015 03:38:32 +0000 (21:38 -0600)]
There are no folds to multiple chars in early Unicode versions
Several places require special handling because of this, notably for the
lowercase Sharp S, but not in Unicodes before 3.0.1
Karl Williamson [Sun, 21 Jun 2015 00:01:14 +0000 (18:01 -0600)]
Unicode::UCD: Remove dead code
Nothing should get executed after a croak.
Karl Williamson [Sat, 20 Jun 2015 23:20:46 +0000 (17:20 -0600)]
regen/unicode_constants.pl: Generate #defines giving which Unicode version
Future commits will want to take different actions depending on which
Unicode version is being used.
Karl Williamson [Sat, 20 Jun 2015 22:55:49 +0000 (16:55 -0600)]
mktables: Calculate \p{Assigned} earlier in build
Future commits will want this table earlier than it is currently
calculated. This commit also changes one place to use this table.
Karl Williamson [Sat, 20 Jun 2015 22:26:59 +0000 (16:26 -0600)]
t/uni/variables.t: Fix nits in comments
Karl Williamson [Sat, 20 Jun 2015 20:59:14 +0000 (14:59 -0600)]
mktables: Remove redundant test
This test is a duplicate of the one that got us to take this branch to
begin with, so is redundant.
Karl Williamson [Sat, 20 Jun 2015 15:38:45 +0000 (09:38 -0600)]
mktables: White-space only
reindent after removing a surrounding block in the previous commit
Karl Williamson [Sat, 20 Jun 2015 15:33:58 +0000 (09:33 -0600)]
mktables: Move code wrongly inside a block
This would fail to be executed only for very early Unicode versions, so
wasn't a visible bug.
Karl Williamson [Sat, 20 Jun 2015 15:23:32 +0000 (09:23 -0600)]
mktables: Add missing /x
Because of this the pattern didn't match what it was expected to match.
But it only showed up if the Unicode version was an early one.
Karl Williamson [Sat, 20 Jun 2015 15:11:01 +0000 (09:11 -0600)]
mktables: Fix off-by-one error
This only affects when compiling an earlier Unicode version. This
property came along one release earlier than the code thought.
Karl Williamson [Thu, 2 Jul 2015 04:24:26 +0000 (22:24 -0600)]
mktables: Define ok(), needed by a required script.
loc_tools.pl wants this function to be defined.
Karl Williamson [Thu, 2 Jul 2015 04:21:49 +0000 (22:21 -0600)]
mktables: Don't hard-code number of code points
Unicode 1 only had 2**16 code points. It is simple to fix to have a
varying number.
Karl Williamson [Sat, 6 Jun 2015 03:38:58 +0000 (21:38 -0600)]
regcomp.c: Rmv useless 'continue'
This is the final statement of the short loop. It does nothing.
Karl Williamson [Sat, 6 Jun 2015 03:35:22 +0000 (21:35 -0600)]
mktables: Remove unused assignment
Karl Williamson [Fri, 5 Jun 2015 17:13:30 +0000 (11:13 -0600)]
mktables: White-space only
Outdent subroutine that doesn't need to be indented
Karl Williamson [Fri, 5 Jun 2015 05:04:55 +0000 (23:04 -0600)]
mktables: Don't assume a decimal number is hex
This caused invalid data to be generated for early releases of Unicode
for the Lowercase property.
Karl Williamson [Tue, 19 May 2015 19:25:21 +0000 (13:25 -0600)]
Allow Perl to compile and work on Unicode releases without U+1E9E
U+1E9E LATIN CAPITAL LETTER SHARP S is handled specially by Perl,
because of its relationship to the infamous LATIN SMALL LETTER SHARP S,
which folds to 'ss', being the only character whose code point is < 256
to have a multi char fold, and this creates lots of special cases.
But U+1E9E wasn't in all Unicode releases. Because Perl is supposed to
work with any release, we need to be able to compile when this character
isn't defined. In some of those cases we use U+017F (LATIN SMALL LETTER
LONG S instead, which is in all releases.
Karl Williamson [Tue, 19 May 2015 19:31:09 +0000 (13:31 -0600)]
regen/unicode_constants.pl: Skip U+1E9E if not in Unicode version
LATIN CAPITAL LETTER SHARP S is not available in all Unicode releases;
simply skip generating things when it isn't there.
Karl Williamson [Mon, 18 May 2015 19:13:07 +0000 (13:13 -0600)]
mktables: Remove wrong warning message
This warning should not be raised. The extra parameter it warns about
is an indent that is in fact passed on.
Karl Williamson [Wed, 25 Mar 2015 17:23:36 +0000 (11:23 -0600)]
regen/unicode_constants.pl: Fix to work under skip_if_undef
This input flag was not being properly handled.
Karl Williamson [Wed, 25 Mar 2015 17:15:41 +0000 (11:15 -0600)]
regen/unicode_constants.pl: Move comments around
This moves the description of what <DATA> lines should look like to
the __DATA__ line.
Jarkko Hietaniemi [Tue, 28 Jul 2015 12:43:51 +0000 (08:43 -0400)]
I64/U64 should be defined regardless of PERL_CORE.
Only HAS_QUAD matters.
This is old code, originally by yours truly (
6b8eaf93). I think the
PERL_CORE was to protect the inclusion on <inttypes.h>, but that was
not a very good reason or a method even back then.
Ricardo Signes [Tue, 28 Jul 2015 02:30:59 +0000 (22:30 -0400)]
Carp requires parent 0.217 for -norequire
[rt.cpan.org #106036]