summaryrefslogtreecommitdiffstats
path: root/generic/tclCompExpr.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2020-04-24 20:51:14 (GMT)
committerdgp <dgp@users.sourceforge.net>2020-04-24 20:51:14 (GMT)
commite41fff474338362ada285b42e9da856ba6502903 (patch)
tree53f915447a76f507afe28c74a3fe9d78a2069c4a /generic/tclCompExpr.c
parent9b3252ab93bb1eda4a7f82664832fb03a04b41b9 (diff)
parentfbfa513c23b05ae5deeaa0ff81ce8045967890c0 (diff)
downloadtcl-e41fff474338362ada285b42e9da856ba6502903.zip
tcl-e41fff474338362ada285b42e9da856ba6502903.tar.gz
tcl-e41fff474338362ada285b42e9da856ba6502903.tar.bz2
Merge 8.5. Failing tests need examination and adjustment.
Diffstat (limited to 'generic/tclCompExpr.c')
-rw-r--r--generic/tclCompExpr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/generic/tclCompExpr.c b/generic/tclCompExpr.c
index ed4e958..4390282 100644
--- a/generic/tclCompExpr.c
+++ b/generic/tclCompExpr.c
@@ -1885,6 +1885,7 @@ ParseLexeme(
{
const char *end;
int scanned;
+ Tcl_UniChar ch;
Tcl_Obj *literal = NULL;
unsigned char byte;
@@ -2063,13 +2064,13 @@ ParseLexeme(
if (!TclIsBareword(*start) || *start == '_') {
if (Tcl_UtfCharComplete(start, numBytes)) {
- scanned = TclUtfNext(start) - start;
+ scanned = Tcl_UtfToUniChar(start, &ch);
} else {
char utfBytes[TCL_UTF_MAX];
memcpy(utfBytes, start, (size_t) numBytes);
utfBytes[numBytes] = '\0';
- scanned = TclUtfNext(utfBytes) - utfBytes;
+ scanned = Tcl_UtfToUniChar(utfBytes, &ch);
}
*lexemePtr = INVALID;
Tcl_DecrRefCount(literal);