summaryrefslogtreecommitdiffstats
path: root/generic/tclDictObj.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2019-04-18 22:57:12 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2019-04-18 22:57:12 (GMT)
commit8b9a3558a42cba96fe30f272517260aef43ec7f8 (patch)
tree746ed45f250192ce777a12d31690f1b0847a5474 /generic/tclDictObj.c
parent9cf9c0a5e5c1bc1e2cf81abce0c91a9acd632977 (diff)
downloadtcl-8b9a3558a42cba96fe30f272517260aef43ec7f8.zip
tcl-8b9a3558a42cba96fe30f272517260aef43ec7f8.tar.gz
tcl-8b9a3558a42cba96fe30f272517260aef43ec7f8.tar.bz2
Compilation for [dict getwithdefault].
Diffstat (limited to 'generic/tclDictObj.c')
-rw-r--r--generic/tclDictObj.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/generic/tclDictObj.c b/generic/tclDictObj.c
index fea4035..f3b0981 100644
--- a/generic/tclDictObj.c
+++ b/generic/tclDictObj.c
@@ -91,8 +91,9 @@ static const EnsembleImplMap implementationMap[] = {
{"filter", DictFilterCmd, NULL, NULL, NULL, 0 },
{"for", NULL, TclCompileDictForCmd, DictForNRCmd, NULL, 0 },
{"get", DictGetCmd, TclCompileDictGetCmd, NULL, NULL, 0 },
- {"getdef", DictGetDefCmd, NULL, NULL, NULL, 0 },
- {"getwithdefault", DictGetDefCmd, NULL, NULL, NULL, 0 },
+ {"getdef", DictGetDefCmd, TclCompileDictGetWithDefaultCmd, NULL,NULL,0},
+ {"getwithdefault", DictGetDefCmd, TclCompileDictGetWithDefaultCmd,
+ NULL, NULL, 0 },
{"incr", DictIncrCmd, TclCompileDictIncrCmd, NULL, NULL, 0 },
{"info", DictInfoCmd, TclCompileBasic1ArgCmd, NULL, NULL, 0 },
{"keys", DictKeysCmd, TclCompileBasic1Or2ArgCmd, NULL, NULL, 0 },
@@ -2085,11 +2086,9 @@ DictExistsCmd(
return TCL_ERROR;
}
- dictPtr = TclTraceDictPath(interp, objv[1], objc-3, objv+2,
- DICT_PATH_EXISTS);
- if (dictPtr == NULL || dictPtr == DICT_PATH_NON_EXISTENT
- || Tcl_DictObjGet(interp, dictPtr, objv[objc-1],
- &valuePtr) != TCL_OK) {
+ dictPtr = TclTraceDictPath(NULL, objv[1], objc-3, objv+2,DICT_PATH_EXISTS);
+ if (dictPtr == NULL || dictPtr == DICT_PATH_NON_EXISTENT ||
+ Tcl_DictObjGet(NULL, dictPtr, objv[objc-1], &valuePtr) != TCL_OK) {
Tcl_SetObjResult(interp, Tcl_NewBooleanObj(0));
} else {
Tcl_SetObjResult(interp, Tcl_NewBooleanObj(valuePtr != NULL));