| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
typePtr->setFromAnyProc (except the call from inside the Tcl_ConvertToType function) from the Tcl core.
|
|
|
|
|
| |
generation where we can detect that we're not in the WrongNumArgs case.
The compiler just checks that the argument count is in the right range and
issues a standard dispatch; that's enough to do an efficient job.
|
|\ |
|
| |
| |
| |
| | |
range]. This in turn enables compilation of [namespace qualifiers] and [namespace tail] (also done).
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
(U+200d),
which were finally left out of TIP #413
|
| | |
|
|/ |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
resulting indexes from -indexvar option to be usable with [string
range]; this was always the intention (and is consistent with [regexp
-indices] too).
***POTENTIAL INCOMPATIBILITY***
Uses of [switch -regexp -indexvar] that previously compensated for the
wrong offsets (by subtracting 1 from the end indices) now do not need
to do so as the value is correct.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
resulting indexes from -indexvar option to be usable with [string
range]; this was always the intention (and is consistent with [regexp
-indices] too).
***POTENTIAL INCOMPATIBILITY***
Uses of [switch -regexp -indexvar] that previously compensated for the
wrong offsets (by subtracting 1 from the end indices) now do not need
to do so as the value is correct.
|
| |\
| | |
| | | |
a few CONST -> const changes
|
| |\ \
| | |/
| | |
| | |
| | | |
move up #undef, for macro which is conflicting with later stuff.
remove some unused cygwin-related code
some minor gcc warnings
|
| | |
| | |
| | |
| | | |
cmd.
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
- more efficient, will not generate bignum
- uses "string is integer" in stead of "string is entier"
- original "string is integer" renamed to "string is int"
|
|/ / / |
|
|\ \ \
| |/ / |
|
| | | |
|
|\ \ \
| |/ / |
|
| |\ \
| | |/ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclCmdMZ.c: with TclParseBackslash() where possible.
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclUtil.c:
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The final argument had been bracePtr, the address of a boolean var, where
the caller can be told whether or not the parsed list element was enclosed
in braces. In practice, no callers really care about that. What the callers
really want to know is whether the list element value exists as a literal
substring of the string being parsed, or whether a call to
TclCopyAndCollpase() is needed to produce the list element value. Now the
final argument is changed to do what callers actually need. This is a
better fit for the calls in tclParse.c, where now a good deal of
post-processing checking for "naked backslashes" is no longer necessary.
***POTENTIAL INCOMPATIBILITY***
For any callers calling in via the internal stubs table who really do use
the final argument explicitly to check for the enclosing brace scenario.
Simply looking for the braces where they must be is the revision available
to those callers, and it will backport cleanly.
Tests for expanded literals quoting detection.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The final argument had been bracePtr, the address of a boolean var, where
the caller can be told whether or not the parsed list element was enclosed
in braces. In practice, no callers really care about that. What the
callers really want to know is whether the list element value exists as a
literal substring of the string being parsed, or whether a call to
TclCopyAndCollpase() is needed to produce the list element value. Now
the final argument is changed to do what callers actually need. This is
a better fit for the calls in tclParse.c, where now a good deal of
post-processing checking for "naked backslashes" is no longer necessary.
***POTENTIAL INCOMPATIBILITY***
For any callers calling in via the internal stubs table who really do use
the final argument explicitly to check for the enclosing brace scenario.
Simply looking for the braces where they must be is the revision available
to those callers, and it will backport cleanly.
|
|\ \ \
| |/ /
| | | |
Use to replace calls to isspace() and their /* INTL */ risk.
|
| | |
| | |
| | | |
Use to replace calls to isspace() and their /* INTL */ risk.
|
| | | |
|
|\ \ \
| |/ / |
|
| | | |
|
| | | |
|
| | |
| | |
| | | |
creating our own in [regexp] and [regsub].
|
| | |
| | |
| | | |
rest of Tcl source code. No ABI change. API change *should* be harmless.
|
| | |
| | |
| | | |
the Engineering Manual.
|
|\ \ \
| |/ /
| | | |
cause more harm than good. Purged them (except in zlib files).
|
| |\ \
| | |/
| | | |
more harm than good. Purged them.
|
| | |
| | |
| | | |
more harm than good. Purged them.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
recursive parsing calls to convert O(N^2) operations of [subst]
to O(N).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
EvalTokensStandard, Tcl_EvalEx, EvalEx, TclAdvanceContinuations,
TclEvalObjEx):
* generic/tclCmdMZ.c (Tcl_SwitchObjCmd, ListLines):
* generic/tclCompCmds.c (*):
* generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv,
TclFreeCompileEnv, TclCompileScript):
* generic/tclCompile.h (CompileEnv):
* generic/tclInt.h (ContLineLoc, Interp):
* generic/tclObj.c (ThreadSpecificData, ContLineLocFree,
TclThreadFinalizeObjects, TclInitObjSubsystem,
TclContinuationsEnter, TclContinuationsEnterDerived,
TclContinuationsCopy, TclContinuationsGet, TclFreeObj):
* generic/tclProc.c (TclCreateProc):
* generic/tclVar.c (TclPtrSetVar):
* tests/info.test (info-30.0-22):
Extended parser, compiler, and execution with code and attendant
data structures tracking the positions of continuation lines which
are not visible in script's, to properly account for them while
counting lines for #280, during direct and compiled execution.
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclTest.c: TclCheckInterpTraces that led to infinite loop
* tests/basic.test: when multiple Tcl_CreateTrace traces were set and
one of them did not fire due to level restrictions. [Bug 1743931].
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclCmdMZ.c (Trace*Proc): Update Tcl_VarTraceProcs so
* generic/tclLink.c (LinkTraceProc): that they call
* generic/tclUtil.c (TclPrecTraceProc): Tcl_InterpDeleted() for
themselves, and do not rely on (frequently buggy) setting of the
TCL_INTERP_DESTROYED flag by the trace core.
* generic/tclVar.c: Update callers of CallVarTraces to not
pass in the TCL_INTERP_DESTROYED flag. Also apply filters so that
public routines only pass documented flag values down to lower level
routines.
* generic/tclVar.c (CallVarTraces): The setting of the
TCL_INTERP_DESTROYED flag is now done entirely within the
CallVarTraces routine, the only place it can be done right.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
TCL_TIP280.
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclCompCmds.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclCompile.h:
* generic/tclExecute.c:
* generic/tclIOUtil.c:
* generic/tclInt.h:
* generic/tclInterp.c:
* generic/tclNamesp.c:
* generic/tclObj.c:
* generic/tclProc.c:
* tests/compile.test:
* tests/info.test:
* tests/platform.test:
* tests/safe.test:
|
| | |
| | |
| | |
| | | |
* tests/trace.test: and enterstep traces. [Bug 1458266]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclCmdMZ.c (TraceCommandProc):
* generic/tclInt.h (NS_KILLED):
* generic/tclNamesp.c (Tcl_DeleteNamespace
* tests/namespace.test (namespace-7.3-6):
* tests/trace.test (trace-20.13-16): fix [Bugs 1355942/1355342].
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
assumption that all command traces are set at the script level.
Report/fix from Jacques H. de Villiers. [Bug 1337941]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
fix. Insure that a second call with TCL_TRACE_DESTROYED does not
lead to a second call to Tcl_EventuallyFree(). It is still true
that that second call should not happen, so the bug is not
completely fixed.
* tests/trace.test (test-18.3-4): added tests for bugs #1337229
and 1338280.
|