diff options
author | dgp <dgp@users.sourceforge.net> | 2013-08-06 04:15:16 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2013-08-06 04:15:16 (GMT) |
commit | b3b497f42cfe1a533488c23fb8dfd706e7bb59a6 (patch) | |
tree | f88d7e06cf4d84b785efd54e3c57abbc059a78f0 /generic/tclInt.h | |
parent | aa01137e0e936cc97ab7ba3c80ab39b7772938f0 (diff) | |
download | tcl-b3b497f42cfe1a533488c23fb8dfd706e7bb59a6.zip tcl-b3b497f42cfe1a533488c23fb8dfd706e7bb59a6.tar.gz tcl-b3b497f42cfe1a533488c23fb8dfd706e7bb59a6.tar.bz2 |
The value TCL_LOCATION_EVAL_LIST in the type field of a CmdFrame appears to
exist only for the sake of taking great pains to make sure that pure list
values remain pure list values.
The value of pure list values is no longer what it once was. For a long long
time now, any canonical list values have been equally good. This branch
is Work In Progress eliminating the complication of the additional type value.
Currently some minor botches are breaking execution tracing tests.
Diffstat (limited to 'generic/tclInt.h')
-rw-r--r-- | generic/tclInt.h | 41 |
1 files changed, 19 insertions, 22 deletions
diff --git a/generic/tclInt.h b/generic/tclInt.h index da09366..1df09b3 100644 --- a/generic/tclInt.h +++ b/generic/tclInt.h @@ -1175,29 +1175,27 @@ typedef struct CmdFrame { * * EXECUTION CONTEXTS and usage of CmdFrame * - * Field TEBC EvalEx EvalObjEx - * ======= ==== ====== ========= - * level yes yes yes - * type BC/PREBC SRC/EVAL EVAL_LIST - * line0 yes yes yes - * framePtr yes yes yes - * ======= ==== ====== ========= + * Field TEBC EvalEx + * ======= ==== ====== + * level yes yes + * type BC/PREBC SRC/EVAL + * line0 yes yes + * framePtr yes yes + * ======= ==== ====== * - * ======= ==== ====== ========= union data - * line1 - yes - - * line3 - yes - - * path - yes - - * ------- ---- ------ --------- - * codePtr yes - - - * pc yes - - - * ======= ==== ====== ========= + * ======= ==== ========= union data + * line1 - yes + * line3 - yes + * path - yes + * ------- ---- ------ + * codePtr yes - + * pc yes - + * ======= ==== ====== * - * ======= ==== ====== ========= | union cmd - * listPtr - - yes | - * ------- ---- ------ --------- | - * cmd yes yes - | - * cmdlen yes yes - | - * ------- ---- ------ --------- | + * ======= ==== ========= union cmd + * str.cmd yes yes + * str.len yes yes + * ------- ---- ------ */ union { @@ -1215,7 +1213,6 @@ typedef struct CmdFrame { const char *cmd; /* The executed command, if possible... */ int len; /* ... and its length. */ } str; - Tcl_Obj *listPtr; /* Tcl_EvalObjEx, cmd list. */ } cmd; int numLevels; /* Value of interp's numLevels when the frame * was pushed. */ |