summaryrefslogtreecommitdiffstats
path: root/generic/tclStrToD.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2024-09-25 21:45:53 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2024-09-25 21:45:53 (GMT)
commit5a0ecd4f019a6185b275f70eb21501d1ad8fb7a6 (patch)
tree587941c81aec643223475bd2a249956af4c176da /generic/tclStrToD.c
parentcacbee80a96f6ecaf7ff30f238b5820fbc781915 (diff)
downloadtcl-5a0ecd4f019a6185b275f70eb21501d1ad8fb7a6.zip
tcl-5a0ecd4f019a6185b275f70eb21501d1ad8fb7a6.tar.gz
tcl-5a0ecd4f019a6185b275f70eb21501d1ad8fb7a6.tar.bz2
Code de-duplication, move it to TclParseNumber()
Diffstat (limited to 'generic/tclStrToD.c')
-rw-r--r--generic/tclStrToD.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/generic/tclStrToD.c b/generic/tclStrToD.c
index c6778ce..f93c91b 100644
--- a/generic/tclStrToD.c
+++ b/generic/tclStrToD.c
@@ -1525,11 +1525,15 @@ TclParseNumber(
if (status != TCL_OK) {
if (interp != NULL) {
- Tcl_Obj *msg = Tcl_ObjPrintf("expected %s but got \"",
+ Tcl_Obj *msg = Tcl_ObjPrintf("expected %s but got ",
expected);
-
- Tcl_AppendLimitedToObj(msg, bytes, numBytes, 50, "");
- Tcl_AppendToObj(msg, "\"", -1);
+ if (TclMaxListLength(bytes, TCL_INDEX_NONE, NULL) > 1) {
+ Tcl_AppendToObj(msg, "a list", -1);
+ } else {
+ Tcl_AppendToObj(msg, "\"", -1);
+ Tcl_AppendLimitedToObj(msg, bytes, numBytes, 50, "");
+ Tcl_AppendToObj(msg, "\"", -1);
+ }
Tcl_SetObjResult(interp, msg);
Tcl_SetErrorCode(interp, "TCL", "VALUE", "NUMBER", (char *)NULL);
}