In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/e5860534bf7ec7cb8c8e4b6211178d1d1369e13d?hp=f689ad3712ab49cc145f08ba0540043ee9ce5cdc>
- Log ----------------------------------------------------------------- commit e5860534bf7ec7cb8c8e4b6211178d1d1369e13d Author: Karl Williamson <[email protected]> Date: Wed Nov 26 14:01:43 2014 -0700 dump.c: Clarify pod M dump.c commit 832ecee3c089e94a3cf1f6024c62f415df40f0cd Author: Karl Williamson <[email protected]> Date: Sat Nov 29 22:40:34 2014 -0700 perly.c: Fix off-by-1 error for EBCDIC platforms Code point 255 was being omitted in the translation. It's better to use the macro (that has it correctly) and avoid a redundant copy of the test. M perly.c ----------------------------------------------------------------------- Summary of changes: dump.c | 6 +++--- perly.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dump.c b/dump.c index 5f2b07e..fc98ccd 100644 --- a/dump.c +++ b/dump.c @@ -107,9 +107,9 @@ will also be escaped. Normally the SV will be cleared before the escaped string is prepared, but when PERL_PV_ESCAPE_NOCLEAR is set this will not occur. -If PERL_PV_ESCAPE_UNI is set then the input string is treated as Unicode, +If PERL_PV_ESCAPE_UNI is set then the input string is treated as UTF-8 if PERL_PV_ESCAPE_UNI_DETECT is set then the input string is scanned -using C<is_utf8_string()> to determine if it is Unicode. +using C<is_utf8_string()> to determine if it is UTF-8. If PERL_PV_ESCAPE_ALL is set then all input chars will be output using C<\x01F1> style escapes, otherwise if PERL_PV_ESCAPE_NONASCII is set, only @@ -147,7 +147,7 @@ Perl_pv_escape( pTHX_ SV *dsv, char const * const str, STRLEN wrote = 0; /* chars written so far */ STRLEN chsize = 0; /* size of data to be written */ STRLEN readsize = 1; /* size of data just read */ - bool isuni= flags & PERL_PV_ESCAPE_UNI ? 1 : 0; /* is this Unicode */ + bool isuni= flags & PERL_PV_ESCAPE_UNI ? 1 : 0; /* is this UTF-8 */ const char *pv = str; const char * const end = pv + count; /* end of string */ octbuf[0] = esc; diff --git a/perly.c b/perly.c index 034a1a7..44d6ce6 100644 --- a/perly.c +++ b/perly.c @@ -325,8 +325,8 @@ Perl_yyparse (pTHX_ int gramtype) * on a platform that doesn't use ASCII, this translation back would need to be * removed */ # ifdef EBCDIC - if (parser->yychar >= 0 && parser->yychar < 255) { - parser->yychar = NATIVE_TO_LATIN1(parser->yychar); + if (parser->yychar >= 0) { + parser->yychar = NATIVE_TO_UNI(parser->yychar); } # endif } -- Perl5 Master Repository
