sl@0: 2001-12-28 Jeff Hobbs sl@0: sl@0: * library/init.tcl: make sure env(COMSPEC) on Windows is executed sl@0: with the right case, as it may otherwise fail inexplicably. sl@0: sl@0: 2001-12-28 Don Porter sl@0: sl@0: * generic/tclCkalloc.c (MemoryCmd, TclFinalizeMemorySubsystem): sl@0: Added the [memory onexit] command, intended to replace [checkmem]. sl@0: sl@0: * doc/DumpActiveMemory.3: sl@0: * doc/memory.n: Updated documentation for [memory] and related sl@0: matters. [Bug 487677] sl@0: sl@0: * mac/tclMacBOAMain.c (Tcl_Main, CheckmemCmd): Removed all the sl@0: machinery for the [checkmem] command that is completely duplicated sl@0: by code in generic/tclCkalloc.c. sl@0: sl@0: * generic/tclBinary.c: sl@0: * generic/tclListObj.c: sl@0: * generic/tclObj.c: sl@0: * generic/tclStringObj.c: Removed references to [checkmem] in sl@0: comments, referencing [memory active] instead, since it is sl@0: documented. sl@0: sl@0: 2001-12-28 Daniel Steffen sl@0: sl@0: * mac/tclMacInit.c: sl@0: * mac/tclMacTclCode.r: synced up tclInit features to unix/win: sl@0: implemented TclSetPreInitScript support, use of existing tclInit sl@0: proc if defined, check of default encoding dir if set. Changed sl@0: script library resource names to lowercase (i.e. same as sl@0: corresponding files). Used Tcl_JoinPath instead of string append. sl@0: Check that system encoding could be loaded before utf translating sl@0: the LibraryPath. sl@0: * mac/tclMacApplication.r: sl@0: * mac/tclMacLibrary.r: sl@0: * mac/tclMacOSA.r: sl@0: * mac/tclMacResource.r: minor version resources cleanup sl@0: sl@0: 2001-12-21 Mo DeJong sl@0: sl@0: * unix/tcl.m4 (SC_PATH_TCLCONFIG, SC_PATH_TKCONFIG): sl@0: Search for config file using exec_prefix instead of sl@0: prefix when no --with-tcl or --with-tk argument is used. [Bug 492418] sl@0: sl@0: 2001-12-21 Daniel Steffen sl@0: sl@0: * unix/tcl.m4: fixed incorrect SHLIB_LD_LIBS sl@0: setting for MacOSX / Darwin. sl@0: * unix/configure: Regen. sl@0: * unix/mkLinks.tcl: improved case-insensitive sl@0: filesystem support. sl@0: * unix/mkLinks: Regen. sl@0: sl@0: 2001-12-19 Don Porter sl@0: sl@0: * unix/Makefile.in (dist): corrected use of eolFix.tcl on sl@0: working files. It should operate on distributed files. [Bug 495120] sl@0: sl@0: 2001-12-19 David Gravereaux sl@0: sl@0: * tools/tcl.wse.in: Fix for #495120. tcl.wse.in was sl@0: stored in cvs with improper . This resulted in sl@0: corrupted when checked-out on translating CVS sl@0: clients such as windows (CRCRLF) and mac (CRCR). sl@0: sl@0: 2001-12-19 Mo DeJong sl@0: sl@0: * unix/configure: sl@0: * unix/tcl.m4 (SC_CONFIG_CFLAGS): Update sl@0: SunOS 5.[0-6] target so that correct linker sl@0: options are passed to gcc or ld. [Tk Bug 220863] sl@0: sl@0: 2001-12-19 Mo DeJong sl@0: sl@0: * unix/README: Update to account for changes sl@0: in the unix/dltest directory, the way autoconf sl@0: is run, and the new "make shell" target. sl@0: sl@0: 2001-12-19 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Rename dltest to dlpkgs to sl@0: fix problem where lib files were not getting sl@0: built because dltest/ directory already existed. sl@0: sl@0: 2001-12-19 Jeff Hobbs sl@0: sl@0: * win/tclWinSerial.c (SerialCheckProc): corrected time sl@0: calculations to be unsigned. (schroedter) sl@0: sl@0: 2001-12-18 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Define new dltest target that sl@0: simply does a cd to dltest/ before running make. sl@0: There is no need for the separate configure sl@0: script that was previously being used. sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Subst into dltest/Makefile. sl@0: * unix/dltest/Makefile.in: Define LIBS using sl@0: DL_LIBS, LIBS, and MATH_LIBS variables instead sl@0: of TCL_LIBS variable from tclConfig.sh. sl@0: * unix/dltest/README: Update readme to account for new sl@0: configure free implementation. sl@0: * unix/dltest/configure: Removed. sl@0: * unix/dltest/configure.in: Removed. sl@0: sl@0: 2001-12-18 Donal K. Fellows sl@0: sl@0: * generic/tcl.h (TCL_STUB_MAGIC): Added cast to force type to be sl@0: an int and get rid of a persistent and pointless warning with sl@0: SunPro compiler. sl@0: sl@0: * generic/tclCkalloc.c (Tcl_AttemptDbCkalloc,Tcl_AttemptDbCkrealloc): sl@0: * generic/tcl.decls (Tcl_AttemptDbCkalloc,Tcl_AttemptDbCkrealloc): sl@0: Made the file parameters to these functions into CONST char *, sl@0: like they always should have been to match the other Tcl*Db* API sl@0: functions. sl@0: sl@0: 2001-12-17 Andreas Kupries sl@0: sl@0: * Applied #219311 on behalf of Rolf Schroedter sl@0: to prevent fcopy on serial sl@0: ports from flooding the event queue. sl@0: sl@0: 2001-12-11 Miguel Sofer sl@0: sl@0: * doc/CrtInterp.3: sl@0: * generic/tclBasic.c: docs and comments corrections [Bug 493412] sl@0: Bug & patch by Don Porter. sl@0: sl@0: 2001-12-14 Donal K. Fellows sl@0: sl@0: * win/tclWinNotify.c (Tcl_FinalizeNotifier): Stop Tcl on Windows sl@0: from crashing when shutdown from a non-Tcl thread. Fixes Bug sl@0: #217982 [orig. 5804] reported by Hugh Vu and Gene Leache. I'm sl@0: not convinced that the shutdown process is right even with this, sl@0: but it was definitely wrong without... sl@0: sl@0: 2001-12-13 Andreas Kupries sl@0: sl@0: * win/tclWinSock.c (TcpGetOptionProc): Fix for tcl bug item sl@0: #478565 reported by an unknown person. Bypasses all calls to sl@0: "gethostbyaddr" for address "0.0.0.0" to prevent delays on sl@0: Win/NT. sl@0: sl@0: 2001-12-12 Jeff Hobbs sl@0: sl@0: * doc/Preserve.3: doc'd TCL_DYNAMIC use. [Patch #483989] (porter) sl@0: sl@0: 2001-12-12 Andreas Kupries sl@0: sl@0: * generic/tclIO.c (Tcl_GetsObj): Applied patch for bug #491341 as sl@0: provided by Don Porter . Fixes the sl@0: assumption of having an empty Tcl_Obj to work with. sl@0: sl@0: 2001-12-11 Miguel Sofer sl@0: sl@0: * generic/tclCompCmds.c: sl@0: * generic/tclCompile.c: sl@0: * generic/tclExecute.c: consistency patch, to make all sl@0: instructions that pop a variable number of Tcl_Obj's off the sl@0: execution stack take the number of popped objects as first sl@0: operand. Modified *only* the new instructions sl@0: INST_LIST_INDEX_MULTI and INST_LSET_FLAT, so this has no effect sl@0: on bytecodes generated up to tcl8.4a3 inclusive. sl@0: sl@0: * generic/tclExecute.c: fix debug messages in INST_LSET_LIST. sl@0: sl@0: * generic/tclCompCmds.c (TclCompileLindexCmd): sl@0: * generic/tclCompExpr.c (CompileMathFuncCall): removed the last sl@0: two overestimates of the necessary stack depth for bytecodes in sl@0: the fix of [Bug 483611]. sl@0: sl@0: 2001-12-10 Andreas Kupries sl@0: sl@0: * unix/tclUnixPipe.c (TclpCreateProcess): Applied Don Porter's sl@0: patch fixing bug #437489. sl@0: sl@0: 2001-12-10 Miguel Sofer sl@0: sl@0: * generic/tclEvent.c: sl@0: * tests/event.test: fix background error reporting in the absence sl@0: of a bgerror proc [Bug 219142]. sl@0: sl@0: 2001-12-10 Don Porter sl@0: sl@0: * doc/Access.3: sl@0: * doc/CrtChannel.3: sl@0: * doc/DString.3: sl@0: * doc/ExprLong.3: sl@0: * doc/FileSystem.3: sl@0: * doc/GetStdChan.3: sl@0: * doc/OpenFileChnl.3: sl@0: * doc/StdChannels.3: sl@0: * doc/TCL_MEM_DEBUG.3: sl@0: * doc/Tcl_Main.3: sl@0: * doc/Utf.3: sl@0: * doc/file.n: sl@0: * doc/tclsh.1: Several typo and formatting corrections discovered sl@0: during conversion to TMML. Thanks to Joe English. [Patch 490514] sl@0: * unix/mkLinks: 'make mklinks' sl@0: sl@0: 2001-12-10 Miguel Sofer sl@0: sl@0: * generic/tclCompCmds.c: sl@0: * generic/tclCompExpr.c: sl@0: * generic/tclCompile.c: sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: sl@0: * generic/tclProc.c: fixed the calculation of the maximal stack sl@0: depth required by bytecodes [Bug 483611]. sl@0: sl@0: 2001-12-07 Miguel Sofer sl@0: sl@0: * generic/tclVar.c: sl@0: * tests/trace.test: restored consistency in refCount accounting by sl@0: array traces [Bug #4484339], submitted by Don Porter. sl@0: sl@0: 2001-12-06 Donal K. Fellows sl@0: sl@0: * tests/parseExpr.test, tests/for.test, tests/expr.test: sl@0: * tests/expr-old.test, tests/compile.test, tests/compExpr.test sl@0: * tests/compExpr-old.test: Kept up to date with syntax errors. sl@0: * generic/tclParseExpr.c (ParsePrimaryExpr): Rewrote to give even sl@0: better syntax errors in the fairly common case of an identifier sl@0: without decorations by guessing based on the currently available sl@0: functions. Also made messages consistent between memdebug and sl@0: ordinary builds. sl@0: sl@0: 2001-12-05 Miguel Sofer sl@0: sl@0: * generic/tclVar.c: sl@0: * tests/trace.test: new algorithm for [array get], safe when there sl@0: are traces that modify the array [Bug #449893]. sl@0: sl@0: 2001-12-04 Donal K. Fellows sl@0: sl@0: * tests/compExpr-old.test, tests/compExpr.test, tests/compile.test: sl@0: * tests/expr-old.test, tests/expr.test, tests/for.test: sl@0: * tests/while.test, tests/if.test: Rewrite to handle more specific sl@0: syntax errors. sl@0: * tests/parseExpr.test: Rewrite to get rid of dup test numbers and sl@0: handle more specific syntax errors. sl@0: * generic/tclParseExpr.c (LogSyntaxError): Added a detail message sl@0: argument to help explain what the syntax error is. sl@0: (Tcl_ParseExpr, ParseCondExpr, ParsePrimaryExpr): Added detail sl@0: messages. sl@0: (UNKNOWN_CHAR): New lexeme for characters that are always illegal sl@0: in expressions outside strings. sl@0: sl@0: 2001-12-03 Donal K. Fellows sl@0: sl@0: * doc/expr.n: Various documentation improvements in relation to sl@0: the function calls. Includes fix for Bug #487704 submitted by sl@0: Devin Eyre. sl@0: sl@0: 2001-12-03 David Gravereaux sl@0: sl@0: * win/makefile.vc: Some install target bugs repaired along with sl@0: $(TCLSTUBLIB) added to the dependencies rather than implicit through sl@0: the dde and reg extensions which don't happen to always require it sl@0: for some build types. sl@0: sl@0: 2001-11-30 Miguel Sofer sl@0: sl@0: * generic/tclVar.c: Tcl_Preserve'ing VarTrace structures to avoid sl@0: memory corruption. Patch for [Bug: 484334] provided by Don Porter sl@0: sl@0: 2001-11-29 Miguel Sofer sl@0: sl@0: * tests/namespace.test: modified namespace-41.2, added 41.3 sl@0: {knownbug} after discussion with Don Porter and Kevin Kenny. sl@0: sl@0: 2001-11-29 Miguel Sofer sl@0: sl@0: * tests/namespace.test: added namespace-41.2, a simpler test for sl@0: [Bug: 231259] sl@0: sl@0: 2001-11-29 Donal K. Fellows sl@0: sl@0: * generic/tclBinary.c (BINARY_SCAN_MAX_CACHE, Tcl_BinaryObjCmd, sl@0: ScanNumber): Added caching scheme to reduce number of object sl@0: allocations when doing scans of large repetitive binary strings. sl@0: See comments in file for reasoning behind implementation. sl@0: Suggested by Miguel Sofer in Patch #429916, but independently sl@0: implemented. sl@0: sl@0: 2001-11-28 Donal K. Fellows sl@0: sl@0: * doc/regsub.n, doc/regexp.n: Converted dangling references to sl@0: METASYNTAX section into references to the re_syntax manual page. sl@0: sl@0: 2001-11-27 D. Richard Hipp sl@0: sl@0: * win/tclWinFCmd.c: Fix a coredump in the filename normalizer sl@0: code for Win95/98. sl@0: sl@0: 2001-11-27 David Gravereaux sl@0: sl@0: * win/makefile.vc: Removed the Tk reference for the 'winhelp' target. sl@0: Converge at install will need to be the solution for Tk and all other sl@0: extensions. sl@0: sl@0: 2001-11-27 Donal K. Fellows sl@0: sl@0: * tests/cmdAH.test (cmdAH-24.2): Made test less sensitive to OS sl@0: preemption, but perfection isn't practical [Bug 463189, reported sl@0: by Don Porter.] sl@0: sl@0: * tests/switch.test (switch-9.*): Added tests to exercise more of sl@0: the argument checking. (switch-7.2,switch-7.3): Test changed sl@0: behaviour slightly. sl@0: * generic/tclCmdMZ.c (Tcl_SwitchObjCmd): Reworked argument parsing sl@0: to be stricter about what it accepts. This should make uses of sl@0: the [switch] command be more maintainable. [Bug 475397, reported sl@0: by Don Porter.] sl@0: sl@0: 2001-11-26 Don Porter sl@0: sl@0: * generic/tclIntPlatDecls.h: 'make genstubs' after changes sl@0: in 2001-11-23 commit from Daniel Steffen. sl@0: sl@0: 2001-11-24 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Add comments to better describe sl@0: TCL_EXE and when it should be available. sl@0: * win/Makefile.in: Add TCL_EXE variable to be used sl@0: by rules like `make genstubs`. Don't set TCL_LIBRARY sl@0: before running `make genstubs` since we will be running sl@0: with a tclsh from the PATH not the one we build. sl@0: sl@0: 2001-11-24 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Add comctl32.lib sl@0: to wish link libs. This change was originally added sl@0: to Tk on 2001-11-09 but was not committed to Tcl. sl@0: sl@0: 2001-11-23 Daniel Steffen sl@0: sl@0: * unix/Makefile.in: sl@0: * unix/configure.in: sl@0: * unix/install-sh: sl@0: * unix/mkLinks: sl@0: * unix/mkLinks.tcl: sl@0: * unix/tclLoadDyld.c: sl@0: * unix/tclMtherr.c: Mac OSX support: build system, dynamic code loading sl@0: and support for case-insensitive filesystems in mkLinks (patch #435258) sl@0: sl@0: 2001-11-23 Daniel Steffen sl@0: sl@0: Up-port to 8.4 of mac code changes for 8.3.3 & various new sl@0: changes for 8.4, some already backported to 8.3.4 (patch #435658) sl@0: sl@0: * generic/tclObj.c: added #include to fix missing prototype errors sl@0: sl@0: * generic/tcl.h: MAC_TCL: addition of ConditionalMacros.h and use of sl@0: DLLIMPORT and DLLEXPORT like on other platforms. ( => no longer need sl@0: the .exp files and can remove use of #pragma export that never worked sl@0: well) sl@0: removed line continuation in #if clause as this breaks the mac sl@0: resource compiler (note that *.r files include tcl.h) sl@0: sl@0: * mac/tclMacFile.c: fixed bug in permission checking code sl@0: sl@0: * mac/tclMacLoad.c: corrected utf8 handling, comparison of sl@0: package names to code fragment names changed to only match on the sl@0: length of package name, this allows for fragment names with version sl@0: numbers appended sl@0: sl@0: * mac/tclMacInt.h: sl@0: * generic/tclInt.h: sl@0: * mac/tclMacTime.c: sl@0: * generic/tclIOUtil.c: moved declaration of TclpGetGMTOffset() sl@0: sl@0: * mac/tclMacShLib.exp: sl@0: * mac/tclMacOSA.exp: sl@0: * mac/tclMacMSLPrefix.h: removed files sl@0: sl@0: * unix/Makefile.in: removed reference to .exp files sl@0: sl@0: * mac/MW_TclBuildLibHeader.h: sl@0: * mac/MW_TclBuildLibHeader.pch: sl@0: * mac/MW_TclHeaderCommon.h: sl@0: * mac/MW_TclStaticHeader.h: sl@0: * mac/MW_TclStaticHeader.pch: new precompiled header files sl@0: sl@0: * mac/MW_TclAppleScriptHeader.pch: sl@0: * mac/MW_TclHeader.pch: sl@0: * mac/MW_TclTestHeader.pch: sl@0: * mac/tclMacCommonPch.h: revised precompiled header handling: now sl@0: include a common header file 'MW_TclHeaderCommon.h' from all .pch sl@0: files, the .pch files themselves now only setup #defines (e.g. sl@0: BUILD_tcl, STATIC_BUILD, TCL_DEBUG, TCL_THREADS) like in makefiles on sl@0: other platforms. sl@0: sl@0: * mac/tclMac.h: sl@0: * mac/tclMacPort.h: sl@0: * mac/tclMacInt.h: use of BUILD_tcl and TCL_STORAGE_CLASS like on other sl@0: platforms, standardize #include'd files to what's done on other sl@0: platforms, removed use of #pragma export. sl@0: sl@0: * mac/tcltkMacBuildSupport.sea.hqx: new archive of mac build support sl@0: files & suggested build environment directory hierarchy: sl@0: 'Building MacTclTk' & 'CW Pro6 changes' readme's. sl@0: projects for MoreFiles 1.5.2 static & shared libraries. sl@0: project & sources for 'pseudoCarbonSupport', see below. sl@0: included XML versions of the projects for CW Pro5 or Pro7 users. sl@0: sl@0: * mac/tclMacProjects.sea.hqx: updated mac build project files: sl@0: build support for CodeWarrior Pro6, UnivIntf 3.4 & shared runtime sl@0: libraries: the MSL libraries and MoreFiles are no longer compiled into sl@0: Tcl.shlb, all non-static binaries now use the Pro6 shared runtime sl@0: libraries and MoreFiles.shlb. These shlbs are merged into the standard sl@0: Wish and TclShell, but 3rd party applications linking with Tcl.shlb or sl@0: Tk.shlb need to setup access to them. (see the "(sh-ppc)" targets sl@0: for how to do this.) sl@0: included XML versions of the projects for CW Pro5 or Pro7 users. sl@0: use compat/strtod.c instead of MSL's strtod() sl@0: use WASTE versions of MSL for tcl test target to avoid text buffer sl@0: cutoff at 32k. sl@0: Merging the full MSL.shlb and the other shlbs into Wish & TclShell sl@0: makes them a bit larger than before, use unmerged binaries to avoid sl@0: copying the shared code with every application, e.g. when deploying sl@0: numerous Wish based droplets. sl@0: Note that using CW Pro5 to compile extensions is in principle still sl@0: possible, but need to link with Pro6 runtime libraries. sl@0: Tclapplescript now loads and runs on CFM68k. sl@0: Highly experimental "pseudoCarbon" support for Tcl only on OS 8/9: sl@0: binaries in "Build:(Carbon):" link against CarbonLib instead of sl@0: InterfaceLib, however the actual code has not been carbonized! i.e. it sl@0: will not run on OSX and may not even run properly with CarbonLib. sl@0: This should in principle allow you to build & test OS9 CFM Carbon sl@0: binaries that need to link with Tcl.shlb. On OSX you can use the sl@0: native Tcl.framework, but you have to build a MachO binary as there sl@0: is no CFM glue lib for Tcl.framework. sl@0: the library pseudoCarbonSupport.shlb manually loads the symbols sl@0: from InterfaceLib that are not in CarbonLib but are needed by the sl@0: uncarbonized code in Tcl.shlb and TclShell. sl@0: sl@0: * generic/tclMain.c: MAC_TCL: workaround for broken/non-standard isatty sl@0: on MW Pro6, #include instead of defining isatty sl@0: sl@0: * mac/tclMacPort.h: MW Pro6 changes for MSL fcntl.h, stat.h & isatty sl@0: sl@0: * mac/tclMacAppInit.c: add EXTERN to InstallConsole to enable DLL sl@0: export via the TCL_STORAGE_CLASS mechanism. sl@0: sl@0: * mac/tclMacFCmd.c: fix for FSpDirectoryCopy API change sl@0: sl@0: * mac/tclMacLibrary.c: emit compile time error when sl@0: TCL_REGISTER_LIBRARY and USE_TCL_STUBS are both defined at the same sl@0: time in an extension, this use is not currently supported and will sl@0: result in a crash when dynamically loading the extension. sl@0: sl@0: * mac/tclMacApplication.r: sl@0: * mac/tclMacLibrary.r: sl@0: * mac/tclMacOSA.r: sl@0: * mac/tclMacResource.r: fixed obsolete copyrights/dates in version sl@0: strings; updated version strings to standard usage; added support for sl@0: '(Support Libraries)' subfolder for shared runtime libraries in sl@0: unmerged binaries; commented out demo setting of "Tcl Environment sl@0: Variables"; reorganized resources among these files to avoid sl@0: multiple copies in applications and shared libraries, the script sl@0: libraries are now no longer duplicated in Tclsh but are only included sl@0: in the resources of Tcl.shlb. sl@0: sl@0: * mac/tclMacChan.c: sl@0: * mac/tclMacSock.c: cast for *BlockMode sl@0: sl@0: * mac/tclMacUtil.c: sl@0: * mac/tclMacMath.h: removed obsolete hypot() definition sl@0: sl@0: * generic/tclIntPlatDecls.h: sl@0: * generic/tclInt.decls: sl@0: * generic/tclStubInit.c: sl@0: * mac/tclMacNotify.c: sl@0: * mac/tclMacOSA.c: sl@0: * mac/tclMacUtil.c: sl@0: * generic/tclThreadTest.c: renamed routines conflicting with standard sl@0: Apple or MoreFiles headers (at compile or link time): sl@0: GetGlobalMouse -> GetGlobalMouseTcl sl@0: FSpGetDirectoryID -> FSpGetDirectoryIDTcl sl@0: FSpOpenResFileCompat -> FSpOpenResFileCompatTcl sl@0: FSpCreateResFileCompat -> FSpCreateResFileCompatTcl sl@0: NewThread -> NewTestThread sl@0: the renamed MoreFiles *Tcl routines are just wrappers calling into the sl@0: MoreFiles DLL. sl@0: sl@0: * mac/tclMacCommonPch.h: sl@0: * mac/tclMacThrd.c: sl@0: * mac/tclMacPanic.c: removed OLDROUTINENAMES define, renamed obsolete sl@0: apple API names to modern equivalents; UH3.4 support: added #include sl@0: , updated New*Proc() calls to New*UPP(). sl@0: sl@0: * mac/tclMacUnix.c: added missing (Tcl_Obj ***) cast to sl@0: Tcl_ListObjGetElements call sl@0: sl@0: * mac/tclMacAlloc.c: modernized TclpSysAlloc() to use temporary sl@0: memory instead of system heap memory when available (MacOS sl@0: >= 7.5 and possibly earlier, use of system heap has been sl@0: discouraged for a long time and has many disadvantages, e.g. memory sl@0: isn't paged out, and errors can very easily bring the system down); sl@0: fixed crashing bug in TclpSysRealloc() and CleanUpExitProc() where sl@0: memory was being accessed after having been deallocated; fixed sl@0: memory leak in (de)allocation code (for every block ever allocated sl@0: with TclpSysAlloc, a Ptr was leaked), if temporary memory is sl@0: available, don't track allocated memory, instead use sl@0: RecoverHandle() to get Handle from Ptr, otherwise use doubly linked sl@0: list to correctly track memory and free all allocated memory; added sl@0: new option for ConfigureMemory: MEMORY_DONT_USE_TEMPMEM, disables sl@0: use of temporary memory even when it would be available, only sl@0: necessary when writing e.g. a driver (using tcl??); increased sl@0: fraction of application heap reserved for OS routines to 512K sl@0: sl@0: * compat/strftime.c: sl@0: * mac/tclMacTime.c: sl@0: * mac/tclMacPort.h: sl@0: * generic/tclInt.decls: sl@0: * generic/tclIntPlatDecls.h: sl@0: * generic/tclStubInit.c: timezone support for mac via sl@0: TclpGetTZName() like on windows, using an inverse timezone table sl@0: adapted from tclDate.c to map gmtoffset in seconds gotten from sl@0: the MacOS APIs to a timezone string, as there is no good way to get sl@0: this info from MacOS. I had to make up some unusual timezones and sl@0: arbitrarily decide on the most standard of the multiple choices sl@0: available for every timezone. sl@0: sl@0: * generic/tclExecute.c: workaround for a MSL bug/misfeature: for sl@0: very small floats, MSL can return errno ERANGE but a sl@0: non-zero value ( < LDBL_MIN however) sl@0: sl@0: * mac/tclMacAppInit.c: support for WASTE text library using sl@0: temporary memory, setting has no effect if WASTE is not used. sl@0: sl@0: * mac/tclMacPanic.c: removed duplicate code from generic/tclPanic.c sl@0: and added that file to projects instead. sl@0: sl@0: * tests/all.tcl: set tcltest::singleProcess 1 as multiple processes sl@0: are not available on the mac. sl@0: sl@0: * tests/cmdAH.test: access time not available on the mac, skip the sl@0: atime touch test sl@0: sl@0: * tests/appendComp.test: sl@0: * tests/cmdMZ.test: sl@0: * tests/compile.test: sl@0: * tests/exec.test: sl@0: * tests/fileName.test: sl@0: * tests/lset.test: sl@0: * tests/namespace.test: sl@0: * tests/tcltest.test: added missing cleanups/tests/catches that sl@0: caused tests to fail on the mac. sl@0: sl@0: * doc/tclvars.n: doc bug, env(PWD) should be env(HOME) [Bug 463834] sl@0: sl@0: 2001-11-21 Don Porter sl@0: sl@0: * tests/trace.test (trace-8.8): Corrected test for Bug 219393. sl@0: sl@0: * generic/tclBasic.c (Tcl_DeleteCommandFromToken,CallCommandTraces): sl@0: * generic/tclCmdMZ>c (Tcl_UntraceCommand): Added Tcl_Preserve and sl@0: Tcl_Release calls to prevent deletion of CommandTrace structures sl@0: until all callers are done using them, preventing memory corruption. sl@0: [Bug 453805] sl@0: sl@0: 2001-11-20 Kevin B. Kenny sl@0: sl@0: * doc/GetTime.3 (Tcl_GetTime): sl@0: * generic/tcl.decls (Tcl_GetTime): sl@0: * generic/tclClock.c (Tcl_ClockObjCmd): sl@0: * generic/tclCompile.c (TclCleanupByteCode, TclInitByteCodeObj): sl@0: * generic/tclCmdMZ.c (Tcl_TimeObjCmd): sl@0: * generic/tclUtil.c (TclpGetTime): sl@0: * generic/tclTest.c (GetTimesCmd): sl@0: * generic/tclTimer.c (Tcl_CreateTimerHandler, TimerSetupProc, sl@0: TimerCheckProc, TimerHandlerEventProc): sl@0: * mac/tclMacNotify.c (Tcl_SetTimer): sl@0: * mac/tclMacShLib.exp (Tcl_GetTime): sl@0: * mac/tclMacTime.c (Tcl_GetTime): sl@0: * unix/tclUnixChan.c (TclUnixWaitForFile): sl@0: * unix/tclUnixEvent.c (Tcl_Sleep): sl@0: * unix/tclUnixThrd.c (Tcl_ConditionWait): sl@0: * unix/tclUnixTime.c (Tcl_GetTime): sl@0: * win/tclWinNotify.c (Tcl_Sleep): sl@0: * win/tclWinTest.c (TestwinclockCmd): sl@0: * win/tclWinTime.c (TclpGetSeconds, TclpGetClicks, Tcl_GetTime): sl@0: Changed all uses of TclpGetTime to Tcl_GetTime. Added Tcl_GetTime sl@0: to the Stubs table and the library documentation. Added a sl@0: TclpGetTime in tclUtil.c for backward compatibility of sl@0: extensions. [Patch #483500, TIP#73] sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_TimeObjCmd): Corrected an error in the sl@0: [time] command that caused incorrect results to be returned if the sl@0: total duration of all iterations exceeded 2**31 microseconds. sl@0: [Bug #478847] sl@0: sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: sl@0: * generic/tclStubInit.h: Reran 'make genstubs' sl@0: sl@0: 2001-11-20 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: moving all code relative to bytecodes from sl@0: tclBasic.c to tclExecute.c - the functions RecordTracebackInfo and sl@0: Tcl_ExprObj went to tclExecute.c, and new interface function was sl@0: defined (TclCompEvalObj). sl@0: The final objective of this sequence of moves is to provide a sl@0: clean, clear-cut interface between Tcl's core and the sl@0: compiler/engine subsystem. sl@0: sl@0: 2001-11-20 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: factoring out of common code in tclBasic.c sl@0: (new function TclInterpReady defined: it resets the interp's sl@0: result, then checks that it hasn't been deleted and that the sl@0: nesting level is acceptable). Passed the responsibility of calling sl@0: it to the *callers* of TclEvalObjvInternal. sl@0: sl@0: 2001-11-20 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c sl@0: * generic/tclExecute.c: a better variant of the previous-to-last sl@0: commit (restoring numLevels computations). The managing of the sl@0: levels now has to be done by the *callers* of TclEvalObjvInternal sl@0: sl@0: 2001-11-20 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: missing variable declaration under sl@0: TCL_COMPILE_DEBUG. sl@0: sl@0: 2001-11-20 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: sl@0: * generic/tclProc.c: restoring the computations of iPtr->numLevels sl@0: to the original logic (previous to buggy modifs on 2001-11-16). sl@0: sl@0: 2001-11-20 Jeff Hobbs sl@0: sl@0: * tools/eolFix.tcl (new-file): sl@0: * unix/Makefile.in: added EOL correction for Windows bat files to sl@0: dist target. [Bug #219409] (davygrvy) sl@0: sl@0: * unix/tclUnixInit.c (TclpSetInitialEncodings): update of patch sl@0: from 2001-11-16 that uses the old Tcl encoding check mechanism as sl@0: a fallback to the original. Also added a TCL_DEFAULT_ENCODING sl@0: #define (defaults to iso8859-1). Tcl will first try setlocale and sl@0: nl_langinfo, and if that fails, guess based on certain LANG|LC_* sl@0: env vars. [Patch #418645] sl@0: sl@0: 2001-11-19 David Gravereaux sl@0: sl@0: * win/buildall.vc.bat: Added useful comments. sl@0: sl@0: 2001-11-19 Miguel Sofer sl@0: sl@0: * tests/compile.test: added a test for bug [Bug 483309] sl@0: sl@0: 2001-11-19 Vince Darley sl@0: sl@0: * win/tclWinFile.c: sl@0: * win/tclWinFCmd.c: sl@0: * win/tclWin32Dll.c: sl@0: * doc/file.n: sl@0: * tests/winFCmd.test: improved speed of file normalization sl@0: for Win95/98, and clarified docs on differences in file sl@0: normalization between NT/2000 and the older operating systems. sl@0: Added test to ensure normalization is correct. sl@0: sl@0: 2001-11-19 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c: sl@0: * generic/tclParse.c: Code reorganisation. Moved all evaluation sl@0: functions from tclParse.c to tclBasic.c, so that now tclParse.c sl@0: deals exclusively with parsing and all evaluations are done by sl@0: code in tclBasic.c. The functions moved are: TclEvalObjvInternal, sl@0: Tcl_EvalObjv, Tcl_LogCommandInfo, Tcl_EvalTokensStandard, sl@0: Tcl_EvalTokens, Tcl_EvalEx, Tcl_Eval, Tcl_EvalObj and sl@0: Tcl_GlobalEvalObj. sl@0: sl@0: 2001-11-19 Donal K. Fellows sl@0: sl@0: * tests/trace.test (trace-8.8): Added adapted version of Bug sl@0: #219393 as new test; the test won't reliably show up the old sl@0: problem unless it is being run under something like Purify, but sl@0: something is better than nothing... sl@0: sl@0: * generic/tclVar.c (Tcl_TraceVar2, Tcl_UntraceVar2): Added missing sl@0: mask bits for trace result type and a check for a nonsense flag sl@0: combination. sl@0: * generic/tclCmdMZ.c (TraceVarProc): Added missing test for NULL sl@0: when deleting a trace that doesn't cause an error. sl@0: sl@0: * doc/TraceVar.3: Added documentation for change due to TIP#68. sl@0: sl@0: * generic/tclCmdMZ.c (TraceVarInfo): Removed problematic errMsg sl@0: field from structure. sl@0: (TraceVarProc): Removed references to errMsg field and changed sl@0: handling of errors so that they returned a Tcl_Obj* containing the sl@0: error string. This minimizes the number of calls to the memory sl@0: management subsystem. sl@0: (TclTraceCommandObjCmd, TraceCommandProc): Removed references to sl@0: errMsg field which was never used in command traces in any case. sl@0: (Tcl_TraceObjCmd, TclTraceVariableObjCmd): Removed references to sl@0: errMsg field and made variable traces register with sl@0: TCL_TRACE_RESULT_OBJECT bit set. sl@0: sl@0: * generic/tcl.h (TCL_TRACE_RESULT_DYNAMIC,TCL_TRACE_RESULT_OBJECT): sl@0: New constants to define how to handle the strings returned from sl@0: trace callbacks [TIP#68] sl@0: * generic/tclVar.c (CallTraces, Tcl_GetVar2Ex, TclGetIndexedScalar, sl@0: TclGetElementOfIndexedArray, Tcl_SetVar2Ex, TclSetIndexedScalar, sl@0: TclSetElementOfIndexedArray, Tcl_UnsetVar2, Tcl_ArrayObjCmd, sl@0: TclDeleteVars, TclDeleteCompiledLocalVars, DeleteArray, sl@0: TclVarTraceExists): Support for those new trace flags. sl@0: sl@0: 2001-11-19 Miguel Sofer sl@0: sl@0: * generic/tclCompCmds.c: patch for [Bug 483309] (petasis). sl@0: sl@0: 2001-11-16 Kevin B. Kenny sl@0: sl@0: * generic/tclListObj.c: removed a C++-style comment that sl@0: was inadvertently left in the source code. sl@0: sl@0: 2001-11-16 Jeff Hobbs sl@0: sl@0: * tests/interp.test: sl@0: * generic/tclInterp.c (SlaveObjCmd): Corrected argument checking sl@0: for '$interp alias|aliases|issafe'. [Patch #479560] (thoyts, hobbs) sl@0: sl@0: * unix/tclUnixInit.c: added HAVE_LANGINFO code block. sl@0: * unix/configure: regened sl@0: * unix/configure.in: added SC_ENABLE_LANGINFO call sl@0: * unix/tcl.m4: made SHLIB_LD_LIBS='${LIBS}' for FreeBSD* (meyer) sl@0: Added modified version of Wagner patch to make use of nl_langinfo sl@0: where possible to determine Unix platform encoding, instead of the sl@0: inflexible built-in system. This is used by default when sl@0: possible, and can be disabled with --enable-langinfo=no. sl@0: [Patch #418645] (hobbs, wagner) sl@0: sl@0: 2001-11-16 Miguel Sofer sl@0: sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: sl@0: * generic/tclObj.c: moved Tcl_GetCommandFromObj and all defining sl@0: code for tclCmdNameType objects to tclObj.c (from tclExecute.c). sl@0: This code has nothing to do with bytecodes. sl@0: sl@0: 2001-11-16 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c: sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: sl@0: * generic/tclParse.c: sl@0: * generic/tclProc.c: sl@0: * tests/stack.test: consolidation of duplicated code (in sl@0: TclExecuteByteCode and EvalObjv); renaming of EvalObjv to sl@0: TclEvalObjv as it is not static anymore; restored consistency of sl@0: level counts between compiled and directly evaled code. sl@0: [Bug 480896] sl@0: sl@0: 2001-11-12 David Gravereaux sl@0: sl@0: * win/makefile.vc: sl@0: * win/rules.vc: Small bug fixes. sl@0: sl@0: * win/README: added some docs pointing to the docs in makefile.vc sl@0: for it's use. sl@0: sl@0: 2001-10-17 Kevin B. Kenny sl@0: sl@0: * doc/lappend.n: sl@0: * doc/lindex.n: sl@0: * doc/linsert.n: sl@0: * doc/list.n: sl@0: * doc/llength.n: sl@0: * doc/lrange.n: sl@0: * doc/lsearch.n: sl@0: * doc/lset.n (new-file): sl@0: * doc/lsort.n: sl@0: * generic/tclBasic.c (builtInCmds, Tcl_EvalObjEx): sl@0: * generic/tclCmdIL.c (Tcl_LindexObjCmd, Tcl_LindexList): sl@0: (Tcl_LindexFlat, Tcl_LsetObjCmd): sl@0: * generic/tclCompCmds.c (Tcl_CompileLindexCmd, Tcl_CompileLsetCmd): sl@0: * generic/tclCompile.c: sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c (TclExecuteByteCode): sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: sl@0: * generic/tclIntDecls.h: sl@0: * generic/tclListObj.c (TclLsetList, TclLsetFlat, TclSetListElement): sl@0: * generic/tclObj.c (TclInitObjSubsystem): sl@0: * generic/tclStubInit.c: sl@0: * generic/tclTestObj.c (TestobjCmd): sl@0: * generic/tclUtil.c (TclGetIntForIndex, SetEndOffsetFromAny): sl@0: * generic/tclVar.c (Tcl_LappendObjCmd): sl@0: * tests/lindex.test: sl@0: * tests/lset.test (new-file): sl@0: * tests/lsetComp.test (new-file): sl@0: * tests/obj.test: sl@0: * tests/string.test: sl@0: * tests/stringComp.test: sl@0: Reference implementation of TIP's #22, #33 and #45. Adds the sl@0: ability of the [lindex] command to have multiple index arguments, sl@0: and adds the [lset] command. Both commands are byte-code compiled. sl@0: [Patch #471874] (work by Kenny, commited by Hobbs) sl@0: sl@0: 2001-11-12 David Gravereaux sl@0: sl@0: * win/buildall.vc.bat(new): sl@0: * win/makefile.vc: Small fix with deriving the "OriginalFilename" sl@0: string in the .rc scripts. Added a quick batchfile for building sl@0: the entire thing. sl@0: sl@0: 2001-11-12 Jeff Hobbs sl@0: sl@0: * doc/FileSystem.3: sl@0: * doc/file.n: sl@0: * doc/tcltest.n: converted use of \' to more reasonable format. sl@0: sl@0: 2001-11-10 Mo DeJong sl@0: sl@0: * unix/Makefile.in: sl@0: * win/Makefile.in: Add "make gdb" target. This target sl@0: can run tclsh inside either gdb or insight. sl@0: sl@0: 2001-11-10 David Gravereaux sl@0: sl@0: * win/makefile.vc: Added a check to make sure one runs the makefile sl@0: from the /win directory only. sl@0: sl@0: * win/mkd.bat: sl@0: * win/rmd.bat: Changes from Llyod Lim for better stability. sl@0: [Patch #456759] sl@0: sl@0: 2001-11-09 David Gravereaux sl@0: sl@0: * win/makefile.vc: sl@0: * win/tcl.dsp: winhelp target fixes for non-NT systems. It sl@0: seems NMAKE under these remembers changed directories during sl@0: commands. A new tcltest feature from Peter Spjuth sl@0: to specify a pattern file from the sl@0: commandline and redirecting output to a file when not under sl@0: NT with it's scrollback console. Then it replays it, piped sl@0: through more. Added 2 new static "configurations" to tcl.dsp. sl@0: I could keep adding more, but I think we should leave it up to sl@0: the user for customizing it. sl@0: sl@0: Sticky-points left: 'profile' option. sl@0: sl@0: 2001-11-09 Jeff Hobbs sl@0: sl@0: * doc/FileSystem.3: sl@0: * doc/StdChannels.3: sl@0: * doc/file.n: sl@0: * doc/tcltest.n: sl@0: * tools/man2help.tcl: sl@0: * tools/man2help2.tcl: fixed winhelp generation problems sl@0: [Patch #480268] sl@0: sl@0: * unix/configure: sl@0: * unix/tcl.m4: added -lc to AIX libs, fixed path to ldAix sl@0: sl@0: 2001-11-09 Don Porter sl@0: sl@0: * tests/var.test: sl@0: * generic/tclVar.c: Corrected bug in [global] when dealing sl@0: with variable names matching :*. [Bug 480176] sl@0: sl@0: 2001-11-08 Mo DeJong sl@0: sl@0: Fixup stack size under OSF1. [Tcl patch 474790] sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4: Add HAVE_PTHREAD_ATTR_SETSTACKSIZE define sl@0: to EXTRA_CFLAGS to adjust initial stack size. sl@0: sl@0: 2001-11-08 Mo DeJong sl@0: sl@0: Enable thread support under FreeBSD. [Tcl bug 473708] sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4 (SC_ENABLE_THREADS): Check for pthread functions sl@0: in libc_r and enable thread support if found. sl@0: * unix/dltest/Makefile.in: Set SHLIB_LD_LIBS and use it in sl@0: the Makefile to properly link a shared library. sl@0: sl@0: 2001-11-08 Mo DeJong sl@0: sl@0: * unix/Makefile.in: sl@0: * unix/dltest/Makefile.in: sl@0: Avoid adding libc to the LIBS variable since it sl@0: is not needed when linking with CC. If required sl@0: when linking with LD it should be done on a case sl@0: by case basis in tcl.m4. sl@0: sl@0: 2001-11-08 David Gravereaux sl@0: sl@0: * win/rules.vc: sl@0: * win/makefile.vc: Fixed install target to adjust for the sl@0: different build types. Added a 'linkexten' option to link the sl@0: win extensions inside the shell when built static. Placed sl@0: win/tclAppInit.c patch in SF patch DB for approval. 'profile' sl@0: option not hooked in yet. Everything else know is done. sl@0: sl@0: * win/tcl.dsp(new): sl@0: * win/tcl.dsw(new): Simple MsDev stub project files that calls sl@0: makefile.vc. Will help run Tcl in the debugger easier without sl@0: confusing MsDev for where the .pdb files are. sl@0: sl@0: 2001-11-07 Mo DeJong sl@0: sl@0: * unix/Makefile.in: sl@0: * win/Makefile.in: sl@0: Print a message indicating that the user should sl@0: run "make genstubs" when the generated tclStubInit.c sl@0: file is out of date. We can't regenerate automatically sl@0: since there may be no tclsh on the system and that sl@0: would cause bootstrap problems. [Tcl bug 465874] sl@0: sl@0: 2001-11-07 Mo DeJong sl@0: sl@0: Define TCL_INCLUDE_SPEC in tclConfig.sh. It should be sl@0: included by extensions that need to find Tcl include sl@0: headers in the install location. The user can override sl@0: the include install dir with --includedir so we need sl@0: to record this information for extensions. [Tcl bug 421835] sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Define TCL_INCLUDE_SPEC. sl@0: * unix/tclConfig.sh.in: Define TCL_INCLUDE_SPEC. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Define TCL_INCLUDE_SPEC. sl@0: * win/tclConfig.sh.in: Define TCL_INCLUDE_SPEC. sl@0: sl@0: 2001-11-07 David Gravereaux sl@0: sl@0: * win/rules.vc: sl@0: * win/makefile.vc: Dropped the NOMSVCRT macro and put it on the sl@0: option list instead. It makes more sense to me this way as sl@0: NOMSVCRT=0 would only be the valid setting. Fixed the dde and reg sl@0: extension for building static. Improved, but not perfected, the sl@0: winhelp target. sl@0: sl@0: 2001-11-07 Mo DeJong sl@0: sl@0: * win/README: Change minimum VC++ version to 5.X since sl@0: 4.X is known not to work. sl@0: Indicate that Mingw is required and building with Cygwin sl@0: gcc is not supported. Include instructions that indicate sl@0: how to install Mingw and what URLs folks should use to sl@0: download the supported version of Mingw. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Error out if user tries to compile the sl@0: Windows version of Tcl with Cygwin gcc. Users should compile sl@0: with Mingw gcc instead. sl@0: sl@0: 2001-11-06 Andreas Kupries sl@0: sl@0: * generic/tclIO.c (ReadChars): Fixed bug #478856 reported by sl@0: Stuart Cassoff . The bug caused loss sl@0: of fileevents when [read]ing less data from the channel than sl@0: buffered. Due to an empty input buffer the flag sl@0: CHANNEL_NEED_MORE_DATA was set but never reset, causing the I/O sl@0: system to wait for more data instead of using a timer to sl@0: synthesize fileevents and to flush the pending data out of the sl@0: buffers. sl@0: sl@0: 2001-11-06 David Gravereaux sl@0: sl@0: * win/rules.vc (new): sl@0: * win/makefile.vc: Complete over/under rewrite to support numerous sl@0: build options all from the commandline itself without needing to sl@0: edit the makefile. Now requires vcvars32.bat to be run prior to sl@0: running nmake for bootstraping the environment. Fully doc'd usage sl@0: for it is in makefile.vc. Commentary welcome. Sticky points left sl@0: are: sl@0: sl@0: 1) winhelp target shows errors in the converting script. sl@0: 2) .rc scripts aren't getting the right #defines to build the correct sl@0: "OriginalFilename" strings. (have patch, won't commit yet) sl@0: 3) Naming convention with suffixes describing the buildtype are 'tsdx' sl@0: which will need public acceptance. ie. tclsh84tsx.exe is a (t) sl@0: threaded shell (s) statically linked to the core and (x) uses sl@0: msvcrt instead of libcmt. sl@0: sl@0: 2001-11-04 Vince Darley sl@0: sl@0: * library/init.tcl: made filesystem fallback proc sl@0: ::tcl::CopyDirectory more robust to vagaries of non-native sl@0: filesystems. sl@0: sl@0: 2001-11-02 Vince Darley sl@0: sl@0: * doc/file.n: sl@0: * generic/tclIOUtil.c: updated documentation and comments sl@0: to clarify behaviour of 'file copy' wrt soft links. sl@0: sl@0: 2001-10-29 Vince Darley sl@0: sl@0: * win/tclWinFile.c: fix to '-types {f r}' bug in sl@0: TclpMatchInDirectory (which could cause a UMR, as well as sl@0: returning wrong results). Also improved API for 'stat' sl@0: to resolve [Bug#219258]. sl@0: * win/tclWin32Dll.c sl@0: * win/tclWinInt.h: addition of improved stat API to internal sl@0: lookup table. sl@0: * tests/fileName.test: two new tests for the above bug. sl@0: * generic/tclIOUtil.c: some cleanup of comments and #ifdefs sl@0: sl@0: 2001-10-29 Donal K. Fellows sl@0: sl@0: * unix/tclUnixFile.c (TclpMatchInDirectory): Argument to access() sl@0: was entryPtr->d_name instead of nativeEntry which failed when sl@0: trying to check access for files in other than the current sl@0: directory. [Bug 475941, reported by Georgios Petasis] sl@0: sl@0: 2001-10-25 Donal K. Fellows sl@0: sl@0: * unix/tclUnixChan.c: Added stateUpdated member to struct TtyState. sl@0: (TtyCloseProc,TtySetOptionProc,TtyInit): Use stateUpdated member sl@0: of TtyState to decide whether it is necessary to reset a serial sl@0: port when Tcl closes it. Blindly resetting can cause Tcl to be sl@0: sent an unexpected SIGTSTP when it is executing in the background sl@0: [Bug 471374, reported by Chris Nelson] sl@0: sl@0: 2001-10-22 Andreas Kupries sl@0: sl@0: * doc/ObjectType.3: Minor documentation fix, reported by David sl@0: N. Welton directly to me. sl@0: sl@0: 2001-10-22 Vince Darley sl@0: sl@0: * win/tclWinFCmd.c: fix to stop test suite from hanging process sl@0: under some versions of WinNT. [Bug #466102] (Kevin Kenny) sl@0: sl@0: 2001-10-18 Jeff Hobbs sl@0: sl@0: * tests/clock.test (clock-8.1): sl@0: * generic/tclDate.c (RelativeMonth): sl@0: * generic/tclGetDate.y (RelativeMonth): corrected off-by-one-day sl@0: error in clock scan with relative months and years during swing sl@0: hours. [Bug #413397, Patch #414024] (lavana) sl@0: sl@0: 2001-10-18 Vince Darley sl@0: sl@0: * generic/tclIOUtil.c: fix to bug in Tcl_FSChdir shown up sl@0: by recent tclkit builds. sl@0: sl@0: 2001-10-17 Jeff Hobbs sl@0: sl@0: * unix/tclUnixPipe.c (PipeInputProc, PipeOutputProc): do immediate sl@0: retry when error is returned with errno == EINTR. sl@0: [Bug #415131] (leger) sl@0: sl@0: 2001-10-16 Jeff Hobbs sl@0: sl@0: * unix/tclLoadAout.c (TclGuessPackageName): removed unused vars sl@0: and fixed warnings. [Bug #446622] (lim) sl@0: sl@0: 2001-10-15 Miguel Sofer sl@0: sl@0: * generic/tclProc.c: changing a memcmp to strncmp to avoid a memory sl@0: error detected by purify (thanks Jeff); modify style to agrre with sl@0: the style guide. sl@0: sl@0: 2001-10-15 Andreas Kupries sl@0: sl@0: * generic/tclInt.decls (TclExpandCodeArray,TclGetInstructionTable): sl@0: Added to internal stubs table. Tclcompiler (Tclpro project) sl@0: needs them if used as loadable package under Windows. Changed sl@0: signatures. We don't want to describe compiler internal sl@0: structures in "tclInt.h". sl@0: sl@0: * generic/tclCompile.h: S.a. Removed function declarations. sl@0: * generic/tclCompile.c: S.a. Adapted to changed signatures. sl@0: sl@0: 2001-10-15 Jeff Hobbs sl@0: sl@0: * unix/configure: sl@0: * unix/configure.in: sl@0: * win/configure: sl@0: * win/configure.in: sl@0: * win/tcl.m4: reworked to be a little cleaner in comparison to sl@0: each other, and to AC_SUBST even empty vars for win/tclConfig.sh sl@0: sl@0: * generic/tclFileName.c: minor code cleanup sl@0: sl@0: * generic/tcl.h: moved #define of WIN32 to tcl.h where __WIN32__ sl@0: is defined and added #ifndef check. sl@0: sl@0: * doc/open.n: moved all fconfigure option docs to fconfigure.n sl@0: * doc/fconfigure.n: added serial config options sl@0: sl@0: * win/tclWinChan.c: sl@0: * win/tclWinPort.h: sl@0: * win/tclWinSerial.c: added TIP #35 Windows enhancements for sl@0: serial configuration. [Patch #438509] (schroedter) sl@0: sl@0: 2001-10-15 Vince Darley sl@0: sl@0: * generic/tclFCmd.c: fix to memory leak in TclFileDeleteCmd on sl@0: certain error conditions. sl@0: * doc/FileSystem.3: fix to typo. sl@0: sl@0: 2001-10-12 Jeff Hobbs sl@0: sl@0: * library/encoding/ebcdic.enc: sl@0: * tools/encoding/ebcdic.txt: EBCDIC charset mapping. sl@0: [Patch #219323] (nijtmans) sl@0: sl@0: * library/encoding/tis-620.enc: sl@0: * tools/encoding/tis-620.txt: TIS-620 charset mapping. sl@0: [Patch #467423] (poonlap) sl@0: sl@0: * tests/http.test: added removeFile for outdata sl@0: sl@0: * tests/ioCmd.test: added catch around file removal, as Windows sl@0: file locking throws errors. sl@0: sl@0: * tests/socket.test (socket-7.2): corrected to work on Win2K. sl@0: sl@0: 2001-10-12 Miguel Sofer sl@0: sl@0: * tests/compile.test: new tests for [Bug 467523]; they are only sl@0: effective if TCL_MEM_DEBUG was set during compilation. sl@0: sl@0: 2001-10-11 Miguel Sofer sl@0: sl@0: * generic/tclLiteral.c (TclReleaseLiteral): insured that sl@0: self-referential bytecodes are properly cleaned up on interpreter sl@0: deletion [Bug 467523] (Ronnie Brunner) sl@0: sl@0: 2001-10-10 David Gravereaux sl@0: sl@0: * win/tclWinPort.h: #include needed to get moved sl@0: to after #include or wierd misunderstandings took sl@0: place when -D_WIN32_WINNT=0x0400 is set for outside code that sl@0: requires knowledge of Tcl innards. General header macro magic sl@0: applied liberally... sl@0: sl@0: 2001-10-10 Don Porter sl@0: sl@0: * tests/unixInit.test: Corrected restore of ::env(LANG). sl@0: sl@0: 2001-10-09 Jeff Hobbs sl@0: sl@0: * generic/tclFileName.c (Tcl_SplitPath): corrected mem leak sl@0: intro'd with VFS code where the result obj from Tcl_FSSplitPath sl@0: was not getting freed. sl@0: sl@0: 2001-10-09 Miguel Sofer sl@0: sl@0: * generic/tclLiteral.c: (TclReleaseLiteral) reverted previous sl@0: patch for [Bug 467523] - cure is worse than the illness. sl@0: sl@0: 2001-10-05 Miguel Sofer sl@0: sl@0: * generic/tclLiteral.c: (TclReleaseLiteral) insured that sl@0: self-referential bytecodes are properly cleaned up on interpreter sl@0: deletion [Bug 467523] (Ronnie Brunner) sl@0: sl@0: 2001-10-04 Jeff Hobbs sl@0: sl@0: * tools/configure: sl@0: * tools/configure.in: noted 8.4 as default Tcl version sl@0: sl@0: * library/encoding/cp936.enc: sl@0: * library/encoding/cp949.enc: sl@0: * library/encoding/cp950.enc: sl@0: * library/encoding/iso8859-16.enc: sl@0: * library/encoding/macCroatian.enc: sl@0: * library/encoding/macCyrillic.enc: sl@0: * library/encoding/macGreek.enc: sl@0: * library/encoding/macIceland.enc: sl@0: * library/encoding/macRoman.enc: sl@0: * library/encoding/macTurkish.enc: sl@0: * tools/encoding/cp1250.txt: sl@0: * tools/encoding/cp1251.txt: sl@0: * tools/encoding/cp1252.txt: sl@0: * tools/encoding/cp1253.txt: sl@0: * tools/encoding/cp1254.txt: sl@0: * tools/encoding/cp1255.txt: sl@0: * tools/encoding/cp1256.txt: sl@0: * tools/encoding/cp1257.txt: sl@0: * tools/encoding/cp1258.txt: sl@0: * tools/encoding/cp874.txt: sl@0: * tools/encoding/cp932.txt: sl@0: * tools/encoding/cp936.txt: sl@0: * tools/encoding/cp949.txt: sl@0: * tools/encoding/cp950.txt: sl@0: * tools/encoding/iso8859-1.txt: sl@0: * tools/encoding/iso8859-10.txt: sl@0: * tools/encoding/iso8859-13.txt: sl@0: * tools/encoding/iso8859-14.txt: sl@0: * tools/encoding/iso8859-15.txt: sl@0: * tools/encoding/iso8859-16.txt: sl@0: * tools/encoding/iso8859-2.txt: sl@0: * tools/encoding/iso8859-3.txt: sl@0: * tools/encoding/iso8859-4.txt: sl@0: * tools/encoding/iso8859-5.txt: sl@0: * tools/encoding/iso8859-6.txt: sl@0: * tools/encoding/iso8859-7.txt: sl@0: * tools/encoding/iso8859-8.txt: sl@0: * tools/encoding/iso8859-9.txt: sl@0: * tools/encoding/koi8-r.txt: sl@0: * tools/encoding/macCentEuro.txt: sl@0: * tools/encoding/macCroatian.txt: sl@0: * tools/encoding/macCyrillic.txt: sl@0: * tools/encoding/macGreek.txt: sl@0: * tools/encoding/macIceland.txt: sl@0: * tools/encoding/macRoman.txt: sl@0: * tools/encoding/macTurkish.txt: sl@0: Updated encodings with latest mappings from www.unicode.org. This sl@0: did not include some Mac encodings that have special multi-unichar sl@0: translations now (like symbols, dingbats and japanese). Also does sl@0: not include big5, gb or euc* as those have different formats in sl@0: the latest Unicode version that need new conversion tools. Not sl@0: all related .enc files changed as some had been updates separately. sl@0: sl@0: 2001-10-03 Jeff Hobbs sl@0: sl@0: * generic/tclEvent.c (Tcl_FinalizeThread): moved freeing of sl@0: tclLibraryPath to before the thread exit handlers are called. sl@0: Slight modification to change on 2001-09-24. sl@0: sl@0: 2001-10-01 Jeff Hobbs sl@0: sl@0: * win/configure: regen'ed sl@0: * win/tcl.m4: sl@0: * win/makefile.vc: added Win64 SDK RC1 compilation support sl@0: * win/Makefile.in: added $(LDFLAGS_CONSOLE) to TCLSH, TCLTEST and sl@0: PIPE_DLL_FILE targets to get the link flags sl@0: sl@0: * win/tclWinInit.c: minor 64bit casts sl@0: sl@0: 2001-10-01 Miguel Sofer sl@0: sl@0: * generic/tclCmdIL.c: sl@0: * generic/tclCmdMZ.c: sl@0: * generic/tclParseExpr.c: removed unnecessary inclusion of sl@0: tclCompile.h and made a small modification in (InfoBodyCmd) to sl@0: improve the isolation of the compiler/engine subsystem. sl@0: sl@0: 2001-09-29 Vince Darley sl@0: sl@0: * generic/tclIOUtil.c: sl@0: * doc/FileSystem.3: corrected and clarified documentation sl@0: for 'Tcl_FSListVolumes(Proc)'. No code changes. sl@0: sl@0: 2001-09-28 Miguel Sofer sl@0: sl@0: * doc/FindExec.3: added a comment not to change the working sl@0: directory before calling Tcl_GetNameOfExecutable [Bug 219215] sl@0: sl@0: 2001-09-28 Kevin Kenny sl@0: sl@0: * generic/tclIO.c: added two more '(ClientData)' casts sl@0: on calls to Tcl_Preserve and Tcl_Release -- ones that sl@0: Vince apparently missed. sl@0: sl@0: 2001-09-28 Donal K. Fellows sl@0: sl@0: * doc/lsort.n: Improved doc... sl@0: * generic/tclCmdIL.c (Tcl_LsortObjCmd, SortCompare): Made sl@0: offset-from-end indexing work, and factored out some "magic sl@0: numbers" for easier understanding. [Bug #465674] sl@0: * tests/cmdIL.test (cmdIL-1.26): Added test for offset-from-end sl@0: indexing for lsort. sl@0: sl@0: 2001-09-28 Vince Darley sl@0: sl@0: * win/tclWinFCmd.c: sl@0: * unix/tclUnixFCmd.c: fix to performance issue reported sl@0: by jcw in which 'access("")' is called unnecessarily when sl@0: normalizing any absolute path. sl@0: * generic/tclIO.c: added '(ClientData)' cast to calls to sl@0: Tcl_(Preserve|Release) newly introduced, fixing compile sl@0: error on Windows. sl@0: sl@0: 2001-09-27 Don Porter sl@0: sl@0: * doc/FileSystem.3 (Tcl_FSLoadFile): sl@0: * generic/tcl.decls (Tcl_FSLoadFile): sl@0: * generic/tcl.h (Tcl_FSLoadFileProc): sl@0: * generic/tclInt.h (TclpLoadFile): sl@0: * generic/tclIOUtil.c (Tcl_FSLoadFile): sl@0: * generic/tclLoadNone.c (TclpLoadFile): sl@0: * generic/tclTest.c (TestReportLoadFile): sl@0: * library/ldAout.tcl: sl@0: * mac/tclMacLoad.c (TclpLoadFile): sl@0: * unix/tclLoadAix.c (TclpLoadFile): sl@0: * unix/tclLoadAout.c (TclpLoadFile): sl@0: * unix/tclLoadDl.c (TclpLoadFile): sl@0: * unix/tclLoadDld.c (TclpLoadFile): sl@0: * unix/tclLoadDyld.c (TclpLoadFile): sl@0: * unix/tclLoadNext.c (TclpLoadFile): sl@0: * unix/tclLoadOSF.c (TclpLoadFile): sl@0: * unix/tclLoadShl.c (TclpLoadFile): sl@0: * win/tclWinLoad.c (TclpLoadFile): sl@0: * win/tclWinFCmd.c (DoRemoveJustDirectory): More CONST poisoning sl@0: fixes from the 2001-09-24 TIP 27 changes. CONST-ified sl@0: Tcl_FSLoadFile and TclpLoadFile. Report and patch from Kevin sl@0: Kenny. [Bug 465833] sl@0: sl@0: * generic/tclIO.c (ChannelTimerProc): Added Tcl_Preserve() sl@0: and Tcl_Release() to fix segfault introduced by the 2001-09-26 sl@0: changes. [Bug 465494] sl@0: sl@0: * doc/TCL_MEM_DEBUG.3: Updated out-of-date reference to sl@0: #define GUARD_SIZE. sl@0: sl@0: * doc/UpVar.3 (Tcl_UpVar,Tcl_UpVar2): sl@0: * generic/tcl.decls (Tcl_UpVar,Tcl_UpVar2): sl@0: * generic/tclInt.decls (TclFindProc,TclGetFrame): sl@0: * generic/tclInt.h (TclFindProc,TclGetFrame,TclLookupVar, sl@0: TclPrecTraceProc,TclProcInterpProc}): sl@0: * generic/tclProc.c (TclGetFrame,TclFindProc): sl@0: * generic/tclVar.c (Tcl_UpVar,Tcl_UpVar2,MakeUpvar): Updated APIs in sl@0: generic/tclProc.c and generic/tclVar.c according to the guidelines sl@0: of TIP 27. [Patch 465442] sl@0: sl@0: * generic/tclDecls.h: sl@0: * generic/tclIntDecls.h: make genstubs sl@0: sl@0: 2001-09-26 Andreas Kupries sl@0: sl@0: * doc/fileevent.n: Accepted [Patch #465279] adding an example to sl@0: the fileevent manpage. Minor modifications to get a better sl@0: formatting. Report and patch by David N. Welton sl@0: . sl@0: sl@0: * The changes below fix [Bug #462317] where Expect tried to read sl@0: more than was in the buffers and then blocked in the OS call as sl@0: its pty channel driver provides no blockmodeproc through which sl@0: the OS could be notified of blocking-behaviour. Because of this sl@0: the general I/O core has to take more care than usual to sl@0: preserve the semantics of non-blocking channels. sl@0: sl@0: The problem was reported by "Kevin O'Gorman" sl@0: . sl@0: sl@0: * generic/tclIO.c (Tcl_ReadRaw): Do not read from the driver if sl@0: the channel is non-blocking and the fileevent causing the read sl@0: was generated by a timer. We do not know if there is data sl@0: available from the OS. Instead of going to the OS for more and sl@0: potentially blocking we simply signal EWOULDBLOCK to the higher sl@0: levels to cause the system to wait for true fileevents. sl@0: (GetInput): Same as before. sl@0: (ChannelTimerProc): Added set and clear of CHANNEL_TIMER_FEV. sl@0: sl@0: * generic/tclIO.h (CHANNEL_TIMER_FEV): New flag for channels. Is sl@0: set if a fileevent was generated by a timer, the channel is not sl@0: blocking and the driver did not provide a blockmodeproc. In that sl@0: case the I/O core has to be especially careful about going to sl@0: the driver for more data. sl@0: sl@0: 2001-09-26 Don Porter sl@0: sl@0: * doc/SplitPath.3 (Tcl_GetPathType): sl@0: * generic/tcl.decls (Tcl_GetPathType): sl@0: * generic/tclFileName.c (Tcl_GetPathType): sl@0: * win/tclWinFile.c (TclpMatchInDirectory, NativeStat): Vince sl@0: Darley reports the 2001-09-24 TIP 27 changes left the win sl@0: directory CONST poisoned. These changes should fix that. sl@0: sl@0: * generic/tclDecls.h: make genstubs sl@0: sl@0: 2001-09-25 Don Porter sl@0: sl@0: * doc/GetInt.3: sl@0: * generic/tclInt.h (TclGetLong deleted): sl@0: * generic/tcl.decls: sl@0: * generic/tclInt.decls: sl@0: * generic/tclGet.c: Updated APIs in generic/tclGet.c sl@0: according to the guidelines of TIP 27. [Patch 464674] sl@0: sl@0: * generic/tclDecls.h: sl@0: * generic/tclIntDecls.h: make genstubs sl@0: sl@0: 2001-09-25 Miguel Sofer sl@0: sl@0: * generic/tclVar.c: removed comments referring to unused flag sl@0: TCL_PARSE_PART1. sl@0: sl@0: 2001-09-24 Don Porter sl@0: sl@0: * doc/Concat.3: sl@0: * doc/DString.3: sl@0: * doc/SplitList.3: sl@0: * generic/tclInt.h (TclCheckBadOctal): sl@0: * generic/tcl.decls: sl@0: * generic/tclInt.decls: sl@0: * generic/tclEncoding.c (OpenEncodingFile): sl@0: * generic/tclMain.c (Tcl_Main): sl@0: * generic/tclUtil.c: sl@0: * unix/tclLoadDl.c (TclpLoadFile): Updated APIs in sl@0: generic/tclUtil.c according to the guidelines of TIP 27. sl@0: [Patch 464553] sl@0: sl@0: * generic/tclDecls.h: sl@0: * generic/tclIntDecls.h: make genstubs sl@0: sl@0: 2001-09-24 Andreas Kupries sl@0: sl@0: * The change below fixes [Bug #464380]. The bug was reported by sl@0: Ronnie Brunner . He also sl@0: provided the patch. sl@0: sl@0: * generic/tclEvent.c (Tcl_Finalize): Moved release of sl@0: 'tclLibraryPath' to Tcl_FinalizeThread. sl@0: (Tcl_FinalizeThread): See above, new place for release of sl@0: 'tclLibraryPath'. sl@0: sl@0: 2001-09-24 Donal K. Fellows sl@0: sl@0: * tools/encoding/cp1252.txt: File was missing part of the encoding sl@0: [euro, ZCaron and zcaron]. sl@0: sl@0: * doc/OpenFileChnl.3: Add docs for Tcl_OutputBuffered; remove some sl@0: old changebars. sl@0: sl@0: 2001-09-21 Jeff Hobbs sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): corrected sl@0: INST_STR_CMP else case for strings to pass true utf char length sl@0: to Tcl_UtfNCmp. sl@0: sl@0: 2001-09-20 Jeff Hobbs sl@0: sl@0: * win/tclWinInit.c: added extra processor definitions. (mstacy) sl@0: sl@0: * win/tclWinSock.c (SocketThread): corrected pointer cast for _WIN64. sl@0: sl@0: * win/tclWinNotify.c: removed unnecessary winsock include (it is sl@0: already in from tclWinPort.h). sl@0: sl@0: * win/tclWinPort.h: changed winsock.h include to winsock2.h. sl@0: Reverses change from 2000-11-16, but is necessary for WIN64. sl@0: Extensions should comply with defined OS words, or use #ifndef. sl@0: sl@0: 2001-09-20 Donal K. Fellows sl@0: sl@0: * tests/socket.test: removed dependence on being run from same dir sl@0: as remote.tcl, which only now needs to be in the same dir as sl@0: this file. [Bug #219326] sl@0: sl@0: 2001-09-19 Jeff Hobbs sl@0: sl@0: * generic/tclTest.c (TestcmdtokenCmd): corrected pointer sl@0: storage/retrieval for 64bit machines. sl@0: sl@0: * generic/tclCmdAH.c (Tcl_FormatObjCmd): sl@0: * generic/tclScan.c (Tcl_ScanObjCmd): corrected handling of format sl@0: and scan on 64-bit machines. [Bug #412696] (rmax) sl@0: sl@0: * unix/configure: regen'ed sl@0: * unix/tcl.m4: added --enable-64bit support for HP-11 with the sl@0: 64-bit kernel. sl@0: sl@0: * tests/basic.test: sl@0: * tests/cmdInfo.test: improved skip reporting of missing commands sl@0: sl@0: * tests/winFCmd.test: simplified error check for winFCmd-7.9 sl@0: sl@0: * tests/winPipe.test: removed obsolete cat16 tests sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): fixed invalid usage sl@0: of valuePtr in TRACE_WITH_OBJ in INST_EVAL_STK case. [Bug #462594] sl@0: Changed INST_STR_CMP instruction to promote to Unicode strings sl@0: only when one of the strings is already of Unicode type. sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): sl@0: * generic/tclCompile.c (instructionTable): sl@0: * generic/tclCompCmds.c (TclCompileStringCmd): INST_STR_MATCH - sl@0: Updated to Int1 instruction type and added special case to use sl@0: INST_STR_EQ instead when no glob chars are specified in a static sl@0: string. sl@0: sl@0: * tests/{for.test,foreach.test,if.test,while.test}: sl@0: * generic/tclCompCmds.c (TclCompileForCmd, TclCompileForeachCmd, sl@0: TclCompileIfCmd, TclCompileWhileCmd): Corrected the overaggressive sl@0: compiling of loop bodies enclosed in ""s. [Bug #219166] (msofer) sl@0: sl@0: 2001-09-19 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: insured that execution stack errors are sl@0: also detected at abnormal returns. sl@0: sl@0: 2001-09-19 Donal K. Fellows sl@0: sl@0: * doc/socket.n: Added documentation to mention what happens when a sl@0: server socket is created with port=0. Removed an old change bar, sl@0: and no new change bar because Tcl has always behaved this way as sl@0: it is really a poorly-documented standards-defined OS feature. sl@0: sl@0: * tests/util.test (util-8.1): Test derived from code to detect the sl@0: problem, but the test always works in the C locale, so beware if sl@0: you are maintaining the code. sl@0: * generic/tclUtil.c (TclNeedSpace): Rewrote to be UTF-8 aware. sl@0: [Bug 411825, but not that patch which would have added extra sl@0: spaces if there was a real non-ASCII space involved. ] sl@0: sl@0: 2001-09-18 Andreas Kupries sl@0: sl@0: * generic/tclIOCmd.c (Tcl_PutsObjCmd): Rewritten to have saner and sl@0: faster argument handling. Fixes bug #123552. Patch provided by sl@0: Donal K. Fellows : #402564. sl@0: sl@0: 2001-09-18 Don Porter sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4 (SC_CONFIG_CFLAGS): On Linux, disable inlining when sl@0: one of the compat/*.c routines is to be linked in. [Patch 440891] sl@0: sl@0: 2001-09-17 Jeff Hobbs sl@0: sl@0: * generic/tcl.h: removed forced #define USE_TCLALLOC 1 for sl@0: Windows. This means the native system allocator will be used by sl@0: default. This should be binary and source compatible with sl@0: extensions, as Tcl_Alloc is a properly stubbed function. sl@0: sl@0: 2001-09-17 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: corrected small bug in [Patch 456668] - sl@0: the varFramePtr was not restored in one possible exit. sl@0: sl@0: 2001-09-17 Miguel Sofer sl@0: sl@0: * doc/tclvars.n: sl@0: * generic/tclCompile.c: sl@0: * generic/tclCompile.h: sl@0: * generic/tclExecute.c: sl@0: * generic/tclProc.c: disabled all compile and execution tracing sl@0: functionality in standard builds; TCL_COMPILE_DEBUG is now sl@0: necessary to enable it. [Bug 451858] sl@0: sl@0: 2001-09-14 Andreas Kupries sl@0: sl@0: * doc/gets.n: sl@0: * doc/read.n: sl@0: * doc/puts.n: sl@0: * doc/flush.n: sl@0: * doc/fconfigure.n: sl@0: * doc/flush.n: sl@0: * doc/eof.n: sl@0: * doc/seek.n: sl@0: * doc/tell.n: sl@0: * doc/close.n: sl@0: * doc/fileevent.n: Added references to the Tcl standard sl@0: channels. Item [219250], reported by David LeBlanc sl@0: . Thanks to Christopher Nelson sl@0: for doing editorial work. sl@0: sl@0: 2001-09-13 Andreas Kupries sl@0: sl@0: * win/Makefile.in: sl@0: * win/configure.in: sl@0: * win/makefile.bc: sl@0: * win/makefile.vc: sl@0: * library/dde/pkgIndex.tcl: Fixed version numbers from bogus tcl sl@0: versions to independent versions for dde and registry packages. sl@0: sl@0: 2001-09-13 Jeff Hobbs sl@0: sl@0: * tests/regexp.test (regexp-20.1): sl@0: * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): had to adjust fix from sl@0: 2001-08-06 to actually duplicate the objects in certain cases. sl@0: This is really a place where feather would have been essential. sl@0: [Bug #461322] sl@0: sl@0: * generic/tclUtf.c (Tcl_UtfPrev): corrected to return the proper sl@0: location when the middle of a UTF-8 byte was passed in. sl@0: [Tk Bug #450504] sl@0: sl@0: * ChangeLog.1999: sl@0: * ChangeLog: broke changes from 199x into ChangeLog.1999 to reduce sl@0: size of the main ChangeLog. sl@0: sl@0: 2001-09-13 Andreas Kupries sl@0: sl@0: * tests/ioCmd.test: Changed the computation of the result for sl@0: iocmd-8.1[123] so that the tests work for single- and sl@0: multi-process execution of the testsuite. Depending on the sl@0: choice of the user stdout is a tty or not and thus reports sl@0: different channel options. Fixes [460993] reported by Don sl@0: Porter. sl@0: sl@0: 2001-09-13 Miguel Sofer sl@0: sl@0: * doc/ParseCmd.3: sl@0: * generic/tcl.decls: sl@0: * generic/tclCmdMZ.c (Tcl_SubstObjCmd): sl@0: * generic/tclDecls.h: sl@0: * generic/tclParse.c: sl@0: * generic/tclStubInit.c: sl@0: * tests/parse.test: Deprecate the use of Tcl_EvalTokens, replaced sl@0: by the new Tcl_EvalTokensStandard. The new function performs the sl@0: same duties but adheres to the standard return convention for Tcl sl@0: evaluations; the deprecated function could only return TCL_OK or sl@0: TCL_ERROR, which caused [Bug 219384] and [Bug 455151]. sl@0: This patch implements [TIP 56]. sl@0: sl@0: 2001-09-12 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4: Invert the logic that checks for $GCC. sl@0: Instead of checking for "$GCC" = "no" we check for sl@0: "$GCC" != "yes" or simply swap the true and false sl@0: blocks of code in an if statement. That way if sl@0: GCC is set to "" everything will still work. [Bug 460991] sl@0: sl@0: 2001-09-12 Don Porter sl@0: sl@0: * tests/appendComp.test: sl@0: * tests/lsearch.test: sl@0: * tests/namespace.test: sl@0: * tests/rename.test: sl@0: * tests/split.test: Corrected tests to better isolate tests in sl@0: one file from influencing tests in other files. [Bug 460591] sl@0: sl@0: 2001-09-12 Miguel Sofer sl@0: sl@0: * generic/tcl.decls: reserved stub #481 for the implementation of sl@0: [TIP 56] sl@0: sl@0: 2001-09-11 Andreas Kupries sl@0: sl@0: * doc/OpenFileChnl.3: Added documentation for Tcl_WriteRaw and sl@0: Tcl_ReadRaw [#414929]. sl@0: sl@0: * doc/CrtChannel.3: Added documentation for Tcl_ChannelBuffered sl@0: and Tcl_GetTopChannel [#414929]. sl@0: sl@0: * The changes below are a fix for [219253]. sl@0: sl@0: * tests/socket.test: Removed _most_ instances of hardwired port sl@0: numbers for listening sockets. Remaining are the ports in all sl@0: tests with constraint 'doTestsWithRemoteServer'. These seem to sl@0: be designed for a more controlled environment and are usually sl@0: skipped when running the testsuite. sl@0: sl@0: * tests/io.test: Removed all instances of hardwired port numbers sl@0: for listening sockets. sl@0: sl@0: 2001-09-10 Jeff Hobbs sl@0: sl@0: * generic/tclEvent.c (TclInExit): Corrected handling of tsd in sl@0: late stages of finalization. [Bug #419449] (darley) sl@0: sl@0: * tests/stack.test: sl@0: * generic/tclInterp.c (AliasObjCmd): Check the numLevels to ensure sl@0: that we aren't hitting some alias loop condition. [Bug #443184] sl@0: sl@0: 2001-09-10 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4 (SC_CONFIG_CFLAGS): Don't include . characters sl@0: in the Tcl library name when building on FreeBSD 3.X and later sl@0: systems. [Patch 450725] sl@0: sl@0: 2001-09-10 Andreas Kupries sl@0: sl@0: * doc/tclsh.1: sl@0: * doc/Tcl_Main.3: sl@0: * doc/CrtChannel.3: sl@0: * doc/OpenFileChnl.3: sl@0: * doc/GetStdChan.3: Enhanced the manpages with cross-references to sl@0: the new manpage and more explanations how these functions deal sl@0: with the standard channels in various situations. sl@0: sl@0: * doc/StdChannels.3: New manpage describing handling of the sl@0: standard channels by the Tcl library [402725]. sl@0: sl@0: 2001-09-10 Don Porter sl@0: sl@0: * unix/mkLinks (Tcl_FSLink): Updated to reflect 2001-08-23 sl@0: file system changes. sl@0: sl@0: * unix/tclLoadShl.c: Added #include of tclInt.h; access to Tcl sl@0: internals, notably TclpUnloadFile(), is required. Thanks to sl@0: Bob Techentin for report and patch. [Bug 459305] sl@0: sl@0: * generic/tclInitScript.h (initScript): sl@0: * win/tclWinInit.c (TCL_REGISTRY_KEY, TclpSetVariables): Removed sl@0: vestiges of Tcl's old initialization from registry variables. sl@0: [Bug 455645] sl@0: sl@0: 2001-09-10 Andreas Kupries sl@0: sl@0: * generic/tclInt.decls: Also added 'TclWinFlushDirtyChannels' to sl@0: the internal platform specific stub table. sl@0: sl@0: * win/tclWinFile.c (TclpObjStat): Now added the call to sl@0: 'TclWinFlushDirtyChannels' to this function. I don't know where sl@0: my head was last thursday (2001-09-06), but the call was sl@0: actually added to 'TclpObjChdir', i.e. the implementation of sl@0: [cd]. Corrected this now. Thanks to Vince Darley for spotting sl@0: this. sl@0: sl@0: 2001-09-10 Miguel Sofer sl@0: sl@0: * generic/tclProc.c: sl@0: * tests/proc.test: made [proc] bytecompile a no-op for procs sl@0: defined with _args_ as single argument and an empty body. sl@0: [FQ 451441] sl@0: sl@0: 2001-09-09 Mo DeJong sl@0: sl@0: * unix/Makefile.in: sl@0: * win/Makefile.in: Use () around variable name sl@0: instead of {}. Use TCLTEST variable directly sl@0: instead of depending on the tcltest alias. sl@0: sl@0: 2001-09-09 David Gravereaux sl@0: sl@0: * generic/tcl.h: sl@0: * generic/tclPlatDecls.h: Reminder from David Cuthbert sl@0: that I hadn't finished the Borland compatibility stuff. sl@0: [Patch: 436116] sl@0: sl@0: 2001-09-09 Mo DeJong sl@0: sl@0: * tests/cmdAH.test: Modify cmdAH-20.5 and cmdAH-24.8 sl@0: to display the file atime or mtime results if sl@0: the test fails. sl@0: sl@0: 2001-09-08 David Gravereaux sl@0: sl@0: * win/mkd.bat: sl@0: * win/rmd.bat: made these text files, text files again. sl@0: [Patch: 451333] sl@0: sl@0: 2001-09-08 Mo DeJong sl@0: sl@0: * win/mkd.bat: sl@0: * win/rmd.bat: sl@0: Apply binary property (cvs admin -kb) to files and convert sl@0: to CRLF linefeed format to fix the VC++ build. [Bug #219409] sl@0: sl@0: 2001-09-08 Vince Darley sl@0: sl@0: * generic/tclInt.h: sl@0: * generic/tclFCmd.c: sl@0: * doc/FileSystem.3: sl@0: * generic/tclIOUtil.c: removed Tcl_FSCopyFile fallback sl@0: to channel copying, since the channels will not have sl@0: access to interpreters and the channel copying currently sl@0: requires an interp. Code which required cross-platform sl@0: copies always has interpreters, so that solves the problem. sl@0: Fixes bug in TclKit. sl@0: sl@0: 2001-09-07 David Gravereaux sl@0: sl@0: * win/tcl.m4: Added -link50compat option so a VC6 linker makes sl@0: a VC5 (pre sp3) compatible import library. sl@0: [Bug: 219257] sl@0: sl@0: 2001-09-07 Mo DeJong sl@0: sl@0: * win/tclWinThrd.c (TclpThreadExit): Cast status argument to sl@0: _endthreadex to unsigned instead of DWORD to match the Win32 sl@0: function prototype. sl@0: sl@0: 2001-09-06 Andreas Kupries sl@0: sl@0: * All the changes below serve to fix bug [219148] which reports a sl@0: 80x performance hit for file I/O on Win* systems. On my system sl@0: it was closer to a 120x hit. Problem report by Uwe Traum . sl@0: sl@0: The fix goes like this: The obstacle is 'FlushFileBuffers', sl@0: executed whenever Tcl writes data to the OS, as Tcl has to wait sl@0: for the disk to complete I/O, and disks are slow. We remove that sl@0: obstacle. This opens another problem, [file size] reports back sl@0: wrong numbers. So for [file size] we add the call back in. As sl@0: optimization we keep track of the channels which were written to sl@0: and flush only these. sl@0: sl@0: * win/tclWinFile.c (TclpObjStat): Added a call to sl@0: 'TclWinFlushDirtyChannels'. This ensures that [file size] and sl@0: related commands report the correct size of a file even if Tcl sl@0: has recently written to it. Unixoid OS's always report the sl@0: correct size even for files with pending data, but Win* sl@0: syssystem don't. They only report what is actually on disk. sl@0: sl@0: * win/tclWinInt.h: Added declaration of sl@0: 'TclWinFlushDirtyChannels', making it available to other parts sl@0: of the tcl core. sl@0: sl@0: * win/tclWinChan.c (TclWinFlushDirtyChannels): New, internal, sl@0: procedure. Goes through the list of open file channels and sl@0: forces the OS to flush its file buffers for all which were sl@0: written to since the last call of this function. This is an sl@0: expensive operation as Tcl has to wait for the OS to complete sl@0: actual writes to the disk. sl@0: sl@0: (FileInfo): Added dirty flag required by the procedure above. sl@0: sl@0: (FileOutputProc): Removed flushing of file buffers, setting the sl@0: dirty flag instead. This means that the previously incurred sl@0: delays do not happen anymore. sl@0: sl@0: (TclWinOpenFileChannel): Added initialization of 'dirty' flag. sl@0: sl@0: 2001-09-06 Jeff Hobbs sl@0: sl@0: * doc/http.n: noted -binary, charset and coding state keys. sl@0: * tests/http.test: sl@0: * library/http/pkgIndex.tcl: sl@0: * library/http/http.tcl (geturl): correctly get charset parameter sl@0: and convert text according to specified encoding (if known). RFC sl@0: iso8859-1 is used by default. Also recognize Content-encoding to sl@0: see if we should do binary translation. Added a CYA -binary sl@0: switch for the cases that were missed. [Bug #219211 #219399] sl@0: sl@0: * tests/ioUtil.test: changed to make better use of constraints and sl@0: remove knownBug constraints that weren't valid. sl@0: sl@0: 2001-09-06 Don Porter sl@0: sl@0: * tests/unixInit.test (unixInit-3.2): Updated test to support sl@0: newer HP-UX releases that properly report euc-jp as the system sl@0: encoding for Japanese. Bug report and patch verification by Bob sl@0: Techentin. [Bug 453883] sl@0: sl@0: * doc/http.n: sl@0: * library/http/*.tcl: sl@0: * tools/tcl.wse.in: sl@0: * tools/tclmin.wse: sl@0: * unix/Makefile.in: sl@0: * win/{Mm}akefile.*: Updated http package to version 2.4, sl@0: reflecting the new features just added. sl@0: sl@0: 2001-09-06 Vince Darley sl@0: sl@0: * generic/tclTest.c: tests of old-fs hooks no longer cause problems sl@0: in threaded builds. Also removed unused unload proc. sl@0: * generic/tcl.decls: sl@0: * generic/tclIOUtilc: added Tcl_FSMountsChanged so that a vfs sl@0: can inform the filesystem that the filesystem epoch must be sl@0: changed (since cached filesystems may now be incorrect). Fixes sl@0: problem running tclvfs extension. sl@0: * library/tcltest/tcltest.tcl: if tests aren't in a native sl@0: filesystem, then don't use pipes to run them. [Bug 458741] sl@0: sl@0: 2001-09-06 Donal K. Fellows sl@0: sl@0: * generic/tcl.decls (479 generic): sl@0: * generic/tclIO.c (Tcl_Seek,Tcl_Tell,Tcl_OutputBuffered): Added sl@0: public function to return the size of the output buffer and sl@0: reworked other channel functions to use this shared functionality sl@0: and that of Tcl_InputBuffered() too. [TIP#49, Rolf Schroedter] sl@0: sl@0: 2001-09-05 David Gravereaux sl@0: sl@0: * generic/tclPlatDecls.h: Another small trim finalizing Borland sl@0: support. sl@0: sl@0: * win/tclWinPipe.c: sl@0: * win/tclWinPort.h: More Borland compatibility fixes. Changed sl@0: EDQUOT #define from 49 to 69. Borland had a clash as it was already sl@0: using this number. Upon advice from Helmut Giese, EDQUOT has been sl@0: found in other header files #defined as 69. sl@0: [Patch: 436116] sl@0: sl@0: * win/.cvsignore: A few more glob patterns added. sl@0: sl@0: * win/makefile.bc (new): Borland lives once more! rejoice.. sl@0: * generic/tclAlloc.c: Small Borland compatibility fix. sl@0: * win/tclWinTime.c: More Borland compatibility fixes. sl@0: [Patch: 436116] sl@0: sl@0: 2001-09-05 Vince Darley sl@0: sl@0: * tests/winFCmd.test: made notWin2000 constraint false if not sl@0: running on Windows at all. sl@0: sl@0: 2001-09-04 David Gravereaux sl@0: sl@0: * win/tclWinThrd.c: Revisited _beginthreadex() stuff. Instead sl@0: of assuming a c-runtime implimentation of _beginthreadex normal, sl@0: I reversed the logic to not assume, and use when is by explicitly sl@0: needing to add runtimes that support it such as Borland. sl@0: sl@0: * generic/tcl.h: sl@0: * generic/tclPlatDecls.h: Borland compatibility change so sl@0: ClientData was properly typed as a void* and TCHAR would not be sl@0: defined twice. sl@0: sl@0: * generic/tcl.h: Removed a small mistake from before. Changes to sl@0: the EXTERN macro for proper Borland compatibility will have to see sl@0: a TIP. What's this with the MS compiler: sl@0: sl@0: __declspec(dllexport) int func (int a, int b); sl@0: sl@0: will have to be this with Borland: sl@0: sl@0: int __cdecl __export func (int a, int b); sl@0: sl@0: The order of the attribute needs to be after the return type. sl@0: sl@0: 2001-09-04 Don Porter sl@0: sl@0: * compat/strtod.c (strtod): Fixed failure to handle expressions sl@0: like 3eq2 and failure to set errno on overflow. [Bug 440894] sl@0: sl@0: 2001-09-04 Miguel Sofer sl@0: sl@0: * generic/tclProc.c: sl@0: * tests/proc.test: made [proc] check that formal args have sl@0: simple names [Bug 458548] sl@0: sl@0: 2001-09-04 Vince Darley sl@0: sl@0: Minor bug fixes in filesystem, plus small vfs changes as a sl@0: result of enabling the test filesystem to work properly. sl@0: * tests/fileName.test: ensure new test cleans up after itself sl@0: * doc/filename.n: sl@0: * generic/tclFileName.c: improved Mac path handling and document sl@0: why [Bug: 421842] on Windows handling of UNC paths is not valid. sl@0: Documentation and code now much clearer on what is and is not a sl@0: UNC path. sl@0: * doc/FileSystem.3: sl@0: * unix/tclUnixPipe.c: sl@0: * generic/tclFCmd.c: sl@0: * generic/tclIOUtil.c: fixed error message, fixed [Bug: 453512] sl@0: about dangerous use of tmpnam, replaced with mkstemp. sl@0: Documented all the changes. sl@0: * generic/tclTest.c: made test vfs fully functional as a sl@0: 'reporting filesystem'. sl@0: * generic/tcl.stubs: sl@0: * generic/tcl.h: sl@0: * generic/tclInt.h: sl@0: * generic/tclIOUtil.c: sl@0: * doc/file.n: sl@0: * various platform-specific 'TclpLoadFile': fixed comments about sl@0: unload behaviour, and completed objectification of loading. sl@0: Required change to Tcl_Filesystem lookup table, so incompatible sl@0: with 8.4a3, but not older versions of Tcl. The change also sl@0: allows 'link' and 'reporting' filesystems to function correctly sl@0: when loading files. Implementation of 'file delete -force' sl@0: copes with case where cwd is inside the directory. Moved sl@0: overlooked Tcl_FSGetPathType from internal to external API. sl@0: Made sure filesystems which are registered and then unregistered sl@0: are only freed when all references to them are gone. sl@0: Documented changes. sl@0: * unix/tclUnixFCmd.c: when deleting directories recursively, sl@0: make sure permissions are ok. Together with the above, this sl@0: fixes [Bug: 219139] sl@0: * tests/winFCmd.test: differentiated test results for win2k sl@0: versus not. This fixes [Bug: 219239] sl@0: * tests/fCmd.test: added tests for 'file delete -force' where sl@0: the cwd is inside, and when permissions are inadequate. sl@0: sl@0: 2001-09-04 Miguel Sofer sl@0: sl@0: * generic/tclCompile.c: fixed incorrect operands for INST_LIST sl@0: [Bug: 458241] (David Cuthbert, dacut@users.sourceforge.net) sl@0: sl@0: 2001-09-03 Jeff Hobbs sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): fixed missing comma sl@0: in debug macro. sl@0: sl@0: 2001-09-03 Donal K. Fellows sl@0: sl@0: * doc/ExprLongObj.3: Fixed error in documentation of argument type sl@0: to Tcl_ExprObj [Bug: 457435] sl@0: sl@0: 2001-09-02 David Gravereaux sl@0: sl@0: * win/tclWinThrd.c: Portability fix for Cygwin who's c-runtime, sl@0: not surprisingly, doesn't have the MSVCRT specific _beginthreadex / sl@0: _endthreadex pair. This might have to be revisited for proper sl@0: Borland, lcc32, Watcom and other support as well. sl@0: [Patch: 444255] sl@0: sl@0: * win/tclWinThrd.c: Moved FinalizeConditionEvent() proto to within sl@0: the main #ifdef TCL_THREADS block to avoid mingw warning about it sl@0: being there but unused. sl@0: sl@0: * win/makefile.vc: Added -Zl (zee el) to tclStubLib.c compile line sl@0: to make sure the tclstub84.lib static library is built without sl@0: requiring a specific C-runtime library at link-time for the end-use sl@0: developer. It has been noted on c.l.t that this trips many first sl@0: time users trying to make extensions. sl@0: [Patch: 403533] sl@0: sl@0: 2001-08-31 Jeff Hobbs sl@0: sl@0: * generic/tclInt.h: added TclCompileListCmd header sl@0: * generic/tclBasic.c: added TclCompileListCmd compile proc sl@0: * generic/tclCompCmds.c (TclCompileListCmd): function to compile sl@0: the 'list' command at parse time. sl@0: * generic/tclExecute.c (TclExecuteByteCode): definition of sl@0: INST_LIST bytecode. sl@0: sl@0: * doc/StringObj.3: added words of warning to use Tcl_ResetResult sl@0: with the Tcl_Append* functions. sl@0: sl@0: * tests/compile.test: added compile-11.* interp result checks sl@0: * generic/tclUtil.c (TclGetIntForIndex): added Tcl_ResetResult sl@0: before Tcl_AppendStringsToObj to prevent shared object crash when sl@0: called from bcc instruction. The Tcl_Append* calls that append to sl@0: the result object that are invoked by bcc insts must remember to sl@0: call Tcl_ResetResult because the bcc doesn't do this for us. sl@0: [Bug #456892] sl@0: sl@0: 2001-08-30 Jeff Hobbs sl@0: sl@0: * generic/tclIndexObj.c: fixed some casting problems that upset sl@0: Crays. [Bug #419528] (andreasen) sl@0: sl@0: 2001-08-30 Don Porter sl@0: sl@0: * generic/tcl.h: Silence warning from Sun compiler. [Bug 454374] sl@0: sl@0: 2001-08-30 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: allow cached fully-qualified command names sl@0: to be usable from different namespaces within the same interpreter sl@0: without forcing a new lookup. This speeds up scripts that pass sl@0: command names in variables ("this" in some OO packages). sl@0: [Patch 456668]. sl@0: sl@0: 2001-08-30 Vince Darley sl@0: sl@0: Further fs updates. After examining the most common Tcl sl@0: extensions (TclX, BLT, Tk, TclPro, Mktclapp), it has been sl@0: determined that only TclpGetCwd and the Access/Stat/Open sl@0: insert/delete hooks of the internal fs functions are ever used. sl@0: The remaining functions from Tcl's internal interfaces have sl@0: therefore been removed, since Tcl now exports a more suitable sl@0: public API (Tcl_FS...) sl@0: sl@0: * generic/tclInt.stubs: sl@0: * generic/tclInt.h: updated for removed internal functions. sl@0: Some new internal functions have been put in tclInt.h (and sl@0: not exported in the stub table because good public equivalents sl@0: exist). sl@0: * generic/tclTest.c: some test functions used the internal private sl@0: APIs. These tests have been retained, but modified to use sl@0: public APIs. Also objectified the internal filesystem tests. sl@0: * win/tclWinFile.c: removed TclpStat, TclpAccess and refactored sl@0: code to use NativeAccess, NativeStat. This should speed up sl@0: stat, access and glob commands. sl@0: * win/tclWinFCmd.c: removed all TclpCopy/Rename/Delete sl@0: File/Directory string-based procedures which aren't used any more. sl@0: Improved efficiency of some other procedures. Ensure that filename sl@0: conversions with a NULL interp do not crash Tcl. sl@0: * mac/tclMacFCmd.c: wrapped long lines and cleaned up sl@0: TclpObjNormalizePath, removed all TclpCopy/Rename/Delete sl@0: File/Directory string-based procedures which aren't used any more. sl@0: * mac/tclMacFile.c: removed obsolete TclpStat, TclpAccess, TclpChdir, sl@0: etc. sl@0: * unix/tclUnixFCmd.c: removed use of TclpAccess, removed all sl@0: TclpCopy/Rename/Delete File/Directory string-based procedures which sl@0: aren't used any more. sl@0: * unix/tclUnixFile.c: removed obsolete TclpStat, TclpAccess, TclpChdir, sl@0: etc. sl@0: * tcl(Unix|Mac|Win)Chan.c: objectified TclpOpenFileChannel. sl@0: * various 'load' implementations all objectified. sl@0: * generic/tclFileName.c: removed redundant code. sl@0: * generic/tclIOUtil.c: removed TclStat, TclAccess, TclpListVolumes. sl@0: Fix to MatchInDirectory at the root of a volume. Also improved sl@0: some documentation, and improved default path joining behaviour sl@0: for virtual filesystems, especially regarding '~'. sl@0: * tests/fileName.test: added tests to check for bugs fixed above. sl@0: * doc/FileName.3: improved documentation sl@0: sl@0: 2001-08-30 David Gravereaux sl@0: sl@0: * generic/tclAsync.c: sl@0: * generic/tclEvent.c: sl@0: * generic/tclInt.h: Improper cleanup of asyncMutex in tclAsync.c sl@0: repaired. TclFinalizeSynchronization() was trying to remove a sl@0: registered mutex that was dumped earlier when the TSD it was stored sl@0: in was cleared. This was only surfacing on *nix. Windows was being sl@0: masked by mutexes not actually being returned to the system! That sl@0: was repaired in a previous patch. Needed to add a private sl@0: TclFinalizeAsync() to tclAsync.c and called from Tcl_FinalizeThread(). sl@0: Pheww.. Is this done yet? sl@0: [Bug: 414419] requested by Rob Ratcliff sl@0: sl@0: 2001-08-28 Jeff Hobbs sl@0: sl@0: * generic/tclCompCmds.c (TclPushVarName): noted 'static' defn. sl@0: [Bug #453872] sl@0: sl@0: 2001-08-26 Don Porter sl@0: sl@0: * library/auto.tcl (tcl_findLibrary): sl@0: * tests/unixInit.test (unixInit-2.{1,9}): sl@0: * unix/tclUnixInit.c (TclpInitLibraryPath): sl@0: * win/tclWinInit.c (TclpInitLibraryPath): Corrected sl@0: inconsistency between the search path for script libraries and sl@0: the directory name $DISTNAME into which distributions built sl@0: by 'make test' unpack. [Bug 455642] sl@0: sl@0: 2001-08-24 Jeff Hobbs sl@0: sl@0: * tests/stringComp.test: added string-1.3 sl@0: * generic/tclCompCmds.c (TclCompileStringCmd): changed to return sl@0: TCL_OUT_LINE_COMPILE instead of TCL_ERROR when compiling and an sl@0: unknown string method is called. This is necessary as the string sl@0: command may be never called, or not until 'string' is redefined. sl@0: sl@0: 2001-08-24 Vince Darley sl@0: sl@0: * doc/glob.n: documented windows-style path issue with glob. sl@0: [Bug: 219392] sl@0: * doc/filename.n: documented windows path/file length limitation. sl@0: [Bug: 454597] sl@0: sl@0: 2001-08-24 Don Porter sl@0: sl@0: * tests/unixInit.test (unixInit-2.9): Corrected expected result sl@0: to match Tcl's quirky construction of its init library path. sl@0: sl@0: 2001-08-23 Andreas Kupries sl@0: sl@0: * win/tclWinPipe.c (BuildCommandLine): Fixed tcl Bug sl@0: [432499]. Part of the code used the non-absolute path to the sl@0: executable to determine quoting. This failed if the absolute sl@0: path contained spaces, but the application name itself not. This sl@0: bug caused no trouble on Win NT 5, but does for other variants sl@0: in the Win* family. Report and fix due to Ken Poole sl@0: . sl@0: sl@0: 2001-08-23 Jeff Hobbs sl@0: sl@0: * unix/configure: sl@0: * unix/tcl.m4: added QNX-6 build support. [Bug #219410] (loverso) sl@0: sl@0: * unix/tclUnixFCmd.c: sl@0: * generic/tclIOUtil.c: sl@0: * generic/tclFileName.c: corrected minor compiler warnings. sl@0: sl@0: 2001-08-23 Vince Darley sl@0: sl@0: Variety of small filesystem and vfs issues fixed or improved. sl@0: The new fs code allows many new opportunities for efficiency sl@0: improvements through the objectified API. The main changes sl@0: integrated here are such efficiency improvements. Some sl@0: limitations of the original implementation have also now been sl@0: lifted. Meanwhile a variety of fs bugs (some old, some new) sl@0: have also been fixed. sl@0: sl@0: * generic/tclFileName.c: Made Tcl_FSSplitPath more efficient, sl@0: and removed some static string-based procedures which are no sl@0: longer used. Much more objectification. Tcl_FSJoinPath sl@0: is now very efficient and more aware of virtual filesystems. sl@0: Clarified where the Mac-specific code attempts to interpret sl@0: Unix-style paths. Modified TclDoGlob to use lstat not sl@0: access to fix [Bug: 434876, L. Virden] sl@0: * tcl(Win|Unix|Mac)FCmd.c: sl@0: * tcl(Win|Unix|Mac)File.c: replaced TclpListVolumes with sl@0: TclpObjListVolumes with different signature, updated code due sl@0: to more efficient signature of Tcl_FSGetTranslatedPath. Used sl@0: cached native paths where possible to improve efficiency -- sl@0: this was completed on MacOS, but on Unix and Win the traversal sl@0: functions make the task much more complex, so there are still sl@0: some improvements possible there. Removed unused sl@0: TclpNormalizePath which had been left in tclWinFCmd.c. sl@0: Objectified all 'file attributes' functions. Fixed the new sl@0: [Bug:451571, Bruce Stephens] which is most obvious on Unix, sl@0: but could occur on MacOS or Windows. This bug actually existed sl@0: in Tcl 8.3.x but was only made obvious by the recent filesystem sl@0: overhaul when the code was exercised more heavily. sl@0: * tests/fileName.test: Three new tests to exercise the above bug, sl@0: and make sure it is fixed correctly. sl@0: * unix/tclUnixFile.c: avoid panic in glob when a link sl@0: doesn't point anywhere. It would probably be good to define sl@0: exactly what Tcl should do in circumstances like these, and sl@0: make sure mac/win/unix all behave accordingly. [Bug: 417111, sl@0: Hemang Lavana]. Also fixed misleading/obsolete comment in the code. sl@0: * generic/tcl.stubs: changed signature of Tcl_FSGetTranslatedPath sl@0: and added Tcl_FSGetTranslatedStringPath. sl@0: These changes allow further optimisations in the FS code. sl@0: * generic/tcl.h: changed signature of Tcl_FSListVolumes so that sl@0: it doesn't require a Tcl interpreter plus result. Renamed sl@0: Tcl_FSReadLink to Tcl_FSLink with additional argument so sl@0: we can support making links in the future. [Patch: 450340] sl@0: * generic/tclInt.h: sl@0: added declaration for TclpObjListVolumes. Objectified sl@0: internal call signatures for 'file attributes' functions, and sl@0: added an internal objectified get path type function. sl@0: * generic/tclIOUtil.c: added the moved function TclpListVolumes sl@0: which calls platform specific code (needed for backwards sl@0: compatibility), and improved efficiency of parts of the FS sl@0: (particularly file normalization). Much less copying and sl@0: memory allocation is required now. added new GetPathType sl@0: so that changes in 'file volumes' can actually affect files' sl@0: types, and objectified more code. Made current code work sl@0: with test suite artificially changing current platform. sl@0: Added 'static' keywords where required. sl@0: * generic/tclIO.c: sl@0: * generic/tclTest.c: Added 'static' keywords, fixing sl@0: [Bug: 453872, Bob Techentin] sl@0: * generic/tclCmdAH.c: file command implementation updated for sl@0: API changes, removed unnecessary special-case SplitPath static sl@0: function, since it no longer helps prevent code duplication. sl@0: Moved setting of interpreter result to each individual location sl@0: that actually required it, to avoid very large code separation sl@0: between reading and setting the result. sl@0: * doc/FileSystem.3: updated documentation for the new or sl@0: changed APIs, and clarified some issues. sl@0: * doc/SplitPath.3: added pointer to newer APIs in FileSystem.3 sl@0: * doc/filename.n: clarified current implementation of tilde sl@0: support on Mac/Win. [Bug:453514, Sergey Kuzmin] sl@0: * doc/glob.n: improved documentation for '-directory' and '-path' sl@0: options. sl@0: sl@0: There are now many private, obsolete, platform-specific 'Tclp' sl@0: string-based filesystem APIs which could be removed. We should sl@0: check whether any of these are used by extensions and, at least sl@0: in Tcl 9, remove them. sl@0: sl@0: The above changes signify a ***POTENTIAL INCOMPATIBILITY*** sl@0: with 8.4a3, since signatures of two functions in the new API sl@0: have changed, but not with older versions of Tcl. sl@0: sl@0: 2001-08-23 Donal K. Fellows sl@0: sl@0: * generic/tclBinary.c (FormatNumber): Extract a long from the sl@0: object and not an int, to stop [binary format] from being unable sl@0: to format some input numbers on architectures where sizeof(int) is sl@0: less than sizeof(long) (particularly Alpha.) [tiprender Bug #441861] sl@0: sl@0: * tests/format.test: Converted conditional execution of tests into sl@0: a test constraint. sl@0: sl@0: 2001-08-22 Jeff Hobbs sl@0: sl@0: * win/Makefile.in: sl@0: * win/makefile.vc: updated install target for dde1.2 sl@0: * doc/dde.n: fixed dde man page (which was totally incorrect). sl@0: * tests/winDde.test: sl@0: * win/tclWinDde.c (Tcl_DdeObjCmd): added -binary option to dde sl@0: request command to allow for returning binary data. [Bug #227482] sl@0: Updated dde to 1.2 sl@0: sl@0: * tests/tcltest.test: added unixExecs constraint to files that sl@0: used 'grep' in the test. [Bug #453143] sl@0: sl@0: * library/tcltest/tcltest.tcl: fixed stdio constraint test. sl@0: [Patch #454050] (stanton) sl@0: Simplified unixExecs constraint test. sl@0: sl@0: 2001-08-22 Don Porter sl@0: sl@0: * tests/ioUtil.test (ioUtil-3.*): Corrected errors in tests sl@0: revealed by fix of overagressive compiler. [Bug 451200] sl@0: sl@0: 2001-08-21 Miguel Sofer sl@0: sl@0: * generic/tclCompCmds.c: sl@0: * tests/compile.test: Fixed overagressive compilation of [catch]: sl@0: it was catching errors at substitution time. [Bug #219184] sl@0: sl@0: 2001-08-21 Jeff Hobbs sl@0: sl@0: * tests/tcltest.test (tcltest-12.2): fixed test that would break sl@0: when env vars weren't Tcl list friendly [Patch #454046] (stanton) sl@0: sl@0: 2001-08-20 Jeff Hobbs sl@0: sl@0: * library/http/http.tcl (geturl): added port number to Host: sl@0: header to comply with HTTP/1.1 spec (RFC 2068). [Bug #452217] sl@0: sl@0: 2001-08-16 David Gravereaux sl@0: sl@0: * tools/tcl.wse.in: sl@0: * tools/tcl.hpj.in: sl@0: * win/tcl.hpj.in: Removed -kb storage in CVS to ensure these text sl@0: files are checked-out in the translation mode CVS is in. Setting sl@0: these as binary as part of an effort to make sure they are always sl@0: in CRLF, no matter what the CVS translation, is bypassing how CVS sl@0: works and is confusing. sl@0: sl@0: * tools/genStubs.tcl: Removed LF-only output. Having to reconvert sl@0: back to CRLF before committing to CVS was giving me a headache. sl@0: [Bug: 451333] sl@0: sl@0: * win/makefile.vc: replaced $(WINDIR) with $(include32) for the sl@0: .rc.res inference rule. winver.h wasn't getting included. sl@0: [Bug: 445630] sl@0: sl@0: 2001-08-14 Miguel Sofer sl@0: sl@0: * generic/tclBasic.c: make the intial maxNestingDepth of an sl@0: interpreter be MAX_NESTING_DEPTH instead of a hardwired value sl@0: [Bug: 232564] sl@0: sl@0: 2001-08-13 Miguel Sofer sl@0: sl@0: * tests/trace.test: Corrected test numbers [Bug: 449794] sl@0: sl@0: 2001-08-12 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: sl@0: * unix/tcl.m4: Use GCC variable set by AC_PROG_CC instead sl@0: of defining our own using_gcc variable. sl@0: sl@0: 2001-08-11 Vince Darley sl@0: sl@0: Variety of small issues introduced by the vfs code fixed: sl@0: * generic/tclIOUtil.c: uninitialised read. sl@0: * generic/tclFCmd.c: possible memory leak in file delete sl@0: with error condition. sl@0: sl@0: 2001-08-10 Miguel Sofer sl@0: sl@0: * generic/tclVar.c: sl@0: * tests/trace.test: Insure that [array] traces work correctly for sl@0: undefined variables [Bug: 449094] sl@0: sl@0: 2001-08-09 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Delete the unused getcwd.o sl@0: target. This fixes bug #440942. sl@0: sl@0: 2001-08-08 Don Porter sl@0: sl@0: * library/dde/pkgIndex.tcl: sl@0: * library/http/http.tcl: sl@0: * library/http/pkgIndex.tcl: sl@0: * library/msgcat/msgcat.tcl: sl@0: * library/msgcat/pkgIndex.tcl: sl@0: * library/opt/optparse.tcl: sl@0: * library/opt/pkgIndex.tcl: sl@0: * library/reg/pkgIndex.tcl: sl@0: * library/tcltest/tcltest.tcl: sl@0: * library/tcltest/pkgIndex.tcl: Added checks for package dependencies. sl@0: Bumped patchlevels of changed packages: http 2.3.2, msgcat 1.2.2, sl@0: opt 0.4.3, tcltest 2.0.1. [Patch 448931] sl@0: sl@0: * README: sl@0: * generic/tcl.h: sl@0: * tools/tcl.wse.in: sl@0: * unix/configure: sl@0: * unix/configure.in: sl@0: * unix/tcl.spec: sl@0: * win/README.binary: sl@0: * win/configure: sl@0: * win/configure.in: Bumped up patchlevel to 8.4a4 to distinguish sl@0: CVS snapshots from the 8.4a3 release. This does not necessarily sl@0: mean there will be an 8.4a4 release. [Bug 448938]. sl@0: sl@0: 2001-08-06 Jeff Hobbs sl@0: sl@0: 8.4a3 RELEASE sl@0: sl@0: * changes: sl@0: * README: sl@0: * mac/README: sl@0: * unix/README: sl@0: * win/README.binary: updated for 8.4a3 release sl@0: sl@0: * generic/tclFileName.c (Tcl_FSSplitPath): update to Tcl style sl@0: guide. sl@0: sl@0: * generic/tclFCmd.c (FileCopyRename): fixed mem leak in sl@0: introduction of vfs code where a new Tcl_Obj wasn't freed. sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_RegexpObjCmd, Tcl_RegsubObjCmd): sl@0: reordered the retrieval of arguments to avoid shimmering bug when sl@0: the pattern and string referenced the same object. sl@0: sl@0: * unix/configure: regenerated sl@0: * unix/tcl.m4: added GNU (HURD) configuration target. (brinkmann) sl@0: [Patch: #442974] sl@0: sl@0: * win/README: made note of URL for Windows compilation notes sl@0: sl@0: * win/tclWinThrd.c (TclpFinalizeMutex, TclpFinalizeCondition): sl@0: added DeleteCriticalSection calls for cleanup [Patch: #419683] sl@0: sl@0: * unix/tclUnixPipe.c (TclpCreateTempFile): fixed use of tmpnam, sl@0: which is dangerous. [Patch: #442636] (lim) sl@0: The use of tmpnam in TclpTempFileName must still be changed. sl@0: sl@0: * tests/http.test (http-4.14): fixed variable error return. sl@0: [Bug: 424252] sl@0: sl@0: 2001-08-03 Jeff Hobbs sl@0: sl@0: * win/configure: regenerated sl@0: * win/tcl.m4: fixed DLLSUFFIX definition to always be ${DBGX}.dll. sl@0: This is necessary for TEA compliant builds that build shared sl@0: against a static-built Tcl. sl@0: * win/Makefile.in ($(TCLSH)): added $(TCL_STUB_LIB_FILE) to build sl@0: target, otherwise it wouldn't get generated in a static build. sl@0: sl@0: 2001-08-06 Andreas Kupries sl@0: sl@0: * generic/tclIOCmd.c (Tcl_GetsObjCmd): Applied patch from SF item sl@0: [442665] to fix the bug reported by it. The function can corrupt sl@0: a freed object if it is called with objc == 3. This is because sl@0: it retrieves resultPtr and does not increment its reference sl@0: count, but then calls Tcl_ObjSetVar2, which causes the retrieved sl@0: resultPtr object to be released. sl@0: sl@0: 2001-08-06 Don Porter sl@0: sl@0: * doc/tclsh.1: Added note that the tclsh program is frequently sl@0: installed with the Tcl version numer as part of the name. sl@0: [Patch 402725] sl@0: sl@0: * generic/tclPkg.c: sl@0: * tests/pkg.test: [package forget] now forgets all of the sl@0: package arguments it receives, not stopping when a package is sl@0: not found. [Bug 415273] sl@0: sl@0: 2001-08-02 Jeff Hobbs sl@0: sl@0: * generic/tclIOUtil.c (Tcl_FSMatchInDirectory): corrected sl@0: uninitialized value. sl@0: sl@0: 2001-08-02 Mo DeJong sl@0: sl@0: * generic/tclPlatDecls.h: sl@0: * win/tclWinPort.h: sl@0: Revert related changes made to improve sl@0: Cygwin support on 2001-07-18. This change ended sl@0: up breaking the VC++ build because of conflicts sl@0: between Windows APIs and internal Tk APIs. sl@0: sl@0: 2001-08-01 Jeff Hobbs sl@0: sl@0: * unix/tclUnixFCmd.c: minor casts to eliminate warnings. (lim) sl@0: [Patch: #440218] sl@0: sl@0: * tests/parseOld.test: changed some tests that required sl@0: testwordend to exist to skip in a proper tcltest manner. sl@0: [Bug: #442663] sl@0: sl@0: * library/http/http.tcl (http::mapReply): the regsub'ing of \n and sl@0: \t to escape them was unnecessary. sl@0: sl@0: 2001-07-31 Vince Darley sl@0: sl@0: Changes from TIP#17 "Redo Tcl's filesystem" sl@0: The following files were impacted: sl@0: * doc/Access.3: sl@0: * doc/FileSystem.3: sl@0: * doc/OpenFileChnl.3: sl@0: * doc/file.n: sl@0: * doc/glob.n: sl@0: * generic/tcl.decls: sl@0: * generic/tcl.h: sl@0: * generic/tclCmdAH.c: sl@0: * generic/tclCmdIL.c: sl@0: * generic/tclCmdMZ.c: sl@0: * generic/tclDate.c: sl@0: * generic/tclDecls.h: sl@0: * generic/tclEncoding.c: sl@0: * generic/tclFCmd.c: sl@0: * generic/tclFileName.c: sl@0: * generic/tclGetDate.y: sl@0: * generic/tclIO.c: sl@0: * generic/tclIOCmd.c: sl@0: * generic/tclIOUtil.c: sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: sl@0: * generic/tclIntDecls.h: sl@0: * generic/tclLoad.c: sl@0: * generic/tclStubInit.c: sl@0: * generic/tclTest.c: sl@0: * generic/tclUtil.c: sl@0: * library/init.tcl: sl@0: * mac/tclMacFCmd.c: sl@0: * mac/tclMacFile.c: sl@0: * mac/tclMacInit.c: sl@0: * mac/tclMacPort.h: sl@0: * mac/tclMacResource.c: sl@0: * mac/tclMacTime.c: sl@0: * tests/cmdAH.test: sl@0: * tests/event.test: sl@0: * tests/fCmd.test: sl@0: * tests/fileName.test: sl@0: * tests/io.test: sl@0: * tests/ioCmd.test: sl@0: * tests/proc-old.test: sl@0: * tests/registry.test: sl@0: * tests/unixFCmd.test: sl@0: * tests/winDde.test: sl@0: * tests/winFCmd.test: sl@0: * unix/mkLinks: sl@0: * unix/tclUnixFCmd.c: sl@0: * unix/tclUnixFile.c: sl@0: * unix/tclUnixInit.c: sl@0: * unix/tclUnixPipe.c: sl@0: * win/tclWinFCmd.c: sl@0: * win/tclWinFile.c: sl@0: * win/tclWinInit.c: sl@0: * win/tclWinPipe.c sl@0: sl@0: 2001-07-24 Mo DeJong sl@0: sl@0: * win/tclWinThrd.c (Tcl_CreateThread): Close Windows sl@0: HANDLE returned by _beginthreadex. The MS documentation sl@0: states that this handle is not closed by a later call to sl@0: _endthreadex. sl@0: sl@0: 2001-07-21 Don Porter sl@0: sl@0: * doc/pkgMkindex.n: sl@0: * library/package.tcl: Corrected documentation and usage sl@0: message of [pkg_mkIndex]. sl@0: sl@0: 2001-07-18 Mo DeJong sl@0: sl@0: * generic/tclPlatDecls.h: Define TCHAR by including sl@0: windows.h instead of tchar.h since Cygwin does not sl@0: support the tchar.h header. Include CHECK_UNICODE_CALLS sl@0: logic from tclWinPort.h. sl@0: * win/tclWinPort.h: Remove CHECK_UNICODE_CALLS logic. sl@0: Remove include of windows.h since this now done it sl@0: tclPlatDecls.h. sl@0: * win/tclWinReg.c: Remove duplicate include of windows.h. sl@0: sl@0: 2001-07-18 Andreas Kupries sl@0: sl@0: * generic/tclIO.c: Aftermath to [SF #427196]. Squash empty buffers sl@0: if they are smaller than the requested buffersize, to prevent sl@0: reusage of old buffers and to honor changes in the requested sl@0: buffersize made by the user. sl@0: sl@0: 2001-07-17 Mo DeJong sl@0: sl@0: * win/tclWinFile.c (TclpReadlink): Add Cygwin specific definition sl@0: for the TclpReadlink function. This method implements reading of sl@0: symbolic links when build with Cygwin. sl@0: sl@0: 2001-07-17 Mo DeJong sl@0: sl@0: * win/tclWinPort.h: Add Cygwin specific defines for environ sl@0: and timezone variables. sl@0: sl@0: 2001-07-17 Andreas Kupries sl@0: sl@0: * generic/tclIO.c (GetInput): Fixed [SF #427196]. Memory was sl@0: overwritten because a buffer was used after a change of the sl@0: requested buffersize together with that requested buffersize and sl@0: not its actual size, which was smaller. Note that the continous sl@0: reuse of the smaller buffer negatively impacts performance. The sl@0: system never allocates a buffer with the newly requested bigger sl@0: buffersize. sl@0: sl@0: 2001-07-16 Mo DeJong sl@0: sl@0: * generic/tcl.h: Define __WIN32__ when sl@0: __CYGWIN__ or __MINGW32__ is defined. sl@0: * generic/tclAlloc.c: Define caddr_t when sl@0: compiling with VC++ or mingw. This type is sl@0: already defined when compiling with Cygwin. sl@0: sl@0: 2001-07-16 Mo DeJong sl@0: sl@0: * win/tclWinConsole.c: sl@0: * win/tclWinPipe.c: sl@0: * win/tclWinPort.h: sl@0: * win/tclWinSerial.c: sl@0: * win/tclWinThrd.c: sl@0: Remove unnecessary #includes of dos.h, direct.h, sl@0: and tchar.h. This will help the Cygwin porting sl@0: effort since these headers do not exist under Cygwin. sl@0: sl@0: 2001-07-16 Jeff Hobbs sl@0: sl@0: * win/tclWinPipe.c (PipeClose2Proc): constrained the mutex lock to sl@0: just the TerminateThread call and waiting for termination. (jsmith) sl@0: sl@0: * generic/tclCmdMZ.c: Removed extra copy of the SCAN_* macros sl@0: #defined in generic/tclScan.c. (porter) [Bug 441230] sl@0: sl@0: 2001-07-12 Donal K. Fellows sl@0: sl@0: * tests/unixInit.test (unixInit-2.8): Added extra constraint, sl@0: notInstalledInTmp, to stop this test from damaging installations sl@0: in /tmp; not much fun to have to reinstall the Tcl library every sl@0: time you run the test suite! sl@0: sl@0: * tests/subst.test (subst-10.*): Updated tests to check new sl@0: behaviour for 'break' in command substitutions. sl@0: (subst-1.2,subst-7.1): Error messages changed. sl@0: * doc/SubstObj.3: New file, to document Tcl_SubstObj. sl@0: * doc/subst.n: Improved and updated documentation for 'subst' to sl@0: help support the changed behaviour. sl@0: * generic/tcl.decls (generic-437): Declaration for Tcl_SubstObj sl@0: * generic/tcl.h (TCL_SUBST_*): Added flags for Tcl_SubstObj. sl@0: * generic/tclCmdMZ.c (Tcl_SubstObj,Tcl_SubstObjCmd): Divided into sl@0: two parts to allow people to access the innards of 'subst' and sl@0: changed the behaviour when command substitutions do a 'break' to sl@0: be different from 'continue'. Also now works with objects, which sl@0: allows for some nifty optimisations with variable substitutions sl@0: and a slight improvement with command substitutions. [TIP#36] sl@0: sl@0: 2001-07-10 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Add AR variable for use in STLIB_LD. sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Use STLIB_LD when defining MAKE_LIB sl@0: and MAKE_STUB_LIB. Subst RANLIB and AR. sl@0: * unix/tcl.m4 (SC_CONFIG_CFLAGS): Add doc comment about sl@0: STLIB_LD command. Check ${AR} env var when setting sl@0: STLIB_LD and delay evaluation until make time. sl@0: * win/configure: Regen. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Delay evaluation of sl@0: ${AR} in STLIB_LD and add flags to better match the sl@0: Unix implementation. Don't bother defining AR when sl@0: using VC++ since it is not used. sl@0: sl@0: 2001-07-06 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Pass -e _WinMain@16 in sl@0: addition to the -mwindows flag to work around a problem sl@0: with ld when it incorrectly use main() as the executable sl@0: entry point when both WinMain() and main() are available. sl@0: sl@0: 2001-07-06 Donal K. Fellows sl@0: sl@0: * tests/cmdAH.test: Added leading zero to file modes to work sl@0: around fault in HPUX strtol() which ignores the base parameter sl@0: [Bug #438808] sl@0: sl@0: 2001-07-05 Mo DeJong sl@0: sl@0: * win/Makefile.in: Subst DEPARG directly instead sl@0: of relying on a variable. This will make Cygwin sl@0: builds faster since an extra exec will be avoided. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Subst DEPARG. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Move AC_MSG_CHECKING sl@0: after the AC_CHECK_PROG so that status messages do sl@0: not get mixed together. Set DEPARG based on the sl@0: results of the cygpath check so that we avoid using sl@0: an extra exec when it is not needed. Use ac_cv_cygwin sl@0: status flag instead of looking at the output of sl@0: gcc -v, which works in the case where -mno-cygwin is sl@0: set in the CFLAGS. sl@0: sl@0: 2001-07-04 Jeff Hobbs sl@0: sl@0: * README: sl@0: * mac/README: sl@0: * unix/README: sl@0: * win/README: sl@0: * win/README.binary: updated READMEs with purls sl@0: sl@0: 2001-07-03 Mo DeJong sl@0: sl@0: * win/Makefile.in: Remove PATHTYPE variable. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Don't subst PATHTYPE. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Remove PATHTYPE sl@0: variable. Set CYGPATH to "cygpath -w" if the sl@0: cygpath executable is found on the path. This sl@0: approach works for native Cygwin builds and sl@0: cross compiles. sl@0: sl@0: 2001-07-03 Jeff Hobbs sl@0: sl@0: * tests/var.test: sl@0: * generic/tclVar.c (Tcl_VariableObjCmd): added patch to check for sl@0: number of args. [Patch #426038] sl@0: sl@0: * generic/tclVar.c (Tcl_GetVar2Ex): added ability to recognize sl@0: TCL_TRACE_READS flags to cause creation of part1 in TclLookupVar sl@0: to make sure newly created array will get read traces triggered sl@0: appropriately. This is called by Tcl_ObjGetVar2, Tcl_GetVar, and sl@0: Tcl_GetVar2. sl@0: (TclSetIndexedScalar, TclSetElementOfIndexedArray): added read sl@0: trace triggering for lappend case. sl@0: (Tcl_LappendObjCmd): pass TCL_TRACE_READS to Tcl_ObjGetVar2 to sl@0: trigger possible read traces for new arrays. sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): added TCL_TRACE_READS sl@0: flag to INST_LAPPEND(_ARRAY)_STK case to trigger read traces for sl@0: newly created arrays. Removed unnecessary #ifdef for sl@0: TCL_COMPILE_DEBUG in INST_LOAD_SCALAR1 case. sl@0: sl@0: * tests/append.test: sl@0: * tests/appendComp.test: added tests for read trace triggering for sl@0: append and lappend. sl@0: sl@0: 2001-07-03 Mo DeJong sl@0: sl@0: * tests/clock.test (clock-2.5): Adjust test so that it passes sl@0: when the time slice is 60 msecs, now passes under Windows 98. sl@0: sl@0: 2001-07-03 Mo DeJong sl@0: sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Don't pass the v flag sl@0: to ${AR} when using gcc, verbose output is not needed. sl@0: sl@0: 2001-07-03 Don Porter sl@0: sl@0: * tests/unixInit.test (unixInit-2.8): Changed test back to using sl@0: installation layout, adding comments explaining why the test writes sl@0: to the directories it does, and checks to avoid destroying other sl@0: files in /tmp. sl@0: sl@0: 2001-07-03 Donal K. Fellows sl@0: sl@0: * tests/unixInit.test (unixInit-1.2): Fixed faults reported in sl@0: Bug#438070 - well, at least enough to work on Solaris - and added sl@0: comments that should make what is going on in the test clearer. sl@0: sl@0: 2001-07-02 Jeff Hobbs sl@0: sl@0: * tests/util.test: added util-4.6 sl@0: * generic/tclUtil.c (Tcl_ConcatObj): Corrected walking backwards sl@0: over utf-8 chars. [Bug #227512] sl@0: sl@0: 2001-07-02 Don Porter sl@0: sl@0: * tests/unixInit.test (unixInit-2.8): Corrected test for all sl@0: absolute pathnames in library path when executable is installed sl@0: near root directory to use correct development directory layout. sl@0: [Bug 438014] sl@0: sl@0: * tests/unixInit.test (unixInit-2.9): sl@0: * unix/tclUnixInit.c (TclpInitLibraryPath): sl@0: * win/tclWinInit.c (TclpInitLibraryPath): Corrected buggy sl@0: construction of search path entries relative to executable. sl@0: Added test for bad construction. [Bug 438014] sl@0: sl@0: 2001-06-28 Miguel Sofer sl@0: sl@0: * generic/tclNamesp.c: Correction to faulty patch from [Bug: 231259] sl@0: sl@0: 2001-06-28 Donal K. Fellows sl@0: sl@0: * tests/unixInit.test (unixInit-1.2): Modified so as not to sl@0: require a local echo service, which fails on many systems which sl@0: have that turned off for security reasons... sl@0: sl@0: 2001-06-27 Jeff Hobbs sl@0: sl@0: * generic/tclInt.h: sl@0: * generic/tclObj.c: sl@0: * unix/Makefile.in: added a -DPURIFY mode that makes Tcl_Obj's sl@0: allocated and free singularly (instead of in alloc in blocks and sl@0: never free) to allow checkers like Purify to operate better. sl@0: sl@0: * library/encoding/koi8-u.enc: added koi8-u (Ukranian variant) sl@0: encoding. sl@0: sl@0: * tests/subst.test: sl@0: * generic/tclUtf.c (Tcl_UtfBackslash): Corrected backslash sl@0: handling of multibyte utf-8 chars. [Bug #217987] sl@0: sl@0: * generic/tclCmdIL.c (InfoProcsCmd): fixed potential mem leak in sl@0: info procs that created objects without using them. sl@0: sl@0: * generic/tclCompCmds.c (TclCompileStringCmd): fixed mem leak when sl@0: string command failed to parse the subcommand. sl@0: sl@0: * doc/interp.n: sl@0: * doc/unknown.n: updated notes about what is in a safe interp. sl@0: [Bug #218605] sl@0: sl@0: 2001-06-27 Donal K. Fellows sl@0: sl@0: * tests/event.test (event-11.5): Removed hard-coded port number sl@0: which could fail on some systems. [Bug #436727] sl@0: sl@0: 2001-06-26 Mo DeJong sl@0: sl@0: * unix/Makefile.in: sl@0: * win/Makefile.in: Add `make shell` target. This target sl@0: will set the proper env vars before invoking tclsh sl@0: from the build directory. sl@0: sl@0: 2001-06-26 Mo DeJong sl@0: sl@0: * win/Makefile.in: Use : to separate VPATH entries. This sl@0: works for both Cygwin builds and cross builds, the VPSEP sl@0: variable is simply unneeded complexity. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Don't subst VPSEP. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Remove VPSEP variable. sl@0: sl@0: 2001-06-26 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Fix last checkin by removing sl@0: export since that only works in bash. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Ditto. sl@0: sl@0: 2001-06-26 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Set CFLAGS to "" if the user sl@0: did not set CFLAGS in the env. This keeps AC_PROG_CC sl@0: from adding "-g -O2" to the CFLAGS by default. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Ditto. sl@0: sl@0: 2001-06-25 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/configure.in: Use RC_DEFINE flag from tcl.m4. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Set RC_DEFINE sl@0: flag based on the compiler in use. sl@0: sl@0: 2001-06-25 Mo DeJong sl@0: sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Link to the sl@0: imm32 library when building with mingw gcc. sl@0: sl@0: 2001-06-25 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): When building with sl@0: gcc, don't attempt to link with LD or support dllwrap. sl@0: Simply require a recent version of Cygwin gcc or Mingw sl@0: gcc that supports -shared. When linking, use gcc instead sl@0: of ld since gcc automatically includes libs like -lmsvcrt. sl@0: sl@0: 2001-06-22 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/configure.in: Add resource compiler fix from sl@0: 8.3.3 to fix compiling with mingw. sl@0: sl@0: 2001-06-22 Mo DeJong sl@0: sl@0: * win/configure: Regen. sl@0: * win/tcl.m4: Fix silly typo in last checkin. sl@0: sl@0: 2001-06-22 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Set CFLAGS to @CFLAGS@ and @CFLAGS_DEFAULT@. sl@0: Set LDFLAGS to @LDFLAGS@ and @LDFLAGS_DEFAULT@. Add LDFLAGS_DEBUG sl@0: and LDFLAGS_OPTIMIZE to match the way CFLAGS_DEFAULT works. sl@0: This will support user set CFLAGS or LDFLAGS at configure time. sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Don't set CFLAGS to CFLAGS_DEFAULT, instead sl@0: subst CFLAGS_DEFAULT into the Makefile. Add AC_SUBST for CFLAGS_DEFAULT, sl@0: LDFLAGS_DEFAULT, LDFLAGS_DEBUG, and LDFLAGS_OPTIMIZE. sl@0: * unix/tcl.m4 (SC_ENABLE_SYMBOLS): Modify LDFLAGS_DEFAULT so that sl@0: it uses a Makefile variable just like CFLAGS_DEFAULT. sl@0: * win/Makefile.in: Set CFLAGS to @CFLAGS@ and @CFLAGS_DEFAULT@. sl@0: Set LDFLAGS to @LDFLAGS@ and @LDFLAGS_DEFAULT@. sl@0: This will support user set CFLAGS or LDFLAGS at configure time. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Don't set CFLAGS or LDFLAGS, instead subst sl@0: CFLAGS_DEFAULT and LDFLAGS_DEFAULT into the Makefile. sl@0: * win/tcl.m4 (SC_ENABLE_SYMBOLS): Modify LDFLAGS_DEFAULT so that sl@0: it uses a Makefile variable just like CFLAGS_DEFAULT. sl@0: sl@0: 2001-06-22 Mo DeJong sl@0: sl@0: * win/configure: sl@0: * win/tcl.m4 (SC_CONFIG_CFLAGS): Don't set LDFLAGS_DEBUG sl@0: to -g or LDFLAGS_OPTIMIZE to -O when compiling with gcc. sl@0: These flags are not needed and can cause problems with sl@0: the Cygwin version of ld. sl@0: sl@0: 2001-06-18 Donal K. Fellows sl@0: sl@0: * tests/unixInit.test (unixInit-1.2,unixInit-2.8): Added test for sl@0: code described below, and fixed a couple of errors that caused sl@0: problems during testing; the code to determine the installedTcl sl@0: constraint was wrong, and test unixInit-2.8 assumed that /tmp/lib sl@0: was free for use and could be deleted, which clashed nastily with sl@0: my installation and made other tests fail unnecessarily! sl@0: sl@0: * unix/tclUnixChan.c (TtyInit,TclpOpenFileChannel, sl@0: Tcl_MakeFileChannel,TclpGetDefaultStdChannel): Alterations so that sl@0: the standard channels - stdin, stdout and stderr - have the sl@0: correct type and fconfigure options. This required making the sl@0: initialisation of serial lines a little more sophisticated to sl@0: make the console behave correctly in interactive mode... [Bug sl@0: #219137 and duplicates] sl@0: sl@0: 2001-06-16 Don Porter sl@0: sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: sl@0: * generic/tclPanic.c (Tcl_PanicVA): sl@0: * mac/tclMacAppInit.c (main): sl@0: * mac/tclMacPanic.c (TclpPanic): sl@0: * unix/tclUnixPort.h: sl@0: * win/tclWinPort.h: Replaced TclMacSetPanic with TclpPanic sl@0: for setting a platform-specific panic handler. TclpPanic sl@0: is NULL on Unix and Windows. Fixes broken wish on Mac due sl@0: to earlier patches. [Patch 415648] sl@0: sl@0: * generic/tclIntPlatDecls.h: sl@0: * generic/tclStubInit.c: `make gentubs` after above changes. sl@0: sl@0: 2001-06-13 Don Porter sl@0: sl@0: * mac/tclMacAppInit.c (main, Macintosh_Init): sl@0: * mac/tclMacBOAAppInit.c (main): sl@0: * mac/tclMacPanic.c: Applied patches from Dan Steffen correcting sl@0: problems on the Macintosh in the 2001-06-08 changes. sl@0: sl@0: 2001-06-12 Donal K. Fellows sl@0: sl@0: * tests/regexp.test (regexp-18.12): sl@0: * generic/tclCmdMZ.c (Tcl_RegexpObjCmd): Fixed so that submatches sl@0: that do not match always have index pair {-1 -1} [Bug #219232] sl@0: sl@0: 2001-06-08 Don Porter sl@0: sl@0: * generic/tcl.h: sl@0: * generic/tcl.decls: sl@0: * generic/tclPanic.c: Added CONST to Tcl_*Panic* public interfaces. sl@0: [Patch 415648, TIP 27] sl@0: sl@0: * generic/tclInt.decls: sl@0: * mac/tclMacAppInit.c (main): sl@0: * mac/tclMacBOAAppInit.c (main): sl@0: * mac/tclMacPanic.c: Modified special Mac implementations of sl@0: Tcl_*Panic* to be exact copies of the generic implementations. sl@0: Added TclMacSetPanic. The generic implementations should be sl@0: used directly, rather than copies, but that requires further sl@0: changes by someone familiar with the Mac build systems. sl@0: [Patch 415648] sl@0: sl@0: * generic/tclDecls.h: sl@0: * generic/tclIntPlatDecls.h: sl@0: * generic/tclStubInit.c: `make gentubs` after above changes. sl@0: sl@0: * doc/Panic.3: sl@0: * unix/mkLinks: New file documenting Tcl_*Panic* public interfaces, sl@0: followed by `make mklinks`. [Patch 415648, Bug 219170, Bug 414936] sl@0: sl@0: 2001-06-03 Jeff Hobbs sl@0: sl@0: * generic/tclUtil.c (Tcl_DStringAppendElement): patch to save an sl@0: extra strlen call. [Bug #428572] sl@0: sl@0: 2001-05-30 Donal K. Fellows sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): Added two casts to sl@0: INST_STR_CMP implementation to get rid of a couple warnings from sl@0: the SUNWspro C compiler. sl@0: sl@0: * generic/tclBasic.c (Tcl_GetMathFuncInfo,Tcl_ListMathFuncs): sl@0: * generic/tclCmdIL.c (Tcl_InfoObjCmd,InfoFunctionsCmd): sl@0: * generic/tcl.decls (generic table, positions 435+436): sl@0: * tests/info.test: sl@0: * doc/CrtMathFnc.3: sl@0: * doc/info.n: Changes due to TIP #15 "Functions to List and Detail sl@0: Math Functions" sl@0: sl@0: 2001-05-28 Jeff Hobbs sl@0: sl@0: * library/init.tcl (unknown): removed errant " in error message sl@0: sl@0: 2001-05-27 Jeff Hobbs sl@0: sl@0: * generic/regc_locale.c: updated character class range data for sl@0: Unicode v3.1.0 compliance. sl@0: * generic/tclUniData.c: regenerated from Unicode v3.1.0 data file sl@0: (new as of 2001-05-16). This brings Tcl to current unicode sl@0: compliance. sl@0: sl@0: * tests/utf.test: added tests to check unicode 3 compliance sl@0: sl@0: * unix/Makefile.in (tclUtf.o): added tclUniData.c dependency. sl@0: sl@0: * tools/uniClass.tcl: added comments to output format and the sl@0: script for clarification. sl@0: sl@0: * tools/uniParse.tcl: corrected filename output and GetDelta macro sl@0: to use 'info' as param (was 'infO') sl@0: sl@0: 2001-05-26 Donal K. Fellows sl@0: sl@0: * generic/tclVar.c (tclArraySearchType,SetArraySearchObj, sl@0: ParseSearchId): Added code to speed up array searching by reducing sl@0: the amount of parsing needed for searchIds. sl@0: sl@0: * generic/tclObj.c (TclInitObjSubsystem): sl@0: * generic/tclIndexObj.c (Tcl_GetIndexFromObjStruct): sl@0: * generic/tclNamesp.c (TclInitNamespaceSubsystem): sl@0: * generic/tclInt.h: Moved some Tcl_ObjType initialisation to sl@0: TclInitObjSubsystem to be with the bulk of the rest. sl@0: [Patch 424851] Committed by Miguel Sofer sl@0: sl@0: 2001-05-23 Jeff Hobbs sl@0: sl@0: * tests/io.test: changed io-52.[9-11] to not be platform sensitive sl@0: with EOL translation. sl@0: sl@0: * library/encoding/cp1250.enc: sl@0: * library/encoding/cp1251.enc: sl@0: * library/encoding/cp1252.enc: sl@0: * library/encoding/cp1253.enc: sl@0: * library/encoding/cp1254.enc: sl@0: * library/encoding/cp1255.enc: sl@0: * library/encoding/cp1256.enc: sl@0: * library/encoding/cp1257.enc: sl@0: * library/encoding/cp1258.enc: sl@0: * library/encoding/cp874.enc: sl@0: * library/encoding/iso8859-6.enc: sl@0: * library/encoding/iso8859-7.enc: sl@0: * library/encoding/iso8859-8.enc: sl@0: * library/encoding/iso8859-10.enc (new): sl@0: * library/encoding/iso8859-13.enc (new): sl@0: * library/encoding/iso8859-14.enc (new): updated encoding tables sl@0: based on http://www.unicode.org/Public/MAPPINGS/. (kuhn) sl@0: sl@0: 2001-05-23 Mo DeJong sl@0: sl@0: * unix/tcl.m4 (SC_PATH_TCLCONFIG): Fix comments, sl@0: and typo in cached variable name. sl@0: sl@0: 2001-05-23 Mo DeJong sl@0: sl@0: * unix/tcl.m4 (SC_LOAD_TKCONFIG): sl@0: Remove use of undefined TCLCONFIG variable and sl@0: call AC_MSG_RESULT to print the checking result. sl@0: * win/tcl.m4: Ditto. sl@0: sl@0: 2001-05-22 Jeff Hobbs sl@0: sl@0: * generic/tclObj.c (TclAllocateFreeObjects): simplified sl@0: objSizePlusPadding to use sizeof(Tcl_Obj) (max) sl@0: Corrected use of tclObjsAlloced/Freed/Shared in TCL_MEM_DEBUG sl@0: compile. sl@0: sl@0: 2001-05-22 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: removed Tcl_DuplicateObj in INST_DUP sl@0: sl@0: 2001-05-21 Jeff Hobbs sl@0: sl@0: * tests/tcltest.test (tcltest-19.1): fixed failing test that was sl@0: getting affected by Windows env handling of empty valued elements. sl@0: sl@0: * unix/tcl.m4: added more common install directories in which to sl@0: search for *Config.sh [Bug #419812] sl@0: sl@0: * tests/cmdMZ.test (cmdMZ-1.4): added notLinux constraint to test sl@0: to prevent failure message on Linux due to OS caching bug. sl@0: sl@0: * tests/httpd (httpdRespond): added response to timeout value in sl@0: query string. sl@0: sl@0: * tests/http.test: removed unused notLinux constraint setting sl@0: sl@0: * generic/tclRegexp.c (Tcl_RegExpExecObj): added use of sl@0: Tcl_GetUnicodeFromObj. sl@0: sl@0: 2001-05-19 Andreas Kupries sl@0: sl@0: * Note that "tclbench" (see project "tcllib") was extended with sl@0: performance benchmarks for [fcopy] too. sl@0: sl@0: * doc/fcopy.n: Updated to reflect the extended behaviour of 'fcopy'. sl@0: sl@0: * tests/io.test: Added tests 'io-52.9', 'io-52.10' and 'io-52.11' sl@0: to test the handling of encodings by 'fcopy' / 'TclCopychannel' sl@0: [Bug #209210]. sl@0: sl@0: * generic/tclIO.c: Split of both 'Tcl_ReadChars' and sl@0: 'Tcl_WriteChars' into a public error checking and an internal sl@0: working part. The public functions now use the new internal sl@0: ones. The new functions are 'DoReadChars' and 'DoWriteChars'. sl@0: Extended 'CopyData' to use the new functions 'DoXChars' when sl@0: required by the encodings on the input and output channels sl@0: [Bug #209210]. sl@0: sl@0: 2001-05-16 Jeff Hobbs sl@0: sl@0: * library/history.tcl (tcl::HistAdd): prevent empty calls from sl@0: being added to the history (arndt) sl@0: sl@0: * tests/error.test: updated error-1.3 message to account for sl@0: string index being compiled at toplevel. sl@0: * tests/appendComp.test: sl@0: * tests/stringComp.test: new files for extended bytecode testing sl@0: sl@0: * generic/tclBasic.c: added new CompileProc invocations to basic sl@0: command initialization. sl@0: * generic/tclCompCmds.c: added new compile commands for append, sl@0: lappend, lindex and llength. Refactored set and incr compile sl@0: commands to use new TclPushVarName function for handling the sl@0: varname component during compilation (also used by append and sl@0: lappend). Changed string compile command to compile toplevel code sl@0: as well (when possible). sl@0: * generic/tclCompile.c: added new instruction enums sl@0: * generic/tclCompile.h: added debug info for new instructions sl@0: * generic/tclExecute.c (TclExecuteByteCode): moved elemPtr to sl@0: toplevel var (oft-used). Added definitions for new bytecode sl@0: instructions INST_LIST_INDEX, INST_LIST_LENGTH, INST_APPEND_SCALAR1, sl@0: INST_APPEND_SCALAR4, INST_APPEND_ARRAY1, INST_APPEND_ARRAY4, sl@0: INST_APPEND_ARRAY_STK, INST_APPEND_STK, INST_LAPPEND_SCALAR1, sl@0: INST_LAPPEND_SCALAR4, INST_LAPPEND_ARRAY1, INST_LAPPEND_ARRAY4, sl@0: INST_LAPPEND_ARRAY_STK, INST_LAPPEND_STK. sl@0: Refactored repititious code for reuse with INST_LOAD_STK (same as sl@0: INST_LOAD_SCALAR_STK), INST_STORE_STK (same as sl@0: INST_STORE_SCALAR_STK). sl@0: Updated INST_STR_CMP with style of fix of 2001-04-06 Fellows sl@0: [Bug #219201] as that fix only affected the runtime eval'ed sl@0: "string" (string compare is normally byte-compiled now). We sl@0: may want to back these out for speed in the future, noting the sl@0: problems with \x00 comparisons in the docs. sl@0: * generic/tclInt.h: declarations for new compile commands. sl@0: * generic/tclVar.c: change TclGetIndexedScalar, sl@0: TclGetElementOfIndexedArray, TclSetElementOfIndexedArray and sl@0: TclSetIndexedScalar to use flags. The Set functions now support sl@0: TCL_APPEND_ELEMENT and TCL_LIST_ELEMENT as well. sl@0: * generic/tclInt.decls: sl@0: * generic/tclIntDecls.h: minor signature changes for above. sl@0: sl@0: * generic/tclCmdMZ.c: made use of new Tcl_GetUnicodeFromObj. sl@0: sl@0: 2001-05-16 Donal K. Fellows sl@0: sl@0: * doc/console.n: Deleted. Put it in the wrong source tree! D'oh! sl@0: sl@0: 2001-05-15 Jeff Hobbs sl@0: sl@0: * generic/tcl.decls: sl@0: * generic/tclDecls.h: sl@0: * generic/tclStubInit.c: sl@0: * generic/tclStringObj.c (Tcl_GetUnicodeFromObj): new function to sl@0: parallel Tcl_GetStringFromObj (fix of an API oversight). sl@0: sl@0: * unix/tclUnixPipe.c: updated pipeChannelType to sl@0: TCL_CHANNEL_VERSION_2 type specification. sl@0: sl@0: * tests/fileName.test: corrected tests not to fail on win when a sl@0: C:/test dir exists. sl@0: sl@0: * generic/tclFileName.c (ExtractWinRoot): corrected ABR error sl@0: sl@0: 2001-05-15 Miguel Sofer sl@0: sl@0: * tests/lindex.test: added test for nested braces [Patch: 423617] sl@0: sl@0: 2001-05-15 Miguel Sofer sl@0: sl@0: * generic/tclInt.h sl@0: * generic/tclNamesp.c: invalidate all bytecodes in a namespace if sl@0: a new command shadows a bytecoded command. sl@0: * tests/namespace.test sl@0: Patched from [Bug: 231259] sl@0: sl@0: 2001-05-15 Donal K. Fellows sl@0: sl@0: * doc/console.n: Created. It seems very odd to me that the sl@0: console implementation is part of the Tcl distribution and not sl@0: part of Tk, but given the location of the source, the sl@0: documentation must obviously match up... sl@0: sl@0: 2001-05-14 Donal K. Fellows sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_StringObjCmd): sl@0: * tests/string.test (string-4.14): Negative string indices should sl@0: not be added as offsets to the result of [string first] but sl@0: instead be treated as referring to the start of the string. sl@0: [Bug: 423581] sl@0: sl@0: 2001-05-11 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Add a LDFLAGS variable to the sl@0: Makefile instead of directly substing @LDFLAGS@. sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4: Fix CFLAGS_DEFAULT so that the name sl@0: of a Makefile variable is passed as @CFLAGS@. sl@0: * win/Makefile.in: Move the setting of CFLAGS sl@0: higher up in the Makefile. sl@0: * win/configure: Regen. sl@0: * win/configure.in: Use dnl to comment out macros sl@0: so that they are not accidently expanded. sl@0: * win/tcl.m4: Fix CFLAGS_DEFAULT so that the name sl@0: of a Makefile variable is passed as @CFLAGS@. sl@0: sl@0: 2001-05-07 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: insure different rand() seeds in different sl@0: threads [Bug 416643] sl@0: sl@0: 2001-05-03 Jeff Hobbs sl@0: sl@0: * tests/tcltest.test: removed extraneous 'c' (doh!) [Bug: 414031] sl@0: sl@0: * tools/tcltk-man2html.tcl: removed use of 'exec' for portability sl@0: and fixed up code. sl@0: sl@0: 2001-05-03 Don Porter sl@0: sl@0: * doc/library.n: sl@0: * library/init.tcl: sl@0: * tests/autoMkindex.t*: Modified [auto_import] to apply sl@0: pattern matching in the [namespace import] style. [Bug 420186] sl@0: ***POTENTIAL INCOMPATIBILITY*** for any callers of [auto_import] sl@0: from outside Tcl that expect the pattern matching to be like that sl@0: of [string match]. sl@0: sl@0: 2001-05-03 Miguel Sofer sl@0: sl@0: * generic/tclParse.c: sl@0: * tests/namespace.test: Insure consistent behaviour of the sl@0: [unknown] command: when a command is unknown, it is always sl@0: processed by [::unknown], ignoring any namespace proc which sl@0: happens to be called "unknown" [Patch #421166, Bug #420507] sl@0: sl@0: 2001-05-02 Don Porter sl@0: sl@0: * tools/genStubs.tcl: Add a package require of Tcl 8 sl@0: at the beginning of the script so that the script sl@0: will print a descriptive error message when run sl@0: in an old Tcl 7 shell. sl@0: sl@0: 2001-04-27 Kevin Kenny sl@0: sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: sl@0: * generic/tclCmdIL.c: sl@0: * generic/tclProc.c: sl@0: * generic/tclVar.c: Added another collection of missing CONSTs sl@0: related to TclGetNamespaceForQualName. sl@0: * generic/tclIntDecls.h: Regenerated. sl@0: sl@0: 2001-04-25 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/tcl.m4: Subst TCL_THREADS into tclConfig.sh. sl@0: * unix/tclConfig.sh.in: Add TCL_THREADS variable. sl@0: * win/configure: Regen. sl@0: * win/tcl.m4: Subst TCL_THREADS into tclConfig.sh. sl@0: * win/tclConfig.sh.in: Add TCL_THREADS variable. sl@0: sl@0: 2001-04-25 Mo DeJong sl@0: sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Use $@ in MAKE_LIB and MAKE_STUB_LIB sl@0: commands instead of using a delayed subst variable. Replace sl@0: instances of STUB_LIB_FILE with TCL_STUB_LIB_FILE. sl@0: sl@0: 2001-04-25 Mo DeJong sl@0: sl@0: * unix/Makefile.in: Use TCL_STUB_LIB_FILE instead of STUB_LIB_FILE. sl@0: * unix/configure: Regen. sl@0: * unix/configure.in: Don't subst STUB_LIB_FILE, use TCL_STUB_LIB_FILE sl@0: instead. sl@0: sl@0: 2001-04-25 Donal K. Fellows sl@0: sl@0: * tools/encoding/iso8859-15.txt: sl@0: * library/encoding/iso8859-15.enc: Oops! Got the full encoding sl@0: wrong. Should be fixed now... sl@0: sl@0: * tools/encoding/iso8859-15.txt: sl@0: * library/encoding/iso8859-15.enc: sl@0: * tools/tcl.wse.in: Added ISO 8859-15 (a.k.a. Latin-1 + Euro sl@0: currency symbol) support. sl@0: sl@0: * generic/tclNamesp.c: sl@0: * generic/tclBasic.c (TclRenameCommand): Missing CONST from sl@0: several declarations relating to use of TclGetNamespaceForQualName sl@0: sl@0: 2001-04-24 Kevin B. Kenny sl@0: * doc/AssocData.3: sl@0: * doc/CrtCommand.3: sl@0: * doc/CrtMathFnc.3: sl@0: * doc/CrtObjCmd.3: sl@0: * doc/ExprLong.3: sl@0: * generic/tclBasic.c: sl@0: * generic/tclCmdMZ.c: sl@0: * doc/CrtSlave.3: sl@0: * generic/tclNamesp.c: sl@0: * generic/tcl.decls: sl@0: * generic/tcl.h: sl@0: * generic/tclInt.decls: sl@0: * generic/tclInt.h: (TIP #27) Another round of CONST changes, this sl@0: time adding CONST to the API's exported from tclBasic.c. sl@0: [Patch #415179] sl@0: ***POTENTIAL INCOMPATIBILITY*** from 8.4a2, in which Vince sl@0: Darley's changes to command tracing were added. A const has been sl@0: added to the type signature of one of the parameters to sl@0: Tcl_CommandTraceProc. sl@0: sl@0: 2001-04-10 Kevin B. Kenny sl@0: * unix/tclUnixTime.c: Altered code to use memcpy instead of sl@0: structure assigments in an effort to achieve better K&R sl@0: compatibility. sl@0: sl@0: 2001-04-10 Kevin B. Kenny sl@0: sl@0: * unix/tclUnixTime.c: Fixed silly typo in calls to 'gmtime' and sl@0: 'localtime' that broke the Linux build. sl@0: sl@0: 2001-04-09 Kevin B. Kenny sl@0: sl@0: * unix/tclLoadShl.c: Added DYNAMIC_PATH to the load flags so that sl@0: the SHLIB_PATH will be searched for other libraries. [Bug #219140] sl@0: sl@0: 2001-04-09 Kevin B. Kenny sl@0: sl@0: * unix/tcl.m4: Added _REENTRANT to Solaris build so that thread sl@0: safe library routines are included. sl@0: * unix/configure: Re-ran 'autoconf' with changed tcl.m4 sl@0: * tclUnixTime.c: Modified for thread safety of 'gmtime' and sl@0: 'localtime' system calls [Bugs #219136 and #232558] sl@0: sl@0: 2001-04-09 Donal K. Fellows sl@0: sl@0: * tests/expr.test (expr-21.*): Tests to check below fix. sl@0: * generic/tclParseExpr.c (GetLexeme): Now recognises the sl@0: non-numeric boolean literals for what they are. It no longer makes sl@0: sense for anyone to create functions with the same name as one of sl@0: them, but this was true in 7.* as well [Bug #217777; finally!] sl@0: sl@0: 2001-04-07 Miguel Sofer sl@0: sl@0: * generic/tclExecute.c: Avoid panic when there are extra items in sl@0: the tcl stack [Bug #406709, Patch #414470] sl@0: * tests/foreach.test: test to exercise the patch sl@0: sl@0: 2001-04-07 Miguel Sofer sl@0: sl@0: * doc/namespace.n: document correct functionality sl@0: * generic/tclNamesp.c: corrected behaviour of [namespace code] sl@0: (Bug #219385, Patch #403530) sl@0: * library/init.tcl: sl@0: * tests/namespace-old.test: test correct functionality sl@0: * tests/namespace.test: test correct functionality sl@0: sl@0: 2001-04-07 Andreas Kupries sl@0: sl@0: * unix/Makefile.in (checkdoc): New target, checking the sl@0: definitions as found in the compiled library against the sl@0: manpages to find undocumented public functionality. sl@0: sl@0: * unix/mkLinks: Updated to include the new manpage. sl@0: sl@0: * doc/UniCharIsAlpha.3: New manpage documenting the Unicode sl@0: character classification APIs [Bug #218720]. sl@0: sl@0: 2001-04-07 Andreas Kupries sl@0: sl@0: * unix/mkLinks: Updated to incorporate the changes below. sl@0: sl@0: * doc/StringObj.3: Added 'Tcl_AttemptSetObjLength' to the NAME sl@0: section. [Bug #414435]. sl@0: sl@0: * doc/Alloc.3: Added both 'Tcl_AttemptAlloc' and sl@0: 'Tcl_AttemptRealloc' to the NAME section. [Bug #414435]. sl@0: sl@0: * doc/Utf.3: Added both 'Tcl_UniCharCaseMatch' and sl@0: 'Tcl_UniCharNcasecmp' to the NAME section. [Bug #414435]. sl@0: sl@0: 2001-04-06 Don Porter sl@0: sl@0: * library/init.tcl: sl@0: * tests/init.test: Modified processing of $::errorInfo by sl@0: [unknown] when the auto-loaded command throws an error to better sl@0: cover the tracks of auto-loading. [Bug 219280, Patch 403551] sl@0: sl@0: 2001-04-06 Donal K. Fellows sl@0: sl@0: * doc/read.n: Added section on "USE WITH SERIAL PORTS" to resolve sl@0: [Bug #219402] sl@0: sl@0: * tests/string.test (string-2.30): Test for this case sl@0: * generic/tclCmdMZ.c (Tcl_StringObjCmd, STR_COMPARE branch): Fixed sl@0: problem caused by Utf-rep of \x00 being more than Utf-rep of \x01 sl@0: fooling memcmp by forcing everything through Utf-based sl@0: comparisons. Added optimizations for case where objects have a sl@0: string/unicode-rep or a bytearray-rep (i.e. where we can perform sl@0: comparisons on fixed-size units.) [Bug #219201] sl@0: * generic/tclUtf.c (Tcl_UtfNcmp): Corrected seriously erroneous sl@0: comment. sl@0: sl@0: 2001-04-05 Andreas Kupries sl@0: sl@0: * doc/Macintosh.3: Removed duplicates from .SH line sl@0: [Bug #413983]. sl@0: sl@0: 2001-04-05 Donal K. Fellows sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_StringObjCmd): Fixed so will compile sl@0: with K&R compilers [Patch #413844, Bug #413847] sl@0: sl@0: 2001-04-04 Don Porter sl@0: sl@0: * generic/tclMain.c: Patch from Kevin Kenny to restore support of sl@0: pre-ANSI compilers. [Bug 413846, Patch 413842] sl@0: sl@0: 2001-04-04 Andreas Kupries sl@0: sl@0: * unix/mkLinks: Updated to contain the new manpage. sl@0: sl@0: * doc/Environment.3: New manpage, describes Tcl_PutEnv sl@0: [Bug #219171]. sl@0: sl@0: * doc/Macintosh.3: New manpage describing the macintosh specific sl@0: parts of the public API [Bug #219169]. sl@0: sl@0: 2001-04-04 Jeff Hobbs sl@0: sl@0: * unix/configure: sl@0: * unix/tcl.m4: extended test of termios vs. termio vs. sgtty to sl@0: better detect result on Linux and when certain configure sl@0: redirections are being used. (max) [Patch #402923; Bug #227412, sl@0: #219194] sl@0: sl@0: 2001-04-04 Andreas Kupries sl@0: sl@0: * generic/tclTest.c: sl@0: * tests/io.tests: TIP #10 followup correcting a problem with the sl@0: original patch because of the lack of 'testthread id' for a sl@0: non-threaded compilation. sl@0: sl@0: 2001-04-04 Kevin Kenny sl@0: sl@0: * doc/ByteArrObj.3: sl@0: * doc/DumpActiveMemory.3: sl@0: * doc/InitStubs.3: sl@0: * doc/PkgRequire.3: sl@0: * doc/StringObj.3: sl@0: * generic/tcl.decls: sl@0: * generic/tcl.h: sl@0: * generic/tclBinary.c: sl@0: * generic/tclCkalloc.c: sl@0: * generic/tclDecls.h: sl@0: * generic/tclListObj.c: sl@0: * generic/tclObj.c: sl@0: * generic/tclPkg.c: sl@0: * generic/tclStringObj.c: sl@0: * generic/tclStubLib.c: sl@0: (TIP#27) Changed a number of Tcl API's to accept "CONST char*" sl@0: in place of simple "char*". (kennykb) [Patch #404026] sl@0: sl@0: 2001-04-04 Jeff Hobbs sl@0: sl@0: * generic/tclListObj.c (Tcl_SetListObj): set objPtr->length = 0 in sl@0: empty object case to maintain sanctity of Tcl_Obj bytes/length sl@0: pairing. (porter) [Patch #405998] sl@0: sl@0: 2001-04-03 Andreas Kupries sl@0: sl@0: * unix/mkLinks: Added 'Signal.3', 'Tcl_WaitPid'. sl@0: sl@0: * doc/DetachPids.3: Added description of 'Tcl_WaitPid' [Bug #219173]. sl@0: sl@0: * doc/Signal.3: New man page describing the public API procedures sl@0: 'Tcl_SignalId' and 'Tcl_SignalMsg' [Bug #219172]. sl@0: sl@0: 2001-04-02 Jeff Hobbs sl@0: sl@0: * README: sl@0: * win/README: sl@0: * win/README.binary: further notes corrections. sl@0: sl@0: * win/configure: sl@0: * win/tcl.m4 (SHLIB_LD): added -incremental:no. [Bug #219381] sl@0: sl@0: 2001-04-01 Jeff Hobbs sl@0: sl@0: * README: sl@0: * mac/README: sl@0: * win/README: sl@0: * win/README.binary: sl@0: * unix/README: updated patchlevel information to 8.4a3 and sl@0: updated links and notes. sl@0: sl@0: * generic/tcl.h: sl@0: * tools/tcl.wse.in: sl@0: * win/configure.in (VER): sl@0: * win/configure: sl@0: * unix/configure: sl@0: * unix/configure.in (VER): sl@0: * unix/tcl.spec: updated patchlevel information to 8.4a3 sl@0: sl@0: 2001-03-30 Jeff Hobbs sl@0: sl@0: * generic/tclCkalloc.c (TclFinalizeMemorySubsystem): set curTagPtr sl@0: to NULL to allow for reuse. sl@0: * generic/tclEvent.c (Tcl_Finalize): moved the tsdPtr sl@0: initialization inside the subsystemsInitialized check to prevent sl@0: it potentially getting called twice during finalization. (wu) sl@0: [Patch #403532, Bug #219391] sl@0: sl@0: * generic/tclThreadTest.c (Tcl_ThreadObjCmd): cast fixes sl@0: * generic/tclTest.c (TestChannelCmd): added cast to mollify sl@0: Windows debug build. sl@0: sl@0: * win/tclWinSock.c (SocketEventProc): Fixed race condition in sl@0: readability of socket on Windows. sl@0: [Patch #410674, Bug #219205 #219333] sl@0: sl@0: * win/tcl.m4: added imm32.lib to LIBS_GUI for Tk IME support. sl@0: sl@0: * win/Makefile.in (install-libraries): removed extra \s that broke sl@0: the target. sl@0: (install-doc): improved install-* targets to use their base build sl@0: dependency. sl@0: sl@0: 2001-03-30 Andreas Kupries sl@0: sl@0: * All of the changes below belong to TIP #10 [Tcl I/O Enhancement: sl@0: Thread-Aware Channels]. See also [Patch #403358] at SF. sl@0: sl@0: * generic/tclIO.h (struct ChannelState, line 236f): Extended the sl@0: structure with a new field of type 'Tcl_ThreadId' to hold the id sl@0: of the thread currently managing all channels with this state. sl@0: sl@0: Note: This structure is shared by all channels in a stack of sl@0: transformations. sl@0: sl@0: * generic/tclIO.c (Tcl_CreateChannel, lines 1058-1065): Modified sl@0: to store the Id of the current thread in the 'ChannelState' of sl@0: the new channel. sl@0: sl@0: * generic/tclIO.c (Tcl_SpliceChannel, lines 2265-2270): Modified sl@0: in the same manner as 'Tcl_CreateChannel' as the channel will be sl@0: managed by the current thread afterward. sl@0: sl@0: * generic/tclIO.c (Tcl_GetChannelThread, lines 1478-1503): sl@0: * generic/tcl.decls (Tcl_GetChannelThread, lines 1504-1506): New sl@0: API function to retrieve the Id of the managing thread from a sl@0: channel. Implementation and declaration. sl@0: sl@0: * generic/tclTest.c (TestChannelCmd, lines 4520-4532): Added sl@0: subcommand 'mthread' to query a channel about its managing sl@0: thread. sl@0: sl@0: 2001-03-29 Mo DeJong sl@0: sl@0: * tests/interp.test: Print out warning when sl@0: testinterpdelete command is not defined. sl@0: Add tests that checks to make sure a sl@0: child interp inherits the parent's cwd. sl@0: sl@0: 2001-03-29 Jeff Hobbs sl@0: sl@0: * doc/tcltest.n: corrected incorrect macro usage. sl@0: sl@0: * doc/lsort.n: corrected unbalanced nroff macros. sl@0: sl@0: * unix/tclUnixPipe.c (TclpCreateTempFile): prevent potential race sl@0: condition and security leak in tmp filename creation. sl@0: (max) [Patch #402924] sl@0: sl@0: * unix/configure: sl@0: * unix/tcl.m4: corrected IRIX-5.x config to not use -n32. sl@0: (english) [Patch #403626] sl@0: sl@0: * unix/tclUnixThrd.c (Tcl_ConditionWait): fixed handling of sl@0: timeout for threads (corrects excessive CPU usage issue for Tk on sl@0: Unix in threaded Tcl environment). (ruppert) [Bug #411603] sl@0: sl@0: 2001-03-29 Donal K. Fellows sl@0: sl@0: * doc/lsort.n: Added some notes that clarify the behaviour of sl@0: [lsort] as well as a whole bunch of examples. [Bug #219202] sl@0: sl@0: 2001-03-27 Jeff Hobbs sl@0: sl@0: * doc/Alloc.3: corrected docs to note that Tcl_Attempt* return sl@0: char *'s, not ints. [Bug #411388] sl@0: sl@0: * tests/regexp.test (regexp-19.1): sl@0: * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): fixed handling of nulls sl@0: in subspec value. sl@0: sl@0: 2001-03-26 Don Porter sl@0: sl@0: * generic/tclDecls.h (Tcl_InitCustomHashTable): Correction to sl@0: patch from 2001-01-18; tclDecls.h was not generated using sl@0: 'make genstubs'. sl@0: sl@0: 2001-03-26 Donal K. Fellows sl@0: sl@0: * win/tclWinInt.h (tclWinTCharEncoding): Removed as now a static sl@0: variable in win/tclWin32Dll.c instead. sl@0: sl@0: 2001-03-23 Jeff Hobbs sl@0: sl@0: * generic/tclVar.c (Tcl_ArrayObjCmd): Corrected retrieval of sl@0: resultPtr to prevent possible corruption. sl@0: sl@0: * generic/tclNamesp.c (Tcl_Import): Correctly freed a DString. sl@0: (lavana) [Patch #403755] sl@0: sl@0: 2001-03-15 Donal K. Fellows sl@0: sl@0: * tests/set-old.test (set-old-7.2): Changed error behaviour of sl@0: [unset] to agree with documentation, so must change test as well. sl@0: sl@0: 2001-03-14 Don Porter sl@0: sl@0: * library/package.tcl (pkg_mkIndex): Added patch from Vince sl@0: Darley to make [pkg_mkIndex -verbose] even more verbose. sl@0: [Bug 219349, Patch 403529] sl@0: sl@0: 2001-03-13 Donal K. Fellows sl@0: sl@0: * doc/info.n: Improved documentation for [info hostname]. sl@0: [Bug #403840] sl@0: sl@0: * generic/tclVar.c (Tcl_UnsetObjCmd): Made command behave as sl@0: documented [issue remaining from bug #405769] sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_StringObjCmd): A missing sl@0: {return TCL_OK;} was causing memory corruption. [Bug #408002] sl@0: sl@0: * generic/tclExecute.c (TclDeleteExecEnv, GrowEvaluationStack, sl@0: TclExecuteByteCode): Added some casts to ClientData that are sl@0: apparently needed on some architectures. sl@0: sl@0: 2001-03-12 Donal K. Fellows sl@0: sl@0: * tests/string.test: Fixed some test numberings and added a test. sl@0: [Patch #403229] sl@0: sl@0: 2001-03-06 Donal K. Fellows sl@0: sl@0: * generic/tclVar.c (Tcl_UnsetObjCmd): Rewrote argument parser to sl@0: avoid a read off the end of the argument array that could occur sl@0: when executing something like [unset -nocomplain] was executed. sl@0: Improved the error message given when too few arguments are given sl@0: (-nocomplain should obviously be *before* --, not after it) and sl@0: also modified the test suite to take account of that and the sl@0: documentation to use the same improvement. [Bug 405769] sl@0: sl@0: 2001-03-02 Donal K. Fellows sl@0: sl@0: * generic/tclExecute.c (TclExecuteByteCode): Fixed bug that could sl@0: pass pointers to freed memory to command implementations, which sl@0: most obviously caused some weird behaviour with [info level], but sl@0: could have caused problems with user code and command traces too. sl@0: [Bug 404865, Patch 405436] sl@0: sl@0: 2001-02-23 msofer sl@0: * no changes; fixing up the missing comment in the previous one. sl@0: Sorry. sl@0: sl@0: 2001-02-23 msofer sl@0: sl@0: * /cvsroot/tcl/tcl/tests/execute.test: sl@0: added test for evaluation of an expression in a variable; evals once sl@0: by compiling, second time using the previous compilation sl@0: sl@0: 2001-02-18 Kevin B. Kenny sl@0: sl@0: * doc/clock.n: Updated documentation to reflect the addition of sl@0: compat/strftime.c, including the correct formatting of sl@0: ISO-8601:1988 fiscal week number (%V). sl@0: sl@0: 2001-02-15 Donal K. Fellows sl@0: sl@0: * generic/tclCmdMZ.c (Tcl_SplitObjCmd): Improved efficiency of sl@0: splitting strings into individual characters by adding hash so sl@0: that only one Tcl_Obj per character is created. Improves sl@0: performance of splitting of short strings and makes a huge sl@0: difference to splitting of long strings, such as is done in the sl@0: mime package in tcllib. [Bug #131523] sl@0: sl@0: 2001-01-31 Don Porter sl@0: sl@0: * win/makefile.vc (install-libraries): Corrected misdirected sl@0: install directory for the msgcat 1.2 package. sl@0: sl@0: 2001-01-30 Don Porter sl@0: sl@0: * generic/tclIO.c (CopyData): Moved code that updates the count sl@0: of how many bytes are left to copy. Corrects bug that when sl@0: writing occurs in the background, the copy loop could be sl@0: escaped without updating the count, causing CopyData() to try sl@0: to copy more bytes than the toRead value originally passed to sl@0: TclCopyChannel(), leading to hangs and misreporting of number sl@0: of bytes copied. [Bug 118203, Patch 103432] sl@0: sl@0: 2001-01-18 Andreas Kupries sl@0: sl@0: * Everything below belongs together, it fixes bug #123153. sl@0: sl@0: * generic/tcl.h (line 342): A bit more explanation about the sl@0: default value for TCL_PRESERVE_BINARY_COMPATABILITY. sl@0: sl@0: * generic/tcl.h (line 1208): Define the macro 'Tcl_InitHashTable' sl@0: only when TCL_PRESERVE_BINARY_COMPATIBILITY is not set sl@0: as it kills binary compatibility to 8.3 and earlier sl@0: versions. This is the main part of the patch/change. sl@0: sl@0: * generic/tcl.decls (line 1469): sl@0: * generic/tclHash.c (Tcl_InitHashTable): sl@0: * generic/tclHash.c (Tcl_InitHashTableEx): sl@0: * generic/tclObj.c (Tcl_InitObjHashTable): Changed sl@0: 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'. This change sl@0: is more of an estethical nature, replacing the ubiquitous 'Ex' sl@0: suffix with a more meaningful name. The introduced binary sl@0: incompatibility is deemed acceptable as it is between alpha sl@0: versions. Updated callers. sl@0: sl@0: * doc/Hash.3: sl@0: * unix/mkLinks: Changed 'Tcl_InitHashTableEx' to sl@0: 'Tcl_InitCustomHashTable'. sl@0: sl@0: 2001-01-10 Donal K. Fellows sl@0: sl@0: * tests/winPipe.test (winpipe-1.20): sl@0: * tests/winDde.test (createChildProcess): sl@0: * tests/pkgMkIndex.test (pkgtest::createIndex): Removed sl@0: assumption that paths contain no spaces which causes problems with sl@0: both [eval] and [open |...] due to the well-known differences sl@0: between lists and strings. Fixes bug #119406 sl@0: sl@0: 2001-01-04 Don Porter sl@0: sl@0: * tests/unixInit.test: sl@0: * unix/tclUnixInit.c (TclpInitLibraryPath): sl@0: * win/tclWinInit.c (TclpInitLibraryPath): Several entries in sl@0: the library path ($tcl_libPath) are determined relative to the sl@0: absolute path of the executable. When the executable is sl@0: installed in or near the root directory of the file system, sl@0: relative pathnames were being incorrectly generated, and in sl@0: the worst case, memory access violations were crashing the program. sl@0: [Bug 119416, Patch 102972] sl@0: sl@0: ****************************************************************** sl@0: *** CHANGELOG ENTRIES FOR 2000 IN "ChangeLog.2000" *** sl@0: *** CHANGELOG ENTRIES FOR 1999 AND EARLIER IN "ChangeLog.1999" *** sl@0: ******************************************************************