In perl.git, the branch blead has been updated <https://perl5.git.perl.org/perl.git/commitdiff/05d49a9a9b7c8a3b3a1d1b4f1ce46db05b04dcbc?hp=045325615467f1c1f009faca5f22887c8c0724b5>
- Log ----------------------------------------------------------------- commit 05d49a9a9b7c8a3b3a1d1b4f1ce46db05b04dcbc Author: Karl Williamson <[email protected]> Date: Wed Apr 3 12:06:47 2019 -0600 t/charset_tools.pl: Add comments commit 83f3439aaa8b2e2319b22c3dea40b3d106dac084 Author: Karl Williamson <[email protected]> Date: Wed Apr 3 14:27:00 2019 -0600 newlocale() has a problem in openbsd And therefore we can't use it, until fixed. https://marc.info/?l=openbsd-bugs&m=155364568608759&w=2 commit 164119678ab7a73b539f77dbade92b9d1b4b96fd Author: Karl Williamson <[email protected]> Date: Wed Apr 3 14:31:05 2019 -0600 numeric.c: Change formal parameter to be const as embed.fnc says it should be ----------------------------------------------------------------------- Summary of changes: hints/openbsd.sh | 5 +++++ numeric.c | 2 +- t/charset_tools.pl | 6 ++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/hints/openbsd.sh b/hints/openbsd.sh index 6c366ec2d0..66db8e2ce1 100644 --- a/hints/openbsd.sh +++ b/hints/openbsd.sh @@ -150,4 +150,9 @@ case "$openbsd_distribution" in ;; esac +# openbsd has a problem regarding newlocale() +# https://marc.info/?l=openbsd-bugs&m=155364568608759&w=2 +# which is being fixed. In the meantime, forbid POSIX 2008 locales +d_newlocale="$undef" + # end diff --git a/numeric.c b/numeric.c index 710653053f..9ccb808a4a 100644 --- a/numeric.c +++ b/numeric.c @@ -1402,7 +1402,7 @@ Perl_my_atof2(pTHX_ const char* orig, NV* value) } char* -Perl_my_atof3(pTHX_ const char* orig, NV* value, STRLEN len) +Perl_my_atof3(pTHX_ const char* orig, NV* value, const STRLEN len) { const char* s = orig; NV result[3] = {0.0, 0.0, 0.0}; diff --git a/t/charset_tools.pl b/t/charset_tools.pl index 6e88a37531..877cead0fa 100644 --- a/t/charset_tools.pl +++ b/t/charset_tools.pl @@ -164,6 +164,12 @@ for (my $i = 0; $i < 256; $i++) { $native_to_i8[$i8_to_native[$i]] = $i; } +# Use these to convert to/from UTF-8 bytes. I8 is the encoding that +# corresponds to UTF-8 with start bytes, continuation bytes, and invariant +# bytes. UTF-EBCDIC is derived from this by a mapping which causes things +# like the start byte C5 to map to something else, as C5 is actually an 'E' in +# EBCDIC so can't be a real start byte, as it must be an invariant; and it +# maps 0x45 (an ASCII 'E') to C5. *I8_to_native = ($::IS_ASCII) ? sub { return shift } : sub { return join "", map { chr $i8_to_native[ord $_] } -- Perl5 Master Repository
