diff options
author | dgp <dgp@noemail.net> | 2009-09-04 17:33:10 (GMT) |
---|---|---|
committer | dgp <dgp@noemail.net> | 2009-09-04 17:33:10 (GMT) |
commit | 921c483e5a1c9bf8ee15f6a0cd1feccc824762af (patch) | |
tree | bda8162950789931d2ac4e2f18c24f5e1125e2b5 /generic/tclCompile.h | |
parent | a4720a8f427f0b253d5e2142775cdd8136363f1d (diff) | |
download | tcl-921c483e5a1c9bf8ee15f6a0cd1feccc824762af.zip tcl-921c483e5a1c9bf8ee15f6a0cd1feccc824762af.tar.gz tcl-921c483e5a1c9bf8ee15f6a0cd1feccc824762af.tar.bz2 |
* generic/tclCompCmds.c (TclCompileSubstCmd): Added a bytecode
* generic/tclBasic.c: compiler routine for the [subst] command.
* generic/tclCmdMZ.c: This is a partial solution to the need to
* generic/tclCompile.c: NR-enable [subst] since bytecode execution is
* generic/tclCompile.h: already NR-enabled. [Bug 2314561] Two new
* generic/tclExecute.c: bytecode instructions, INST_NOP and
* generic/tclInt.h: INST_RETURN_CODE_BRANCH were added to support
* generic/tclParse.c: the new routine. INST_RETURN_CODE_BRANCH is
* tests/basic.test: likely to be useful in any future effort to
* tests/info.test: add a bytecode compiler routine for [try].
* tests/parse.test:
FossilOrigin-Name: ef0c2ac861f125966f91b34446c47581dd2f535e
Diffstat (limited to 'generic/tclCompile.h')
-rw-r--r-- | generic/tclCompile.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/generic/tclCompile.h b/generic/tclCompile.h index 4d9dbd1..25dec86 100644 --- a/generic/tclCompile.h +++ b/generic/tclCompile.h @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclCompile.h,v 1.118 2009/08/25 21:03:25 andreas_kupries Exp $ + * RCS: @(#) $Id: tclCompile.h,v 1.119 2009/09/04 17:33:11 dgp Exp $ */ #ifndef _TCLCOMPILATION @@ -666,8 +666,12 @@ typedef struct ByteCode { #define INST_EXIST_ARRAY_STK 130 #define INST_EXIST_STK 131 +/* For [subst] compilation */ +#define INST_NOP 132 +#define INST_RETURN_CODE_BRANCH 133 + /* The last opcode */ -#define LAST_INST_OPCODE 131 +#define LAST_INST_OPCODE 133 /* * Table describing the Tcl bytecode instructions: their name (for displaying @@ -893,6 +897,8 @@ MODULE_SCOPE void TclCompileSyntaxError(Tcl_Interp *interp, MODULE_SCOPE void TclCompileTokens(Tcl_Interp *interp, Tcl_Token *tokenPtr, int count, CompileEnv *envPtr); +MODULE_SCOPE void TclCompileVarSubst(Tcl_Interp *interp, + Tcl_Token *tokenPtr, CompileEnv *envPtr); MODULE_SCOPE int TclCreateAuxData(ClientData clientData, const AuxDataType *typePtr, CompileEnv *envPtr); MODULE_SCOPE int TclCreateExceptRange(ExceptionRangeType type, |