* result */
if (is_utf8) {
wchar_t wc;
+ int len;
+
PERL_UNUSED_RESULT(mbtowc(&wc, NULL, 0));/* Reset any shift state */
errno = 0;
- if ((size_t)mbtowc(&wc, HYPHEN_UTF8, strlen(HYPHEN_UTF8))
- != strlen(HYPHEN_UTF8)
+ len = mbtowc(&wc, STR_WITH_LEN(HYPHEN_UTF8));
+
+ if ( len != STRLENs(HYPHEN_UTF8)
|| wc != (wchar_t) 0x2010)
{
is_utf8 = FALSE;
DEBUG_L(PerlIO_printf(Perl_debug_log, "\thyphen=U+%x\n", (unsigned int)wc));
DEBUG_L(PerlIO_printf(Perl_debug_log,
"\treturn from mbtowc=%d; errno=%d; ?UTF8 locale=0\n",
- mbtowc(&wc, HYPHEN_UTF8, strlen(HYPHEN_UTF8)), errno));
+ len, errno));
}
}