1 2008-04-23 Keith Seitz <keiths@redhat.com>
3 Based on patch from Masaki Muranaka <monaka@monami-software.com>:
4 * compat/strstr.c: Include tcl.h and define NULL if it is
7 2008-03-03 Keith Seitz <keiths@redhat.com>
9 From Dave Murphy <davem@devkitpro.org>:
10 * win/tclWin32Dll.c (TclpCheckStackSpace): Backport
11 EXCEPTION_REGISTRATION code from Tcl mainline.
13 2007-05-14 Maciej W. Rozycki <macro@mips.com>
15 * win/tclWinPipe.c (TclpCreateProcess): Only use CW_SYNC_WINENV if
16 supported by the compilation environment.
18 2006-12-01 Corinna Vinschen <corinna@vinschen.de>
20 * win/tclWin32Dll.c (TclWinInit): Set native cwd to Cygwin's cwd.
21 * win/tclWinFile.c (TclpObjChdir): Keep native and Cygwin's cwd
24 2006-11-30 Christopher Faylor <cgf@timesys.com>
26 * cygwin/configure.in (LIB_AC_PROG_CC): Upgrade macro to accommodate
27 newer version of autoconf.
28 * cygwin/configure: Regenerate.
29 * win/tcl.m4: Upgrade to avoid use of obsolete ac_cv_cygwin variable.
30 * win/configure: Regenerate.
32 2006-11-30 Christopher Faylor <cgf@timesys.com>
34 * win/tclWinPipe.c (TclpCreateProcess): Call cygwin-specific routine to
35 set up windows environment.
37 2006-07-13 Steve Ellcey <sje@cup.hp.com>
39 * configure.in: Fix for autoconf 2.5.
40 * cygwin/configure.in: Fix for autoconf 2.5.
41 * win/configure.in: Fix for autoconf 2.5.
42 * unix/configure.in: Fix for autoconf 2.5.
43 * unix/tcl.m4: Fix for autoconf 2.5.
44 * configure: Regenerate.
45 * cygwin/configure: Regenerate.
46 * tools/configure: Regenerate.
47 * unix/configure: Regenerate.
48 * unix/dltest/configure: Regenerate.
49 * win/configure: Regenerate.
51 2006-02-08 Alexandre Oliva <aoliva@redhat.com>
53 * unix/tcl.m4 (SC_CONFIG_CFLAGS, SC_BLOCKING_STYLE): Remove
54 unmatched single quote inside backticks.
55 * unix/configure: Rebuild.
57 2006-02-02 Christopher Faylor <cgf@timesys.com>
59 * win/tclWin32Dll.c (_except_checkstackspace_handler): Define with
60 proper attribute to prevent this static function from being deleted due
61 to aggressive gcc optimization.
62 * win/tclWinChan.c (_except_makefilechannel_handler): Ditto.
63 * win/tclWinFCmd.c (_except_dorenamefile_handler): Ditto.
65 * configure.in: Make sure that TCL_LIB_SPEC is properly filled out.
66 * configure: Regenerate.
68 2004-01-21 Keith Seitz <kseitz@uglyboxes.com>
71 2003-10-22 Donal K. Fellows <fellowsd@cs.man.ac.uk>
72 * generic/tclCmdAH.c (Tcl_FileObjCmd): Changed FILE_ prefix to FCMD_
73 to stop symbol/#def clashes on Cygwin/Mingw32 on NT.
75 2003-02-11 Martin M. Hunt <hunt@redhat.com>
76 From Mumit Khan <khan@nanotech.wisc.edu>
78 * generic/tclIOUtil.c (SetFsPathFromAny): Add Cygwin specific
79 code to convert POSIX filename to native format.
80 * generic/tclFileName.c (Tcl_TranslateFileName): And remove
83 * win/tclWinFile.c (TclpObjChdir): Use chdir on Cygwin.
86 2003-02-06 Martin M. Hunt <hunt@redhat.com>
88 * win/tcl.m4 (SC_CONFIG_CFLAGS): Don't default to -O.
89 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Don't default to -O.
90 CFLAGS gets set to "-O2" by default in top level
91 configure. Adding "-O" here causes the "-O2" to be
92 ignored, but only when the user types "make" within
93 the tcl subdirectory. This caused some confusion.
94 * win/configure: Rebuilt.
95 * unix/configure: Rebuilt.
97 * generic/tclEnv.c (TclUnsetEnv): Cast arg to unsigned.
99 Import from latest tcl sources to fix a bug with
101 2003-01-25 Mo DeJong <mdejong@users.sourceforge.net>
102 * win/tclWinFCmd.c (DoRenameFile, DoCopyFile, squelch_warnings):
103 Re-implement inline ASM SEH handlers for gcc.
104 The esp and ebp registers are now saved on the
105 stack instead of in global variables so that
106 the code is thread safe. Add additional checks
107 when TCL_MEM_DEBUG is defined to be sure the
108 values were recovered from the stack properly.
109 Remove squelch_warnings functions and add
110 a dummy call in the handler methods to squelch
112 * win/tclWinReg.c: Add casts to avoid compiler
113 warning. Fix assignment in if expression bug.
116 2002-10-22 Jeff Hobbs <jeffh@ActiveState.com>
118 *** 8.4.1 TAGGED FOR RELEASE ***
120 * changes: updated for 8.4.1 release
122 * win/Makefile.in: removed @MEM_DEBUG_FLAGS@ subst.
123 * win/configure: regen
124 * win/configure.in: removed SC_ENABLE_MEMDEBUG call
125 * win/tcl.m4: replaced SC_ENABLE_MEMDEBUG with a more intelligent
126 SC_ENABLE_SYMBOLS that takes yes|no|mem|compile|all as options now.
128 2002-10-22 Daniel Steffen <das@users.sourceforge.net>
130 * library/auto.tcl (tcl_findLibrary):
131 * library/package.tcl (tclPkgUnknown): on macosx, search inside the
132 Resources/Scripts subdirectory of any potential package directory
133 * macosx/Tcl.pbproj/project.pbxproj: add standard Frameworks dirs
134 to TCL_PACKAGE_PATH make argument.
135 * unix/tclUnixInit.c (TclpSetVariables): on macosx, add embedded
136 framework dirs to tcl_pkgPath: @executable_path/../Frameworks and
137 @executable_path/../PrivateFrameworks (if they exist), as well as
138 the dirs in DYLD_FRAMEWORK_PATH (if set). [Patch #624509]
139 use standard MAXPATHLEN instead of literal 1024
141 2002-10-22 Donal K. Fellows <fellowsd@cs.man.ac.uk>
143 * doc/StringObj.3, doc/Object.3: Documented that Tcl_Obj's
144 standard string form is a modified UTF-8; apparently, this was not
145 mentioned anywhere in the main docs, and lead to [Bug 624919].
147 2002-10-21 Daniel Steffen <das@users.sourceforge.net>
149 * macosx/Tcl.pbproj/project.pbxproj: bumped version to 8.4.1
150 * generic/tcl.h: Added reminder comment to edit
151 macosx/Tcl.pbproj/project.pbxproj when version number changes.
153 2002-10-18 Jeff Hobbs <jeffh@ActiveState.com>
155 * library/reg/pkgIndex.tcl:
160 * win/makefile.bc: Updated to reg1.1
162 * doc/registry.n: Added support for broadcasting changes to
163 * tests/registry.test: the registry Environment. Noted proper code
164 * win/tclWinReg.c: in the docs. [Patch #625453]
166 * unix/Makefile.in (dist): add any mac/tcl*.sea.hqx files
168 2002-10-17 Don Porter <dgp@users.sourceforge.net>
170 * generic/tclVar.c: Fixed code that check for proper # of args to
171 * tests/var.test: [array names]. Added test. [Bug 624755]
173 2002-10-16 Jeff Hobbs <jeffh@ActiveState.com>
175 * win/configure: add workaround for cygwin windres
176 * win/tcl.m4 (SC_CONFIG_CFLAGS): problem. [Patch #624010] (howell)
178 2002-10-15 Jeff Hobbs <jeffh@ActiveState.com>
180 * README: added archives.tcl.tk note
183 * unix/tcl.m4: Correct AIX-5 ppc build flags.
184 Correct HP 11 64-bit gcc building. [Patch #601051] (martin)
186 2002-10-15 Vince Darley <vincentdarley@users.sourceforge.net>
188 * generic/tclCmdMZ.c:
189 * tests/trace.test: applied patch from Hemang Levana to fix
190 [Bug #615043] in execution traces with idle tasks firing.
192 2002-10-14 Jeff Hobbs <jeffh@ActiveState.com>
194 * generic/tclEnv.c (Tcl_PutEnv): correct possible mem leak.
195 [Patch #623269] (brouwers)
197 2002-10-11 Donal K. Fellows <fellowsd@cs.man.ac.uk>
199 * generic/tcl.h: Need a different strategy through the maze of
200 #defines to let people building with Cygwin build correctly. Also
201 made some comments less misleading...
203 2002-10-10 Jeff Hobbs <jeffh@ActiveState.com>
205 * README: fixed minor nits [Bug #607776] (virden)
208 * win/tcl.m4: enable USE_THREAD_ALLOC (new threaded allocator) by
209 default in cygwin configure on Windows.
211 2002-10-10 Don Porter <dgp@users.sourceforge.net>
213 * doc/Tcl.n: Clarified that namespace separators are legal in
214 the variable names during $-subtitution. [Bug 615139]
216 * doc/regexp.n: Typo correction. Thanks Ronnie Brunner. [Bug 606826]
218 2002-10-10 Vince Darley <vincentdarley@users.sourceforge.net>
227 * win/tclWinLoad.c: allow either full paths or simply dll names
228 to be specified when loading files (the latter will be looked
229 up by the OS on your PATH/LD_LIBRARY_PATH as appropriate).
232 2002-10-09 Jeff Hobbs <jeffh@ActiveState.com>
234 * unix/README: doc'ed --enable-symbols options.
235 * unix/Makefile.in: removed @MEM_DEBUG_FLAGS@ subst.
236 * unix/configure: regen
237 * unix/configure.in: removed SC_ENABLE_MEMDEBUG call
238 * unix/tcl.m4: replaced SC_ENABLE_MEMDEBUG with a more intelligent
239 SC_ENABLE_SYMBOLS that takes yes|no|mem|compile|all as options now.
241 2002-10-09 Kevin B. Kenny <kennykb@acm.org>
243 * win/tclWinTime.c: Added code to set an exit handler that
244 terminates the thread that calibrates the performance counter, so
245 that the thread won't outlive unloading the Tcl DLL. [Tcl bug
248 2002-10-09 Donal K. Fellows <fellowsd@cs.man.ac.uk>
250 * doc/binary.n: More clarification of [binary scan]'s behaviour.
252 2002-10-09 Daniel Steffen <das@users.sourceforge.net>
254 * generic/tclIntDecls.h: fixed botched regen.
256 2002-10-09 Daniel Steffen <das@users.sourceforge.net>
258 * generic/tclInt.decls: made TclSetPreInitScript() declaration
259 generic as it is used on mac & aqua as well.
260 * generic/tclIntDecls.h:
261 * generic/tclStubInit.c: regen.
262 * generic/tclCompile.h: added prototype for TclCompileVariableCmd.
264 * mac/tclMacPort.h: removed incorrect <fcntl.h> definitions
265 and obsolete <stat.h> definitions.
266 * mac/tclMacChan.c: removed obsolete GetOpenMode() and replaced
267 associated constants with the <fcntl.h> analogues (they existing
268 defs were inconsistent with <fcntl.h> which was causing havoc when
269 Tcl_GetOpenMode was used instead of private GetOpenMode).
271 * mac/tclMacFCmd.c: removed GenerateUniqueName(), use equivalent
272 (and identiaclly named) routine from MoreFiles instead.
274 * mac/tclMacLoad.c: CONSTification, fixes to Vince's last changes.
278 * mac/tclMacUnix.c: CONSTification.
280 * mac/tclMacOSA.c: CONSTificcation, sprintf fixes, UH 3.4.x changes;
281 fix for missing autoname token from TclOSACompileCmd. (bdesgraupes)
282 * mac/AppleScript.html(AppleScript delete): doc fix. (bdesgraupes)
284 * mac/tcltkMacBuildSupport.sea.hqx: updated MoreFiles to 1.5.3,
285 updated build instructions for 8.4.
286 * mac/tclMacProjects.sea.hqx: rebuilt archive.
288 2002-10-09 Donal K. Fellows <fellowsd@cs.man.ac.uk>
290 * doc/Alloc.3: Added a note to mention that attempting to allocate
291 a zero-length block can return NULL. [Tk bug 619544]
293 2002-10-04 Donal K. Fellows <fellowsd@cs.man.ac.uk>
295 * doc/binary.n: Doc improvements [Patch 616480]
297 * tests/fCmd.test, tests/winFCmd.test:
298 * tools/eolFix.tcl, tools/genStubs.tcl: [file exist] -> [file exists]
299 Thanks to David Welton.
301 2002-10-03 Don Porter <dgp@users.sourceforge.net>
303 * doc/tcltest.n: fixed typo [Bug 618018]. Thanks to "JJM".
305 2002-10-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
307 * tools/man2help2.tcl:
308 * tests/http.test, tests/httpd, tests/httpold.test:
309 * tests/env.test, tests/binary.test, tests/autoMkindex.test:
310 * library/init.tcl, library/http/http.tcl: [info exist] should
311 really be [info exists]. [Bug 602566]
313 * doc/lsearch.n: Better specification of what happens when -sorted
314 is mixed with other options. [Bug 617816]
316 2002-10-01 Jeff Hobbs <jeffh@ActiveState.com>
318 * generic/tclProc.c (TclCreateProc): mask out VAR_UNDEFINED for
319 precompiled locals to support 8.3 precompiled code.
320 (Tcl_ProcObjCmd): correct 2002-09-26 fix to look for tclProcBodyType.
322 2002-10-01 Donal K. Fellows <fellowsd@cs.man.ac.uk>
324 * doc/socket.n: Mentioned that ports may be specified as serivce
325 names as well as integers. [Bug 616843]
327 2002-09-30 Jeff Hobbs <jeffh@ActiveState.com>
329 * generic/tclCompCmds.c (TclCompileRegexpCmd): correct the
330 checking for bad re's that didn't terminate the re string.
331 Resultant compiles were correct, but much slower than necessary.
333 2002-09-29 David Gravereaux <davygrvy@pobox.com>
335 * win/tclAppInit.c: Added proper exiting conditions using Win32
336 console signals. This handles the existing lack of a Ctrl+C exit
337 to call exit handlers when built for thread support. Also, properly
338 handles exits from other conditions such as CTRL_CLOSE_EVENT,
339 CTRL_LOGOFF_EVENT, and CTRL_SHUTDOWN_EVENT signals. In all cases,
340 exit handlers will be called. [Bug 219355]
342 * win/makefile.vc: Added missing tclThreadAlloc.c to the build
343 rules and defines USE_THREAD_ALLOC when TCL_THREADS is defined
344 to get the new behavior by default.
346 2002-09-27 Don Porter <dgp@users.sourceforge.net>
348 * README: Bumped to version 8.4.1 to avoid confusion
349 * generic/tcl.h: of CVS snapshots with the actual 8.4.0
350 * tools/tcl.wse.in: release.
355 * unix/configure: autoconf
358 2002-09-26 Jeff Hobbs <jeffh@ActiveState.com>
360 * unix/configure: regen.
361 * unix/tcl.m4: improve AIX-4/5 64bit compilation support.
363 * generic/tclProc.c (Tcl_ProcObjCmd): correct overeager
364 optimization of noop proc to handle the precompiled case. (sofer)
366 * unix/ldAix (nmopts): add -X32_64 to make it work for 32 or 64bit
369 * library/encoding/koi8-u.enc: removed extraneous spaces that
370 confused encoding reader. [Bug #615115]
372 * unix/Makefile.in: generate source dists with -src designator and
373 do not generate .Z anymore (just .gz and .zip).
375 2002-09-18 Mumit Khan <khan@nanotech.wisc.edu>
377 Added basic Cygwin support.
379 * win/tcl.m4 (SC_PATH_TCLCONFIG): Support one-tree build.
380 (SC_PATH_TKCONFIG): Likewise.
381 (SC_PROG_TCLSH): Likewise.
382 (SC_CONFIG_CFLAGS): Assume real Cygwin port and remove -mno-cygwin
383 flags. Add -mwin32 to extra_cflags and extra_ldflags.
384 Remove ``-e _WinMain@16'' from LDFLAGS_WINDOW.
385 * win/configure.in: Allow Cygwin build.
386 (SEH test): Define to be 1 instead of empty value.
387 (EXCEPTION_DISPOSITION): Add test.
388 * win/configure: Regenerate.
390 * generic/tcl.h: Don't explicitly define __WIN32__ for Cygwin, let
391 the user decide whether to use Windows or POSIX personality.
392 (TCL_WIDE_INT_TYPE, TCL_LL_MODIFIER, struct Tcl_StatBuf): Define
394 * generic/tclEnv.c (Tcl_CygwinPutenv): putenv replacement for
396 * generic/tclFileName.c (Tcl_TranslateFileName): Convert POSIX
398 (TclDoGlob): Likewise.
399 * generic/tclPlatDecls.h (TCHAR): Define for Cygwin.
400 * win/tclWinPort.h (putenv, TclpSysAlloc, TclpSysFree,
401 TclpSysRealloc): Define for Cygwin.
403 2002-09-26 Daniel Steffen <das@users.sourceforge.net>
405 * macosx/Makefile: preserve environment value of INSTALL_ROOT.
406 When embedding only use deployment build. Force relink before
407 embedded build to ensure new linker flags are picked up.
409 * macosx/Tcl.pbproj/project.pbxproj: add symbolic links to
410 debug lib, stub libs and tclConfig.sh in framework toplevel.
411 Configure target dependency fix. Fix to 'clean' action. Added
412 private tcl headers to framework. Install tclsh symbolic link.
413 Html doc build works when no installed tclsh available. Made
414 html doc structure in framework more like in Apple frameworks.
416 2002-09-24 Donal K. Fellows <fellowsd@cs.man.ac.uk>
418 * unix/tcl.m4 (SC_TCL_64BIT_FLAGS): Yet more robust 64-bit value
419 detection to close [Bug 613117] on more systems.
421 * generic/tclCompile.c (TclPrintSource): More CONSTifying.
422 * generic/tclExecute.c (EvalStatsCmd): Object-ify to reduce
423 warnings. Thanks to 'CoderX2' on the chat for bringing this to my
426 * unix/tcl.m4: Forgot to define TCL_WIDE_INT_IS_LONG at the
427 appropriate moment. I believe this is the cause of [Bug 613117]
429 * doc/lset.n: Changed 'list' to 'varName' for consistency with
430 lappend documentation. Thanks to Glenn Jackman [Bug 611719]
432 2002-09-22 Don Porter <dgp@users.sourceforge.net>
434 * library/tcltest/tcltest.tcl: Corrected [puts -nonewline] within
435 test bodies. Thanks to Harald Kirsch. [Bug 612786, Patch 612788]
436 Also corrected reporting of body return code. Thanks to David
438 * library/tcltest/pkgIndex.tcl: Bump to version 2.2.1.
439 * tests/tcltest.test: added tests for these bugs.
441 2002-09-15 Mo DeJong <mdejong@users.sourceforge.net>
443 * unix/configure: Regen.
444 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Add PEEK_XCLOSEIM
445 define under Linux. This is used by Tk to double
446 check that an X input context is cleaned up
449 2002-09-12 David Gravereaux <davygrvy@pobox.com>
451 * win/coffbase.txt: Added BLT to the virtual base address
452 listings table should BLT's build tools decide to use it.
454 2002-09-12 Daniel Steffen <das@users.sourceforge.net>
457 * mac/tclMacApplication.r:
458 * mac/tclMacLibrary.r:
459 * mac/tclMacResource.r: unified use of the two equivalent
460 resource compiler header inclusion defines RC_INVOKED and
461 RESOURCE_INCLUDED, now use RC_INVOKED throughout.
463 2002-09-10 Mo DeJong <mdejong@users.sourceforge.net>
465 * unix/README: Add note about building extensions
466 with the same compiler Tcl was built with.
469 2002-09-10 Daniel Steffen <das@users.sourceforge.net>
471 * macosx/Tcl.pbproj/project.pbxproj: disabled building html
472 documentation during embedded build.
474 2002-09-10 Daniel Steffen <das@users.sourceforge.net>
476 * unix/Makefile.in: added DYLIB_INSTALL_DIR variable for macosx
477 and set it to default value ${LIB_RUNTIME_DIR}
478 * unix/tcl.m4 (Darwin): use DYLIB_INSTALL_DIR instead of
479 LIB_RUNTIME_DIR in the -install_name argument to ld.
480 * unix/configure: regen.
482 * macosx/Tcl.pbproj/project.pbxproj:
483 * macosx/Makefile: added support for building Tcl as an embedded
484 framework, i.e. using an dyld install_name containing
485 @executable_path/../Frameworks via the new DYLIB_INSTALL_DIR
486 unix/Makefile variable.
488 2002-09-10 Jeff Hobbs <jeffh@ActiveState.com>
490 *** 8.4.0 TAGGED FOR RELEASE ***
492 2002-09-06 Don Porter <dgp@users.sourceforge.net>
494 * doc/file.n: Format correction, and clarified [file normalize]
495 returns an absolute path.
497 * doc/tcltest.n: Added examples section, as long promised.
499 2002-09-06 Reinhard Max <max@suse.de>
501 * tests/tcltest.test: Added nonRoot flag to tests 8.3, 8.4, and 8.12.
503 2002-09-05 Don Porter <dgp@users.sourceforge.net>
505 * doc/tcltest.n: Clarified phrasing.
507 * generic/tclBasic.c (TclRenameCommand,CallCommandTraces):
508 * tests/trace.test (trace-27.1): Corrected memory leak when a rename
509 trace deleted the command being traced. Test added. Thanks to
510 Hemang Lavana for the fix. [Bug 604609]
512 * generic/tclVar.c (TclDeleteVars): Corrected logic for setting the
513 TCL_INTERP_DESTROYED flag when calling variable traces. [Tk Bug 605121]
515 2002-09-04 Miguel Sofer <msofer@users.sourceforge.net>
517 * generic/tclVar.c (DeleteArray): leak plug [Bug 604239]. Thanks
518 to dkf and dgp for the long and difficult discussion in the chat.
520 2002-09-03 Jeff Hobbs <jeffh@ActiveState.com>
522 * generic/tclVar.c (Tcl_UpVar2): code cleanup to not use goto
524 * unix/configure: remove -pthread from LIBS on FreeBSD in thread
525 * unix/tcl.m4: enabled build. [Bug #602849]
527 2002-09-03 Miguel Sofer <msofer@users.sourceforge.net>
529 * generic/tclInterp.c (AliasCreate): a Tcl_Obj was leaked on error
530 return from TclPreventAliasLoop.
532 2002-09-03 Daniel Steffen <das@users.sourceforge.net>
534 * macosx/Tcl.pbproj/project.pbxproj: Bumped version number to
535 8.4.0 and updated copyright info.
537 2002-09-03 Miguel Sofer <msofer@users.sourceforge.net>
539 * generic/tclVar.c (Tcl_UpVar2): a Tcl_Obj was being leaked on
540 error return from TclGetFrame.
542 2002-09-03 Don Porter <dgp@users.sourceforge.net>
544 * changes: Updated changes for 8.4.0 release.
546 2002-09-02 Jeff Hobbs <jeffh@ActiveState.com>
548 * unix/tclUnixFile.c (TclpObjLink): removed unnecessary/unfreed
551 * unix/tclUnixChan.c (Tcl_MakeTcpClientChannel): make sure to init
552 flags field of TcpState ptr to 0.
555 * unix/tcl.m4: added 64-bit gcc compilation support on HP-11.
556 [Patch #601051] (martin)
558 * README: Bumped version number to 8.4.0
568 * generic/tclInterp.c (SlaveCreate): make sure that the memory and
569 checkmem commands are initialized in non-safe slave interpreters
570 when TCL_MEM_DEBUG is used. [Bug #583445]
572 * win/tclWinConsole.c (ConsoleCloseProc): only wait on writable
573 pipe if there was something to write. This may prevent infinite
576 * tests/exec.test: marked exec-18.1 unixOnly until the Windows
577 incompatability (in the test, not the core) can be resolved.
579 * tests/http.test (http-3.11): added close $fp that was causing an
580 error on Windows because the file was not closed before deleting.
582 * unix/tclUnixInit.c (Tcl_MacOSXGetLibraryPath): made this static
583 function only appear when HAVE_CFBUNDLE is defined.
585 2002-08-31 Daniel Steffen <das@users.sourceforge.net>
587 * unix/tcl.m4: added TK_SHLIB_LD_EXTRAS analogue of existing
588 TCL_SHLIB_LD_EXTRAS for linker settings only used when linking Tk.
590 * unix/configure: regen
592 2002-08-31 Daniel Steffen <das@users.sourceforge.net>
594 *** macosx-8-4-branch merged into the mainline [tcl patch #602770] ***
596 * generic/tcl.decls: added new macosx specific entry to stubs table.
598 * tools/genStubs.tcl: added generation of platform guards for
599 macosx. This is a little more complex than it seems, because MacOS
600 X IS "unix" plus a little bit, for the purposes of Tcl. BUT
601 unfortunately, Tk uses "unix" to mean X11. So added platform keys
602 for macosx (the little added to "unix"), "aqua" and "x11" to
603 distinguish these for Tk.
605 * generic/tcl.h: added a #ifnded RESOURCE_INCLUDED so that tcl.h
606 can be passed to the resource compiler.
609 * generic/tclNotify.c: added a few Notifier procs, to be able to
610 modify more bits of the Tcl notifier dynamically. Required to get
611 Mac OS X Tk to live on top of the Tcl Unix threaded notifier.
612 Changes the size of the Tcl_NotifierProcs structure, but doesn't
613 move any elements around.
615 * unix/tclUnixNotfy.c: moved the call to Tcl_ConditionNotify till
616 AFTER we are done mucking with the pointer swap. Fixes cases where
617 the thread waiting on the condition wakes & accesses the
618 waitingListPtr before it gets reset, causing a hang.
620 * library/auto.tcl (tcl_findLibrary): added checking the
621 directories in the tcl_pkgPath for library files on macosx to
622 enable support of the standard Mac OSX library locations
626 * unix/tcl.m4: added MAC_OSX_DIR. Added PLAT_OBJS to the OBJS:
627 there are some MacOS X specific files now for Tcl, and when I get
628 he resource & applescript stuff ported over, and restore support
629 for FindFiles, etc, there will be a few more.
630 Added LD_LIBRARY_PATH_VAR configure variable to avoid having to set
631 all possible LD_LIBRARY_PATH analogues on all platforms.
632 LD_LIBRARY_PATH_VAR is "LD_LIBRARY_PATH" by default, "LIBPATH" on
633 AIX, "SHLIB_PATH" on HPUX and "DYLD_LIBRARY_PATH" on Mac OSX.
634 Added configure option to package Tcl as a framework on Mac OSX.
636 * macosx/tclMacOSXBundle.c (new): support for finding Tcl extension
637 packaged as 'bundles' in the standard Mac OSX library locations.
639 * unix/tclUnixInit.c: added support for findig the tcl script
640 library inside Tcl packaged as a framework on Mac OSX.
642 * macosx/Tcl.pbproj/jingham.pbxuser (new):
643 * macosx/Tcl.pbproj/project.pbxproj (new): project for Apple's
646 * macosx/Makefile (new): simple makefile for building the project
647 from the command line via the ProjectBuilder tool 'pbxbuild'.
650 * generic/tclStubInit.c:
651 * generic/tclPlatDecls.h: regen
653 2002-08-29 Andreas Kupries <andreas_kupries@users.sourceforge.net>
655 * win/tclWinThrd.c (TclpFinalizeThreadData, TclWinFreeAllocCache):
656 Applied patch for bug #599428, provided by Miguel Sofer
657 <msofer@users.sourceforge.net>.
659 2002-08-28 David Gravereaux <davygrvy@pobox.com>
663 * win/tclWinPort.h: putenv() on some systems copies the buffer
664 rather than taking reference to it. This causes memory leaks
665 and is know to effect mswindows (msvcrt) and NetBSD 1.5.2 . This
666 patch tests for this behavior and turns on -DHAVE_PUTENV_THAT_COPIES=1
667 when approriate. Thanks to David Welton for assistance.
670 * unix/configure: regen'd
672 2002-08-28 Donal K. Fellows <fellowsd@cs.man.ac.uk>
674 * doc/eval.n: Added mention of list command and corrected "SEE ALSO".
676 * unix/configure.in: Cache handling of ac_cv_type_socklen_t was
677 wrong. [Bug 600931] reported by John Ellson. Fixed by putting the
678 brackets where they belong.
680 2002-08-26 Miguel Sofer <msofer@users.sourceforge.net>
682 * generic/tclCompCmds.c: fix for [Bug 599788] (error in element
683 name causing segfault), reported by Tom Wilkason. Fixed by copying
684 the tokens instead of the source string.
686 2002-08-26 Miguel Sofer <msofer@users.sourceforge.net>
688 * generic/tclThreadAlloc.c: small optimisation, reducing the
689 new allocator's overhead.
691 2002-08-23 Miguel Sofer <msofer@users.sourceforge.net>
693 * generic/tclObj.c (USE_THREAD_ALLOC): fixed leak [Bug 597936].
694 Thanks to Zoran Vasiljevic.
696 2002-08-23 Miguel Sofer <msofer@users.sourceforge.net>
698 * generic/tclThreadAlloc.c (USE_THREAD_ALLOC): moving objects
699 between caches as a block, instead of one-by-one.
701 2002-08-22 Miguel Sofer <msofer@users.sourceforge.net>
703 * generic/tclBasic.c:
704 * generic/tclCmdMZ.c: fix for freed memory r/w in delete traces
705 [Bug 589863], patch by Hemang Lavana.
707 2002-08-20 Andreas Kupries <andreas_kupries@users.sourceforge.net>
709 * win/Makefile.in (CFLAGS):
710 * unix/Makefile.in (MEM_DEBUG_FLAGS): Added usage of @MEM_DEBUG_FLAGS@.
712 * unix/configure.in: Added usage of SC_ENABLE_MEMDEBUG.
714 * unix/tcl.m4: Added macro SC_ENABLE_MEMDEBUG. Allows a user of
715 configure to (de)activate memory validation and debugging
716 (TCL_MEM_DEBUG). No need to modify the makefile anymore.
718 2002-08-20 Don Porter <dgp@users.sourceforge.net>
720 * generic/tclCkalloc.c: CONSTified MemoryCmd and CheckmemCmd.
722 * README: Bumped version number to 8.4b3 to distinguish
723 * generic/tcl.h: HEAD from the 8.4b2 release.
730 * unix/configure: autoconf
733 * library/http/http.tcl: Corrected installation directory of
734 * library/msgcat/msgcat.tcl: the package tcltest 2.2. Added
735 * library/opt/optparse.tcl: comments in other packages to remind
736 * library/tcltest/tcltest.tcl: that installation directories need
737 * unix/Makefile.in: updates to match increasing version
738 * win/Makefile.in: numbers. [Bug 597450]
742 2002-08-19 Andreas Kupries <andreas_kupries@users.sourceforge.net>
744 * unix/tclUnixTest.c (TestfilehandlerCmd): Changed
745 readable/writable to the more common readable|writable.
747 Fixes SF #596034 reported by Larry Virden
748 <lvirden@users.sourceforge.net>.
750 2002-08-16 Donal K. Fellows <fellowsd@cs.man.ac.uk>
752 * tests/fCmd.test: Added test to make sure that the cause of the
753 problem is detectable with an unpatched Tcl.
754 * doc/ObjectType.3: Added note on the root cause of this problem
755 to the documentation, since it is possible for user code to
756 trigger this sort of behaviour too.
757 * generic/tclIOUtil.c (SetFsPathFromAny): Objects should only have
758 their old representation deleted when we know that we are about to
759 install a new one. This stops a weird TclX bug under Linux with
760 certain kinds of memory debugging enabled which essentally came
761 down to a double-free of a string.
763 2002-08-14 Miguel Sofer <msofer@users.sourceforge.net>
766 * generic/tclObj.c: (code cleanup) factored the parts in the macros
767 TclNewObj() / TclDecrRefCount() into a common part for all
768 memory allocators and two new macros TclAllocObjStorage() /
769 TclFreeObjStorage() that are specific to each allocator and fully
770 describe the differences. Removed allocator-specific code from
771 tclObj.c by using the macros.
773 2002-08-12 Miguel Sofer <msofer@users.sourceforge.net>
775 * generic/tclCmdMZ.c: fixing UMR in delete traces, [Bug 589863].
777 2002-08-08 David Gravereaux <davygrvy@pobox.com>
779 * tools/man2help.tcl: Fixed $argv handling bug where if -bitmap
780 wasn't specified $argc was off by one.
782 2002-08-08 Miguel Sofer <msofer@users.sourceforge.net>
784 * tests/uplevel.test: added 6.1 to test [uplevel] with shadowed
785 commands [Bug 524383]
787 * tests/subst.test: added 5.8-10 as further tests for [Bug 495207]
789 2002-08-08 Don Porter <dgp@users.sourceforge.net>
791 * tests/README: Noted removal of defs.tcl.
793 2002-08-08 Jeff Hobbs <jeffh@ActiveState.com>
795 * doc/lsearch.n: corrected lsearch docs to use -inline in examples.
797 *** 8.4b2 TAGGED FOR RELEASE ***
800 * tests/unixFCmd.test: updated tests for new link copy behavior.
801 * generic/tclFCmd.c (CopyRenameOneFile): changed the behavior to
802 follow links to endpoints and copy that file/directory instead of
803 just copying the surface link. This means that trying to copy a
804 link that has no endpoint (danling link) is an error.
805 [Patch #591647] (darley)
806 (CopyRenameOneFile): this is currently disabled by default until
807 further issues with such behavior (like relative links) can be
810 * tests/README: slight wording improvements
812 2002-08-07 Miguel Sofer <msofer@users.sourceforge.net>
814 * docs/BoolObj.3: added description of valid string reps for a
815 boolean object [Bug 584794]
816 * generic/tclObj.c: optimised Tcl_GetBooleanFromObj and
817 SetBooleanFromAny to avoid parsing the string rep when it can be
818 avoided [Bugs 584650, 472576]
820 2002-08-07 Miguel Sofer <msofer@users.sourceforge.net>
822 * generic/tclCompile.h:
823 * generic/tclObj.c: making tclCmdNameType static ([Bug 584567],
826 2002-08-07 Miguel Sofer <msofer@users.sourceforge.net>
828 * generic/tclObj.c (Tcl_NewObj): added conditional code for
829 USE_THREAD_ALLOC; objects allocated through Tcl_NewObj() were
830 otherwise being leaked. [Bug 587488] reported by Sven Sass.
832 2002-08-06 Daniel Steffen <das@users.sourceforge.net>
834 * generic/tclInt.decls:
835 * unix/tclUnixThrd.c: Added stubs and implementations for
836 non-threaded build for the tclUnixThrd.c procs TclpReaddir,
837 TclpLocaltime, TclpGmtime and TclpInetNtoa.
838 Fixes link errors in stubbed & threaded extensions that include
839 tclUnixPort.h and use any of the procs readdir, localtime,
840 gmtime or inet_ntoa (e.g. TclX 8.4) [Bug 589526]
841 * generic/tclIntPlatDecls.h:
842 * generic/tclStubInit.c: Regen.
844 2002-08-05 Don Porter <dgp@users.sourceforge.net>
846 * library/tcltest/tcltest.tcl: The setup and cleanup scripts are now
847 * library/tcltest/pkgIndex.tcl: skipped when a test is skipped, fixing
848 * tests/tcltest.test: [Bug 589859]. Test for bug added, and
849 corrected tcltest package bumped to version 2.2.
851 * generic/tcl.decls: Restored Tcl_Concat to return (char *). Like
852 * generic/tclDecls.h: Tcl_Merge, it transfers ownership of a dynamic
853 * generic/tclUtil.c: allocated string to the caller.
855 2002-08-04 Don Porter <dgp@users.sourceforge.net>
857 * doc/CmdCmplt.3: Applied Patch 585105 to fully CONST-ify
858 * doc/Concat.3: all remaining public interfaces of Tcl.
859 * doc/CrtCommand.3: Notably, the parser no longer writes on
860 * doc/CrtSlave.3: the string it is parsing, so it is no
861 * doc/CrtTrace.3: longer necessary for Tcl_Eval() to be
862 * doc/Eval.3: given a writable string. Also, the
863 * doc/ExprLong.3: refactoring of the Tcl_*Var* routines
864 * doc/LinkVar.3: by Miguel Sofer is included, so that the
865 * doc/ParseCmd.3: "part1" argument for them no longer needs
866 * doc/SetVar.3: to be writable either.
868 * doc/UpVar.3: Compatibility support has been enhanced so
869 * generic/tcl.decls that a #define of USE_NON_CONST will remove
870 * generic/tcl.h all possible source incompatibilities with
871 * generic/tclBasic.c the 8.3 version of the header file(s).
872 * generic/tclCmdMZ.c The new #define of USE_COMPAT_CONST now does
873 * generic/tclCompCmds.c what USE_NON_CONST used to do -- disable
874 * generic/tclCompExpr.c only those new CONST's that introduce
875 * generic/tclCompile.c irreconcilable incompatibilities.
876 * generic/tclCompile.h
877 * generic/tclDecls.h Several bugs are also fixed by this patch.
878 * generic/tclEnv.c [Bugs 584051,580433] [Patches 585105,582429]
880 * generic/tclInt.decls
882 * generic/tclIntDecls.h
883 * generic/tclInterp.c
887 * generic/tclParseExpr.c
894 * tests/expr-old.test
895 * tests/parseExpr.test
900 2002-08-01 Miguel Sofer <msofer@users.sourceforge.net>
902 * generic/tclExecute.c: bugfix (reading freed memory). Testsuite
903 passed on linux/i386, compile-13.1 hung on linux/alpha.
905 2002-08-01 Miguel Sofer <msofer@users.sourceforge.net>
907 * generic/tclExecute.c: added a reference count for the complete
908 execution stack, instead of Tcl_Preserve/Tcl_Release.
910 2002-08-01 Mo DeJong <mdejong@users.sourceforge.net>
912 * generic/tclCkalloc.c (TclFinalizeMemorySubsystem):
913 Don't lock the ckalloc mutex before invoking the
914 Tcl_DumpActiveMemory function since it also
915 locks the same mutex. This code is only executed
916 when "memory onexit filename" has been executed
917 and Tcl is compiled with -DTCL_MEM_DEBUG.
919 2002-08-01 Reinhard Max <max@suse.de>
921 * win/tclWinPort.h: The windows headers don't provide socklen_t,
924 2002-07-31 Miguel Sofer <msofer@users.sourceforge.net>
926 * generic/tclInt.h (USE_THREAD_ALLOC): for unshared objects,
927 TclDecrRefCount now frees the internal rep before the string rep -
928 just like the non-macro Tcl_DecrRefCount/TclFreeObj [Bug 524802].
929 For the other allocators the fix was done on 2002-03-06.
931 2002-07-31 Miguel Sofer <msofer@users.sourceforge.net>
933 * generic/tclInterp.c: signed/unsigned comparison warning fixed
936 2002-07-31 Donal K. Fellows <fellowsd@cs.man.ac.uk>
938 * unix/tcl.m4 (SC_BUGGY_STRTOD): Enabled caching of test results.
940 * unix/tcl.m4 (SC_BUGGY_STRTOD): Solaris 2.8 still has a buggy
941 strtod() implementation; make sure we detect it.
943 * tests/expr.test (expr-22.*): Marked as non-portable because it
944 seems that these tests have an annoying tendency to fail in
945 unexpected ways. [Bugs 584825, 584950, 585986]
947 2002-07-30 Andreas Kupries <andreas_kupries@users.sourceforge.net>
950 * generic/tclIO.c (WriteChars): Added flag to break out of loop if
951 nothing of the input is consumed at all, to prevent infinite
952 looping of called with a non-UTF-8 string. Fixes Bug 584603
953 (partially). Added new test "io-60.1". Might need additional
954 changes to Tcl_Main so that unprintable results are printed as
957 2002-07-29 Mo DeJong <mdejong@users.sourceforge.net>
959 * unix/Makefile.in: Use CC_SEARCH_FLAGS instead of
960 LD_SEARCH_FLAGS when linking with ${CC}.
961 * unix/configure: Regen.
962 * unix/configure.in: Don't subst CC_SEARCH_FLAGS or
963 LD_SEARCH_FLAGS since this is now done in tcl.m4.
964 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Document and
965 set CC_SEARCH_FLAGS whenever LD_SEARCH_FLAGS is set.
968 2002-07-29 Reinhard Max <max@suse.de>
970 * unix/tcl.m4 (SC_SERIAL_PORT): Fixed detection for cases when
971 configure's stdin is not a tty.
973 * unix/tclUnixPort.h:
974 * generic/tclIOSock.c: Changed size_t to socklen_t in
975 socket-related function calls.
977 * unix/configure.in: Added test and fallback definition
980 * unix/configure: generated.
982 2002-07-29 Miguel Sofer <msofer@users.sourceforge.net>
984 * generic/tclObj.c: fixed a comment
987 * generic/tclBasic.c:
988 * generic/tclInterp.c: added the new flag TCL_EVAL_INVOKE to
989 the interface of the Tcl_Eval* functions, removing the
990 TCL_EVAL_NO_TRACEBACK added yesterday: alias invocations not only
991 require no tracebacks, but also look up the command name in the
992 global scope - see new test interp-9.4
993 * tests/interp.test: added 9.3 to test for safety of aliases to
994 hidden commands, 9.4 to test for correct command lookup scope.
996 2002-07-29 Donal K. Fellows <fellowsd@cs.man.ac.uk>
998 * generic/regc_locale.c (cclass): [[:xdigit:]] is only a defined
999 concept on western characters, so should not allow any unicode
1000 digit, and hence number of ranges in [[:xdigit:]] is fixed.
1001 * tests/reg.test: Added test to detect the bug.
1002 * generic/regc_cvec.c (newcvec): Corrected initial size value in
1003 character vector structure. [Bug 578363] Many thanks to
1004 pvgoran@users.sf.net for tracking this down.
1006 2002-07-28 Miguel Sofer <msofer@users.sourceforge.net>
1009 * generic/tclBasic.c: added the new flag TCL_EVAL_NO_TRACEBACK to
1010 the interface of the Tcl_Eval* functions. Modified the error
1011 message for too many nested evaluations.
1012 * generic/tclInterp.h: changed the Alias struct to be of variable
1013 length and store the prefix arguments directly (instead of a
1014 pointer to a Tcl_Obj list). Made AliasObjCmd call Tcl_EvalObjv
1015 instead of TclObjInvoke - thus making aliases trigger execution
1016 traces [Bug 582522].
1017 * tests/interp.test:
1018 * tests/stack.test: adapted to the new error message.
1019 * tests/trace.test: added tests for aliases firing the exec
1022 2002-07-27 Mo DeJong <mdejong@users.sourceforge.net>
1024 * unix/Makefile.in: Revert fix for Tcl bug 529801
1025 since it was incorrect and broke the build on
1026 other systems. Fix Tcl bug 587299.
1027 Add MAJOR_VERSION, MINOR_VERSION, PATCH_LEVEL,
1028 SHLIB_LD_FLAGS, SHLIB_LD_LIBS, CC_SEARCH_FLAGS,
1029 LD_SEARCH_FLAGS, and LIB_FILE variables to support
1030 more generic library build/install rules.
1031 * unix/configure: Regen.
1032 * unix/configure.in: Move AC_PROG_RANLIB into
1033 tcl.m4. Move shared build test and setting
1034 of MAKE_LIB and MAKE_STUB_LIB into tcl.m4.
1035 Move subst of a number of variables into
1036 tcl.m4 where they are defined.
1037 * unix/tcl.m4 (SC_ENABLE_SYMBOLS, SC_CONFIG_CFLAGS):
1038 Subst vars where they are defined. Add MAKE_LIB,
1039 MAKE_STUB_LIB, INSTALL_LIB, and INSTALL_STUB_LIB
1040 rules to deal with the ugly details of running
1041 ranlib on static libs at build and install time.
1042 Replace TCL_SHLIB_LD_EXTRAS with SHLIB_LD_FLAGS
1043 and use it when building a shared library.
1044 * unix/tclConfig.sh.in: Add TCL_CC_SEARCH_FLAGS.
1046 2002-07-26 Miguel Sofer <msofer@users.sourceforge.net>
1048 * generic/tclExecute.c: fixed Tcl_Obj leak in code corresponding
1049 to the macro NEXT_INST_V(x, 0, 1) [Bug 587495].
1051 2002-07-26 Miguel Sofer <msofer@users.sourceforge.net>
1053 * generic/tclVar.c (TclObjLookupVar): leak fix and improved
1056 2002-07-26 Jeff Hobbs <jeffh@ActiveState.com>
1058 * generic/tclVar.c (TclLookupVar): removed early returns that
1059 prevented the parens from being restored. also removed goto label
1060 as it was not necessary.
1062 2002-07-24 Miguel Sofer <msofer@users.sourceforge.net>
1064 * generic/tclExecute.c:
1065 * tests/expr-old.test: fix for erroneous error messages in [expr],
1066 [Bug 587140] reported by Martin Lemburg.
1068 2002-07-25 Joe English <jenglish@users.sourceforge.net>
1069 * generic/tclProc.c: fix for Tk Bug #219218 "error handling
1072 2002-07-24 Miguel Sofer <msofer@users.sourceforge.net>
1074 * generic/tclExecute.c: restoring full TCL_COMPILE_DEBUG
1077 2002-07-24 Don Porter <dgp@users.sourceforge.net>
1079 * tests/unixInit.test: relaxed unixInit-3.1 to accept iso8859-15
1080 as a valid C encoding. [Bug 575336]
1082 2002-07-24 Miguel Sofer <msofer@users.sourceforge.net>
1084 * generic/tclExecute.c: restoring the tcl_traceCompile
1085 functionality while I repair tcl_traceExec. The core now compiles
1086 and runs also under TCL_COMPILE_DEBUG, but execution in the
1087 bytecode engine can still not be traced.
1089 2002-07-24 Daniel Steffen <das@users.sourceforge.net>
1092 * unix/configure.in: corrected fix for [Bug 529801]: ranlib
1093 only needed for static builds on Mac OS X.
1094 * unix/configure: Regen.
1095 * unix/tclLoadDyld.c: fixed small bugs introduced by Vince,
1096 implemented library unloading correctly (needs OS X 10.2).
1098 2002-07-23 Joe English <jenglish@users.sourceforge.net>
1100 * doc/OpenFileChnl.3: (Updates from Larry Virden)
1102 * doc/tclsh.1: Fix section numbers in Unix man page references.
1103 * doc/lset.n: In EXAMPLES section, include command to set the
1104 initial value used in subsequent examples.
1105 * doc/http.n: Package version updated to 2.4.
1107 2002-07-23 Mo DeJong <mdejong@users.sourceforge.net>
1109 * unix/configure: Regen.
1110 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Enable 64 bit compilation
1111 when using the native compiler on a 64 bit version of IRIX.
1114 2002-07-23 Mo DeJong <mdejong@users.sourceforge.net>
1116 * unix/Makefile.in: Combine ranlib tests and
1117 avoid printing unless ranlib is actually run.
1119 2002-07-23 Mo DeJong <mdejong@users.sourceforge.net>
1121 * unix/tcl.m4 (SC_PATH_X): Set XINCLUDES to "" instead
1122 of "# no special path needed" or "# no include files found"
1123 when x headers cannot be located.
1125 2002-07-22 Vince Darley <vincentdarley@users.sourceforge.net>
1127 * generic/tclIOUtil.c: made tclNativeFilesystem static
1128 (since 07-19 changes removed its usage elsewhere), and
1129 added comments about its usage.
1130 * generic/tclLoad.c:
1132 * generic/tcl.decls:
1133 * doc/FileSystem.3: converted last load-related ClientData
1134 parameter to Tcl_LoadHandle opaque structure, removing a
1135 couple of casts in the process.
1137 * generic/tclInt.h: removed tclNativeFilesystem declaration
1138 since it is now static again.
1140 2002-07-22 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1142 * tests/expr.test (expr-22.*): Added tests to help detect the
1144 * generic/tclExecute.c (IllegalExprOperandType): Improved error
1145 message generated when attempting to manipulate Inf and NaN values.
1146 * generic/tclParseExpr.c (GetLexeme): Allowed parser to recognise
1147 'Inf' as a floating-point number. [Bug 218000]
1149 2002-07-21 Don Porter <dgp@users.sourceforge.net>
1151 * tclIOUtil.c: Silence compiler warning. [Bug 584408].
1153 2002-07-19 Vince Darley <vincentdarley@users.sourceforge.net>
1155 * generic/tclIOUtil.c: fix to GetFilesystemRecord
1157 * unix/tclUnixFile.c: fix to subtle problem with links shown
1158 up by latest tclkit builds.
1160 2002-07-19 Mo DeJong <mdejong@users.sourceforge.net>
1163 * unix/configure.in:
1165 * win/configure.in: Add AC_PREREQ(2.13) in an attempt
1166 to make it more clear that the configure scripts
1167 must be generated with autoconf version 2.13.
1170 2002-07-19 Vince Darley <vincentdarley@users.sourceforge.net>
1172 * unix/Makefile.in: fix to build on MacOS X [Bug 529801], bug
1173 report and fix from jcw.
1175 2002-07-19 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1177 * win/tclWinSerial.c (no_timeout): Made this variable static.
1179 * generic/tclExecute.c, generic/tclCompile.c, generic/tclBasic.c:
1180 * generic/tclCompile.h (builtinFuncTable, instructionTable): Added
1181 prefix to these symbols because they are visible outside the Tcl
1184 * generic/tclCompExpr.c (operatorTable):
1185 * unix/tclUnixTime.c (tmKey):
1186 * generic/tclIOUtil.c (theFilesystemEpoch, filesystemWantToModify,
1187 filesystemIteratorsInProgress, filesystemOkToModify): Made these
1190 * unix/tclUnixFile.c: Renamed nativeFilesystem to
1191 * win/tclWinFile.c: tclNativeFilesystem and declared
1192 * generic/tclIOUtil.c: it properly in tclInt.h
1195 * generic/tclUtf.c (totalBytes): Made this array static and const.
1197 * generic/tclParse.c (typeTable): Made this array static and const.
1198 (Tcl_ParseBraces): Simplified error handling case so that scans
1199 are only performed when needed, and flags are simpler too.
1201 * license.terms: Added AS to list of copyright holders; it's only
1202 fair for the current gatekeepers to be listed here!
1204 * tests/cmdMZ.test: Renamed constraint for clarity. [Bug#583427]
1205 Added tests for the [time] command, which was previously only
1208 2002-07-18 Vince Darley <vincentdarley@users.sourceforge.net>
1212 * */*Load*.c: added comments on changes of 07/17 and
1213 replaced clientData with Tcl_LoadHandle in all locations.
1215 * generic/tclFCmd.c:
1216 * tests/fileSystem.test: fixed a 'knownBug' with 'file
1218 * tests/winFCmd.test:
1219 * tests/winPipe.test:
1221 * tessts/winFile.test: added 'pcOnly' constraint to some
1222 tests to make for more useful 'tests skipped' log from
1223 running all tests on non-Windows platforms.
1225 2002-07-17 Miguel Sofer <msofer@users.sourceforge.net>
1227 * generic/tclBasic.c (CallCommandTraces): delete traces now
1228 receive the FQ old name of the command.
1229 [Bug 582532] (Don Porter)
1231 2002-07-18 Vince Darley <vincentdarley@users.sourceforge.net>
1233 * tests/ioUtil.test: added constraints to 1.4,2.4 so they
1234 don't run outside of tcltest. [Bugs 583276,583277]
1236 2002-07-17 Miguel Sofer <msofer@users.sourceforge.net>
1238 * generic/tclVar.c (DupParsedVarName): nasty bug fixed, reported
1241 2002-07-17 Miguel Sofer <msofer@users.sourceforge.net>
1243 * generic/tclVar.c (TclPtrIncrVar): missing CONST in declarations,
1244 inconsistent with tclInt.h. Thanks to Vince Darley for reporting,
1245 boo to gcc for not complaining.
1247 2002-07-17 Vince Darley <vincentdarley@users.sourceforge.net>
1250 * generic/tclIOUtil.c:
1251 * generic/tclLoadNone.c:
1252 * unix/tclLoadAout.c:
1254 * unix/tclLoadDld.c:
1255 * unix/tclLoadDyld.c:
1256 * unix/tclLoadNext.c:
1257 * unix/tclLoadOSF.c:
1258 * unix/tclLoadShl.c:
1260 * win/tclWinLoad.c: modified to move more functionality
1261 to the generic code and avoid duplication. Partial replacement
1262 of internal uses of clientData with opaque Tcl_LoadHandle. A
1263 little further work still needed, but significant changes are done.
1265 2002-07-17 D. Richard Hipp <drh@hwaci.com>
1267 * library/msgcat/msgcat.tcl: fix a comment that was causing
1268 problems for programs (ex: mktclapp) that embed the initialization
1271 2002-07-17 Miguel Sofer <msofer@users.sourceforge.net>
1273 * generic/tclInt.decls:
1274 * generic/tclIntDecls.h:
1275 * generic/tclStubInit.c:
1276 * generic/tclVar.c: removing the now redundant functions to access
1277 indexed variables: Tcl(Get|Set|Incr)IndexedScalar() and
1278 Tcl(Get|Set|Incr)ElementOfIndexedArray().
1280 2002-07-17 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1282 * generic/tclExecute.c (TclExecuteByteCode): Minor fixes to make
1283 this file compile with SunPro CC...
1285 2002-07-17 Miguel Sofer <msofer@users.sourceforge.net>
1287 * generic/tclExecute.c: modified to do variable lookup explicitly,
1288 and then either inlining the variable access or else calling the new
1289 TclPtr(Set|Get|Incr)Var functions in tclVar.c
1290 * generic/tclInt.h: declare some functions previously local to
1291 tclVar.c for usage by TEBC.
1292 * generic/tclVar.c: removed local declarations; moved all special
1293 accessor functions for indexed variables to the end of the file -
1294 they are unused and ready for removal, but left there for the time
1295 being as they are in the internal stubs table.
1297 ** WARNING FOR BYTECODE MAINTAINERS **
1298 TCL_COMPILE_DEBUG is currently not functional; will be fixed ASAP.
1300 2002-07-16 Mo DeJong <mdejong@users.sourceforge.net>
1303 * win/Makefile.in: Add a more descriptive warning
1304 in the event `make genstubs` needs to be rerun.
1306 2002-07-16 Mo DeJong <mdejong@users.sourceforge.net>
1308 * unix/Makefile.in: Use dltest.marker file
1309 to keep track of when the dltest package
1310 is up to date. This fixes [Tcl bug 575768]
1311 since tcltest is no longer linked every time.
1312 * unix/dltest/Makefile.in: Create ../dltest.marker
1313 after a successful `make all` run in dltest.
1315 2002-07-16 Mo DeJong <mdejong@users.sourceforge.net>
1317 * unix/configure: Regen.
1318 * unix/configure.in: Remove useless subst of TCL_BIN_DIR.
1320 2002-07-15 Miguel Sofer <msofer@users.sourceforge.net>
1322 * generic/tclVar.c: inaccurate comment fixed
1324 2002-07-15 Miguel Sofer <msofer@users.sourceforge.net>
1326 * generic/tclBasic.c (Tcl_AddObjErrorInfo):
1327 * generic/tclExecute.c (TclUpdateReturnInfo):
1329 * generic/tclProc.c:
1330 Added two Tcl_Obj to the ExecEnv structure to hold the fully
1331 qualified names "::errorInfo" and "::errorCode" to cache the
1332 addresses of the corresponding variables. The two most frequent
1333 setters of these variables now profit from the new variable name
1336 2002-07-15 Miguel Sofer <msofer@users.sourceforge.net>
1338 * generic/tclVar.c: refactorisation to reuse already looked-up Var
1339 pointers; definition of three new Tcl_Obj types to cache variable
1340 name parsing and lookup for later reuse; modification of internal
1341 functions to profit from the caching.
1343 * generic/tclInt.decls:
1345 * generic/tclIntDecls.h:
1346 * generic/tclNamesp.c: adding CONST qualifiers to variable names
1347 passed to Tcl_FindNamespaceVar and to variable resolvers; adding
1348 CONST qualifier to the 'msg' argument to TclLookupVar. Needed to
1349 avoid code duplication in the new tclVar.c code.
1351 * tests/set-old.test:
1352 * tests/var.test: slight modification of error messages due to the
1353 modifications in the tclVar.c code.
1355 2002-07-15 Don Porter <dgp@users.sourceforge.net>
1357 * tests/unixInit.test: Improved constraints to protect /tmp.
1360 2002-07-15 Vince Darley <vincentdarley@users.sourceforge.net>
1362 * tests/winFCmd.test: renamed 'win2000' and 'notWin2000' to
1363 more appropriate constraint names.
1364 * win/tclWinFile.c: updated comments to reflect 07-11 changes.
1365 * win/tclWinFCmd.c: made ConvertFileNameFormat static again,
1366 since no longer used in tclWinFile.c
1367 * mac/tclMacFile.c: completed TclpObjLink implementation which
1368 was previously lacking.
1369 * generic/tclIOUtil.c: comment cleanup and code speedup.
1371 2002-07-14 Don Porter <dgp@users.sourceforge.net>
1373 * generic/tclInt.h: Removed declarations that duplicated entries
1374 in the (internal) stub table.
1376 * library/tcltest/tcltest.tcl: Corrected errors in handling of
1377 configuration options -constraints and -limitconstraints.
1379 * README: Bumped HEAD to version 8.4b2 so we can
1380 * generic/tcl.h: distinguish it from the 8.4b1 release.
1384 * win/README.binary:
1387 2002-07-11 Vince Darley <vincentdarley@users.sourceforge.net>
1390 * win/tclWinFile.c: on Win 95/98/ME the long form of the path
1391 is used as a normalized form. This is required because short
1392 forms are not a robust representation. The file normalization
1393 function has been sped up, but more performance gains might be
1394 possible, if speed is still an issue on these platforms.
1396 2002-07-11 Don Porter <dgp@users.sourceforge.net>
1398 * library/tcltest/tcltest.tcl: Corrected reaction to existing but
1399 false ::tcl_interactive.
1401 * doc/Hash.3: Overlooked CONST documentation update.
1403 2002-07-11 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1405 * generic/tclCkalloc.c: ckalloc() and friends take the block size
1406 as an unsigned, so we should use %ud when reporting it in fprintf()
1409 2002-07-11 Miguel Sofer <msofer@users.sourceforge.net>
1411 * generic/tclCompile.c: now setting local vars undefined at
1412 compile time, instead of waiting until the proc is initialized.
1413 * generic/tclProc.c: use macro TclSetVarUndefined instead of
1414 directly etting the flag.
1416 2002-07-11 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1418 * tests/cmdAH.test: [file attr -perm] is Unix-only, so add [catch]
1419 when not inside a suitably-protected test.
1421 2002-07-10 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1423 * tests/unixFCmd.test, tests/fileName.test:
1424 * tests/fCmd.test: Removed [exec] of Unix utilities that have
1425 equivalents in standard Tcl. [Bug 579268] Also simplified some
1426 of unixFCmd.test while I was at it.
1428 2002-07-10 Don Porter <dgp@users.sourceforge.net>
1430 * tests/tcltest.test: Greatly reduced the number of [exec]s, using
1431 slave interps instead.
1432 * library/tcltest/tcltest.tcl: Fixed bug uncovered in the conversion
1433 where a message was written to stdout instead of [outputChannel].
1435 * tests/basic.test: Cleaned up, constrained, and reduced the
1436 * tests/compile.test: amount of [exec] usage in the test suite.
1437 * tests/encoding.test:
1443 * tests/regexp.test:
1444 * tests/regexpComp.test:
1445 * tests/socket.test:
1446 * tests/tcltest.test:
1447 * tests/unixInit.test:
1448 * tests/winDde.test:
1449 * tests/winPipe.test:
1451 2002-07-10 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1453 * tests/cmdAH.test: Removed [exec] of Unix utilities. [Bug 579211]
1455 * tests/expr.test: Added tests to make sure that this works.
1456 * generic/tclExecute.c (ExprCallMathFunc): Functions should also
1457 be able to return wide-ints. [Bug 579284]
1459 2002-07-08 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1461 * tests/socket.test: Fixed bug #578164. The original reason for
1462 the was a DNS outage while running the testsuite. Changed [info
1463 hostname] to 127.0.0.1 to bypass DNS, knowing that we operate on
1466 2002-07-08 Don Porter <dgp@users.sourceforge.net>
1468 * doc/tcltest.n: Fixed incompatibility in [viewFile].
1469 * library/tcltest/tcltest.tcl: Corrected docs. Bumped to 2.2.1.
1470 * library/tcltest/pkgIndex.tcl: [Bug 578163]
1472 2002-07-08 Vince Darley <vincentdarley@users.sourceforge.net>
1476 * tests/fileName.test: tests which rely on 'file link' need a
1477 constraint so they don't run on older Windows OS. [Bug 578158]
1478 * generic/tclIOUtil.c:
1481 * generic/tclTest.c:
1483 * unix/tclUnixChan.c:
1485 * doc/FileSystem.3: cleaned up internal handling of
1486 Tcl_FSOpenFileChannel to remove duplicate code, and make
1487 writing external vfs's clearer and easier. No
1488 functionality change. Also clarify that objects with refCount
1489 zero should not be passed in to the Tcl_FS API, and prevent
1490 segfaults from occuring on such user errors. [Bug 578617]
1492 2002-07-06 Don Porter <dgp@users.sourceforge.net>
1494 * tests/pkgMkIndex.test: Constrained tests of [load] package indexing
1495 to those platforms where the testing shared libraries have been built.
1498 2002-07-05 Don Porter <dgp@users.sourceforge.net>
1499 * changes: added recent changes
1501 2002-07-05 Reinhard Max <max@suse.de>
1503 * generic/tclClock.c (FormatClock): Convert the format string to
1504 UTF8 before calling TclpStrftime, so that non-ASCII characters
1505 don't get mangled when the result string is being converted back.
1506 * tests/clock.test: Added a test for that.
1508 2002-07-05 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1510 * unix/Makefile.in (ro-test,ddd,GDB,DDD): Created new targets to
1511 allow running the test suite with a read-only current directory,
1512 running under ddd instead of gdb, and factored out some executable
1513 names for broken sites (like mine) where gdb and ddd are installed
1514 with non-standard names...
1516 * tests/httpold.test: Altered test names to httpold-* to avoid
1517 clashes with http.test, and stopped tests from failing when the
1518 current directory is not writable...
1520 * tests/event.test: Stop these tests from failing
1521 * tests/ioUtil.test: when the current directory is
1522 * tests/regexp.test: not writable...
1523 * tests/regexpComp.test:
1524 * tests/source.test:
1525 * tests/unixFile.test:
1526 * tests/unixNotfy.test:
1528 * tests/unixFCmd.test: Trying to make these test-files
1529 * tests/macFCmd.test: not bomb out with an error when
1530 * tests/http.test: the current directory is not
1531 * tests/fileName.test: writable...
1534 2002-07-05 Jeff Hobbs <jeffh@ActiveState.com>
1536 *** 8.4b1 TAGGED FOR RELEASE ***
1538 2002-07-04 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1540 * tests/cmdMZ.test (cmdMZ-1.4):
1541 * tests/cmdAH.test: More fixing of writable-current-dir
1542 assumption. [Bug 575824]
1544 2002-07-04 Miguel Sofer <msofer@users.sourceforge.net>
1546 * tests/basic.test: Same issue as below; fixed [Bug 575817]
1548 2002-07-04 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1550 * tests/socket.test:
1551 * tests/winPipe.test:
1552 * tests/pid.test: Fixed SF Bug #575848. See below for a
1553 description the general problem.
1555 * All the bugs below are instances of the same problem: The
1556 testsuite assumes [pwd] = [temporaryDirectory] and writable.
1558 * tests/iogt.test: Fixed bug #575860.
1559 * tests/io.test: Fixed bug #575862.
1561 * tests/ioCmd.test: Fixed bug #575836.
1563 2002-07-03 Don Porter <dgp@users.sourceforge.net>
1565 * tests/pkg1/direct1.tcl: removed
1566 * tests/pkg1/pkgIndex.tcl: removed
1567 * tests/pkgMkIndex.test: Imported auxilliary files from tests/pkg1
1568 into the test file pkgMkIndex.test itself. Formatting fixes.
1570 * unix/Makefile.in: removed tests/pkg/* from `make dist`
1572 * tests/pkg/circ1.tcl: removed
1573 * tests/pkg/circ2.tcl: removed
1574 * tests/pkg/circ3.tcl: removed
1575 * tests/pkg/global.tcl: removed
1576 * tests/pkg/import.tcl: removed
1577 * tests/pkg/pkg1.tcl: removed
1578 * tests/pkg/pkg2_a.tcl: removed
1579 * tests/pkg/pkg2_b.tcl: removed
1580 * tests/pkg/pkg3.tcl: removed
1581 * tests/pkg/pkg4.tcl: removed
1582 * tests/pkg/pkg5.tcl: removed
1583 * tests/pkg/pkga.tcl: removed
1584 * tests/pkg/samename.tcl: removed
1585 * tests/pkg/simple.tcl: removed
1586 * tests/pkg/spacename.tcl: removed
1587 * tests/pkg/std.tcl: removed
1588 * tests/pkgMkIndex.test: Fixed [Bug 575857] where this test file
1589 expected to be able to write to [file join [testsDirectory]
1590 pkg]. Part of the fix was to import several auxilliary files
1591 into the test file itself.
1593 * tests/main.test: Cheap fix for [Bugs 575851, 575858]. Avoid
1594 * tests/tcltest.test: non-writable . by [cd [temporaryDirectory]].
1596 * library/auto.tcl: Fix [tcl_findLibrary] to be sure it sets
1597 $varName only if a successful library script is found.
1600 2002-07-03 Miguel Sofer <msofer@users.sourceforge.net>
1602 * generic/tclCompCmds.c (TclCompileCatchCmd): return
1603 TCL_OUT_LINE_COMPILE instead of TCL_ERROR: let the failure
1604 happen at runtime so that it can be caught [Bug 577015].
1606 2002-07-02 Joe English <jenglish@users.sourceforge.net>
1608 * doc/tcltest.n: Markup fixes, spellcheck.
1610 2002-07-02 Don Porter <dgp@users.sourceforge.net>
1612 * doc/tcltest.n: more refinements of the documentation.
1614 * library/tcltest/tcltest.tcl: Added trace to be sure the stdio
1615 constraint is updated whenever the [interpreter] changes.
1617 * doc/tcltest.n: Reverted [makeFile] and [viewFile] to
1618 * library/tcltest/tcltest.tcl: their former behavior, and documented
1619 * tests/cmdAH.test: it. Corrected misspelling of hook
1620 * tests/event.test: procedure. Restored tests.
1624 * library/tcltest/tcltest.tcl: Simplified logic of
1625 [GetMatchingFiles] and [GetMatchingDirectories], removing
1626 special case processing.
1628 * doc/tcltest.n: More documentation updates. Reference sections
1629 are complete. Only examples need adding.
1631 2002-07-02 Vince Darley <vincentdarley@users.sourceforge.net>
1634 * generic/tclCmdAH.c: clearer error msgs for 'file link',
1635 as per the man page.
1637 2002-07-01 Joe English <jenglish@users.sourceforge.net>
1649 * doc/OpenFileChnl.3:
1656 * doc/WrongNumArgs.3:
1673 * doc/tclvars.n: Spell-check, fixed typos (Updates from Larry Virden).
1675 2002-07-01 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1677 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Made Solaris use gcc for linking
1678 when building with gcc to resolve problems with undefined symbols
1679 being present when tcl library used with non-gcc linker at later
1680 stage. Symbols were compiler-generated, so it is the compiler's
1681 business to define them. [Bug #541181]
1683 2002-07-01 Don Porter <dgp@users.sourceforge.net>
1685 * doc/tcltest.n: more work in progress updating tcltest docs.
1687 * library/tcltest/tcltest.tcl: Change [configure -match] to
1688 stop treating an empty list as a list of the single pattern "*".
1689 Changed the default value to [list *] so default operation
1692 * tests/pkg/samename.tcl: restored. needed by pkgMkIndex.test.
1694 * library/tcltest/tcltest.tcl: restored writeability testing of
1695 -tmpdir, augmented by a special exception for the deafault value.
1697 2002-07-01 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1699 * doc/concat.n: Documented the *real* behaviour of [concat]!
1701 2002-06-30 Don Porter <dgp@users.sourceforge.net>
1703 * doc/tcltest.n: more work in progress updating tcltest docs.
1705 * tests/README: Updated the instructions on running and
1706 * tests/cmdMZ.test: adding to the test suite. Also updated
1707 * tests/encoding.test: several tests, mostly to correctly create
1708 * tests/fCmd.test: and destroy any temporary files in the
1709 * tests/info.test: [temporaryDirectory] of tcltest.
1710 * tests/interp.test:
1712 * library/tcltest/tcltest.tcl: Stopped checking for writeability
1713 of -tmpdir value because no default directory can be guaranteed to
1716 * tests/autoMkindex.tcl: removed.
1717 * tests/pkg/samename.tcl: removed.
1718 * tests/pkg/magicchar.tcl: removed.
1719 * tests/pkg/magicchar2.tcl: removed.
1720 * tests/autoMkindex.test: Updated auto_mkIndex tests to use
1721 [makeFile] and [removeFile] so tests are done in [temporaryDirecotry]
1722 where write access is guaranteed.
1724 * library/tcltest/tcltest.tcl: Fixed [makeFile] and [viewFile] to
1725 * tests/cmdAH.test: accurately reflect a file's contents.
1726 * tests/event.test: Updated tests that depended on buggy
1727 * tests/http.test: behavior. Also added warning messages
1728 * tests/io.test: to "-debug 1" operations to debug test
1729 * tests/iogt.test: calls to (make|remove)(File|Directory).
1731 * unix/mkLinks: `make mklinks` on 6-27 commits.
1733 2002-06-28 Miguel Sofer <msofer@users.sourceforge.net>
1735 * generic/tclCompile.h: modified the macro TclEmitPush to not
1736 call its first argument repeatedly or pass it to other macros,
1737 [Bug 575194] reported by Peter Spjuth.
1739 2002-06-28 Don Porter <dgp@users.sourceforge.net>
1741 * docs/tcltest.n: Doc revisions in progress.
1742 * library/tcltest/tcltest.tcl: Corrected -testdir default value.
1743 Was not reliable, and disagreed with docs! Thanks to Hemang Lavana.
1746 2002-06-28 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1748 * unix/tclUnixThrd.c: Renamed the Tcl_Platform* #defines to
1749 * unix/tclUnixPipe.c: TclOS* because they are only used
1750 * unix/tclUnixFile.c: internally. Also stopped double-#def
1751 * unix/tclUnixFCmd.c: of TclOSlstat [Bug #566099, post-rename]
1752 * unix/tclUnixChan.c:
1753 * unix/tclUnixPort.h:
1755 * doc/string.n: Improved documentation for [string last] along
1756 lines described in Bug #574799 so it indicates that the supplied
1757 index marks the end of the search space.
1759 2002-06-27 Don Porter <dgp@users.sourceforge.net>
1761 * doc/dde.n: Work in progress updating the documentation
1762 * doc/http.n: of the packages that come bundled with
1763 * doc/msgcat.n: the Tcl source distribution, notably tcltest.
1767 * library/tcltest/tcltest.tcl: Made sure that the TCLTEST_OPTIONS
1768 environment variablle configures tcltest at package load time.
1770 2002-06-26 Vince Darley <vincentdarley@users.sourceforge.net>
1772 * tests/fileSystem.test:
1773 * generic/tclIOUtil.c: fix to handling of empty paths ""
1774 which are not claimed by any filesystem (Bug #573758).
1775 Ensure good error messages are given in all cases.
1777 * unix/tclUnixFCmd.c: fix to bug reported as part of
1778 (Patch #566669). Thanks to Taguchi, Takeshi for the report.
1780 2002-06-26 Reinhard Max <max@suse.de>
1782 * unix/tclUnixTime.c: Make [clock format] respect locale settings.
1783 * tests/clock.test: Bug #565880. ***POTENTIAL INCOMPATIBILITY***
1785 2002-06-26 Miguel Sofer <msofer@users.sourceforge.net>
1788 * doc/StringObj.3: clarifications by Don Porter, bugs #493995 and
1791 2002-06-24 Don Porter <dgp@users.sourceforge.net>
1793 * library/tcltest/tcltest.tcl: Corrected suppression of -verbose skip
1794 * tests/tcltest.test: and start by [test -output]. Also
1795 corrected test suite errors exposed by corrected code. [Bug 564656]
1797 2002-06-25 Reinhard Max <max@suse.de>
1799 * unix/tcl.m4: New macro SC_CONFIG_MANPAGES.
1800 * unix/configure.in: Added support for symlinks and compression
1801 * unix/Makefile.in: when installing the manpages. [Patch 518052]
1802 * unix/mkLinks.tcl: Default is still hardlinks and no compression.
1804 * unix/mkLinks: generated
1807 * unix/README: Added documentation for the new features.
1809 * unix/tcl.m4 (SC_PATH_TCLCONFIG): Replaced ${exec_prefix}/lib by
1812 2002-06-25 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1814 * generic/tclUtil.c (TclGetIntForIndex): Fix of critical bug
1815 #533364 generated when the index is bad and the result is a shared
1816 object. The T_ASTO(T_GOR, ...) idiom likely exists elsewhere
1817 though. Also removed some cruft that just complicated things to
1819 (SetEndOffsetFromAny): Same fix, though this wasn't on the path
1822 2002-06-24 Don Porter <dgp@users.sourceforge.net>
1824 * library/tcltest/tcltest.tcl: Implementation of TIP 101. Adds
1825 * tests/parseOld.test: and exports a [configure] command
1826 * tests/tcltest.test: from tcltest.
1828 2002-06-22 Don Porter <dgp@users.sourceforge.net>
1830 * changes: updated changes file for 8.4b1 release.
1832 * library/tcltest/tcltest.tcl: Corrections to tcltest and the
1833 * tests/basic.test: Tcl test suite so that a test
1834 * tests/cmdInfo.test: with options -constraints knownBug
1835 * tests/compile.test: -limitConstraints 1 only tests the
1836 * tests/encoding.test: knownBug tests. Mostly involves
1837 * tests/env.test: replacing direct access to the
1838 * tests/event.test: testConstraints array with calls
1839 * tests/exec.test: to the testConstraint command
1840 * tests/execute.test: (which requires tcltest version 2)
1842 * tests/format.test:
1844 * tests/httpold.test:
1845 * tests/ioUtil.test:
1848 * tests/namespace.test:
1849 * tests/pkgMkIndex.test:
1851 * tests/result.test:
1855 2002-06-22 Donal K. Fellows <fellowsd@cs.man.ac.uk>
1857 * tools/tcl.wse.in (Disk Label), unix/tcl.spec (version):
1858 * win/README.binary, README, win/configure.in, unix/configure.in:
1859 * generic/tcl.h (TCL_RELEASE_*, TCL_PATCH_LEVEL): Bump to beta1.
1861 2002-06-21 Joe English <jenglish@users.sourceforge.net>
1863 * generic/tclCompExpr.c:
1864 * generic/tclParseExpr.c: LogSyntaxError() should reset
1865 the interpreter result [Bug 550142 "Tcl_ExprObj -> abort"]
1867 2002-06-21 Don Porter <dgp@users.sourceforge.net>
1869 * unix/Makefile.in: Updated all package install directories
1870 * win/Makefile.in: to match current Major.minor versions
1871 * win/makefile.bc: of the packages. Added tcltest package
1872 * win/makefile.vc: to installation on Windows.
1874 * library/init.tcl: Corrected comments and namespace style
1875 issues. Thanks to Bruce Stephens. [Bug 572025]
1877 2002-06-21 Vince Darley <vincentdarley@users.sourceforge.net>
1879 * tests/cmdAH.test: Added TIP#99 implementation
1880 * tests/fCmd.test: of 'file link'. Supports creation
1881 * tests/fileName.test: of symbolic and hard links in the
1882 * tests/fileSystem.test: native filesystems and in vfs's,
1883 * generic/tclTest.c: when the individual filesystem
1884 * generic/tclCmdAH.c: supports the concept.
1885 * generic/tclIOUtil.c:
1887 * generic/tcl.decls:
1891 * unix/tclUnixFile.c:
1892 * win/tclWinFile.c: Also enhanced speed of 'file normalize' on
1895 2002-06-20 Miguel Sofer <msofer@users.sourceforge.net>
1897 * generic/tclBasic.c (TclEvalObjvInternal): fix for [Bug 571385]
1898 in the implementation of TIP#62 (command tracing). Vince Darley,
1899 Hemang Lavana & Don Porter: thanks.
1901 2002-06-20 Miguel Sofer <msofer@users.sourceforge.net>
1903 * generic/tclExecute.c (TclCompEvalObj): clarified and simplified
1904 the logic for compilation/recompilation.
1906 2002-06-19 Joe English <jenglish@users.sourceforge.net>
1907 * doc/file.n: Fixed indentation. No substantive changes.
1909 2002-06-19 Jeff Hobbs <jeffh@ActiveState.com>
1911 * generic/tclCmdMZ.c (Tcl_RegexpObjCmd): get the resultPtr again
1912 as the Tcl_ObjSetVar2 may cause the result to change.
1913 [Patch #558324] (watson)
1915 2002-06-19 Miguel Sofer <msofer@users.sourceforge.net>
1917 * generic/tclExecute.c (TEBC): removing unused "for(;;)" loop;
1918 improved comments; re-indentation.
1920 2002-06-18 Miguel Sofer <msofer@users.sourceforge.net>
1922 * generic/tclExecute.c (TEBC):
1923 - elimination of duplicated code in the non-immediate INST_INCR
1925 - elimination of 103 (!) TclDecrRefCount macros. The different
1926 instructions now jump back to a common "DecrRefCount zone" at
1927 the top of the loop. The macro "ADJUST_PC" was replaced by two
1928 macros "NEXT_INST_F" and "NEXT_INST_V" that take three params
1929 (pcAdjustment, # of stack objects to discard, resultObjPtr
1930 handling flag). The only instructions that retain a
1931 TclDecrRefCount are INST_POP (for speed), the common code for
1932 the non-immediate INST_INCR, INST_FOREACH_STEP and the two
1935 The object size of tclExecute.o was reduced by approx 20% since
1936 the start of the consolidation drive, while making room for some
1937 peep-hole optimisation at runtime.
1939 2002-06-18 Miguel Sofer <msofer@users.sourceforge.net>
1941 * generic/tclExecute.c (TEBC, INST_DONE): small bug in the panic
1942 code for tcl-stack corruption.
1944 2002-06-17 David Gravereaux <davygrvy@pobox.com>
1946 Trims to support the removal of RESOURCE_INCLUDED from rc
1947 scripts from FR #565088.
1949 * generic/tcl.h: moved the #ifndef RC_INVOKED start block up in
1950 the file. rc scripts don't need to know thread mutexes.
1953 * win/tclsh.rc: removed the #define RESOURCE_INCLUDED to let the
1954 built-in -DRC_INVOKED to the work.
1956 2002-06-17 Jeff Hobbs <jeffh@ActiveState.com>
1958 * doc/CrtTrace.3: Added TIP#62 implementation of command
1959 * doc/trace.n: execution tracing [FR #462580] (lavana).
1960 * generic/tcl.h: This includes enter/leave tracing as well
1961 * generic/tclBasic.c: as inter-procedure stepping.
1962 * generic/tclCmdMZ.c:
1963 * generic/tclCompile.c:
1964 * generic/tclExecute.c:
1965 * generic/tclInt.decls:
1967 * generic/tclIntDecls.h:
1968 * generic/tclStubInit.c:
1972 2002-06-17 Andreas Kupries <andreas_kupries@users.sourceforge.net>
1974 * win/tclWinPipe.c (BuildCommandLine): Fixed bug #554068 ([exec]
1975 on windows did not treat { in filenames well.). Bug reported by
1976 Vince Darley <vincentdarley@users.sourceforge.net>, patch
1977 provided by Vince too.
1979 2002-06-17 Joe English <jenglish@users.sourceforge.net>
1981 * generic/tcl.h: #ifdef logic for K&R C backwards compatibility
1982 changed to assume modern C by default. See SF FR #565088 for
1985 2002-06-17 Don Porter <dgp@users.sourceforge.net>
1987 * doc/msgcat.n: Corrected en_UK references to en_GB. UK is not
1988 a country designation recognized in ISO 3166.
1990 * library/msgcat/msgcat.tcl: More Windows Registry locale codes
1994 * library/msgcat/msgcat.tcl:
1995 * library/msgcat/pkgIndex.tcl:
1996 * tests/msgcat.test: Revised locale initialization to interpret
1997 environment variable locale values according to XPG4, and to
1998 recognize the LC_ALL and LC_MESSAGES values over that of LANG.
1999 Also added many Windows Registry locale values to those
2000 recognized by msgcat. Revised tests and docs. Bumped to
2001 version 1.3. Thanks to Bruno Haible for the report and
2002 assistance crafting the solution. [Bug 525522, 525525]
2004 2002-06-16 Miguel Sofer <msofer@users.sourceforge.net>
2006 * generic/tclCompile.c (TclCompileTokens): a better algorithm for
2007 the previous bug fix.
2009 2002-06-16 Miguel Sofer <msofer@users.sourceforge.net>
2011 * generic/tclCompile.c (TclCompileTokens):
2012 * tests/compile.test: [Bug 569438] in the processing of dollar
2013 variables; report by Georgios Petasis.
2015 2002-06-16 Miguel Sofer <msofer@users.sourceforge.net>
2017 * generic/tclExecute.c: bug in the consolidation of the
2018 INCR_..._STK instructions; the bug could not be exercised as the
2019 (faulty) instruction INST_INCR_ARRAY_STK was never compiled-in
2020 (related to [Bug 569438]).
2022 2002-06-14 Miguel Sofer <msofer@users.sourceforge.net>
2024 * generic/tclExecute.c (TclExecuteByteCode): runtime peep-hole
2025 optimisation of variables (INST_STORE, INST_INCR) and commands
2026 (INST_INVOKE); faster check for the existence of a catch.
2027 (TclExecuteByteCode): runtime peep-hole optimisation of
2029 (TclExecuteByteCode): runtime peep-hole optimisation of
2030 INST_FOREACH - relies on peculiarities of the code produced by the
2033 2002-06-14 David Gravereaux <davygrvy@pobox.com>
2035 * win/rules.vc: The test for compiler optimizations was in error.
2036 Thanks goes to Roy Terry <royterry@earthlink.net> for his
2037 assistance with this.
2039 2002-06-14 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2041 * doc/trace.n, tests/trace.test:
2042 * generic/tclCmdMZ.c (Tcl_TraceObjCmd,TclTraceCommandObjCmd)
2043 (TclTraceVariableObjCmd): Changed references to "trace list" to
2044 "trace info" as mandated by TIP#102.
2046 2002-06-13 Miguel Sofer <msofer@users.sourceforge.net>
2048 * generic/tclExecute.c (TclExecuteByteCode): consolidated code for
2049 the conditional branch instructions.
2051 2002-06-13 Miguel Sofer <msofer@users.sourceforge.net>
2053 * generic/tclExecute.c (TclExecuteByteCode): fixed the previous
2054 patch - wouldn't compile with TCL_COMPILE_DEBUG set.
2056 2002-06-13 Miguel Sofer <msofer@users.sourceforge.net>
2058 * generic/tclExecute.c (TclExecuteByteCode): consolidated the
2059 handling of exception returns to INST_INVOKE and INST_EVAL, as
2060 well as most of the code for INST_CONTINUE and INST_BREAK, in the
2061 new jump target "processExceptionReturn".
2063 2002-06-13 Miguel Sofer <msofer@users.sourceforge.net>
2065 * generic/tclExecute.c (TclExecuteByteCode): consolidated variable
2066 handling opcodes, replaced redundant code with some 'goto'. All
2067 store/append/lappend opcodes on the same data type now share the
2068 main code; same with incr opcodes.
2069 * generic/tclVar.c: added the bit TCL_TRACE_READS to the possible
2070 flags to Tcl_SetVar2Ex - it causes read traces to be fired prior
2071 to setting the variable. This is used in the core for [lappend].
2073 ***NOTE*** the usage of TCL_TRACE_READS in Tcl_(Obj)?GetVar.* is
2074 not documented; there, it causes the call to create the variable
2075 if it does not exist. The new usage in Tcl_(Obj)?SetVar.* remains
2076 undocumented too ...
2078 2002-06-13 Vince Darley <vincentdarley@users.sourceforge.net>
2081 * tests/winFile.test:
2082 * tests/fileSystem.test:
2083 * generic/tclTest.c:
2084 * generic/tclCmdAH.c:
2085 * generic/tclIOUtil.c:
2088 * unix/tclUnixFile.c:
2089 * win/tclWinFile.c: fixed up further so both compiles and
2090 actually works with VC++ 5 or 6.
2092 * win/tclWin32Dll.c: cleaned up code and vfs tests and
2093 added tests for the internal changes of 2002-06-12, to see
2094 whether WinTcl on NTFS can coexist peacefully with links
2095 in the filesystem. Added new test command 'testfilelink'
2096 to enable the newer code to be tested.
2097 * tests/fCmd.test: (made certain tests of 'testfilelink' not
2100 2002-06-12 Miguel Sofer <msofer@users.sourceforge.net>
2102 * tclBasic.c (Tcl_DeleteTrace): fixed [Bug 568123] (thanks to
2105 2002-06-12 Jeff Hobbs <jeffh@ActiveState.com>
2107 * win/tclWinFile.c: corrected the symbolic link handling code to
2108 allow it to compile. Added real definition of REPARSE_DATA_BUFFER
2109 (found in winnt.h). Most of the added definitions appear to have
2110 correct, cross-Win-version equivalents in winnt.h and should be
2111 removed, but just making things "work" for now.
2113 2002-06-12 Vince Darley <vincentdarley@users.sourceforge.net>
2115 * generic/tclIOUtil.c:
2116 * generic/tcl.decls:
2117 * generic/tclDecls.h: made code for Tcl_FSNewNativePath
2118 agree with man pages.
2120 * doc/FileSystem.3: clarified the circumstances under which
2121 certain functions are called in the presence of symlinks.
2126 * win/tclWinFCmd.c: Fix for Windows to allow 'file lstat',
2127 'file type', 'glob -type l', 'file copy', 'file delete',
2128 'file normalize', and all VFS code to work correctly in the
2129 presence of symlinks (previously Tcl's behaviour was not very
2130 well defined). This also fixes possible serious problems in
2131 all versions of WinTcl where 'file delete' on a NTFS symlink
2132 could delete the original, not the symlink.
2133 Note: symlinks cannot yet be created in pure Tcl.
2135 2002-06-11 Miguel Sofer <msofer@users.sourceforge.net>
2137 * generic/tclBasic.c:
2138 * generic/tclCompCmds.c:
2139 * generic/tclInt.h: reverted the new compilation functions;
2140 replaced by a more general approach described below.
2142 * generic/tclCompCmds.c:
2143 * generic/tclCompile.c: made *all* compiled variable access
2144 attempts create an indexed variable - even get or incr without
2145 previous set. This allows indexed access to local variables that
2146 are created and set at runtime, for example by [global], [upvar],
2147 [variable], [regexp], [regsub].
2149 2002-06-11 Miguel Sofer <msofer@users.sourceforge.net>
2154 * generic/tclCmdIL.c: fix for [Bug 567386], [info locals] was
2155 reporting some linked variables.
2157 * generic/tclBasic.c:
2158 * generic/tclCompCmds.c:
2159 * generic/tclInt.h: added compile functions for [global],
2160 [variable] and [upvar]. They just declare the new local variables,
2161 the commands themselves are not compiled-in. This gives a notably
2162 faster read access to these linked variables.
2164 2002-06-11 Miguel Sofer <msofer@users.sourceforge.net>
2166 * generic/tclExecute.c: optimised algorithm for exception range
2167 lookup; part of [Patch 453709].
2169 2002-06-10 Vince Darley <vincentdarley@users.sourceforge.net>
2171 * unix/tclUnixFCmd.c: fixed [Bug #566669]
2172 * generic/tclIOUtil.c: improved and sped up handling of
2173 native paths (duplication and conversion to normalized paths),
2174 particularly on Windows.
2175 * modified part of above commit, due to problems on Linux.
2176 Will re-examine bug report and evaluate more closely.
2178 2002-06-07 Don Porter <dgp@users.sourceforge.net>
2180 * tests/tcltest.test: More corrections to test suite so that tests
2181 of failing [test]s don't show up themselves as failing tests.
2183 2002-06-07 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2185 * generic/tclExecute.c: Tidied up headers in relation to float.h
2186 to cut the cruft and ensure DBL_MAX is defined since doubles seem
2187 to be the same size everywhere; if the assumption isn't true, the
2188 variant platforms had better have run configure...
2190 * unix/tclUnixPort.h (EOVERFLOW): Added code to define it if it
2191 wasn't previously defined. Also some other general tidying and
2192 adding of comments. [Tcl bugs 563122, 564595]
2193 * compat/tclErrno.h: Added definition for EOVERFLOW copied from
2194 Solaris headers; I've been unable to find any uses of EFTYPE,
2195 which was the error code previously occupying the slot, in Tcl, or
2196 any definition of it in the Solaris headers.
2198 2002-06-06 Mo DeJong <mdejong@users.sourceforge.net>
2200 * unix/dltest/Makefile.in: Remove hard coded CFLAGS=-g
2201 and add CFLAGS_DEBUG, CFLAGS_OPTIMIZE, and
2202 CFLAGS_DEFAULT varaibles. [Tcl bug 565488]
2204 2002-06-06 Don Porter <dgp@users.sourceforge.net>
2206 * tests/tcltest.test: Corrections to test suite so that tests
2207 of failing [test]s don't show up themselves as failing tests.
2209 * tests/io.test: Fixed up namespace variable resolution issues
2210 revealed by running test suite with "-singleproc 1".
2213 * library/tcltest/tcltest.tcl:
2214 * tests/tcltest.test: Several updates to tcltest.
2215 1) changed to lazy initialization of test constraints
2216 2) deprecated [initConstraintsHook]
2217 3) repaired badly broken [limitConstraints].
2218 4) deprecated [threadReap] and [mainThread]
2219 [Patch 512214, Bug 558742, Bug 461000, Bug 534903]
2221 2002-06-06 Daniel Steffen <das@users.sourceforge.net>
2223 * unix/tclUnixThrd.c (TclpReaddir, TclpLocaltime, TclpGmtime):
2224 added mutex wrapped calls to readdir, localtime & gmtime in
2225 case their thread-safe *_r counterparts are not available.
2226 * unix/tcl.m4: added configure check for readdir_r
2227 * unix/tcl.m4 (Darwin): set TCL_DEFAULT_ENCODING to utf-8 on
2228 MacOSX (where posix file apis expect utf-8, not iso8859-1).
2229 * unix/configure: regen
2230 * unix/Makefile.in: set DYLD_LIBRARY_PATH in parallel
2231 to LD_LIBRARY_PATH for MacOSX dynamic linker.
2232 * generic/tclEnv.c (TclSetEnv): fix env var setting on
2233 MacOSX (adapted from patch #524352 by jkbonfield).
2235 2002-06-05 Don Porter <dgp@users.sourceforge.net>
2237 * doc/Tcl_Main.3: Documented $tcl_rcFileName and added more
2238 clarifications about the intended use of Tcl_Main(). [Bug 505651]
2240 2002-06-05 Daniel Steffen <das@users.sourceforge.net>
2242 * generic/tclFileName.c (TclGlob): mac specific fix to
2243 recent changes in 'glob -tails' handling.
2245 * mac/tclMacChan.c: fixed TIP#91 bustage.
2246 * mac/tclMacResource.c (Tcl_MacConvertTextResource): added utf
2247 conversion of text resource contents.
2248 * tests/macFCmd.test (macFCmd-1.2): allow CWIE creator.
2250 2002-06-04 Don Porter <dgp@users.sourceforge.net>
2252 * library/tcltest/tcltest.tcl:
2254 * tests/tcltest.test: Added more TIP 85 tests from Arjen Markus.
2255 Converted tcltest.test to use a private namespace. Fixed bugs in
2256 [tcltest::Eval] revealed by calling [tcltest::test] from a non-global
2257 namespace, and namespace errors in init.test.
2259 2002-06-04 Mo DeJong <mdejong@users.sourceforge.net>
2261 * win/README: Update msys+mingw URL.
2263 2002-06-03 Don Porter <dgp@users.sourceforge.net>
2266 * library/tcltest/tcltest.tcl:
2267 * library/tcltest/pkgIndex.tcl:
2268 * tests/tcltest.test: Implementation of TIP 85. Allows tcltest
2269 users to add new legal values of the -match option to [test],
2270 associating each with a Tcl command that does the matching of
2271 expected results with actual results of tests. Thanks to
2272 Arjen Markus. => tcltest 2.1 [Patch 521362]
2274 2002-06-03 Miguel Sofer <msofer@users.sourceforge.net>
2276 * doc/namespace.n: added description of [namepace forget]
2277 behaviour for unqualified patterns [Bug 559268]
2279 2002-06-03 Miguel Sofer <msofer@users.sourceforge.net>
2281 * generic/tclExecute.c: reverting an accidental modification in
2284 2002-06-03 Miguel Sofer <msofer@users.sourceforge.net>
2286 * doc/Tcl.n: clarify the empty variable name issue ([Bug 549285]
2287 reported by Tom Krehbiel, patch by Don Porter).
2289 2002-05-31 Don Porter <dgp@users.sourceforge.net>
2291 * library/package.tcl: Fixed leak of slave interp in [pkg_mkIndex].
2292 Thanks to Helmut for report. [Bug 550534]
2295 * tests/main.test: Use the "stdio" constraint to control whether
2296 an [open "|[interpreter]"] is attempted.
2298 * generic/tclExecute.c (TclMathInProgress,TclExecuteByteCode
2300 * generic/tclInt.h (TclMathInProgress):
2301 * unix/Makefile.in (tclMtherr.*):
2302 * unix/configure.in (NEED_MATHERR):
2303 * unix/tclAppInit.c (matherr):
2304 * unix/tclMtherr.c (removed file):
2305 * win/tclWinMtherr.c (_matherr): Removed internal routine
2306 TclMathInProgress and Unix implementation of matherr(). These
2307 are now obsolete, dealing with very old versions of the C math
2308 library. Windows version is retained in case Borland compilers
2309 require it, but it is inactive. Thanks to Joe English.
2310 [Bug 474335, Patch 555635].
2311 * unix/configure: regen
2313 2002-05-30 Miguel Sofer <msofer@users.sourceforge.net>
2315 * generic/tclCompExpr.c:
2316 * generic/tclCompile.c:
2317 * generic/tclCompile.h: removed exprIsJustVarRef and
2318 exprIsComparison from the ExprInfo and CompileEnv structs. These
2319 were set, but not used since dec 1999 [Bug 562383].
2321 2002-05-30 Vince Darley <vincentdarley@users.sourceforge.net>
2323 * generic/tclFileName.c (TclGlob): fix to longstanding
2324 'knownBug' in fileName tests 15.2-15.4, and fix to a new
2325 Tcl 8.4 bug in certain uses of 'glob -tails'.
2326 * tests/fileName.test: removed 'knownBug' flag from some tests,
2327 added some new tests for above bugs.
2329 2002-05-29 Jeff Hobbs <jeffh@ActiveState.com>
2331 * unix/configure: regen'ed
2332 * unix/configure.in: replaced bigendian check with autoconf
2333 standard AC_C_BIG_ENDIAN, which defined WORDS_BIGENDIAN on
2335 * generic/tclUtf.c (Tcl_UniCharNcmp):
2336 * generic/tclInt.h (TclUniCharNcmp): use WORDS_BIGENDIAN instead of
2337 TCL_OPTIMIZE_UNICODE_COMPARE to enable memcmp alternative.
2339 * generic/tclExecute.c (TclExecuteByteCode INST_STR_CMP):
2340 * generic/tclCmdMZ.c (Tcl_StringObjCmd): changed the case for
2341 choosing the Tcl_UniCharNcmp compare to when both objs are of
2342 StringType, as benchmarks show that is the optimal check (both
2343 bigendian and littleendian systems).
2345 2002-05-29 Don Porter <dgp@users.sourceforge.net>
2347 * generic/tclMain.c: Removed "dummy" reference to Tcl_LinkVar.
2348 It is no longer needed since Tcl_Main() now actually calls
2349 Tcl_LinkVar(). Thanks to Joe English for pointing that out.
2351 2002-05-29 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2353 * generic/tclExecute.c (TclExecuteByteCode):
2354 * generic/tclCmdMZ.c (Tcl_StringObjCmd): Use the macro version.
2355 * generic/tclInt.h (TclUniCharNcmp): Optimised still further with
2356 a macro for use in sensitive places like tclExecute.c
2358 * generic/tclUtf.c (Tcl_UniCharNcmp): Use new flag to figure out
2359 when we can use an optimal comparison scheme, and default to the
2360 old scheme in other cases which is at least safe.
2361 * unix/configure.in (TCL_OPTIMIZE_UNICODE_COMPARE): New optional
2362 flag that indicates when we can use memcmp() to compare Unicode
2363 strings (i.e. when the high-byte of a Tcl_UniChar precedes the
2366 2002-05-29 Jeff Hobbs <jeffh@ActiveState.com>
2368 * generic/tclInt.decls:
2369 * generic/tclIntDecls.h:
2370 * generic/tclStubInit.c:
2371 * generic/tclUtf.c: added TclpUtfNcmp2 private command that
2372 mirrors Tcl_UtfNcmp, but takes n in bytes, not utf-8 chars. This
2373 provides a faster alternative for comparing utf strings internally.
2374 (Tcl_UniCharNcmp, Tcl_UniCharNcasecmp): removed the explicit end
2375 of string check as it wasn't correct for the function (by doc and
2378 * generic/tclCmdMZ.c (Tcl_StringObjCmd): reworked the string equal
2379 comparison code to use TclpUtfNcmp2 as well as short-circuit for
2380 equal objects or unequal length strings in the equal case.
2381 Removed the use of goto and streamlined the other parts.
2383 * generic/tclExecute.c (TclExecuteByteCode): added check for
2384 object equality in the comparison instructions. Added
2385 short-circuit for != length strings in INST_EQ, INST_NEQ and
2386 INST_STR_CMP. Reworked INST_STR_CMP to use TclpUtfNcmp2 where
2387 appropriate, and only use Tcl_UniCharNcmp when at least one of the
2388 objects is a Unicode obj with no utf bytes.
2390 * generic/tclCompCmds.c (TclCompileStringCmd): removed error
2391 creation in code that no longer throws an error.
2393 * tests/string.test:
2394 * tests/stringComp.test: added more string comparison checks.
2396 * tests/clock.test: better qualified 9.1 constraint check for %s.
2398 2002-05-28 Jeff Hobbs <jeffh@ActiveState.com>
2400 * generic/tclThreadAlloc.c (TclpRealloc, TclpFree): protect
2401 against the case when NULL is based.
2403 * tests/clock.test: added clock-9.1
2404 * compat/strftime.c:
2405 * generic/tclClock.c:
2406 * generic/tclInt.decls:
2407 * generic/tclIntDecls.h:
2408 * unix/tclUnixTime.c: fix for Windows msvcrt mem leak caused by
2409 using an env(TZ) setting trick for in clock format -gmt 1. This
2410 also makes %s seem to work correctly with -gmt 1 as well as
2411 making it a lot faster by avoid the env(TZ) hack. TclpStrftime
2412 now takes useGMT as an arg. [Bug #559376]
2414 2002-05-28 Vince Darley <vincentdarley@users.sourceforge.net>
2416 * generic/tclIOUtil.c: fixes to Tcl_FSLoadFile when called on
2417 a file inside a vfs. This should avoid leaving temporary
2418 files sitting around on exit. [Bug #545579]
2420 2002-05-27 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2422 * win/tclWinError.c: Added comment on conversion of
2423 ERROR_NEGATIVE_SEEK because that is a mapping that really belongs,
2424 and not a catch-all case.
2425 * win/tclWinPort.h (EOVERFLOW): Should be either EFBIG or EINVAL
2426 * generic/tclPosixStr.c (Tcl_ErrnoId, Tcl_ErrnoMsg): EOVERFLOW can
2427 potentially be a synonym for EINVAL.
2429 2002-05-24 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2431 === Changes due to TIP#91 ===
2433 * win/tclWinPort.h: Added declaration of EOVERFLOW.
2434 * doc/CrtChannel.3: Added documentation of wideSeekProc.
2435 * generic/tclIOGT.c (TransformSeekProc, TransformWideSeekProc):
2436 Adapted to use the new channel mechanism.
2437 * unix/tclUnixChan.c (FileSeekProc, FileWideSeekProc): Renamed
2438 FileSeekProc to FileWideSeekProc and created new FileSeekProc
2439 which has the old-style interface and which errors out with
2440 EOVERFLOW when the returned file position can't fit into the
2441 return type (int for historical reasons.)
2442 * win/tclWinChan.c (FileSeekProc, FileWideSeekProc): Renamed
2443 FileSeekProc to FileWideSeekProc and created new FileSeekProc
2444 which has the old-style interface and which errors out with
2445 EOVERFLOW when the returned file position can't fit into the
2446 return type (int for historical reasons.)
2447 * mac/tclMacChan.c (FileSeek): Reverted to old interface; Macs
2448 lack large-file support because I can't see how to add it.
2449 * generic/tclIO.c (Tcl_Seek, Tcl_Tell): Given these functions
2450 knowledge of the new arrangement of channel types.
2451 (Tcl_ChannelVersion): Added recognition of new version code.
2452 (HaveVersion): New function to do version checking.
2453 (Tcl_ChannelBlockModeProc, Tcl_ChannelFlushProc)
2454 (Tcl_ChannelHandlerProc): Made these functions use HaveVersion for
2455 ease of future maintainability.
2456 (Tcl_ChannelBlockModeProc): Obvious lookup function.
2457 * generic/tcl.h (Tcl_ChannelType): New wideSeekProc field, and
2458 seekProc type restored to old interpretation.
2459 (TCL_CHANNEL_VERSION_3): New channel version.
2461 2002-05-24 Andreas Kupries <andreas_kupries@users.sourceforge.net>
2463 * tests/winPipe.test: Applied patch for SF Tcl Bug #549617. Patch
2464 and bug report by Kevin Kenny <kennykb@users.sourceforge.net>.
2466 * win/tclWinSock.c (TcpWatchProc): Fixed SF Tcl Bug #557878. We
2467 are not allowed to mess with the watch mask if the socket is a
2468 server socket. I believe that the original reporter is George
2471 2002-05-21 Mo DeJong <mdejong@users.sourceforge.net>
2473 * unix/configure: Regen.
2474 * unix/configure.in: Invoke SC_ENABLE_SHARED before
2475 calling SC_CONFIG_CFLAGS so that the SHARED_BUILD
2476 variable can be checked inside SC_CONFIG_CFLAGS.
2477 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Pass -non_shared
2478 instead of -shared to ld when configured with
2479 --disable-shared under OSF. [Tcl bug 540390]
2481 2002-05-20 Daniel Steffen <das@users.sourceforge.net>
2483 * generic/tclInt.h: added prototype for TclpFilesystemPathType().
2484 * mac/tclMacChan.c: use MSL provided creator type if available
2485 instead of the default 'MPW '.
2487 2002-05-16 Joe English <jenglish@users.sf.net>
2490 Added Tcl_GetCommandFromObj, Tcl_GetCommandFullName
2491 (Tcl Bug #547987, #414921)
2493 2002-05-14 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2495 * unix/tclUnixChan.c (TtyOutputProc): #if/#endif-ed this function
2496 out to stop compiler warnings. Also much general tidying of
2497 comments in this file and removal of whitespace from blank lines.
2499 2002-05-13 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2501 * unix/tclUnixChan.c (SETBREAK): Solaris thinks ioctl() takes a
2502 signed second argument, and Linux thinks ioctl() takes an unsigned
2503 second argument. So need a longer definition of this macro to get
2504 neither to spew warnings...
2506 2002-05-13 Vince Darley <vincentdarley@users.sourceforge.net>
2508 * generic/tclEvent.c:
2509 * generic/tclIOUtil.c:
2510 * generic/tclInt.h: clean up all memory allocated by the
2511 filesystem, via introduction of 'TclFinalizeFilesystem'.
2512 Move TclFinalizeLoad into TclFinalizeFilesystem so we can
2513 be sure it is called at just the right time.
2514 Fix bad comment also. [Bug #555078 and 'fs' part of #543549]
2515 * win/tclWinChan.c: fix comment referring to wrong function.
2517 2002-05-10 Don Porter <dgp@users.sourceforge.net>
2521 * tests/tcltest.test: Corrected some list-quoting issues and
2522 other matters that cause tests to fail when the patch includes
2523 special characters. Report from Vince Darley. [Bug 554068].
2525 2002-05-08 David Gravereaux <davygrvy@pobox.com>
2529 * tools/man2help2.tcl: Thanks to Peter Spjuth
2530 <peter.spjuth@space.se>, again. My prior fix for
2531 single-quote macro mis-understanding was wrong. Reverted to
2532 reimpliment the 'macro2' proc which handles single-quote macros
2533 and restored file.n text arrangement to avoid single-quotes on
2534 the first line. Sorry for all the confusion.
2536 2002-05-08 David Gravereaux <davygrvy@pobox.com>
2539 * tools/man2help2.tcl: Proper source of macro error mis-
2540 understanding single-quote as the leading macro command found
2543 * doc/file.n: Reverted to prior state before I messed with
2546 2002-05-08 Don Porter <dgp@users.sourceforge.net>
2548 * library/tcltest/tcltest.tcl: Corrected [uplevel] quoting when
2549 [source]-ing test script in subdirectories.
2550 * tests/fileName.test:
2553 * tests/tcltest.test:
2554 * tests/unixInit.test: Fixes to test suite when there's a space
2555 in the working path. Thanks to Kevin Kenny.
2557 2002-05-07 David Gravereaux <davygrvy@pobox.com>
2559 -- Changes from Peter Spjuth <peter.spjuth@space.se>
2560 * tools/man2tcl.c: Increased line buffer size and a bail-out if
2561 that should ever be over-run.
2562 * tools/man2help.tcl: Include Courier New font in rtf header.
2563 * tools/man2help2.tcl: Improved handling of CS/CE fields. Use
2564 Courier New for code samples and indent better.
2567 * doc/TraceCmd.3: winhelp conversion tools where understanding
2568 a ' as the first character on a line to be an unknown macro.
2569 Not knowing how to repair tools/man2tcl.c, I decided to rearrange
2570 the text in the docs instead.
2572 2002-05-07 Vince Darley <vincentdarley@users.sourceforge.net>
2574 * generic/tclFileName.c: fix to similar segfault when using
2575 'glob -types nonsense -dir dirname -join * *'. [Bug 553320]
2577 * doc/FileSystem.3: further documentation on vfs.
2579 * tests/fileSystem.test:
2580 * tests/pkgMkindex.test: Fix to testsuite bugs when running out
2581 of directory whose name contains '{' or '['.
2583 2002-05-07 Miguel Sofer <msofer@users.sourceforge.net>
2585 * tests/basic.test: Fix for [Bug 549607]
2586 * tests/encoding.test: Fix for [Bug 549610]
2587 These are testsuite bugs that caused failures when the filename
2588 contained spaces. Report & fix by Kevin Kenny.
2590 2002-05-02 Vince Darley <vincentdarley@users.sourceforge.net>
2592 * generic/tclFileName.c: fix to freeing a bad object
2593 (i.e. segfault) when using 'glob -types nonsense -dir dirname'.
2594 * generic/tclWinFile.c: fix to [Bug 551306], also wrapped some
2596 * tests/fileName.test: added several tests for the above bugs.
2597 * doc/FileSystem.3: clarified documentation on refCount
2598 requirements of the object returned by the path type function.
2599 * generic/tclIOUtil.c:
2601 * unix/tclUnixFile.c:
2602 * mac/tclMacFile.c: moved TclpFilesystemPathType to the
2603 platform specific directories, so we can add missing platform-
2604 specific implementations. On Windows, 'file system' now returns
2605 useful results like "native NTFS", "native FAT" for that system.
2606 Unix and MacOS still only return "native".
2607 * doc/file.n: clarified documentation.
2608 * tests/winFile.test: test for 'file system' returning correct
2610 * tests/fileSystem.test: test for 'file system' returning correct
2611 values. Clean up after failed previous test run.
2613 2002-04-26 Jeff Hobbs <jeffh@ActiveState.com>
2616 * unix/tcl.m4: change HP-11 SHLIB_LD_LIBS from "" to ${LIBS} so
2617 that the .sl knows its dependent libs.
2619 2002-04-26 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2621 * tests/obj.test (obj-11.[56]): Test conversion to boolean more
2623 * generic/tclObj.c (SetBooleanFromAny): Was not calling an integer
2624 parsing function on native 64-bit platforms! [Bug 548686]
2626 2002-04-24 Jeff Hobbs <jeffh@ActiveState.com>
2628 * generic/tclInt.h: corrected TclRememberJoinableThread decl to
2629 use VOID instead of void.
2630 * generic/tclThreadJoin.c: noted that this code isn't needed on Unix.
2632 2002-04-23 Jeff Hobbs <jeffh@ActiveState.com>
2635 * doc/tclvars.n: doc updates [Patch #509426] (gravereaux)
2637 2002-04-24 Daniel Steffen <das@users.sourceforge.net>
2639 * mac/tclMacResource.r: added check of
2640 TCLTK_NO_LIBRARY_TEXT_RESOURCES #define to allow disabling the
2641 inclusion of the tcl library code in the resource fork of Tcl
2642 executables and shared libraries.
2644 2002-04-23 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2646 * doc/TraceCmd.3: New file that documents Tcl_CommandTraceInfo,
2647 Tcl_TraceCommand and Tcl_UntraceCommand [Bug 414927]
2649 2002-04-22 Jeff Hobbs <jeffh@ActiveState.com>
2651 * generic/tclAlloc.c:
2653 * generic/tclThreadAlloc.c (new):
2655 * unix/tclUnixThrd.c:
2658 * win/tclWinThrd.c: added new threaded allocator contributed by
2659 AOL that significantly reduces lock contention when multiple
2660 threads are in use. Only Windows and Unix implementations are
2661 ready, and the Windows one may need work. It is only used by
2662 default on Unix for now, and requires that USE_THREAD_ALLOC be
2663 defined (--enable-threads on Unix will define this).
2665 * generic/tclIOUtil.c (Tcl_FSRegister, Tcl_FSUnregister):
2666 corrected calling of Tcl_ConditionWait to ensure that there would
2667 be a condition to wait upon.
2669 * generic/tclCmdAH.c (Tcl_FileObjCmd): added cast in FILE_SIZE.
2671 * win/tclWinFCmd.c (DoDeleteFile): check return of setattr API
2672 calls in file deletion for correct Win32 API handling.
2674 * win/Makefile.in: correct dependencies for shell, gdb, runtest
2678 * compat/strftime.c (_fmt): change strftime to correctly handle
2679 localized %c, %x and %X on Windows. Added some notes about how
2680 the other values could be further localized.
2682 2002-04-19 Don Porter <dgp@users.sourceforge.net>
2684 * generic/tclMain.c (Tcl_Main): Free the memory allocated for the
2685 startup script path. [Bug 543549]
2687 * library/msgcat/msgcat.tcl: [mcmax] wasn't using the caller's
2688 namespace when determining the max translated length. Also
2689 made revisions for better use of namespace variables and more
2690 efficient [uplevel]s.
2693 * library/msgcat/msgcat.tcl:
2694 * library/msgcat/pkgIndex.tcl: Added [mcload] to the export list
2695 of msgcat; bumped to 1.2.3. [Bug 544727]
2697 2002-04-20 Daniel Steffen <das@users.sourceforge.net>
2699 * generic/tclInt.decls:
2700 * generic/tclIntPlatDecls.h:
2701 * generic/tclStubInit.c:
2704 * mac/tclMacUtil.c: Modified TclpObjNormalizePath to be alias
2705 file aware, and replaced various calls to FSpLocationFrom*Path
2706 by calls to new alias file aware versions FSpLLocationFrom*Path.
2707 The alias file aware routines don't resolve the last component of
2708 a path if it is an alias. This allows [file copy/delete] etc. to
2709 act correctly on alias files. (c.f. discussion in Bug #511666)
2711 2002-04-19 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2713 * tests/lindex.test (lindex-3.7):
2714 * generic/tclUtil.c (TclGetIntForIndex): Stopped indexes from
2715 hitting wide ints. [Bug #526717]
2717 2002-04-18 Miguel Sofer <msofer@users.sourceforge.net>
2719 * generic/tclNamesp.c:
2720 * tests/info.test: [Bug 545325] info level didn't report
2721 namespace eval, bug report by Richard Suchenwirth.
2723 2002-04-18 Don Porter <dgp@users.sourceforge.net>
2725 * doc/subst.n: Clarified documentation on handling unusual return
2726 codes during substitution, and on variable substitutions implied
2727 by command substitution, and vice versa. [Bug 536838]
2729 2002-04-18 Donal K. Fellows <fellowsd@cs.man.ac.uk>
2731 * generic/tclCmdIL.c (InfoBodyCmd):
2732 * tests/info.test (info-2.6): Proc bodies without string reps
2733 would report as empty [Bug #545644]
2735 * generic/tclCmdMZ.c (Tcl_SubstObj): More clarification for
2736 comment on behaviour when substitutions are not well-formed,
2737 prompted by [Bug #536831]; alas, removing the ill-defined
2738 behaviour is a lot of work.
2740 2002-04-18 Miguel Sofer <msofer@users.sourceforge.net>
2742 * generic/tclExecute.c:
2743 * tests/expr-old.test: fix for [Bug #542588] (Phil Ehrens), where
2744 "too large integers" were reported as "floating-point value" in
2745 [expr] error messages.
2747 2002-04-17 Jeff Hobbs <jeffh@ActiveState.com>
2749 * generic/tclEncoding.c (EscapeFromUtfProc):
2750 * generic/tclIO.c (WriteChars, Tcl_Close): corrected the handling
2751 of outputting end escapes for escape-based encodings.
2752 [Bug #526524] (yamamoto)
2754 2002-04-17 Don Porter <dgp@users.sourceforge.net>
2756 * doc/tcltest.n: Removed [saveState] and [restoreState] from
2757 tcltest 2 documentation, effectively deprecating them. [Bug 495660]
2758 * library/tcltest/tcltest.tcl: Made separate export for commands
2759 kept only for tcltest 1 compatibility.
2761 * tests/iogt.test: Revised to run tests in a namespace, rather than
2762 use the useless and buggy [saveState] and [restoreState] commands
2763 of tcltest. Updated to use tcltest 2 as well. [Patch 544911]
2765 2002-04-16 Don Porter <dgp@users.sourceforge.net>
2767 * tests/io.test: Revised to run tests in a namespace, rather than
2768 use the useless and buggy [saveState] and [restoreState] commands
2769 of tcltest. Updated to use tcltest 2 as well. [Patch 544546]
2771 2002-04-15 Miguel Sofer <msofer@users.sourceforge.net>
2773 * generic/tclProc.c:
2774 * tests/proc-old.test: Improved stack trace for TCL_BREAK and
2775 TCL_CONTINUE returns from procs. Patch by Don Porter
2778 * generic/tclExecute.c:
2779 * tests/compile.test: made bytecodes check for a catch before
2780 returning; the compiled [return] is otherwise non-catchable.
2781 [Bug 542142] reported by Andreas Kupries.
2783 2002-04-15 Don Porter <dgp@users.sourceforge.net>
2785 * tests/socket.test: Increased timeout values so that tests have
2786 time to successfully complete even on slow/busy machines. [Bug 523470]
2789 * library/tcltest/tcltest.tcl:
2790 * tests/tcltest.test: Revised [tcltest::test] to return errors
2791 when called with invalid syntax and to accept exactly two arguments
2792 as documented. Improved error messages. [Bug 497446, Patch 513983]
2793 ***POTENTIAL INCOMPATIBILITY***: Incompatible with previous
2794 tcltest 2.* releases, found only in alpha releases of Tcl 8.4.
2796 2002-04-11 Jeff Hobbs <jeffh@ActiveState.com>
2798 * generic/tclNotify.c (TclFinalizeNotifier): remove remaining
2799 unserviced events on finalization.
2801 * win/tcl.m4: Enabled COFF as well as CV style debug info with
2802 --enable-symbols to allow Dr. Watson users to see function info.
2803 More info on debugging levels can be obtained at:
2804 http://msdn.microsoft.com/library/en-us/dnvc60/html/gendepdebug.asp
2806 * tests/ioCmd.test: fixed iocmd-8.15 to have mac and unixPc variants.
2808 * generic/tclParse.c (Tcl_ParseVar): conditionally incr obj
2809 refcount to prevent possible mem leak.
2811 2002-04-08 Daniel Steffen <das@users.sourceforge.net>
2813 * generic/tcl.h: no <sys/types.h> on mac.
2814 * mac/tclMacFile.c: minor fixes to Vince's changes from 03-24.
2816 * mac/tclMacResource.c: added missing Tcl_UtfToExternalDString
2817 conversions of resource file names.
2818 * mac/tclMacSock.c (TcpGetOptionProc): fixed bug introduced
2819 by Andreas on 02-25; changed strcmp's to strncmp's so that
2820 option comparison behaves like on other platforms.
2821 * mac/tcltkMacBuildSupport.sea.hqx (CW Pro6 changes): added
2822 support to allow Tk to hookup C library stderr/stdout to TkConsole.
2825 * tests/encoding.test:
2826 * tests/fileSystem.test:
2827 * tests/ioCmd.test: fixed tests failing on mac: check for
2828 existence of [exec], changed some result strings.
2830 2002-04-06 Jeff Hobbs <jeffh@ActiveState.com>
2832 * unix/tclUnixFCmd.c (Realpath): added a little extra code to
2833 initialize a realpath arg when compiling in PURIFY mode in order
2834 to prevent spurious purify warnings. We should really create our
2835 own realpath implementation, but this will at least quiet purify
2838 2002-04-05 Don Porter <dgp@users.sourceforge.net>
2840 * generic/tclCmdMZ.c (Tcl_SubstObj):
2841 * tests/subst.test: Corrected [subst] so that return codes
2842 TCL_BREAK and TCL_CONTINUE returned by variable substitution
2843 have the same effect as when those codes are returned by command
2844 substitution. [Bug 536879]
2846 2002-04-03 Jeff Hobbs <jeffh@ActiveState.com>
2848 * library/tcltest/tcltest.tcl: added getMatchingFiles back (alias
2849 to GetMatchingFiles), which was a public function in tcltest 1.0.
2851 2002-04-01 Vince Darley <vincentdarley@users.sourceforge.net>
2854 * generic/tclIOUtil.c: invalidate filesystem cache when the
2855 user changes env(HOME). Fixes [Bug #535621]. Also cleaned up
2856 some of the documentation.
2857 * tests/fileSystem.test: added test for bug just fixed.
2859 2002-04-01 Kevin Kenny <kennykb@acm.org>
2861 * win/tclWinTime.c (Tcl_GetTime): made the checks of clock
2862 frequency more permissive to cope with the fact that Win98SE
2863 is observed to return 1.19318 in place of 1.193182 for the
2864 performance counter frequency.
2866 2002-03-29 Jeff Hobbs <jeffh@ActiveState.com>
2868 * generic/tclCmdMZ.c (Tcl_TraceObjCmd, TraceVarProc)
2869 (TraceCommandProc, TclTraceCommandObjCmd): corrected
2870 potential double-free of traces on variables by flagging in
2871 Trace*Proc that it will free the var in case the eval wants to
2872 delete the var trace as well. [Bug #536937]
2873 Also converted Tcl_UntraceVar -> Tcl_UntraceVar2 and Tcl_Eval to
2874 Tcl_EvalEx in Trace*Proc for slight efficiency improvement.
2876 2002-03-29 Don Porter <dgp@users.sourceforge.net>
2879 * generic/tclBasic.c (Tcl_EvalObjv,Tcl_EvalEx,Tcl_EvalObjEx):
2880 * generic/tclCompile.h (TclCompEvalObj):
2881 * generic/tclExecute.c (TclCompEvalObj,TclExecuteByteCode):
2882 * tests/basic.test: Corrected problems with Tcl_AllowExceptions
2883 having influence over the wrong scope of Tcl_*Eval* calls. Patch
2884 from Miguel Sofer. Report from Jean-Claude Wippler. [Bug 219181]
2886 2002-03-28 Don Porter <dgp@users.sourceforge.net>
2888 * generic/tclVar.c: Refactored CallTraces to collect repeated
2889 handling of its returned value into CallTraces itself.
2891 2002-03-28 David Gravereaux <davygrvy@pobox.com>
2893 * tools/feather.bmp:
2894 * tools/man2help.tcl:
2895 * tools/man2help2.tcl:
2896 * win/makefile.vc: More winhelp target fixups. Added a feather
2897 bitmap to the non-scrollable area and changed the color to be
2898 yellow from a plain white. The colors can be whatever we want
2899 them to be, but thought I would start with something bold.
2904 * doc/UpVar.3: .AP macro syntax repair.
2906 2002-03-27 David Gravereaux <davygrvy@pobox.com>
2908 * tools/man2help.tcl:
2909 * win/makefile.vc: winhelp target now copies all needed files
2910 from tools/ to a workarea under $(OUT_DIR) and builds it from
2911 there. No build cruft is left in tools/ anymore. All paths
2912 used in man2help.tcl are now relative to where the script is.
2915 2002-03-27 David Gravereaux <davygrvy@pobox.com>
2918 * win/buildall.vc.bat:
2921 * win/nmakehlp.c (new):
2922 * win/rules.vc: First draft fix for [Bug 527941]. More changes
2923 need to done to the makehelp target to get to stop leaving build
2924 files in the tools/ directory. This does not address the syntax
2925 errors in the man files. Having the contents of tcl.hpj(.in)
2926 inside makefile.vc allows for version numbers to be replaced with
2929 The new nmakehlp.c is built by rules.vc in preprocessing and removes
2930 the need to use tricky shell syntax that wasn't compatible on Win9x
2931 systems. Clean targets made Win9x complient. This is a first draft
2932 repair for [Bug 533862].
2934 2002-03-28 Miguel Sofer <msofer@users.sourceforge.net>
2936 * generic/tclBasic.c (Tcl_EvalEx): passing the correct commandSize
2937 to TclEvalObjvInternal. [Bug 219362], fix by David Knoll.
2939 2002-03-28 Miguel Sofer <msofer@users.sourceforge.net>
2941 * generic/tclBasic.c (Tcl_EvalEx):
2942 * tests/basic.test: avoid exceptional returns at level 0
2945 2002-03-27 Don Porter <dgp@users.sourceforge.net>
2947 * doc/tcltest.n ([mainThread]):
2948 * library/tcltest/tcltest.tcl:
2949 * tests/tcltest.test: Major code cleanup to deal with whitespace,
2950 coding conventions, and namespace issues, with several minor bugs
2951 fixed in the process.
2953 * tests/main.test: Added missing [after cancel]s.
2955 2002-03-25 Don Porter <dgp@users.sourceforge.net>
2957 * tests/main.test: Removed workarounds for Bug 495977.
2959 * library/tcltest/tcltest.tcl: Keep the value of $::auto_path
2960 unchanged, so that the tcltest package can test code that depends
2961 on auto-loading. If a testing application needs $::auto_path pruned,
2962 it should do that itself. [Bug 495726]
2963 Improve the processing of the -constraints option to [test] so that
2964 constraint lists can have arbitrary whitespace, and non-lists don't
2965 blow things up. [Bug 495977]
2966 Corrected faulty variable initialization. [Bug 534845]
2968 2002-03-25 Miguel Sofer <msofer@users.sourceforge.net>
2970 * doc/CrtTrace.3: small doc correction
2971 * generic/tclBasic.c (Tcl_DeleteTrace): Allow NULL callback on
2972 trace deletions [Bug 534728] (Hemang Lavana).
2974 2002-03-24 Miguel Sofer <msofer@users.sourceforge.net>
2976 * generic/tclBasic.c (Tcl_EvalObjv): replaced obscure, incorrect
2977 code as described in [Bug 533907] (Don Porter).
2979 2002-03-24 Don Porter <dgp@users.sourceforge.net>
2981 * library/tcltest/tcltest.tcl: Use [interpreter] to set/query the
2982 executable currently running the tcltest package. [Bug 454050]
2984 * library/tcltest/tcltest.tcl: Allow non-proc commands to be used
2985 as the customization hooks. [Bug 495662]
2987 2002-03-24 Vince Darley <vincentdarley@users.sourceforge.net>
2989 * generic/tclFilename.c:
2990 * generic/tclFCmd.c:
2991 * generic/tclTest.c:
2993 * generic/tclIOUtil.c:
2997 * unix/tclUnixFile.c:
2998 * unix/tclUnixFCmd.c:
3003 * tests/fileName.test:
3004 * tests/fileSystem.test: (new file)
3005 * tests/winFCmd.test: fix [Bug 511666] and [Bug 511658],
3006 and improved documentation of some aspects of the filesystem,
3007 particularly 'Tcl_FSMatchInDirectory' which now might match
3008 a single file/directory only, and 'file normalize' which
3009 wasn't very clear before. Removed inconsistency betweens
3010 docs and the Tcl_Filesystem structure. Also fixed
3011 [Bug 523217] and corrected file normalization on Unix so that
3012 it expands symbolic links. Added some new tests of the
3013 filesystem code (in the new file 'fileSystem.test'), and
3014 some extra tests for correct handling of symbolic links.
3015 Fix to [Bug 530960] which shows up on Win98. Made comparison
3016 with ".com" case insensitive in tclWinPipe.c
3018 ***POTENTIAL INCOMPATIBILITY***: But only between alpha
3019 releases (users of the new Tcl_Filesystem lookup table in Tcl
3020 8.4a4 need to handle the new way in which Tcl may call
3021 Tcl_FSMatchInDirectory, and 'file normalize' on unix now
3022 behaves correctly). Only known impact is with the 'tclvfs'
3025 2002-03-22 Miguel Sofer <msofer@users.sourceforge.net>
3027 * tests/basic.test (basic-46.1): adding test for [Bug 533758],
3028 fixed earlier today.
3030 2002-03-22 Jeff Hobbs <jeffh@ActiveState.com>
3032 * win/tclWinInt.h: moved undef of TCL_STORAGE_CLASS. [Bug #478579]
3034 2002-03-22 Miguel Sofer <msofer@users.sourceforge.net>
3036 * generic/tclBasic.c (Tcl_EvalObjEx):
3037 * generic/tclExecute.c (TclCompEvalObj): fixed the errorInfo for
3038 return codes other than (TCL_OK, TCL_ERROR) to runLevel 0
3039 [Bug 533758]. Removed the static RecordTracebackInfo(), as its
3040 functionality is easily replicated by Tcl_LogCommandInfo. Bug
3041 and redundancy noted by Don Porter.
3043 2002-03-21 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3045 * doc/expr.n: Improved documentation for ceil and floor [Bug 530535]
3047 2002-03-20 Don Porter <dgp@users.sourceforge.net>
3052 * generic/tcl.h (Tcl_VarTraceProc):
3053 * generic/tcl.decls (Tcl_GetVar2, Tcl_SetVar2, Tcl_TraceVar2,
3054 Tcl_UnsetVar2, Tcl_UntraceVar2, Tcl_UpVar2, Tcl_VarTraceInfo2,
3055 Tcl_GetVar2Ex, TclSetVar2Ex):
3056 * generic/tclCmdMZ.c (TraceVarProc):
3057 * generic/tclEnv.c (EnvTraceProc):
3058 * generic/tclEvent.c (VwaitVarProc):
3059 * generic/tclInt.decls (TclLookupVar,TclPrecTraceProc):
3060 * generic/tclLink.c (LinkTraceProc):
3061 * generic/tclUtil.c (TclPrecTraceProc):
3062 * generic/tclVar.c (CallTraces, MakeUpvar, VarErrMsg, TclLookupVar,
3063 Tcl_GetVar2, Tcl_SetVar2, Tcl_TraceVar2, Tcl_UnsetVar2,
3064 Tcl_UntraceVar2, Tcl_UpVar2, Tcl_VarTraceInfo2, Tcl_GetVar2Ex,
3065 TclSetVar2Ex): Updated interfaces of generic/tclVar.c according
3066 to TIP 27. In particular, the "part2" arguments were CONSTified.
3068 * generic/tclDecls.h:
3069 * generic/tclIntDecls.h: make genstubs
3071 2002-03-15 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3073 * tests/compile.test (compile-12.3): Test to detect bug 530320.
3074 * generic/tclCompile.c (TclCompileTokens): Fixed buffer overrun
3075 reported in bug 530320.
3077 2002-03-14 Mo DeJong <mdejong@users.sourceforge.net>
3079 * win/configure: Regen.
3080 * win/configure.in: Add configure time test for SEH
3081 support in the compiler.
3082 * win/tclWin32Dll.c (ESP, EBP, TclpCheckStackSpace,
3083 _except_checkstackspace_handler):
3084 * win/tclWinChan.c (ESP, EBP, Tcl_MakeFileChannel,
3085 _except_makefilechannel_handler):
3086 * win/tclWinFCmd.c (ESP, EBP, DoRenameFile,
3087 _except_dorenamefile_handler,
3088 DoCopyFile, _except_docopyfile_handler):
3089 Implement SEH support under gcc using inline asm.
3090 Tcl and Tk should now compile with Mingw 1.1. [Patch 525746]
3092 2002-03-14 Mo DeJong <mdejong@users.sourceforge.net>
3094 * win/tclWinFCmd.c (DoRenameFile, DoCopyFile): Handle
3095 an SEH exception with EXCEPTION_EXECUTE_HANDLER instead
3096 of restarting the faulting instruction with
3097 EXCEPTION_CONTINUE_EXECUTION. Bug 466102 provides an
3098 example of how restarting could send Tcl into an
3099 infinite loop. [Patch 525746]
3101 2002-03-11 Mo DeJong <mdejong@users.sourceforge.net>
3103 * win/tclWinFCmd.c (DoRenameFile, DoCopyFile, DoDeleteFile,
3104 DoRemoveJustDirectory): Make sure we don't pass NULL or ""
3105 as a path name to Win32 API functions since this was
3106 crashing under Windows 98.
3108 2002-03-11 Don Porter <dgp@users.sourceforge.net>
3110 * library/tcltest/tcltest.tcl:
3111 * library/tcltest/pkgIndex.tcl: Bumped tcltest package to 2.0.2.
3113 2002-03-11 Mo DeJong <mdejong@users.sourceforge.net>
3115 * library/tcltest/tcltest.tcl (getMatchingFiles): Pass
3116 a proper list to foreach to avoid munging a Windows
3117 patch like D:\Foo\Bar into D:FooBar before the glob.
3119 2002-03-11 Mo DeJong <mdejong@users.sourceforge.net>
3121 * generic/tclEncoding.c: Fix typo in comment.
3122 * generic/tclIO.c (DoReadChars, ReadBytes, ReadChars):
3123 Use NULL value instead of pointer set to NULL to make
3124 things more clear. Reorder arguments so that they
3125 match the function signatures. Cleanup little typos
3126 and add more descriptive comment.
3128 2002-03-08 Mo DeJong <mdejong@users.sourceforge.net>
3130 * win/README: Update to indicate that Mingw 1.1 is
3131 required to build Tcl. Add section describing new
3132 msys based build process. Update Cygwin build
3133 instructions so users know where to find Mingw 1.1.
3135 2002-03-08 Jeff Hobbs <jeffh@ActiveState.com>
3137 * win/tclWinFCmd.c (DoCopyFile): correctly set retval to TCL_OK.
3139 2002-03-07 Mo DeJong <mdejong@users.sourceforge.net>
3141 * win/tclWin32Dll.c (TclpCheckStackSpace):
3142 * win/tclWinFCmd.c (DoRenameFile, DoCopyFile): Replace
3143 hard coded constants with Win32 symbolic names.
3144 Move control flow statements out of __try blocks
3145 since the documentation indicates it is frowned upon.
3147 2002-03-07 Don Porter <dgp@users.sourceforge.net>
3150 * generic/tclInterp.c(Tcl_InterpObjCmd,SlaveObjCmd,SlaveRecursionLimit):
3151 * generic/tclTest.c:
3152 * tests/interp.test: Added the [interp recursionlimit] command to
3153 set/query the recursion limit of an interpreter. Proposal and
3154 implementation from Stephen Trier. [TIP 87, Patch 522849]
3156 2002-03-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3158 * generic/tcl.h, tools/tcl.wse.in, unix/configure.in,
3159 * unix/tcl.spec, win/README.binary, win/configure.in, README:
3160 Bumped patchlevel; this might need to change in the future, but it
3161 will help us distinguish between the CVS version and the most
3162 recent released version.
3164 2002-03-06 Miguel Sofer <msofer@users.sourceforge.net>
3166 * generic/tclInt.h: for unshared objects, TclDecrRefCount now
3167 frees the internal rep before the string rep - just like the
3168 non-macro Tcl_DecrRefCount/TclFreeObj [Bug 524802].
3170 2002-03-06 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3172 * doc/lsearch.n: Documentation of new features, plus examples.
3173 * tests/lsearch.test: Tests of new features.
3174 * generic/tclCmdIL.c (Tcl_LsearchObjCmd): TIP#80 support. See
3175 http://purl.org/tcl/tip/80 for details.
3177 2002-03-05 Jeff Hobbs <jeffh@ActiveState.com>
3179 *** 8.4a4 TAGGED FOR RELEASE ***
3181 * unix/tclUnixChan.c: initial remedy for [Bug #525783] flush
3182 problem introduced by TIP #35. This may not satisfy true serial
3183 channels, but it restores the correct flushing of std* channels on
3186 * unix/README: added --enable-langinfo doc.
3189 * tools/tcl.wse.in: fixed URL refs to use www.tcl.tk or SF.
3191 2002-03-04 Jeff Hobbs <jeffh@ActiveState.com>
3198 * win/README.binary: updated to use www.tcl.tk URL.
3200 * unix/Makefile.in: added older ChangeLogs to dist target.
3203 * tests/encoding.test: corrected iso2022 encoding results.
3205 * generic/tclEncoding.c (EscapeFromUtfProc): corrected output of
3206 escape codes as per RFC 1468. [Patch #474358] (taguchi)
3207 (TclFinalizeEncodingSubsystem): corrected potential double-free
3208 when encodings were finalized on exit. [Bug #219314, #524674]
3210 2002-03-01 Jeff Hobbs <jeffh@ActiveState.com>
3212 * library/encoding/iso2022-jp.enc:
3213 * library/encoding/iso2022.enc:
3214 * tools/encoding/iso2022-jp.esc:
3215 * tools/encoding/iso2022.esc: gave <ESC>$B precedence over <ESC>$@,
3216 based on comments (point 1) in [Bug #219283] (rfc 1468)
3218 * tests/encoding.test: added encoding-23.* tests
3219 * generic/tclIO.c (FilterInputBytes): reset the TCL_ENCODING_START
3220 flags in the ChannelState when using 'gets'. [Bug #523988]
3221 Also reduced the value of ENCODING_LINESIZE from 30 to 20 as this
3222 seems to improve the performance of 'gets' according to tclbench.
3224 2002-02-28 Jeff Hobbs <jeffh@ActiveState.com>
3226 * generic/tclCmdMZ.c (TraceCommandProc): ensure that TraceCommandInfo
3227 structure was also deleted when a command was deleted to prevent a
3230 * generic/tclBasic.c (Tcl_CreateObjTrace): set tracePtr->flags
3233 * generic/tclTimer.c (TimerExitProc): remove remaining events in
3236 2002-02-28 Miguel Sofer <msofer@users.sourceforge.net>
3238 * generic/tclNamesp.c: allow cached fully-qualified namespace
3239 names to be usable from different namespaces within the same
3240 interpreter without forcing a new lookup [Patch 458872].
3242 2002-02-28 Miguel Sofer <msofer@users.sourceforge.net>
3244 * generic/tclExecute.c: Replaced a few direct stack accesses
3245 with the POP_OBJECT() macro [Bug 507181] (Don Porter).
3247 2002-02-27 Don Porter <dgp@users.sourceforge.net>
3250 * generic/tcl.decls (Tcl_GetIndexFromObjStruct):
3251 * generic/tclIndexObj.c (Tcl_GetIndexFromObjStruct): Revised the
3252 prototype of the Tcl_GetIndexFromObjStruct to take its struct
3253 table as a (CONST VOID *) argument, better describing what it is,
3254 maintaining source compatibility, and adding CONST correctness
3255 according to TIP 27. Thanks to Joe English for an elegant
3256 solution. [Bug 520304]
3258 * generic/tclDecls.h: make genstubs
3260 * generic/tclMain.c (Tcl_Main,StdinProc): Corrected some reference
3261 count management errors on the interactive command Tcl_Obj found by
3262 Purify. Thanks to Jeff Hobbs for the report and assistance.
3264 2002-02-27 Jeff Hobbs <jeffh@ActiveState.com>
3266 * generic/tclBasic.c (Tcl_EvalTokensStandard): corrected mem leak
3269 * generic/tclTest.c (TestStatProc[123]): correct harmless UMRs.
3271 * generic/tclLink.c (Tcl_LinkVar): correct mem leak in error case.
3273 2002-02-27 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3275 * tests/socket.test (2.7): Accepted and applied patch for Tcl SF
3276 bug #523470 provided by Don Porter <dgp@users.sourceforge.net>
3277 to avoid timing problems in that test.
3279 * unix/tclUnixChan.c (TclpOpenFileChannel): Added code to regonize
3280 "/dev/tty" (by name) and to not handle it as tty / serial
3281 line. This is the controlling terminal and is special. Setting
3282 it into raw mode as is done for other tty's is a bad idea. This
3283 is a hackish fix for expect SGF Bug #520624. The fix has
3284 limitation: Tcl_MakeFileChannel handles tty's specially too, but
3285 is unable to recognize /dev/tty as it only gets a file
3286 descriptor, and no name for it.
3288 2002-02-26 Jeff Hobbs <jeffh@ActiveState.com>
3290 * generic/tclCmdAH.c (StoreStatData): corrected mem leak.
3292 * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): prevent obj leak in
3293 remedial regsub case.
3295 * generic/tclFileName.c (Tcl_TranslateFileName): decr refcount for
3296 error case to prevent mem leak.
3298 * generic/tclVar.c (Tcl_ArrayObjCmd): removed extra obj allocation.
3300 * unix/tclUnixSock.c (Tcl_GetHostName): added an extra
3301 gethostbyname check to guard against failure with truncated
3302 names returned by uname.
3305 * unix/tcl.m4 (SC_SERIAL_PORT): added sys/modem.h check and defined
3306 _XOPEN_SOURCE_EXTENDED for HP-11 to get updated header decls.
3308 * unix/tclUnixChan.c: added Unix implementation of TIP #35, serial
3309 port support. [Patch #438509] (schroedter)
3311 2002-02-26 Miguel Sofer <msofer@users.sourceforge.net>
3313 * generic/tclCmpCmds.c: (bugfix to the bugfix, hopefully the last)
3314 Bugfix to the new [for] compiling code: was setting a
3315 exceptArray parameter using another param which wasn't yet
3316 initialised, thus filling it with noise.
3318 2002-02-25 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3320 * mac/tclMacSock.c (TcpGetOptionProc): Changed to recognize the
3321 option "-error". Essentially ignores the option, always
3322 returning an empty string.
3324 2002-02-25 Jeff Hobbs <jeffh@ActiveState.com>
3331 * doc/TCL_MEM_DEBUG.3: Updated documentation to describe the ckalloc,
3332 ckfree, ckrealloc, attemptckalloc, and attemptckrealloc macros, and
3333 to accurately describe when and how they are used. [Bug #497459] (dgp)
3335 * generic/tclHash.c (AllocArrayEntry, AllocStringEntry):
3336 Before invoking ckalloc when creating a Tcl_HashEntry,
3337 check that the amount of memory being allocated is
3338 at least as large as sizeof(Tcl_HashEntry). The previous
3339 code was allocating memory regions that were one
3340 or two bytes short. [Bug #521950] (dejong)
3342 2002-02-25 Miguel Sofer <msofer@users.sourceforge.net>
3344 * generic/tclBasic.c (Tcl_EvalEx): avoiding a buffer overrun
3345 reported by Joe English, and restoring tcl7.6 behaviour for
3346 [subst]: badly terminated nested scripts will raise an error
3347 and not be evaluated. [Bug #495207]
3349 2002-02-25 Don Porter <dgp@users.sourceforge.net>
3351 * unix/tclUnixPort.h: corrected strtoll prototype mismatch on Tru64.
3352 * compat/strtod.c (strtod): simplified #includes
3353 * compat/strtol.c (strtol): gather result in a long before returning
3354 as a long: necessary on platforms where sizeof(int) != sizeof(long).
3356 2002-02-25 Daniel Steffen <das@users.sourceforge.net>
3358 * unix/tclLoadDyld.c: updated to use Mac OS X 10.1 dyld APIs that
3359 have more libdl-like semantics. (bug #514392)
3361 2002-02-25 Miguel Sofer <msofer@users.sourceforge.net>
3363 * generic/tclCompCmds: fixing a bug in patch dated 2002-02-22, in
3364 the code for [for] and [while]. Under certain conditions, for long
3365 bodies, the exception range parameters were badly computed. Tests
3366 forthcoming: I still can't reproduce the conditions in the
3367 testsuite (!), although the bug (with assorted segfault or panic!)
3368 can be triggered from the console or with the new parse.bench in
3371 2002-02-25 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3373 * compat/strtoul.c, compat/strtol.c, compat/strtod.c: Added UCHAR,
3374 CONST and #includes to clean up GCC output.
3376 2002-02-23 Don Porter <dgp@users.sourceforge.net>
3378 * compat/strtoull.c (strtoull):
3379 * compat/strtoll.c (strtoll):
3380 * compat/strtoul.c (strtoul): Fixed failure to handle leading
3381 sign symbols '+' and '-' and '0X' and raise overflow errors.
3382 [Bug 440916] Also corrects prototype and errno problems.
3384 2002-02-23 Mo DeJong <mdejong@users.sourceforge.net>
3387 * unix/tcl.m4 (SC_CONFIG_CFLAGS): Link with -n32
3388 instead of -32 when building on IRIX64-6.* system.
3391 2002-02-22 Don Porter <dgp@users.sourceforge.net>
3394 * generic/tclObj.c: renamed global variable emptyString ->
3395 tclEmptyString because it is no longer static.
3396 * generic/tclPkg.c: Fix for panic when library is loaded on a
3397 platform without backlinking without proper use of stubs. [Bug 476537]
3399 2002-02-22 Jeff Hobbs <jeffh@ActiveState.com>
3401 * tests/regexpComp.test: updated regexp-11.[1-4] to match changes
3402 in regexp.test for new regsub syntax
3405 * unix/tcl.m4: added --enable-64bit support for AIX-4 (using -q64
3406 flag) when using IBM's xlc compiler.
3408 * tests/safe.test: updated safe-8.5 and safe-8.7
3409 * library/safe.tcl (CheckFileName): removed the limit on
3410 sourceable file names (was only *.tcl or tclIndex files with no
3411 more than one dot and 14 chars). There is enough internal
3412 protection in a safe interpreter already. Fixes [Tk Bug #521560].
3414 2002-02-22 Miguel Sofer <msofer@users.sourceforge.net>
3416 * generic/tclCompCmds: [FR 465811]. Optimising [if], [for] and
3417 [while] for constant conditions; in addition, [for] and [while]
3418 are now compiled with the "loop rotation" optimisation (thanks to
3421 2002-02-22 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3423 --- TIP#76 CHANGES ---
3424 * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): Final-argument-less
3425 [regsub] returns the modified string.
3426 * doc/regsub.n: Updated docs.
3427 * tests/regexp.test: Updated and added tests.
3429 * compat/strtoll.c (strtoll):
3430 * compat/strtoull.c (strtoull):
3431 * unix/tclUnixPort.h:
3432 * win/tclWinPort.h: Const-ing 64-bit compatability declarations.
3433 Note that the return pointer is non-const because it is entirely
3434 legal for the functions to be called from somewhere that owns the
3435 string being passed. Fixes problem reported by Larry Virden.
3437 2002-02-21 David Gravereaux <davygrvy@pobox.com>
3439 * win/mkd.bat (removed):
3440 * win/coffbase.txt (new):
3442 * win/makefile.vc: Changed the 'setup' target to stop using
3443 the mkd.bat file and just make the directory right in the rule.
3444 Same change to makefile.bc. configure.in nor Makefile.in use
3447 coffbase.txt will be the master list for our "prefered base
3448 addresses" set by the linker. This should improve load-time
3449 (NT only) by avoiding relocations. Submissions to the list
3450 by extension authors are encouraged.
3452 Added a 'tidy' target to compliment 'clean' and 'hose' to remove
3453 just the outputs. Also removed the $(winlibs) macro as it wasn't
3457 1) get the winhelp target to stop building in the tools/
3459 2) stop using rmd.bat
3460 3) add more dependacy rules.
3462 * win/tclAppInit.c: Reverted back to -r1.6, as the header file
3463 change to tclPort.h won't allow for easy embedded support
3464 outside of the source dist. Thanks to Don Porter for pointing
3467 2002-02-21 David Gravereaux <davygrvy@pobox.com>
3470 * win/rules.vc: Added a new "loimpact" option that sets the
3471 -ws:aggressive linker option. Off by default. It's said to
3472 keep the heap use low at the expense of alloc speed.
3474 * win/tclAppInit.c: Changed #include "tcl.h" to be tclPort.h to
3475 remove the raw windows.h include. tclPort.h brings in windows.h
3476 already and lessens the pre-compiled-header mush and the randomly
3477 useless #pragma comment (lib,...) references throughout the big
3478 windows.h tree (as observed at high linker warning levels).
3480 2002-02-21 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3482 * generic/tcl.h: Better guessing of LP64/ILP32 architecture, but
3483 now sensitive to presence of (suitable) <limits.h>
3485 2002-02-20 Don Porter <dgp@users.sourceforge.net>
3487 * generic/tcl.decls (Tcl_RegExpRange,Tcl_GetIndexFromObjStruct):
3488 Overlooked a few source incompatibilities. Now using CONST84.
3489 * generic/tclDecls.h: make genstubs
3490 * generic/tcl.h (Tcl_CmdObjTraceProc): silence warning from Sun
3493 2002-02-20 David Gravereaux <davygrvy@pobox.com>
3495 * win/buildall.vc.bat:
3497 * win/rules.vc: General clean-ups. Added compiler and linker tests
3498 for a) the pentium 0x0F errata, b) optimizing (not all have this),
3499 and c) linker v6 section alignment confusion. All these are tested
3500 first to make sure any D4002 or LNK1117 warnings aren't displayed.
3501 The pentium 0x0F errata is a recommended switch. The v5 linker's
3502 section alignment default is 512, but the v6 linker was changed
3503 to 4096 in an attempt to speed loading on Win98. I changed the
3504 default to always be 512 across both linkers, unless linking
3505 statically, then 4096 is used for the claimed speed effect. Using
3506 a 512 alignment saves 12k bytes of dead space in the DLL.
3508 Added IA64 B-stepping errata switch when the compiler supports it.
3510 Added profiling to $(lflags) when requested and also removed the
3511 explict -entry option as the default works fine as is.
3513 Removed win/tclWinInit.c from the special case section to let it
3514 use the common implicit rule as the $(EXTFLAGS) macro it had was
3515 never referenced anywhere.
3517 2002-02-20 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3519 * generic/tcl.h: Added code to guess the correct settings for
3520 TCL_WIDE_INT_IS_LONG and TCL_WIDE_INT_TYPE when configure doesn't
3521 tell us them, as can happen with extensions.
3523 2002-02-19 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3525 * doc/format.n: Updated docs to list the specification.
3526 * generic/tclCmdAH.c (Tcl_FormatObjCmd): Made behaviour on 64-bit
3527 platforms correctly meet the specification, that %d works with the
3528 native word-sized integer, instead of trying to guess (wrongly)
3529 from the value being passed.
3531 2002-02-19 Don Porter <dgp@users.sourceforge.net>
3533 * changes: First draft of updated changes for 8.4a4 release.
3535 2002-02-15 Jeff Hobbs <jeffh@ActiveState.com>
3537 * unix/tclUnixPort.h: add strtoll/strtoull declarations for
3538 platforms that do not define them.
3540 * generic/tclIndexObj.c (STRING_AT): removed ptrdiff_t cast and
3541 use of VOID* in default case (GNU-ism).
3543 2002-02-15 Kevin Kenny <kennykb@acm.org>
3547 * compat/strtoull.c:
3548 * generic/tclIOUtil.c:
3549 * generic/tclPosixStr.c:
3550 * generic/tclTest.c:
3551 * generic/tclTestObj.c:
3553 * win/Makefile.vc: Further tweaks to the TIP 72 patch to make it
3556 2002-02-15 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3560 * tclIndexObj.c: Touchups to the TIP 72 patch to make it
3561 compileable under Windows again. The changes are not complete,
3562 there is one nasty regarding _stati64
3564 2002-02-15 Donal K. Fellows <fellowsd@cs.man.ac.uk>
3566 +----------------------+
3567 | TIP #72 IMPLEMENTED. |
3568 +----------------------+
3570 There are a lot of changes from this TIP, so please see
3571 http://purl.org/tcl/tip/72.html for discussion of
3572 backward-compatability issues, but the main ones modifications are
3575 * generic/tcl.h: New types.
3576 * generic/tcl.decls: New public functions.
3577 * generic/tclExecute.c: 64-bit aware bytecode engine.
3578 * generic/tclBinary.c: 64-bit handling in [binary] command.
3579 * generic/tclScan.c: 64-bit handling in [scan] command.
3580 * generic/tclCmdAH.c: 64-bit handling in [file] and [format]
3582 * generic/tclBasic.c: New "wordSize" entry in ::tcl_platform.
3583 * generic/tclFCmd.c: Large-file support (with many consequences.)
3584 * generic/tclIO.c: Large-file support (with many consequences.)
3585 * compat/strtoll.c, compat/strtoull.c: New support functions.
3586 * unix/tcl.m4, unix/configure: 64-bit support and greatly enhanced
3589 Most other changes, including all those in doc/* and test/* as
3590 well as the majority in the platform directories, follow on from
3593 Also coming out of the woodwork:
3594 * generic/tclIndex.c: Better support for Cray PVP.
3595 * win/tclWinMtherr.c: Better Borland support.
3597 Note that, in a number of places through the Unix part of the
3598 platform support, there are Tcl_Platform* references. These are
3599 expanded into the correct way to call that particular underlying
3600 function, i.e. with or without a '64' suffix, and should be used
3601 by people working on the core in preference to the API functions
3602 they overlay so that the code remains portable depending on the
3603 presence or absence of 64-bit support on the underlying platform.
3605 ***POTENTIAL INCOMPATIBILITY***: Extracted from the TIP
3607 SUMMARY OF INCOMPATIBILITIES AND FIXES
3608 ======================================
3610 The behaviour of expressions containing constants that appear
3611 positive but which have a negative internal representation will
3612 change, as these will now usually be interpreted as wide
3613 integers. This is always fixable by replacing the constant with
3616 Extensions creating new channel types will need to be altered as
3617 different types are now in use in those areas. The change to the
3618 declaration of Tcl_FSStat and Tcl_FSLstat (which are the new
3619 preferred API in any case) are less serious as no non-alpha
3620 releases have been made yet with those API functions.
3622 Scripts that are lax about the use of the l modifier in format and
3623 scan will probably need to be rewritten. This should be very
3624 uncommon though as previously it had absolutely no effect.
3626 Extensions that create new math functions that take more than one
3627 argument will need to be recompiled (the size of Tcl_Value
3628 changes), and functions that accept arguments of any type
3629 (TCL_EITHER) will need to be rewritten to handle wide integer
3630 values. (I do not expect this to affect many extensions at all.)
3632 2002-02-14 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3634 * generic/tclIOCmd.c (Tcl_GetsObjCmd): Trivial fix for bug
3635 #517503, a memory leak reported by Miguel Sofer
3636 <msofer@users.sourceforge.net>. The leak happens if an error
3637 occurs for "set var [gets $chan]" and leak one empty object.
3639 2002-02-12 David Gravereaux <davygrvy@pobox.com>
3641 * djgpp/ (new directory)
3642 * djgpp/Makefile (new):
3643 * unix/tclAppInit.c:
3645 * unix/tclUnixFCmd.c:
3646 * unix/tclUnixFile.c:
3647 * unix/tclUnixInit.c:
3648 * unix/tclUnixPort.h: Early stage of DJGPP support for building
3649 Tcl on DOS. Dynamic loading isn't working, yet. Requires watt32
3650 for the TCP/IP stack. No autoconf, yet. Barely tested, but
3651 makes a working exe that runs Tcl in protected-mode, flat memory.
3652 [exec] and pipes will need the most work as multi-tasking on DOS
3653 has to be carefully.
3655 2002-02-10 Kevin Kenny <kennykb@acm.org>
3659 * generic/tcl.decls:
3661 * generic/tclBasic.c:
3663 * generic/tclTest.c:
3664 * tests/basic.test: Added Tcl_CreateObjTrace,
3665 Tcl_GetCommandInfoFromToken and Tcl_SetCommandInfoFromToken.
3668 * generic/tclDecls.h:
3669 * generic/tclStubInit.c: Regenerated Stubs tables.
3671 2002-02-08 Jeff Hobbs <jeffh@ActiveState.com>
3674 * unix/tcl.m4: added -pthread for FreeBSD to EXTRA_CFLAGS and
3675 LDFLAGS. Also triggered nodots only for FreeBSD-3.
3676 Added AC_DEFINE(_POSIX_PTHREAD_SEMANTICS) for Solaris.
3678 * unix/tclUnixPort.h:
3679 * unix/tclUnixThrd.c: added thread-safe versions of readdir,
3680 localtime, gmtime and inet_ntoa for threaded build. (jgdavidson)
3682 * generic/tclScan.c (Tcl_ScanObjCmd): prevented ckfree being
3683 called on a pointer to NULL.
3685 2002-02-07 Don Porter <dgp@users.sourceforge.net>
3693 * generic/tcl.decls:
3695 * generic/tclEncoding.c:
3697 * generic/tclFileName.c:
3698 * generic/tclIOUtil.c:
3700 * generic/tclUtil.c:
3702 * unix/tclUnixFile.c:
3703 * unix/tclUnixInit.c:
3704 * unix/tclUnixPipe.c:
3705 * win/tclWin32Dll.c:
3708 * win/tclWinInit.c: Partial TIP 27 rollback. Following routines
3709 restored to return (char *): Tcl_DStringAppend,
3710 Tcl_DStringAppendElement, Tcl_JoinPath, Tcl_TranslateFileName,
3711 Tcl_ExternalToUtfDString, Tcl_UtfToExternalDString,
3712 Tcl_UniCharToUtfDString, Tcl_GetCwd, Tcl_WinTCharToUtf. Also
3713 restored Tcl_WinUtfToTChar to return (TCHAR *) and
3714 Tcl_UtfToUniCharDString to return (Tcl_UniChar *). Modified
3715 some callers. This change recognizes that Tcl_DStrings are
3716 de-facto white-box objects.
3718 * generic/tclDecls.h:
3719 * generic/tclPlatDecls.h: make genstubs
3721 * generic/tclCmdMZ.c: corrected use of C++-style comment.
3723 2002-02-06 Jeff Hobbs <jeffh@ActiveState.com>
3726 * generic/tclScan.c (Tcl_ScanObjCmd): corrected scan 0x... %x
3727 handling that didn't accept the 0x as a prelude to a base 16
3728 number. [Bug #495213]
3730 * generic/tclCompCmds.c (TclCompileRegexpCmd): made early check
3731 for bad RE to stop checking further.
3733 * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): added special case to
3734 search for simple 'string map' style regsub calls.
3735 Delayed creation of resultPtr object until an initial match is
3736 made, as the input string object can then be reused for no matches.
3737 (Tcl_StringObjCmd): optimization improvements to the STR_MAP
3738 algorithm for zero-length and nocase cases.
3740 * tests/regexp.test:
3741 * tests/regexpComp.test: extra code coverage tests.
3743 * tests/string.test: added 10.18 and 10.19 extra tests.
3745 * generic/regc_locale.c (casecmp): slight performance improvement.
3747 2002-02-05 Don Porter <dgp@users.sourceforge.net>
3749 * library/http/http.tcl:
3750 * library/http/pkgIndex.tcl: Corrected use of http::error when
3751 ::error was intended. Bump to http 2.4.2.
3753 2002-02-04 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3755 * unix/tclUnixChan.c (FileOutputProc): Fixed [bug 465765] reported
3756 by Dale Talcott <daletalcott@users.sourceforge.net>. Avoid
3757 writing nothing into a file as STREAM based implementations will
3758 consider this a EOF (if the file is a pipe). Not done in the
3759 generic layer as this type of writing is actually useful to
3760 check the state of a socket.
3762 * doc/open.n: Fixed [Bug 511540], added cross-reference to 'pid'
3763 as the command to use to retrieve the pid of a command pipeline
3766 2002-02-01 Jeff Hobbs <jeffh@ActiveState.com>
3768 * generic/tclCmdMZ.c (Tcl_RegexpObjCmd): handle quirky about case
3769 earlier to avoid shimmering problem.
3771 2002-02-01 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3773 * tests/io.test: io-39.22 split into two tests, one platform
3774 dependent, the other not. -eofchar is not empty on the windows
3777 2002-02-01 Vince Darley <vincentdarley@users.sourceforge.net>
3779 * generic/tclTest.c: fix to picky windows compiler problem
3780 with the 'MainLoop' function declaration.
3782 2002-01-31 Andreas Kupries <andreas_kupries@users.sourceforge.net>
3784 * win/tclWinFCmd.c: TIP 27: Applied patch fixing CONST warnings on
3785 behalf of Don Porter <dgp@users.sourceforge.net>.
3787 2002-01-30 Don Porter <dgp@users.sourceforge.net>
3789 * generic/tcl.decls:
3791 * generic/tclInt.h: For each interface identified in the TIP 27
3792 changes below as a POTENTIAL INCOMPATIBILITY, the source of the
3793 incompatibility has been parameterized so that it can be
3794 removed. When compiling extension code against the Tcl header
3795 files, use the compiler flag -DUSE_NON_CONST to remove the
3796 irresolvable source incompatibilities introduced by the TIP 27
3797 changes. Resolvable changes are left for extension authors to
3799 * generic/tclDecls.h: make genstubs
3801 2002-01-30 Vince Darley <vincentdarley@users.sourceforge.net>
3803 * doc/FileSystem.3: added documentation for 3 public
3804 functions which had been overlooked. Fixes [Bug 507701].
3805 * unix/mkLinks: make mklinks
3807 2002-01-29 Jeff Hobbs <jeffh@ActiveState.com>
3809 * tests/regexpComp.test:
3810 * generic/tclCompCmds.c (TclCompileRegexpCmd): enhanced to support
3811 -nocase and -- options.
3813 2002-01-28 Mo DeJong <mdejong@users.sourceforge.net>
3815 * unix/tcl.m4 (SC_LOAD_TCLCONFIG):
3816 * win/tcl.m4 (SC_LOAD_TCLCONFIG): Set TCL_LIB_SPEC,
3817 TCL_STUB_LIB_SPEC, and TCL_STUB_LIB_PATH to the
3818 values of TCL_BUILD_LIB_SPEC, TCL_BUILD_STUB_LIB_SPEC,
3819 and TCL_BUILD_STUB_LIB_PATH when tclConfig.sh is loaded
3820 from the build directory. A Tcl extension should
3821 make use of the non-build versions of these variables
3822 since they will work in both cases. This modification
3823 was described in TIP 34.
3825 2002-01-28 Jeff Hobbs <jeffh@ActiveState.com>
3827 * win/tclWinReg.c (regConnectRegistryProc,RecursiveDeleteKey)
3828 (DeleteKey,GetKeyNames,GetType,GetValue,OpenSubKey,SetValue):
3829 redid the CONSTification as previous changes caused failing tests.
3831 * tests/regexpComp.test (new):
3833 * generic/tclBasic.c: added TclCompileRegexpCmd entry
3834 * generic/tclCompCmds.c (TclCompileStringCmd): corrected to return
3835 TCL_OUT_LINE_COMPILE instead of TCL_ERROR for parsing errors, so
3836 it only throws the error for runtime compile, in case the user
3838 (TclCompileRegexpCmd): first try at a byte-compiled regexp
3839 command. It handles static strings and ^$ bounded static strings.
3840 (TclCompileAppendCmd): made TclPushVarName call always use
3841 TCL_CREATE_VAR as numWords is always > 2 at that point.
3843 * generic/tclExecute.c (TclExecuteByteCode:INST_LIST): correct
3844 possibly dangerous decr in macro call.
3846 * win/tclWinInit.c (TclpFindVariable): CONSTification touch-up
3848 * win/tclWinReg.c (OpenSubKey): corrected bug introduced in
3849 CONSTification that dropped pointer reference.
3851 * ChangeLog.2000 (new file):
3852 * ChangeLog: broke changes from 2000 into ChangeLog.2000 to reduce
3853 size of the main ChangeLog.
3855 2002-01-28 David Gravereaux <davygrvy@pobox.com>
3857 * generic/tclPlatDecls.h: Added preprocessor logic to force a
3858 typedef of TCHAR when __STDC__ is defined when using the uncommon
3859 -Za compiler switch with the microsoft compiler.
3861 2002-01-27 Don Porter <dgp@users.sourceforge.net>
3863 * doc/package.n: Documented global namespace context for script
3864 evaluation by [package require].
3866 2002-01-27 Daniel Steffen <das@users.sourceforge.net>
3868 * generic/tclInt.decls:
3869 * generic/tclIntPlatDecls.h:
3875 * mac/tclMacResource.c:
3876 * mac/tclMacSock.c: TIP 27 CONSTification induced changes
3879 * tests/main.test: added catches/constraints to test that
3880 use features that don't exist on the mac.
3882 2002-01-25 Mo DeJong <mdejong@users.sourceforge.net>
3884 Make -eofchar and -translation options read only for
3885 server sockets. [Bug 496733]
3887 * generic/tclIO.c (Tcl_GetChannelOption, Tcl_SetChannelOption):
3888 Instead of returning nothing for the -translation option
3889 on a server socket, always return "auto". Return the empty
3890 string enclosed in quotes for the -eofchar option on
3891 a server socket. Fixup -eofchar usage message so that
3892 it matches the implementation.
3893 * tests/io.test: Add -eofchar tests and -translation tests
3894 to ensure options are read only on server sockets.
3895 * tests/socket.test: Update tests to account for -eofchar
3896 and -translation option changes.
3898 2002-01-25 Don Porter <dgp@users.sourceforge.net>
3900 * compat/strstr.c (strstr):
3901 * generic/tclCmdAH.c (Tcl_FormatObjCmd):
3902 * generic/tclCmdIL.c (InfoNameOfExecutableCmd):
3903 * generic/tclEnv.c (ReplaceString):
3904 * generic/tclFileName.c (ExtractWinRoot):
3905 * generic/tclIO.c (FlushChannel,Tcl_BadChannelOption):
3906 * generic/tclStringObj.c (AppendUnicodeToUtfRep):
3907 * generic/tclThreadTest.c (TclCreateThread):
3908 * generic/tclUtf.c (Tcl_UtfPrev):
3909 * mac/tclMacFCmd.c (TclpObjListVolumes):
3910 * mac/tclMacResource.c (TclMacRegisterResourceFork,
3911 BuildResourceForkList):
3912 * win/tclWinInit.c (AppendEnvironment): Sought out and eliminated
3913 instances of CONST-casting that are no longer needed after the
3916 * Following is [Patch 501006]
3917 * generic/tclInt.decls (Tcl_AddInterpResolvers, Tcl_Export,
3918 Tcl_FindNamespace, Tcl_GetInterpResolvers, Tcl_ForgetImport,
3919 Tcl_Import, Tcl_RemoveInterpResolvers):
3920 * generic/tclNamesp.c (Tcl_Export, Tcl_Import, Tcl_ForgetImport,
3922 * generic/tclResolve.c (Tcl_AddInterpResolvers,Tcl_GetInterpResolvers,
3923 Tcl_RemoveInterpResolvers): Updated APIs in generic/tclResolve.c
3924 and generic/tclNamesp.c according to the guidelines of TIP 27.
3925 * generic/tclIntDecls.h: make genstubs
3927 * Following is [Patch 505630]
3928 * doc/AddErrorInfo.3:
3929 * generic/tcl.decls (Tcl_LogCommandInfo):
3930 * generic/tclBasic.c (Tcl_LogCommandInfo): Updated interfaces
3931 of generic/tclBasic.cc according to TIP 27.
3932 * generic/tclDecls.h: make genstubs
3934 * Following is [Patch 506818]
3936 * generic/tcl.decls (Tcl_HashStats):
3937 * generic/tclHash.c (Tcl_HashStats): Updated APIs of generic/tclHash.c
3938 according to guidelines of TIP 27.
3939 * generic/tclDecls.h: make genstubs
3940 * generic/tclVar.c (Tcl_ArrayObjCmd): Updated callers.
3942 * Following is [Patch 506807]
3944 * generic/tcl.decls (Tcl_GetObjType):
3945 * generic/tclObj.c (Tcl_GetObjType): Updated APIs of generic/tclObj.c
3946 according to guidelines of TIP 27.
3947 * generic/tclDecls.h: make genstubs
3949 * Following is [Patch 507304]
3951 * generic/tcl.decls (Tcl_WinUtfToTChar,Tcl_WinTCharToUtf):
3952 * win/tclWin32Dll.c (Tcl_WinUtfToTChar,Tcl_WinTCharToUtf):
3953 Updated interfaces in win/tclWin32Dll.c according to TIP 27.
3954 * generic/tclPlatDecls.h: make genstubs
3955 * generic/tclIOUtil.c (TclpNativeToNormalized):
3956 * win/tclWinFCmd.c (TclpObjNormalizePath):
3957 * win/tclWinFile.c (TclpFindExecutable,TclpMatchInDirectory,
3958 NativeIsExec,NativeStat):
3959 * win/tclWinLoad.c (TclpLoadFile):
3960 * win/tclWinPipe.c (TclpOpenFile,ApplicationType):
3961 * win/tclWinReg.c (regConnectRegistryProc,RecursiveDeleteKey,DeleteKey,
3962 GetKeyNames,GetType,GetValue,OpenSubKey,SetValue):
3963 * win/tclWinSerial.c (SerialSetOptionProc): Update callers.
3965 * Following is [Patch 505072]
3970 * doc/OpenFileChnl.3
3976 * generic/tcl.h (Tcl_FSMatchInDirectoryProc):
3977 * generic/tclInt.h (TclpMatchInDirectory):
3978 * generic/tcl.decls (Tcl_Concat,Tcl_GetStringResult,Tcl_GetVar,
3979 Tcl_GetVar2,Tcl_JoinPath,Tcl_Merge,Tcl_OpenCommandChannel,Tcl_SetVar,
3980 Tcl_SetVar2,Tcl_SplitList,Tcl_SplitPath,Tcl_TranslateFileName,
3981 Tcl_ExternalToUtfDString,Tcl_GetEncodingName,Tcl_UtfToExternalDString,
3982 Tcl_GetDefaultEncodingDir,Tcl_SetDefaultEncodingDir,
3983 Tcl_FSMatchInDirectory,Tcl_MacEvalResource,Tcl_MacFindResource):
3984 * generic/tclInt.decls (TclCreatePipeline,TclGetEnv,TclpGetCwd,
3986 * mac/tclMacFile.c (TclpGetCwd):
3987 * generic/tclEncoding.c (Tcl_GetDefaultEncodingDir,
3988 Tcl_SetDefaultEncodingDir,Tcl_GetEncodingName,
3989 Tcl_ExternalToUtfDString,Tcl_UtfToExternalDString, OpenEncodingFile,
3990 LoadEscapeEncoding):
3991 * generic/tclFileName.c (DoTildeSubst,Tcl_JoinPath,Tcl_SplitPath,
3992 Tcl_TranslateFileName):
3993 * generic/tclIOUtil.c (Tcl_FSMatchInDirectory):
3994 * generic/tclPipe.c (FileForRedirect,TclCreatePipeline,
3995 Tcl_OpenCommandChannel):
3996 * generic/tclResult.c (Tcl_GetStringResult):
3997 * generic/tclUtil.c (Tcl_Concat,Tcl_SplitList,Tcl_Merge):
3998 * generic/tclVar.c (Tcl_GetVar,Tcl_GetVar2,Tcl_SetVar,Tcl_SetVar2):
3999 * mac/tclMacResource.c (Tcl_MacEvalResource,Tcl_MacFindResource):
4000 Updated interfaces of generic/tclEncoding, generic/tclFilename.c,
4001 generic/tclIOUtil.c, generic/tclPipe.c, generic/tclResult.c,
4002 generic/tclUtil.c, generic/tclVar.c and mac/tclMacResource.c according
4003 to TIP 27. Tcl_TranslateFileName rewritten as wrapper around
4005 ***POTENTIAL INCOMPATIBILITY***
4006 Includes source incompatibilities: argv arguments of Tcl_Concat,
4007 Tcl_JoinPath, Tcl_OpenCommandChannel, Tcl_Merge; argvPtr arguments of
4008 Tcl_SplitList and Tcl_SplitPath.
4009 * generic/tclDecls.h:
4010 * generic/tclIntDecls.h: make genstubs
4012 * generic/tclCkalloc.c (MemoryCmd):
4013 * generic/tclClock.c (FormatClock):
4014 * generic/tclCmdAH.c (Tcl_CaseObjCmd,Tcl_EncodingObjCmd,Tcl_FileObjCmd):
4015 * generic/tclCmdIL.c (InfoLibraryCmd,InfoPatchLevelCmd,
4017 * generic/tclCompCmds.c (TclCompileForeachCmd):
4018 * generic/tclCompCmds.h (TclCompileForeachCmd):
4019 * generic/tclCompile.c (TclFindCompiledLocal):
4020 * generic/tclEnv.c (TclSetupEnv,TclSetEnv,Tcl_PutEnv,TclGetEnv,
4022 * generic/tclEvent.c (Tcl_BackgroundError):
4023 * generic/tclIO.c (Tcl_BadChannelOption,Tcl_SetChannelOption):
4024 * generic/tclIOCmd.c (Tcl_ExecObjCmd,Tcl_OpenObjCmd):
4025 * generic/tclIOSock.c (TclSockGetPort):
4026 * generic/tclIOUtil.c (SetFsPathFromAny):
4027 * generic/tclLink.c (LinkTraceProc):
4028 * generic/tclMain.c (Tcl_Main):
4029 * generic/tclNamesp.c (TclTeardownNamespace):
4030 * generic/tclProc.c (TclCreateProc):
4031 * generic/tclTest.c (TestregexpObjCmd,TesttranslatefilenameCmd,
4032 TestchmodCmd,GetTimesCmd,TestsetCmd,TestOpenFileChannelProc1,
4033 TestOpenFileChannelProc2,TestOpenFileChannelProc3,AsyncHandlerProc,
4035 * generic/tclThreadTest.c (ThreadErrorProc,ThreadEventProc):
4036 * generic/tclUtil.c (TclPrecTraceProc):
4037 * mac/tclMacFCmd.c (GetFileSpecs):
4038 * mac/tclMacFile.c (TclpMatchInDirectory):
4039 * mac/tclMacInit.c (TclpInitLibraryPath,Tcl_SourceRCFile):
4040 * mac/tclMacOSA.c (tclOSAStore,tclOSALoad):
4041 * mac/tclMacResource.c (Tcl_MacEvalResource):
4042 * unix/tclUnixFCmd.c (TclpObjNormalizePath):
4043 * unix/tclUnixFile.c (TclpMatchInDirectory,TclpGetUserHome,TclpGetCwd,
4045 * unix/tclUnixInit.c (TclpInitLibraryPath,TclpSetVariables,
4047 * unix/tclUnixPipe.c (TclpOpenFile,TclpCreateTempFile,
4049 * win/tclWinFile.c (TclpGetCwd,TclpMatchInDirectory):
4050 * win/tclWinInit.c (TclpInitLibraryPath,Tcl_SourceRCFile,
4052 * win/tclWinPipe.c (TclpCreateProcess): Updated callers.
4054 2002-01-24 Don Porter <dgp@users.sourceforge.net>
4056 * generic/tclIOUtil.c (SetFsPathFromAny): Corrected tilde-substitution
4057 of pathnames where > 1 separator follows the ~. [Bug 504950]
4059 2002-01-24 Jeff Hobbs <jeffh@ActiveState.com>
4061 * library/http/pkgIndex.tcl:
4062 * library/http/http.tcl: don't add port in default case to handle
4063 broken servers. http bumped to 2.4.1 [Bug #504508]
4065 2002-01-23 Andreas Kupries <andreas_kupries@users.sourceforge.net>
4067 * unix/mkLinks: Regenerated.
4069 * doc/ChnlStack.3: Moved documentation for 'Tcl_GetTopChannel'
4070 from 'CrtChannel' to 'ChnlStack'. Added documentation of
4071 'Tcl_GetStackedChannel'. Bug #506147 reported by Mark Patton
4072 <msp@users.sourceforge.net>.
4074 2002-01-23 Don Porter <dgp@users.sourceforge.net>
4076 * win/tclWinFile.c (NativeAccess,NativeStat,NativeIsExec,
4078 * win/tclWinPort.h (TclWinSerialReopen):
4079 * win/tclWinSerial.c (TclWinSerialReopen):
4080 * win/tclWinSock.c (Tcl_OpenTcpServer): Corrections to earlier
4081 TIP 27 changes. Thanks to Andreas Kupries for the feedback.
4082 * generic/tclPlatDecls.h: make genstubs
4084 * doc/GetHostName.3:
4087 * tcl.decls (Tcl_GetHostName,Tcl_GetOpenFile,Tcl_OpenTcpClient,
4089 * mac/tclMacSock.c (CreateSocket,Tcl_OpenTcpClient,Tcl_OpenTcpServer,
4090 Tcl_GetHostName,GetHostFromString):
4091 * unix/tclUnixChan.c (CreateSocket,CreateSocketAddress,
4092 Tcl_OpenTcpClient,Tcl_OpenTcpServer,Tcl_GetOpenFile):
4093 * unix/tclUnixSock.c (Tcl_GetHostName):
4094 * win/tclWinSock.c (CreateSocket,CreateSocketAddress,
4095 Tcl_OpenTcpClient,Tcl_OpenTcpServer,Tcl_GetHostName):
4096 Updated socket interfaces according to TIP 27.
4097 * generic/tclCmdIL.c (InfoHostnameCmd): Updated callers.
4098 * generic/tclDecls.h: make genstubs
4100 2002-01-21 David Gravereaux <davygrvy@pobox.com>
4102 * generic/tclLoadNone.c: TclpLoadFile() didn't match proto of
4103 typedef Tcl_FSLoadFileProc. OK'd by vincentdarley.
4106 2002-01-21 Andreas Kupries <andreas_kupries@users.sourceforge.net>
4108 * generic/tclIO.c (WriteChars): Fix for SF #506297, reported by
4109 Martin Forssen <ruric@users.sourceforge.net>. The encoding
4110 chosen in the script exposing the bug writes out three intro
4111 characters when TCL_ENCODING_START is set, but does not consume
4112 any input as TCL_ENCODING_END is cleared. As some output was
4113 generated the enclosing loop calls UtfToExternal again, again
4114 with START set. Three more characters in the out and still no
4115 use of input ... To break this infinite loop we remove
4116 TCL_ENCODING_START from the set of flags after the first call
4117 (no condition is required, the later calls remove an unset flag,
4118 which is a no-op). This causes the subsequent calls to
4119 UtfToExternal to consume and convert the actual input.
4121 2002-01-21 Don Porter <dgp@users.sourceforge.net>
4123 * generic/tclTest.c: Converted declarations of TestReport file system
4124 to more portable form. [Bug 501417].
4126 * generic/tcl.decls (Tcl_TraceCommand,Tcl_UntraceCommand,
4127 Tcl_CommandTraceInfo):
4128 * generic/tclCmdMZ.c (Tcl_TraceCommand,Tcl_UntraceCommand,
4129 Tcl_CommandTraceInfo): Updated APIs in generic/tclCmdMZ.c
4130 according to the guidelines of TIP 27.
4131 * generic/tclDecls.h: make genstubs
4133 2002-01-18 Don Porter <dgp@users.sourceforge.net>
4137 * win/tclWinFile.c: Overlooked callers of Tcl_FSGetNativePath
4140 * win/tclWinReg.c: Overlooked callers of Tcl_GetIndexFromObj
4142 2002-01-18 Daniel Steffen <das@users.sourceforge.net>
4144 * generic/tclThreadTest.c:
4149 * mac/tclMacResource.c: TIP 27 CONSTification broke the mac
4150 build in a number of places.
4152 2002-01-17 Andreas Kupries <andreas_kupries@users.sourceforge.net>
4154 * generic/tclIOCmd.c (Tcl_GetsObjCmd): Fixed bug #504642 as
4155 reported by Brian Griffin <bgriffin@users.sourceforge.net>,
4156 using his patch. Before the patch the generic I/O layer held an
4157 unannounced reference to the interp result to store the read
4158 line into. This unfortunately has disastrous results if the
4159 channel driver executes a tcl script to perform its operation,
4160 this freeing the interp result. In that case we are
4161 dereferencing essentially a dangling reference. It is not truly
4162 dangling because the object is in the free list, but this only
4163 causes us to smash the free list and have the error occur later
4164 somewhere else. The patch simply creates a new object for the
4165 line and later sets it into the interp result when we are done
4168 2002-01-16 Mo DeJong <mdejong@users.sourceforge.net>
4170 * unix/tcl.m4 (SC_LOAD_TCLCONFIG):
4171 * win/tcl.m4 (SC_LOAD_TCLCONFIG): Subst TCL_DBGX
4172 into TCL_STUB_LIB_FILE and TCL_STUB_LIB_FLAG
4173 variables so that an extension does not need
4174 to subst TCL_DBGX into its makefile. [Tk Bug 504356]
4176 2002-01-16 Don Porter <dgp@users.sourceforge.net>
4181 * generic/tcl.decls (Tcl_GetIndexFromObj, Tcl_GetIndexFromObjStruct,
4182 Tcl_GetCwd, Tcl_FSFileAttrStrings, Tcl_FSGetNativePath,
4183 Tcl_FSGetTranslatedStringPath):
4184 * generic/tcl.h (Tcl_FSFileAttrStringsProc):
4185 * generic/tclFCmd.c (TclFileAttrsCmd):
4186 * generic/tclIOUtil.c (Tcl_GetCwd,NativeFileAttrStrings,
4187 Tcl_FSFileAttrStrings,Tcl_FSGetTranslatedStringPath,
4188 Tcl_FSGetNativePath):
4189 * generic/tclIndexObj.c (Tcl_GetIndexFromObj,Tcl_GetIndexFromObjStruct):
4190 More TIP 27 updates in tclIOUtil.c and tclIndexObj.c that were
4191 overlooked before. [Patch 504671]
4192 ***POTENTIAL INCOMPATIBILITY***
4193 Includes a source incompatibility in the tablePtr arguments of
4194 the Tcl_GetIndexFromObj* routines.
4195 * generic/tclDecls.h: make genstubs
4197 * generic/tclBinary.c (Tcl_BinaryObjCmd):
4198 * generic/tclClock.c (Tcl_ClockObjCmd):
4199 * generic/tclCmdAH.c (Tcl_EncodingObjCmd, Tcl_FileObjCmd):
4200 * generic/tclCmdIL.c (Tcl_InfoObjCmd,Tcl_LsearchObjCmd,Tcl_LsortObjCmd):
4201 * generic/tclCmdMZ.c (Tcl_TraceObjCmd,Tcl_RegexpObjCmd,Tcl_RegsubObjCmd,
4202 Tcl_StringObjCmd,Tcl_SubstObjCmd,Tcl_SwitchObjCmd,
4203 TclTraceCommandObjCmd,TclTraceVariableObjCmd):
4204 * generic/tclCompCmds.c (TclCompileStringCmd):
4205 * generic/tclEvent.c (Tcl_UpdateObjCmd):
4206 * generic/tclFileName.c (Tcl_GlobObjCmd):
4207 * generic/tclIO.c (Tcl_FileEventObjCmd):
4208 * generic/tclIOCmd.c (Tcl_SeekObjCmd,Tcl_ExecObjCmd,Tcl_SocketObjCmd,
4210 * generic/tclInterp.c (Tcl_InterpObjCmd,SlaveObjCmd):
4211 * generic/tclNamesp.c (Tcl_NamespaceObjCmd):
4212 * generic/tclPkg.c (Tcl_PackageObjCmd):
4213 * generic/tclTest.c (Tcltest_Init,TestencodingObjCmd,TestgetplatformCmd,
4214 TestlocaleCmd,TestregexpObjCmd,TestsaveresultCmd,
4215 TestGetIndexFromObjStructObjCmd,TestReportFileAttrStrings):
4216 * generic/tclTestObj.c (TestindexObjCmd,TeststringObjCmd):
4217 * generic/tclTimer.c (Tcl_AfterObjCmd):
4218 * generic/tclVar.c (Tcl_ArrayObjCmd):
4219 * mac/tclMacFCmd.c (SetFileFinderAttributes):
4220 * unix/tclUnixChan.c (TclpOpenFileChannel):
4221 * unix/tclUnixFCmd.c (tclpFileAttrStrings):
4222 * unix/tclUnixFile.c (TclpObjAccess,TclpObjChdir,TclpObjStat,
4224 * win/tclWinFCmd.c (tclpFileAttrStrings): Updated callers.
4228 * generic/tcl.decls:
4229 * generic/tclInt.decls:
4230 * generic/tclRegexp.c:
4231 * generic/tclUtf.c: Updated APIs in generic/tclUtf.c and
4232 generic/tclRegexp.c according to the guidelines of TIP 27.
4235 * generic/regc_locale.c (element,cclass):
4236 * generic/tclCmdMZ.c (Tcl_StringObjCmd):
4237 * generic/tclFileName.c (TclpGetNativePathType,SplitMacPath):
4238 * generic/tclIO.c (ReadChars):
4239 * mac/tclMacLoad.c (TclpLoadFile):
4240 * win/tclWinFile.c (TclpGetUserHome): Updated callers.
4242 * generic/tclDecls.h:
4243 * generic/tclIntDecls.h: make genstubs
4245 * doc/ParseCmd.3 (Tcl_ParseVar):
4246 * generic/tcl.decls (Tcl_ParseVar):
4247 * generic/tclParse.c (Tcl_ParseVar):
4248 * generic/tclTest.c (TestparsevarObjCmd): Updated APIs in
4249 generic/tclParse.c according to the guidelines of TIP 27. Updated
4250 callers. [Patch 501046]
4251 * generic/tclDecls.h: make genstubs
4253 * generic/tcl.decls (Tcl_RecordAndEval):
4254 * generic/tclDecls.h: make genstubs
4255 * generic/tclHistory.c (Tcl_RecordAndEval): Updated APIs in
4256 generic/tclHistory.c according to the guidelines of TIP 27.
4260 * generic/tcl.decls (Tcl_CreateAlias, Tcl_CreateAliasObj,
4261 Tcl_CreateSlave, Tcl_GetAlias, Tcl_GetAliasObj, Tcl_GetSlave):
4262 * generic/tclInterp.c (Tcl_CreateAlias, Tcl_CreateAliasObj,
4263 Tcl_CreateSlave, Tcl_GetAlias, Tcl_GetAliasObj, Tcl_GetSlave):
4264 Updated APIs in the file generic/tclInterp.c according to the
4265 guidelines of TIP 27. [Patch 501371]
4266 ***POTENTIAL INCOMPATIBILITY***
4267 Includes a source incompatibility in the targetCmdPtr arguments of
4268 the Tcl_GetAlias* routines.
4270 * generic/tclDecls.h: make genstubs
4272 2002-01-15 Don Porter <dgp@users.sourceforge.net>
4274 * doc/SetErrno.3 (Tcl_ErrnoMsg): Corrected documentation for
4275 Tcl_ErrnoMsg; it takes an integer argument. Thanks to Georgios
4276 Petasis. [Bug 468183]
4278 * doc/AddErrInfo.3 (Tcl_PosixError):
4279 * doc/Eval.3 (Tcl_EvalFile):
4280 * doc/FileSystem.c (Tcl_FSOpenFileChannel,Tcl_FSOpenFileChannelProc):
4281 * doc/OpenFileChnl.3 (Tcl_OpenFileChannel):
4282 * doc/SetErrno.3 (Tcl_ErrnoId,Tcl_ErrnoMsg):
4283 * doc/Signal.3 (Tcl_SignalId,Tcl_SignalMsg):
4284 * generic/tcl.decls (Tcl_ErrnoId,TclErrnoMsg,Tcl_EvalFile,
4285 Tcl_OpenFileChannel,Tcl_PosixError,Tcl_SignalId,Tcl_SignalMsg,
4286 Tcl_FSOpenFileChannel):
4287 * generic/tcl.h (Tcl_FSOpenFileChannelProc):
4288 * generic/tclIO.c (FlushChannel):
4289 * generic/tclIOUtil.c (Tcl_OpenFileChannel,Tcl_EvalFile,TclGetOpenMode,
4290 Tcl_PosixError,Tcl_FSOpenFileChannel):
4291 * generic/tclInt.decls (TclGetOpenMode):
4292 * generic/tclInt.h (TclOpenFileChannelProc_,TclGetOpenMode,
4293 TclpOpenFileChannel):
4294 * generic/tclPipe.c (TclCleanupChildren):
4295 * generic/tclPosixStr.c (Tcl_ErrnoId,Tcl_ErrnoMsg,Tcl_SignalId,
4297 * generic.tclTest.c (PretendTclpOpenFileChannel,
4298 TestOpenFileChannelProc1,TestOpenFileChannelProc2,
4299 TestOpenFileChannelProc3,TestReportOpenFileChannel):
4300 * mac/tclMacChan.c (TclpOpenFileChannel):
4301 * unix/tclUnixChan.c (TclpOpenFileChannel):
4302 * win/tclWinChan.c (TclpOpenFileChannel): Updated APIs in
4303 generic/tclIOUtil.c and generic/tclPosixStr.c according to the
4304 guidelines of TIP 27. Updated callers. [Patch 499196]
4306 * generic/tclDecls.h:
4307 * generic/tclIntDecls.h: make genstubs
4310 * doc/OpenFileChnl.3:
4311 * generic/tcl.decls:
4313 * generic/tclIO.c (DoWrite, Tcl_RegisterChannel, Tcl_GetChannel,
4314 Tcl_CreateChannel, Tcl_GetChannelName, CloseChannel, Tcl_Write,
4315 Tcl_WriteRaw, Tcl_Ungets, Tcl_BadChannelOption, Tcl_GetChannelOption,
4316 Tcl_SetChannelOption, Tcl_GetChannelNamesEx, Tcl_ChannelName):
4317 Updated APIs in the file generic/tclIO.c according to the guidelines
4318 of TIP 27. Several minor documentation corrections as well.
4320 * generic/tclDecls.h: make genstubs
4322 * generic/tcl.h (Tcl_DriverOutputProc, Tcl_DriverGetOptionProc,
4323 Tcl_DriverSetOptionProc):
4324 * generic/tclIOGT.c (TransformOutputProc, TransformGetOptionProc,
4325 TransformSetOptionProc):
4326 * mac/tclMacChan.c (FileOutput, StdIOOutput):
4327 * man/tclMacSock.c (TcpGetOptionProc, TcpOutput):
4328 * unix/tclUnixChan.c (FileOutputProc, TcpGetOptionProc, TcpOutputProc,
4329 TtyGetOptionProc, TtySetOptionProc):
4330 * unix/tclUnixPipe.c (PipeOuputProc):
4331 * win/tclWinChan.c (FileOutputProc):
4332 * win/tclWinConsole.c (ConsleOutputProc):
4333 * win/tclWinPipe.c (PipeOuputProc):
4334 * win/tclWinSerial.c (SerialOutputProc, SerialGetOptionProc,
4335 SerialSetOptionProc):
4336 * win/tclWinSock.c (TcpGetOptionProc, TcpOutput): Updated channel
4337 driver interface according to the guidelines of TIP 27. See also
4345 * tools/checkLibraryDoc.tcl:
4346 Moved Tcl_EolTranslation enum declaration from generic/tcl.h to
4347 generic/tclInt.h (renamed to TclEolTranslation). It is not used
4348 anywhere in Tcl's public interface.
4350 2002-01-14 Don Porter <dgp@users.sourceforge.net>
4353 * doc/WrongNumArgs.3:
4354 * generic/tcl.decls (Tcl_GetIndexFromObj, Tcl_GetIndexFromObjStruct,
4356 * generic/tclIndexObj.c (Tcl_GetIndexFromObj, Tcl_GetIndexFromObjStruct,
4357 Tcl_WrongNumArgs): Updated APIs in the file generic/tclIndexObj.c
4358 according to the guidelines of TIP 27. [Patch 501491]
4359 * generic/tclDecls.h: make genstubs
4361 2002-01-11 Mo DeJong <mdejong@users.sourceforge.net>
4363 * unix/configure: Regen.
4364 * unix/configure.in:
4365 * win/configure: Regen.
4366 * win/configure.in: Use ${libdir} instead of ${exec_prefix}/lib
4367 to properly support the --libdir option to configure. [Bug 489370]
4369 2002-01-11 Andreas Kupries <andreas_kupries@users.sourceforge.net>
4371 * win/tclWinSerial.c (SerialSetOptionProc): Applied patch for SF
4372 bug #500348 supplied by Rolf Schroedter
4373 <schroedter@users.sourceforge.net>. The function modified the
4374 contents of the the 'value' string and now does not do this
4375 anymore. This is a followup to the change made on 2001-12-17.
4377 2002-01-11 David Gravereaux <davygrvy@pobox.com>
4379 * win/makefile.vc: Removed -GD compiler option. It was intended
4380 for future use, but MS is again changing the future at their whim.
4381 The D4002 warning was harmless though, but someone using VC .NET
4382 logged it as a concern. [Bug #501565]
4384 2002-01-11 Mo DeJong <mdejong@users.sourceforge.net>
4386 * unix/Makefile.in: Burn Tcl build directory
4387 into tcltest executable to avoid crashes caused
4388 by ld loading a previously installed version
4389 of the tcl shared library. [Bug 218110]
4391 2002-01-10 Don Porter <dgp@users.sourceforge.net>,
4392 Kevin Kenny <kennykb@users.sourceforge.net>
4394 * unix/tclLoadDld.c (TclpLoadFile): syntax error: unbalanced
4395 parens. Kevin notes that it's far from clear that this file is
4396 ever included in an actual build; Linux without dlopen appears to
4397 be a nonexistent configuration.
4399 2002-01-08 Don Porter <dgp@users.sourceforge.net>,
4400 Kevin Kenny <kennykb@users.sourceforge.net>
4402 * doc/StaticPkg.3 (Tcl_StaticPackage):
4403 * generic/tcl.decls (Tcl_StaticPackage):
4404 * generic/tclDecls.h (Tcl_StaticPackage):
4405 * generic/tclInt.decls (TclGuessPackageName):
4406 * generic/tclInt.h (TclGuessPackageName):
4407 * generic/tclLoad.c (Tcl_StaticPackage):
4408 * generic/tclLoadNone.c (TclGuessPackageName):
4409 * mac/tclMacLoad.c (TclGuessPackageName):
4410 * unix/tclLoadAout.c (TclGuessPackageName):
4411 * unix/tclLoadDl.c (TclGuessPackageName):
4412 * unix/tclLoadDld.c (TclGuessPackageName):
4413 * unix/tclLoadDyld.c (TclGuessPackageName):
4414 * unix/tclLoadNext.c (TclGuessPackageName):
4415 * unix/tclLoadOSF.c (TclGuessPackageName):
4416 * unix/tclLoadShl.c (TclGuessPackageName):
4417 * win/tclWinLoad.c (TclGuessPackageName): Updated APIs in
4418 the files */tcl*Load*.c according to the guidelines of TIP 27.
4421 2002-01-09 Don Porter <dgp@users.sourceforge.net>
4423 * generic/tclTest.c (MainLoop):
4424 * tests/main.test (Tcl_Main-1.{3,4,5,6}): Corrected some non-portable
4425 tests from the new Tcl_Main changes. Thanks to Kevin Kenny.
4427 2002-01-07 Don Porter <dgp@users.sourceforge.net>
4429 * generic/tclEvent.c (TclInExit):
4430 * generic/tclIOUtil.c (SetFsPathFromAbsoluteNormalized,
4431 SetFsPathFromAny,Tcl_FSNewNativePath,DupFsPathInternalRep):
4432 * generic/tclListObj.c (TclLsetList,TclLsetFlat): Added some type
4433 casts to satisfy picky compilers.
4435 * generic/tclMain.c: Bug fix: neglected the NULL case in
4436 TclGetStartupScriptFileName(). Broke Tk/wish.
4438 2002-01-05 Don Porter <dgp@users.sourceforge.net>
4441 * generic/tclMain.c: Substantial rewrite and expanded documentation
4442 of Tcl_Main to correct a number of bugs and flaws:
4444 * Interactive Tcl_Main can now enter a main loop, exit
4445 that loop and continue interactive operations. The loop
4446 may even exit in the midst of interactive command typing
4447 without loss of the partial command. [Bugs 486453, 474131]
4448 * Tcl_Main now gracefully handles deletion of its master
4450 * Interactive Tcl_Main can now operate with non-blocking stdin
4451 * Interactive Tcl_Main can now detect EOF on stdin even in
4452 mid-command. [Bug 491341]
4453 * Added VFS-aware internal routines for managing the
4454 startup script selection.
4455 * Tcl variable 'tcl_interactive' is now linked to C variable
4456 'tty' so that one can disable/enable interactive prompts
4457 at the script level when there is no startup script. This
4458 is meant for use by the test suite.
4459 * Consistent use of the Tcl libraries standard channels as
4460 returned by Tcl_GetStdChannel(); as opposed to the channels
4461 named 'stdin', 'stdout', and 'stderr' in the master interp,
4462 which can be different or unavailable.
4463 * Tcl_Main now calls Tcl_Exit() if evaluation of [exit] in the
4464 master interpreter returns, assuring Tcl_Main does not return.
4465 * Documented Tcl_Main's absence from public stub table
4466 * Documented that Tcl_Main does not return.
4467 * Documented Tcl variables set by Tcl_Main.
4468 * All prompts are done from a single procedure, Prompt.
4469 * Use of Tcl_Obj-enabled interfaces everywhere.
4471 * generic/tclInt.decls (TclGetStartupScriptPath,
4472 TclSetStartupScriptPath): New internal VFS-aware routines for
4473 managing the startup script of Tcl_Main.
4474 * generic/tclIntDecls.h:
4475 * generic/tclStubInit.c: make genstubs
4477 * generic/tclTest.c (TestsetmainloopCmd,TestexitmainloopCmd,
4478 Tcltest_Init,TestinterpdeleteCmd):
4479 * tests/main.test (new): Added new file to test suite that
4480 thoroughly tests generic/tclMain.c; added some new test commands
4481 for testing Tcl_SetMainLoop().
4483 2002-01-04 Don Porter <dgp@users.sourceforge.net>
4497 * doc/TCL_MEM_DEBUG.3: Updated documentation to describe the ckalloc,
4498 ckfree, ckrealloc, attemptckalloc, and attemptckrealloc macros, and
4499 to accurately describe when and how they are used. [Bug 497459]
4501 * generic/tclThreadJoin.c (TclRememberJoinableThread,TclJoinThread):
4502 Replaced Tcl_Alloc and Tcl_Free calls with ckalloc and ckfree so that
4503 memory debugging is supported.
4505 2002-01-04 Daniel Steffen <das@users.sourceforge.net>
4507 * mac/tclMacTime.c (TclpGetTZName): fix for daylight savings TZName bug
4509 2002-01-03 Don Porter <dgp@users.sourceforge.net>
4512 * generic/tclIOUtil.c: Updated some old uses of "fileName" to
4513 new VFS terminology, "pathPtr".
4515 2002-01-03 Donal K. Fellows <fellowsd@cs.man.ac.uk>
4517 * tests/basic.test (basic-39.4): Greatly simplified test while
4518 still leaving it so that it crashes when run without the fix to
4519 the [foreach] implementation.
4520 * generic/tclCmdAH.c (Tcl_ForeachObjCmd): Stopped Bug #494348 from
4521 happening by not trying to be so clever with cacheing; if nothing
4522 untoward is happening anyway, the less efficient technique will
4523 only add a few instruction cycles (one function call and a few
4524 derefs/assigns per list per iteration, with no change in the
4525 number of tests) and if something odd *is* going on, the code is
4526 now far more robust.
4528 * tests/basic.test (basic-39.4): Reproducable script from Bug #494348
4530 2002-01-02 Donal K. Fellows <fellowsd@cs.man.ac.uk>
4532 * tests/util.test (Wrapper_Tcl_StringMatch,util-5.*): Rewrote so
4533 the test is performed with the right internal function since
4534 [string match] no longer uses Tcl_StringCaseMatch internally.
4536 * tests/string.test (string-11.51):
4537 * generic/tclUtf.c (Tcl_UniCharCaseMatch):
4538 * generic/tclUtil.c (Tcl_StringCaseMatch): Fault with matching
4539 case-insensitive non-ASCII patterns containing upper case
4540 characters. [Bug #233257]
4542 ******************************************************************
4543 *** CHANGELOG ENTRIES FOR 2001 IN "ChangeLog.2001" ***
4544 *** CHANGELOG ENTRIES FOR 2000 IN "ChangeLog.2000" ***
4545 *** CHANGELOG ENTRIES FOR 1999 AND EARLIER IN "ChangeLog.1999" ***
4546 ******************************************************************