This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
PATCH: [perl #112530] Panic with inversion lists
authorKarl Williamson <public@khwilliamson.com>
Thu, 19 Apr 2012 16:27:29 +0000 (10:27 -0600)
committerKarl Williamson <public@khwilliamson.com>
Mon, 23 Apr 2012 17:01:02 +0000 (11:01 -0600)
commit9d5011335690399fe873561a4a77839f45fa7868
treede182eac3427f9a84f6f3729d902fbf20f8fbf20
parent3e91afe7b6982dfdf3dd108109d27df39fd1dd5a
PATCH: [perl #112530] Panic with inversion lists

The code assumed that all property definitions would be well-formed,
meaning, in part, that they would be numerically sorted by code point,
with each range disjoint from all others.  So, the code was just
appending each range as it is found to the inversion list it is
building.

This assumption is true for all definitions generated by mktables, but
it might not be true for user-defined ones.  The solution is merely to
change from calling the function that appends to instead call the
existing function that handles the more general case.

However, that function was not previously used outside the file it was
defined in, so must now be made public.  Also, this whole interface is
considered volatile, so the names of the public functions in it begin
with an underscore to further discourage XS writers from using them.
Therefore the more general add function is renamed to begin with an
underscore.

And, the append function is no longer needed outside the file it is
defined in, so again to keep XS writers from using it, this commit makes
it static.
embed.fnc
embed.h
proto.h
regcomp.c
t/re/pat_advanced.t
utf8.c