OSDN Git Service

daily update
[pf3gnuchains/pf3gnuchains3x.git] / tcl / ChangeLog
1 2008-04-23  Keith Seitz  <keiths@redhat.com>
2
3         Based on patch from Masaki Muranaka  <monaka@monami-software.com>:
4         * compat/strstr.c: Include tcl.h and define NULL if it is
5         not already defined.
6
7 2008-03-03  Keith Seitz  <keiths@redhat.com>
8
9         From Dave Murphy  <davem@devkitpro.org>:
10         * win/tclWin32Dll.c (TclpCheckStackSpace): Backport
11         EXCEPTION_REGISTRATION code from Tcl mainline.
12
13 2007-05-14  Maciej W. Rozycki  <macro@mips.com>
14
15         * win/tclWinPipe.c (TclpCreateProcess): Only use CW_SYNC_WINENV if
16         supported by the compilation environment.
17
18 2006-12-01  Corinna Vinschen  <corinna@vinschen.de>
19
20         * win/tclWin32Dll.c (TclWinInit): Set native cwd to Cygwin's cwd.
21         * win/tclWinFile.c (TclpObjChdir): Keep native and Cygwin's cwd
22         synched.
23
24 2006-11-30  Christopher Faylor  <cgf@timesys.com>
25
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.
31
32 2006-11-30  Christopher Faylor  <cgf@timesys.com>
33
34         * win/tclWinPipe.c (TclpCreateProcess): Call cygwin-specific routine to
35         set up windows environment.
36
37 2006-07-13  Steve Ellcey  <sje@cup.hp.com>
38
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.
50
51 2006-02-08  Alexandre Oliva  <aoliva@redhat.com>
52
53         * unix/tcl.m4 (SC_CONFIG_CFLAGS, SC_BLOCKING_STYLE): Remove
54         unmatched single quote inside backticks.
55         * unix/configure: Rebuild.
56
57 2006-02-02  Christopher Faylor  <cgf@timesys.com>
58
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.
64
65         * configure.in: Make sure that TCL_LIB_SPEC is properly filled out.
66         * configure: Regenerate.
67
68 2004-01-21  Keith Seitz  <kseitz@uglyboxes.com>
69
70         From tcl repository:
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.
74
75 2003-02-11  Martin M. Hunt  <hunt@redhat.com>
76         From Mumit Khan  <khan@nanotech.wisc.edu>
77
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
81         from here.
82         (TclDoGlob): Adjust.
83         * win/tclWinFile.c (TclpObjChdir): Use chdir on Cygwin.
84
85
86 2003-02-06  Martin M. Hunt  <hunt@redhat.com>
87
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.
96
97         * generic/tclEnv.c (TclUnsetEnv): Cast arg to unsigned.
98
99         Import from latest tcl sources to fix a bug with
100         "file copy"
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
111         compiler warnings.
112         * win/tclWinReg.c: Add casts to avoid compiler
113         warning. Fix assignment in if expression bug.
114
115
116 2002-10-22  Jeff Hobbs  <jeffh@ActiveState.com>
117
118         *** 8.4.1 TAGGED FOR RELEASE ***
119
120         * changes: updated for 8.4.1 release
121
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.
127
128 2002-10-22  Daniel Steffen  <das@users.sourceforge.net>
129
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
140
141 2002-10-22  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
142
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].
146
147 2002-10-21  Daniel Steffen  <das@users.sourceforge.net>
148
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.
152
153 2002-10-18  Jeff Hobbs  <jeffh@ActiveState.com>
154
155         * library/reg/pkgIndex.tcl:
156         * win/configure:
157         * win/configure.in:
158         * win/Makefile.in:
159         * win/makefile.vc:
160         * win/makefile.bc:    Updated to reg1.1
161
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]
165
166         * unix/Makefile.in (dist): add any mac/tcl*.sea.hqx files
167
168 2002-10-17  Don Porter  <dgp@users.sourceforge.net>
169
170         * generic/tclVar.c:     Fixed code that check for proper # of args to
171         * tests/var.test:       [array names].  Added test.  [Bug 624755]
172
173 2002-10-16  Jeff Hobbs  <jeffh@ActiveState.com>
174
175         * win/configure:                 add workaround for cygwin windres
176         * win/tcl.m4 (SC_CONFIG_CFLAGS): problem. [Patch #624010] (howell)
177
178 2002-10-15  Jeff Hobbs  <jeffh@ActiveState.com>
179
180         * README: added archives.tcl.tk note
181
182         * unix/configure:
183         * unix/tcl.m4: Correct AIX-5 ppc build flags.
184         Correct HP 11 64-bit gcc building. [Patch #601051] (martin)
185
186 2002-10-15  Vince Darley  <vincentdarley@users.sourceforge.net>
187
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.
191
192 2002-10-14  Jeff Hobbs  <jeffh@ActiveState.com>
193
194         * generic/tclEnv.c (Tcl_PutEnv): correct possible mem leak.
195         [Patch #623269] (brouwers)
196
197 2002-10-11  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
198
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...
202
203 2002-10-10  Jeff Hobbs  <jeffh@ActiveState.com>
204
205         * README: fixed minor nits [Bug #607776] (virden)
206
207         * win/configure:
208         * win/tcl.m4: enable USE_THREAD_ALLOC (new threaded allocator) by
209         default in cygwin configure on Windows.
210
211 2002-10-10  Don Porter  <dgp@users.sourceforge.net>
212
213         * doc/Tcl.n:    Clarified that namespace separators are legal in
214                         the variable names during $-subtitution. [Bug 615139]
215         
216         * doc/regexp.n: Typo correction.  Thanks Ronnie Brunner. [Bug 606826]
217
218 2002-10-10  Vince Darley  <vincentdarley@users.sourceforge.net>
219
220         * unix/tclLoadAout.c
221         * unix/tclLoadDl.c
222         * unix/tclLoadDld.c
223         * unix/tclLoadDyld.c
224         * unix/tclLoadNext.c
225         * unix/tclLoadOSF.c
226         * unix/tclLoadShl.c
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).
230         Fixes [Bug 611108]
231
232 2002-10-09  Jeff Hobbs  <jeffh@ActiveState.com>
233
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.
240
241 2002-10-09  Kevin B. Kenny  <kennykb@acm.org>
242
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
246         620735].
247
248 2002-10-09  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
249
250         * doc/binary.n: More clarification of [binary scan]'s behaviour.
251
252 2002-10-09  Daniel Steffen  <das@users.sourceforge.net>
253
254         * generic/tclIntDecls.h: fixed botched regen.
255
256 2002-10-09  Daniel Steffen  <das@users.sourceforge.net>
257
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.
263
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).
270
271         * mac/tclMacFCmd.c: removed GenerateUniqueName(), use equivalent
272         (and identiaclly named) routine from MoreFiles instead.
273
274         * mac/tclMacLoad.c: CONSTification, fixes to Vince's last changes.
275
276         * mac/tclMacFile.c: 
277         * mac/tclMacTest.c:
278         * mac/tclMacUnix.c: CONSTification.
279
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)
283
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.
287
288 2002-10-09  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
289
290         * doc/Alloc.3: Added a note to mention that attempting to allocate
291         a zero-length block can return NULL.  [Tk bug 619544]
292
293 2002-10-04  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
294
295         * doc/binary.n: Doc improvements [Patch 616480]
296
297         * tests/fCmd.test, tests/winFCmd.test:
298         * tools/eolFix.tcl, tools/genStubs.tcl: [file exist] -> [file exists]
299         Thanks to David Welton.
300
301 2002-10-03  Don Porter  <dgp@users.sourceforge.net>
302
303         * doc/tcltest.n: fixed typo [Bug 618018].  Thanks to "JJM".
304
305 2002-10-03  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
306
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]
312
313         * doc/lsearch.n: Better specification of what happens when -sorted
314         is mixed with other options. [Bug 617816]
315
316 2002-10-01  Jeff Hobbs  <jeffh@ActiveState.com>
317
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.
321
322 2002-10-01  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
323
324         * doc/socket.n: Mentioned that ports may be specified as serivce
325         names as well as integers. [Bug 616843]
326
327 2002-09-30  Jeff Hobbs  <jeffh@ActiveState.com>
328
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.
332
333 2002-09-29  David Gravereaux <davygrvy@pobox.com>
334
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]
341
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.
345
346 2002-09-27  Don Porter  <dgp@users.sourceforge.net>
347
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.
351         * unix/configure.in:
352         * unix/tcl.spec:
353         * win/configure.in:
354
355         * unix/configure:       autoconf
356         * win/configure:
357
358 2002-09-26  Jeff Hobbs  <jeffh@ActiveState.com>
359
360         * unix/configure: regen.
361         * unix/tcl.m4: improve AIX-4/5 64bit compilation support.
362
363         * generic/tclProc.c (Tcl_ProcObjCmd): correct overeager
364         optimization of noop proc to handle the precompiled case. (sofer)
365
366         * unix/ldAix (nmopts): add -X32_64 to make it work for 32 or 64bit
367         mode compilation.
368
369         * library/encoding/koi8-u.enc: removed extraneous spaces that
370         confused encoding reader. [Bug #615115]
371
372         * unix/Makefile.in: generate source dists with -src designator and
373         do not generate .Z anymore (just .gz and .zip).
374
375 2002-09-18  Mumit Khan <khan@nanotech.wisc.edu>
376
377         Added basic Cygwin support.
378
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.
389
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
393         for Cygwin.
394         * generic/tclEnv.c (Tcl_CygwinPutenv): putenv replacement for
395         Cygwin.
396         * generic/tclFileName.c (Tcl_TranslateFileName): Convert POSIX 
397         to native format.
398         (TclDoGlob): Likewise.
399         * generic/tclPlatDecls.h (TCHAR): Define for Cygwin.
400         * win/tclWinPort.h (putenv, TclpSysAlloc, TclpSysFree, 
401         TclpSysRealloc): Define for Cygwin.
402
403 2002-09-26  Daniel Steffen  <das@users.sourceforge.net>
404
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.
408
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.
415
416 2002-09-24  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
417
418         * unix/tcl.m4 (SC_TCL_64BIT_FLAGS): Yet more robust 64-bit value
419         detection to close [Bug 613117] on more systems.
420
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
424         attention...
425
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]
428
429         * doc/lset.n: Changed 'list' to 'varName' for consistency with
430         lappend documentation.  Thanks to Glenn Jackman [Bug 611719]
431
432 2002-09-22  Don Porter  <dgp@users.sourceforge.net>
433
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
437         Taback [Bug 611922]
438         * library/tcltest/pkgIndex.tcl: Bump to version 2.2.1.
439         * tests/tcltest.test: added tests for these bugs.
440
441 2002-09-15  Mo DeJong  <mdejong@users.sourceforge.net>
442
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
447         before it is closed.
448
449 2002-09-12  David Gravereaux <davygrvy@pobox.com>
450
451         * win/coffbase.txt: Added BLT to the virtual base address
452         listings table should BLT's build tools decide to use it.
453
454 2002-09-12  Daniel Steffen  <das@users.sourceforge.net>
455
456         * generic/tcl.h:
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. 
462
463 2002-09-10  Mo DeJong  <mdejong@users.sourceforge.net>
464
465         * unix/README: Add note about building extensions
466         with the same compiler Tcl was built with.
467         [Tk Bug 592096]
468
469 2002-09-10  Daniel Steffen  <das@users.sourceforge.net>
470
471         * macosx/Tcl.pbproj/project.pbxproj: disabled building html
472         documentation during embedded build.
473
474 2002-09-10  Daniel Steffen  <das@users.sourceforge.net>
475
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.
481
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.
487         
488 2002-09-10  Jeff Hobbs  <jeffh@ActiveState.com>
489
490         *** 8.4.0 TAGGED FOR RELEASE ***
491
492 2002-09-06  Don Porter  <dgp@users.sourceforge.net>
493
494         * doc/file.n:  Format correction, and clarified [file normalize]
495         returns an absolute path.
496
497         * doc/tcltest.n:  Added examples section, as long promised.
498
499 2002-09-06  Reinhard Max  <max@suse.de>
500
501         * tests/tcltest.test: Added nonRoot flag to tests 8.3, 8.4, and 8.12.
502
503 2002-09-05  Don Porter  <dgp@users.sourceforge.net>
504
505         * doc/tcltest.n:  Clarified phrasing.
506
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]
511
512         * generic/tclVar.c (TclDeleteVars):  Corrected logic for setting the
513         TCL_INTERP_DESTROYED flag when calling variable traces. [Tk Bug 605121]
514
515 2002-09-04  Miguel Sofer  <msofer@users.sourceforge.net>
516
517         * generic/tclVar.c (DeleteArray): leak plug [Bug 604239]. Thanks
518         to dkf and dgp for the long and difficult discussion in the chat.
519
520 2002-09-03  Jeff Hobbs  <jeffh@ActiveState.com>
521
522         * generic/tclVar.c (Tcl_UpVar2): code cleanup to not use goto
523
524         * unix/configure: remove -pthread from LIBS on FreeBSD in thread
525         * unix/tcl.m4:    enabled build. [Bug #602849]
526
527 2002-09-03  Miguel Sofer  <msofer@users.sourceforge.net>
528
529         * generic/tclInterp.c (AliasCreate): a Tcl_Obj was leaked on error
530         return from TclPreventAliasLoop.
531         
532 2002-09-03  Daniel Steffen  <das@users.sourceforge.net>
533
534         * macosx/Tcl.pbproj/project.pbxproj: Bumped version number to
535         8.4.0 and updated copyright info.
536
537 2002-09-03  Miguel Sofer  <msofer@users.sourceforge.net>
538
539         * generic/tclVar.c (Tcl_UpVar2): a Tcl_Obj was being leaked on
540         error return from TclGetFrame.
541
542 2002-09-03  Don Porter  <dgp@users.sourceforge.net>
543
544         * changes:  Updated changes for 8.4.0 release.
545
546 2002-09-02  Jeff Hobbs  <jeffh@ActiveState.com>
547
548         * unix/tclUnixFile.c (TclpObjLink): removed unnecessary/unfreed
549         extra native char*.
550
551         * unix/tclUnixChan.c (Tcl_MakeTcpClientChannel): make sure to init
552         flags field of TcpState ptr to 0.
553
554         * unix/configure:
555         * unix/tcl.m4: added 64-bit gcc compilation support on HP-11.
556         [Patch #601051] (martin)
557
558         * README:               Bumped version number to 8.4.0
559         * generic/tcl.h:
560         * tools/tcl.wse.in:
561         * unix/configure:
562         * unix/configure.in:
563         * unix/tcl.spec:
564         * win/README.binary:
565         * win/configure:
566         * win/configure.in:
567
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]
571
572         * win/tclWinConsole.c (ConsoleCloseProc): only wait on writable
573         pipe if there was something to write.  This may prevent infinite
574         wait on exit.
575
576         * tests/exec.test: marked exec-18.1 unixOnly until the Windows
577         incompatability (in the test, not the core) can be resolved.
578
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.
581
582         * unix/tclUnixInit.c (Tcl_MacOSXGetLibraryPath): made this static
583         function only appear when HAVE_CFBUNDLE is defined.
584
585 2002-08-31  Daniel Steffen  <das@users.sourceforge.net>
586
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.
589
590         * unix/configure: regen
591
592 2002-08-31  Daniel Steffen  <das@users.sourceforge.net>
593
594         *** macosx-8-4-branch merged into the mainline [tcl patch #602770] ***
595
596         * generic/tcl.decls: added new macosx specific entry to stubs table.
597
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.
604         
605         * generic/tcl.h: added a #ifnded RESOURCE_INCLUDED so that tcl.h
606         can be passed to the resource compiler.
607         
608         * generic/tcl.h:
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.
614
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.
619
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
623
624         * unix/Makefile.in:
625         * unix/configure.in:
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.
635
636         * macosx/tclMacOSXBundle.c (new): support for finding Tcl extension
637         packaged as 'bundles' in the standard Mac OSX library locations.
638
639         * unix/tclUnixInit.c: added support for findig the tcl script
640         library inside Tcl packaged as a framework on Mac OSX.
641
642         * macosx/Tcl.pbproj/jingham.pbxuser (new):
643         * macosx/Tcl.pbproj/project.pbxproj (new): project for Apple's
644         ProjectBuilder IDE.
645
646         * macosx/Makefile (new): simple makefile for building the project
647         from the command line via the ProjectBuilder tool 'pbxbuild'.
648
649         * unix/configure:
650         * generic/tclStubInit.c:
651         * generic/tclPlatDecls.h: regen
652
653 2002-08-29  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
654
655         * win/tclWinThrd.c (TclpFinalizeThreadData, TclWinFreeAllocCache):
656           Applied patch for bug #599428, provided by Miguel Sofer
657           <msofer@users.sourceforge.net>.
658
659 2002-08-28  David Gravereaux <davygrvy@pobox.com>
660
661         * generic/tclEnv.c:
662         * unix/configure.in:
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.
668         [Bug 414910]
669
670         * unix/configure: regen'd
671
672 2002-08-28  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
673
674         * doc/eval.n: Added mention of list command and corrected "SEE ALSO".
675
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.
679
680 2002-08-26  Miguel Sofer  <msofer@users.sourceforge.net>
681
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.
685
686 2002-08-26  Miguel Sofer  <msofer@users.sourceforge.net>
687
688         * generic/tclThreadAlloc.c: small optimisation, reducing the
689         new allocator's overhead.
690         
691 2002-08-23  Miguel Sofer  <msofer@users.sourceforge.net>
692
693         * generic/tclObj.c (USE_THREAD_ALLOC): fixed leak [Bug 597936]. 
694         Thanks to Zoran Vasiljevic.
695
696 2002-08-23  Miguel Sofer  <msofer@users.sourceforge.net>
697
698         * generic/tclThreadAlloc.c (USE_THREAD_ALLOC): moving objects
699         between caches as a block, instead of one-by-one.
700
701 2002-08-22  Miguel Sofer  <msofer@users.sourceforge.net>
702
703         * generic/tclBasic.c:
704         * generic/tclCmdMZ.c: fix for freed memory r/w in delete traces
705         [Bug 589863], patch by Hemang Lavana.
706
707 2002-08-20  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
708
709         * win/Makefile.in (CFLAGS): 
710         * unix/Makefile.in (MEM_DEBUG_FLAGS): Added usage of @MEM_DEBUG_FLAGS@.
711         * win/configure.in:
712         * unix/configure.in: Added usage of SC_ENABLE_MEMDEBUG.
713         * win/tcl.m4:
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.
717
718 2002-08-20  Don Porter  <dgp@users.sourceforge.net>
719
720         * generic/tclCkalloc.c: CONSTified MemoryCmd and CheckmemCmd.
721
722         * README:               Bumped version number to 8.4b3 to distinguish
723         * generic/tcl.h:        HEAD from the 8.4b2 release.
724         * tools/tcl.wse.in:
725         * unix/configure.in:
726         * unix/tcl.spec:
727         * win/README.binary:
728         * win/configure.in:
729
730         * unix/configure:       autoconf
731         * win/configure:
732
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]
739         * win/makefile.bc:
740         * win/makefile.vc:
741
742 2002-08-19  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
743
744         * unix/tclUnixTest.c (TestfilehandlerCmd): Changed
745           readable/writable to the more common readable|writable.
746
747           Fixes SF #596034 reported by Larry Virden
748           <lvirden@users.sourceforge.net>.
749
750 2002-08-16  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
751
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.
762
763 2002-08-14  Miguel Sofer  <msofer@users.sourceforge.net>
764
765         * generic/tclInt.h:
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.
772         
773 2002-08-12  Miguel Sofer  <msofer@users.sourceforge.net>
774
775         * generic/tclCmdMZ.c: fixing UMR in delete traces, [Bug 589863].
776         
777 2002-08-08  David Gravereaux <davygrvy@pobox.com>
778
779         * tools/man2help.tcl: Fixed $argv handling bug where if -bitmap
780         wasn't specified $argc was off by one.
781
782 2002-08-08  Miguel Sofer  <msofer@users.sourceforge.net>
783
784         * tests/uplevel.test: added 6.1 to test [uplevel] with shadowed
785         commands [Bug 524383]
786
787         * tests/subst.test: added 5.8-10 as further tests for [Bug 495207] 
788
789 2002-08-08  Don Porter  <dgp@users.sourceforge.net>
790
791         * tests/README: Noted removal of defs.tcl.
792
793 2002-08-08  Jeff Hobbs  <jeffh@ActiveState.com>
794
795         * doc/lsearch.n: corrected lsearch docs to use -inline in examples.
796
797         *** 8.4b2 TAGGED FOR RELEASE ***
798
799         * tests/fCmd.test:
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
808         handled correctly.
809
810         * tests/README: slight wording improvements
811
812 2002-08-07  Miguel Sofer  <msofer@users.sourceforge.net>
813
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]
819         
820 2002-08-07  Miguel Sofer  <msofer@users.sourceforge.net>
821
822         * generic/tclCompile.h:
823         * generic/tclObj.c: making tclCmdNameType static ([Bug 584567],
824         Don Porter).
825         
826 2002-08-07  Miguel Sofer  <msofer@users.sourceforge.net>
827
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.
831         
832 2002-08-06  Daniel Steffen  <das@users.sourceforge.net>
833
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.
843
844 2002-08-05  Don Porter  <dgp@users.sourceforge.net>
845
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.
850
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.
854
855 2002-08-04  Don Porter  <dgp@users.sourceforge.net>
856
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.
867         * doc/TraceVar.3:
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]
879         * generic/tclEvent.c    
880         * generic/tclInt.decls
881         * generic/tclInt.h
882         * generic/tclIntDecls.h
883         * generic/tclInterp.c
884         * generic/tclLink.c
885         * generic/tclObj.c
886         * generic/tclParse.c
887         * generic/tclParseExpr.c
888         * generic/tclProc.c
889         * generic/tclTest.c
890         * generic/tclUtf.c
891         * generic/tclUtil.c
892         * generic/tclVar.c
893         * mac/tclMacTest.c
894         * tests/expr-old.test
895         * tests/parseExpr.test
896         * unix/tclUnixTest.c
897         * unix/tclXtTest.c
898         * win/tclWinTest.c
899
900 2002-08-01  Miguel Sofer  <msofer@users.sourceforge.net>
901
902         * generic/tclExecute.c: bugfix (reading freed memory). Testsuite
903         passed on linux/i386, compile-13.1 hung on linux/alpha.
904
905 2002-08-01  Miguel Sofer  <msofer@users.sourceforge.net>
906
907         * generic/tclExecute.c: added a reference count for the complete
908         execution stack, instead of Tcl_Preserve/Tcl_Release. 
909
910 2002-08-01  Mo DeJong  <mdejong@users.sourceforge.net>
911
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.
918
919 2002-08-01  Reinhard Max  <max@suse.de>
920
921         * win/tclWinPort.h: The windows headers don't provide socklen_t,
922         so we have to do it.
923
924 2002-07-31  Miguel Sofer  <msofer@users.sourceforge.net>
925
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.
930
931 2002-07-31  Miguel Sofer  <msofer@users.sourceforge.net>
932
933         * generic/tclInterp.c: signed/unsigned comparison warning fixed
934         (Vince Darley).
935
936 2002-07-31  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
937
938         * unix/tcl.m4 (SC_BUGGY_STRTOD): Enabled caching of test results.
939
940         * unix/tcl.m4 (SC_BUGGY_STRTOD): Solaris 2.8 still has a buggy
941         strtod() implementation; make sure we detect it.
942
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]
946
947 2002-07-30  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
948
949         * tests/io.test: 
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
955           binary data.
956
957 2002-07-29  Mo DeJong  <mdejong@users.sourceforge.net>
958
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.
966         [Tcl patch 588290]
967
968 2002-07-29  Reinhard Max  <max@suse.de>
969
970         * unix/tcl.m4 (SC_SERIAL_PORT): Fixed detection for cases when
971                                         configure's stdin is not a tty.
972         
973         * unix/tclUnixPort.h: 
974         * generic/tclIOSock.c:          Changed size_t to socklen_t in
975                                         socket-related function calls.
976
977         * unix/configure.in:            Added test and fallback definition
978                                         for socklen_t.
979         
980         * unix/configure:               generated.
981
982 2002-07-29  Miguel Sofer  <msofer@users.sourceforge.net>
983
984         * generic/tclObj.c: fixed a comment
985
986         * generic/tcl.h: 
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.
995
996 2002-07-29  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
997
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.
1005
1006 2002-07-28  Miguel Sofer  <msofer@users.sourceforge.net>
1007
1008         * generic/tcl.h: 
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
1020         traces. 
1021
1022 2002-07-27  Mo DeJong  <mdejong@users.sourceforge.net>
1023
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.
1045
1046 2002-07-26  Miguel Sofer  <msofer@users.sourceforge.net>
1047
1048         * generic/tclExecute.c: fixed Tcl_Obj leak in code corresponding
1049         to the macro NEXT_INST_V(x, 0, 1) [Bug 587495].
1050         
1051 2002-07-26  Miguel Sofer  <msofer@users.sourceforge.net>
1052
1053         * generic/tclVar.c (TclObjLookupVar): leak fix and improved
1054         comments. 
1055
1056 2002-07-26  Jeff Hobbs  <jeffh@ActiveState.com>
1057
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.
1061
1062 2002-07-24  Miguel Sofer  <msofer@users.sourceforge.net>
1063
1064         * generic/tclExecute.c: 
1065         * tests/expr-old.test: fix for erroneous error messages in [expr],
1066         [Bug  587140] reported by Martin Lemburg.
1067
1068 2002-07-25  Joe English  <jenglish@users.sourceforge.net>
1069         * generic/tclProc.c: fix for Tk Bug #219218 "error handling 
1070         with bgerror in Tk"
1071
1072 2002-07-24  Miguel Sofer  <msofer@users.sourceforge.net>
1073
1074         * generic/tclExecute.c: restoring full TCL_COMPILE_DEBUG
1075         functionality.
1076
1077 2002-07-24  Don Porter  <dgp@users.sourceforge.net>
1078
1079         * tests/unixInit.test: relaxed unixInit-3.1 to accept iso8859-15
1080         as a valid C encoding.  [Bug 575336]
1081
1082 2002-07-24  Miguel Sofer  <msofer@users.sourceforge.net>
1083
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.
1088
1089 2002-07-24  Daniel Steffen  <das@users.sourceforge.net>
1090
1091         * unix/Makefile.in:
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).
1097
1098 2002-07-23  Joe English  <jenglish@users.sourceforge.net>
1099
1100         * doc/OpenFileChnl.3: (Updates from Larry Virden)
1101         * doc/open.n:
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.
1106
1107 2002-07-23  Mo DeJong  <mdejong@users.sourceforge.net>
1108
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.
1112         [Tcl bug 219220]
1113
1114 2002-07-23  Mo DeJong  <mdejong@users.sourceforge.net>
1115
1116         * unix/Makefile.in: Combine ranlib tests and
1117         avoid printing unless ranlib is actually run.
1118
1119 2002-07-23  Mo DeJong  <mdejong@users.sourceforge.net>
1120
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.
1124
1125 2002-07-22  Vince Darley  <vincentdarley@users.sourceforge.net>
1126
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:
1131         * generic/tcl.h:
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.
1136         
1137         * generic/tclInt.h: removed tclNativeFilesystem declaration
1138         since it is now static again.
1139         
1140 2002-07-22  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1141
1142         * tests/expr.test (expr-22.*): Added tests to help detect the
1143         corrected handling.
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]
1148
1149 2002-07-21  Don Porter  <dgp@users.sourceforge.net>
1150
1151         * tclIOUtil.c: Silence compiler warning. [Bug 584408].
1152
1153 2002-07-19  Vince Darley  <vincentdarley@users.sourceforge.net>
1154
1155         * generic/tclIOUtil.c: fix to GetFilesystemRecord
1156         * win/tclWinFile.c:
1157         * unix/tclUnixFile.c: fix to subtle problem with links shown
1158         up by latest tclkit builds.
1159
1160 2002-07-19  Mo DeJong  <mdejong@users.sourceforge.net>
1161
1162         * unix/configure:
1163         * unix/configure.in:
1164         * win/configure:
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.
1168         [Bug 583573]
1169
1170 2002-07-19  Vince Darley  <vincentdarley@users.sourceforge.net>
1171
1172         * unix/Makefile.in: fix to build on MacOS X [Bug 529801], bug
1173         report and fix from jcw.
1174
1175 2002-07-19  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1176
1177         * win/tclWinSerial.c (no_timeout): Made this variable static.
1178
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
1182         library.
1183
1184         * generic/tclCompExpr.c (operatorTable): 
1185         * unix/tclUnixTime.c (tmKey):
1186         * generic/tclIOUtil.c (theFilesystemEpoch, filesystemWantToModify,
1187         filesystemIteratorsInProgress, filesystemOkToModify): Made these
1188         variables static.
1189
1190         * unix/tclUnixFile.c:           Renamed nativeFilesystem to
1191         * win/tclWinFile.c:             tclNativeFilesystem and declared
1192         * generic/tclIOUtil.c:          it properly in tclInt.h
1193         * generic/tclInt.h: 
1194
1195         * generic/tclUtf.c (totalBytes): Made this array static and const.
1196
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.
1200
1201         * license.terms: Added AS to list of copyright holders; it's only
1202         fair for the current gatekeepers to be listed here!
1203
1204         * tests/cmdMZ.test: Renamed constraint for clarity. [Bug#583427]
1205         Added tests for the [time] command, which was previously only
1206         indirectly tested!
1207
1208 2002-07-18  Vince Darley  <vincentdarley@users.sourceforge.net>
1209
1210         * generic/tclInt.h:
1211         * generic/tcl.h:
1212         * */*Load*.c: added comments on changes of 07/17 and 
1213         replaced clientData with Tcl_LoadHandle in all locations.
1214
1215         * generic/tclFCmd.c:
1216         * tests/fileSystem.test: fixed a 'knownBug' with 'file
1217         attributes ""'
1218         * tests/winFCmd.test: 
1219         * tests/winPipe.test:
1220         * tests/fCmd.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.
1224         
1225 2002-07-17  Miguel Sofer  <msofer@users.sourceforge.net>
1226
1227         * generic/tclBasic.c (CallCommandTraces): delete traces now
1228         receive the FQ old name of the command. 
1229         [Bug 582532] (Don Porter)
1230
1231 2002-07-18  Vince Darley  <vincentdarley@users.sourceforge.net>
1232
1233         * tests/ioUtil.test: added constraints to 1.4,2.4 so they
1234         don't run outside of tcltest. [Bugs 583276,583277]
1235         
1236 2002-07-17  Miguel Sofer  <msofer@users.sourceforge.net>
1237
1238         * generic/tclVar.c (DupParsedVarName): nasty bug fixed, reported
1239         by Vince Darley.
1240
1241 2002-07-17  Miguel Sofer  <msofer@users.sourceforge.net>
1242
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.
1246         
1247 2002-07-17  Vince Darley  <vincentdarley@users.sourceforge.net>
1248
1249         * generic/tclInt.h:
1250         * generic/tclIOUtil.c:
1251         * generic/tclLoadNone.c:
1252         * unix/tclLoadAout.c:
1253         * unix/tclLoadDl.c:
1254         * unix/tclLoadDld.c:
1255         * unix/tclLoadDyld.c:
1256         * unix/tclLoadNext.c:
1257         * unix/tclLoadOSF.c:
1258         * unix/tclLoadShl.c:
1259         * mac/tclMacLoad.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.
1264
1265 2002-07-17  D. Richard Hipp    <drh@hwaci.com>
1266
1267         * library/msgcat/msgcat.tcl: fix a comment that was causing
1268         problems for programs (ex: mktclapp) that embed the initialization
1269         scripts in strings.
1270
1271 2002-07-17  Miguel Sofer  <msofer@users.sourceforge.net>
1272
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(). 
1279
1280 2002-07-17  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1281
1282         * generic/tclExecute.c (TclExecuteByteCode): Minor fixes to make
1283         this file compile with SunPro CC...
1284
1285 2002-07-17  Miguel Sofer  <msofer@users.sourceforge.net>
1286
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.
1296
1297         ** WARNING FOR BYTECODE MAINTAINERS **
1298         TCL_COMPILE_DEBUG is currently not functional; will be fixed ASAP.
1299         
1300 2002-07-16  Mo DeJong  <mdejong@users.sourceforge.net>
1301
1302         * unix/Makefile.in:
1303         * win/Makefile.in: Add a more descriptive warning
1304         in the event `make genstubs` needs to be rerun.
1305
1306 2002-07-16  Mo DeJong  <mdejong@users.sourceforge.net>
1307
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.
1314
1315 2002-07-16  Mo DeJong  <mdejong@users.sourceforge.net>
1316
1317         * unix/configure: Regen.
1318         * unix/configure.in: Remove useless subst of TCL_BIN_DIR.
1319
1320 2002-07-15  Miguel Sofer  <msofer@users.sourceforge.net>
1321
1322         * generic/tclVar.c: inaccurate comment fixed
1323         
1324 2002-07-15  Miguel Sofer  <msofer@users.sourceforge.net>
1325
1326         * generic/tclBasic.c (Tcl_AddObjErrorInfo):
1327         * generic/tclExecute.c (TclUpdateReturnInfo):
1328         * generic/tclInt.h:     
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
1334         caching. 
1335
1336 2002-07-15  Miguel Sofer  <msofer@users.sourceforge.net>
1337
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. 
1342         
1343         * generic/tclInt.decls:
1344         * generic/tclInt.h:
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.
1350
1351         * tests/set-old.test:
1352         * tests/var.test: slight modification of error messages due to the
1353         modifications in the tclVar.c code.
1354
1355 2002-07-15  Don Porter  <dgp@users.sourceforge.net>
1356
1357         * tests/unixInit.test:  Improved constraints to protect /tmp.   
1358           [Bug 581403]
1359
1360 2002-07-15  Vince Darley  <vincentdarley@users.sourceforge.net>
1361
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.
1370         
1371 2002-07-14  Don Porter  <dgp@users.sourceforge.net>
1372
1373         * generic/tclInt.h:     Removed declarations that duplicated entries
1374           in the (internal) stub table.
1375         
1376         * library/tcltest/tcltest.tcl:  Corrected errors in handling of
1377           configuration options -constraints and -limitconstraints.
1378
1379         * README:               Bumped HEAD to version 8.4b2 so we can
1380         * generic/tcl.h:        distinguish it from the 8.4b1 release.
1381         * tools/tcl.wse.in:
1382         * unix/configure*:
1383         * unix/tcl.spec:
1384         * win/README.binary:
1385         * win/configure*:
1386
1387 2002-07-11  Vince Darley  <vincentdarley@users.sourceforge.net>
1388
1389         * doc/file.n:
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.
1395
1396 2002-07-11  Don Porter  <dgp@users.sourceforge.net>
1397
1398         * library/tcltest/tcltest.tcl: Corrected reaction to existing but
1399         false ::tcl_interactive.
1400
1401         * doc/Hash.3: Overlooked CONST documentation update.
1402
1403 2002-07-11  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1404
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()
1407         and panic().
1408
1409 2002-07-11  Miguel Sofer  <msofer@users.sourceforge.net>
1410
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.
1415
1416 2002-07-11  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1417
1418         * tests/cmdAH.test: [file attr -perm] is Unix-only, so add [catch]
1419         when not inside a suitably-protected test.
1420
1421 2002-07-10  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1422
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.
1427
1428 2002-07-10  Don Porter  <dgp@users.sourceforge.net>
1429
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].
1434
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:
1438         * tests/env.test:
1439         * tests/event.test:
1440         * tests/exec.test:
1441         * tests/io.test:
1442         * tests/ioCmd.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:
1450
1451 2002-07-10  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1452
1453         * tests/cmdAH.test: Removed [exec] of Unix utilities. [Bug 579211]
1454
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]
1458
1459 2002-07-08  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
1460
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
1464           the local host.
1465
1466 2002-07-08  Don Porter  <dgp@users.sourceforge.net>
1467
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]
1471
1472 2002-07-08  Vince Darley  <vincentdarley@users.sourceforge.net>
1473
1474         * tests/cmdAH.test:
1475         * tests/fCmd.test:
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:
1479         * generic/tcl.h:
1480         * generic/tclInt.h:
1481         * generic/tclTest.c:
1482         * mac/tclMacChan.c:
1483         * unix/tclUnixChan.c:
1484         * win/tclWinChan.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]
1491         
1492 2002-07-06  Don Porter  <dgp@users.sourceforge.net>
1493
1494         * tests/pkgMkIndex.test:  Constrained tests of [load] package indexing
1495         to those platforms where the testing shared libraries have been built.
1496         [Bug 578166].
1497
1498 2002-07-05  Don Porter  <dgp@users.sourceforge.net>
1499         * changes: added recent changes
1500
1501 2002-07-05  Reinhard Max  <max@suse.de>
1502
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.
1507
1508 2002-07-05  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1509
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...
1515
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...
1519
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: 
1527
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...
1532         * tests/env.test:
1533
1534 2002-07-05  Jeff Hobbs  <jeffh@ActiveState.com>
1535
1536         *** 8.4b1 TAGGED FOR RELEASE ***
1537
1538 2002-07-04  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1539
1540         * tests/cmdMZ.test (cmdMZ-1.4): 
1541         * tests/cmdAH.test: More fixing of writable-current-dir
1542         assumption. [Bug 575824]
1543
1544 2002-07-04  Miguel Sofer  <msofer@users.sourceforge.net>
1545
1546         * tests/basic.test: Same issue as below; fixed [Bug 575817]
1547         
1548 2002-07-04  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
1549
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.
1554
1555         * All the bugs below are instances of the same problem: The
1556           testsuite assumes [pwd] = [temporaryDirectory] and writable.
1557
1558         * tests/iogt.test: Fixed bug #575860.
1559         * tests/io.test:   Fixed bug #575862.
1560         * tests/exec.test: 
1561         * tests/ioCmd.test: Fixed bug #575836.
1562
1563 2002-07-03  Don Porter  <dgp@users.sourceforge.net>
1564
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.
1569
1570         * unix/Makefile.in: removed tests/pkg/* from `make dist`
1571
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.
1592
1593         * tests/main.test:      Cheap fix for [Bugs 575851, 575858].  Avoid
1594         * tests/tcltest.test:   non-writable . by [cd [temporaryDirectory]].
1595
1596         * library/auto.tcl: Fix [tcl_findLibrary] to be sure it sets
1597           $varName only if a successful library script is found.
1598           [Bug 577033]
1599
1600 2002-07-03  Miguel Sofer  <msofer@users.sourceforge.net>
1601
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].
1605
1606 2002-07-02  Joe English  <jenglish@users.sourceforge.net>
1607
1608         * doc/tcltest.n: Markup fixes, spellcheck.
1609
1610 2002-07-02  Don Porter  <dgp@users.sourceforge.net>
1611
1612         * doc/tcltest.n: more refinements of the documentation.
1613
1614         * library/tcltest/tcltest.tcl: Added trace to be sure the stdio
1615           constraint is updated whenever the [interpreter] changes.
1616
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.
1621         * tests/http.test:
1622         * tests/io.test:
1623
1624         * library/tcltest/tcltest.tcl: Simplified logic of
1625           [GetMatchingFiles] and [GetMatchingDirectories], removing
1626           special case processing.
1627
1628         * doc/tcltest.n: More documentation updates.  Reference sections
1629           are complete.  Only examples need adding.
1630
1631 2002-07-02  Vince Darley  <vincentdarley@users.sourceforge.net>
1632
1633         * tests/fCmd.test: 
1634         * generic/tclCmdAH.c: clearer error msgs for 'file link',
1635         as per the man page.
1636
1637 2002-07-01  Joe English  <jenglish@users.sourceforge.net>
1638
1639         * doc/Access.3:
1640         * doc/AddErrInfo.3:
1641         * doc/Alloc.3:
1642         * doc/Backslash.3:
1643         * doc/CrtChannel.3:
1644         * doc/CrtSlave.3:
1645         * doc/Encoding.3:
1646         * doc/Eval.3:
1647         * doc/FileSystem.3:
1648         * doc/Notifier.3:
1649         * doc/OpenFileChnl.3:
1650         * doc/ParseCmd.3:
1651         * doc/RegExp.3:
1652         * doc/Tcl_Main.3:
1653         * doc/Thread.3:
1654         * doc/TraceCmd.3:
1655         * doc/Utf.3:
1656         * doc/WrongNumArgs.3:
1657         * doc/binary.n:
1658         * doc/clock.n:
1659         * doc/expr.n:
1660         * doc/fconfigure.n:
1661         * doc/glob.n:
1662         * doc/http.n:
1663         * doc/interp.n:
1664         * doc/lsearch.n:
1665         * doc/lset.n:
1666         * doc/msgcat.n:
1667         * doc/packagens.n:
1668         * doc/pkgMkIndex.n:
1669         * doc/registry.n:
1670         * doc/resource.n:
1671         * doc/safe.n:
1672         * doc/scan.n:
1673         * doc/tclvars.n:  Spell-check, fixed typos (Updates from Larry Virden).
1674
1675 2002-07-01  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1676
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] 
1682
1683 2002-07-01  Don Porter  <dgp@users.sourceforge.net>
1684
1685         * doc/tcltest.n: more work in progress updating tcltest docs.
1686
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
1690         remains the same.
1691
1692         * tests/pkg/samename.tcl: restored.  needed by pkgMkIndex.test.
1693
1694         * library/tcltest/tcltest.tcl: restored writeability testing of
1695         -tmpdir, augmented by a special exception for the deafault value.
1696
1697 2002-07-01  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1698
1699         * doc/concat.n: Documented the *real* behaviour of [concat]!
1700
1701 2002-06-30  Don Porter  <dgp@users.sourceforge.net>
1702
1703         * doc/tcltest.n: more work in progress updating tcltest docs.
1704
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:
1711
1712         * library/tcltest/tcltest.tcl:  Stopped checking for writeability
1713         of -tmpdir value because no default directory can be guaranteed to
1714         be writeable.
1715
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.
1723
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).
1730
1731         * unix/mkLinks: `make mklinks` on 6-27 commits.
1732
1733 2002-06-28  Miguel Sofer  <msofer@users.sourceforge.net>
1734
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.
1738
1739 2002-06-28  Don Porter  <dgp@users.sourceforge.net>
1740
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.
1744         [Bug 575150]
1745
1746 2002-06-28  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1747
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:
1754
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.
1758
1759 2002-06-27  Don Porter  <dgp@users.sourceforge.net>
1760
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.
1764         * doc/registry.n:
1765         * doc/tcltest.n:
1766
1767         * library/tcltest/tcltest.tcl:  Made sure that the TCLTEST_OPTIONS
1768         environment variablle configures tcltest at package load time.
1769
1770 2002-06-26  Vince Darley  <vincentdarley@users.sourceforge.net>
1771
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.
1776         * tests/cmdAH.test:
1777         * unix/tclUnixFCmd.c: fix to bug reported as part of
1778         (Patch #566669).  Thanks to Taguchi, Takeshi for the report.
1779         
1780 2002-06-26  Reinhard Max  <max@suse.de>
1781
1782         * unix/tclUnixTime.c: Make [clock format] respect locale settings.
1783         * tests/clock.test:   Bug #565880. ***POTENTIAL INCOMPATIBILITY***
1784
1785 2002-06-26  Miguel Sofer  <msofer@users.sourceforge.net>
1786
1787         * doc/CrtInterp.3:
1788         * doc/StringObj.3: clarifications by Don Porter, bugs #493995 and
1789         #500930. 
1790         
1791 2002-06-24  Don Porter  <dgp@users.sourceforge.net>
1792
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]
1796
1797 2002-06-25  Reinhard Max  <max@suse.de>
1798
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.
1803
1804         * unix/mkLinks:      generated
1805         * unix/configure:
1806
1807         * unix/README:       Added documentation for the new features.
1808
1809         * unix/tcl.m4 (SC_PATH_TCLCONFIG): Replaced ${exec_prefix}/lib by
1810         ${libdir}.
1811
1812 2002-06-25  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1813
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
1818         no advantage.
1819         (SetEndOffsetFromAny): Same fix, though this wasn't on the path
1820         excited by the bug.
1821
1822 2002-06-24  Don Porter  <dgp@users.sourceforge.net>
1823
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.
1827
1828 2002-06-22  Don Porter  <dgp@users.sourceforge.net>
1829
1830         * changes: updated changes file for 8.4b1 release.
1831
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)
1841         * tests/fCmd.test:
1842         * tests/format.test:
1843         * tests/http.test:
1844         * tests/httpold.test:
1845         * tests/ioUtil.test:
1846         * tests/link.test:
1847         * tests/load.test:
1848         * tests/namespace.test:
1849         * tests/pkgMkIndex.test:
1850         * tests/reg.test:
1851         * tests/result.test:
1852         * tests/scan.test:
1853         * tests/stack.test:
1854
1855 2002-06-22  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
1856
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.
1860
1861 2002-06-21  Joe English  <jenglish@users.sourceforge.net>
1862
1863         * generic/tclCompExpr.c:
1864         * generic/tclParseExpr.c: LogSyntaxError() should reset 
1865         the interpreter result [Bug 550142 "Tcl_ExprObj -> abort"] 
1866
1867 2002-06-21  Don Porter  <dgp@users.sourceforge.net>
1868         
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.
1873
1874         * library/init.tcl:  Corrected comments and namespace style
1875         issues.  Thanks to Bruce Stephens. [Bug 572025]
1876
1877 2002-06-21  Vince Darley  <vincentdarley@users.sourceforge.net>
1878
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:       
1886         * generic/tcl.h:
1887         * generic/tcl.decls:
1888         * doc/FileSystem.3:
1889         * doc/file.n:
1890         * mac/tclMacFile.c:
1891         * unix/tclUnixFile.c:
1892         * win/tclWinFile.c: Also enhanced speed of 'file normalize' on
1893         Windows.
1894
1895 2002-06-20  Miguel Sofer  <msofer@users.sourceforge.net>
1896
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.
1900
1901 2002-06-20  Miguel Sofer  <msofer@users.sourceforge.net>
1902
1903         * generic/tclExecute.c (TclCompEvalObj): clarified and simplified
1904         the logic for compilation/recompilation.
1905
1906 2002-06-19  Joe English  <jenglish@users.sourceforge.net>
1907         * doc/file.n: Fixed indentation.  No substantive changes.
1908
1909 2002-06-19  Jeff Hobbs  <jeffh@ActiveState.com>
1910
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)
1914
1915 2002-06-19  Miguel Sofer  <msofer@users.sourceforge.net>
1916
1917         * generic/tclExecute.c (TEBC): removing unused "for(;;)" loop;
1918         improved comments; re-indentation.
1919
1920 2002-06-18  Miguel Sofer  <msofer@users.sourceforge.net>
1921
1922         * generic/tclExecute.c (TEBC): 
1923         - elimination of duplicated code in the non-immediate INST_INCR
1924           instructions. 
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
1933           INST_LSET.
1934
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.
1938
1939 2002-06-18  Miguel Sofer  <msofer@users.sourceforge.net>
1940
1941         * generic/tclExecute.c (TEBC, INST_DONE): small bug in the panic
1942         code for tcl-stack corruption.
1943
1944 2002-06-17  David Gravereaux <davygrvy@pobox.com>
1945
1946         Trims to support the removal of RESOURCE_INCLUDED from rc
1947         scripts from FR #565088.
1948
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.
1951
1952         * win/tcl.rc:
1953         * win/tclsh.rc: removed the #define RESOURCE_INCLUDED to let the
1954         built-in -DRC_INVOKED to the work.
1955
1956 2002-06-17  Jeff Hobbs  <jeffh@ActiveState.com>
1957
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:
1966         * generic/tclInt.h:
1967         * generic/tclIntDecls.h:
1968         * generic/tclStubInit.c:
1969         * generic/tclVar.c:
1970         * tests/trace.test:
1971
1972 2002-06-17  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
1973
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.
1978
1979 2002-06-17  Joe English  <jenglish@users.sourceforge.net>
1980
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
1983         full details.
1984
1985 2002-06-17  Don Porter  <dgp@users.sourceforge.net>
1986
1987         * doc/msgcat.n: Corrected en_UK references to en_GB.  UK is not
1988         a country designation recognized in ISO 3166.
1989
1990         * library/msgcat/msgcat.tcl:  More Windows Registry locale codes
1991         from Bruno Haible.
1992
1993         * doc/msgcat.n:
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]
2003
2004 2002-06-16  Miguel Sofer  <msofer@users.sourceforge.net>
2005
2006         * generic/tclCompile.c (TclCompileTokens): a better algorithm for
2007         the previous bug fix.
2008
2009 2002-06-16  Miguel Sofer  <msofer@users.sourceforge.net>
2010
2011         * generic/tclCompile.c (TclCompileTokens): 
2012         * tests/compile.test: [Bug 569438] in the processing of dollar
2013         variables; report by Georgios Petasis. 
2014         
2015 2002-06-16  Miguel Sofer  <msofer@users.sourceforge.net>
2016
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]).
2021
2022 2002-06-14  Miguel Sofer  <msofer@users.sourceforge.net>
2023
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
2028         comparisons.
2029         (TclExecuteByteCode): runtime peep-hole optimisation of
2030         INST_FOREACH - relies on peculiarities of the code produced by the
2031         bytecode compiler.
2032
2033 2002-06-14  David Gravereaux <davygrvy@pobox.com>
2034
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.
2038
2039 2002-06-14  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2040
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.
2045
2046 2002-06-13  Miguel Sofer  <msofer@users.sourceforge.net>
2047
2048         * generic/tclExecute.c (TclExecuteByteCode): consolidated code for
2049         the conditional branch instructions.
2050
2051 2002-06-13  Miguel Sofer  <msofer@users.sourceforge.net>
2052
2053         * generic/tclExecute.c (TclExecuteByteCode): fixed the previous
2054         patch - wouldn't compile with TCL_COMPILE_DEBUG set.
2055
2056 2002-06-13  Miguel Sofer  <msofer@users.sourceforge.net>
2057
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".
2062
2063 2002-06-13  Miguel Sofer  <msofer@users.sourceforge.net>
2064
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].
2072
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 ...
2077         
2078 2002-06-13  Vince Darley  <vincentdarley@users.sourceforge.net>
2079
2080         * tests/fCmd.test:
2081         * tests/winFile.test:
2082         * tests/fileSystem.test:
2083         * generic/tclTest.c:
2084         * generic/tclCmdAH.c:
2085         * generic/tclIOUtil.c:
2086         * doc/FileSystem.3:
2087         * mac/tclMacFile.c:
2088         * unix/tclUnixFile.c:
2089         * win/tclWinFile.c: fixed up further so both compiles and
2090         actually works with VC++ 5 or 6.
2091         * win/tclWinInt.h: 
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
2098         run on unix).
2099
2100 2002-06-12  Miguel Sofer  <msofer@users.sourceforge.net>
2101
2102         * tclBasic.c (Tcl_DeleteTrace): fixed [Bug 568123] (thanks to
2103         Hemang Lavana)
2104         
2105 2002-06-12  Jeff Hobbs  <jeffh@ActiveState.com>
2106
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.
2112
2113 2002-06-12  Vince Darley  <vincentdarley@users.sourceforge.net>
2114
2115         * generic/tclIOUtil.c:
2116         * generic/tcl.decls:
2117         * generic/tclDecls.h: made code for Tcl_FSNewNativePath
2118         agree with man pages.
2119         
2120         * doc/FileSystem.3: clarified the circumstances under which
2121         certain functions are called in the presence of symlinks.
2122         
2123         * win/tclWinFile.c:
2124         * win/tclWinPort.h: 
2125         * win/tclWinInt.h: 
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.
2134
2135 2002-06-11  Miguel Sofer  <msofer@users.sourceforge.net>
2136
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.
2141
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].
2148
2149 2002-06-11  Miguel Sofer  <msofer@users.sourceforge.net>
2150
2151         * doc/global.n:
2152         * doc/info.n:
2153         * test/info.test:
2154         * generic/tclCmdIL.c: fix for [Bug 567386], [info locals] was
2155         reporting some linked variables.
2156         
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.
2163
2164 2002-06-11  Miguel Sofer  <msofer@users.sourceforge.net>
2165
2166         * generic/tclExecute.c: optimised algorithm for exception range
2167         lookup; part of [Patch 453709].
2168
2169 2002-06-10  Vince Darley  <vincentdarley@users.sourceforge.net>
2170
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.
2177
2178 2002-06-07  Don Porter  <dgp@users.sourceforge.net>
2179
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.
2182
2183 2002-06-07  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2184
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...
2189
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.
2197
2198 2002-06-06  Mo DeJong  <mdejong@users.sourceforge.net>
2199
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]
2203
2204 2002-06-06  Don Porter  <dgp@users.sourceforge.net>
2205
2206         * tests/tcltest.test:  Corrections to test suite so that tests
2207         of failing [test]s don't show up themselves as failing tests.
2208
2209         * tests/io.test: Fixed up namespace variable resolution issues
2210         revealed by running test suite with "-singleproc 1".
2211
2212         * doc/tcltest.n:
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]
2220
2221 2002-06-06  Daniel Steffen  <das@users.sourceforge.net>
2222
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).
2234
2235 2002-06-05  Don Porter  <dgp@users.sourceforge.net>
2236
2237         * doc/Tcl_Main.3: Documented $tcl_rcFileName and added more
2238         clarifications about the intended use of Tcl_Main(). [Bug 505651]
2239
2240 2002-06-05  Daniel Steffen  <das@users.sourceforge.net>
2241
2242         * generic/tclFileName.c (TclGlob): mac specific fix to
2243         recent changes in 'glob -tails' handling.
2244         * mac/tclMacPort.h:
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.
2249
2250 2002-06-04  Don Porter  <dgp@users.sourceforge.net>
2251
2252         * library/tcltest/tcltest.tcl:
2253         * tests/init.test:
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.
2258
2259 2002-06-04  Mo DeJong  <mdejong@users.sourceforge.net>
2260
2261         * win/README: Update msys+mingw URL.
2262
2263 2002-06-03  Don Porter  <dgp@users.sourceforge.net>
2264
2265         * doc/tcltest.n:
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]
2273
2274 2002-06-03  Miguel Sofer  <msofer@users.sourceforge.net>
2275
2276         * doc/namespace.n: added description of [namepace forget]
2277         behaviour for unqualified patterns [Bug 559268]
2278
2279 2002-06-03  Miguel Sofer  <msofer@users.sourceforge.net>
2280
2281         * generic/tclExecute.c: reverting an accidental modification in
2282         the last commit.
2283         
2284 2002-06-03  Miguel Sofer  <msofer@users.sourceforge.net>
2285
2286         * doc/Tcl.n: clarify the empty variable name issue ([Bug 549285]
2287         reported by Tom Krehbiel, patch by Don Porter).
2288
2289 2002-05-31  Don Porter  <dgp@users.sourceforge.net>
2290
2291         * library/package.tcl:  Fixed leak of slave interp in [pkg_mkIndex].
2292         Thanks to Helmut for report.  [Bug 550534]
2293
2294         * tests/io.test:
2295         * tests/main.test:  Use the "stdio" constraint to control whether
2296         an [open "|[interpreter]"] is attempted.
2297
2298         * generic/tclExecute.c (TclMathInProgress,TclExecuteByteCode
2299                 ExprCallMathFunc):
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
2312
2313 2002-05-30  Miguel Sofer  <msofer@users.sourceforge.net>
2314
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].
2320
2321 2002-05-30  Vince Darley  <vincentdarley@users.sourceforge.net>
2322
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.
2328         
2329 2002-05-29  Jeff Hobbs  <jeffh@ActiveState.com>
2330
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
2334         bigendian systems.
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.
2338
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).
2344
2345 2002-05-29  Don Porter  <dgp@users.sourceforge.net>
2346
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.
2350
2351 2002-05-29  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2352
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
2357
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
2364         low-byte.)
2365
2366 2002-05-29  Jeff Hobbs  <jeffh@ActiveState.com>
2367
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
2376         logic).
2377
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.
2382
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.
2389
2390         * generic/tclCompCmds.c (TclCompileStringCmd): removed error
2391         creation in code that no longer throws an error.
2392
2393         * tests/string.test:
2394         * tests/stringComp.test: added more string comparison checks.
2395
2396         * tests/clock.test: better qualified 9.1 constraint check for %s.
2397
2398 2002-05-28  Jeff Hobbs  <jeffh@ActiveState.com>
2399
2400         * generic/tclThreadAlloc.c (TclpRealloc, TclpFree): protect
2401         against the case when NULL is based.
2402
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]
2413
2414 2002-05-28  Vince Darley  <vincentdarley@users.sourceforge.net>
2415
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]
2419         
2420 2002-05-27  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2421
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.
2428
2429 2002-05-24  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2430
2431         === Changes due to TIP#91 ===
2432
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.
2460
2461 2002-05-24  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
2462         
2463         * tests/winPipe.test: Applied patch for SF Tcl Bug #549617. Patch
2464           and bug report by Kevin Kenny <kennykb@users.sourceforge.net>.
2465
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
2469           Peter Staplin.
2470
2471 2002-05-21  Mo DeJong  <mdejong@users.sourceforge.net>
2472
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]
2480
2481 2002-05-20  Daniel Steffen  <das@users.sourceforge.net>
2482
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 '.
2486
2487 2002-05-16  Joe English  <jenglish@users.sf.net>
2488
2489         * doc/CrtObjCmd.3: 
2490         Added Tcl_GetCommandFromObj, Tcl_GetCommandFullName
2491         (Tcl Bug #547987, #414921)
2492
2493 2002-05-14  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2494
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.
2498
2499 2002-05-13  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2500
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...
2505
2506 2002-05-13  Vince Darley  <vincentdarley@users.sourceforge.net>
2507
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.
2516         
2517 2002-05-10  Don Porter  <dgp@users.sourceforge.net>
2518
2519         * tests/load.test:
2520         * tests/safe.test:
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].
2524
2525 2002-05-08    David Gravereaux <davygrvy@pobox.com>
2526
2527         * doc/file.n:
2528         * tools/man2tcl.c:
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.
2535
2536 2002-05-08  David Gravereaux <davygrvy@pobox.com>
2537
2538         * tools/man2tcl.c:
2539         * tools/man2help2.tcl: Proper source of macro error mis-
2540         understanding single-quote as the leading macro command found
2541         and repaired.
2542
2543         * doc/file.n: Reverted to prior state before I messed with
2544         it.
2545
2546 2002-05-08  Don Porter  <dgp@users.sourceforge.net>
2547
2548         * library/tcltest/tcltest.tcl: Corrected [uplevel] quoting when
2549         [source]-ing test script in subdirectories.
2550         * tests/fileName.test:
2551         * tests/load.test:
2552         * tests/main.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.
2556
2557 2002-05-07  David Gravereaux <davygrvy@pobox.com>
2558
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.
2565
2566         * doc/file.n:
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.
2571
2572 2002-05-07  Vince Darley  <vincentdarley@users.sourceforge.net>
2573
2574         * generic/tclFileName.c: fix to similar segfault when using 
2575         'glob -types nonsense -dir dirname -join * *'. [Bug 553320]
2576         
2577         * doc/FileSystem.3: further documentation on vfs.
2578         * tests/cmdAH.test:
2579         * tests/fileSystem.test:
2580         * tests/pkgMkindex.test: Fix to testsuite bugs when running out
2581         of directory whose name contains '{' or '['.
2582
2583 2002-05-07  Miguel Sofer  <msofer@users.sourceforge.net>
2584
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.
2589
2590 2002-05-02  Vince Darley  <vincentdarley@users.sourceforge.net>
2591
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 
2595         long lines.
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:
2600         * win/tclWinFile.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
2609         values.
2610         * tests/fileSystem.test: test for 'file system' returning correct
2611         values.  Clean up after failed previous test run.
2612         
2613 2002-04-26  Jeff Hobbs  <jeffh@ActiveState.com>
2614
2615         * unix/configure:
2616         * unix/tcl.m4: change HP-11 SHLIB_LD_LIBS from "" to ${LIBS} so
2617         that the .sl knows its dependent libs.
2618
2619 2002-04-26  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2620
2621         * tests/obj.test (obj-11.[56]): Test conversion to boolean more
2622         thoroughly.
2623         * generic/tclObj.c (SetBooleanFromAny): Was not calling an integer
2624         parsing function on native 64-bit platforms!  [Bug 548686]
2625
2626 2002-04-24  Jeff Hobbs  <jeffh@ActiveState.com>
2627
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.
2631
2632 2002-04-23  Jeff Hobbs  <jeffh@ActiveState.com>
2633
2634         * doc/exec.n: 
2635         * doc/tclvars.n: doc updates [Patch #509426] (gravereaux)
2636
2637 2002-04-24  Daniel Steffen  <das@users.sourceforge.net>
2638
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.
2643
2644 2002-04-23  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2645
2646         * doc/TraceCmd.3: New file that documents Tcl_CommandTraceInfo,
2647         Tcl_TraceCommand and Tcl_UntraceCommand [Bug 414927]
2648
2649 2002-04-22  Jeff Hobbs  <jeffh@ActiveState.com>
2650
2651         * generic/tclAlloc.c:
2652         * generic/tclInt.h:
2653         * generic/tclThreadAlloc.c (new):
2654         * unix/Makefile.in:
2655         * unix/tclUnixThrd.c:
2656         * win/Makefile.in:
2657         * win/tclWinInt.h:
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).
2664
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.
2668
2669         * generic/tclCmdAH.c (Tcl_FileObjCmd): added cast in FILE_SIZE.
2670
2671         * win/tclWinFCmd.c (DoDeleteFile): check return of setattr API
2672         calls in file deletion for correct Win32 API handling.
2673
2674         * win/Makefile.in: correct dependencies for shell, gdb, runtest
2675         targets.
2676
2677         * doc/clock.n:
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.
2681
2682 2002-04-19  Don Porter  <dgp@users.sourceforge.net>
2683
2684         * generic/tclMain.c (Tcl_Main):  Free the memory allocated for the
2685         startup script path.  [Bug 543549]
2686
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.
2691
2692         * doc/msgcat.n:
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]
2696
2697 2002-04-20  Daniel Steffen  <das@users.sourceforge.net>
2698
2699         * generic/tclInt.decls:
2700         * generic/tclIntPlatDecls.h:
2701         * generic/tclStubInit.c:
2702         * mac/tclMacFCmd.c:
2703         * mac/tclMacFile.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)
2710
2711 2002-04-19  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2712
2713         * tests/lindex.test (lindex-3.7): 
2714         * generic/tclUtil.c (TclGetIntForIndex): Stopped indexes from
2715         hitting wide ints.  [Bug #526717]
2716
2717 2002-04-18  Miguel Sofer  <msofer@users.sourceforge.net>
2718
2719         * generic/tclNamesp.c:
2720         * tests/info.test: [Bug 545325] info level didn't report
2721         namespace eval, bug report by Richard Suchenwirth.
2722
2723 2002-04-18  Don Porter  <dgp@users.sourceforge.net>
2724
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]
2728
2729 2002-04-18  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
2730
2731         * generic/tclCmdIL.c (InfoBodyCmd): 
2732         * tests/info.test (info-2.6): Proc bodies without string reps
2733         would report as empty [Bug #545644]
2734
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.
2739
2740 2002-04-18  Miguel Sofer  <msofer@users.sourceforge.net>
2741
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.
2746
2747 2002-04-17  Jeff Hobbs  <jeffh@ActiveState.com>
2748
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)
2753
2754 2002-04-17  Don Porter  <dgp@users.sourceforge.net>
2755
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.
2760
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]
2764
2765 2002-04-16  Don Porter  <dgp@users.sourceforge.net>
2766
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]
2770
2771 2002-04-15  Miguel Sofer  <msofer@users.sourceforge.net>
2772
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
2776         [Bug 536955]. 
2777         
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.
2782
2783 2002-04-15  Don Porter  <dgp@users.sourceforge.net>
2784
2785         * tests/socket.test:  Increased timeout values so that tests have
2786         time to successfully complete even on slow/busy machines.  [Bug 523470]
2787
2788         * doc/tcltest.n:
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.
2795
2796 2002-04-11  Jeff Hobbs  <jeffh@ActiveState.com>
2797
2798         * generic/tclNotify.c (TclFinalizeNotifier): remove remaining
2799         unserviced events on finalization.
2800
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
2805
2806         * tests/ioCmd.test: fixed iocmd-8.15 to have mac and unixPc variants.
2807
2808         * generic/tclParse.c (Tcl_ParseVar): conditionally incr obj
2809         refcount to prevent possible mem leak.
2810
2811 2002-04-08  Daniel Steffen  <das@users.sourceforge.net>
2812
2813         * generic/tcl.h: no <sys/types.h> on mac.
2814         * mac/tclMacFile.c: minor fixes to Vince's changes from 03-24.
2815         * mac/tclMacOSA.c:
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.
2823         * tests/basic.test:
2824         * tests/cmdAH.test:
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.
2829
2830 2002-04-06  Jeff Hobbs  <jeffh@ActiveState.com>
2831
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
2836         for now.
2837
2838 2002-04-05  Don Porter  <dgp@users.sourceforge.net>
2839
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]
2845
2846 2002-04-03  Jeff Hobbs  <jeffh@ActiveState.com>
2847
2848         * library/tcltest/tcltest.tcl: added getMatchingFiles back (alias
2849         to GetMatchingFiles), which was a public function in tcltest 1.0.
2850
2851 2002-04-01  Vince Darley  <vincentdarley@users.sourceforge.net>
2852
2853         * generic/tclEnv.c:
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.
2858         
2859 2002-04-01  Kevin Kenny  <kennykb@acm.org>
2860
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.
2865         
2866 2002-03-29  Jeff Hobbs  <jeffh@ActiveState.com>
2867
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.
2875
2876 2002-03-29  Don Porter  <dgp@users.sourceforge.net>
2877
2878         * doc/AllowExc.3:
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]
2885
2886 2002-03-28  Don Porter  <dgp@users.sourceforge.net>
2887
2888         * generic/tclVar.c: Refactored CallTraces to collect repeated
2889         handling of its returned value into CallTraces itself.
2890
2891 2002-03-28  David Gravereaux <davygrvy@pobox.com>
2892
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.
2900         [Bug 527941]
2901
2902         * doc/SetVar.3:
2903         * doc/TraceVar.3:
2904         * doc/UpVar.3:  .AP macro syntax repair.
2905
2906 2002-03-27  David Gravereaux <davygrvy@pobox.com>
2907
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.
2913         [Bug 527941]
2914
2915 2002-03-27  David Gravereaux <davygrvy@pobox.com>
2916
2917         * win/.cvsignore:
2918         * win/buildall.vc.bat:
2919         * win/coffbase.txt:
2920         * win/makefile.vc:
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
2927         macros.
2928         
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].
2933
2934 2002-03-28  Miguel Sofer  <msofer@users.sourceforge.net>
2935
2936         * generic/tclBasic.c (Tcl_EvalEx): passing the correct commandSize
2937         to TclEvalObjvInternal. [Bug 219362], fix by David Knoll.
2938
2939 2002-03-28  Miguel Sofer  <msofer@users.sourceforge.net>
2940
2941         * generic/tclBasic.c (Tcl_EvalEx):
2942         * tests/basic.test: avoid exceptional returns at level 0 
2943         [Bug 219181] 
2944
2945 2002-03-27  Don Porter  <dgp@users.sourceforge.net>
2946
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.
2952
2953         * tests/main.test: Added missing [after cancel]s.
2954
2955 2002-03-25  Don Porter  <dgp@users.sourceforge.net>
2956
2957         * tests/main.test: Removed workarounds for Bug 495977.
2958
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]
2967
2968 2002-03-25  Miguel Sofer  <msofer@users.sourceforge.net>
2969
2970         * doc/CrtTrace.3: small doc correction
2971         * generic/tclBasic.c (Tcl_DeleteTrace): Allow NULL callback on
2972         trace deletions [Bug 534728] (Hemang Lavana).
2973
2974 2002-03-24  Miguel Sofer  <msofer@users.sourceforge.net>
2975
2976         * generic/tclBasic.c (Tcl_EvalObjv): replaced obscure, incorrect
2977         code as described in [Bug 533907] (Don Porter).
2978
2979 2002-03-24  Don Porter  <dgp@users.sourceforge.net>
2980
2981         * library/tcltest/tcltest.tcl:  Use [interpreter] to set/query the
2982         executable currently running the tcltest package.  [Bug 454050]
2983
2984         * library/tcltest/tcltest.tcl:  Allow non-proc commands to be used
2985         as the customization hooks.  [Bug 495662]
2986
2987 2002-03-24  Vince Darley  <vincentdarley@users.sourceforge.net>
2988
2989         * generic/tclFilename.c:
2990         * generic/tclFCmd.c:
2991         * generic/tclTest.c:
2992         * generic/tcl.h:
2993         * generic/tclIOUtil.c:
2994         * win/tclWinFile.c:
2995         * win/tclWinFCmd.c:
2996         * win/tclWinPipe.c:
2997         * unix/tclUnixFile.c:
2998         * unix/tclUnixFCmd.c:
2999         * mac/tclMacFile.c:
3000         * doc/FileSystem.3:
3001         * doc/file.n:
3002         * tests/cmdAH.test:
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
3017         
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'
3023         extension.
3024
3025 2002-03-22  Miguel Sofer  <msofer@users.sourceforge.net>
3026
3027         * tests/basic.test (basic-46.1): adding test for [Bug 533758],
3028         fixed earlier today.
3029         
3030 2002-03-22  Jeff Hobbs  <jeffh@ActiveState.com>
3031
3032         * win/tclWinInt.h: moved undef of TCL_STORAGE_CLASS. [Bug #478579]
3033
3034 2002-03-22  Miguel Sofer  <msofer@users.sourceforge.net>
3035
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.
3042
3043 2002-03-21  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3044
3045         * doc/expr.n: Improved documentation for ceil and floor [Bug 530535]
3046
3047 2002-03-20  Don Porter  <dgp@users.sourceforge.net>
3048
3049         * doc/SetVar.3:
3050         * doc/TraceVar.3:
3051         * doc/UpVar.3:
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.
3067         [Patch 532642]
3068         * generic/tclDecls.h: 
3069         * generic/tclIntDecls.h: make genstubs
3070
3071 2002-03-15  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3072
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.
3076
3077 2002-03-14  Mo DeJong  <mdejong@users.sourceforge.net>
3078
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]
3091
3092 2002-03-14  Mo DeJong  <mdejong@users.sourceforge.net>
3093
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]
3100
3101 2002-03-11  Mo DeJong  <mdejong@users.sourceforge.net>
3102
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.
3107
3108 2002-03-11  Don Porter  <dgp@users.sourceforge.net>
3109
3110         * library/tcltest/tcltest.tcl:
3111         * library/tcltest/pkgIndex.tcl: Bumped tcltest package to 2.0.2.
3112
3113 2002-03-11  Mo DeJong  <mdejong@users.sourceforge.net>
3114
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.
3118
3119 2002-03-11  Mo DeJong  <mdejong@users.sourceforge.net>
3120
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.
3127
3128 2002-03-08  Mo DeJong  <mdejong@users.sourceforge.net>
3129
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.
3134
3135 2002-03-08  Jeff Hobbs  <jeffh@ActiveState.com>
3136
3137         * win/tclWinFCmd.c (DoCopyFile): correctly set retval to TCL_OK.
3138
3139 2002-03-07  Mo DeJong  <mdejong@users.sourceforge.net>
3140
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.
3146
3147 2002-03-07  Don Porter  <dgp@users.sourceforge.net>
3148
3149         * doc/interp.n:
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]
3155
3156 2002-03-06  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3157
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.
3163
3164 2002-03-06  Miguel Sofer  <msofer@users.sourceforge.net>
3165
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]. 
3169
3170 2002-03-06  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3171
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.
3176
3177 2002-03-05  Jeff Hobbs  <jeffh@ActiveState.com>
3178
3179         *** 8.4a4 TAGGED FOR RELEASE ***
3180
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
3184         exit.
3185
3186         * unix/README: added --enable-langinfo doc.
3187
3188         * unix/tcl.spec:
3189         * tools/tcl.wse.in: fixed URL refs to use www.tcl.tk or SF.
3190
3191 2002-03-04  Jeff Hobbs  <jeffh@ActiveState.com>
3192
3193         * README:
3194         * mac/README:
3195         * unix/Makefile.in:
3196         * unix/README:
3197         * win/README:
3198         * win/README.binary: updated to use www.tcl.tk URL.
3199
3200         * unix/Makefile.in: added older ChangeLogs to dist target.
3201
3202         * tests/io.test:
3203         * tests/encoding.test: corrected iso2022 encoding results.
3204         added encoding-24.*
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]
3209
3210 2002-03-01  Jeff Hobbs  <jeffh@ActiveState.com>
3211
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)
3217
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.
3223
3224 2002-02-28  Jeff Hobbs  <jeffh@ActiveState.com>
3225
3226         * generic/tclCmdMZ.c (TraceCommandProc): ensure that TraceCommandInfo
3227         structure was also deleted when a command was deleted to prevent a
3228         mem leak.
3229
3230         * generic/tclBasic.c (Tcl_CreateObjTrace): set tracePtr->flags
3231         correctly.
3232
3233         * generic/tclTimer.c (TimerExitProc): remove remaining events in
3234         tls on thread exit.
3235
3236 2002-02-28  Miguel Sofer  <msofer@users.sourceforge.net>
3237
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]. 
3241
3242 2002-02-28  Miguel Sofer  <msofer@users.sourceforge.net>
3243
3244         * generic/tclExecute.c: Replaced a few direct stack accesses 
3245         with the POP_OBJECT() macro [Bug 507181] (Don Porter).
3246
3247 2002-02-27  Don Porter  <dgp@users.sourceforge.net>
3248
3249         * doc/GetIndex.3:
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]
3257
3258         * generic/tclDecls.h: make genstubs
3259
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.
3263
3264 2002-02-27  Jeff Hobbs  <jeffh@ActiveState.com>
3265
3266         * generic/tclBasic.c (Tcl_EvalTokensStandard): corrected mem leak
3267         in error case.
3268
3269         * generic/tclTest.c (TestStatProc[123]): correct harmless UMRs.
3270
3271         * generic/tclLink.c (Tcl_LinkVar): correct mem leak in error case.
3272
3273 2002-02-27  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3274
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.
3278
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.
3287
3288 2002-02-26  Jeff Hobbs  <jeffh@ActiveState.com>
3289
3290         * generic/tclCmdAH.c (StoreStatData): corrected mem leak.
3291
3292         * generic/tclCmdMZ.c (Tcl_RegsubObjCmd): prevent obj leak in
3293           remedial regsub case.
3294
3295         * generic/tclFileName.c (Tcl_TranslateFileName): decr refcount for
3296           error case to prevent mem leak.
3297
3298         * generic/tclVar.c (Tcl_ArrayObjCmd): removed extra obj allocation.
3299
3300         * unix/tclUnixSock.c (Tcl_GetHostName): added an extra
3301           gethostbyname check to guard against failure with truncated
3302           names returned by uname.
3303
3304         * unix/configure:
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.
3307
3308         * unix/tclUnixChan.c: added Unix implementation of TIP #35, serial
3309           port support. [Patch #438509] (schroedter)
3310
3311 2002-02-26  Miguel Sofer  <msofer@users.sourceforge.net>
3312
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.
3317
3318 2002-02-25  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3319
3320         * mac/tclMacSock.c (TcpGetOptionProc): Changed to recognize the
3321           option "-error". Essentially ignores the option, always
3322           returning an empty string.
3323
3324 2002-02-25  Jeff Hobbs  <jeffh@ActiveState.com>
3325
3326         * doc/Alloc.3:
3327         * doc/LinkVar.3:
3328         * doc/ObjectType.3:
3329         * doc/PkgRequire.3:
3330         * doc/Preserve.3:
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)
3334
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)
3341
3342 2002-02-25  Miguel Sofer  <msofer@users.sourceforge.net>
3343
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]
3348
3349 2002-02-25  Don Porter  <dgp@users.sourceforge.net>
3350
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).
3355
3356 2002-02-25  Daniel Steffen  <das@users.sourceforge.net>
3357
3358         * unix/tclLoadDyld.c: updated to use Mac OS X 10.1 dyld APIs that
3359         have more libdl-like semantics. (bug #514392)
3360
3361 2002-02-25  Miguel Sofer  <msofer@users.sourceforge.net>
3362
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  
3369         tclbench.
3370         
3371 2002-02-25  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3372
3373         * compat/strtoul.c, compat/strtol.c, compat/strtod.c: Added UCHAR,
3374         CONST and #includes to clean up GCC output.
3375
3376 2002-02-23  Don Porter  <dgp@users.sourceforge.net>
3377
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.
3383
3384 2002-02-23  Mo DeJong  <mdejong@users.sourceforge.net>
3385
3386         * configure: Regen.
3387         * unix/tcl.m4 (SC_CONFIG_CFLAGS): Link with -n32
3388         instead of -32 when building on IRIX64-6.* system.
3389         [Tcl bug 521707]
3390
3391 2002-02-22  Don Porter <dgp@users.sourceforge.net>
3392
3393         * generic/tclInt.h:
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]
3398
3399 2002-02-22  Jeff Hobbs  <jeffh@ActiveState.com>
3400
3401         * tests/regexpComp.test: updated regexp-11.[1-4] to match changes
3402         in regexp.test for new regsub syntax
3403
3404         * unix/configure:
3405         * unix/tcl.m4: added --enable-64bit support for AIX-4 (using -q64
3406         flag) when using IBM's xlc compiler.
3407
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].
3413
3414 2002-02-22  Miguel Sofer  <msofer@users.sourceforge.net>
3415
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
3419         Kevin Kenny). 
3420
3421 2002-02-22  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3422
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.
3428
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.
3436
3437 2002-02-21  David Gravereaux <davygrvy@pobox.com>
3438
3439         * win/mkd.bat (removed):
3440         * win/coffbase.txt (new):
3441         * win/makefile.bc:
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
3445         it.
3446
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.
3451
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
3454         being used.
3455
3456         Stuff left to do:
3457         1) get the winhelp target to stop building in the tools/
3458         directory.
3459         2) stop using rmd.bat
3460         3) add more dependacy rules.
3461
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
3465         this out to me.
3466
3467 2002-02-21  David Gravereaux <davygrvy@pobox.com>
3468
3469         * win/makefile.vc:
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.
3473
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).
3479
3480 2002-02-21  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3481
3482         * generic/tcl.h: Better guessing of LP64/ILP32 architecture, but
3483         now sensitive to presence of (suitable) <limits.h>
3484
3485 2002-02-20  Don Porter <dgp@users.sourceforge.net>
3486
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
3491         Workshop compiler.
3492
3493 2002-02-20  David Gravereaux <davygrvy@pobox.com>
3494
3495         * win/buildall.vc.bat:
3496         * win/makefile.vc:
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.
3507
3508         Added IA64 B-stepping errata switch when the compiler supports it.
3509
3510         Added profiling to $(lflags) when requested and also removed the
3511         explict -entry option as the default works fine as is.
3512
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.
3516
3517 2002-02-20  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3518
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.
3522
3523 2002-02-19  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3524
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.
3530
3531 2002-02-19  Don Porter <dgp@users.sourceforge.net>
3532
3533         * changes: First draft of updated changes for 8.4a4 release.
3534
3535 2002-02-15  Jeff Hobbs  <jeffh@ActiveState.com>
3536
3537         * unix/tclUnixPort.h: add strtoll/strtoull declarations for
3538         platforms that do not define them.
3539
3540         * generic/tclIndexObj.c (STRING_AT): removed ptrdiff_t cast and
3541         use of VOID* in default case (GNU-ism).
3542
3543 2002-02-15  Kevin Kenny  <kennykb@acm.org>
3544
3545         * compat/strtoll.c:
3546         * compat/strtoul.c:
3547         * compat/strtoull.c:
3548         * generic/tclIOUtil.c:
3549         * generic/tclPosixStr.c:
3550         * generic/tclTest.c:
3551         * generic/tclTestObj.c:
3552         * tests/get.test:
3553         * win/Makefile.vc: Further tweaks to the TIP 72 patch to make it
3554         compile under VC++.
3555         
3556 2002-02-15  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3557
3558         * tclExecute.c:
3559         * tclIOGT.c:
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
3563
3564 2002-02-15  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
3565
3566         +----------------------+
3567         | TIP #72 IMPLEMENTED. |
3568         +----------------------+
3569
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
3573         in:
3574
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]
3581         commands.
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
3587         cacheing.
3588
3589         Most other changes, including all those in doc/* and test/* as
3590         well as the majority in the platform directories, follow on from
3591         these.
3592
3593         Also coming out of the woodwork:
3594         * generic/tclIndex.c: Better support for Cray PVP.
3595         * win/tclWinMtherr.c: Better Borland support.
3596
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.
3604
3605         ***POTENTIAL INCOMPATIBILITY***: Extracted from the TIP
3606
3607         SUMMARY OF INCOMPATIBILITIES AND FIXES 
3608         ======================================
3609
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
3614         int(constant).
3615
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.
3621
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.
3625
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.)
3631
3632 2002-02-14  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3633
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.
3638
3639 2002-02-12  David Gravereaux <davygrvy@pobox.com>
3640
3641         * djgpp/ (new directory)
3642         * djgpp/Makefile (new):
3643         * unix/tclAppInit.c:
3644         * unix/tclMtherr.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.
3654
3655 2002-02-10  Kevin Kenny  <kennykb@acm.org>
3656
3657         * doc/CrtObjCmd.3:
3658         * doc/CrtTrace.3:
3659         * generic/tcl.decls:
3660         * generic/tcl.h:
3661         * generic/tclBasic.c:
3662         * generic/tclInt.h:
3663         * generic/tclTest.c:
3664         * tests/basic.test: Added Tcl_CreateObjTrace,
3665         Tcl_GetCommandInfoFromToken and Tcl_SetCommandInfoFromToken.
3666         (TIPs #32 and #79.)
3667
3668         * generic/tclDecls.h:
3669         * generic/tclStubInit.c: Regenerated Stubs tables.
3670         
3671 2002-02-08  Jeff Hobbs  <jeffh@ActiveState.com>
3672
3673         * unix/configure:
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.
3677
3678         * unix/tclUnixPort.h:
3679         * unix/tclUnixThrd.c: added thread-safe versions of readdir,
3680         localtime, gmtime and inet_ntoa for threaded build. (jgdavidson)
3681
3682         * generic/tclScan.c (Tcl_ScanObjCmd): prevented ckfree being
3683         called on a pointer to NULL.
3684
3685 2002-02-07  Don Porter <dgp@users.sourceforge.net>
3686
3687         * doc/DString.3:
3688         * doc/Encoding.3:
3689         * doc/GetCwd.3:
3690         * doc/SplitPath.3:
3691         * doc/Translate.3:
3692         * doc/Utf.3:
3693         * generic/tcl.decls:
3694         * generic/tcl.h:
3695         * generic/tclEncoding.c:
3696         * generic/tclEnv.c:
3697         * generic/tclFileName.c:
3698         * generic/tclIOUtil.c:
3699         * generic/tclUtf.c:
3700         * generic/tclUtil.c:
3701         * mac/tclMacInit.c:
3702         * unix/tclUnixFile.c:
3703         * unix/tclUnixInit.c:
3704         * unix/tclUnixPipe.c:
3705         * win/tclWin32Dll.c:
3706         * win/tclWinFCmd.c:
3707         * win/tclWinFile.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.
3717
3718         * generic/tclDecls.h:
3719         * generic/tclPlatDecls.h: make genstubs
3720
3721         * generic/tclCmdMZ.c: corrected use of C++-style comment.
3722
3723 2002-02-06  Jeff Hobbs  <jeffh@ActiveState.com>
3724
3725         * tests/scan.test:
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]
3729
3730         * generic/tclCompCmds.c (TclCompileRegexpCmd): made early check
3731         for bad RE to stop checking further.
3732
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.
3739
3740         * tests/regexp.test:
3741         * tests/regexpComp.test: extra code coverage tests.
3742
3743         * tests/string.test: added 10.18 and 10.19 extra tests.
3744
3745         * generic/regc_locale.c (casecmp): slight performance improvement.
3746
3747 2002-02-05  Don Porter <dgp@users.sourceforge.net>
3748
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.
3752
3753 2002-02-04  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3754
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.
3761
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
3764           created via 'open'.
3765
3766 2002-02-01  Jeff Hobbs  <jeffh@ActiveState.com>
3767
3768         * generic/tclCmdMZ.c (Tcl_RegexpObjCmd): handle quirky about case
3769         earlier to avoid shimmering problem.
3770
3771 2002-02-01  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3772
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
3775           platform.
3776
3777 2002-02-01  Vince Darley <vincentdarley@users.sourceforge.net>
3778
3779         * generic/tclTest.c: fix to picky windows compiler problem
3780           with the 'MainLoop' function declaration.
3781
3782 2002-01-31  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
3783
3784         * win/tclWinFCmd.c: TIP 27: Applied patch fixing CONST warnings on
3785           behalf of Don Porter <dgp@users.sourceforge.net>.
3786
3787 2002-01-30  Don Porter <dgp@users.sourceforge.net>
3788
3789         * generic/tcl.decls:
3790         * generic/tcl.h:
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
3798           resolve.
3799         * generic/tclDecls.h: make genstubs
3800
3801 2002-01-30  Vince Darley <vincentdarley@users.sourceforge.net>
3802
3803         * doc/FileSystem.3: added documentation for 3 public
3804         functions which had been overlooked.  Fixes [Bug 507701].
3805         * unix/mkLinks: make mklinks
3806
3807 2002-01-29  Jeff Hobbs  <jeffh@ActiveState.com>
3808
3809         * tests/regexpComp.test:
3810         * generic/tclCompCmds.c (TclCompileRegexpCmd): enhanced to support
3811         -nocase and -- options.
3812
3813 2002-01-28  Mo DeJong  <mdejong@users.sourceforge.net>
3814
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.
3824
3825 2002-01-28  Jeff Hobbs  <jeffh@ActiveState.com>
3826
3827         * win/tclWinReg.c (regConnectRegistryProc,RecursiveDeleteKey)
3828         (DeleteKey,GetKeyNames,GetType,GetValue,OpenSubKey,SetValue):
3829         redid the CONSTification as previous changes caused failing tests.
3830
3831         * tests/regexpComp.test (new):
3832         * generic/tclInt.h:
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
3837         modifies 'string'.
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.
3842
3843         * generic/tclExecute.c (TclExecuteByteCode:INST_LIST): correct
3844         possibly dangerous decr in macro call.
3845
3846         * win/tclWinInit.c (TclpFindVariable): CONSTification touch-up
3847
3848         * win/tclWinReg.c (OpenSubKey): corrected bug introduced in
3849         CONSTification that dropped pointer reference.
3850
3851         * ChangeLog.2000 (new file):
3852         * ChangeLog: broke changes from 2000 into ChangeLog.2000 to reduce
3853           size of the main ChangeLog.
3854
3855 2002-01-28  David Gravereaux <davygrvy@pobox.com>
3856
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.
3860
3861 2002-01-27  Don Porter <dgp@users.sourceforge.net>
3862
3863         * doc/package.n: Documented global namespace context for script
3864         evaluation by [package require].
3865
3866 2002-01-27  Daniel Steffen  <das@users.sourceforge.net>
3867
3868         * generic/tclInt.decls:
3869         * generic/tclIntPlatDecls.h:
3870         * mac/tclMacChan.c:
3871         * mac/tclMacFCmd.c:
3872         * mac/tclMacFile.c:
3873         * mac/tclMacInit.c:
3874         * mac/tclMacLoad.c:
3875         * mac/tclMacResource.c:
3876         * mac/tclMacSock.c: TIP 27 CONSTification induced changes
3877
3878         * tests/event.test:
3879         * tests/main.test: added catches/constraints to test that
3880         use features that don't exist on the mac.
3881
3882 2002-01-25  Mo DeJong  <mdejong@users.sourceforge.net>
3883
3884         Make -eofchar and -translation options read only for
3885         server sockets. [Bug 496733]
3886         
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.
3897
3898 2002-01-25  Don Porter <dgp@users.sourceforge.net>
3899
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
3914         TIP 27 effort.
3915
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,
3921           Tcl_FindNamespace):
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
3926
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
3933
3934         * Following is [Patch 506818]
3935         * doc/Hash.3:
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.
3941
3942         * Following is [Patch 506807]
3943         * doc/ObjectType.3:
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
3948
3949         * Following is [Patch 507304]
3950         * doc/Encoding.3:
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.
3964
3965         * Following is [Patch 505072]
3966         * doc/Concat.3:
3967         * doc/Encoding.3:
3968         * doc/Filesystem.3:
3969         * doc/Macintosh.3:
3970         * doc/OpenFileChnl.3
3971         * doc/SetResult.3:
3972         * doc/SetVar.3:
3973         * doc/SplitList.3:
3974         * doc/SplitPath.3:
3975         * doc/Translate.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,
3985           TclpCreateProcess):
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
4004         VFS-aware version.
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
4011
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,
4016           InfoTclVersionCmd):
4017         * generic/tclCompCmds.c (TclCompileForeachCmd):
4018         * generic/tclCompCmds.h (TclCompileForeachCmd):
4019         * generic/tclCompile.c (TclFindCompiledLocal):
4020         * generic/tclEnv.c (TclSetupEnv,TclSetEnv,Tcl_PutEnv,TclGetEnv,
4021           EnvTraceProc):
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,
4034           TestpanicCmd):
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,
4044           TclpReadLink):
4045         * unix/tclUnixInit.c (TclpInitLibraryPath,TclpSetVariables,
4046           Tcl_SourceRCFile):
4047         * unix/tclUnixPipe.c (TclpOpenFile,TclpCreateTempFile,
4048           TclpCreateProcess):
4049         * win/tclWinFile.c (TclpGetCwd,TclpMatchInDirectory):
4050         * win/tclWinInit.c (TclpInitLibraryPath,Tcl_SourceRCFile,
4051           TclpSetVariables):
4052         * win/tclWinPipe.c (TclpCreateProcess): Updated callers.
4053
4054 2002-01-24  Don Porter <dgp@users.sourceforge.net>
4055
4056         * generic/tclIOUtil.c (SetFsPathFromAny):  Corrected tilde-substitution
4057         of pathnames where > 1 separator follows the ~.  [Bug 504950]
4058
4059 2002-01-24  Jeff Hobbs  <jeffh@ActiveState.com>
4060
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]
4064
4065 2002-01-23  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
4066
4067         * unix/mkLinks: Regenerated.
4068         * doc/CrtChannel.3:
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>.
4073
4074 2002-01-23  Don Porter <dgp@users.sourceforge.net>
4075
4076         * win/tclWinFile.c (NativeAccess,NativeStat,NativeIsExec,
4077           TclpGetUserHome):
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
4083
4084         * doc/GetHostName.3:
4085         * doc/GetOpnFl.3:
4086         * doc/OpenTcp.3:
4087         * tcl.decls (Tcl_GetHostName,Tcl_GetOpenFile,Tcl_OpenTcpClient,
4088           Tcl_OpenTclServer):
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
4099
4100 2002-01-21  David Gravereaux <davygrvy@pobox.com>
4101
4102         * generic/tclLoadNone.c: TclpLoadFile() didn't match proto of
4103           typedef Tcl_FSLoadFileProc.  OK'd by vincentdarley.
4104           [Patch #502488]
4105
4106 2002-01-21  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
4107
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.
4120
4121 2002-01-21  Don Porter <dgp@users.sourceforge.net>
4122
4123         * generic/tclTest.c: Converted declarations of TestReport file system
4124           to more portable form.  [Bug 501417].
4125
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
4132
4133 2002-01-18  Don Porter <dgp@users.sourceforge.net>
4134
4135         * win/tclWinChan.c:
4136         * win/tclWinFCmd.c:
4137         * win/tclWinFile.c: Overlooked callers of Tcl_FSGetNativePath
4138
4139         * win/tclWinDde.c:
4140         * win/tclWinReg.c: Overlooked callers of Tcl_GetIndexFromObj
4141
4142 2002-01-18  Daniel Steffen  <das@users.sourceforge.net>
4143
4144         * generic/tclThreadTest.c:
4145         * mac/tclMacChan.c:
4146         * mac/tclMacFCmd.c:
4147         * mac/tclMacFile.c:
4148         * mac/tclMacLoad.c:
4149         * mac/tclMacResource.c: TIP 27 CONSTification broke the mac
4150           build in a number of places.
4151
4152 2002-01-17  Andreas Kupries  <andreas_kupries@users.sourceforge.net>
4153
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
4166           with reading.
4167
4168 2002-01-16  Mo DeJong  <mdejong@users.sourceforge.net>
4169
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]
4175
4176 2002-01-16  Don Porter <dgp@users.sourceforge.net>
4177
4178         * doc/FileSystem.3:
4179         * doc/GetCwd.3:
4180         * doc/GetIndex.3:
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
4196
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,
4209           Tcl_FcopyObjCmd):
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,
4223           TclpObjLstat):
4224         * win/tclWinFCmd.c (tclpFileAttrStrings): Updated callers.
4225
4226         * doc/RegExp.3:
4227         * doc/Utf.3:
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.
4233         [Patch 471509]
4234
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.
4241
4242         * generic/tclDecls.h: 
4243         * generic/tclIntDecls.h: make genstubs
4244
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
4252
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.
4257         [Patch 504091]
4258
4259         * doc/CrtSlave.3:
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.
4269
4270         * generic/tclDecls.h: make genstubs
4271
4272 2002-01-15  Don Porter <dgp@users.sourceforge.net>
4273
4274         * doc/SetErrno.3 (Tcl_ErrnoMsg): Corrected documentation for
4275         Tcl_ErrnoMsg; it takes an integer argument.  Thanks to Georgios
4276         Petasis.  [Bug 468183]
4277
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,
4296           Tcl_SignalMsg):
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]
4305
4306         * generic/tclDecls.h:
4307         * generic/tclIntDecls.h: make genstubs
4308
4309         * doc/CrtChannel.3:
4310         * doc/OpenFileChnl.3:
4311         * generic/tcl.decls:
4312         * generic/tclIO.h:
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.
4319         [Patch 503565]
4320         * generic/tclDecls.h: make genstubs
4321
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
4338         [Bug 500348].
4339
4340         * doc/CrtChannel.3:
4341         * generic/tcl.h:
4342         * generic/tclIO.c:
4343         * generic/tclIO.h:
4344         * generic/tclInt.h:
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.
4349
4350 2002-01-14  Don Porter <dgp@users.sourceforge.net>
4351
4352         * doc/GetIndex.3:
4353         * doc/WrongNumArgs.3:
4354         * generic/tcl.decls (Tcl_GetIndexFromObj, Tcl_GetIndexFromObjStruct,
4355           Tcl_WrongNumArgs):
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
4360
4361 2002-01-11  Mo DeJong  <mdejong@users.sourceforge.net>
4362
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]
4368
4369 2002-01-11  Andreas Kupries  <andreas_kupries@users.sourceforge.net> 
4370
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.
4376
4377 2002-01-11  David Gravereaux <davygrvy@pobox.com>
4378
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]
4383
4384 2002-01-11  Mo DeJong  <mdejong@users.sourceforge.net>
4385
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]
4390
4391 2002-01-10  Don Porter <dgp@users.sourceforge.net>,
4392         Kevin Kenny <kennykb@users.sourceforge.net>
4393         
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.
4398         
4399 2002-01-08  Don Porter <dgp@users.sourceforge.net>,
4400         Kevin Kenny <kennykb@users.sourceforge.net>
4401
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.
4419         [Patch 501096]
4420
4421 2002-01-09  Don Porter <dgp@users.sourceforge.net>
4422
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.
4426
4427 2002-01-07  Don Porter <dgp@users.sourceforge.net>
4428
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.
4434
4435         * generic/tclMain.c:  Bug fix: neglected the NULL case in
4436         TclGetStartupScriptFileName().  Broke Tk/wish.
4437
4438 2002-01-05  Don Porter <dgp@users.sourceforge.net>
4439
4440         * doc/Tcl_Main.3:
4441         * generic/tclMain.c:  Substantial rewrite and expanded documentation
4442         of Tcl_Main to correct a number of bugs and flaws:
4443
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
4449                   interpreter.
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.
4470
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
4476
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().
4482
4483 2002-01-04  Don Porter <dgp@users.sourceforge.net>
4484
4485         * doc/Alloc.3:
4486         * doc/Concat.3:
4487         * doc/CrtMathFnc.3:
4488         * doc/Hash.3:
4489         * doc/Interp.3:
4490         * doc/LinkVar.3:
4491         * doc/ObjectType.3:
4492         * doc/PkgRequire.3:
4493         * doc/Preserve.3:
4494         * doc/SetResult.3:
4495         * doc/SplitList.3:
4496         * doc/SplitPath.3:
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]
4500
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.
4504
4505 2002-01-04  Daniel Steffen <das@users.sourceforge.net>
4506
4507         * mac/tclMacTime.c (TclpGetTZName): fix for daylight savings TZName bug
4508
4509 2002-01-03  Don Porter <dgp@users.sourceforge.net>
4510
4511         * doc/FileSystem.3:
4512         * generic/tclIOUtil.c: Updated some old uses of "fileName" to
4513         new VFS terminology, "pathPtr".
4514
4515 2002-01-03  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
4516
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.
4527
4528         * tests/basic.test (basic-39.4): Reproducable script from Bug #494348
4529
4530 2002-01-02  Donal K. Fellows  <fellowsd@cs.man.ac.uk>
4531
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.
4535
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]
4541
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         ******************************************************************