diff options
author | Karl Williamson <khw@cpan.org> | 2015-05-15 10:59:54 -0600 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2015-09-04 10:21:17 -0600 |
commit | a62b247b9f3d5cc6214f83defea2e06d12398275 (patch) | |
tree | ec2bd2e98a8464e9160031756326688ac8c7b98a /toke.c | |
parent | 635e76f560b3b3ca075aa2cb5d6d661601968e04 (diff) | |
download | perl-a62b247b9f3d5cc6214f83defea2e06d12398275.tar.gz |
Add macro for converting Latin1 to UTF-8, and use it
This adds a macro that converts a code point in the ASCII 128-255 range
to UTF-8, and changes existing code to use it when the range is known to
be restricted to this one, rather than the previous macro which accepted
a wider range (any code point representable by 2 bytes), but had an
extra test on EBCDIC platforms, hence was larger than necessary and
slightly slower.
Diffstat (limited to 'toke.c')
-rw-r--r-- | toke.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -1033,7 +1033,7 @@ Perl_lex_stuff_pvn(pTHX_ const char *pv, STRLEN len, U32 flags) } else { assert(p < e -1 ); - *bufptr++ = TWO_BYTE_UTF8_TO_NATIVE(*p, *(p+1)); + *bufptr++ = EIGHT_BIT_UTF8_TO_NATIVE(*p, *(p+1)); p += 2; } } @@ -2603,7 +2603,7 @@ S_get_and_check_backslash_N_name(pTHX_ const char* s, const char* const e) } s++; } else if (UTF8_IS_DOWNGRADEABLE_START(*s)) { - if (! isALPHAU(TWO_BYTE_UTF8_TO_NATIVE(*s, *(s+1)))) { + if (! isALPHAU(EIGHT_BIT_UTF8_TO_NATIVE(*s, *(s+1)))) { goto bad_charname; } s += 2; @@ -2633,7 +2633,7 @@ S_get_and_check_backslash_N_name(pTHX_ const char* s, const char* const e) s++; } else if (UTF8_IS_DOWNGRADEABLE_START(*s)) { - if (! isCHARNAME_CONT(TWO_BYTE_UTF8_TO_NATIVE(*s, *(s+1)))) + if (! isCHARNAME_CONT(EIGHT_BIT_UTF8_TO_NATIVE(*s, *(s+1)))) { goto bad_charname; } |