| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* generic/tclParse.c: wrapper around TclNRSubstObj(). This has
* tests/basic.test: the effect of caching compiled bytecode in
* tests/parse.test: the value to be substituted. Note that
Tcl_SubstObj() now exists only for extensions. Tcl itself no longer
makes any use of it. Note also that TclSubstTokens() is now reachable
only by Tcl_EvalEx() and Tcl_ParseVar() so tests aiming to test its
functioning needed adjustment to still have the intended effect.
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdMZ.c: [Bug 2314561].
* generic/tclCompCmds.c:
* generic/tclCompile.c:
* generic/tclInt.h:
* tests/coroutine.test:
* tests/parse.test:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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:
|
|
|
|
| |
literals.
|
|
|
|
| |
expanded literals.
|
|
|
|
|
| |
* tests/parse.test: numLevel management and TclInterpReady check
seems to be necessary after all.
|
|
|
|
| |
[Bug 2017583]
|
| |
|
|
|
|
|
|
|
| |
* tests/parse.test (parse-15.60): routine has no mechanism to
return the "incomplete" status of "\\\n" so calling this routine
anywhere that can be reached within a Tcl_ParseCommand() call is a
mistake. In particular, ParseComment() must not use it. [Bug 1968882].
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: TCL_TOKEN_EXPAND_WORD tokens representing
* generic/tclCompile.h: expanded literal words. These sections were
mostly in place to enable [info frame] to discover line information
in expanded literals. Since the parser now generates a token for
each post-expansion word referring to the right location in the
original script string, [info frame] gets all the data it needs.
* generic/tclInt.h: Revised the parser so that it never produces
* generic/tclParse.c: TCL_TOKEN_EXPAND_WORD tokens when parsing an
* tests/parse.test: expanded literal word; that is, something like
{*}{x y z}. Instead, generate the series of TCL_TOKEN_SIMPLE_WORD
tokens to represent the words that expansion of the literal string
produces. [RFE 1725186]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/fconfigure.n, doc/interp.n, doc/unknown.n:
* library/auto.tcl, library/init.tcl, library/package.tcl:
* library/safe.tcl, library/tm.tcl, library/msgcat/msgcat.tcl:
* tests/all.tcl, tests/basic.test, tests/cmdInfo.test:
* tests/compile.test, tests/encoding.test, tests/execute.test:
* tests/fCmd.test, tests/http.test, tests/init.test:
* tests/interp.test, tests/io.test, tests/ioUtil.test:
* tests/iogt.test, tests/namespace-old.test, tests/namespace.test:
* tests/parse.test, tests/pkg.test, tests/pkgMkIndex.test:
* tests/proc.test, tests/reg.test, tests/trace.test:
* tests/upvar.test, tests/winConsole.test, tests/winFCmd.test:
* tools/tclZIC.tcl:
* generic/tclParse.c (Tcl_ParseCommand): Replace {expand} with {*}
officially (TIP #293). Leave -DALLOW_EXPAND=0|1 option to keep
{expand} syntax for transition users. [Bug 1589629]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
global variables ::errorInfo, ::errorCode, ::env and
::tcl_platform: many were relying on the alternative lookup in the
global namespace, that feature is tested specifically in namespace
and variable tests.
The modified testfiles are: apply.test, basic.test, case.test,
cmdIL.test, cmdMZ.test, compExpr-old.test, error.test, eval.test,
event.test, expr.test, fileSystem.test, for.test, http.test,
if.test, incr-old.test, incr.test, interp.test, io.test,
ioCmd.test, load.test, misc.test, namespace.test, parse.test,
parseOld.test, pkg.test, proc-old.test, set.test, switch.test,
tcltest.test, thread.test, var.test, while-old.test, while.test.
|
|
|
|
|
| |
Consistent method of calling test constraints, and (try to) move constraint
setup to the top of the test file
|
|
|
|
|
| |
* tests/parse.test: simplify TclEvalObjvInternal and to correct
the auto-loading of alias targets (parse-8.12). [Bug 1444291].
|
|
|
|
|
|
|
| |
* tests/namespace.test: evaluations act the same as [uplevel #0]
* tests/parse.test: evaluations, even when execution traces or
* tests/trace.test: invocations of [::unknown] are present.
[Bug 1439836].
|
| |
|
|
|
|
|
|
|
|
| |
* generic/tclParse.c (TclSubstTokens): testing in nested command
* tests/basic.test (basic-46.4): substitutions within direct
* tests/parse.test (parse-19.*): script evaluation (Tcl_EvalEx)
that got lost in the parser reforms of Tcl 8.1. Added tests for
correct behavior. [Bug 1115904]
|
|
|
|
|
|
|
| |
* generic/tclInt.h (Interp): USE_EVAL_DIRECT. It was used only
* generic/tcLTest.c (TestevalexObjCmd): in the testing command
* tests/parser.test (parse-9.2): [testevalex] and nothing in the
test suite made use of the capability it enabled.
|
|
|
|
|
| |
space in {expand} parsing. Thanks Andreas Leitgeb. [Bug 848262].
* tests/parse.test: New tests for the bug.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/Tcl.n: of the new leading {expand} syntax on words.
* generic/tcl.h: Parses such words as the new Tcl_Token type
* generic/tclBasic.c: TCL_TOKEN_EXPAND_WORD. Updated Tcl_EvalEx
* generic/tclCompile.c: and the bytecode compiler/execution engine
* generic/tclCompile.h: to recognize the new token type. New opcodes
* generic/tclExecute.c: INST_LIST_VERIFY and INST_INVOKE_EXP and a new
* generic/tclParse.c: operand type OPERAND_ULIST1 are defined. Docs
* generic/tclTest.c: and tests are included.
* tests/basic.test:
* tests/compile.test:
* tests/parse.test:
* library/auto.tcl: Replaced several [eval]s used to perform
* library/package.tcl: argument expansion with the new syntax.
* library/safe.tcl: In the test files lindex.test and lset.test,
* tests/cmdInfo.test: replaced use of [eval] to force direct
* tests/encoding.test: string evaluation with use of [testevalex]
* tests/execute.test: which more directly and robustly serves the
* tests/fCmd.test: same purpose.
* tests/http.test:
* tests/init.test:
* tests/interp.test:
* tests/io.test:
* tests/ioUtil.test:
* tests/iogt.test:
* tests/lindex.test:
* tests/lset.test:
* tests/namespace-old.test:
* tests/namespace.test:
* tests/pkg.test:
* tests/pkgMkIndex.test:
* tests/proc.test:
* tests/reg.test:
* tests/trace.test:
* tests/upvar.test:
* tests/winConsole.test:
* tests/winFCmd.test:
|
|
|
|
|
|
|
|
|
|
| |
* tests/basic.test: Bug 489537, Tcl's longstanding failure to
* tests/dict.test: properly quote any leading '#' character
* tests/dstring.test: when generating the string rep of a list
* tests/list.test: so that the comment-power of that character
* tests/parse.test: is hidden from any [eval], in order to
* tests/util.test: satisfy the documentation that [list] does
[eval]-safe quoting.
|
| |
|
|
|
|
|
|
| |
to reset iPtr->returnCode, causing tests parse-18.17 and parse-18.21
to fail strangely.
* tests/parse.test (parse-18.21): Corrected now functioning test.
|
|
|
|
|
| |
implementation of Tcl_SubstObj(). Note that tests parse-18.17 and
parse-18.21 demonstrate some bugs left to fix in the current code.
|
| |
|
| |
|
| |
|
|
|
|
| |
* tests/parse.test: fix for [Bug 684744], by Don Porter.
|
|
|
|
| |
of Tcl_EvalTokens, replaced by the new Tcl_EvalTokensStandard.
|
|
|
|
| |
::tcltest" to "namespace import -force ::tcltest" [Bug: 3948].
|
|
|
|
|
|
|
|
|
| |
easier to turn on compiler tracing.
* tests/parse.test:
* generic/tclParse.c: Fixed bug in Tcl_EvalEx where the termOffset
was not being updated in cases where the evaluation returned a non
TCL_OK error code. [Bug: 2535]
|
| |
|
| |
|
| |
|
| |
|
|
|