| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclLink.c: 'struct Link'.
* generic/tclEncoding.c: 'struct Encoding', and 'struct EscapeEncodingData'.
* generic/tclCmdIL.c: 'struct SortInfo'.
* generic/tclIO.h: 'struct ChannelState'.
* generic/tclRegexp.h: 'struct TclRegexp'.
* generic/tclCompile.h: 'struct CompileEnv', and 'struct ByteCode'.
* generic/tclInt.h: 'struct Var', 'struct ByteCodeStats', and
'struct Interp'.
Reordered fields in various structures for better usage of
memory (less padding).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tcl.h:
* tclInt.h: Moved the macros to control feature exclusion and
stack manipulation into the private area of the tcl
headers. Renamed the macros for TCL_STRUCT_ON_HEAP to make their
names more sensible.
* tclCmdAH.c:
* tclCompCmds.c:
* tclCompExpr.c:
* tclCompile.c:
* tclExecute.c:
* tclIO.c:
* tclParse.c:
* tclParseExpr.c:
* tclScan.c:
* tclUnixChan.c: Adapted to changed macro names, added some more
places there structures go on the heap instead of the stack.
Fixed a problem with TCL_FMT_STATIC_FLOATBUFFER_SZ which
caused the interp to crash when actually used to reduce the
usage of the stack.
|
|
|
|
|
| |
macros for information on the stack. Parser information on the
stack can now be switched to allocation on the heap.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tests/parseExpr.test:
* tests/string.test:
* generic/tclGet.c:
* generic/tclInt.h:
* generic/tclObj.c:
* generic/tclParseExpr.c:
* generic/tclUtil.c:
* generic/tclExecute.c: added TclCheckBadOctal routine to enhance
error message checking for when users use invalid octal numbers
(like 08), as well as replumbed the Expr*Funcs with a new
VerifyExprObjType to simplify type handling.
* tests/expr.test:
* generic/tclCompile.c: fixed 'bad code length' error for
'expr + {[incr]}' case, with new test case [Bug: 3736]
and seg fault on 'expr + {[error]}' (different cause) that
was caused by a correct optimization that didn't correctly
track how it was modifying the source string in the opt.
The optimization was removed, which means that:
expr 1 + {[string length abc]}
will be not be compiled inline as before, but this should be
written:
expr {1 + [string length abc]}
which will be compiled inline for speed. This prevents
expr 1 + {[mindless error]}
from seg faulting, and only affects optimizations for
degenerate cases [Bug: 3737]
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclParseExpr.c: changed '"' to '\"' to make FreeBSD
happy [Bug: 2625]
* generic/tclProc.c: moved static buf to better location and
changed static msg that would overflow in ProcessProcResultCode
[Bug: 2483] and added Tcl_DStringFree to Tcl_ProcObjCmd.
Also reworked size of static buffers.
* tests/stringObj.test: added test 9.11
* generic/tclStringObj.c: changed Tcl_AppendObjToObj to
properly handle the 1-byte dest and mixed src case where
both had had Unicode string len checks made on them. [Bug: 2678]
|
| |
|
|
|
|
| |
makefile caused when the win/pkgIndex.tcl file was replaced
|
|
|