summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* Repair some stack depth housekeeping.dgp2013-05-254-7/+3
|
* 3613854 - Fixup stack maintenance /code generation for [array set x $oddList]. dgp2013-05-241-20/+17
| | | | Postscript - I see that this commit created a memory leak. Will commit a fix within a few days.
* Spare developers the burden and error risk of counting bytes in stringdgp2013-05-234-77/+81
| | | literals, or having to type them twice.
* Eliminate code duplication.dgp2013-05-234-666/+68
|
* Removed const qualifier causing the HP native cc to error out (error 1675: ↵andreask2013-05-221-1/+1
| | | | Duplicate type qualifier "const").
* silence compiler warningdgp2013-05-221-1/+2
|\
| * silence compiler warningdgp2013-05-221-1/+2
| |
* | [3613609]: Replace strcasecmp() with UTF-8-aware version.dkf2013-05-224-6/+47
|\ \ | |/
| * Fixed the weird edge case.bug_3613609dkf2013-05-221-12/+25
| |
| * Slight improvement: if cs = "\xC0\x80" and ct = "\x00", loop would continue ↵jan.nijtmans2013-05-211-4/+4
| | | | | | | | after NUL-byte, this should not happen.
| * Proposed solution for 3613609: lsort -nocase does not sort non-ASCII correctlyjan.nijtmans2013-05-214-6/+34
| |
* | 3613569 Handle case when TclpTempFileNameForLibrary returns NULL.dgp2013-05-201-0/+3
| |
* | Don't #define VOID on VxWorks, as it is already typdef'd to void. Eliminate ↵jan.nijtmans2013-05-194-19/+14
|\ \ | |/ | | | | possibly conflicting LOCAL/OFFSET
| * Don't #define VOID on VxWorks, as it is already typdef'd to void. Eliminate ↵jan.nijtmans2013-05-193-11/+13
| |\ | | | | | | | | | possibly conflicting LOCAL/OFFSET
| | * Don't #define VOID on VxWorks, as it is already typdef'd to voidjan.nijtmans2013-05-192-7/+9
| | | | | | | | | Eliminate possibly conflicting LOCAL #define
| | * <sys/stat.h> inclusion is only needed when compiling for Win32, don't bother ↵jan.nijtmans2013-05-171-1/+1
| | | | | | | | | | | | for other platforms.
| | * - eliminate compiler warning when compiling with Visual Studio.jan.nijtmans2013-05-171-0/+1
| | | | | | | | | - Make sure that _ftime() from msvcrt.dll is used, not ftime() from mingw (which might use 64-bit time_t)
* | | Split tclCompCmds.c into two roughly-equal-sized pieces.dkf2013-05-182-2931/+3276
| | |
* | | Remove useless variables.dkf2013-05-171-42/+39
|\ \ \
| * | | Confirmed that every caller of TclProcCompileProc() arranges for thedgp2013-05-161-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | procPtr and nsPtr arguments: nsPtr == procPtr->cmdPtr->nsPtr. This makes the test in TclCompileScript() useless. TCS() will always compile in the current namespace of the interp. Remove the code that obfuscates that fact.
| * | | Disabled some code in TclCompileScript(). Test suite results are unaffected.dgp2013-05-151-1/+3
| | | | | | | | | | | | Does this indicate a gap in the test suite, or is this code truly useless?
* | | | Add support for the latest mingw-4.0-rc1. See: ↵jan.nijtmans2013-05-161-0/+11
|\ \ \ \ | |/ / / |/| / / | |/ / [http://sourceforge.net/p/mingw/mingw-org-wsl/ci/4.0-rc1/tree/NEWS]
| * | _USE_32BIT_TIME_T is already defined in tclWinPort.hjan.nijtmans2013-05-161-4/+0
| | |
| * | Add support for the latest mingw-4.0-rc1. See: ↵jan.nijtmans2013-05-161-0/+15
| |\ \ | | |/ | | | | | | [http://sourceforge.net/p/mingw/mingw-org-wsl/ci/4.0-rc1/tree/NEWS]
| | * Add support for the latest mingw-4.0-rc1. See: ↵jan.nijtmans2013-05-161-0/+15
| | | | | | | | | | | | [http://sourceforge.net/p/mingw/mingw-org-wsl/ci/4.0-rc1/tree/NEWS]
* | | Removing a few changes that were not actually needed, and correcting comments.dkf2013-05-152-10/+7
| | |
* | | merge trunkdkf_bcc_optimizedkf2013-05-152-3/+4
|\ \ \
| * \ \ Merged fix to bytecode engine problem. Details in merged revision.andreask2013-05-131-2/+3
| |\ \ \
| | * | | Fixed bug in parent revision [832a1994c7] unpredictably breaking thebugfix_832a1994c7_for_precompiled_bcandreask2013-05-131-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | execution of precompiled bytecode (i.e. tbcload'ed bytecode). The semi-inversion of a guard condition dropped the part about TCL_BYTECODE_PRECOMPILED of the original condition, allowing the core to attempt to recompile code for which there are no script sources (anymore), which then fails.
| * | | | compiler warningdgp2013-05-131-1/+1
| | | | |
* | | | | A better technique for [list {*}blah]. Remove the INST_LIST_EXPANDED opcode ↵dkf2013-05-156-150/+198
|/ / / / | | | | | | | | | | | | (and the complex machinery associated with it) as as it is no longer needed.
* | | | Corrected the stack balancing in the special [list {*} ] compiler.dkf2013-05-121-1/+9
| | | |
* | | | Fix implementation of INST_LIST_EXPANDED.dkf2013-05-121-1/+5
| | | |
* | | | Partial fix: still ongoingdkf2013-05-112-1/+4
| | | |
* | | | Optimizations and general bytecode generation improvements.dkf2013-05-105-53/+535
| | | |
* | | | Add support for Cygwin64, which has a 64-bit "long" type. jan.nijtmans2013-05-062-0/+133
|\ \ \ \ | | |/ / | |/| | | | | | Binary compatibility with win64 requires that all stub entries use 32-bit long's, therefore the need for various wrapper functions/macros. For Tcl 9 a better solution is needed, but that cannot be done without introducing binary incompatibility.
| * | | Add support for Cygwin64, which has a 64-bit "long" type. jan.nijtmans2013-05-062-0/+133
| |\ \ \ | | | |/ | | |/| | | | | Binary compatibility with win64 requires that all stub entries use 32-bit long's, therefore the need for various wrapper functions/macros. For Tcl 9 a better solution is needed, but that cannot be done without introducing binary incompatibility.
| | * | Add support for Cygwin64, which has a 64-bit "long" type. jan.nijtmans2013-05-062-0/+133
| | | | | | | | | | | | | | | | Binary compatibility with win64 requires that all stub entries use 32-bit long's, therefore the need for various wrapper functions/macros. For Tcl 9 a better solution is needed, but that cannot be done without introducing binary incompatibility.
| * | | Backport 8.6's fix [checkin 5af0d249de] to [Bug 2901998]: Inconsistent ↵ferrieux2013-05-011-8/+92
| | | | | | | | | | | | | | | | buffered I/O. Tcl's I/O now flushes buffered output before reading, discards buffered input before writing, etc.
* | | | Improve code generation for [array set] in a common case.dkf2013-04-291-23/+59
| | | |
* | | | Implement Tcl_NewBooleanObj, Tcl_DbNewBooleanObj and Tcl_SetBooleanObj as ↵jan.nijtmans2013-04-239-72/+73
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | macros using Tcl_NewIntObj, Tcl_DbNewLongObj and Tcl_SetIntObj. Starting with Tcl 8.5, this is exactly the same, it only eliminates code duplication. Eliminate use of NO_WIDE_TYPE everywhere: It's exactly the same as TCL_WIDE_INT_IS_LONG
| * | | Implement Tcl_NewBooleanObj, Tcl_DbNewBooleanObj and Tcl_SetBooleanObj as ↵jan.nijtmans2013-04-232-5/+16
| | | | | | | | | | | | | | | | | | | | macros using Tcl_NewIntObj, Tcl_DbNewLongObj and Tcl_SetIntObj. Starting with Tcl 8.5, this is exactly the same, it only eliminates code duplication.
* | | | Implement many Tcl_*Var* functions and Tcl_GetIndexFromObj as ↵jan.nijtmans2013-04-191-0/+25
|\ \ \ \ | |/ / / | | | | | | | | (faster/stack-saving) macros around resp their Tcl_*Var*2 equivalent and Tcl_GetIndexFromObjStruct
| * | | Implement many Tcl_*Var* functions and Tcl_GetIndexFromObj as ↵jan.nijtmans2013-04-194-0/+33
| |\ \ \ | | |/ / | | | | | | | | (faster/stack-saving) macros around resp their Tcl_*Var*2 equivalent and Tcl_GetIndexFromObjStruct
| | * | Implement many Tcl_*Var* functions and Tcl_GetIndexFromObj as ↵jan.nijtmans2013-04-193-0/+33
| | | | | | | | | | | | | | | | (faster/stack-saving) macros around resp their Tcl_*Var*2 equivalent and Tcl_GetIndexFromObjStruct
| * | | 3610404 When we let go of commandPtr in TclEvalObjvInternal, NULL out thedgp2013-04-161-0/+1
| | | | | | | | | | | | variable so we don't mistakenly try to use the value later after we freed it.
* | | | Implement Tcl_Pkg* functions as macro's around Tcl_Pkg*Ex. This saves stack ↵jan.nijtmans2013-04-122-2/+12
|\ \ \ \ | |/ / / | | | | | | | | space, is (marginally) faster, while still being fully up/down compatible. It makes pkgb.so loadable in "novem" without the need to change the Tcl_PkgProvide() call to Tcl_PkgProvideEx().
| * | | Implement Tcl_Pkg* functions as macro's around Tcl_Pkg*Ex. This saves stack ↵jan.nijtmans2013-04-122-2/+15
| |\ \ \ | | |/ / | | | | | | | | space, is (marginally) faster, while still being fully up/down compatible. It makes pkgb.so loadable in "novem" without the need to change the Tcl_PkgProvide() call to Tcl_PkgProvideEx().
| | * | Implement Tcl_Pkg* functions as macro's around Tcl_Pkg*Ex. This saves stack ↵jan.nijtmans2013-04-122-4/+17
| | | | | | | | | | | | | | | | space, is (marginally) faster, while still being fully up/down compatible. It makes pkgb.so loadable in "novem" without the need to change the Tcl_PkgProvide() call to Tcl_PkgProvideEx().
| | * | Make (deprecated) Tcl_EvalObj/Tcl_GlobalEvalObj macro's always, not only ↵jan.nijtmans2013-04-092-8/+8
| | | | | | | | | | | | | | | | when using stubs.