summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* TIP#183 IMPLEMENTATION [Patch 577093]dgp2005-04-273-27/+91
| | | | | | | | | * generic/tclIOUtil.c (TclGetOpenModeEx): New routine. * generic/tclInt.h: * generic/tclIO.c (Tcl_OpenObjCmd): Support for "b" and * doc/open.n: "BINARY" in "access" argument to [open]. * tests/ioCmd.test:
* * compat/string.h: fixed memchr() protoype for __APPLE__ so that wedas2005-04-261-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | build on Mac OS X 10.1 again. * generic/tclNotify.c (TclFinalizeNotifier): fixed notifier not being finalized in unthreaded core (was testing for notifier initialization in current thread by checking thread id != 0 but thread id is always 0 in untreaded core). * win/tclWinNotify.c (Tcl_WaitForEvent): * unix/tclUnixNotfy.c (Tcl_WaitForEvent): don't call ScaleTimeProc for zero wait times (as specified in TIP 233). * unix/Makefile.in: added @PLAT_SRCS@ to SRCS and split out NOTIFY_SRCS from UNIX_SRCS for parity with UNIX_OBJS & NOTIFY_OBJS. * unix/tcl.m4 (Darwin): added configure checks for recently added linker flags -single_module and -search_paths_first to allow building with older tools (and on Mac OS X 10.1), use -single_module in SHLIB_LD and not just T{CL,K}_SHLIB_LD_EXTRAS, added unexporting from Tk of symbols from libtclstub to avoid duplicate symbol warnings, added PLAT_SRCS definition for Mac OS X, defined MODULE_SCOPE to __private_extern__. (SC_MISSING_POSIX_HEADERS): added caching of dirent.h check. * unix/configure: autoconf-2.59
* fix commentsMiguel Sofer2005-04-251-2/+5
|
* * generic/tclExecute.c: fix for [Bug 1189274].Miguel Sofer2005-04-251-2/+2
|
* silence compiler warningsdgp2005-04-252-5/+5
|
* The 2005-04-21 changes to Tcl_GetBooleanFromObj were done to bringdgp2005-04-227-65/+34
| | | | | | | | | | | | | | | | | | | | | | | | | it into agreement with its docs. Further investigation reveals it was the docs that were incorrect. * doc/BoolObj.3: Corrections to the documentation of Tcl_GetBooleanFromObj to bring it into agreement with what this public interface has always done, including noting the difference in function between Tcl_GetBooleanFromObj and Tcl_GetBoolean. * generic/tclGet.c: Revised Tcl_GetBoolean to no longer be a wrapper around Tcl_GetBooleanFromObj (different function!). * generic/tclObj.c: Removed TclGetTruthValueFromObj routine that was added yesterday. Revisions so that only Tcl_GetBoolean-approved values get the "boolean" Tcl_ObjType. This retains the fix for [Bug 1187123]. * generic/tclInt.h: Revert most recent change. * generic/tclBasic.c: * generic/tclCompCmds.c: * generic/tclDictObj.c: * generic/tclExecute.c: * tests/obj.test:
* * generic/tclLiteral.c: Disabled the code that forces some literalsdgp2005-04-211-1/+3
| | | | | | into the "int" Tcl_ObjType during registration. We can re-enable it if this change causes trouble, but it seems more sensible to let Tcl's "on-demand" shimmering rule, and not try to pre-guess things.
* * generic/tclDictObj.c: Updated callers to call new routine.dgp2005-04-211-2/+2
|
* * generic/tclBasic.c: Updated callers to call new routine.dgp2005-04-212-25/+6
| | | | * generic/tclCompCmds.c: Updated callers to call new routine.
* stifle compiler warningdgp2005-04-211-9/+11
|
* * generic/tclGet.c: Radical code simplification. Converteddgp2005-04-214-216/+174
| | | | | | | | | | | | | | | | | | Tcl_GetFoo() routines into wrappers around Tcl_GetFooFromObj(). Reduces code duplication, and the resulting potential for inconsistency. * generic/tclObj.c: Several changes: - Fixed Tcl_GetBooleanFromObj to agree with its documentation and with Tcl_GetBoolean, accepting only "0" and "1" and not other numeric strings. [Bug 1187123] - Added new private routine TclGetTruthValueFromObj to perform the more permissive conversion of numeric values to boolean that is needed by the [expr] machinery. * generic/tclInt.h (TclGetTruthValueFromObj): New routine. * generic/tclExecute.c: Updated callers to call new routine. * tests/obj.test: Corrected bad tests that actually expected values like "47" and "0xac" to be accepted as booleans.
* Tcl_GetDoubleFromObj now avoids shimmering away a "wideInt" intrep.dgp2005-04-211-1/+4
|
* * generic/tclObj.c: Re-ordered error detection code so all valuesdgp2005-04-211-54/+39
| | | | | | | | | with trailing garbage receive a "not an integer" message instead of an "integer too large" message. Removed inactive code meant to deal with strtoul* routines that fail to parse leading signs. All of them do, and if any are detected that do not, the correct fix is replacement with compat/strtoul*.c, not a lot of special care by the callers.
* * doc/GetInt.3: Convert argument "string" to "str" to agree with code.dgp2005-04-211-157/+49
| | | | | | | Also clarified a few details on int and double formats. * generic/tclGet.c: Radical code simplification. Converted most Tcl_GetFoo() routines into wrappers around Tcl_GetFooFromObj(). Reduces code duplication, and the resulting potential for inconsistency.
* * generic/tclGet.c (Tcl_GetInt): Corrected error that did notdgp2005-04-202-38/+22
| | | | | * generic/tclObj.c (Tcl_GetIntFromObj): permit 0x80000000 to be recognized as an integer on TCL_WIDE_INT_IS_LONG systems [Bug 1090869].
* silenced a compiler warningKevin B Kenny2005-04-201-2/+2
|
* * generic/tclBasic.c: Added unsupported commanddgp2005-04-194-69/+51
| | | | | | | | * generic/tclCmdAH.c: [::tcl::unsupported::EncodingDirs] to permit * generic/tclInt.h: query/set of the encoding search path at * generic/tclInterp.c: the script level. Updated init.tcl to make * library/init.tcl: use of the new command. Also updated several coding practices in init.tcl ("eq" for [string equal], etc.)
* * generic/Var.c (Tcl_ArrayObjCmd - ARRAY_NAMES): fix Tcl_Obj leakMiguel Sofer2005-04-161-2/+2
| | | | [Bug 1084111]
* Force clenaup of the interp result in TclLoadFile(). Some implementationsvasiljevic2005-04-161-5/+12
| | | | | of TclpFindSymbol() will seed the interp result with error message when unable to find the requested symbol (this is not considered to be error).
* Modified TclFinalizeThreadAlloc() to explicitly call TclpFreeAllocCachevasiljevic2005-04-161-1/+3
| | | | | with the NULL-ptr as argument signalling cleanup of private tsd key used only by the threading allocator
* Added prototypes for TclpFreeAllocCache() and TclFreeAllocCache().vasiljevic2005-04-161-1/+3
|
* * tests/unixInit.test: Disabled obsolete tests and removed codedgp2005-04-151-45/+41
| | | | | * tests/encoding.test: that supported them. * generic/tclInterp.c:
* * generic/tclExecute.c: missing semicolons caused failure toMiguel Sofer2005-04-151-3/+3
| | | | compile with TCL_COMPILE_DEBUG.
* * generic/tclIO.c (Tcl_SetChannelBufferSize): Lowest size limitdavygrvy2005-04-141-4/+4
| | | | | | | | | * tests/io.test: changed from ten bytes to one byte. Need for this change was proven by Ross Cartlidge <rossc@cisco.com> where [read stdin 1] was grabbing 10 bytes followed by starting a child process that was intended to continue reading from stdin. Even with -buffersize set to one, nine chars were getting lost by buffer size over reading for the native read().
* * generic/tclCompile.c:Commented out the functionsMiguel Sofer2005-04-131-1/+7
| | | | | TclPrintInstruction(), TclPrintObject() and TclPrintSource() when not debugging the compiler, as they are never called in that case.
* * generic/tclInterp.c: Corrected bad syntax of Tcl_Panic() call.dgp2005-04-123-130/+125
| | | | | | | | | | | | | | | | * generic/tclUtil.c (TclGetProcessGlobalValue): More robust handling of bad TclInitProcessGlobalValueProc behavior; an immediate panic rather than a mysterious crash later. * generic/tclEncoding.c: Several changes to the way the encodingFileMap cache is maintained. Previously, it was attempted to keep the file map filled and up to date with changes in the encoding search path. This contributed to slow startup times since it required an expensive "glob" operation to fill the cache. Now the validity of items in the cache are checked at the time they are used, so the cache is permitted to fall out of sync with the encoding search path. Only [encoding names] and Tcl_GetEncodingNames() now pay the full expense. [Bug 1177363]
* * generic/tclBasic.c (TclObjInvoke): Plug memory leak. [Bug 1180368]dgp2005-04-101-1/+2
|
* fix in last commitMiguel Sofer2005-04-091-6/+7
|
* * generic/tclExecute.c: fix possible leak of expansion Tcl_ObjsMiguel Sofer2005-04-091-3/+12
|
* * generic/tclListObj.c (Tcl_ListObjIndex): added missing NULL returndas2005-04-091-2/+3
| | | | when getting index from an empty list.
* * generic/tclInt.h (TclGetEncodingFromObj): New function todgp2005-04-083-11/+96
| | | | | | | | | * generic/tclEncoding.c (TclGetEncodingFromObj): retrieve a Tcl_Encoding value, as well as cache it in the internal rep of a new "encoding" Tcl_ObjType. * generic/tclCmdAH.c (Tcl_EncodingObjCmd): Updated to call new function so that Tcl_Encoding's used by [encoding convert*] routines are not freed too quickly. [Bug 1077262]
* explanatory commentdgp2005-04-081-1/+8
|
* Improved [switch] compilation.dkf2005-04-082-123/+195
|
* * generic/tclExecute.c (ExprSrandFunc): Replaced incursions into thedgp2005-04-052-49/+5
| | | | | | | * generic/tclUtil.c (TclGetIntForIndex): intreps of numeric types with simpler calls of Tcl_GetIntFromObj and Tcl_GetLongFromObj, now that those routines are better behaved wrt shimmering. [Patch 1177219]
* * generic/tclInt.h:Miguel Sofer2005-04-052-146/+140
| | | | | * generic/tclObj.c: Change in TclDecrRefCount and TclFreeObj, to speed up the freeing of simple Tcl_Obj [Patch 1174551]
* * generic/tclExecute.c: small opts in obj handlingMiguel Sofer2005-04-041-61/+46
|
* * generic/tclVar.c: converted a few function calls to macros.Miguel Sofer2005-04-031-23/+23
|
* Changed the internal representation of lists to (a) reduce the malloc/freeMiguel Sofer2005-04-0210-636/+508
| | | | | | | | calls at list creation (from 2 to 1), (b) reduce the cost of handling empty lists (we now never create a list internal rep for them), (c) allow refcounting of the list internal rep. The latter permits insuring that the pointers returned by Tcl_ListObjGetElements remain valid even if the object shimmers away from its original list type. This is [Patch 1158008]
* slight reduction in cost of INST_START_CMDMiguel Sofer2005-04-011-7/+29
|
* * generic/tclExecute.c:Miguel Sofer2005-04-012-5/+13
| | | | | * generic/tclInt.h: ExecEnv now stores two Tcl_Obj* pointing to the constants "0" and "1", for use by TEBC.
* * generic/tclExecute.c:Miguel Sofer2005-04-014-138/+257
| | | | | | | | | * generic/tclInt.h: * generic/tclObj.c: * generic/tclStringObj.c: defined new internal macros for creating and setting frequently used obj types (int,long, wideInt, double, string). Changed TEBC to use eg 'TclNewIntObj(objPtr, i)' to avoid the function call in 'objPtr = Tcl_NewIntObj(i)'
* * generic/tclExecute.c (INST_JUMP_TRUE/FALSE): replacedMiguel Sofer2005-03-311-70/+58
| | | | "test and branch" with "compute index into table"
* * generic/tclCompile.h: Move the TclInterpReady() declaration fromdgp2005-03-253-8/+4
| | | | | | | | | | * generic/tclInt.h: tclCompile.h to tclInt.h. Should have been done as part of the 1115904 bug fix on 2005-03-18. * generic/tclThreadTest.c: Stop providing the phony package "Thread 1.0" when the [::testthread] command is defined. It's never used by anything, and conflicts with loading the real "Thread" package.
* purge outdated commentdgp2005-03-231-4/+2
|
* * generic/tclBasic.c (Tcl_EvalEx): Restored recursion limitdgp2005-03-182-16/+22
| | | | | | | | * generic/tclParse.c (TclSubstTokens): testing in nested command * tests/basic.test (basic-46.4): substitutions within direct * tests/parse.test (parse-19.*): script evaluation (Tcl_EvalEx) that got lost in the parser reforms of Tcl 8.1. Added tests for correct behavior. [Bug 1115904]
* * generic/tclCompCmds.c (TclCompileIncrCmd): Corrected checksdgp2005-03-181-15/+11
| | | | | for immediate operand usage to permit leading space and sign characters. [Bug 1165671]
* more tests and a fix to bug 1158199vincentdarley2005-03-151-4/+7
|
* fix to file norm, file pathtype on windows reserved filenames - ensure build ↵vincentdarley2005-03-151-4/+4
| | | | ok on unix
* fix to file norm, file pathtype on windows reserved filenames - ensure build ↵vincentdarley2005-03-151-4/+10
| | | | ok on unix
* fix to file norm, file pathtype on windows reserved filenamesvincentdarley2005-03-151-14/+15
|