| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* generic/tclInt.h: coroutine yield/resume
* tests/unsupported.test:
|
| |
|
|
|
|
|
| |
* generic/tclInt.h (TCL_CT_ASSERT): new compile-time assertions,
adapted from www.pixelbeat.org/programming/gcc/static_assert.html
|
|
|
|
|
|
| |
TclGetIntFromObj, and TclGetIntForIndexM macros so that they
retrieve the internalRep.longValue field instead of casting the
internalRep.otherValuePtr field to type long.
|
| |
|
|
|
|
| |
Arrange for [dict for] to be NRE-enabled when not compiled. [Bug 2017632]
|
|
|
|
|
|
| |
* generic/tclCmdIL.c:
* generic/tclInt.h:
* tests/unsupported.test:
|
|
|
|
|
| |
* generic/tclCmdIL.c: coroutines. Fix small bug on coroutine
* generic/tclInt.h: rewind.
|
| |
|
|
|
|
|
|
|
|
| |
* generic/tclCmdAH.c: commands (in tcl::unsupported).
* generic/tclCompile.h:
* generic/tclExecute.c:
* generic/tclInt.h:
* tests/unsupported.test:
|
|
|
|
|
|
| |
* generic/tclInt.h: and related ifdefs and autoconf tests.
* unix/tclUnixPort.h: [Bug 2017264] (jenglish)
* unix/tcl.m4:
|
|
|
|
|
| |
* generic/tclExecute.c: Tcl_EvalEx [Bug 2017946]
* generic/tclInt.h:
|
| |
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.h: that shares the implementation with
* generic/tclExecute.c: tailcall. Fixed a segfault in
* generic/tclInt.h: tailcalls. Tests added.
* generic/tclInterp.c:
* generic/tclNamesp.c:
* tests/unsupported.test:
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* generic/tclCmdAH.c:
* generic/tclInt.h:
* tests/NRE.test:
|
|
|
|
|
|
| |
unrefernced everywhere but in macosx/Tcl.xcodeproj/project.pbxproj: some
knowledgeable maintainer please remove tclNRE.h after making sure it
doesn't break the build on macosx
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h: stored in the ekeko at interp creation
* generic/tclNRE.h: to avoid hitting the TSD each time an
* generic/tclThreadAlloc.c: NRE callback is pushed or pulled; the
approach is suitably general to extend to evry other obj
allocation where an interp is know; this is left for some other
time, requires a lot of grunt work.
|
| |
|
|
|
|
| |
and CONST -> const (.c files and internal .h files)
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: for #280 to fix the abysmal performance
* generic/tclCompile.h: for deep recursion, replaced the linear
* generic/tclExecute.c: search through the whole stack with
* generic/tclInt.h: another hashtable and simplified the data
structure used by the compiler (array instead of hashtable).
Incidentially this also fixes the memory leak reported via [Bug
2024937].
|
|
|
|
|
| |
* generic/tclExecute.c: let GetCommandSource use it. This solves
* generic/tclInt.h: [Bug 2017146]. Thx dgp for the analysis.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdAH.c: frame), added the ability to track the
* generic/tclCompCmds.c: absolute location of literal procedure
* generic/tclCompile.c: arguments, and making this information
* generic/tclCompile.h: available to uplevel, eval, and
* generic/tclInterp.c: siblings. This allows proper tracking of
* generic/tclInt.h: absolute location through custom (Tcl-coded)
* generic/tclNamesp.c: control structures based on uplevel, etc.
* generic/tclProc.c:
* tests/info.test:
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: [namespace import]; removed
* generic/tclDecls.h: Tcl_NRObjProc, replaced with
* generic/tclExecute.c: Tcl_NRCmdSwap (proposed public
* generic/tclInt.h: NRE API). This should fix
* generic/tclNRE.h: [Bug 582506].
* generic/tclNamesp.c:
* generic/tclStubInit.c:
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: from the callbacks. Completely
* generic/tclInt.h: redone tailcall implementation
* generic/tclNRE.h: using the new feature.
* generic/tclProc.c:
* tests/NRE.test:
|
|
|
|
| |
were badly defined under mem debugging [Bug 2017240] (thx das)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIOCmd.c: Integration of transform commands into 'chan' ensemble.
* generic/tclInt.h: Definitions of the transform commands.
* generic/tclIORTrans.c: Implementation of the reflection transforms.
* tests/chan.test: Tests updated for new sub-commands of 'chan'.
* tests/ioCmd.test: Tests updated for new sub-commands of 'chan'.
* tests/ioTrans.test: Whole new set of tests for the reflection transform.
* unix/Makefile.in: Integration of new files into build rules.
* win/Makefile.in: Integration of new files into build rules.
* win/makefile.vc: Integration of new files into build rules.
NOTE: The file 'tclIORTrans.c' has a lot of code in common with
the file 'tclIORChan.c', as that made it much easier to
develop the reference implementation as a separate
module. Now that the transforms have been committed the one
thing left to do is to go over both modules and see which of
the common parts we can factor out and share.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h: Change around some function names and
add some new per-platform declarations for thread-specific data
functions.
* generic/tclThread.c: Make use of of the new function names
that no longer have a Tclp prefix.
* generic/tclThreadStorage.c: Replace the core thread-specific data
(TSD) mechanism with an array offset solution that eliminates the
hash tables, and only uses one slot of native TSD.
Many thanks to Kevin B. Kenny for his help with this.
* unix/tclUnixThrd.c: Add platform-specific TSD functions for use
by tclThreadStorage.c.
* win/tclWinThrd.c: Add platform-specific TSD functions for use
by tclThreadStorage.c.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* generic/tclStubInit.c: export only module-scope pointers to
* generic/tclStubLib.c: the main stubs tables (for package
* tools/genStubs.tcl: initialization). [Patch 1938497]
* generic/tclBasic.c (Tcl_CreateInterp):
* generic/tclTomMathInterface.c (TclTommath_Init):
|
|
|
|
|
|
|
|
| |
* generic/tclNotify.c: module-scope hooks table instead of
* generic/tclStubInit.c: runtime stubs-table modification;
* macosx/tclMacOSXNotify.c: ensure all hookable notifier functions
* win/tclWinNotify.c: check for hooks; remove hook checks in
* unix/tclUnixNotfy.c: notifier API callers. [Patch 1938497]
|
|
|
|
|
|
|
|
|
| |
* unix/configure.in: Added code to the configurator to check for
a standard isnan() macro and use it if one
is found. This change avoids bugs where
the test of ((d) != (d)) is optimized away
by an overaggressive compiler. [Bug 1783544]
* unix/configure: autoconf-2.61
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompCmds.c: simplify code that might need to grow
* generic/tclCompExpr.c: an array of Tcl_Tokens in the parsePtr
* generic/tclParse.c: field of a Tcl_Parse. Replaces the
TclExpandTokenArray() routine via replacing:
int needed = parsePtr->numTokens + growth;
while (needed > parsePtr->tokensAvailable) {
TclExpandTokenArray(parsePtr);
}
with:
TclGrowParseTokenArray(parsePtr, growth);
This revision merged over from dgp-refactor branch.
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c:
* generic/tclInt.h:
* generic/tclThreadAlloc.c: Fix alignment for memory returned by
TclStackAlloc; insure that all memory allocators align to 16-byte
boundaries on 64 bit platforms [Bug 1851832, 1851524]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIntDecls.h: to tclInt.h from stubs.
* generic/tclStubInit.c: Add flags var to TclByteArrayMatch for
* generic/tclInt.h: future extensibility
* generic/tcl.h: define TCL_MATCH_EXACT doc for Tcl_StringCaseMatch.
* doc/StrMatch.3: It is compatible with existing usage.
* generic/tclExecute.c (INST_STR_MATCH): flag for TclByteArrayMatch
* generic/tclUtil.c (TclByteArrayMatch, TclStringMatchObj):
* generic/tclRegexp.c (Tcl_RegExpExecObj):
* generic/tclCmdMZ.c (StringMatchCmd): Use TclStringMatchObj
* tests/string.test (11.9.* 11.10.*): more tests
|
| |
|
| |
|
|
|
|
| |
TclMakeEnsemble to do most of the work.
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.h:
* unix/tclUnixInit.c:
* unix/tclUnixThrd.c: Fix stack checking via workaround for bug in
glibc's pthread_attr_get_np, patch from [Bug 1815573]. Many thanks
to Sergei Golovan (aka Teo) for detecting the bug and helping
diagnose and develop the fix.
|
| |
|
| |
|