summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
...
* * generic/tclExecute.c (TclExecuteByteCode:INST_EXIST_*): Fix readdas2007-11-171-20/+30
| | | | traces not firing on non-existent array elements. [Bug 1833522]
* Greatly improved ensemble compiler. This one now can handle any ensemble.dkf2007-11-165-167/+469
| | | | | It is usually not enabled though; only worth it when a subcommand is actually expected to undergo bytecode compilation.
* move TCL_DTRACE_INST_NEXT after async handlers checkdas2007-11-161-3/+3
|
* better line breaks in debug outputdgp2007-11-151-1/+1
|
* * generic/regc_nfa.c: Fixed infinite loop in the regexp compiler.dgp2007-11-151-0/+41
| | | | [Bug 1810038].
* * generic/regc_nfa.c: Corrected looping logic in fixempties() todgp2007-11-151-1/+2
| | | | avoid wasting time walking a list of dead states. [Bug 1832612]
* Must pass non-NULL interp to Tcl_SetEnsemble* functions.dkf2007-11-151-17/+11
|
* Add comments for clarity.dkf2007-11-152-171/+206
|
* typodkf2007-11-141-2/+2
|
* Compile [info exists] into bytecode. Includes new instructions to support it.dkf2007-11-147-14/+339
|
* Eliminate multi-char collating element code completely. Simplifies the codedkf2007-11-147-636/+127
| | | | | quite a bit. If people still want the full code, it will remain on the 8.4 branch. [Bug 1831425]
* Strip an _ANSI_ARGS_ usage.dkf2007-11-141-2/+2
|
* (TclCompileSwitchCmd): simplify TclReToGlob usage.hobbs2007-11-141-9/+6
|
* * generic/tclCompCmds.c (TclCompileRegexpCmd): clean up comments,hobbs2007-11-141-9/+12
| | | | only free dstring on OK from TclReToGlob.
* Comment/#ifdef out the multi-char collating element support code.dkf2007-11-144-39/+92
| | | | We never used or supported it. [Bug 1831425]
* Extend [switch] compiler to handle regular expressions as long as things are notdkf2007-11-131-71/+115
| | | | | too complex. Fix [regexp] compiler so that non-trivial literal regexps get fed to INST_REGEXP.
* Minor fixes (remove double blank lines, etc.)dkf2007-11-131-16/+18
|
* Fix a bug in disassembly of INST_START_CMD instructionsdkf2007-11-131-3/+4
|
* * generic/regcomp.c: Convert optst() from expensive no-op to adgp2007-11-131-0/+10
| | | | cheap no-op.
* (TclReToGlob): remove out-dated Tcl_RegExpCompile check as it causes recursionhobbs2007-11-131-15/+1
|
* RE: [Patch 1830184] TclResetResultMiguel Sofer2007-11-127-81/+34
| | | | | | THIS PATCH WAS REVERTED: initial (mis)measurements overstated the perfomance wins, which turn out to be tiny. Not worth the complication.
* * generic/tclGet.c (Tcl_Get, Tcl_GetInt): revert use of TclGet*hobbs2007-11-121-3/+3
| | | | macros due to compiler warning. These cases won't save time either.
* * generic/tclUtil.c (TclReToGlob): add more comments, set interphobbs2007-11-121-3/+12
| | | | result if specified on error.
* * generic/tclBasic.c: New macro TclResetResult, new iPtr flagMiguel Sofer2007-11-127-34/+81
| | | | | | | | | * generic/tclExecute.c: bit INTERP_RESULT_UNCLEAN: shortcut for * generic/tclInt.h: Tcl_ResetResult for the "normal" case: * generic/tclProc.c: TCL_OK, no return options, no errorCode * generic/tclResult.c: nor errorInfo, return at normal level. * generic/tclStubLib.c: [Patch 1830184] * generic/tclUtil.c:
* * generic/tclCompCmds.c, generic/tclCompile.c, generic/tclCompile.h:hobbs2007-11-1210-103/+350
| | | | | | | | | * generic/tclExecute.c, generic/tclInt.decls, generic/tclIntDecls.h: * generic/tclRegexp.c, generic/tclRegexp.h: Add INST_REGEXP and fully * generic/tclStubInit.c, generic/tclUtil.c: compiled [regexp] for the * tests/regexpComp.test: [Bug 1830166] simple cases. Also added TclReToGlob function to convert RE to glob patterns and use these in the possible cases.
* * generic/tclResult.c (ResetObjResult): clarify the logic.Miguel Sofer2007-11-111-4/+2
|
* [Patch 1830038]: Increased usage of macros to detect and take advantage of ↵Miguel Sofer2007-11-1131-395/+457
| | | | objTypes.
* * generic/tclBasic.c: fix stack check failure case if stack grows up.das2007-11-111-2/+2
|
* * generic/tclBasic.c: fix stack check failure case if stack grows up.das2007-11-111-2/+2
|
* * generic/tclExecute.c: fast path for INST_LIST_INDEX when theMiguel Sofer2007-11-101-7/+20
| | | | index is not a list.
* * generic/tclBasic.c:Miguel Sofer2007-11-101-8/+19
| | | | | | * unix/configure.in: * unix/tclUnixInit.c: detect stack grwoth direction at compile time, only fall to runtime detection when crosscompiling.
* * unix/tclUnixTime.c (TclpWideClicksToNanoseconds): fix issues withdas2007-11-101-2/+2
| | | | * generic/tclInt.h: int64_t overflow.
* Improved failure comments for stack checks (mistachkin).Miguel Sofer2007-11-101-10/+15
|
* * generic/tclBasic.c:Miguel Sofer2007-11-102-21/+12
| | | | | | | | | * generic/tclInt.h: * unix/tclUnixInit.c: * win/tclWin32Dll.c: restore simpler behaviour for stack checking, not adaptive to stack size changes after a thread is launched. Consensus is that "nobody does that", and so it is not worth the cost.
* * generic/tclBasic.c:Miguel Sofer2007-11-102-27/+25
| | | | | | | | | | | * generic/tclInt.h: * unix/tclUnixInit.c: * unix/tclUnixPort.h: * win/tclWin32Dll.c: modify the stack checking algorithm to recheck in case of failure. The working assumptions are now that (a) a thread's stack is never moved, and (b) a thread's stack can grow but not shrink. Port to windows - could be more efficient, but is already cheaper than it was.
* fix formattingdas2007-11-101-2/+3
|
* fix typos, formatting and non-unix breakage (due to undefined stackGrowsDown)das2007-11-101-6/+7
|
* * generic/tclResult.c (ResetObjResult): new shortcut.Miguel Sofer2007-11-101-3/+4
|
* * generic/tclAsync.c:Miguel Sofer2007-11-094-9/+95
| | | | | | | | | | | * generic/tclBasic.c: * generic/tclExecute.c: * generic/tclInt.h: * generic/tclUnixInit.c: * generic/tclUnixPort.h: new fields in interp (ekeko!) to cache TSD data that is accessed at each command invocation, access macros to replace Tcl_AsyncReady and TclpCheckStackSpace by much faster variants [Patch 1829248]
* * generic/tclInt.decls, generic/tclIntDecls.h: Use unsigned char forhobbs2007-11-094-46/+30
| | | | | | * generic/tclExecute.c, generic/tclUtil.c: TclByteArrayMatch and don't allow a nocase option. [Bug 1828296] For INST_STR_MATCH, ignore pattern type for TclByteArrayMatch case.
* * generic/tclBinary.c (Tcl_GetByteArrayFromObj): check type beforehobbs2007-11-091-2/+4
| | | | func jump
* fix (unsigned char*) vs. (char*) warningsdas2007-11-082-5/+5
|
* * generic/tclStubInit.c:hobbs2007-11-085-5/+220
| | | | | | | * generic/tclInt.decls, generic/tclIntDecls.h: added TclByteArrayMatch * generic/tclUtil.c (TclByteArrayMatch): for efficient glob * generic/tclExecute.c (TclExecuteByteCode): matching of ByteArray Tcl_Objs, used in INST_STR_MATCH. [Bug 1827996]
* (DoWriteChars): special case for 1-byte channel write.hobbs2007-11-071-6/+11
|
* * generic/tclIO.c (TclGetsObjBinary): add an efficient binary pathhobbs2007-11-071-4/+254
| | | | for [gets].
* * generic/tclEncoding.c: Version of the embedded iso8859-1Miguel Sofer2007-11-061-13/+210
| | | | | | | | encoding handler that is faster (functions to do the encoding know exactly what they're doing instead of pulling it from a table, though the table itself has to be retained for use by shift encodings that depend on iso8859-1.) [Patch 1826906], committing for dkf.
* * generic/tclConfig.c (Tcl_RegisterConfig): Modified to not extendandreas_kupries2007-11-051-36/+39
| | | | | | | the config database if the encoding provided by the user is not found (venc == NULL). Scripts expecting the data will error out, however we neither crash nor provide bogus information. See [SF Tcl Bug 983509] for more discussion.
* * generic/tclConfig.c (Tcl_RegisterConfig): Modified to useandreas_kupries2007-11-051-1/+6
| | | | | | | | iso8859-1 as a fallback if the user supplied encoding was not found. That way we do not crash. It is unclear however if this is a sane fallback given that the encoding is likely wrong and producing bogus strings. See [SF Tcl Bug 983509] for more discussion.
* * generic/tclTest.c (TestSetCmd2):Miguel Sofer2007-11-032-3/+40
| | | | | | | * generic/tclVar.c (TclObjLookupVarEx): * tests/set.test (set-5.1): fix error branch when array name looks like array element (code not normally exercised). x
* \u0000 is ASCII! [Bug 1808258]dkf2007-11-011-13/+11
|