aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2012-02-24 14:48:13 +1000
committerSteve Bennett <steveb@workware.net.au>2012-02-24 14:48:13 +1000
commita557e8657e175d4d20200d0653672141779b1a2e (patch)
treef48690dbd67418c49d816be341d321264ac6d08a
parenteceb6f6c626df0a4e80455036f551980a1321d82 (diff)
downloadjimtcl-a557e8657e175d4d20200d0653672141779b1a2e.zip
jimtcl-a557e8657e175d4d20200d0653672141779b1a2e.tar.gz
jimtcl-a557e8657e175d4d20200d0653672141779b1a2e.tar.bz2
Enabled optimised dict -> list conversion
Especially since it preserves source info Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r--jim.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/jim.c b/jim.c
index b7a9dfc..8a80a50 100644
--- a/jim.c
+++ b/jim.c
@@ -6083,8 +6083,10 @@ static int SetListFromAny(Jim_Interp *interp, struct Jim_Obj *objPtr)
return JIM_OK;
}
-#if 0
- /* Optimise dict -> list. XXX: Is it worth it? */
+ /* Optimise dict -> list. Note that this may only save a little time, but
+ * it also preserves any source location of the dict elements
+ * which can be very useful
+ */
if (Jim_IsDict(objPtr)) {
Jim_Obj **listObjPtrPtr;
int len;
@@ -6104,7 +6106,6 @@ static int SetListFromAny(Jim_Interp *interp, struct Jim_Obj *objPtr)
return JIM_OK;
}
-#endif
/* Try to preserve information about filename / line number */
if (objPtr->typePtr == &sourceObjType) {