This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Merge branch 'bring unicode properties into core' into blead
authorKarl Williamson <khw@cpan.org>
Fri, 20 Apr 2018 07:12:22 +0000 (01:12 -0600)
committerKarl Williamson <khw@cpan.org>
Fri, 20 Apr 2018 07:12:22 +0000 (01:12 -0600)
Most \p{} constructs will now use inversion lists compiled into core.
This significantly lowers the start up cost of using Unicode properties.
The theory is that the properties not used will stay paged out by the
operating system.

Certain constructs continue to use the old mechanism.  The design here
is that if a property is not found, the old mechanism is used as a
fail safe.  In particular,

1) if the property name is invalid, this new system won't find it, and
   the old system will be invoked, and also won't find it, and the
   compilation will abort.

2) This new system does not handle user-defined properties, so the old
   mechanism will be used for those

3) In the numeric_value property (nv), if the input is not in canonical
   form, this new mechanism won't find it, and the old system will be
   used.  "3/4" is in canonical form, so the new system will be used;
   but "6/8" and 0.75 are not, so the old system will be used.


Trivial merge