summaryrefslogtreecommitdiffstats
path: root/generic/tclInt.h
Commit message (Collapse)AuthorAgeFilesLines
* Added prototypes for TclpFreeAllocCache() and TclFreeAllocCache().vasiljevic2005-04-071-1/+3
| | | | Part of fixing the Tcl Bug #1178445.
* TIP#218 IMPLEMENTATIONandreas_kupries2005-01-271-3/+1
| | | | | | | | | | | | | | | | | | | | | * generic/tclDecls.h: Regenerated from tcl.decls. * generic/tclStubInit.c: * doc/CrtChannel.3: Documentation of extended API, * generic/tcl.decls: extended testsuite, and * generic/tcl.h: implementation. Removal of old * generic/tclIO.c: driver-specific TclpCut/Splice * generic/tclInt.h: functions. Replaced with generic * tests/io.test: thread-action calls through the * unix/tclUnixChan.c: new hooks. Update of all builtin * unix/tclUnixPipe.c: channel drivers to version 4. * unix/tclUnixSock.c: Windows drivers extended to * win/tclWinChan.c: manage thread state in a thread * win/tclWinConsole.c: action handler. * win/tclWinPipe.c: * win/tclWinSerial.c: * win/tclWinSock.c: * mac/tclMacChan.c:
* * generic/tclEvent.c: Correct threaded obj allocator tohobbs2004-07-211-1/+4
| | | | | | | * generic/tclInt.h: fully cleanup on exit and allow for * generic/tclThreadAlloc.c: reinitialization. [Bug #736426] * unix/tclUnixThrd.c: (mistachkin, kenny) * win/tclWinThrd.c:
* Corrected Tcl Bug #770053vasiljevic2004-06-221-1/+6
|
* * generic/tclInt.h:davygrvy2004-05-061-1/+2
| | | | | | | | | * generic/tclThread.c: * generic/tclEvent.c: * unix/tclUnixThrd.c: * win/tclWinThrd.c: Provisions made so masterLock, initLock, allocLock and joinLock mutexes can be recovered during Tcl_Finalize.
* * generic/tclInt.h:hobbs2004-03-291-3/+2
| | | | | | | | | * generic/tclEncoding.c (TclFindEncodings, Tcl_FindExecutable): * mac/tclMacInit.c (TclpInitLibraryPath): Correct handling of UTF * unix/tclUnixInit.c (TclpInitLibraryPath): data that is actually * win/tclWinFile.c (TclpFindExecutable): "clean", allowing the * win/tclWinInit.c (TclpInitLibraryPath): loading of Tcl from paths that contain multi-byte chars on Windows [Bug 920667]
* * generic/tcl.h Made changes so that the "wideInt" Tcl_ObjTypedgp2003-04-161-3/+21
| | | | | | | | | | | | | | | | | | | | | | * generic/tclObj.c is defined on all platforms, even those where * generic/tclPort.h TCL_WIDE_INT_IS_LONG is defined. Also made the Tcl_Value struct have a wideValue field on all platforms. This is a ***POTENTIAL INCOMPATIBILITY*** for TCL_WIDE_INT_IS_LONG platforms because that struct changes size. This is the same TIP 72 incompatibility that was seen on other platforms at the 8.4.0 release, when this change should have happened as well. [Bug 713562] * generic/tclInt.h: New internal macros TclGetWide() and TclGetLongFromWide() to deal with both forms of the "wideInt" Tcl_ObjType, so that conditional TCL_WIDE_INT_IS_LONG code is confined to the header file. * generic/tclCmdAH.c: Replaced most coding that was conditional * generic/tclCmdIL.c: on TCL_WIDE_INT_IS_LONG with code that * generic/tclExecute.c: works across platforms, sometimes using * generic/tclTest.c: the new macros above to do it. * generic/tclUtil.c: * generic/tclVar.c:
* * generic/tclInt.h (tclOriginalNotifier):dgp2003-03-211-1/+2
| | | | | | | | | | | | | | | * generic/tclStubInit.c (tclOriginalNotifier): * mac/tclMacNotify.c (Tcl_SetTimer,Tcl_WaitForEvent): * unix/tclUnixNotfy.c (Tcl_SetTimer,Tcl_WaitForEvent, Tcl_CreateFileHandler,Tcl_DeleteFileHandler): * win/tclWinNotify.c (Tcl_SetTimer,Tcl_WaitForEvent): Some linkers apparently use a different representation for a pointer to a function within the same compilation unit and a pointer to a function in a different compilation unit. This causes checks like those in the original notifier procedures to fall into infinite loops. The fix is to store pointers to the original notifier procedures in a struct defined in the same compilation unit as the stubs tables, and compare against those values. [Bug 707174]
* * generic/tclInt.h: Removed definition of ParseValue struct thatdgp2003-03-201-32/+1
| | | | is no longer used.
* filesystem speed up round 2vincentdarley2003-02-101-1/+3
|
* finalization and test fixesvincentdarley2003-02-041-1/+3
|
* * generic/tclIO.c (Tcl_CutChannel, Tcl_SpliceChannel):mdejong2003-01-261-1/+3
| | | | | | | | | | | | | | | | Invoke TclpCutFileChannel and TclpSpliceFileChannel. * generic/tclInt.h: Declare TclpCutFileChannel and TclpSpliceFileChannel. * unix/tclUnixChan.c (FileCloseProc, TclpOpenFileChannel, Tcl_MakeFileChannel, TclpCutFileChannel, TclpSpliceFileChannel): Implement thread load data cut and splice for file channels. This avoids an invalid memory ref when compiled with -DDEPRECATED. * win/tclWinChan.c (FileCloseProc, TclpCutFileChannel, TclpSpliceFileChannel): Implement thread load data cut and splice for file channels. This avoids an invalid memory ref that was showing up in the thread extension.
* execution trace, command trace and stringObj bug fixesvincentdarley2003-01-171-1/+5
|
* non-ascii chars in file mtime fixvincentdarley2003-01-091-1/+3
|
* * generic/tclInt.h: add macro version of Tcl_UtfToUniCharhobbs2002-11-121-1/+20
| | | | | | (TclUtfToUniChar) that does the one-byte utf-char check without calling Tcl_UtfToUniChar, for use by the core. This brings notable speedups for primarily ascii string handling.
* Removed obsolete history-related structures.dkf2002-10-231-39/+1
|
* * generic/tclInt.h:Miguel Sofer2002-08-141-90/+56
| | | | | | | | | * generic/tclObj.c: (code cleanup) factored the parts in the macros TclNewObj() / TclDecrRefCount() into a common part for all memory allocators and two new macros TclAllocObjStorage() / TclFreeObjStorage() that are specific to each allocator and fully describe the differences. Removed allocator-specific code from tclObj.c by using the macros.
* * doc/CmdCmplt.3: Applied Patch 585105 to fully CONST-ifydgp2002-08-051-9/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/Concat.3: all remaining public interfaces of Tcl. * doc/CrtCommand.3: Notably, the parser no longer writes on * doc/CrtSlave.3: the string it is parsing, so it is no * doc/CrtTrace.3: longer necessary for Tcl_Eval() to be * doc/Eval.3: given a writable string. Also, the * doc/ExprLong.3: refactoring of the Tcl_*Var* routines * doc/LinkVar.3: by Miguel Sofer is included, so that the * doc/ParseCmd.3: "part1" argument for them no longer needs * doc/SetVar.3: to be writable either. * doc/TraceVar.3: * doc/UpVar.3: Compatibility support has been enhanced so * generic/tcl.decls that a #define of USE_NON_CONST will remove * generic/tcl.h all possible source incompatibilities with * generic/tclBasic.c the 8.3 version of the header file(s). * generic/tclCmdMZ.c The new #define of USE_COMPAT_CONST now does * generic/tclCompCmds.c what USE_NON_CONST used to do -- disable * generic/tclCompExpr.c only those new CONST's that introduce * generic/tclCompile.c irreconcilable incompatibilities. * generic/tclCompile.h * generic/tclDecls.h Several bugs are also fixed by this patch. * generic/tclEnv.c [Bugs 584051,580433] [Patches 585105,582429] * generic/tclEvent.c * generic/tclInt.decls * generic/tclInt.h * generic/tclIntDecls.h * generic/tclInterp.c * generic/tclLink.c * generic/tclObj.c * generic/tclParse.c * generic/tclParseExpr.c * generic/tclProc.c * generic/tclTest.c * generic/tclUtf.c * generic/tclUtil.c * generic/tclVar.c * mac/tclMacTest.c * tests/expr-old.test * tests/parseExpr.test * unix/tclUnixTest.c * unix/tclXtTest.c * win/tclWinTest.c
* TclDecrRefCount under USE_THREAD_ALLOC: free intRep first, then stringMiguel Sofer2002-07-311-5/+5
| | | | rep [Bug 524802]
* removed load-related clientData, made filesystem staticvincentdarley2002-07-221-2/+1
|
* Global symbols are now all either prefixed with 'tcl' (or 'Tcl' or ...) or ↵dkf2002-07-191-1/+2
| | | | have file-scope.
* Tcl_LoadHandle usagevincentdarley2002-07-181-4/+4
|
* load comments and clientData replacementvincentdarley2002-07-181-2/+5
|
* load comments and clientData replacementvincentdarley2002-07-181-2/+1
|
* load comments and clientData replacementvincentdarley2002-07-181-6/+3
|
* load internals refactoringvincentdarley2002-07-171-3/+10
|
* variable access optimisationsMiguel Sofer2002-07-171-1/+25
|
* const fix for new variable codedgp2002-07-161-3/+3
|
* using the new variable name caching possibilities when setting errorMiguel Sofer2002-07-161-1/+3
| | | | results in (Tcl_AddObjErrorInfo) and (TclUpdateReturnInfo)
* * generic/tclVar.c: refactorisation to reuse already looked-up VarMiguel Sofer2002-07-151-3/+3
| | | | | | | | | | | | | | | | | | pointers; definition of three new Tcl_Obj types to cache variable name parsing and lookup for later reuse; modification of internal functions to profit from the caching. * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclNamesp.c: adding CONST qualifiers to variable names passed to Tcl_FindNamespaceVar and to variable resolvers; adding CONST qualifier to the 'msg' argument to TclLookupVar. Needed to avoid code duplication in the new tclVar.c code. * tests/set-old.test: * tests/var.test: slight modification of error messages due to the modifications in the tclVar.c code.
* * Removed declarations that duplicated entries in the (internal)dgp2002-07-151-137/+1
| | | | stub table.
* fs cleanupvincentdarley2002-07-081-2/+2
|
* * doc/CrtTrace.3: Added TIP#62 implementation of commandhobbs2002-06-171-4/+42
| | | | | | | | | | | | | | | * doc/trace.n: execution tracing [FR #462580] (lavana). * generic/tcl.h: This includes enter/leave tracing as well * generic/tclBasic.c: as inter-procedure stepping. * generic/tclCmdMZ.c: * generic/tclCompile.c: * generic/tclExecute.c: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclStubInit.c: * generic/tclVar.c: * tests/trace.test:
* vfs, winfs testsuitevincentdarley2002-06-131-2/+3
|
* optimised read access to local variables created at run-timeMiguel Sofer2002-06-111-7/+1
|
* Fix for [info locals] bug #567386; added compile functions forMiguel Sofer2002-06-111-1/+7
| | | | [global], [upvar] and [variable].
* * Removed internal routinedgp2002-05-311-2/+1
| | | | | | | | TclMathInProgress and Unix implementation of matherr(). These are now obsolete, dealing with very old versions of the C math library. Windows version is retained in case Borland compilers require it, but it is inactive. Thanks to Joe English. [Bug 474335, Patch 555635].
* * unix/configure: regen'edhobbs2002-05-301-7/+7
| | | | | | | | | * unix/configure.in: replaced bigendian check with autoconf standard AC_C_BIG_ENDIAN, which defined WORDS_BIGENDIAN on bigendian systems. * generic/tclUtf.c (Tcl_UniCharNcmp): * generic/tclInt.h (TclUniCharNcmp): use WORDS_BIGENDIAN instead of TCL_OPTIMIZE_UNICODE_COMPARE to enable memcmp alternative.
* Made Tcl_UniCharNcmp faster on big-endian machines; the system memcmp()isdkf2002-05-291-1/+18
| | | | | probably optimized far in excess of anything we could do! Little-endian just use the old code...
* * generic/tclInt.h: added prototype for TclpFilesystemPathType().das2002-05-201-1/+3
| | | | | * mac/tclMacChan.c: use MSL provided creator type if available instead of the default 'MPW '.
* memory cleanupvincentdarley2002-05-131-1/+2
|
* * generic/tclInt.h: corrected TclRememberJoinableThread decl tohobbs2002-04-241-2/+2
| | | | use VOID instead of void.
* * generic/tclAlloc.c:hobbs2002-04-231-1/+31
| | | | | | | | | | | | | | | * generic/tclInt.h: * generic/tclThreadAlloc.c (new): * unix/Makefile.in: * unix/tclUnixThrd.c: * win/Makefile.in: * win/tclWinInt.h: * win/tclWinThrd.c: added new threaded allocator contributed by AOL that significantly reduces lock contention when multiple threads are in use. Only Windows and Unix implementations are ready, and the Windows one may need work. It is only used by default on Unix for now, and requires that USE_THREAD_ALLOC be defined (--enable-threads on Unix will define this).
* tclInt.h: restoring correct operation ordering in TclDecrRefCountMiguel Sofer2002-03-061-13/+13
| | | | macro [Bug 524802]
* reversed accidental commit of unfinished sourceshobbs2002-02-271-34/+11
|
* generic/tclCmdMZ.chobbs2002-02-271-11/+34
|
* * generic/tclInt.h:dgp2002-02-221-1/+2
| | | | | | | * generic/tclObj.c: renamed global variable emptyString -> tclEmptyString because it is no longer static. * generic/tclPkg.c: Fix for panic when library is loaded on a platform without backlinking without proper use of stubs. [Bug 476537]
* TIP#72 implementation. See ChangeLog for details.dkf2002-02-151-8/+10
| | | | | This version builds clean on Solaris/SPARC, with GCC and CC, both with and without threads and both in 32-bit and 64-bit mode.
* Added Tcl_CreateObjTrace, Tcl_GetCommandInfoFromToken andKevin B Kenny2002-02-101-3/+11
| | | | Tcl_SetCommandInfoFromToken. (TIPs #32 and #79.)
* * For each interface identified in thedgp2002-01-311-2/+2
| | | | | | | | | | TIP 27 changes below as a POTENTIAL INCOMPATIBILITY, the source of the incompatibility has been parameterized so that it can be removed. When compiling extension code against the Tcl header files, use the compiler flag -DUSE_NON_CONST to remove the irresolvable source incompatibilities introduced by the TIP 27 changes. Resolvable changes are left for extension authors to resolve.