Tcl Source Code

Hex Artifact Content
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Artifact 2b4c3892ca2677113d112524a5e6d2cb0161be8d:


0000: 52 65 63 65 6e 74 20 75 73 65 72 2d 76 69 73 69  Recent user-visi
0010: 62 6c 65 20 63 68 61 6e 67 65 73 20 74 6f 20 54  ble changes to T
0020: 63 6c 3a 0a 0a 52 43 53 3a 20 40 28 23 29 20 24  cl:..RCS: @(#) $
0030: 49 64 3a 20 63 68 61 6e 67 65 73 2c 76 20 31 2e  Id: changes,v 1.
0040: 37 39 2e 32 2e 31 33 20 32 30 30 34 2f 31 31 2f  79.2.13 2004/11/
0050: 31 35 20 32 31 3a 35 32 3a 32 36 20 64 67 70 20  15 21:52:26 dgp 
0060: 45 78 70 20 24 0a 0a 31 2e 20 4e 6f 20 6d 6f 72  Exp $..1. No mor
0070: 65 20 5b 63 6f 6d 6d 61 6e 64 31 5d 20 5b 63 6f  e [command1] [co
0080: 6d 6d 61 6e 64 32 5d 20 63 6f 6e 73 74 72 75 63  mmand2] construc
0090: 74 20 66 6f 72 20 67 72 6f 75 70 69 6e 67 20 6d  t for grouping m
00a0: 75 6c 74 69 70 6c 65 0a 63 6f 6d 6d 61 6e 64 73  ultiple.commands
00b0: 20 6f 6e 20 61 20 73 69 6e 67 6c 65 20 63 6f 6d   on a single com
00c0: 6d 61 6e 64 20 6c 69 6e 65 2e 0a 0a 32 2e 20 53  mand line...2. S
00d0: 65 6d 69 2d 63 6f 6c 6f 6e 20 6e 6f 77 20 61 76  emi-colon now av
00e0: 61 69 6c 61 62 6c 65 20 66 6f 72 20 67 72 6f 75  ailable for grou
00f0: 70 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 6f 6e  ping commands on
0100: 20 61 20 6c 69 6e 65 2e 0a 0a 33 2e 20 46 6f 72   a line...3. For
0110: 20 61 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73 70   a command to sp
0120: 61 6e 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65  an multiple line
0130: 73 2c 20 6d 75 73 74 20 6e 6f 77 20 75 73 65 20  s, must now use 
0140: 62 61 63 6b 73 6c 61 73 68 2d 72 65 74 75 72 6e  backslash-return
0150: 0a 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 65  .at the end of e
0160: 61 63 68 20 6c 69 6e 65 20 62 75 74 20 74 68 65  ach line but the
0170: 20 6c 61 73 74 2e 0a 0a 34 2e 20 22 56 61 72 22   last...4. "Var"
0180: 20 63 6f 6d 6d 61 6e 64 20 68 61 73 20 62 65 65   command has bee
0190: 6e 20 63 68 61 6e 67 65 64 20 74 6f 20 22 73 65  n changed to "se
01a0: 74 22 2e 0a 0a 35 2e 20 44 6f 75 62 6c 65 2d 71  t"...5. Double-q
01b0: 75 6f 74 65 73 20 6e 6f 77 20 61 76 61 69 6c 61  uotes now availa
01c0: 62 6c 65 20 61 73 20 61 6e 20 61 72 67 75 6d 65  ble as an argume
01d0: 6e 74 20 67 72 6f 75 70 69 6e 67 20 63 68 61 72  nt grouping char
01e0: 61 63 74 65 72 2e 0a 0a 36 2e 20 22 52 65 74 75  acter...6. "Retu
01f0: 72 6e 22 20 6d 61 79 20 62 65 20 75 73 65 64 20  rn" may be used 
0200: 61 74 20 74 6f 70 2d 6c 65 76 65 6c 2e 0a 0a 37  at top-level...7
0210: 2e 20 4d 6f 72 65 20 62 61 63 6b 73 6c 61 73 68  . More backslash
0220: 20 73 65 71 75 65 6e 63 65 73 20 61 76 61 69 6c   sequences avail
0230: 61 62 6c 65 20 6e 6f 77 2e 20 20 49 6e 20 70 61  able now.  In pa
0240: 72 74 69 63 75 6c 61 72 2c 20 62 61 63 6b 73 6c  rticular, backsl
0250: 61 73 68 2d 6e 65 77 6c 69 6e 65 0a 6d 61 79 20  ash-newline.may 
0260: 62 65 20 75 73 65 64 20 74 6f 20 6a 6f 69 6e 20  be used to join 
0270: 6c 69 6e 65 73 20 69 6e 20 63 6f 6d 6d 61 6e 64  lines in command
0280: 20 66 69 6c 65 73 2e 0a 0a 38 2e 20 4e 65 77 20   files...8. New 
0290: 6f 72 20 6d 6f 64 69 66 69 65 64 20 62 75 69 6c  or modified buil
02a0: 74 2d 69 6e 20 63 6f 6d 6d 61 6e 64 73 3a 20 20  t-in commands:  
02b0: 63 61 73 65 2c 20 72 65 74 75 72 6e 2c 20 66 6f  case, return, fo
02c0: 72 2c 20 67 6c 6f 62 2c 20 69 6e 66 6f 2c 0a 70  r, glob, info,.p
02d0: 72 69 6e 74 2c 20 72 65 74 75 72 6e 2c 20 73 65  rint, return, se
02e0: 74 2c 20 73 6f 75 72 63 65 2c 20 73 74 72 69 6e  t, source, strin
02f0: 67 2c 20 75 70 6c 65 76 65 6c 2e 0a 0a 39 2e 20  g, uplevel...9. 
0300: 41 66 74 65 72 20 61 6e 20 65 72 72 6f 72 2c 20  After an error, 
0310: 74 68 65 20 76 61 72 69 61 62 6c 65 20 22 65 72  the variable "er
0320: 72 6f 72 49 6e 66 6f 22 20 69 73 20 66 69 6c 6c  rorInfo" is fill
0330: 65 64 20 77 69 74 68 20 61 20 73 74 61 63 6b 0a  ed with a stack.
0340: 74 72 61 63 65 20 73 68 6f 77 69 6e 67 20 77 68  trace showing wh
0350: 61 74 20 77 61 73 20 62 65 69 6e 67 20 65 78 65  at was being exe
0360: 63 75 74 65 64 20 77 68 65 6e 20 74 68 65 20 65  cuted when the e
0370: 72 72 6f 72 20 6f 63 63 75 72 72 65 64 2e 0a 0a  rror occurred...
0380: 31 30 2e 20 43 6f 6d 6d 61 6e 64 20 61 62 62 72  10. Command abbr
0390: 65 76 69 61 74 69 6f 6e 73 20 61 72 65 20 61 63  eviations are ac
03a0: 63 65 70 74 65 64 20 77 68 65 6e 20 70 61 72 73  cepted when pars
03b0: 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 2c 20 62 75  ing commands, bu
03c0: 74 0a 61 72 65 20 6e 6f 74 20 72 65 63 6f 6d 6d  t.are not recomm
03d0: 65 6e 64 65 64 20 65 78 63 65 70 74 20 66 6f 72  ended except for
03e0: 20 70 75 72 65 6c 79 2d 69 6e 74 65 72 61 63 74   purely-interact
03f0: 69 76 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 31  ive commands...1
0400: 31 2e 20 24 2c 20 73 65 74 2c 20 61 6e 64 20 65  1. $, set, and e
0410: 78 70 72 20 61 6c 6c 20 63 6f 6d 70 6c 61 69 6e  xpr all complain
0420: 20 6e 6f 77 20 69 66 20 61 20 6e 6f 6e 2d 65 78   now if a non-ex
0430: 69 73 74 65 6e 74 20 76 61 72 69 61 62 6c 65 20  istent variable 
0440: 69 73 0a 72 65 66 65 72 65 6e 63 65 64 2e 0a 0a  is.referenced...
0450: 31 32 2e 20 48 69 73 74 6f 72 79 20 66 61 63 69  12. History faci
0460: 6c 69 74 69 65 73 20 65 78 69 73 74 20 6e 6f 77  lities exist now
0470: 2e 20 20 53 65 65 20 54 63 6c 2e 6d 61 6e 20 61  .  See Tcl.man a
0480: 6e 64 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64  nd Tcl_RecordAnd
0490: 45 76 61 6c 2e 6d 61 6e 2e 0a 0a 31 33 2e 20 43  Eval.man...13. C
04a0: 68 61 6e 67 65 64 20 74 6f 20 64 69 73 74 69 6e  hanged to distin
04b0: 67 75 69 73 68 20 62 65 74 77 65 65 6e 20 65 6d  guish between em
04c0: 70 74 79 20 76 61 72 69 61 62 6c 65 73 20 61 6e  pty variables an
04d0: 64 20 74 68 6f 73 65 20 74 68 61 74 20 64 6f 6e  d those that don
04e0: 27 74 0a 65 78 69 73 74 20 61 74 20 61 6c 6c 2e  't.exist at all.
04f0: 20 20 49 6e 74 65 72 66 61 63 65 73 20 74 6f 20    Interfaces to 
0500: 54 63 6c 5f 47 65 74 56 61 72 20 61 6e 64 20 54  Tcl_GetVar and T
0510: 63 6c 5f 50 61 72 73 65 56 61 72 20 68 61 76 65  cl_ParseVar have
0520: 20 63 68 61 6e 67 65 64 0a 28 4e 55 4c 4c 20 72   changed.(NULL r
0530: 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 6e  eturn value is n
0540: 6f 77 20 70 6f 73 73 69 62 6c 65 29 2e 20 20 2a  ow possible).  *
0550: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
0560: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
0570: 0a 0a 31 34 2e 20 43 68 61 6e 67 65 64 20 6d 65  ..14. Changed me
0580: 61 6e 69 6e 67 20 6f 66 20 22 6c 65 76 65 6c 22  aning of "level"
0590: 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 22 75 70   argument to "up
05a0: 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 20 28  level" command (
05b0: 31 20 6e 6f 77 20 6d 65 61 6e 73 0a 22 67 6f 20  1 now means."go 
05c0: 75 70 20 6f 6e 65 20 6c 65 76 65 6c 22 2c 20 6e  up one level", n
05d0: 6f 74 20 22 67 6f 20 74 6f 20 6c 65 76 65 6c 20  ot "go to level 
05e0: 31 22 3b 20 22 23 31 22 20 6d 65 61 6e 73 20 22  1"; "#1" means "
05f0: 67 6f 20 74 6f 20 6c 65 76 65 6c 20 31 22 29 2e  go to level 1").
0600: 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
0610: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
0620: 2a 2a 0a 0a 31 35 2e 20 33 2f 31 39 2f 39 30 20  **..15. 3/19/90 
0630: 41 64 64 65 64 20 22 69 6e 66 6f 20 65 78 69 73  Added "info exis
0640: 74 73 22 20 6f 70 74 69 6f 6e 20 74 6f 20 73 65  ts" option to se
0650: 65 20 69 66 20 76 61 72 69 61 62 6c 65 20 65 78  e if variable ex
0660: 69 73 74 73 2e 0a 0a 31 36 2e 20 33 2f 31 39 2f  ists...16. 3/19/
0670: 39 30 20 41 64 64 65 64 20 22 6e 6f 41 62 62 72  90 Added "noAbbr
0680: 65 76 22 20 76 61 72 69 61 62 6c 65 20 74 6f 20  ev" variable to 
0690: 70 72 6f 68 69 62 69 74 20 63 6f 6d 6d 61 6e 64  prohibit command
06a0: 20 61 62 62 72 65 76 69 61 74 69 6f 6e 73 2e 0a   abbreviations..
06b0: 0a 31 37 2e 20 33 2f 31 39 2f 39 30 20 41 64 64  .17. 3/19/90 Add
06c0: 65 64 20 65 78 74 72 61 20 65 72 72 6f 72 49 6e  ed extra errorIn
06d0: 66 6f 20 6f 70 74 69 6f 6e 20 74 6f 20 22 65 72  fo option to "er
06e0: 72 6f 72 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31  ror" command...1
06f0: 38 2e 20 33 2f 32 31 2f 39 30 20 44 6f 75 62 6c  8. 3/21/90 Doubl
0700: 65 2d 71 75 6f 74 65 73 20 6e 6f 77 20 6f 6e 6c  e-quotes now onl
0710: 79 20 61 66 66 65 63 74 20 73 70 61 63 65 3a 20  y affect space: 
0720: 20 63 6f 6d 6d 61 6e 64 2c 20 76 61 72 69 61 62   command, variab
0730: 6c 65 2c 0a 61 6e 64 20 62 61 63 6b 73 6c 61 73  le,.and backslas
0740: 68 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73 20  h substitutions 
0750: 73 74 69 6c 6c 20 6f 63 63 75 72 20 69 6e 73 69  still occur insi
0760: 64 65 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 73  de double-quotes
0770: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
0780: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
0790: 2a 2a 2a 0a 0a 31 39 2e 20 33 2f 32 31 2f 39 30  ***..19. 3/21/90
07a0: 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   Added support f
07b0: 6f 72 20 5c 72 2e 0a 0a 32 30 2e 20 33 2f 32 31  or \r...20. 3/21
07c0: 2f 39 30 20 4c 69 73 74 2c 20 63 6f 6e 63 61 74  /90 List, concat
07d0: 2c 20 65 76 61 6c 2c 20 61 6e 64 20 67 6c 6f 62  , eval, and glob
07e0: 20 63 6f 6d 6d 61 6e 64 73 20 61 6c 6c 20 65 78   commands all ex
07f0: 70 65 63 74 20 61 74 20 6c 65 61 73 74 0a 6f 6e  pect at least.on
0800: 65 20 61 72 67 75 6d 65 6e 74 20 6e 6f 77 2e 20  e argument now. 
0810: 20 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49   *** POTENTIAL I
0820: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
0830: 2a 2a 0a 0a 32 31 2e 20 33 2f 32 32 2f 39 30 20  **..21. 3/22/90 
0840: 41 64 64 65 64 20 22 3f 3a 22 20 6f 70 65 72 61  Added "?:" opera
0850: 74 6f 72 73 20 74 6f 20 65 78 70 72 65 73 73 69  tors to expressi
0860: 6f 6e 73 2e 0a 0a 32 32 2e 20 33 2f 32 35 2f 39  ons...22. 3/25/9
0870: 30 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54  0 Fixed bug in T
0880: 63 6c 5f 52 65 73 75 6c 74 20 74 68 61 74 20 63  cl_Result that c
0890: 61 75 73 65 64 20 6d 65 6d 6f 72 79 20 74 6f 20  aused memory to 
08a0: 67 65 74 20 74 72 61 73 68 65 64 2e 0a 0a 2d 2d  get trashed...--
08b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08c0: 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69  - Released versi
08d0: 6f 6e 20 33 2e 31 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  on 3.1 ---------
08e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 33  ------------..23
08f0: 2e 20 33 2f 32 39 2f 39 30 20 46 69 78 65 64 20  . 3/29/90 Fixed 
0900: 62 75 67 20 74 68 61 74 20 63 61 75 73 65 64 20  bug that caused 
0910: 22 66 69 6c 65 20 61 2e 62 2f 63 20 65 78 74 22  "file a.b/c ext"
0920: 20 74 6f 20 72 65 74 75 72 6e 20 22 2e 62 2f 63   to return ".b/c
0930: 22 2e 0a 0a 32 34 2e 20 33 2f 32 39 2f 39 30 20  "...24. 3/29/90 
0940: 53 65 6d 69 2d 63 6f 6c 6f 6e 20 69 73 20 6e 6f  Semi-colon is no
0950: 74 20 74 72 65 61 74 65 64 20 73 70 65 63 69 61  t treated specia
0960: 6c 6c 79 20 77 68 65 6e 20 65 6e 63 6c 6f 73 65  lly when enclose
0970: 64 20 69 6e 0a 64 6f 75 62 6c 65 2d 71 75 6f 74  d in.double-quot
0980: 65 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  es...-----------
0990: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
09a0: 64 20 76 65 72 73 69 6f 6e 20 33 2e 32 20 2d 2d  d version 3.2 --
09b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09c0: 2d 2d 2d 0a 0a 32 35 2e 20 34 2f 31 36 2f 39 30  ---..25. 4/16/90
09d0: 20 52 65 77 72 6f 74 65 20 22 65 78 65 63 22 20   Rewrote "exec" 
09e0: 6e 6f 74 20 74 6f 20 75 73 65 20 73 65 6c 65 63  not to use selec
09f0: 74 20 6f 72 20 73 69 67 6e 61 6c 73 20 61 6e 79  t or signals any
0a00: 6d 6f 72 65 2e 0a 53 68 6f 75 6c 64 20 62 65 20  more..Should be 
0a10: 6d 6f 72 65 20 53 79 73 2d 56 20 63 6f 6d 70 61  more Sys-V compa
0a20: 74 69 62 6c 65 2c 20 61 6e 64 20 6e 6f 20 73 6c  tible, and no sl
0a30: 6f 77 65 72 20 69 6e 20 74 68 65 20 6e 6f 72 6d  ower in the norm
0a40: 61 6c 20 63 61 73 65 2e 0a 0a 32 36 2e 20 34 2f  al case...26. 4/
0a50: 31 38 2f 39 30 20 52 65 77 72 6f 74 65 20 22 67  18/90 Rewrote "g
0a60: 6c 6f 62 22 20 74 6f 20 65 6c 69 6d 69 6e 61 74  lob" to eliminat
0a70: 65 20 47 4e 55 20 63 6f 64 65 20 28 74 68 65 72  e GNU code (ther
0a80: 65 27 73 20 6e 6f 20 47 4e 55 20 63 6f 64 65 0a  e's no GNU code.
0a90: 6c 65 66 74 20 69 6e 20 54 63 6c 2c 20 6e 6f 77  left in Tcl, now
0aa0: 29 2c 20 61 6e 64 20 61 64 64 65 64 20 54 63 6c  ), and added Tcl
0ab0: 5f 54 69 6c 64 65 53 75 62 73 74 20 70 72 6f 63  _TildeSubst proc
0ac0: 65 64 75 72 65 2e 20 20 41 64 64 65 64 20 61 75  edure.  Added au
0ad0: 74 6f 6d 61 74 69 63 0a 74 69 6c 64 65 2d 73 75  tomatic.tilde-su
0ae0: 62 73 74 69 74 75 74 69 6f 6e 20 69 6e 20 6d 61  bstitution in ma
0af0: 6e 79 20 63 6f 6d 6d 61 6e 64 73 2c 20 69 6e 63  ny commands, inc
0b00: 6c 75 64 69 6e 67 20 22 67 6c 6f 62 22 2e 0a 0a  luding "glob"...
0b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0b20: 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72  --- Released ver
0b30: 73 69 6f 6e 20 33 2e 33 20 2d 2d 2d 2d 2d 2d 2d  sion 3.3 -------
0b40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
0b50: 32 37 2e 20 37 2f 31 31 2f 39 30 20 41 64 64 65  27. 7/11/90 Adde
0b60: 64 20 22 54 63 6c 5f 41 70 70 65 6e 64 52 65 73  d "Tcl_AppendRes
0b70: 75 6c 74 22 20 70 72 6f 63 65 64 75 72 65 2e 0a  ult" procedure..
0b80: 0a 32 38 2e 20 37 2f 32 30 2f 39 30 20 22 48 69  .28. 7/20/90 "Hi
0b90: 73 74 6f 72 79 22 20 77 69 74 68 20 6e 6f 20 6f  story" with no o
0ba0: 70 74 69 6f 6e 73 20 6e 6f 77 20 64 65 66 61 75  ptions now defau
0bb0: 6c 74 73 20 74 6f 20 22 68 69 73 74 6f 72 79 20  lts to "history 
0bc0: 69 6e 66 6f 22 0a 72 61 74 68 65 72 20 74 68 61  info".rather tha
0bd0: 6e 20 74 6f 20 22 68 69 73 74 6f 72 79 20 72 65  n to "history re
0be0: 64 6f 22 2e 20 20 41 6c 74 68 6f 75 67 68 20 74  do".  Although t
0bf0: 68 69 73 20 69 73 20 61 20 62 61 63 6b 77 61 72  his is a backwar
0c00: 64 20 69 6e 63 6f 6d 70 61 74 69 62 69 6c 69 74  d incompatibilit
0c10: 79 2c 0a 69 74 20 73 68 6f 75 6c 64 20 6f 6e 6c  y,.it should onl
0c20: 79 20 62 65 20 75 73 65 64 20 69 6e 74 65 72 61  y be used intera
0c30: 63 74 69 76 65 6c 79 20 61 6e 64 20 74 68 75 73  ctively and thus
0c40: 20 73 68 6f 75 6c 64 6e 27 74 20 70 72 65 73 65   shouldn't prese
0c50: 6e 74 20 61 6e 79 0a 63 6f 6d 70 61 74 69 62 69  nt any.compatibi
0c60: 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73 20 77 69  lity problems wi
0c70: 74 68 20 73 63 72 69 70 74 73 2e 0a 0a 32 39 2e  th scripts...29.
0c80: 20 37 2f 32 30 2f 39 30 20 41 64 64 65 64 20 22   7/20/90 Added "
0c90: 54 63 6c 5f 47 65 74 49 6e 74 65 67 65 72 22 2c  Tcl_GetInteger",
0ca0: 20 22 54 63 6c 5f 47 65 74 44 6f 75 62 6c 65 22   "Tcl_GetDouble"
0cb0: 2c 20 61 6e 64 20 22 54 63 6c 5f 47 65 74 42 6f  , and "Tcl_GetBo
0cc0: 6f 6c 65 61 6e 22 0a 70 72 6f 63 65 64 75 72 65  olean".procedure
0cd0: 73 2e 0a 0a 33 30 2e 20 37 2f 32 32 2f 39 30 20  s...30. 7/22/90 
0ce0: 52 65 6d 6f 76 65 64 20 22 54 63 6c 5f 57 61 74  Removed "Tcl_Wat
0cf0: 63 68 49 6e 74 65 72 70 22 20 70 72 6f 63 65 64  chInterp" proced
0d00: 75 72 65 3a 20 20 64 6f 65 73 6e 27 74 20 73 65  ure:  doesn't se
0d10: 65 6d 20 74 6f 20 62 65 0a 6e 65 63 65 73 73 61  em to be.necessa
0d20: 72 79 2c 20 73 69 6e 63 65 20 74 68 65 20 73 61  ry, since the sa
0d30: 6d 65 20 65 66 66 65 63 74 20 63 61 6e 20 62 65  me effect can be
0d40: 20 61 63 68 69 65 76 65 64 20 77 69 74 68 20 74   achieved with t
0d50: 68 65 20 64 65 6c 65 74 69 6f 6e 0a 63 61 6c 6c  he deletion.call
0d60: 62 61 63 6b 73 20 6f 6e 20 69 6e 64 69 76 69 64  backs on individ
0d70: 75 61 6c 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 2a  ual commands.  *
0d80: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
0d90: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
0da0: 0a 0a 33 31 2e 20 37 2f 32 33 2f 39 30 20 41 64  ..31. 7/23/90 Ad
0db0: 64 65 64 20 76 61 72 69 61 62 6c 65 20 74 72 61  ded variable tra
0dc0: 63 69 6e 67 3a 20 20 54 63 6c 5f 54 72 61 63 65  cing:  Tcl_Trace
0dd0: 56 61 72 2c 20 54 63 6c 5f 55 6e 54 72 61 63 65  Var, Tcl_UnTrace
0de0: 56 61 72 2c 0a 61 6e 64 20 54 63 6c 5f 56 61 72  Var,.and Tcl_Var
0df0: 54 72 61 63 65 49 6e 66 6f 20 70 72 6f 63 65 64  TraceInfo proced
0e00: 75 72 65 73 2c 20 22 74 72 61 63 65 22 20 63 6f  ures, "trace" co
0e10: 6d 6d 61 6e 64 2e 0a 0a 33 32 2e 20 38 2f 39 2f  mmand...32. 8/9/
0e20: 39 30 20 4d 61 69 6c 65 64 20 6f 75 74 20 6c 69  90 Mailed out li
0e30: 73 74 20 6f 66 20 61 6c 6c 20 62 75 67 20 66 69  st of all bug fi
0e40: 78 65 73 20 73 69 6e 63 65 20 33 2e 33 20 72 65  xes since 3.3 re
0e50: 6c 65 61 73 65 2e 0a 0a 33 33 2e 20 38 2f 32 39  lease...33. 8/29
0e60: 2f 39 30 20 46 69 78 65 64 20 62 75 67 73 20 69  /90 Fixed bugs i
0e70: 6e 20 54 63 6c 5f 4d 65 72 67 65 20 72 65 6c 61  n Tcl_Merge rela
0e80: 74 69 6e 67 20 74 6f 20 62 61 63 6b 73 6c 61 73  ting to backslas
0e90: 68 65 73 20 61 6e 64 0a 73 65 6d 69 2d 63 6f 6c  hes and.semi-col
0ea0: 6f 6e 73 2e 20 20 4d 61 69 6c 65 64 20 6f 75 74  ons.  Mailed out
0eb0: 20 70 61 74 63 68 2e 0a 0a 33 34 2e 20 39 2f 33   patch...34. 9/3
0ec0: 2f 39 30 20 46 69 78 65 64 20 62 75 67 20 69 6e  /90 Fixed bug in
0ed0: 20 74 63 6c 42 61 73 69 63 2e 63 3a 20 71 75 6f   tclBasic.c: quo
0ee0: 74 65 73 20 77 65 72 65 6e 27 74 20 71 75 6f 74  tes weren't quot
0ef0: 69 6e 67 20 5d 27 73 2e 0a 4d 61 69 6c 65 64 20  ing ]'s..Mailed 
0f00: 6f 75 74 20 70 61 74 63 68 2e 0a 0a 33 35 2e 20  out patch...35. 
0f10: 39 2f 31 39 2f 39 30 20 52 65 77 72 6f 74 65 20  9/19/90 Rewrote 
0f20: 65 78 65 63 20 74 6f 20 61 6c 77 61 79 73 20 75  exec to always u
0f30: 73 65 20 66 69 6c 65 73 20 62 6f 74 68 20 66 6f  se files both fo
0f40: 72 20 69 6e 70 75 74 20 61 6e 64 0a 6f 75 74 70  r input and.outp
0f50: 75 74 20 74 6f 20 74 68 65 20 70 72 6f 63 65 73  ut to the proces
0f60: 73 2e 20 20 54 68 65 20 6f 6c 64 20 70 69 70 65  s.  The old pipe
0f70: 2d 62 61 73 65 64 20 76 65 72 73 69 6f 6e 20 64  -based version d
0f80: 69 64 6e 27 74 20 77 6f 72 6b 20 69 66 0a 74 68  idn't work if.th
0f90: 65 20 65 78 65 63 27 65 64 20 70 72 6f 63 65 73  e exec'ed proces
0fa0: 73 20 66 6f 72 6b 65 64 20 61 20 63 68 69 6c 64  s forked a child
0fb0: 20 61 6e 64 20 74 68 65 6e 20 65 78 69 74 65 64   and then exited
0fc0: 3a 20 20 54 63 6c 20 77 61 69 74 65 64 0a 61 72  :  Tcl waited.ar
0fd0: 6f 75 6e 64 20 66 6f 72 20 73 74 64 6f 75 74 20  ound for stdout 
0fe0: 74 6f 20 67 65 74 20 63 6c 6f 73 65 64 2c 20 77  to get closed, w
0ff0: 68 69 63 68 20 64 69 64 6e 27 74 20 68 61 70 70  hich didn't happ
1000: 65 6e 20 75 6e 74 69 6c 20 74 68 65 0a 67 72 61  en until the.gra
1010: 6e 64 63 68 69 6c 64 20 65 78 69 74 65 64 2e 0a  ndchild exited..
1020: 0a 33 36 2e 20 31 31 2f 35 2f 39 30 20 45 52 52  .36. 11/5/90 ERR
1030: 5f 49 4e 5f 50 52 4f 47 52 45 53 53 20 66 6c 61  _IN_PROGRESS fla
1040: 67 20 77 61 73 6e 27 74 20 62 65 69 6e 67 20 63  g wasn't being c
1050: 6c 65 61 72 65 64 20 73 6f 6f 6e 20 65 6e 6f 75  leared soon enou
1060: 67 68 0a 69 6e 20 54 63 6c 5f 45 76 61 6c 2c 20  gh.in Tcl_Eval, 
1070: 61 6c 6c 6f 77 69 6e 67 20 65 72 72 6f 72 20 6d  allowing error m
1080: 65 73 73 61 67 65 73 20 66 72 6f 6d 20 64 69 66  essages from dif
1090: 66 65 72 65 6e 74 20 63 6f 6d 6d 61 6e 64 73 20  ferent commands 
10a0: 74 6f 0a 70 69 6c 65 20 75 70 20 69 6e 20 24 65  to.pile up in $e
10b0: 72 72 6f 72 49 6e 66 6f 2e 20 20 46 69 78 65 64  rrorInfo.  Fixed
10c0: 20 62 79 20 72 65 2d 61 72 72 61 6e 67 69 6e 67   by re-arranging
10d0: 20 63 6f 64 65 20 69 6e 20 54 63 6c 5f 45 76 61   code in Tcl_Eva
10e0: 6c 20 74 68 61 74 0a 72 65 2d 69 6e 69 74 69 61  l that.re-initia
10f0: 6c 69 7a 65 73 20 72 65 73 75 6c 74 20 61 6e 64  lizes result and
1100: 20 45 52 52 5f 49 4e 5f 50 52 4f 47 52 45 53 53   ERR_IN_PROGRESS
1110: 20 66 6c 61 67 2e 20 20 44 69 64 6e 27 74 20 6d   flag.  Didn't m
1120: 61 69 6c 20 6f 75 74 0a 70 61 74 63 68 3a 20 20  ail out.patch:  
1130: 63 68 61 6e 67 65 73 20 74 6f 6f 20 63 6f 6d 70  changes too comp
1140: 6c 69 63 61 74 65 64 20 74 6f 20 64 65 73 63 72  licated to descr
1150: 69 62 65 2e 0a 0a 33 37 2e 20 31 32 2f 31 39 2f  ibe...37. 12/19/
1160: 39 30 20 41 64 64 65 64 20 54 63 6c 5f 56 61 72  90 Added Tcl_Var
1170: 45 76 61 6c 20 70 72 6f 63 65 64 75 72 65 20 61  Eval procedure a
1180: 73 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20  s a convenience 
1190: 66 6f 72 0a 61 73 73 65 6d 62 6c 69 6e 67 20 61  for.assembling a
11a0: 6e 64 20 65 78 65 63 75 74 69 6e 67 20 54 63 6c  nd executing Tcl
11b0: 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 33 38 2e 20   commands...38. 
11c0: 31 2f 32 39 2f 39 31 20 46 69 78 65 64 20 63 6f  1/29/91 Fixed co
11d0: 72 65 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f 41  re leak in Tcl_A
11e0: 64 64 45 72 72 6f 72 49 6e 66 6f 2e 20 20 41 6c  ddErrorInfo.  Al
11f0: 73 6f 20 63 68 61 6e 67 65 64 20 70 72 6f 63 65  so changed proce
1200: 64 75 72 65 0a 61 6e 64 20 54 63 6c 5f 45 76 61  dure.and Tcl_Eva
1210: 6c 20 73 6f 20 74 68 61 74 20 66 69 72 73 74 20  l so that first 
1220: 63 61 6c 6c 20 74 6f 20 54 63 6c 5f 41 64 64 45  call to Tcl_AddE
1230: 72 72 6f 72 49 6e 66 6f 20 6e 65 65 64 20 6e 6f  rrorInfo need no
1240: 74 20 63 6f 6d 65 20 66 72 6f 6d 0a 54 63 6c 5f  t come from.Tcl_
1250: 45 76 61 6c 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  Eval...---------
1260: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
1270: 64 20 76 65 72 73 69 6f 6e 20 35 2e 30 20 77 69  d version 5.0 wi
1280: 74 68 20 54 6b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  th Tk ----------
1290: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 39 2e 20 34 2f  --------..39. 4/
12a0: 33 2f 39 31 20 52 65 6d 6f 76 65 64 20 63 68 61  3/91 Removed cha
12b0: 6e 67 65 20 62 61 72 73 20 66 72 6f 6d 20 6d 61  nge bars from ma
12c0: 6e 75 61 6c 20 65 6e 74 72 69 65 73 2c 20 6c 65  nual entries, le
12d0: 61 76 69 6e 67 20 6f 6e 6c 79 20 74 68 6f 73 65  aving only those
12e0: 0a 74 68 61 74 20 63 61 6d 65 20 61 66 74 65 72  .that came after
12f0: 20 76 65 72 73 69 6f 6e 20 33 2e 33 20 77 61 73   version 3.3 was
1300: 20 72 65 6c 65 61 73 65 64 2e 0a 0a 34 30 2e 20   released...40. 
1310: 35 2f 31 37 2f 39 31 20 43 68 61 6e 67 65 64 20  5/17/91 Changed 
1320: 74 65 73 74 73 20 74 6f 20 63 6f 6e 66 6f 72 6d  tests to conform
1330: 20 74 6f 20 4d 61 72 79 20 41 6e 6e 20 4d 61 79   to Mary Ann May
1340: 2d 50 75 6d 70 68 72 65 79 27 73 20 61 70 70 72  -Pumphrey's appr
1350: 6f 61 63 68 2e 0a 20 0a 34 31 2e 20 35 2f 32 33  oach.. .41. 5/23
1360: 2f 39 31 20 4d 61 73 73 69 76 65 20 72 65 76 69  /91 Massive revi
1370: 73 69 6f 6e 20 74 6f 20 54 63 6c 20 70 61 72 73  sion to Tcl pars
1380: 65 72 20 74 6f 20 73 69 6d 70 6c 69 66 79 20 74  er to simplify t
1390: 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  he implementatio
13a0: 6e 0a 6f 66 20 73 74 72 69 6e 67 20 61 6e 64 20  n.of string and 
13b0: 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 73  floating-point s
13c0: 75 70 70 6f 72 74 20 69 6e 20 65 78 70 72 65 73  upport in expres
13d0: 73 69 6f 6e 73 2e 20 20 4e 65 77 6c 69 6e 65 73  sions.  Newlines
13e0: 20 69 6e 73 69 64 65 0a 5b 5d 20 61 72 65 20 6e   inside.[] are n
13f0: 6f 77 20 74 72 65 61 74 65 64 20 61 73 20 63 6f  ow treated as co
1400: 6d 6d 61 6e 64 20 73 65 70 61 72 61 74 6f 72 73  mmand separators
1410: 20 72 61 74 68 65 72 20 74 68 61 6e 20 77 6f 72   rather than wor
1420: 64 20 73 65 70 61 72 61 74 6f 72 73 0a 28 74 68  d separators.(th
1430: 69 73 20 6d 61 6b 65 73 20 6e 65 77 6c 69 6e 65  is makes newline
1440: 20 74 72 65 61 74 6d 65 6e 74 20 63 6f 6e 73 69   treatment consi
1450: 73 74 65 6e 74 20 74 68 72 6f 75 67 68 6f 75 74  stent throughout
1460: 20 54 63 6c 29 2e 0a 2a 2a 2a 20 50 4f 54 45 4e   Tcl)..*** POTEN
1470: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
1480: 4c 49 54 59 20 2a 2a 2a 0a 0a 34 32 2e 20 35 2f  LITY ***..42. 5/
1490: 32 33 2f 39 31 20 4d 61 73 73 69 76 65 20 72 65  23/91 Massive re
14a0: 77 72 69 74 65 20 6f 66 20 65 78 70 72 65 73 73  write of express
14b0: 69 6f 6e 20 63 6f 64 65 20 74 6f 20 73 75 70 70  ion code to supp
14c0: 6f 72 74 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69  ort floating-poi
14d0: 6e 74 0a 76 61 6c 75 65 73 20 61 6e 64 20 73 69  nt.values and si
14e0: 6d 70 6c 65 20 73 74 72 69 6e 67 20 63 6f 6d 70  mple string comp
14f0: 61 72 69 73 6f 6e 73 2e 20 20 54 68 65 20 43 20  arisons.  The C 
1500: 69 6e 74 65 72 66 61 63 65 73 20 74 6f 20 65 78  interfaces to ex
1510: 70 72 65 73 73 69 6f 6e 0a 72 6f 75 74 69 6e 65  pression.routine
1520: 73 20 68 61 76 65 20 63 68 61 6e 67 65 64 20 28  s have changed (
1530: 54 63 6c 5f 45 78 70 72 20 69 73 20 72 65 70 6c  Tcl_Expr is repl
1540: 61 63 65 64 20 62 79 20 54 63 6c 5f 45 78 70 72  aced by Tcl_Expr
1550: 4c 6f 6e 67 2c 20 54 63 6c 5f 45 78 70 72 44 6f  Long, Tcl_ExprDo
1560: 75 62 6c 65 2c 0a 65 74 63 2e 29 2c 20 62 75 74  uble,.etc.), but
1570: 20 61 6c 6c 20 6f 6c 64 20 54 63 6c 20 65 78 70   all old Tcl exp
1580: 72 65 73 73 69 6f 6e 20 73 74 72 69 6e 67 73 20  ression strings 
1590: 73 68 6f 75 6c 64 20 62 65 20 61 63 63 65 70 74  should be accept
15a0: 65 64 20 62 79 20 74 68 65 20 6e 65 77 0a 65 78  ed by the new.ex
15b0: 70 72 65 73 73 69 6f 6e 20 63 6f 64 65 2e 0a 2a  pression code..*
15c0: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
15d0: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
15e0: 0a 0a 34 33 2e 20 35 2f 32 33 2f 39 31 20 4d 6f  ..43. 5/23/91 Mo
15f0: 64 69 66 69 65 64 20 74 63 6c 48 69 73 74 6f 72  dified tclHistor
1600: 79 2e 63 20 74 6f 20 63 68 65 63 6b 20 66 6f 72  y.c to check for
1610: 20 6e 65 67 61 74 69 76 65 20 22 6b 65 65 70 22   negative "keep"
1620: 20 76 61 6c 75 65 2e 0a 0a 34 34 2e 20 35 2f 32   value...44. 5/2
1630: 33 2f 39 31 20 4d 6f 64 69 66 69 65 64 20 54 63  3/91 Modified Tc
1640: 6c 5f 42 61 63 6b 73 6c 61 73 68 20 74 6f 20 68  l_Backslash to h
1650: 61 6e 64 6c 65 20 62 61 63 6b 73 6c 61 73 68 2d  andle backslash-
1660: 6e 65 77 6c 69 6e 65 2e 20 20 49 74 20 6e 6f 77  newline.  It now
1670: 0a 72 65 74 75 72 6e 73 20 30 20 74 6f 20 69 6e  .returns 0 to in
1680: 64 69 63 61 74 65 20 74 68 61 74 20 61 20 62 61  dicate that a ba
1690: 63 6b 73 6c 61 73 68 20 73 65 71 75 65 6e 63 65  ckslash sequence
16a0: 20 73 68 6f 75 6c 64 20 62 65 20 72 65 70 6c 61   should be repla
16b0: 63 65 64 20 62 79 0a 6e 6f 20 63 68 61 72 61 63  ced by.no charac
16c0: 74 65 72 20 61 74 20 61 6c 6c 2e 0a 2a 2a 2a 20  ter at all..*** 
16d0: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
16e0: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34  ATIBILITY ***..4
16f0: 35 2e 20 35 2f 32 39 2f 39 31 20 4d 6f 64 69 66  5. 5/29/91 Modif
1700: 69 65 64 20 74 6f 20 75 73 65 20 41 4e 53 49 20  ied to use ANSI 
1710: 43 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 74 6f  C function proto
1720: 74 79 70 65 73 2e 20 20 4d 75 73 74 20 73 65 74  types.  Must set
1730: 0a 22 55 53 45 5f 41 4e 53 49 22 20 73 77 69 74  ."USE_ANSI" swit
1740: 63 68 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ch when compilin
1750: 67 20 74 6f 20 67 65 74 20 70 72 6f 74 6f 74 79  g to get prototy
1760: 70 65 73 2e 0a 0a 34 36 2e 20 35 2f 32 39 2f 39  pes...46. 5/29/9
1770: 31 20 43 6f 6d 70 6c 65 74 65 64 20 74 65 73 74  1 Completed test
1780: 20 73 75 69 74 65 20 62 79 20 70 72 6f 76 69 64   suite by provid
1790: 69 6e 67 20 74 65 73 74 73 20 66 6f 72 20 61 6c  ing tests for al
17a0: 6c 20 6f 66 20 74 68 65 0a 62 75 69 6c 74 2d 69  l of the.built-i
17b0: 6e 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 73 2e 0a  n Tcl commands..
17c0: 0a 34 37 2e 20 35 2f 32 39 2f 39 31 20 43 68 61  .47. 5/29/91 Cha
17d0: 6e 67 65 64 20 54 63 6c 5f 43 6f 6e 63 61 74 20  nged Tcl_Concat 
17e0: 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20 6c 65 61  to eliminate lea
17f0: 64 69 6e 67 20 61 6e 64 20 74 72 61 69 6c 69 6e  ding and trailin
1800: 67 0a 77 68 69 74 65 2d 73 70 61 63 65 20 69 6e  g.white-space in
1810: 20 65 61 63 68 20 6f 66 20 74 68 65 20 74 68 69   each of the thi
1820: 6e 67 73 20 69 74 20 63 6f 6e 63 61 74 65 6e 61  ngs it concatena
1830: 74 65 73 20 61 6e 64 20 74 6f 20 69 67 6e 6f 72  tes and to ignor
1840: 65 0a 65 6c 65 6d 65 6e 74 73 20 74 68 61 74 20  e.elements that 
1850: 61 72 65 20 65 6d 70 74 79 20 6f 72 20 68 61 76  are empty or hav
1860: 65 20 6f 6e 6c 79 20 77 68 69 74 65 20 73 70 61  e only white spa
1870: 63 65 20 69 6e 20 74 68 65 6d 2e 20 20 54 68 69  ce in them.  Thi
1880: 73 0a 70 72 6f 64 75 63 65 73 20 63 6c 65 61 6e  s.produces clean
1890: 65 72 20 6f 75 74 70 75 74 20 66 72 6f 6d 20 74  er output from t
18a0: 68 65 20 22 63 6f 6e 63 61 74 22 20 63 6f 6d 6d  he "concat" comm
18b0: 61 6e 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  and..*** POTENTI
18c0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
18d0: 54 59 20 2a 2a 2a 0a 0a 34 38 2e 20 35 2f 33 31  TY ***..48. 5/31
18e0: 2f 39 31 20 43 68 61 6e 67 65 64 20 22 73 65 74  /91 Changed "set
18f0: 22 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63  " command and Tc
1900: 6c 5f 53 65 74 56 61 72 20 70 72 6f 63 65 64 75  l_SetVar procedu
1910: 72 65 20 74 6f 20 72 65 74 75 72 6e 0a 6e 65 77  re to return.new
1920: 20 76 61 6c 75 65 20 6f 66 20 76 61 72 69 61 62   value of variab
1930: 6c 65 2e 0a 0a 34 39 2e 20 36 2f 31 2f 39 31 20  le...49. 6/1/91 
1940: 41 64 64 65 64 20 22 77 68 69 6c 65 22 20 61 6e  Added "while" an
1950: 64 20 22 63 64 22 20 63 6f 6d 6d 61 6e 64 73 2e  d "cd" commands.
1960: 0a 0a 35 30 2e 20 36 2f 31 2f 39 31 20 43 68 61  ..50. 6/1/91 Cha
1970: 6e 67 65 64 20 22 65 78 65 63 22 20 74 6f 20 64  nged "exec" to d
1980: 65 6c 65 74 65 20 74 68 65 20 6c 61 73 74 20 63  elete the last c
1990: 68 61 72 61 63 74 65 72 20 6f 66 20 70 72 6f 67  haracter of prog
19a0: 72 61 6d 0a 6f 75 74 70 75 74 20 69 66 20 69 74  ram.output if it
19b0: 20 69 73 20 61 20 6e 65 77 6c 69 6e 65 2e 20 20   is a newline.  
19c0: 49 6e 20 6d 6f 73 74 20 63 61 73 65 73 20 74 68  In most cases th
19d0: 69 73 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69  is makes it easi
19e0: 65 72 20 74 6f 0a 70 72 6f 63 65 73 73 20 70 72  er to.process pr
19f0: 6f 67 72 61 6d 2d 67 65 6e 65 72 61 74 65 64 20  ogram-generated 
1a00: 6f 75 74 70 75 74 2e 0a 2a 2a 2a 20 50 4f 54 45  output..*** POTE
1a10: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
1a20: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 35 31 2e 20 36  ILITY ***..51. 6
1a30: 2f 31 2f 39 31 20 4d 61 64 65 20 73 75 72 65 20  /1/91 Made sure 
1a40: 74 68 61 74 20 70 6f 69 6e 74 65 72 73 20 61 72  that pointers ar
1a50: 65 20 6e 65 76 65 72 20 75 73 65 64 20 61 66 74  e never used aft
1a60: 65 72 20 66 72 65 65 69 6e 67 20 74 68 65 6d 2e  er freeing them.
1a70: 0a 0a 35 32 2e 20 36 2f 31 2f 39 31 20 46 69 78  ..52. 6/1/91 Fix
1a80: 65 64 20 62 75 67 20 69 6e 20 54 63 6c 57 6f 72  ed bug in TclWor
1a90: 64 45 6e 64 20 77 68 65 72 65 20 69 74 20 77 61  dEnd where it wa
1aa0: 73 6e 27 74 20 64 65 61 6c 69 6e 67 20 77 69 74  sn't dealing wit
1ab0: 68 0a 5b 5d 20 69 6e 73 69 64 65 20 71 75 6f 74  h.[] inside quot
1ac0: 65 73 20 63 6f 72 72 65 63 74 6c 79 2e 0a 0a 35  es correctly...5
1ad0: 33 2e 20 36 2f 38 2f 39 31 20 46 69 78 65 64 20  3. 6/8/91 Fixed 
1ae0: 65 78 65 63 2e 74 65 73 74 20 74 6f 20 61 63 63  exec.test to acc
1af0: 65 70 74 20 72 65 74 75 72 6e 20 76 61 6c 75 65  ept return value
1b00: 73 20 6f 66 20 65 69 74 68 65 72 20 31 20 6f 72  s of either 1 or
1b10: 0a 32 35 35 20 66 72 6f 6d 20 22 66 61 6c 73 65  .255 from "false
1b20: 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35 34 2e 20  " command...54. 
1b30: 37 2f 36 2f 39 31 20 4d 61 73 73 69 76 65 20 6f  7/6/91 Massive o
1b40: 76 65 72 68 61 75 6c 20 6f 66 20 76 61 72 69 61  verhaul of varia
1b50: 62 6c 65 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 20  ble management. 
1b60: 20 41 73 73 6f 63 69 61 74 69 76 65 0a 61 72 72   Associative.arr
1b70: 61 79 73 20 6e 6f 77 20 61 76 61 69 6c 61 62 6c  ays now availabl
1b80: 65 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 22 75  e, along with "u
1b90: 6e 73 65 74 22 20 63 6f 6d 6d 61 6e 64 20 28 61  nset" command (a
1ba0: 6e 64 20 54 63 6c 5f 55 6e 73 65 74 56 61 72 0a  nd Tcl_UnsetVar.
1bb0: 70 72 6f 63 65 64 75 72 65 29 2e 20 20 56 61 72  procedure).  Var
1bc0: 69 61 62 6c 65 20 74 72 61 63 65 73 20 68 61 76  iable traces hav
1bd0: 65 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65 6c  e been completel
1be0: 79 20 72 65 77 6f 72 6b 65 64 3a 0a 69 6e 74 65  y reworked:.inte
1bf0: 72 66 61 63 65 73 20 64 69 66 66 65 72 65 6e 74  rfaces different
1c00: 20 62 6f 74 68 20 66 72 6f 6d 20 54 63 6c 20 61   both from Tcl a
1c10: 6e 64 20 43 2c 20 61 6e 64 20 6d 75 6c 74 69 70  nd C, and multip
1c20: 6c 65 20 74 72 61 63 65 73 20 6d 61 79 0a 65 78  le traces may.ex
1c30: 69 73 74 20 6f 6e 20 73 61 6d 65 20 76 61 72 69  ist on same vari
1c40: 61 62 6c 65 2e 20 20 43 61 6e 20 6e 6f 20 6c 6f  able.  Can no lo
1c50: 6e 67 65 72 20 72 65 64 65 66 69 6e 65 20 65 78  nger redefine ex
1c60: 69 73 74 69 6e 67 20 6c 6f 63 61 6c 0a 76 61 72  isting local.var
1c70: 69 61 62 6c 65 20 74 6f 20 62 65 20 67 6c 6f 62  iable to be glob
1c80: 61 6c 2e 20 20 43 61 6c 6c 69 6e 67 20 73 65 71  al.  Calling seq
1c90: 75 65 6e 63 65 73 20 68 61 76 65 20 63 68 61 6e  uences have chan
1ca0: 67 65 64 20 73 6c 69 67 68 74 6c 79 0a 66 6f 72  ged slightly.for
1cb0: 20 54 63 6c 5f 47 65 74 56 61 72 20 61 6e 64 20   Tcl_GetVar and 
1cc0: 54 63 6c 5f 53 65 74 56 61 72 20 28 22 67 6c 6f  Tcl_SetVar ("glo
1cd0: 62 61 6c 22 20 69 73 20 6e 6f 77 20 22 66 6c 61  bal" is now "fla
1ce0: 67 73 22 29 2e 20 54 63 6c 5f 53 65 74 56 61 72  gs"). Tcl_SetVar
1cf0: 0a 63 61 6e 20 66 61 69 6c 20 61 6e 64 20 72 65  .can fail and re
1d00: 74 75 72 6e 20 61 20 4e 55 4c 4c 20 72 65 73 75  turn a NULL resu
1d10: 6c 74 2e 20 20 4e 65 77 20 66 6f 72 6d 73 20 6f  lt.  New forms o
1d20: 66 20 76 61 72 69 61 62 6c 65 2d 6d 61 6e 69 70  f variable-manip
1d30: 75 6c 61 74 69 6f 6e 0a 70 72 6f 63 65 64 75 72  ulation.procedur
1d40: 65 73 3a 20 20 54 63 6c 5f 47 65 74 56 61 72 32  es:  Tcl_GetVar2
1d50: 2c 20 54 63 6c 5f 53 65 74 56 61 72 32 2c 20 65  , Tcl_SetVar2, e
1d60: 74 63 2e 20 20 53 79 6e 74 61 78 20 6f 66 20 76  tc.  Syntax of v
1d70: 61 72 69 61 62 6c 65 0a 24 2d 6e 6f 74 61 74 69  ariable.$-notati
1d80: 6f 6e 20 63 68 61 6e 67 65 64 20 74 6f 20 73 75  on changed to su
1d90: 70 70 6f 72 74 20 61 72 72 61 79 20 69 6e 64 65  pport array inde
1da0: 78 69 6e 67 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  xing..*** POTENT
1db0: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
1dc0: 49 54 59 20 2a 2a 2a 0a 0a 35 35 2e 20 37 2f 36  ITY ***..55. 7/6
1dd0: 2f 39 31 20 41 64 64 65 64 20 6e 65 77 20 6c 69  /91 Added new li
1de0: 73 74 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20  st-manipulation 
1df0: 70 72 6f 63 65 64 75 72 65 73 3a 20 20 54 63 6c  procedures:  Tcl
1e00: 5f 53 63 61 6e 45 6c 65 6d 65 6e 74 2c 0a 54 63  _ScanElement,.Tc
1e10: 6c 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74  l_ConvertElement
1e20: 2c 20 54 63 6c 5f 41 70 70 65 6e 64 45 6c 65 6d  , Tcl_AppendElem
1e30: 65 6e 74 2e 0a 0a 35 36 2e 20 37 2f 31 32 2f 39  ent...56. 7/12/9
1e40: 31 20 43 72 65 61 74 65 64 20 6e 65 77 20 70 72  1 Created new pr
1e50: 6f 63 65 64 75 72 65 20 54 63 6c 5f 45 76 61 6c  ocedure Tcl_Eval
1e60: 46 69 6c 65 2c 20 77 68 69 63 68 20 64 6f 65 73  File, which does
1e70: 20 6d 6f 73 74 20 6f 66 20 74 68 65 0a 77 6f 72   most of the.wor
1e80: 6b 20 6f 66 20 74 68 65 20 22 73 6f 75 72 63 65  k of the "source
1e90: 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35 37 2e 20  " command...57. 
1ea0: 37 2f 32 30 2f 39 31 20 4d 61 6a 6f 72 20 72 65  7/20/91 Major re
1eb0: 77 6f 72 6b 69 6e 67 20 6f 66 20 22 65 78 65 63  working of "exec
1ec0: 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 6c  " command to all
1ed0: 6f 77 20 70 69 70 65 6c 69 6e 65 73 2c 0a 6d 6f  ow pipelines,.mo
1ee0: 72 65 20 72 65 64 69 72 65 63 74 69 6f 6e 2c 20  re redirection, 
1ef0: 62 61 63 6b 67 72 6f 75 6e 64 2e 20 20 41 64 64  background.  Add
1f00: 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65  ed new procedure
1f10: 73 20 54 63 6c 5f 46 6f 72 6b 2c 0a 54 63 6c 5f  s Tcl_Fork,.Tcl_
1f20: 57 61 69 74 50 69 64 73 2c 20 54 63 6c 5f 44 65  WaitPids, Tcl_De
1f30: 74 61 63 68 50 69 64 73 2c 20 61 6e 64 20 54 63  tachPids, and Tc
1f40: 6c 5f 43 72 65 61 74 65 50 69 70 65 6c 69 6e 65  l_CreatePipeline
1f50: 2e 20 20 54 68 65 20 6f 6c 64 0a 22 3c 20 69 6e  .  The old."< in
1f60: 70 75 74 22 20 6e 6f 74 61 74 69 6f 6e 20 68 61  put" notation ha
1f70: 73 20 62 65 65 6e 20 72 65 70 6c 61 63 65 64 20  s been replaced 
1f80: 62 79 20 22 3c 3c 20 69 6e 70 75 74 22 20 28 22  by "<< input" ("
1f90: 3c 22 20 69 73 20 66 6f 72 0a 72 65 64 69 72 65  <" is for.redire
1fa0: 63 74 69 6f 6e 20 66 72 6f 6d 20 61 20 66 69 6c  ction from a fil
1fb0: 65 29 2e 20 20 41 6c 73 6f 20 68 61 6e 64 6c 65  e).  Also handle
1fc0: 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 73 20  s error returns 
1fd0: 61 6e 64 20 61 62 6e 6f 72 6d 61 6c 0a 74 65 72  and abnormal.ter
1fe0: 6d 69 6e 61 74 69 6f 6e 73 20 28 65 2e 67 2e 20  minations (e.g. 
1ff0: 73 69 67 6e 61 6c 73 29 20 64 69 66 66 65 72 65  signals) differe
2000: 6e 74 6c 79 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  ntly..*** POTENT
2010: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2020: 49 54 59 20 2a 2a 2a 0a 0a 35 38 2e 20 37 2f 32  ITY ***..58. 7/2
2030: 31 2f 39 31 20 41 64 64 65 64 20 22 61 70 70 65  1/91 Added "appe
2040: 6e 64 22 20 61 6e 64 20 22 6c 61 70 70 65 6e 64  nd" and "lappend
2050: 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 35 39 2e  " commands...59.
2060: 20 37 2f 32 32 2f 39 31 20 52 65 77 6f 72 6b 65   7/22/91 Reworke
2070: 64 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73  d error messages
2080: 20 61 6e 64 20 6d 61 6e 75 61 6c 20 65 6e 74 72   and manual entr
2090: 69 65 73 20 74 6f 20 75 73 65 0a 3f 78 3f 20 61  ies to use.?x? a
20a0: 73 20 74 68 65 20 6e 6f 74 61 74 69 6f 6e 20 66  s the notation f
20b0: 6f 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61  or an optional a
20c0: 72 67 75 6d 65 6e 74 20 78 2c 20 69 6e 73 74 65  rgument x, inste
20d0: 61 64 20 6f 66 20 5b 78 5d 2e 20 20 54 68 65 0a  ad of [x].  The.
20e0: 62 72 61 63 6b 65 74 20 6e 6f 74 61 74 69 6f 6e  bracket notation
20f0: 20 77 61 73 20 6f 66 74 65 6e 20 63 6f 6e 66 75   was often confu
2100: 73 65 64 20 77 69 74 68 20 74 68 65 20 75 73 65  sed with the use
2110: 20 6f 66 20 62 72 61 63 6b 65 74 73 20 66 6f 72   of brackets for
2120: 0a 63 6f 6d 6d 61 6e 64 20 73 75 62 73 74 69 74  .command substit
2130: 75 74 69 6f 6e 2e 20 20 41 6c 73 6f 20 6d 6f 64  ution.  Also mod
2140: 69 66 69 65 64 20 65 72 72 6f 72 20 6d 65 73 73  ified error mess
2150: 61 67 65 73 20 74 6f 20 62 65 20 6d 6f 72 65 0a  ages to be more.
2160: 63 6f 6e 73 69 73 74 65 6e 74 2e 0a 0a 36 30 2e  consistent...60.
2170: 20 37 2f 32 33 2f 39 31 20 54 63 6c 5f 44 65 6c   7/23/91 Tcl_Del
2180: 65 74 65 43 6f 6d 6d 61 6e 64 20 6e 6f 77 20 72  eteCommand now r
2190: 65 74 75 72 6e 73 20 61 6e 20 69 6e 64 69 63 61  eturns an indica
21a0: 74 69 6f 6e 20 6f 66 20 77 68 65 74 68 65 72 0a  tion of whether.
21b0: 6f 72 20 6e 6f 74 20 74 68 65 20 63 6f 6d 6d 61  or not the comma
21c0: 6e 64 20 61 63 74 75 61 6c 6c 79 20 65 78 69 73  nd actually exis
21d0: 74 65 64 2c 20 61 6e 64 20 74 68 65 20 22 72 65  ted, and the "re
21e0: 6e 61 6d 65 22 20 63 6f 6d 6d 61 6e 64 20 75 73  name" command us
21f0: 65 73 0a 74 68 69 73 20 69 6e 66 6f 72 6d 61 74  es.this informat
2200: 69 6f 6e 20 74 6f 20 72 65 74 75 72 6e 20 61 6e  ion to return an
2210: 20 65 72 72 6f 72 20 69 66 20 61 6e 20 61 74 74   error if an att
2220: 65 6d 70 74 20 69 73 20 6d 61 64 65 20 74 6f 20  empt is made to 
2230: 64 65 6c 65 74 65 0a 61 20 6e 6f 6e 2d 65 78 69  delete.a non-exi
2240: 73 74 65 6e 74 20 63 6f 6d 6d 61 6e 64 2e 0a 2a  stent command..*
2250: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
2260: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
2270: 0a 0a 36 31 2e 20 37 2f 32 35 2f 39 31 20 41 64  ..61. 7/25/91 Ad
2280: 64 65 64 20 6e 65 77 20 22 65 72 72 6f 72 43 6f  ded new "errorCo
2290: 64 65 22 20 6d 65 63 68 61 6e 69 73 6d 2c 20 61  de" mechanism, a
22a0: 6c 6f 6e 67 20 77 69 74 68 20 70 72 6f 63 65 64  long with proced
22b0: 75 72 65 73 0a 54 63 6c 5f 53 65 74 45 72 72 6f  ures.Tcl_SetErro
22c0: 72 43 6f 64 65 2c 20 54 63 6c 5f 55 6e 69 78 45  rCode, Tcl_UnixE
22d0: 72 72 6f 72 2c 20 61 6e 64 20 54 63 6c 5f 52 65  rror, and Tcl_Re
22e0: 73 65 74 52 65 73 75 6c 74 2e 20 20 52 65 6e 61  setResult.  Rena
22f0: 6d 65 64 0a 54 63 6c 5f 52 65 74 75 72 6e 20 74  med.Tcl_Return t
2300: 6f 20 54 63 6c 5f 53 65 74 52 65 73 75 6c 74 2c  o Tcl_SetResult,
2310: 20 62 75 74 20 6c 65 66 74 20 61 20 23 64 65 66   but left a #def
2320: 69 6e 65 20 66 6f 72 20 54 63 6c 5f 52 65 74 75  ine for Tcl_Retu
2330: 72 6e 20 74 6f 0a 61 76 6f 69 64 20 63 6f 6d 70  rn to.avoid comp
2340: 61 74 69 62 69 6c 69 74 79 20 70 72 6f 62 6c 65  atibility proble
2350: 6d 73 2e 0a 0a 36 32 2e 20 37 2f 32 36 2f 39 31  ms...62. 7/26/91
2360: 20 45 78 74 65 6e 64 65 64 20 22 63 61 73 65 22   Extended "case"
2370: 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 61 6c   command with al
2380: 74 65 72 6e 61 74 65 20 73 79 6e 74 61 78 20 77  ternate syntax w
2390: 68 65 72 65 20 61 6c 6c 0a 70 61 74 74 65 72 6e  here all.pattern
23a0: 73 20 61 6e 64 20 63 6f 6d 6d 61 6e 64 73 20 61  s and commands a
23b0: 72 65 20 74 6f 67 65 74 68 65 72 20 69 6e 20 61  re together in a
23c0: 20 73 69 6e 67 6c 65 20 6c 69 73 74 20 61 72 67   single list arg
23d0: 75 6d 65 6e 74 3a 20 20 6d 61 6b 65 73 0a 69 74  ument:  makes.it
23e0: 20 65 61 73 69 65 72 20 74 6f 20 77 72 69 74 65   easier to write
23f0: 20 6d 75 6c 74 69 2d 6c 69 6e 65 20 63 61 73 65   multi-line case
2400: 20 73 74 61 74 65 6d 65 6e 74 73 2e 0a 0a 36 33   statements...63
2410: 2e 20 37 2f 32 37 2f 39 31 20 43 68 61 6e 67 65  . 7/27/91 Change
2420: 64 20 22 70 72 69 6e 74 22 20 63 6f 6d 6d 61 6e  d "print" comman
2430: 64 20 74 6f 20 70 65 72 66 6f 72 6d 20 74 69 6c  d to perform til
2440: 64 65 2d 73 75 62 73 74 69 74 75 74 69 6f 6e 20  de-substitution 
2450: 6f 6e 0a 74 68 65 20 66 69 6c 65 20 6e 61 6d 65  on.the file name
2460: 2e 0a 0a 36 34 2e 20 37 2f 32 37 2f 39 31 20 41  ...64. 7/27/91 A
2470: 64 64 65 64 20 22 74 6f 6c 6f 77 65 72 22 2c 20  dded "tolower", 
2480: 22 74 6f 75 70 70 65 72 22 2c 20 22 74 72 69 6d  "toupper", "trim
2490: 22 2c 20 22 74 72 69 6d 6c 65 66 74 22 2c 20 61  ", "trimleft", a
24a0: 6e 64 20 22 74 72 69 6d 72 69 67 68 74 22 0a 6f  nd "trimright".o
24b0: 70 74 69 6f 6e 73 20 74 6f 20 22 73 74 72 69 6e  ptions to "strin
24c0: 67 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 36 35 2e  g" command...65.
24d0: 20 37 2f 32 39 2f 39 31 20 41 64 64 65 64 20 22   7/29/91 Added "
24e0: 61 74 69 6d 65 22 2c 20 22 6d 74 69 6d 65 22 2c  atime", "mtime",
24f0: 20 22 73 69 7a 65 22 2c 20 61 6e 64 20 22 73 74   "size", and "st
2500: 61 74 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22  at" options to "
2510: 66 69 6c 65 22 0a 63 6f 6d 6d 61 6e 64 2e 0a 0a  file".command...
2520: 36 36 2e 20 38 2f 31 2f 39 31 20 41 64 64 65 64  66. 8/1/91 Added
2530: 20 22 73 70 6c 69 74 22 20 61 6e 64 20 22 6a 6f   "split" and "jo
2540: 69 6e 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 36  in" commands...6
2550: 37 2e 20 38 2f 31 31 2f 39 31 20 41 64 64 65 64  7. 8/11/91 Added
2560: 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 66 69   commands for fi
2570: 6c 65 20 49 2f 4f 2c 20 69 6e 63 6c 75 64 69 6e  le I/O, includin
2580: 67 20 22 6f 70 65 6e 22 2c 20 22 63 6c 6f 73 65  g "open", "close
2590: 22 2c 0a 22 72 65 61 64 22 2c 20 22 67 65 74 73  ",."read", "gets
25a0: 22 2c 20 22 70 75 74 73 22 2c 20 22 66 6c 75 73  ", "puts", "flus
25b0: 68 22 2c 20 22 65 6f 66 22 2c 20 22 73 65 65 6b  h", "eof", "seek
25c0: 22 2c 20 61 6e 64 20 22 74 65 6c 6c 22 2e 0a 0a  ", and "tell"...
25d0: 36 38 2e 20 38 2f 31 34 2f 39 31 20 53 77 69 74  68. 8/14/91 Swit
25e0: 63 68 65 64 20 74 6f 20 75 73 65 20 61 20 68 61  ched to use a ha
25f0: 73 68 20 74 61 62 6c 65 20 66 6f 72 20 63 6f 6d  sh table for com
2600: 6d 61 6e 64 20 6c 6f 6f 6b 75 70 73 2e 20 20 43  mand lookups.  C
2610: 6f 6d 6d 61 6e 64 0a 61 62 62 72 65 76 69 61 74  ommand.abbreviat
2620: 69 6f 6e 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 68  ions no longer h
2630: 61 76 65 20 64 69 72 65 63 74 20 73 75 70 70 6f  ave direct suppo
2640: 72 74 20 69 6e 20 74 68 65 20 54 63 6c 20 69 6e  rt in the Tcl in
2650: 74 65 72 70 72 65 74 65 72 2c 20 62 75 74 0a 69  terpreter, but.i
2660: 74 20 73 68 6f 75 6c 64 20 62 65 20 70 6f 73 73  t should be poss
2670: 69 62 6c 65 20 74 6f 20 73 69 6d 75 6c 61 74 65  ible to simulate
2680: 20 74 68 65 6d 20 77 69 74 68 20 74 68 65 20 61   them with the a
2690: 75 74 6f 2d 6c 6f 61 64 20 66 65 61 74 75 72 65  uto-load feature
26a0: 73 0a 64 65 73 63 72 69 62 65 64 20 62 65 6c 6f  s.described belo
26b0: 77 2e 20 20 54 68 65 20 22 6e 6f 41 62 62 72 65  w.  The "noAbbre
26c0: 76 22 20 76 61 72 69 61 62 6c 65 20 69 73 20 6e  v" variable is n
26d0: 6f 20 6c 6f 6e 67 65 72 20 75 73 65 64 20 62 79  o longer used by
26e0: 20 54 63 6c 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54   Tcl..*** POTENT
26f0: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2700: 49 54 59 20 2a 2a 2a 0a 0a 36 38 2e 35 20 38 2f  ITY ***..68.5 8/
2710: 31 35 2f 39 31 20 41 64 64 65 64 20 73 75 70 70  15/91 Added supp
2720: 6f 72 74 20 66 6f 72 20 22 75 6e 6b 6e 6f 77 6e  ort for "unknown
2730: 22 20 63 6f 6d 6d 61 6e 64 2c 20 77 68 69 63 68  " command, which
2740: 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 0a   can be used to.
2750: 63 6f 6d 70 6c 65 74 65 20 61 62 62 72 65 76 69  complete abbrevi
2760: 61 74 69 6f 6e 73 2c 20 61 75 74 6f 2d 6c 6f 61  ations, auto-loa
2770: 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2c  d library files,
2780: 20 61 75 74 6f 2d 65 78 65 63 20 73 68 65 6c 6c   auto-exec shell
2790: 0a 63 6f 6d 6d 61 6e 64 73 2c 20 65 74 63 2e 0a  .commands, etc..
27a0: 0a 36 39 2e 20 38 2f 31 35 2f 39 31 20 41 64 64  .69. 8/15/91 Add
27b0: 65 64 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e 20 73  ed -nocomplain s
27c0: 77 69 74 63 68 20 74 6f 20 22 67 6c 6f 62 22 20  witch to "glob" 
27d0: 63 6f 6d 6d 61 6e 64 2e 0a 0a 37 30 2e 20 38 2f  command...70. 8/
27e0: 32 30 2f 39 31 20 41 64 64 65 64 20 22 69 6e 66  20/91 Added "inf
27f0: 6f 20 6c 69 62 72 61 72 79 22 20 6f 70 74 69 6f  o library" optio
2800: 6e 20 61 6e 64 20 54 43 4c 5f 4c 49 42 52 41 52  n and TCL_LIBRAR
2810: 59 20 23 64 65 66 69 6e 65 2e 20 20 41 6c 73 6f  Y #define.  Also
2820: 0a 61 64 64 65 64 20 22 69 6e 66 6f 20 73 63 72  .added "info scr
2830: 69 70 74 22 20 6f 70 74 69 6f 6e 2e 0a 0a 37 31  ipt" option...71
2840: 2e 20 38 2f 32 30 2f 39 31 20 43 68 61 6e 67 65  . 8/20/91 Change
2850: 64 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64  d "file" command
2860: 20 74 6f 20 74 61 6b 65 20 22 6f 70 74 69 6f 6e   to take "option
2870: 22 20 61 72 67 75 6d 65 6e 74 20 61 73 20 66 69  " argument as fi
2880: 72 73 74 0a 61 72 67 75 6d 65 6e 74 20 28 62 65  rst.argument (be
2890: 66 6f 72 65 20 66 69 6c 65 20 6e 61 6d 65 29 2c  fore file name),
28a0: 20 66 6f 72 20 63 6f 6e 73 69 73 74 65 6e 63 79   for consistency
28b0: 20 77 69 74 68 20 6f 74 68 65 72 20 54 63 6c 20   with other Tcl 
28c0: 63 6f 6d 6d 61 6e 64 73 2e 0a 2a 2a 2a 20 50 4f  commands..*** PO
28d0: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
28e0: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 37 32 2e  IBILITY ***..72.
28f0: 20 38 2f 32 30 2f 39 31 20 43 68 61 6e 67 65 64   8/20/91 Changed
2900: 20 66 6f 72 6d 61 74 20 6f 66 20 69 6e 66 6f 72   format of infor
2910: 6d 61 74 69 6f 6e 20 69 6e 20 24 65 72 72 6f 72  mation in $error
2920: 49 6e 66 6f 20 76 61 72 69 61 62 6c 65 3a 0a 63  Info variable:.c
2930: 6f 6d 6d 65 6e 74 73 20 73 75 63 68 20 61 73 20  omments such as 
2940: 0a 20 20 20 20 28 22 77 68 69 6c 65 22 20 62 6f  .    ("while" bo
2950: 64 79 20 6c 69 6e 65 20 31 29 0a 61 72 65 20 6e  dy line 1).are n
2960: 6f 77 20 6f 6e 20 73 65 70 61 72 61 74 65 20 6c  ow on separate l
2970: 69 6e 65 73 20 66 72 6f 6d 20 63 6f 6d 6d 61 6e  ines from comman
2980: 64 73 20 62 65 69 6e 67 20 65 78 65 63 75 74 65  ds being execute
2990: 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  d..*** POTENTIAL
29a0: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
29b0: 20 2a 2a 2a 0a 0a 37 33 2e 20 38 2f 32 30 2f 39   ***..73. 8/20/9
29c0: 31 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 41 70  1 Changed Tcl_Ap
29d0: 70 65 6e 64 52 65 73 75 6c 74 20 73 6f 20 74 68  pendResult so th
29e0: 61 74 20 69 74 20 28 65 76 65 6e 74 75 61 6c 6c  at it (eventuall
29f0: 79 29 20 66 72 65 65 73 0a 6c 61 72 67 65 20 62  y) frees.large b
2a00: 75 66 66 65 72 73 20 74 68 61 74 20 69 74 20 61  uffers that it a
2a10: 6c 6c 6f 63 61 74 65 73 2e 0a 0a 37 34 2e 20 38  llocates...74. 8
2a20: 2f 32 31 2f 39 31 20 41 64 64 65 64 20 22 6c 69  /21/91 Added "li
2a30: 6e 73 65 72 74 22 2c 20 22 6c 72 65 70 6c 61 63  nsert", "lreplac
2a40: 65 22 2c 20 22 6c 73 65 61 72 63 68 22 2c 20 61  e", "lsearch", a
2a50: 6e 64 20 22 6c 73 6f 72 74 22 0a 63 6f 6d 6d 61  nd "lsort".comma
2a60: 6e 64 73 2e 0a 0a 37 35 2e 20 38 2f 32 38 2f 39  nds...75. 8/28/9
2a70: 31 20 41 64 64 65 64 20 22 69 6e 63 72 22 20 61  1 Added "incr" a
2a80: 6e 64 20 22 65 78 69 74 22 20 63 6f 6d 6d 61 6e  nd "exit" comman
2a90: 64 73 2e 0a 0a 37 36 2e 20 38 2f 33 30 2f 39 31  ds...76. 8/30/91
2aa0: 20 41 64 64 65 64 20 22 72 65 67 65 78 70 22 20   Added "regexp" 
2ab0: 61 6e 64 20 22 72 65 67 73 75 62 22 20 63 6f 6d  and "regsub" com
2ac0: 6d 61 6e 64 73 2e 0a 0a 37 37 2e 20 39 2f 34 2f  mands...77. 9/4/
2ad0: 39 31 20 43 68 61 6e 67 65 64 20 22 64 79 6e 61  91 Changed "dyna
2ae0: 6d 69 63 22 20 66 69 65 6c 64 20 69 6e 20 69 6e  mic" field in in
2af0: 74 65 72 70 72 65 74 65 72 73 20 74 6f 20 22 66  terpreters to "f
2b00: 72 65 65 50 72 6f 63 22 20 28 70 72 6f 63 65 64  reeProc" (proced
2b10: 75 72 65 0a 61 64 64 72 65 73 73 29 2e 20 20 54  ure.address).  T
2b20: 68 69 73 20 61 6c 6c 6f 77 73 20 66 6f 72 20 61  his allows for a
2b30: 6c 74 65 72 6e 61 74 69 76 65 20 73 74 6f 72 61  lternative stora
2b40: 67 65 20 6d 61 6e 61 67 65 72 73 2e 0a 2a 2a 2a  ge managers..***
2b50: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
2b60: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
2b70: 37 38 2e 20 39 2f 36 2f 39 31 20 41 64 64 65 64  78. 9/6/91 Added
2b80: 20 22 69 6e 64 65 78 22 2c 20 22 6c 65 6e 67 74   "index", "lengt
2b90: 68 22 2c 20 61 6e 64 20 22 72 61 6e 67 65 22 20  h", and "range" 
2ba0: 6f 70 74 69 6f 6e 73 20 74 6f 20 22 73 74 72 69  options to "stri
2bb0: 6e 67 22 0a 63 6f 6d 6d 61 6e 64 2e 20 20 41 64  ng".command.  Ad
2bc0: 64 65 64 20 22 6c 69 6e 64 65 78 22 2c 20 22 6c  ded "lindex", "l
2bd0: 6c 65 6e 67 74 68 22 2c 20 61 6e 64 20 22 6c 72  length", and "lr
2be0: 61 6e 67 65 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a  ange" commands..
2bf0: 0a 37 39 2e 20 39 2f 38 2f 39 31 20 52 65 6d 6f  .79. 9/8/91 Remo
2c00: 76 65 64 20 22 69 6e 64 65 78 22 2c 20 22 6c 65  ved "index", "le
2c10: 6e 67 74 68 22 2c 20 22 70 72 69 6e 74 22 20 61  ngth", "print" a
2c20: 6e 64 20 22 72 61 6e 67 65 22 20 63 6f 6d 6d 61  nd "range" comma
2c30: 6e 64 73 2e 0a 22 50 72 69 6e 74 22 20 69 73 20  nds.."Print" is 
2c40: 72 65 64 75 6e 64 61 6e 74 20 77 69 74 68 20 22  redundant with "
2c50: 70 75 74 73 22 2c 20 62 75 74 20 6c 65 73 73 20  puts", but less 
2c60: 67 65 6e 65 72 61 6c 2c 20 61 6e 64 20 74 68 65  general, and the
2c70: 20 6f 74 68 65 72 0a 63 6f 6d 6d 61 6e 64 73 20   other.commands 
2c80: 61 72 65 20 72 65 70 6c 61 63 65 64 20 77 69 74  are replaced wit
2c90: 68 20 74 68 65 20 6e 65 77 20 63 6f 6d 6d 61 6e  h the new comman
2ca0: 64 73 20 64 65 73 63 72 69 62 65 64 20 69 6e 20  ds described in 
2cb0: 63 68 61 6e 67 65 20 37 38 0a 61 62 6f 76 65 2e  change 78.above.
2cc0: 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
2cd0: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
2ce0: 2a 2a 0a 0a 38 30 2e 20 39 2f 38 2f 39 31 20 43  **..80. 9/8/91 C
2cf0: 68 61 6e 67 65 64 20 68 69 73 74 6f 72 79 20 72  hanged history r
2d00: 65 76 69 73 69 6f 6e 20 74 6f 20 6f 63 63 75 72  evision to occur
2d10: 20 65 76 65 6e 20 77 68 65 6e 20 68 69 73 74 6f   even when histo
2d20: 72 79 20 63 6f 6d 6d 61 6e 64 0a 69 73 20 6e 65  ry command.is ne
2d30: 73 74 65 64 3b 20 20 6e 65 65 64 65 64 20 69 6e  sted;  needed in
2d40: 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c 6f 77 20   order to allow 
2d50: 22 68 69 73 74 6f 72 79 22 20 74 6f 20 62 65 20  "history" to be 
2d60: 69 6e 76 6f 6b 65 64 20 66 72 6f 6d 0a 22 75 6e  invoked from."un
2d70: 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72 65  known" procedure
2d80: 2e 0a 0a 38 31 2e 20 39 2f 31 33 2f 39 31 20 43  ...81. 9/13/91 C
2d90: 68 61 6e 67 65 64 20 22 70 61 6e 69 63 22 20 6e  hanged "panic" n
2da0: 6f 74 20 74 6f 20 75 73 65 20 76 66 70 72 69 6e  ot to use vfprin
2db0: 74 66 20 28 69 74 27 73 20 75 67 6c 69 65 72 20  tf (it's uglier 
2dc0: 61 6e 64 20 6c 65 73 73 0a 67 65 6e 65 72 61 6c  and less.general
2dd0: 20 6e 6f 77 2c 20 62 75 74 20 6d 61 6b 65 73 20   now, but makes 
2de0: 69 74 20 65 61 73 69 65 72 20 74 6f 20 72 75 6e  it easier to run
2df0: 20 54 63 6c 20 6f 6e 20 73 79 73 74 65 6d 73 20   Tcl on systems 
2e00: 74 68 61 74 20 64 6f 6e 27 74 0a 68 61 76 65 20  that don't.have 
2e10: 76 66 70 72 69 6e 74 66 29 2e 20 20 41 6c 73 6f  vfprintf).  Also
2e20: 20 63 68 61 6e 67 65 64 20 22 73 74 72 65 72 72   changed "strerr
2e30: 6f 72 22 20 6e 6f 74 20 74 6f 20 72 65 64 65 63  or" not to redec
2e40: 6c 61 72 65 20 73 79 73 5f 65 72 72 6c 69 73 74  lare sys_errlist
2e50: 2e 0a 0a 38 32 2e 20 39 2f 31 39 2f 39 31 20 4c  ...82. 9/19/91 L
2e60: 6f 74 73 20 6f 66 20 63 68 61 6e 67 65 73 20 74  ots of changes t
2e70: 6f 20 69 6d 70 72 6f 76 65 20 70 6f 72 74 61 62  o improve portab
2e80: 69 6c 69 74 79 20 74 6f 20 64 69 66 66 65 72 65  ility to differe
2e90: 6e 74 20 55 4e 49 58 0a 73 79 73 74 65 6d 73 2c  nt UNIX.systems,
2ea0: 20 69 6e 63 6c 75 64 69 6e 67 20 61 64 64 69 74   including addit
2eb0: 69 6f 6e 20 6f 66 20 22 63 6f 6e 66 69 67 22 20  ion of "config" 
2ec0: 73 63 72 69 70 74 20 74 6f 20 61 64 61 70 74 20  script to adapt 
2ed0: 54 63 6c 20 74 6f 20 74 68 65 0a 63 6f 6e 66 69  Tcl to the.confi
2ee0: 67 75 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 20  guration of the 
2ef0: 73 79 73 74 65 6d 20 69 74 27 73 20 62 65 69 6e  system it's bein
2f00: 67 20 63 6f 6d 70 69 6c 65 64 20 6f 6e 2e 0a 0a  g compiled on...
2f10: 38 33 2e 20 39 2f 32 32 2f 39 31 20 41 64 64 65  83. 9/22/91 Adde
2f20: 64 20 22 70 77 64 22 20 63 6f 6d 6d 61 6e 64 2e  d "pwd" command.
2f30: 0a 0a 38 34 2e 20 39 2f 32 32 2f 39 31 20 52 65  ..84. 9/22/91 Re
2f40: 6e 61 6d 65 64 20 6d 61 6e 75 61 6c 20 70 61 67  named manual pag
2f50: 65 73 20 73 6f 20 74 68 61 74 20 74 68 65 69 72  es so that their
2f60: 20 66 69 6c 65 6e 61 6d 65 73 20 61 72 65 20 6e   filenames are n
2f70: 6f 20 6d 6f 72 65 0a 74 68 61 6e 20 31 34 20 63  o more.than 14 c
2f80: 68 61 72 61 63 74 65 72 73 20 69 6e 20 6c 65 6e  haracters in len
2f90: 67 74 68 2c 20 6d 6f 76 65 64 20 74 6f 20 22 64  gth, moved to "d
2fa0: 6f 63 22 20 73 75 62 64 69 72 65 63 74 6f 72 79  oc" subdirectory
2fb0: 2e 0a 0a 38 35 2e 20 39 2f 32 34 2f 39 31 20 52  ...85. 9/24/91 R
2fc0: 65 64 69 64 20 6d 61 6e 75 61 6c 20 65 6e 74 72  edid manual entr
2fd0: 69 65 73 20 73 6f 20 74 68 65 79 20 63 6f 6e 74  ies so they cont
2fe0: 61 69 6e 20 74 68 65 20 73 75 70 70 6c 65 6d 65  ain the suppleme
2ff0: 6e 74 61 6c 0a 6d 61 63 72 6f 73 20 74 68 61 74  ntal.macros that
3000: 20 74 68 65 79 20 6e 65 65 64 3b 20 20 63 61 6e   they need;  can
3010: 20 6a 75 73 74 20 70 72 69 6e 74 20 77 69 74 68   just print with
3020: 20 22 74 72 6f 66 66 20 2d 6d 61 6e 22 20 6f 72   "troff -man" or
3030: 20 22 6d 61 6e 22 0a 6e 6f 77 2e 0a 0a 38 36 2e   "man".now...86.
3040: 20 39 2f 32 36 2f 39 31 20 43 72 65 61 74 65 64   9/26/91 Created
3050: 20 69 6e 69 74 69 61 6c 20 76 65 72 73 69 6f 6e   initial version
3060: 20 6f 66 20 73 63 72 69 70 74 20 6c 69 62 72 61   of script libra
3070: 72 79 2c 20 69 6e 63 6c 75 64 69 6e 67 0a 61 20  ry, including.a 
3080: 76 65 72 73 69 6f 6e 20 6f 66 20 22 75 6e 6b 6e  version of "unkn
3090: 6f 77 6e 22 20 74 68 61 74 20 64 6f 65 73 20 61  own" that does a
30a0: 75 74 6f 2d 6c 6f 61 64 69 6e 67 2c 20 61 75 74  uto-loading, aut
30b0: 6f 2d 65 78 65 63 75 74 69 6f 6e 2c 20 61 6e 64  o-execution, and
30c0: 0a 61 62 62 72 65 76 69 61 74 69 6f 6e 20 65 78  .abbreviation ex
30d0: 70 61 6e 73 69 6f 6e 2e 20 20 54 68 69 73 20 6c  pansion.  This l
30e0: 69 62 72 61 72 79 20 69 73 20 75 73 65 64 20 62  ibrary is used b
30f0: 79 20 74 63 6c 54 65 73 74 0a 61 75 74 6f 6d 61  y tclTest.automa
3100: 74 69 63 61 6c 6c 79 2e 20 20 53 65 65 20 74 68  tically.  See th
3110: 65 20 22 6c 69 62 72 61 72 79 22 20 6d 61 6e 75  e "library" manu
3120: 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 64 65 74  al entry for det
3130: 61 69 6c 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  ails...---------
3140: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
3150: 64 20 76 65 72 73 69 6f 6e 20 36 2e 30 2c 20 39  d version 6.0, 9
3160: 2f 32 36 2f 39 31 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /26/91 ---------
3170: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 38 37 2e 20 39  ---------..87. 9
3180: 2f 33 30 2f 39 31 20 4d 61 64 65 20 22 73 74 72  /30/91 Made "str
3190: 69 6e 67 20 74 6f 6c 6f 77 65 72 22 20 61 6e 64  ing tolower" and
31a0: 20 22 73 74 72 69 6e 67 20 74 6f 75 70 70 65 72   "string toupper
31b0: 22 20 63 68 65 63 6b 20 63 61 73 65 0a 62 65 66  " check case.bef
31c0: 6f 72 65 20 63 6f 6e 76 65 72 74 69 6e 67 3a 20  ore converting: 
31d0: 20 6f 6e 20 73 6f 6d 65 20 73 79 73 74 65 6d 73   on some systems
31e0: 2c 20 22 74 6f 6c 6f 77 65 72 22 20 61 6e 64 20  , "tolower" and 
31f0: 22 74 6f 75 70 70 65 72 22 20 61 73 73 75 6d 65  "toupper" assume
3200: 0a 74 68 61 74 20 63 68 61 72 61 63 74 65 72 20  .that character 
3210: 61 6c 72 65 61 64 79 20 68 61 73 20 70 61 72 74  already has part
3220: 69 63 75 6c 61 72 20 63 61 73 65 2e 0a 0a 38 38  icular case...88
3230: 2e 20 39 2f 33 30 2f 39 31 20 46 69 78 65 64 20  . 9/30/91 Fixed 
3240: 62 75 67 20 69 6e 20 54 63 6c 5f 53 65 74 52 65  bug in Tcl_SetRe
3250: 73 75 6c 74 3a 20 20 77 61 73 6e 27 74 20 61 6c  sult:  wasn't al
3260: 77 61 79 73 20 73 65 74 74 69 6e 67 20 66 72 65  ways setting fre
3270: 65 50 72 6f 63 0a 63 6f 72 72 65 63 74 6c 79 20  eProc.correctly 
3280: 77 68 65 6e 20 63 61 6c 6c 65 64 20 77 69 74 68  when called with
3290: 20 4e 55 4c 4c 20 76 61 6c 75 65 2e 20 20 54 68   NULL value.  Th
32a0: 69 73 20 74 65 6e 64 65 64 20 74 6f 20 63 61 75  is tended to cau
32b0: 73 65 20 6d 65 6d 6f 72 79 0a 61 6c 6c 6f 63 61  se memory.alloca
32c0: 74 69 6f 6e 20 65 72 72 6f 72 73 20 6c 61 74 65  tion errors late
32d0: 72 2e 0a 0a 38 39 2e 20 31 30 2f 33 2f 39 31 20  r...89. 10/3/91 
32e0: 41 64 64 65 64 20 22 75 70 76 61 72 22 20 63 6f  Added "upvar" co
32f0: 6d 6d 61 6e 64 2e 0a 0a 39 30 2e 20 31 30 2f 34  mmand...90. 10/4
3300: 2f 39 31 20 43 68 61 6e 67 65 64 20 22 66 6f 72  /91 Changed "for
3310: 6d 61 74 22 20 73 6f 20 74 68 61 74 20 69 6e 74  mat" so that int
3320: 65 72 6e 61 6c 6c 79 20 69 74 20 63 6f 6e 76 65  ernally it conve
3330: 72 74 73 20 25 44 20 74 6f 20 25 6c 64 2c 0a 25  rts %D to %ld,.%
3340: 55 20 74 6f 20 25 6c 75 2c 20 25 4f 20 74 6f 20  U to %lu, %O to 
3350: 25 6c 6f 2c 20 61 6e 64 20 25 46 20 74 6f 20 25  %lo, and %F to %
3360: 66 2e 20 20 54 68 69 73 20 65 6c 69 6d 69 6e 61  f.  This elimina
3370: 74 65 73 20 73 6f 6d 65 20 63 6f 6d 70 61 74 69  tes some compati
3380: 62 69 6c 69 74 79 0a 70 72 6f 62 6c 65 6d 73 20  bility.problems 
3390: 6f 6e 20 73 6f 6d 65 20 6d 61 63 68 69 6e 65 73  on some machines
33a0: 20 77 69 74 68 6f 75 74 20 61 66 66 65 63 74 69   without affecti
33b0: 6e 67 20 62 65 68 61 76 69 6f 72 2e 0a 0a 39 31  ng behavior...91
33c0: 2e 20 31 30 2f 31 30 2f 39 31 20 46 69 78 65 64  . 10/10/91 Fixed
33d0: 20 62 75 67 20 69 6e 20 22 72 65 67 73 75 62 22   bug in "regsub"
33e0: 20 74 68 61 74 20 63 61 75 73 65 64 20 63 6f 72   that caused cor
33f0: 65 20 64 75 6d 70 73 20 77 69 74 68 20 74 68 65  e dumps with the
3400: 20 2d 61 6c 6c 0a 6f 70 74 69 6f 6e 20 77 68 65   -all.option whe
3410: 6e 20 74 68 65 20 6c 61 73 74 20 6d 61 74 63 68  n the last match
3420: 20 77 61 73 6e 27 74 20 61 74 20 74 68 65 20 65   wasn't at the e
3430: 6e 64 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67  nd of the string
3440: 2e 0a 0a 39 32 2e 20 31 30 2f 31 37 2f 39 31 20  ...92. 10/17/91 
3450: 46 69 78 65 64 20 70 72 6f 62 6c 65 6d 73 20 77  Fixed problems w
3460: 69 74 68 20 62 61 63 6b 73 6c 61 73 68 20 73 65  ith backslash se
3470: 71 75 65 6e 63 65 73 3a 20 20 5c 72 20 73 75 70  quences:  \r sup
3480: 70 6f 72 74 20 77 61 73 0a 69 6e 63 6f 6d 70 6c  port was.incompl
3490: 65 74 65 20 61 6e 64 20 5c 66 20 61 6e 64 20 5c  ete and \f and \
34a0: 76 20 77 65 72 65 6e 27 74 20 73 75 70 70 6f 72  v weren't suppor
34b0: 74 65 64 20 61 74 20 61 6c 6c 2e 0a 0a 39 33 2e  ted at all...93.
34c0: 20 31 30 2f 32 34 2f 39 31 20 41 64 64 65 64 20   10/24/91 Added 
34d0: 54 63 6c 5f 49 6e 69 74 48 69 73 74 6f 72 79 20  Tcl_InitHistory 
34e0: 70 72 6f 63 65 64 75 72 65 2e 0a 0a 39 34 2e 20  procedure...94. 
34f0: 31 30 2f 32 34 2f 39 31 20 43 68 61 6e 67 65 64  10/24/91 Changed
3500: 20 22 72 65 67 65 78 70 22 20 74 6f 20 73 74 6f   "regexp" to sto
3510: 72 65 20 22 2d 31 20 2d 31 22 20 69 6e 20 73 75  re "-1 -1" in su
3520: 62 4d 61 74 63 68 56 61 72 73 20 74 68 61 74 0a  bMatchVars that.
3530: 64 6f 6e 27 74 20 6d 61 74 63 68 2c 20 72 61 74  don't match, rat
3540: 68 65 72 20 74 68 61 6e 20 72 65 74 75 72 6e 69  her than returni
3550: 6e 67 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 39 35  ng an error...95
3560: 2e 20 31 30 2f 32 37 2f 39 31 20 4d 6f 64 69 66  . 10/27/91 Modif
3570: 69 65 64 20 22 72 65 67 65 78 70 22 20 74 6f 20  ied "regexp" to 
3580: 72 65 74 75 72 6e 20 61 63 74 75 61 6c 20 73 74  return actual st
3590: 72 69 6e 67 73 20 69 6e 20 6d 61 74 63 68 56 61  rings in matchVa
35a0: 72 0a 61 6e 64 20 73 75 62 4d 61 74 63 68 56 61  r.and subMatchVa
35b0: 72 73 20 69 6e 73 74 65 61 64 20 6f 66 20 69 6e  rs instead of in
35c0: 64 69 63 65 73 2e 20 20 41 64 64 65 64 20 22 2d  dices.  Added "-
35d0: 69 6e 64 69 63 65 73 22 20 73 77 69 74 63 68 20  indices" switch 
35e0: 74 6f 20 63 61 75 73 65 0a 69 6e 64 69 63 65 73  to cause.indices
35f0: 20 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64 2e   to be returned.
3600: 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
3610: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
3620: 2a 2a 0a 0a 39 36 2e 20 31 30 2f 32 37 2f 39 31  **..96. 10/27/91
3630: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 73   Fixed bug in "s
3640: 63 61 6e 22 20 77 68 65 72 65 20 69 74 20 75 73  can" where it us
3650: 65 64 20 68 61 72 64 77 69 72 65 64 20 63 6f 6e  ed hardwired con
3660: 73 74 61 6e 74 73 20 66 6f 72 0a 73 69 7a 65 73  stants for.sizes
3670: 20 6f 66 20 66 6c 6f 61 74 73 20 61 6e 64 20 64   of floats and d
3680: 6f 75 62 6c 65 73 20 69 6e 73 74 65 61 64 20 6f  oubles instead o
3690: 66 20 75 73 69 6e 67 20 22 73 69 7a 65 6f 66 22  f using "sizeof"
36a0: 2e 0a 0a 39 37 2e 20 31 30 2f 33 31 2f 39 31 20  ...97. 10/31/91 
36b0: 46 69 78 65 64 20 62 75 67 20 69 6e 20 74 63 6c  Fixed bug in tcl
36c0: 50 61 72 73 65 2e 63 20 77 68 65 72 65 20 70 61  Parse.c where pa
36d0: 72 73 65 2d 72 65 6c 61 74 65 64 20 65 72 72 6f  rse-related erro
36e0: 72 20 6d 65 73 73 61 67 65 73 0a 77 65 72 65 6e  r messages.weren
36f0: 27 74 20 62 65 69 6e 67 20 73 74 6f 72 61 67 65  't being storage
3700: 2d 6d 61 6e 61 67 65 64 20 63 6f 72 72 65 63 74  -managed correct
3710: 6c 79 2c 20 63 61 75 73 69 6e 67 20 73 70 75 72  ly, causing spur
3720: 69 6f 75 73 20 66 72 65 65 27 73 2e 0a 0a 39 38  ious free's...98
3730: 2e 20 31 30 2f 33 31 2f 39 31 20 46 6f 72 6d 20  . 10/31/91 Form 
3740: 66 65 65 64 20 61 6e 64 20 76 65 72 74 69 63 61  feed and vertica
3750: 6c 20 74 61 62 20 63 68 61 72 61 63 74 65 72 73  l tab characters
3760: 20 61 72 65 20 6e 6f 77 20 63 6f 6e 73 69 64 65   are now conside
3770: 72 65 64 0a 74 6f 20 62 65 20 73 70 61 63 65 20  red.to be space 
3780: 63 68 61 72 61 63 74 65 72 73 20 62 79 20 74 68  characters by th
3790: 65 20 70 61 72 73 65 72 2e 0a 0a 39 39 2e 20 31  e parser...99. 1
37a0: 30 2f 33 31 2f 39 31 20 41 64 64 65 64 20 54 43  0/31/91 Added TC
37b0: 4c 5f 4c 45 41 56 45 5f 45 52 52 5f 4d 53 47 20  L_LEAVE_ERR_MSG 
37c0: 66 6c 61 67 20 74 6f 20 70 72 6f 63 65 64 75 72  flag to procedur
37d0: 65 73 20 6c 69 6b 65 20 54 63 6c 5f 53 65 74 56  es like Tcl_SetV
37e0: 61 72 2e 0a 0a 31 30 30 2e 20 31 31 2f 37 2f 39  ar...100. 11/7/9
37f0: 31 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22  1 Fixed bug in "
3800: 63 61 73 65 22 20 77 68 65 72 65 20 22 69 6e 22  case" where "in"
3810: 20 61 72 67 75 6d 65 6e 74 20 63 6f 75 6c 64 6e   argument couldn
3820: 27 74 20 62 65 20 6f 6d 69 74 74 65 64 0a 69 66  't be omitted.if
3830: 20 61 6c 6c 20 63 61 73 65 20 62 72 61 6e 63 68   all case branch
3840: 65 73 20 77 65 72 65 20 65 6d 62 65 64 64 65 64  es were embedded
3850: 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 6c 69 73   in a single lis
3860: 74 2e 0a 0a 31 30 31 2e 20 31 31 2f 37 2f 39 31  t...101. 11/7/91
3870: 20 53 77 69 74 63 68 65 64 20 74 6f 20 75 73 65   Switched to use
3880: 20 22 70 69 64 5f 74 22 20 61 6e 64 20 22 75 69   "pid_t" and "ui
3890: 64 5f 74 22 20 61 6e 64 20 6f 74 68 65 72 20 6f  d_t" and other o
38a0: 66 66 69 63 69 61 6c 0a 50 4f 53 49 43 20 74 79  fficial.POSIC ty
38b0: 70 65 73 20 61 6e 64 20 66 75 6e 63 74 69 6f 6e  pes and function
38c0: 20 70 72 6f 74 6f 74 79 70 65 73 2e 0a 0a 2d 2d   prototypes...--
38d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
38e0: 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e  Released version
38f0: 20 36 2e 31 2c 20 31 31 2f 37 2f 39 31 20 2d 2d   6.1, 11/7/91 --
3900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3910: 0a 0a 31 30 32 2e 20 31 32 2f 32 2f 39 31 20 4d  ..102. 12/2/91 M
3920: 6f 64 69 66 69 65 64 20 54 63 6c 5f 53 63 61 6e  odified Tcl_Scan
3930: 45 6c 65 6d 65 6e 74 20 61 6e 64 20 54 63 6c 5f  Element and Tcl_
3940: 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74 20 69  ConvertElement i
3950: 6e 20 73 65 76 65 72 61 6c 0a 77 61 79 73 2e 20  n several.ways. 
3960: 20 46 69 72 73 74 2c 20 61 6c 6c 6f 77 65 64 20   First, allowed 
3970: 63 61 6c 6c 65 72 20 74 6f 20 72 65 71 75 65 73  caller to reques
3980: 74 20 74 68 61 74 20 6f 6e 6c 79 20 62 61 63 6b  t that only back
3990: 73 6c 61 73 68 65 73 20 62 65 20 75 73 65 64 0a  slashes be used.
39a0: 28 6e 6f 20 62 72 61 63 65 73 29 2e 20 20 53 65  (no braces).  Se
39b0: 63 6f 6e 64 2c 20 6d 61 64 65 20 54 63 6c 5f 43  cond, made Tcl_C
39c0: 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74 20 6d 6f  onvertElement mo
39d0: 72 65 20 61 67 67 72 65 73 73 69 76 65 20 69 6e  re aggressive in
39e0: 20 75 73 69 6e 67 0a 62 61 63 6b 73 6c 61 73 68   using.backslash
39f0: 65 73 20 66 6f 72 20 62 72 61 63 65 73 20 61 6e  es for braces an
3a00: 64 20 71 75 6f 74 65 73 2e 0a 0a 31 30 33 2e 20  d quotes...103. 
3a10: 31 32 2f 35 2f 39 31 20 41 64 64 65 64 20 22 74  12/5/91 Added "t
3a20: 79 70 65 22 2c 20 22 6c 73 74 61 74 22 2c 20 61  ype", "lstat", a
3a30: 6e 64 20 22 72 65 61 64 6c 69 6e 6b 22 20 6f 70  nd "readlink" op
3a40: 74 69 6f 6e 73 20 74 6f 20 22 66 69 6c 65 22 0a  tions to "file".
3a50: 63 6f 6d 6d 61 6e 64 2c 20 70 6c 75 73 20 61 64  command, plus ad
3a60: 64 65 64 20 6e 65 77 20 22 74 79 70 65 22 20 65  ded new "type" e
3a70: 6c 65 6d 65 6e 74 20 74 6f 20 6f 75 74 70 75 74  lement to output
3a80: 20 6f 66 20 22 73 74 61 74 22 20 61 6e 64 20 22   of "stat" and "
3a90: 6c 73 74 61 74 22 0a 6f 70 74 69 6f 6e 73 2e 0a  lstat".options..
3aa0: 0a 31 30 34 2e 20 31 32 2f 31 30 2f 39 31 20 4d  .104. 12/10/91 M
3ab0: 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 68 61  anual entries ha
3ac0: 64 20 66 69 72 73 74 20 6c 69 6e 65 73 20 74 68  d first lines th
3ad0: 61 74 20 63 61 75 73 65 64 20 22 6d 61 6e 22 20  at caused "man" 
3ae0: 70 72 6f 67 72 61 6d 0a 74 6f 20 74 72 79 20 77  program.to try w
3af0: 65 69 72 64 20 70 72 65 70 72 6f 63 65 73 73 6f  eird preprocesso
3b00: 72 2e 20 20 41 64 64 65 64 20 62 6c 61 6e 6b 20  r.  Added blank 
3b10: 63 6f 6d 6d 65 6e 74 20 6c 69 6e 65 73 20 74 6f  comment lines to
3b20: 20 66 69 78 20 70 72 6f 62 6c 65 6d 2e 0a 0a 31   fix problem...1
3b30: 30 35 2e 20 31 32 2f 31 36 2f 39 31 20 46 69 78  05. 12/16/91 Fix
3b40: 65 64 20 61 20 66 65 77 20 62 75 67 73 20 69 6e  ed a few bugs in
3b50: 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 70 72   auto_mkindex pr
3b60: 6f 63 3a 20 20 77 61 73 6e 27 74 20 68 61 6e 64  oc:  wasn't hand
3b70: 6c 69 6e 67 0a 65 72 72 6f 72 73 20 70 72 6f 70  ling.errors prop
3b80: 65 72 6c 79 2c 20 61 6e 64 20 68 61 64 6e 27 74  erly, and hadn't
3b90: 20 62 65 65 6e 20 75 70 67 72 61 64 65 64 20 66   been upgraded f
3ba0: 6f 72 20 6e 65 77 20 22 72 65 67 65 78 70 22 20  or new "regexp" 
3bb0: 73 79 6e 74 61 78 2e 0a 0a 31 30 36 2e 20 31 2f  syntax...106. 1/
3bc0: 32 2f 39 32 20 46 69 78 65 64 20 62 75 67 20 69  2/92 Fixed bug i
3bd0: 6e 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64  n "file" command
3be0: 20 77 68 65 72 65 20 69 74 20 64 69 64 6e 27 74   where it didn't
3bf0: 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65   properly handle
3c00: 0a 61 20 66 69 6c 65 20 6e 61 6d 65 73 20 63 6f  .a file names co
3c10: 6e 74 61 69 6e 69 6e 67 20 74 69 6c 64 65 73 20  ntaining tildes 
3c20: 77 68 65 72 65 20 74 68 65 20 69 6e 64 69 63 61  where the indica
3c30: 74 65 64 20 75 73 65 72 20 64 6f 65 73 6e 27 74  ted user doesn't
3c40: 20 65 78 69 73 74 2e 0a 0a 31 30 37 2e 20 31 2f   exist...107. 1/
3c50: 32 2f 39 32 20 46 69 78 65 64 20 6c 6f 74 73 20  2/92 Fixed lots 
3c60: 6f 66 20 63 61 73 65 73 20 69 6e 20 74 63 6c 55  of cases in tclU
3c70: 6e 69 78 53 74 72 2e 63 20 77 68 65 72 65 20 74  nixStr.c where t
3c80: 77 6f 20 64 69 66 66 65 72 65 6e 74 0a 65 72 72  wo different.err
3c90: 6e 6f 20 73 79 6d 62 6f 6c 73 20 28 65 2e 67 2e  no symbols (e.g.
3ca0: 20 45 57 4f 55 4c 44 42 4c 4f 43 4b 20 61 6e 64   EWOULDBLOCK and
3cb0: 20 45 41 47 41 49 4e 29 20 68 61 76 65 20 74 68   EAGAIN) have th
3cc0: 65 20 73 61 6d 65 20 6e 75 6d 62 65 72 3b 20 20  e same number;  
3cd0: 54 63 6c 0a 77 69 6c 6c 20 6f 6e 6c 79 20 75 73  Tcl.will only us
3ce0: 65 20 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 0a 0a  e one of them...
3cf0: 31 30 38 2e 20 31 2f 32 2f 39 32 20 4c 6f 74 73  108. 1/2/92 Lots
3d00: 20 6f 66 20 63 68 61 6e 67 65 73 20 74 6f 20 63   of changes to c
3d10: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 63 72  onfiguration scr
3d20: 69 70 74 20 74 6f 20 68 61 6e 64 6c 65 20 6d 61  ipt to handle ma
3d30: 6e 79 20 6d 6f 72 65 0a 73 79 73 74 65 6d 73 20  ny more.systems 
3d40: 6d 6f 72 65 20 67 72 61 63 65 66 75 6c 6c 79 2e  more gracefully.
3d50: 20 20 45 2e 67 2e 20 73 68 6f 75 6c 64 20 6e 6f    E.g. should no
3d60: 77 20 64 65 74 65 63 74 20 74 68 65 20 62 6f 67  w detect the bog
3d70: 75 73 20 73 74 72 74 6f 75 6c 20 74 68 61 74 0a  us strtoul that.
3d80: 63 6f 6d 65 73 20 77 69 74 68 20 41 49 58 20 61  comes with AIX a
3d90: 6e 64 20 73 75 62 73 74 69 74 75 74 65 20 54 63  nd substitute Tc
3da0: 6c 27 73 20 6f 77 6e 20 76 65 72 73 69 6f 6e 20  l's own version 
3db0: 69 6e 73 74 65 61 64 2e 0a 0a 2d 2d 2d 2d 2d 2d  instead...------
3dc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
3dd0: 61 73 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 32  ased version 6.2
3de0: 2c 20 31 2f 31 30 2f 39 32 20 2d 2d 2d 2d 2d 2d  , 1/10/92 ------
3df0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30  ------------..10
3e00: 39 2e 20 31 2f 32 30 2f 39 32 20 43 6f 6e 66 69  9. 1/20/92 Confi
3e10: 67 20 64 69 64 6e 27 74 20 68 61 76 65 20 63 6f  g didn't have co
3e20: 64 65 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 75  de to actually u
3e30: 73 65 20 22 75 69 64 5f 74 22 20 76 61 72 69 61  se "uid_t" varia
3e40: 62 6c 65 0a 74 6f 20 73 65 74 20 54 43 4c 5f 55  ble.to set TCL_U
3e50: 49 54 5f 54 20 23 64 65 66 69 6e 65 2e 0a 0a 31  IT_T #define...1
3e60: 31 30 2e 20 32 2f 31 30 2f 39 32 20 54 63 6c 5f  10. 2/10/92 Tcl_
3e70: 45 76 61 6c 20 64 69 64 6e 27 74 20 70 72 6f 70  Eval didn't prop
3e80: 65 72 6c 79 20 72 65 73 65 74 20 22 6e 75 6d 4c  erly reset "numL
3e90: 65 76 65 6c 73 22 20 76 61 72 69 61 62 6c 65 20  evels" variable 
3ea0: 77 68 65 6e 0a 74 6f 6f 2d 64 65 65 70 20 72 65  when.too-deep re
3eb0: 63 75 72 73 69 6f 6e 20 6f 63 63 75 72 72 65 64  cursion occurred
3ec0: 2e 0a 0a 31 31 31 2e 20 32 2f 32 39 2f 39 32 20  ...111. 2/29/92 
3ed0: 41 64 64 65 64 20 22 6f 6e 22 20 61 6e 64 20 22  Added "on" and "
3ee0: 6f 66 66 22 20 74 6f 20 6b 65 79 77 6f 72 64 73  off" to keywords
3ef0: 20 61 63 63 65 70 74 65 64 20 62 79 20 54 63 6c   accepted by Tcl
3f00: 5f 47 65 74 42 6f 6f 6c 65 61 6e 2e 0a 0a 31 31  _GetBoolean...11
3f10: 32 2e 20 33 2f 31 39 2f 39 32 20 43 6f 6e 66 69  2. 3/19/92 Confi
3f20: 67 20 77 61 73 6e 27 74 20 69 6e 73 74 61 6c 6c  g wasn't install
3f30: 69 6e 67 20 64 65 66 61 75 6c 74 20 76 65 72 73  ing default vers
3f40: 69 6f 6e 20 6f 66 20 73 74 72 74 6f 64 2e 63 20  ion of strtod.c 
3f50: 66 6f 72 0a 73 79 73 74 65 6d 73 20 74 68 61 74  for.systems that
3f60: 20 64 6f 6e 27 74 20 68 61 76 65 20 6f 6e 65 20   don't have one 
3f70: 69 6e 20 6c 69 62 63 2e 61 2e 0a 0a 31 31 33 2e  in libc.a...113.
3f80: 20 33 2f 32 33 2f 39 32 20 46 69 78 65 64 20 62   3/23/92 Fixed b
3f90: 75 67 20 69 6e 20 74 63 6c 45 78 70 72 2e 63 20  ug in tclExpr.c 
3fa0: 77 68 65 72 65 20 6e 75 6d 62 65 72 73 20 77 69  where numbers wi
3fb0: 74 68 20 6c 65 61 64 69 6e 67 20 22 2e 22 73 2c  th leading "."s,
3fc0: 0a 6c 69 6b 65 20 30 2e 37 35 2c 20 63 6f 75 6c  .like 0.75, coul
3fd0: 64 6e 27 74 20 62 65 20 70 72 6f 70 65 72 6c 79  dn't be properly
3fe0: 20 73 75 62 73 74 69 74 75 74 65 64 20 69 6e 74   substituted int
3ff0: 6f 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 69  o expressions wi
4000: 74 68 0a 76 61 72 69 61 62 6c 65 20 6f 72 20 63  th.variable or c
4010: 6f 6d 6d 61 6e 64 20 73 75 62 73 74 69 74 75 74  ommand substitut
4020: 69 6f 6e 2e 0a 0a 31 31 34 2e 20 33 2f 32 35 2f  ion...114. 3/25/
4030: 39 32 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  92 Fixed bug in 
4040: 74 63 6c 55 6e 69 78 41 5a 2e 63 20 77 68 65 72  tclUnixAZ.c wher
4050: 65 20 22 67 65 74 73 22 20 63 6f 6d 6d 61 6e 64  e "gets" command
4060: 20 77 61 73 6e 27 74 0a 63 68 65 63 6b 69 6e 67   wasn't.checking
4070: 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68   to make sure th
4080: 61 74 20 69 74 20 77 61 73 20 61 62 6c 65 20 74  at it was able t
4090: 6f 20 77 72 69 74 65 20 74 68 65 20 76 61 72 69  o write the vari
40a0: 61 62 6c 65 20 4f 4b 2e 0a 0a 31 31 35 2e 20 34  able OK...115. 4
40b0: 2f 31 36 2f 39 32 20 46 69 78 65 64 20 62 75 67  /16/92 Fixed bug
40c0: 20 69 6e 20 74 63 6c 55 6e 69 78 41 5a 2e 63 20   in tclUnixAZ.c 
40d0: 77 68 65 72 65 20 22 72 65 61 64 22 20 63 6f 6d  where "read" com
40e0: 6d 61 6e 64 20 64 69 64 6e 27 74 0a 63 6f 6d 70  mand didn't.comp
40f0: 75 74 65 20 66 69 6c 65 20 73 69 7a 65 20 72 69  ute file size ri
4100: 67 68 74 20 66 6f 72 20 64 65 76 69 63 65 20 66  ght for device f
4110: 69 6c 65 73 2e 0a 0a 31 31 36 2e 20 34 2f 32 33  iles...116. 4/23
4120: 2f 39 32 20 46 69 78 65 64 20 62 75 74 20 69 6e  /92 Fixed but in
4130: 20 74 63 6c 43 6d 64 4d 5a 2e 63 20 77 68 65 72   tclCmdMZ.c wher
4140: 65 20 22 74 72 61 63 65 20 76 69 6e 66 6f 22 20  e "trace vinfo" 
4150: 77 61 73 20 6f 76 65 72 77 72 69 74 69 6e 67 0a  was overwriting.
4160: 74 68 65 20 74 72 61 63 65 20 63 6f 6d 6d 61 6e  the trace comman
4170: 64 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  d...------------
4180: 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76  ----- Released v
4190: 65 72 73 69 6f 6e 20 36 2e 33 2c 20 35 2f 31 2f  ersion 6.3, 5/1/
41a0: 39 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  92 -------------
41b0: 2d 2d 2d 2d 2d 0a 0a 31 31 37 2e 20 35 2f 31 2f  -----..117. 5/1/
41c0: 39 32 20 41 64 64 65 64 20 54 63 6c 5f 47 6c 6f  92 Added Tcl_Glo
41d0: 62 61 6c 45 76 61 6c 2e 0a 0a 31 31 38 2e 20 36  balEval...118. 6
41e0: 2f 31 2f 39 32 20 43 68 61 6e 67 65 64 20 61 75  /1/92 Changed au
41f0: 74 6f 2d 6c 6f 61 64 20 66 61 63 69 6c 69 74 79  to-load facility
4200: 20 74 6f 20 73 6f 75 72 63 65 20 66 69 6c 65 73   to source files
4210: 20 61 74 20 67 6c 6f 62 61 6c 20 6c 65 76 65 6c   at global level
4220: 2e 0a 0a 31 31 39 2e 20 36 2f 38 2f 39 32 20 54  ...119. 6/8/92 T
4230: 63 6c 5f 50 61 72 73 65 56 61 72 20 77 61 73 6e  cl_ParseVar wasn
4240: 27 74 20 61 6c 77 61 79 73 20 73 65 74 74 69 6e  't always settin
4250: 67 20 74 65 72 6d 50 74 72 20 61 66 74 65 72 20  g termPtr after 
4260: 65 72 72 6f 72 73 2c 20 77 68 69 63 68 0a 73 6f  errors, which.so
4270: 6d 65 74 69 6d 65 73 20 63 61 75 73 65 64 20 63  metimes caused c
4280: 6f 72 65 20 64 75 6d 70 73 2e 0a 0a 31 32 30 2e  ore dumps...120.
4290: 20 36 2f 32 31 2f 39 32 20 46 69 78 65 64 20 62   6/21/92 Fixed b
42a0: 75 67 20 69 6e 20 69 6e 69 74 69 61 6c 69 7a 61  ug in initializa
42b0: 74 69 6f 6e 20 6f 66 20 72 65 67 65 78 70 20 70  tion of regexp p
42c0: 61 74 74 65 72 6e 20 63 61 63 68 65 2e 20 20 54  attern cache.  T
42d0: 68 69 73 0a 62 75 67 20 63 61 75 73 65 64 20 73  his.bug caused s
42e0: 65 67 6d 65 6e 74 61 74 69 6f 6e 20 76 69 6f 6c  egmentation viol
42f0: 61 74 69 6f 6e 73 20 69 6e 20 72 65 67 65 78 70  ations in regexp
4300: 20 63 6f 6d 6d 61 6e 64 73 20 75 6e 64 65 72 20   commands under 
4310: 73 6f 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2e  some conditions.
4320: 0a 0a 31 32 31 2e 20 36 2f 32 32 2f 39 32 20 43  ..121. 6/22/92 C
4330: 68 61 6e 67 65 64 20 69 6d 70 6c 65 6d 65 6e 74  hanged implement
4340: 61 74 69 6f 6e 20 6f 66 20 22 67 6c 6f 62 22 20  ation of "glob" 
4350: 63 6f 6d 6d 61 6e 64 20 74 6f 20 65 6c 69 6d 69  command to elimi
4360: 6e 61 74 65 0a 74 72 61 69 6c 69 6e 67 20 73 6c  nate.trailing sl
4370: 61 73 68 65 73 20 6f 6e 20 64 69 72 65 63 74 6f  ashes on directo
4380: 72 79 20 6e 61 6d 65 73 3a 20 20 74 68 65 79 20  ry names:  they 
4390: 63 6f 6e 66 75 73 65 20 73 6f 6d 65 20 73 79 73  confuse some sys
43a0: 74 65 6d 73 2e 20 20 54 68 65 72 65 0a 73 68 6f  tems.  There.sho
43b0: 75 6c 64 6e 27 74 20 62 65 20 61 6e 79 20 75 73  uldn't be any us
43c0: 65 72 2d 76 69 73 69 62 6c 65 20 63 68 61 6e 67  er-visible chang
43d0: 65 73 20 69 6e 20 66 75 6e 63 74 69 6f 6e 61 6c  es in functional
43e0: 69 74 79 20 65 78 63 65 70 74 20 66 6f 72 20 6e  ity except for n
43f0: 61 6d 65 73 0a 69 6e 20 65 72 72 6f 72 20 6d 65  ames.in error me
4400: 73 73 61 67 65 73 20 6e 6f 74 20 68 61 76 69 6e  ssages not havin
4410: 67 20 74 72 61 69 6c 69 6e 67 20 73 6c 61 73 68  g trailing slash
4420: 65 73 2e 0a 0a 31 32 32 2e 20 37 2f 32 2f 39 32  es...122. 7/2/92
4430: 20 46 69 78 65 64 20 62 75 67 20 74 68 61 74 20   Fixed bug that 
4440: 63 61 75 73 65 64 20 27 73 74 72 69 6e 67 20 6d  caused 'string m
4450: 61 74 63 68 20 2a 2a 20 22 22 27 20 74 6f 20 72  atch ** ""' to r
4460: 65 74 75 72 6e 20 30 2e 0a 0a 31 32 33 2e 20 37  eturn 0...123. 7
4470: 2f 32 2f 39 32 20 46 69 78 65 64 20 62 75 67 20  /2/92 Fixed bug 
4480: 69 6e 20 54 63 6c 5f 43 72 65 61 74 65 43 6d 64  in Tcl_CreateCmd
4490: 42 75 66 20 77 68 65 72 65 20 69 74 20 77 61 73  Buf where it was
44a0: 6e 27 74 20 69 6e 69 74 69 61 6c 69 7a 69 6e 67  n't initializing
44b0: 0a 74 68 65 20 62 75 66 66 65 72 20 74 6f 20 61  .the buffer to a
44c0: 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a  n empty string..
44d0: 0a 31 32 34 2e 20 37 2f 36 2f 39 32 20 46 69 78  .124. 7/6/92 Fix
44e0: 65 64 20 62 75 67 20 69 6e 20 22 63 61 73 65 22  ed bug in "case"
44f0: 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72 65 20 69   command where i
4500: 74 20 75 73 65 64 20 4e 55 4c 4c 20 70 61 74 74  t used NULL patt
4510: 65 72 6e 20 73 74 72 69 6e 67 0a 61 66 74 65 72  ern string.after
4520: 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20 22   errors in the "
4530: 64 65 66 61 75 6c 74 22 20 63 6c 61 75 73 65 2e  default" clause.
4540: 0a 0a 31 32 35 2e 20 37 2f 32 35 2f 39 32 20 53  ..125. 7/25/92 S
4550: 70 65 65 64 65 64 20 75 70 20 61 75 74 6f 5f 6c  peeded up auto_l
4560: 6f 61 64 20 70 72 6f 63 65 64 75 72 65 3a 20 20  oad procedure:  
4570: 64 6f 6e 27 74 20 72 65 72 65 61 64 20 61 6c 6c  don't reread all
4580: 20 74 68 65 20 69 6e 64 65 78 0a 66 69 6c 65 73   the index.files
4590: 20 75 6e 6c 65 73 73 20 74 68 65 20 70 61 74 68   unless the path
45a0: 20 68 61 73 20 63 68 61 6e 67 65 64 2e 0a 0a 31   has changed...1
45b0: 32 36 2e 20 38 2f 33 2f 39 32 20 43 68 61 6e 67  26. 8/3/92 Chang
45c0: 65 64 20 74 63 6c 55 6e 69 78 2e 68 20 74 6f 20  ed tclUnix.h to 
45d0: 64 65 66 69 6e 65 20 4d 41 58 50 41 54 48 4c 45  define MAXPATHLE
45e0: 4e 20 66 72 6f 6d 20 50 41 54 48 5f 4d 41 58 2c  N from PATH_MAX,
45f0: 20 6e 6f 74 0a 5f 50 4f 53 49 58 5f 50 41 54 48   not._POSIX_PATH
4600: 5f 4d 41 58 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  _MAX...---------
4610: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
4620: 64 20 76 65 72 73 69 6f 6e 20 36 2e 34 2c 20 38  d version 6.4, 8
4630: 2f 37 2f 39 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /7/92 ----------
4640: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 32 37 2e 20 38  --------..127. 8
4650: 2f 31 30 2f 39 32 20 43 68 61 6e 67 65 64 20 74  /10/92 Changed t
4660: 63 6c 42 61 73 69 63 2e 63 20 73 6f 20 74 68 61  clBasic.c so tha
4670: 74 20 63 6f 6d 6d 65 6e 74 20 6c 69 6e 65 73 20  t comment lines 
4680: 63 61 6e 20 62 65 20 63 6f 6e 74 69 6e 75 65 64  can be continued
4690: 20 62 79 0a 70 75 74 74 69 6e 67 20 61 20 62 61   by.putting a ba
46a0: 63 6b 73 6c 61 73 68 20 62 65 66 6f 72 65 20 74  ckslash before t
46b0: 68 65 20 6e 65 77 6c 69 6e 65 2e 0a 0a 31 32 38  he newline...128
46c0: 2e 20 38 2f 32 31 2f 39 32 20 4d 6f 64 69 66 69  . 8/21/92 Modifi
46d0: 65 64 20 22 75 6e 6b 6e 6f 77 6e 22 20 74 6f 20  ed "unknown" to 
46e0: 61 6c 6c 6f 77 20 74 68 65 20 73 6f 75 72 63 65  allow the source
46f0: 2d 69 6e 67 20 6f 66 20 61 20 66 69 6c 65 20 66  -ing of a file f
4700: 6f 72 0a 61 6e 20 61 75 74 6f 2d 6c 6f 61 64 20  or.an auto-load 
4710: 74 6f 20 74 72 69 67 67 65 72 20 6f 74 68 65 72  to trigger other
4720: 20 6e 65 73 74 65 64 20 61 75 74 6f 2d 6c 6f 61   nested auto-loa
4730: 64 73 2c 20 61 73 20 6c 6f 6e 67 20 61 73 20 74  ds, as long as t
4740: 68 65 72 65 20 69 73 6e 27 74 0a 61 6e 79 20 72  here isn't.any r
4750: 65 63 75 72 73 69 6f 6e 20 6f 6e 20 74 68 65 20  ecursion on the 
4760: 73 61 6d 65 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d  same command nam
4770: 65 2e 0a 0a 31 32 39 2e 20 38 2f 32 35 2f 39 32  e...129. 8/25/92
4780: 20 4d 6f 64 69 66 69 65 64 20 22 66 6f 72 6d 61   Modified "forma
4790: 74 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c  t" command to al
47a0: 6c 6f 77 20 22 20 22 20 61 6e 64 20 22 2b 22 20  low " " and "+" 
47b0: 66 6c 61 67 73 2c 20 61 6e 64 0a 61 6c 6c 6f 77  flags, and.allow
47c0: 20 66 6c 61 67 73 20 69 6e 20 61 6e 79 20 6f 72   flags in any or
47d0: 64 65 72 2e 0a 0a 31 33 30 2e 20 39 2f 31 34 2f  der...130. 9/14/
47e0: 39 32 20 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f  92 Modified Tcl_
47f0: 50 61 72 73 65 56 61 72 20 73 6f 20 74 68 61 74  ParseVar so that
4800: 20 69 74 20 64 6f 65 73 6e 27 74 20 61 63 74 75   it doesn't actu
4810: 61 6c 6c 79 20 61 74 74 65 6d 70 74 0a 74 6f 20  ally attempt.to 
4820: 6c 6f 6f 6b 20 75 70 20 74 68 65 20 76 61 72 69  look up the vari
4830: 61 62 6c 65 20 69 66 20 22 6e 6f 45 76 61 6c 22  able if "noEval"
4840: 20 6d 6f 64 65 20 69 73 20 69 6e 20 65 66 66 65   mode is in effe
4850: 63 74 20 69 6e 20 74 68 65 20 69 6e 74 65 72 70  ct in the interp
4860: 72 65 74 65 72 0a 28 69 74 20 6a 75 73 74 20 70  reter.(it just p
4870: 61 72 73 65 73 20 74 68 65 20 6e 61 6d 65 29 2e  arses the name).
4880: 20 20 54 68 69 73 20 61 76 6f 69 64 73 20 74 68    This avoids th
4890: 65 20 65 72 72 6f 72 73 20 74 68 61 74 20 75 73  e errors that us
48a0: 65 64 20 74 6f 20 6f 63 63 75 72 0a 69 6e 20 73  ed to occur.in s
48b0: 74 61 74 65 6d 65 6e 74 73 20 6c 69 6b 65 20 22  tatements like "
48c0: 65 78 70 72 20 7b 5b 69 6e 66 6f 20 65 78 69 73  expr {[info exis
48d0: 74 73 20 66 6f 6f 5d 20 26 26 20 24 66 6f 6f 7d  ts foo] && $foo}
48e0: 22 2e 0a 0a 31 33 31 2e 20 39 2f 31 34 2f 39 32  "...131. 9/14/92
48f0: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 75   Fixed bug in "u
4900: 70 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 20  plevel" command 
4910: 77 68 65 72 65 20 69 74 20 64 69 64 6e 27 74 20  where it didn't 
4920: 6f 75 74 70 75 74 20 74 68 65 0a 63 6f 72 72 65  output the.corre
4930: 63 74 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65  ct error message
4940: 20 69 66 20 61 20 6c 65 76 65 6c 20 77 61 73 20   if a level was 
4950: 73 70 65 63 69 66 69 65 64 20 62 75 74 20 6e 6f  specified but no
4960: 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 33 32 2e 20   command...132. 
4970: 39 2f 31 34 2f 39 32 20 52 65 6e 61 6d 65 64 20  9/14/92 Renamed 
4980: 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 74  manual entries t
4990: 6f 20 68 61 76 65 20 65 78 74 65 6e 73 69 6f 6e  o have extension
49a0: 73 20 6c 69 6b 65 20 2e 33 20 61 6e 64 20 2e 6e  s like .3 and .n
49b0: 2c 0a 61 6e 64 20 61 64 64 65 64 20 22 69 6e 73  ,.and added "ins
49c0: 74 61 6c 6c 22 20 74 61 72 67 65 74 20 74 6f 20  tall" target to 
49d0: 4d 61 6b 65 66 69 6c 65 2e 0a 0a 31 33 33 2e 20  Makefile...133. 
49e0: 39 2f 31 38 2f 39 32 20 4d 6f 64 69 66 69 65 64  9/18/92 Modified
49f0: 20 22 75 6e 6b 6e 6f 77 6e 22 20 63 6f 6d 6d 61   "unknown" comma
4a00: 6e 64 20 74 6f 20 65 6d 75 6c 61 74 65 20 21 21  nd to emulate !!
4a10: 2c 20 21 3c 6e 75 6d 3e 2c 20 61 6e 64 0a 5e 3c  , !<num>, and.^<
4a20: 6f 6c 64 3e 5e 3c 6e 65 77 3e 20 63 73 68 20 68  old>^<new> csh h
4a30: 69 73 74 6f 72 79 20 73 75 62 73 74 69 74 75 74  istory substitut
4a40: 69 6f 6e 73 2e 0a 0a 31 33 34 2e 20 39 2f 32 31  ions...134. 9/21
4a50: 2f 39 32 20 4d 61 64 65 20 74 68 65 20 63 6f 6e  /92 Made the con
4a60: 66 69 67 20 73 63 72 69 70 74 20 63 6c 65 76 65  fig script cleve
4a70: 72 65 72 20 61 62 6f 75 74 20 66 69 67 75 72 69  rer about figuri
4a80: 6e 67 20 6f 75 74 20 77 68 69 63 68 0a 73 77 69  ng out which.swi
4a90: 74 63 68 65 73 20 74 6f 20 70 61 73 73 20 74 6f  tches to pass to
4aa0: 20 22 6e 6d 22 2e 0a 0a 31 33 35 2e 20 39 2f 32   "nm"...135. 9/2
4ab0: 33 2f 39 32 20 46 69 78 65 64 20 74 63 6c 56 61  3/92 Fixed tclVa
4ac0: 72 2e 63 20 74 6f 20 62 65 20 73 75 72 65 20 74  r.c to be sure t
4ad0: 6f 20 63 6f 70 79 20 66 6c 61 67 73 20 77 68 65  o copy flags whe
4ae0: 6e 20 67 72 6f 77 69 6e 67 20 76 61 72 69 61 62  n growing variab
4af0: 6c 65 73 2e 0a 55 73 65 64 20 74 6f 20 66 6f 72  les..Used to for
4b00: 67 65 74 20 61 62 6f 75 74 20 74 72 61 63 65 73  get about traces
4b10: 20 69 6e 20 70 72 6f 67 72 65 73 73 20 61 6e 64   in progress and
4b20: 20 6d 61 6b 65 20 65 78 74 72 61 20 72 65 63 75   make extra recu
4b30: 72 73 69 76 65 20 63 61 6c 6c 73 0a 6f 6e 20 74  rsive calls.on t
4b40: 72 61 63 65 20 70 72 6f 63 73 2e 0a 0a 31 33 36  race procs...136
4b50: 2e 20 39 2f 32 38 2f 39 32 20 46 69 78 65 64 20  . 9/28/92 Fixed 
4b60: 62 75 67 20 69 6e 20 61 75 74 6f 5f 72 65 73 65  bug in auto_rese
4b70: 74 20 77 68 65 72 65 20 69 74 20 77 61 73 20 75  t where it was u
4b80: 6e 73 65 74 74 69 6e 67 20 76 61 72 69 61 62 6c  nsetting variabl
4b90: 65 73 0a 74 68 61 74 20 6d 69 67 68 74 20 6e 6f  es.that might no
4ba0: 74 20 65 78 69 73 74 2e 0a 0a 31 33 37 2e 20 31  t exist...137. 1
4bb0: 30 2f 37 2f 39 32 20 43 68 61 6e 67 65 64 20 22  0/7/92 Changed "
4bc0: 70 61 72 72 61 79 22 20 6c 69 62 72 61 72 79 20  parray" library 
4bd0: 70 72 6f 63 65 64 75 72 65 20 74 6f 20 70 72 69  procedure to pri
4be0: 6e 74 20 61 6e 79 20 61 72 72 61 79 0a 61 63 63  nt any array.acc
4bf0: 65 73 73 69 62 6c 65 20 74 6f 20 63 61 6c 6c 65  essible to calle
4c00: 72 2c 20 6c 6f 63 61 6c 20 6f 72 20 67 6c 6f 62  r, local or glob
4c10: 61 6c 2e 0a 0a 31 33 38 2e 20 31 30 2f 31 35 2f  al...138. 10/15/
4c20: 39 32 20 46 69 78 65 64 20 62 75 67 20 77 68 65  92 Fixed bug whe
4c30: 72 65 20 70 72 6f 70 61 67 61 74 69 6f 6e 20 6f  re propagation o
4c40: 66 20 6e 65 77 20 65 6e 76 69 72 6f 6e 6d 65 6e  f new environmen
4c50: 74 20 76 61 72 69 61 62 6c 65 0a 76 61 6c 75 65  t variable.value
4c60: 73 20 61 6d 6f 6e 67 20 69 6e 74 65 72 70 72 65  s among interpre
4c70: 74 65 72 73 20 74 6f 6f 6b 20 4e 21 20 74 69 6d  ters took N! tim
4c80: 65 20 69 66 20 74 68 65 72 65 20 65 78 69 73 74  e if there exist
4c90: 20 4e 20 69 6e 74 65 72 70 72 65 74 65 72 73 2e   N interpreters.
4ca0: 0a 0a 31 33 39 2e 20 31 30 2f 31 36 2f 39 32 20  ..139. 10/16/92 
4cb0: 43 68 61 6e 67 65 64 20 61 75 74 6f 5f 72 65 73  Changed auto_res
4cc0: 65 74 20 70 72 6f 63 65 64 75 72 65 20 73 6f 20  et procedure so 
4cd0: 74 68 61 74 20 69 74 20 61 6c 73 6f 20 64 65 6c  that it also del
4ce0: 65 74 65 73 20 61 6e 79 0a 65 78 69 73 74 69 6e  etes any.existin
4cf0: 67 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61  g procedures tha
4d00: 74 20 61 72 65 20 69 6e 20 74 68 65 20 61 75 74  t are in the aut
4d10: 6f 5f 6c 6f 61 64 20 69 6e 64 65 78 20 28 74 68  o_load index (th
4d20: 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 69 73 0a  e assumption is.
4d30: 74 68 61 74 20 74 68 65 79 20 73 68 6f 75 6c 64  that they should
4d40: 20 62 65 20 72 65 2d 6c 6f 61 64 65 64 20 74 6f   be re-loaded to
4d50: 20 67 65 74 20 74 68 65 20 6c 61 74 65 73 74 20   get the latest 
4d60: 76 65 72 73 69 6f 6e 73 29 2e 0a 0a 31 34 30 2e  versions)...140.
4d70: 20 31 30 2f 32 31 2f 39 32 20 46 69 78 65 64 20   10/21/92 Fixed 
4d80: 62 75 67 20 74 68 61 74 20 63 61 75 73 65 64 20  bug that caused 
4d90: 6c 69 73 74 73 20 74 6f 20 62 65 20 69 6e 63 6f  lists to be inco
4da0: 72 72 65 63 74 6c 79 20 67 65 6e 65 72 61 74 65  rrectly generate
4db0: 64 0a 66 6f 72 20 65 6c 65 6d 65 6e 74 73 20 74  d.for elements t
4dc0: 68 61 74 20 63 6f 6e 74 61 69 6e 65 64 20 62 61  hat contained ba
4dd0: 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20  ckslash-newline 
4de0: 73 65 71 75 65 6e 63 65 73 2e 0a 0a 31 34 31 2e  sequences...141.
4df0: 20 31 32 2f 39 2f 39 32 20 41 64 64 65 64 20 73   12/9/92 Added s
4e00: 75 70 70 6f 72 74 20 66 6f 72 20 54 43 4c 5f 4c  upport for TCL_L
4e10: 49 42 52 41 52 59 20 65 6e 76 69 72 6f 6e 6d 65  IBRARY environme
4e20: 6e 74 20 76 61 72 69 61 62 6c 65 3a 20 20 75 73  nt variable:  us
4e30: 65 0a 69 74 20 61 73 20 6c 69 62 72 61 72 79 20  e.it as library 
4e40: 6c 6f 63 61 74 69 6f 6e 20 69 66 20 69 74 27 73  location if it's
4e50: 20 70 72 65 73 65 6e 74 2e 0a 0a 31 34 32 2e 20   present...142. 
4e60: 31 32 2f 39 2f 39 32 20 41 64 64 65 64 20 22 69  12/9/92 Added "i
4e70: 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 22 20 63 6f  nfo complete" co
4e80: 6d 6d 61 6e 64 2c 20 54 63 6c 5f 43 6f 6d 6d 61  mmand, Tcl_Comma
4e90: 6e 64 43 6f 6d 70 6c 65 74 65 20 70 72 6f 63 65  ndComplete proce
4ea0: 64 75 72 65 2e 0a 0a 31 34 33 2e 20 31 32 2f 31  dure...143. 12/1
4eb0: 36 2f 39 32 20 43 68 61 6e 67 65 64 20 74 68 65  6/92 Changed the
4ec0: 20 4d 61 6b 65 66 69 6c 65 20 74 6f 20 63 68 65   Makefile to che
4ed0: 63 6b 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20  ck to make sure 
4ee0: 22 63 6f 6e 66 69 67 22 20 68 61 73 20 62 65 65  "config" has bee
4ef0: 6e 0a 72 75 6e 20 28 63 61 6e 27 74 20 72 75 6e  n.run (can't run
4f00: 20 63 6f 6e 66 69 67 20 64 69 72 65 63 74 6c 79   config directly
4f10: 20 66 72 6f 6d 20 74 68 65 20 4d 61 6b 65 66 69   from the Makefi
4f20: 6c 65 20 62 65 63 61 75 73 65 20 69 74 20 6d 6f  le because it mo
4f30: 64 69 66 69 65 73 20 74 68 65 0a 4d 61 6b 65 66  difies the.Makef
4f40: 69 6c 65 3b 20 20 74 68 75 73 20 6d 61 6b 65 20  ile;  thus make 
4f50: 68 61 73 20 74 6f 20 62 65 20 72 75 6e 20 61 67  has to be run ag
4f60: 61 69 6e 20 61 66 74 65 72 20 72 75 6e 6e 69 6e  ain after runnin
4f70: 67 20 63 6f 6e 66 69 67 29 2e 0a 0a 2d 2d 2d 2d  g config)...----
4f80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
4f90: 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20 36  leased version 6
4fa0: 2e 35 2c 20 31 32 2f 31 37 2f 39 32 20 2d 2d 2d  .5, 12/17/92 ---
4fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
4fc0: 0a 31 34 34 2e 20 31 32 2f 32 31 2f 39 32 20 43  .144. 12/21/92 C
4fd0: 68 61 6e 67 65 64 20 63 6f 6e 66 69 67 20 74 6f  hanged config to
4fe0: 20 6c 6f 6f 6b 20 69 6e 20 73 65 76 65 72 61 6c   look in several
4ff0: 20 70 6c 61 63 65 73 20 66 6f 72 20 6c 69 62 63   places for libc
5000: 20 66 69 6c 65 2e 0a 0a 31 34 35 2e 20 31 32 2f   file...145. 12/
5010: 32 33 2f 39 32 20 41 64 64 65 64 20 22 65 6c 73  23/92 Added "els
5020: 65 69 66 22 20 73 75 70 70 6f 72 74 20 74 6f 20  eif" support to 
5030: 69 66 2e 20 20 41 6c 73 6f 2c 20 22 74 68 65 6e  if.  Also, "then
5040: 22 2c 20 22 65 6c 73 65 22 2c 20 61 6e 64 0a 22  ", "else", and."
5050: 65 6c 73 65 69 66 22 20 6d 61 79 20 6e 6f 20 6c  elseif" may no l
5060: 6f 6e 67 65 72 20 62 65 20 61 62 62 72 65 76 69  onger be abbrevi
5070: 61 74 65 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  ated..*** POTENT
5080: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
5090: 49 54 59 20 2a 2a 2a 0a 0a 31 34 36 2e 20 31 32  ITY ***..146. 12
50a0: 2f 32 38 2f 39 32 20 43 68 61 6e 67 65 64 20 22  /28/92 Changed "
50b0: 70 75 74 73 22 20 61 6e 64 20 22 72 65 61 64 22  puts" and "read"
50c0: 20 74 6f 20 73 75 70 70 6f 72 74 20 69 6e 69 74   to support init
50d0: 69 61 6c 20 22 2d 6e 6f 6e 65 77 6c 69 6e 65 22  ial "-nonewline"
50e0: 0a 73 77 69 74 63 68 20 69 6e 73 74 65 61 64 20  .switch instead 
50f0: 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 22 6e  of additional "n
5100: 6f 6e 65 77 6c 69 6e 65 22 20 61 72 67 75 6d 65  onewline" argume
5110: 6e 74 2e 20 20 54 68 65 20 6f 6c 64 20 66 6f 72  nt.  The old for
5120: 6d 20 69 73 0a 73 74 69 6c 6c 20 73 75 70 70 6f  m is.still suppo
5130: 72 74 65 64 2c 20 62 75 74 20 69 74 20 69 73 20  rted, but it is 
5140: 64 69 73 63 6f 75 72 61 67 65 64 20 61 6e 64 20  discouraged and 
5150: 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 64 6f 63  is no longer doc
5160: 75 6d 65 6e 74 65 64 2e 0a 41 6c 73 6f 20 63 68  umented..Also ch
5170: 61 6e 67 65 64 20 22 70 75 74 73 22 20 74 6f 20  anged "puts" to 
5180: 6d 61 6b 65 20 74 68 65 20 66 69 6c 65 20 61 72  make the file ar
5190: 67 75 6d 65 6e 74 20 64 65 66 61 75 6c 74 20 74  gument default t
51a0: 6f 20 73 74 64 6f 75 74 3a 20 65 2e 67 2e 0a 22  o stdout: e.g.."
51b0: 70 75 74 73 20 66 6f 6f 22 20 77 69 6c 6c 20 70  puts foo" will p
51c0: 72 69 6e 74 20 66 6f 6f 20 6f 6e 20 73 74 61 6e  rint foo on stan
51d0: 64 61 72 64 20 6f 75 74 70 75 74 2e 0a 0a 31 34  dard output...14
51e0: 37 2e 20 31 2f 36 2f 39 33 20 46 69 78 65 64 20  7. 1/6/93 Fixed 
51f0: 62 75 67 20 77 68 65 72 65 62 79 20 62 61 63 6b  bug whereby back
5200: 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20 77 61  slash-newline wa
5210: 73 6e 27 74 20 77 6f 72 6b 69 6e 67 20 77 68 65  sn't working whe
5220: 6e 0a 74 79 70 65 64 20 69 6e 74 65 72 61 63 74  n.typed interact
5230: 69 76 65 6c 79 2c 20 6f 72 20 69 6e 20 22 69 6e  ively, or in "in
5240: 66 6f 20 63 6f 6d 70 6c 65 74 65 22 2e 0a 0a 31  fo complete"...1
5250: 34 38 2e 20 31 2f 32 32 2f 39 33 20 46 69 78 65  48. 1/22/93 Fixe
5260: 64 20 62 75 67 73 20 69 6e 20 22 6c 72 65 70 6c  d bugs in "lrepl
5270: 61 63 65 22 20 61 6e 64 20 22 6c 69 6e 73 65 72  ace" and "linser
5280: 74 22 20 77 68 65 72 65 20 63 6c 6f 73 65 0a 71  t" where close.q
5290: 75 6f 74 65 73 20 77 65 72 65 20 62 65 69 6e 67  uotes were being
52a0: 20 6c 6f 73 74 20 66 72 6f 6d 20 6c 61 73 74 20   lost from last 
52b0: 65 6c 65 6d 65 6e 74 20 62 65 66 6f 72 65 20 72  element before r
52c0: 65 70 6c 61 63 65 6d 65 6e 74 20 6f 72 0a 69 6e  eplacement or.in
52d0: 73 65 72 74 69 6f 6e 2e 0a 0a 31 34 39 2e 20 31  sertion...149. 1
52e0: 2f 32 39 2f 39 33 20 46 69 78 65 64 20 62 75 67  /29/93 Fixed bug
52f0: 20 69 6e 20 54 63 6c 5f 41 73 73 65 6d 62 6c 65   in Tcl_Assemble
5300: 43 6d 64 20 77 68 65 72 65 20 69 74 20 77 61 73  Cmd where it was
5310: 6e 27 74 20 72 65 71 75 69 72 69 6e 67 0a 61 20  n't requiring.a 
5320: 6e 65 77 6c 69 6e 65 20 61 74 20 74 68 65 20 65  newline at the e
5330: 6e 64 20 6f 66 20 61 20 6c 69 6e 65 20 62 65 66  nd of a line bef
5340: 6f 72 65 20 63 6f 6e 73 69 64 65 72 69 6e 67 20  ore considering 
5350: 61 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 0a  a command to be.
5360: 63 6f 6d 70 6c 65 74 65 2e 20 20 54 68 65 20 62  complete.  The b
5370: 75 67 20 63 61 75 73 65 64 20 73 6f 6d 65 20 76  ug caused some v
5380: 65 72 79 20 6c 6f 6e 67 20 6c 69 6e 65 73 20 69  ery long lines i
5390: 6e 20 73 63 72 69 70 74 20 66 69 6c 65 73 20 74  n script files t
53a0: 6f 0a 62 65 20 70 72 6f 63 65 73 73 65 64 20 61  o.be processed a
53b0: 73 20 6d 75 6c 74 69 70 6c 65 20 73 65 70 61 72  s multiple separ
53c0: 61 74 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 31  ate commands...1
53d0: 35 30 2e 20 31 2f 32 39 2f 39 33 20 56 61 72 69  50. 1/29/93 Vari
53e0: 6f 75 73 20 63 68 61 6e 67 65 73 20 69 6e 20 4d  ous changes in M
53f0: 61 6b 65 66 69 6c 65 20 74 6f 20 61 64 64 20 6d  akefile to add m
5400: 6f 72 65 20 63 6f 6e 66 69 67 75 72 61 74 69 6f  ore configuratio
5410: 6e 0a 6f 70 74 69 6f 6e 73 2c 20 73 69 6d 70 6c  n.options, simpl
5420: 69 66 79 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e  ify installation
5430: 2c 20 66 69 78 20 62 75 67 73 20 28 65 2e 67 2e  , fix bugs (e.g.
5440: 20 64 6f 6e 27 74 20 75 73 65 20 2d 66 20 73 77   don't use -f sw
5450: 69 74 63 68 0a 66 6f 72 20 63 70 29 2c 20 65 74  itch.for cp), et
5460: 63 2e 0a 0a 31 35 31 2e 20 31 2f 32 39 2f 39 33  c...151. 1/29/93
5470: 20 43 68 61 6e 67 65 64 20 22 6e 61 6d 65 31 22   Changed "name1"
5480: 20 61 6e 64 20 22 6e 61 6d 65 32 22 20 69 64 65   and "name2" ide
5490: 6e 74 69 66 69 65 72 73 20 74 6f 20 22 70 61 72  ntifiers to "par
54a0: 74 31 22 20 61 6e 64 0a 22 70 61 72 74 32 22 20  t1" and."part2" 
54b0: 74 6f 20 61 76 6f 69 64 20 6e 61 6d 65 20 63 6f  to avoid name co
54c0: 6e 66 6c 69 63 74 73 20 77 69 74 68 20 73 74 75  nflicts with stu
54d0: 70 69 64 20 43 2b 2b 20 69 6d 70 6c 65 6d 65 6e  pid C++ implemen
54e0: 74 61 74 69 6f 6e 73 20 74 68 61 74 0a 75 73 65  tations that.use
54f0: 20 22 6e 61 6d 65 31 22 20 61 6e 64 20 22 6e 61   "name1" and "na
5500: 6d 65 32 22 20 69 6e 20 61 20 72 65 73 65 72 76  me2" in a reserv
5510: 65 64 20 77 61 79 2e 0a 0a 31 35 32 2e 20 32 2f  ed way...152. 2/
5520: 31 2f 39 33 20 41 64 64 65 64 20 22 70 75 74 65  1/93 Added "pute
5530: 6e 76 22 20 70 72 6f 63 65 64 75 72 65 20 74 6f  nv" procedure to
5540: 20 72 65 70 6c 61 63 65 20 74 68 65 20 73 74 61   replace the sta
5550: 6e 64 61 72 64 20 73 79 73 74 65 6d 0a 76 65 72  ndard system.ver
5560: 73 69 6f 6e 20 73 6f 20 74 68 61 74 20 69 74 20  sion so that it 
5570: 77 69 6c 6c 20 77 6f 72 6b 20 63 6f 72 72 65 63  will work correc
5580: 74 6c 79 20 77 69 74 68 20 54 63 6c 27 73 20 65  tly with Tcl's e
5590: 6e 76 69 72 6f 6e 6d 65 6e 74 20 68 61 6e 64 6c  nvironment handl
55a0: 69 6e 67 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ing...----------
55b0: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
55c0: 20 76 65 72 73 69 6f 6e 20 36 2e 36 2c 20 32 2f   version 6.6, 2/
55d0: 35 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  5/93 -----------
55e0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 35 33 2e 20 32 2f  -------..153. 2/
55f0: 31 30 2f 39 33 20 46 69 78 65 64 20 62 75 67 73  10/93 Fixed bugs
5600: 20 69 6e 20 63 6f 6e 66 69 67 20 73 63 72 69 70   in config scrip
5610: 74 3a 20 20 6d 69 73 73 69 6e 67 20 22 65 6e 64  t:  missing "end
5620: 69 66 22 20 69 6e 20 6c 69 62 63 20 6c 6f 6f 70  if" in libc loop
5630: 2c 0a 61 6e 64 20 74 72 69 65 64 20 74 6f 20 75  ,.and tried to u
5640: 73 65 20 73 74 72 6e 63 61 73 65 63 6d 70 2e 63  se strncasecmp.c
5650: 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74 72 63   instead of strc
5660: 61 73 65 63 6d 70 2e 63 2e 0a 0a 31 35 34 2e 20  asecmp.c...154. 
5670: 32 2f 31 30 2f 39 33 20 4d 61 6b 65 66 69 6c 65  2/10/93 Makefile
5680: 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 3a 20 20   improvements:  
5690: 61 64 64 65 64 20 52 41 4e 4c 49 42 20 76 61 72  added RANLIB var
56a0: 69 61 62 6c 65 20 66 6f 72 20 65 61 73 69 65 72  iable for easier
56b0: 0a 53 79 73 2d 56 20 63 6f 6e 66 69 67 75 72 61  .Sys-V configura
56c0: 74 69 6f 6e 2c 20 61 64 64 65 64 20 53 48 45 4c  tion, added SHEL
56d0: 4c 20 76 61 72 69 61 62 6c 65 20 66 6f 72 20 53  L variable for S
56e0: 47 49 20 73 79 73 74 65 6d 73 2e 0a 0a 2d 2d 2d  GI systems...---
56f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
5700: 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20  eleased version 
5710: 36 2e 37 2c 20 32 2f 31 31 2f 39 33 20 2d 2d 2d  6.7, 2/11/93 ---
5720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
5730: 0a 31 35 33 2e 20 32 2f 36 2f 39 33 20 43 68 61  .153. 2/6/93 Cha
5740: 6e 67 65 73 20 69 6e 20 62 61 63 6b 73 6c 61 73  nges in backslas
5750: 68 20 70 72 6f 63 65 73 73 69 6e 67 3a 0a 20 20  h processing:.  
5760: 20 20 2d 20 5c 43 78 2c 20 5c 4d 78 2c 20 5c 43    - \Cx, \Mx, \C
5770: 4d 78 2c 20 5c 65 20 73 65 71 75 65 6e 63 65 73  Mx, \e sequences
5780: 20 6e 6f 20 6c 6f 6e 67 65 72 20 73 70 65 63 69   no longer speci
5790: 61 6c 0a 20 20 20 20 2d 20 5c 3c 6e 65 77 6c 69  al.    - \<newli
57a0: 6e 65 3e 20 61 6c 73 6f 20 65 61 74 73 20 75 70  ne> also eats up
57b0: 20 61 6e 79 20 73 70 61 63 65 20 61 66 74 65 72   any space after
57c0: 20 74 68 65 20 6e 65 77 6c 69 6e 65 2c 20 72 65   the newline, re
57d0: 70 6c 61 63 69 6e 67 0a 20 20 20 20 20 20 74 68  placing.      th
57e0: 65 20 77 68 6f 6c 65 20 73 65 71 75 65 6e 63 65  e whole sequence
57f0: 20 77 69 74 68 20 61 20 73 69 6e 67 6c 65 20 73   with a single s
5800: 70 61 63 65 20 63 68 61 72 61 63 74 65 72 0a 20  pace character. 
5810: 20 20 20 2d 20 48 65 78 20 73 65 71 75 65 6e 63     - Hex sequenc
5820: 65 73 20 6c 69 6b 65 20 5c 78 32 34 20 61 72 65  es like \x24 are
5830: 20 6e 6f 77 20 73 75 70 70 6f 72 74 65 64 2c 20   now supported, 
5840: 61 6c 6f 6e 67 20 77 69 74 68 20 41 4e 53 49 20  along with ANSI 
5850: 43 27 73 20 5c 61 2e 0a 20 20 20 20 2d 20 22 66  C's \a..    - "f
5860: 6f 72 6d 61 74 22 20 6e 6f 20 6c 6f 6e 67 65 72  ormat" no longer
5870: 20 64 6f 65 73 20 62 61 63 6b 73 6c 61 73 68 20   does backslash 
5880: 70 72 6f 63 65 73 73 69 6e 67 20 6f 6e 20 69 74  processing on it
5890: 73 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67 0a  s format string.
58a0: 20 20 20 20 2d 20 74 68 65 72 65 20 69 73 20 6e      - there is n
58b0: 6f 20 6c 6f 6e 67 65 72 20 61 6e 79 20 73 70 65  o longer any spe
58c0: 63 69 61 6c 20 6d 65 61 6e 69 6e 67 20 74 6f 20  cial meaning to 
58d0: 61 20 30 20 72 65 74 75 72 6e 20 76 61 6c 75 65  a 0 return value
58e0: 20 66 72 6f 6d 0a 20 20 20 20 20 20 54 63 6c 5f   from.      Tcl_
58f0: 42 61 63 6b 73 6c 61 73 68 0a 20 20 20 20 2d 20  Backslash.    - 
5900: 75 6e 6b 6e 6f 77 6e 20 62 61 63 6b 73 6c 61 73  unknown backslas
5910: 68 20 73 65 71 75 65 6e 63 65 73 2c 20 6c 69 6b  h sequences, lik
5920: 65 20 28 65 2e 67 2e 20 5c 2a 29 2c 20 61 72 65  e (e.g. \*), are
5930: 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 0a 20   replaced with. 
5940: 20 20 20 20 20 74 68 65 20 66 6f 6c 6c 6f 77 69       the followi
5950: 6e 67 20 63 68 61 72 61 63 74 65 72 20 28 65 2e  ng character (e.
5960: 67 2e 20 2a 29 2c 20 69 6e 73 74 65 61 64 20 6f  g. *), instead o
5970: 66 20 6a 75 73 74 20 74 72 65 61 74 69 6e 67 20  f just treating 
5980: 74 68 65 0a 20 20 20 20 20 20 62 61 63 6b 73 6c  the.      backsl
5990: 61 73 68 20 61 73 20 61 6e 20 6f 72 64 69 6e 61  ash as an ordina
59a0: 72 79 20 63 68 61 72 61 63 74 65 72 2e 0a 2a 2a  ry character..**
59b0: 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
59c0: 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a  MPATIBILITY ***.
59d0: 0a 31 35 34 2e 20 32 2f 36 2f 39 33 20 55 70 64  .154. 2/6/93 Upd
59e0: 61 74 65 64 20 61 6c 6c 20 63 6f 70 79 72 69 67  ated all copyrig
59f0: 68 74 20 6e 6f 74 69 63 65 73 2e 20 20 54 68 65  ht notices.  The
5a00: 20 6d 65 61 6e 69 6e 67 20 68 61 73 6e 27 74 20   meaning hasn't 
5a10: 63 68 61 6e 67 65 64 0a 61 74 20 61 6c 6c 20 62  changed.at all b
5a20: 75 74 20 74 68 65 20 77 6f 72 64 69 6e 67 20 64  ut the wording d
5a30: 6f 65 73 20 61 20 62 65 74 74 65 72 20 6a 6f 62  oes a better job
5a40: 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 20 55   of protecting U
5a50: 2e 43 2e 20 66 72 6f 6d 0a 6c 69 61 62 69 6c 69  .C. from.liabili
5a60: 74 79 20 28 61 63 63 6f 72 64 69 6e 67 20 74 6f  ty (according to
5a70: 20 55 2e 43 2e 20 6c 61 77 79 65 72 73 2c 20 61   U.C. lawyers, a
5a80: 6e 79 77 61 79 29 2e 0a 0a 31 35 35 2e 20 32 2f  nyway)...155. 2/
5a90: 36 2f 39 33 20 43 68 61 6e 67 65 64 20 22 72 65  6/93 Changed "re
5aa0: 67 73 75 62 22 20 73 6f 20 74 68 61 74 20 69 74  gsub" so that it
5ab0: 20 6f 76 65 72 77 72 69 74 65 73 20 74 68 65 20   overwrites the 
5ac0: 72 65 73 75 6c 74 20 76 61 72 69 61 62 6c 65 0a  result variable.
5ad0: 69 6e 20 61 6c 6c 20 63 61 73 65 73 2c 20 65 76  in all cases, ev
5ae0: 65 6e 20 69 66 20 74 68 65 72 65 20 69 73 20 6e  en if there is n
5af0: 6f 20 6d 61 74 63 68 2e 0a 2a 2a 2a 20 50 4f 54  o match..*** POT
5b00: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
5b10: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 35 36 2e  BILITY ***..156.
5b20: 20 32 2f 38 2f 39 33 20 41 64 64 65 64 20 73 75   2/8/93 Added su
5b30: 70 70 6f 72 74 20 66 6f 72 20 58 50 47 33 20 25  pport for XPG3 %
5b40: 6e 24 20 63 6f 6e 76 65 72 73 69 6f 6e 20 73 70  n$ conversion sp
5b50: 65 63 69 66 69 65 72 73 20 74 6f 20 22 66 6f 72  ecifiers to "for
5b60: 6d 61 74 22 0a 63 6f 6d 6d 61 6e 64 2e 0a 0a 31  mat".command...1
5b70: 35 37 2e 20 32 2f 31 37 2f 39 33 20 46 69 78 65  57. 2/17/93 Fixe
5b80: 64 20 62 75 67 20 69 6e 20 54 63 6c 5f 45 76 61  d bug in Tcl_Eva
5b90: 6c 20 77 68 65 72 65 20 65 72 72 6f 72 73 20 64  l where errors d
5ba0: 75 65 20 74 6f 20 69 6e 66 69 6e 69 74 65 0a 72  ue to infinite.r
5bb0: 65 63 75 72 73 69 6f 6e 20 63 6f 75 6c 64 20 72  ecursion could r
5bc0: 65 73 75 6c 74 20 69 6e 20 63 6f 72 65 20 64 75  esult in core du
5bd0: 6d 70 73 2e 0a 0a 31 35 38 2e 20 32 2f 31 37 2f  mps...158. 2/17/
5be0: 39 33 20 49 6d 70 72 6f 76 65 64 20 74 68 65 20  93 Improved the 
5bf0: 61 75 74 6f 2d 6c 6f 61 64 20 6d 65 63 68 61 6e  auto-load mechan
5c00: 69 73 6d 20 74 6f 20 64 65 61 6c 20 67 72 61 63  ism to deal grac
5c10: 65 66 75 6c 6c 79 20 28 69 2e 65 2e 0a 72 65 74  efully (i.e..ret
5c20: 75 72 6e 20 61 6e 20 65 72 72 6f 72 29 20 77 69  urn an error) wi
5c30: 74 68 20 61 20 73 69 74 75 61 74 69 6f 6e 20 77  th a situation w
5c40: 68 65 72 65 20 61 20 6c 69 62 72 61 72 79 20 66  here a library f
5c50: 69 6c 65 20 74 68 61 74 20 73 75 70 70 6f 73 65  ile that suppose
5c60: 64 6c 79 0a 64 65 66 69 6e 65 73 20 61 20 70 72  dly.defines a pr
5c70: 6f 63 65 64 75 72 65 20 64 6f 65 73 6e 27 74 20  ocedure doesn't 
5c80: 61 63 74 75 61 6c 6c 79 20 64 65 66 69 6e 65 20  actually define 
5c90: 69 74 2e 0a 0a 31 35 39 2e 20 32 2f 31 37 2f 39  it...159. 2/17/9
5ca0: 33 20 52 65 6e 61 6d 65 64 20 54 63 6c 5f 55 6e  3 Renamed Tcl_Un
5cb0: 69 78 45 72 72 6f 72 20 70 72 6f 63 65 64 75 72  ixError procedur
5cc0: 65 20 74 6f 20 54 63 6c 5f 50 6f 73 69 78 45 72  e to Tcl_PosixEr
5cd0: 72 6f 72 2c 20 61 6e 64 0a 63 68 61 6e 67 65 64  ror, and.changed
5ce0: 20 65 72 72 6f 72 43 6f 64 65 20 76 61 72 69 61   errorCode varia
5cf0: 62 6c 65 20 75 73 61 67 65 20 74 6f 20 75 73 65  ble usage to use
5d00: 20 50 4f 53 49 58 20 61 73 20 6b 65 79 77 6f 72   POSIX as keywor
5d10: 64 20 69 6e 73 74 65 61 64 20 6f 66 0a 55 4e 49  d instead of.UNI
5d20: 58 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  X..*** POTENTIAL
5d30: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
5d40: 20 2a 2a 2a 0a 0a 31 36 30 2e 20 32 2f 31 39 2f   ***..160. 2/19/
5d50: 39 33 20 43 68 61 6e 67 65 73 20 74 6f 20 65 78  93 Changes to ex
5d60: 65 63 20 61 6e 64 20 70 72 6f 63 65 73 73 20 63  ec and process c
5d70: 6f 6e 74 72 6f 6c 3a 0a 20 20 20 20 2d 20 41 64  ontrol:.    - Ad
5d80: 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
5d90: 3e 3e 2c 20 3e 26 2c 20 3e 3e 26 2c 20 7c 26 2c  >>, >&, >>&, |&,
5da0: 20 3c 40 2c 20 3e 40 2c 20 61 6e 64 20 3e 26 40   <@, >@, and >&@
5db0: 20 66 6f 72 6d 73 20 6f 66 20 72 65 64 69 72 65   forms of redire
5dc0: 63 74 69 6f 6e 2e 0a 20 20 20 20 2d 20 57 68 65  ction..    - Whe
5dd0: 6e 20 65 78 65 63 20 70 75 74 73 20 70 72 6f 63  n exec puts proc
5de0: 65 73 73 65 73 20 69 6e 74 6f 20 62 61 63 6b 67  esses into backg
5df0: 72 6f 75 6e 64 2c 20 69 74 20 72 65 74 75 72 6e  round, it return
5e00: 73 20 61 20 6c 69 73 74 20 6f 66 0a 20 20 20 20  s a list of.    
5e10: 20 20 74 68 65 69 72 20 70 69 64 73 20 61 73 20    their pids as 
5e20: 72 65 73 75 6c 74 2e 0a 20 20 20 20 2d 20 41 64  result..    - Ad
5e30: 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
5e40: 3c 66 69 6c 65 2c 20 3e 66 69 6c 65 2c 20 65 74  <file, >file, et
5e50: 63 2e 20 28 69 2e 65 2e 20 6e 6f 20 73 70 61 63  c. (i.e. no spac
5e60: 65 20 62 65 74 77 65 65 6e 0a 20 20 20 20 20 20  e between.      
5e70: 22 3e 22 20 61 6e 64 20 66 69 6c 65 20 6e 61 6d  ">" and file nam
5e80: 65 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20 2d  e..    - Added -
5e90: 6b 65 65 70 6e 65 77 6c 69 6e 65 20 6f 70 74 69  keepnewline opti
5ea0: 6f 6e 2e 0a 20 20 20 20 2d 20 44 65 6c 65 74 65  on..    - Delete
5eb0: 64 20 54 63 6c 5f 46 6f 72 6b 20 61 6e 64 20 54  d Tcl_Fork and T
5ec0: 63 6c 5f 57 61 69 74 50 69 64 73 20 70 72 6f 63  cl_WaitPids proc
5ed0: 65 64 75 72 65 73 20 28 6a 75 73 74 20 75 73 65  edures (just use
5ee0: 20 66 6f 72 6b 20 61 6e 64 0a 20 20 20 20 20 20   fork and.      
5ef0: 77 61 69 74 70 69 64 20 69 6e 73 74 65 61 64 29  waitpid instead)
5f00: 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20 77 61  ..    - Added wa
5f10: 69 74 70 69 64 20 63 6f 6d 70 61 74 69 62 69 6c  itpid compatibil
5f20: 69 74 79 20 70 72 6f 63 65 64 75 72 65 20 66 6f  ity procedure fo
5f30: 72 20 73 79 73 74 65 6d 73 20 74 68 61 74 20 64  r systems that d
5f40: 6f 6e 27 74 20 68 61 76 65 0a 20 20 20 20 20 20  on't have.      
5f50: 69 74 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20  it..    - Added 
5f60: 54 63 6c 5f 52 65 61 70 44 65 74 61 63 68 65 64  Tcl_ReapDetached
5f70: 50 72 6f 63 73 20 70 72 6f 63 65 64 75 72 65 2e  Procs procedure.
5f80: 0a 20 20 20 20 2d 20 43 68 61 6e 67 65 64 20 22  .    - Changed "
5f90: 65 78 65 63 22 20 74 6f 20 72 65 74 75 72 6e 20  exec" to return 
5fa0: 61 6e 20 65 72 72 6f 72 20 69 66 20 74 68 65 72  an error if ther
5fb0: 65 20 69 73 20 73 74 64 65 72 72 20 6f 75 74 70  e is stderr outp
5fc0: 75 74 2c 20 65 76 65 6e 0a 20 20 20 20 20 20 69  ut, even.      i
5fd0: 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72 65  f the command re
5fe0: 74 75 72 6e 73 20 61 20 30 20 65 78 69 74 20 73  turns a 0 exit s
5ff0: 74 61 74 75 73 20 28 69 74 27 73 20 61 6c 77 61  tatus (it's alwa
6000: 79 73 20 62 65 65 6e 20 64 6f 63 75 6d 65 6e 74  ys been document
6010: 65 64 0a 20 20 20 20 20 20 74 68 69 73 20 77 61  ed.      this wa
6020: 79 2c 20 62 75 74 20 74 68 65 20 69 6d 70 6c 65  y, but the imple
6030: 6d 65 6e 74 61 74 69 6f 6e 20 77 61 73 6e 27 74  mentation wasn't
6040: 20 63 6f 72 72 65 63 74 29 2e 0a 20 20 20 20 2d   correct)..    -
6050: 20 49 66 20 61 20 70 72 6f 63 65 73 73 20 72 65   If a process re
6060: 74 75 72 6e 73 20 61 20 6e 6f 6e 2d 7a 65 72 6f  turns a non-zero
6070: 20 65 78 69 74 20 73 74 61 74 75 73 20 62 75 74   exit status but
6080: 20 64 6f 65 73 6e 27 74 20 67 65 6e 65 72 61 74   doesn't generat
6090: 65 0a 20 20 20 20 20 20 61 6e 79 20 64 69 61 67  e.      any diag
60a0: 6e 6f 73 74 69 63 20 6f 75 74 70 75 74 2c 20 74  nostic output, t
60b0: 68 65 6e 20 54 63 6c 20 67 65 6e 65 72 61 74 65  hen Tcl generate
60c0: 73 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61  s an error messa
60d0: 67 65 20 66 6f 72 20 69 74 2e 0a 2a 2a 2a 20 50  ge for it..*** P
60e0: 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
60f0: 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36  TIBILITY ***..16
6100: 31 2e 20 32 2f 32 35 2f 39 33 20 46 69 78 65 64  1. 2/25/93 Fixed
6110: 20 74 77 6f 20 6d 65 6d 6f 72 79 2d 6d 61 6e 61   two memory-mana
6120: 67 65 6d 65 6e 74 20 70 72 6f 62 6c 65 6d 73 20  gement problems 
6130: 68 61 76 69 6e 67 20 74 6f 20 64 6f 20 77 69 74  having to do wit
6140: 68 0a 6d 61 6e 61 67 69 6e 67 20 74 68 65 20 6f  h.managing the o
6150: 6c 64 20 72 65 73 75 6c 74 20 64 75 72 69 6e 67  ld result during
6160: 20 76 61 72 69 61 62 6c 65 20 74 72 61 63 65 20   variable trace 
6170: 63 61 6c 6c 62 61 63 6b 73 2e 0a 0a 31 36 32 2e  callbacks...162.
6180: 20 33 2f 31 2f 39 33 20 41 64 64 65 64 20 64 79   3/1/93 Added dy
6190: 6e 61 6d 69 63 20 73 74 72 69 6e 67 20 6c 69 62  namic string lib
61a0: 72 61 72 79 3a 20 20 54 63 6c 5f 44 53 74 72 69  rary:  Tcl_DStri
61b0: 6e 67 49 6e 69 74 2c 20 54 63 6c 5f 44 53 74 72  ngInit, Tcl_DStr
61c0: 69 6e 67 41 70 70 65 6e 64 2c 0a 54 63 6c 5f 44  ingAppend,.Tcl_D
61d0: 53 74 72 69 6e 67 46 72 65 65 2c 20 54 63 6c 5f  StringFree, Tcl_
61e0: 44 53 74 72 69 6e 67 52 65 73 75 6c 74 2c 20 65  DStringResult, e
61f0: 74 63 2e 0a 0a 31 36 33 2e 20 33 2f 31 2f 39 33  tc...163. 3/1/93
6200: 20 4d 6f 64 69 66 69 65 64 20 67 6c 6f 62 20 63   Modified glob c
6210: 6f 6d 6d 61 6e 64 20 74 6f 20 6f 6e 6c 79 20 72  ommand to only r
6220: 65 74 75 72 6e 20 74 68 65 20 6e 61 6d 65 73 20  eturn the names 
6230: 6f 66 20 66 69 6c 65 73 20 74 68 61 74 0a 65 78  of files that.ex
6240: 69 73 74 2c 20 61 6e 64 20 74 6f 20 6f 6e 6c 79  ist, and to only
6250: 20 72 65 74 75 72 6e 20 6e 61 6d 65 73 20 65 6e   return names en
6260: 64 69 6e 67 20 69 6e 20 22 2f 22 20 69 66 20 74  ding in "/" if t
6270: 68 65 20 66 69 6c 65 20 69 73 20 61 20 64 69 72  he file is a dir
6280: 65 63 74 6f 72 79 2e 0a 2a 2a 2a 20 50 4f 54 45  ectory..*** POTE
6290: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
62a0: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36 34 2e 20  ILITY ***..164. 
62b0: 33 2f 31 39 2f 39 33 20 4d 6f 64 69 66 69 65 64  3/19/93 Modified
62c0: 20 6e 6f 74 20 74 6f 20 75 73 65 20 73 79 73 74   not to use syst
62d0: 65 6d 20 63 61 6c 6c 73 20 6c 69 6b 65 20 22 72  em calls like "r
62e0: 65 61 64 22 20 64 69 72 65 63 74 6c 79 2c 0a 62  ead" directly,.b
62f0: 75 74 20 69 6e 73 74 65 61 64 20 74 6f 20 75 73  ut instead to us
6300: 65 20 73 70 65 63 69 61 6c 20 54 63 6c 20 70 72  e special Tcl pr
6310: 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 72 65  ocedures that re
6320: 74 72 79 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c  try automaticall
6330: 79 0a 69 66 20 69 6e 74 65 72 72 75 70 74 65 64  y.if interrupted
6340: 20 62 79 20 73 69 67 6e 61 6c 73 2e 0a 0a 31 36   by signals...16
6350: 35 2e 20 34 2f 33 2f 39 33 20 45 6c 69 6d 69 6e  5. 4/3/93 Elimin
6360: 61 74 65 64 20 22 6e 6f 53 65 70 22 20 61 72 67  ated "noSep" arg
6370: 75 6d 65 6e 74 20 74 6f 20 54 63 6c 5f 41 70 70  ument to Tcl_App
6380: 65 6e 64 45 6c 65 6d 65 6e 74 2c 20 70 6c 75 73  endElement, plus
6390: 0a 54 43 4c 5f 4e 4f 5f 53 50 41 43 45 20 66 6c  .TCL_NO_SPACE fl
63a0: 61 67 20 66 6f 72 20 54 63 6c 5f 53 65 74 56 61  ag for Tcl_SetVa
63b0: 72 20 61 6e 64 20 54 63 6c 5f 53 65 74 56 61 72  r and Tcl_SetVar
63c0: 32 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  2..*** POTENTIAL
63d0: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
63e0: 20 2a 2a 2a 0a 0a 31 36 36 2e 20 34 2f 33 2f 39   ***..166. 4/3/9
63f0: 33 20 45 6c 69 6d 69 6e 61 74 65 64 20 22 66 6c  3 Eliminated "fl
6400: 61 67 73 22 20 61 6e 64 20 22 74 65 72 6d 50 74  ags" and "termPt
6410: 72 22 20 61 72 67 75 6d 65 6e 74 73 20 74 6f 20  r" arguments to 
6420: 54 63 6c 5f 45 76 61 6c 2e 0a 2a 2a 2a 20 50 4f  Tcl_Eval..*** PO
6430: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
6440: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36 37  IBILITY ***..167
6450: 2e 20 34 2f 33 2f 39 33 20 43 68 61 6e 67 65 73  . 4/3/93 Changes
6460: 20 74 6f 20 65 78 70 72 65 73 73 69 6f 6e 73 3a   to expressions:
6470: 0a 20 20 20 20 2d 20 54 68 65 20 22 65 78 70 72  .    - The "expr
6480: 22 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 61 63  " command now ac
6490: 63 65 70 74 73 20 6d 75 6c 74 69 70 6c 65 20 61  cepts multiple a
64a0: 72 67 75 6d 65 6e 74 73 2c 20 77 68 69 63 68 20  rguments, which 
64b0: 61 72 65 0a 20 20 20 20 20 20 63 6f 6e 63 61 74  are.      concat
64c0: 65 6e 61 74 65 64 20 74 6f 67 65 74 68 65 72 20  enated together 
64d0: 77 69 74 68 20 73 70 61 63 65 20 73 65 70 61 72  with space separ
64e0: 61 74 6f 72 73 2e 0a 20 20 20 20 2d 20 49 6e 74  ators..    - Int
64f0: 65 67 65 72 73 20 61 72 65 6e 27 74 20 61 75 74  egers aren't aut
6500: 6f 6d 61 74 69 63 61 6c 6c 79 20 70 72 6f 6d 6f  omatically promo
6510: 74 65 64 20 74 6f 20 66 6c 6f 61 74 69 6e 67 2d  ted to floating-
6520: 70 6f 69 6e 74 20 69 66 20 74 68 65 79 0a 20 20  point if they.  
6530: 20 20 20 20 6f 76 65 72 66 6c 6f 77 20 74 68 65      overflow the
6540: 20 77 6f 72 64 20 73 69 7a 65 3a 20 20 65 72 72   word size:  err
6550: 6f 72 73 20 61 72 65 20 67 65 6e 65 72 61 74 65  ors are generate
6560: 64 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20 2d  d instead..    -
6570: 20 54 63 6c 20 63 61 6e 20 6e 6f 77 20 68 61 6e   Tcl can now han
6580: 64 6c 65 20 22 4e 61 4e 22 20 61 6e 64 20 6f 74  dle "NaN" and ot
6590: 68 65 72 20 73 70 65 63 69 61 6c 20 76 61 6c 75  her special valu
65a0: 65 73 20 69 66 20 74 68 65 20 75 6e 64 65 72 6c  es if the underl
65b0: 79 69 6e 67 0a 20 20 20 20 20 20 6c 69 62 72 61  ying.      libra
65c0: 72 79 20 70 72 6f 63 65 64 75 72 65 73 20 68 61  ry procedures ha
65d0: 6e 64 6c 65 20 74 68 65 6d 2e 0a 20 20 20 20 2d  ndle them..    -
65e0: 20 57 68 65 6e 20 70 72 69 6e 74 69 6e 67 20 66   When printing f
65f0: 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6e 75  loating-point nu
6600: 6d 62 65 72 73 2c 20 54 63 6c 20 65 6e 73 75 72  mbers, Tcl ensur
6610: 65 73 20 74 68 61 74 20 74 68 65 72 65 20 69 73  es that there is
6620: 20 61 20 22 2e 22 0a 20 20 20 20 20 20 6f 72 20   a ".".      or 
6630: 22 65 22 20 69 6e 20 74 68 65 20 6e 75 6d 62 65  "e" in the numbe
6640: 72 2c 20 73 6f 20 69 74 20 63 61 6e 27 74 20 62  r, so it can't b
6650: 65 20 74 72 65 61 74 65 64 20 61 73 20 61 6e 20  e treated as an 
6660: 69 6e 74 65 67 65 72 20 61 63 63 69 64 65 6e 74  integer accident
6670: 61 6c 6c 79 2e 0a 20 20 20 20 20 20 54 68 65 20  ally..      The 
6680: 70 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 50 72  procedure Tcl_Pr
6690: 69 6e 74 44 6f 75 62 6c 65 20 69 73 20 61 76 61  intDouble is ava
66a0: 69 6c 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64  ilable to provid
66b0: 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 0a  e this function.
66c0: 20 20 20 20 20 20 69 6e 20 6f 74 68 65 72 20 63        in other c
66d0: 6f 6e 74 65 78 74 73 2e 20 20 41 6c 73 6f 2c 20  ontexts.  Also, 
66e0: 74 68 65 20 76 61 72 69 61 62 6c 65 20 22 74 63  the variable "tc
66f0: 6c 5f 70 72 65 63 69 73 69 6f 6e 22 20 63 61 6e  l_precision" can
6700: 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20 74   be used.      t
6710: 6f 20 73 65 74 20 74 68 65 20 70 72 65 63 69 73  o set the precis
6720: 69 6f 6e 20 66 6f 72 20 70 72 69 6e 74 69 6e 67  ion for printing
6730: 20 28 6d 75 73 74 20 62 65 20 61 20 64 65 63 69   (must be a deci
6740: 6d 61 6c 20 6e 75 6d 62 65 72 20 67 69 76 69 6e  mal number givin
6750: 67 0a 20 20 20 20 20 20 64 69 67 69 74 73 20 6f  g.      digits o
6760: 66 20 70 72 65 63 69 73 69 6f 6e 29 2e 0a 20 20  f precision)..  
6770: 20 20 2d 20 45 78 70 72 65 73 73 69 6f 6e 73 20    - Expressions 
6780: 6e 6f 77 20 73 75 70 70 6f 72 74 20 74 72 61 6e  now support tran
6790: 73 63 65 6e 64 65 6e 74 61 6c 20 61 6e 64 20 6f  scendental and o
67a0: 74 68 65 72 20 66 75 6e 63 74 69 6f 6e 73 2c 20  ther functions, 
67b0: 65 2e 67 2e 20 73 69 6e 2c 0a 20 20 20 20 20 20  e.g. sin,.      
67c0: 61 63 6f 73 2c 20 68 79 70 6f 74 2c 20 63 65 69  acos, hypot, cei
67d0: 6c 2c 20 61 6e 64 20 72 6f 75 6e 64 2e 20 20 43  l, and round.  C
67e0: 61 6e 20 61 64 64 20 6e 65 77 20 6d 61 74 68 20  an add new math 
67f0: 66 75 6e 63 74 69 6f 6e 73 20 77 69 74 68 0a 20  functions with. 
6800: 20 20 20 20 20 54 63 6c 5f 43 72 65 61 74 65 4d       Tcl_CreateM
6810: 61 74 68 46 75 6e 63 28 29 2e 0a 20 20 20 20 2d  athFunc()..    -
6820: 20 42 6f 6f 6c 65 61 6e 20 65 78 70 72 65 73 73   Boolean express
6830: 69 6f 6e 73 20 63 61 6e 20 6e 6f 77 20 68 61 76  ions can now hav
6840: 65 20 61 6e 79 20 6f 66 20 74 68 65 20 73 74 72  e any of the str
6850: 69 6e 67 20 76 61 6c 75 65 73 20 61 63 63 65 70  ing values accep
6860: 74 65 64 0a 20 20 20 20 20 20 62 79 20 54 63 6c  ted.      by Tcl
6870: 5f 47 65 74 42 6f 6f 6c 65 61 6e 2c 20 73 75 63  _GetBoolean, suc
6880: 68 20 61 73 20 22 79 65 73 22 20 6f 72 20 22 6e  h as "yes" or "n
6890: 6f 22 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  o"..*** POTENTIA
68a0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
68b0: 59 20 2a 2a 2a 0a 0a 31 36 38 2e 20 34 2f 35 2f  Y ***..168. 4/5/
68c0: 39 33 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 55  93 Changed Tcl_U
68d0: 6e 73 65 74 56 61 72 20 61 6e 64 20 54 63 6c 5f  nsetVar and Tcl_
68e0: 55 6e 73 65 74 56 61 72 32 20 74 6f 20 72 65 74  UnsetVar2 to ret
68f0: 75 72 6e 20 54 43 4c 5f 4f 4b 0a 6f 72 20 54 43  urn TCL_OK.or TC
6900: 4c 5f 45 52 52 4f 52 20 69 6e 73 74 65 61 64 20  L_ERROR instead 
6910: 6f 66 20 30 20 6f 72 20 2d 31 2e 0a 2a 2a 2a 20  of 0 or -1..*** 
6920: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
6930: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31  ATIBILITY ***..1
6940: 36 39 2e 20 34 2f 35 2f 39 33 20 45 6c 69 6d 69  69. 4/5/93 Elimi
6950: 6e 61 74 65 64 20 54 63 6c 5f 43 6d 64 42 75 66  nated Tcl_CmdBuf
6960: 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20 61   structure and a
6970: 73 73 6f 63 69 61 74 65 64 20 70 72 6f 63 65 64  ssociated proced
6980: 75 72 65 73 3b 0a 63 61 6e 20 75 73 65 20 54 63  ures;.can use Tc
6990: 6c 5f 44 53 74 72 69 6e 67 73 20 69 6e 73 74 65  l_DStrings inste
69a0: 61 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  ad..*** POTENTIA
69b0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
69c0: 59 20 2a 2a 2a 0a 0a 31 37 30 2e 20 34 2f 38 2f  Y ***..170. 4/8/
69d0: 39 33 20 43 68 61 6e 67 65 64 20 69 6e 74 65 72  93 Changed inter
69e0: 66 61 63 65 20 74 6f 20 54 63 6c 5f 54 69 6c 64  face to Tcl_Tild
69f0: 65 53 75 62 73 74 20 74 6f 20 75 73 65 20 61 20  eSubst to use a 
6a00: 64 79 6e 61 6d 69 63 0a 73 74 72 69 6e 67 20 66  dynamic.string f
6a10: 6f 72 20 62 75 66 66 65 72 20 73 70 61 63 65 2e  or buffer space.
6a20: 20 20 54 68 69 73 20 6d 61 6b 65 73 20 74 68 65    This makes the
6a30: 20 70 72 6f 63 65 64 75 72 65 20 72 65 2d 65 6e   procedure re-en
6a40: 74 72 61 6e 74 20 61 6e 64 0a 74 68 72 65 61 64  trant and.thread
6a50: 2d 73 61 66 65 2c 20 77 68 65 72 65 61 73 20 69  -safe, whereas i
6a60: 74 20 77 61 73 6e 27 74 20 62 65 66 6f 72 65 2e  t wasn't before.
6a70: 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
6a80: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
6a90: 2a 2a 0a 0a 31 37 31 2e 20 34 2f 31 34 2f 39 33  **..171. 4/14/93
6aa0: 20 45 6c 69 6d 69 6e 61 74 65 64 20 74 63 6c 48   Eliminated tclH
6ab0: 61 73 68 2e 68 2c 20 61 6e 64 20 6d 6f 76 65 64  ash.h, and moved
6ac0: 20 65 76 65 72 79 74 68 69 6e 67 20 66 72 6f 6d   everything from
6ad0: 20 69 74 20 74 6f 0a 74 63 6c 2e 68 0a 2a 2a 2a   it to.tcl.h.***
6ae0: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
6af0: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
6b00: 31 37 32 2e 20 34 2f 31 35 2f 39 33 20 45 6c 69  172. 4/15/93 Eli
6b10: 6d 69 6e 61 74 65 64 20 54 63 6c 5f 49 6e 69 74  minated Tcl_Init
6b20: 48 69 73 74 6f 72 79 2c 20 6d 61 64 65 20 22 68  History, made "h
6b30: 69 73 74 6f 72 79 22 20 63 6f 6d 6d 61 6e 64 20  istory" command 
6b40: 61 6c 77 61 79 73 0a 62 65 20 70 61 72 74 20 6f  always.be part o
6b50: 66 20 69 6e 74 65 72 70 72 65 74 65 72 2e 0a 2a  f interpreter..*
6b60: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
6b70: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
6b80: 0a 0a 31 37 33 2e 20 34 2f 31 36 2f 39 33 20 4d  ..173. 4/16/93 M
6b90: 6f 64 69 66 69 65 64 20 22 66 69 6c 65 22 20 63  odified "file" c
6ba0: 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 22  ommand so that "
6bb0: 72 65 61 64 61 62 6c 65 22 20 6f 70 74 69 6f 6e  readable" option
6bc0: 20 61 6c 77 61 79 73 0a 65 78 69 73 74 73 2c 20   always.exists, 
6bd0: 65 76 65 6e 20 6f 6e 20 6d 61 63 68 69 6e 65 73  even on machines
6be0: 20 74 68 61 74 20 64 6f 6e 27 74 20 73 75 70 70   that don't supp
6bf0: 6f 72 74 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e  ort symbolic lin
6c00: 6b 73 20 28 61 6c 77 61 79 73 20 72 65 74 75 72  ks (always retur
6c10: 6e 73 0a 73 61 6d 65 20 65 72 72 6f 72 20 61 73  ns.same error as
6c20: 20 69 66 20 74 68 65 20 66 69 6c 65 20 77 61 73   if the file was
6c30: 6e 27 74 20 61 20 73 79 6d 62 6f 6c 69 63 20 6c  n't a symbolic l
6c40: 69 6e 6b 29 2e 0a 0a 31 37 34 2e 20 34 2f 32 36  ink)...174. 4/26
6c50: 2f 39 33 20 46 69 78 65 64 20 62 75 67 73 20 69  /93 Fixed bugs i
6c60: 6e 20 22 72 65 67 73 75 62 22 20 77 68 65 72 65  n "regsub" where
6c70: 20 5e 20 70 61 74 74 65 72 6e 73 20 64 69 64 6e   ^ patterns didn
6c80: 27 74 20 67 65 74 20 68 61 6e 64 6c 65 64 0a 72  't get handled.r
6c90: 69 67 68 74 20 28 70 72 65 74 65 6e 64 65 64 20  ight (pretended 
6ca0: 6e 6f 74 20 74 6f 20 6d 61 74 63 68 20 77 68 65  not to match whe
6cb0: 6e 20 69 74 20 72 65 61 6c 6c 79 20 64 69 64 2c  n it really did,
6cc0: 20 61 6e 64 20 6c 6f 6f 70 65 64 20 69 6e 66 69   and looped infi
6cd0: 6e 69 74 65 6c 79 0a 69 66 20 2d 61 6c 6c 20 77  nitely.if -all w
6ce0: 61 73 20 73 70 65 63 69 66 69 65 64 29 2e 0a 0a  as specified)...
6cf0: 31 37 35 2e 20 34 2f 32 39 2f 39 33 20 56 61 72  175. 4/29/93 Var
6d00: 69 6f 75 73 20 69 6d 70 72 6f 76 65 6d 65 6e 74  ious improvement
6d10: 73 20 69 6e 20 74 68 65 20 68 61 6e 64 6c 69 6e  s in the handlin
6d20: 67 20 6f 66 20 76 61 72 69 61 62 6c 65 73 3a 0a  g of variables:.
6d30: 20 20 20 20 2d 20 43 61 6e 20 63 72 65 61 74 65      - Can create
6d40: 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 61   variables and a
6d50: 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 64 75  rray elements du
6d60: 72 69 6e 67 20 61 20 72 65 61 64 20 74 72 61 63  ring a read trac
6d70: 65 2e 0a 20 20 20 20 2d 20 43 61 6e 20 64 65 6c  e..    - Can del
6d80: 65 74 65 20 76 61 72 69 61 62 6c 65 73 20 64 75  ete variables du
6d90: 72 69 6e 67 20 74 72 61 63 65 73 20 28 6e 6f 74  ring traces (not
6da0: 65 3a 20 75 6e 73 65 74 20 74 72 61 63 65 73 20  e: unset traces 
6db0: 77 69 6c 6c 20 62 65 0a 20 20 20 20 20 20 69 6e  will be.      in
6dc0: 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 69 73 20  voked when this 
6dd0: 68 61 70 70 65 6e 73 29 2e 0a 20 20 20 20 2d 20  happens)..    - 
6de0: 43 61 6e 20 75 70 76 61 72 20 74 6f 20 61 72 72  Can upvar to arr
6df0: 61 79 20 65 6c 65 6d 65 6e 74 73 2e 0a 20 20 20  ay elements..   
6e00: 20 2d 20 43 61 6e 20 72 65 74 61 72 67 65 74 20   - Can retarget 
6e10: 61 6e 20 75 70 76 61 72 20 74 6f 20 61 6e 6f 74  an upvar to anot
6e20: 68 65 72 20 76 61 72 69 61 62 6c 65 20 62 79 20  her variable by 
6e30: 72 65 2d 69 73 73 75 69 6e 67 20 74 68 65 0a 20  re-issuing the. 
6e40: 20 20 20 20 20 75 70 76 61 72 20 63 6f 6d 6d 61       upvar comma
6e50: 6e 64 20 77 69 74 68 20 61 20 64 69 66 66 65 72  nd with a differ
6e60: 65 6e 74 20 22 6f 74 68 65 72 22 20 76 61 72 69  ent "other" vari
6e70: 61 62 6c 65 2e 0a 0a 31 37 36 2e 20 35 2f 33 2f  able...176. 5/3/
6e80: 39 33 20 41 64 64 65 64 20 54 63 6c 5f 47 65 74  93 Added Tcl_Get
6e90: 43 6f 6d 6d 61 6e 64 49 6e 66 6f 2c 20 77 68 69  CommandInfo, whi
6ea0: 63 68 20 72 65 74 75 72 6e 73 20 69 6e 66 6f 20  ch returns info 
6eb0: 61 62 6f 75 74 20 61 20 54 63 6c 0a 63 6f 6d 6d  about a Tcl.comm
6ec0: 61 6e 64 20 73 75 63 68 20 61 73 20 77 68 65 74  and such as whet
6ed0: 68 65 72 20 69 74 20 65 78 69 73 74 73 20 61 6e  her it exists an
6ee0: 64 20 69 74 73 20 43 6c 69 65 6e 74 44 61 74 61  d its ClientData
6ef0: 2e 20 20 41 6c 73 6f 20 61 64 64 65 64 0a 54 63  .  Also added.Tc
6f00: 6c 5f 53 65 74 43 6f 6d 6d 61 6e 64 49 6e 66 6f  l_SetCommandInfo
6f10: 2c 20 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 61  , which allows a
6f20: 6e 79 20 6f 66 20 74 68 69 73 20 69 6e 66 6f 72  ny of this infor
6f30: 6d 61 74 69 6f 6e 20 74 6f 20 62 65 20 6d 6f 64  mation to be mod
6f40: 69 66 69 65 64 0a 61 6e 64 20 61 6c 73 6f 20 61  ified.and also a
6f50: 6c 6c 6f 77 73 20 61 20 63 6f 6d 6d 61 6e 64 27  llows a command'
6f60: 73 20 64 65 6c 65 74 65 20 70 72 6f 63 65 64 75  s delete procedu
6f70: 72 65 20 74 6f 20 68 61 76 65 20 61 20 64 69 66  re to have a dif
6f80: 66 65 72 65 6e 74 0a 43 6c 69 65 6e 74 44 61 74  ferent.ClientDat
6f90: 61 20 76 61 6c 75 65 20 74 68 61 6e 20 69 74 73  a value than its
6fa0: 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75   command procedu
6fb0: 72 65 2e 0a 0a 31 37 37 2e 20 35 2f 35 2f 39 33  re...177. 5/5/93
6fc0: 20 41 64 64 65 64 20 54 63 6c 5f 52 65 67 45 78   Added Tcl_RegEx
6fd0: 70 4d 61 74 63 68 20 70 72 6f 63 65 64 75 72 65  pMatch procedure
6fe0: 2e 0a 0a 31 37 38 2e 20 35 2f 36 2f 39 33 20 46  ...178. 5/6/93 F
6ff0: 69 78 65 64 20 62 75 67 20 69 6e 20 22 73 63 61  ixed bug in "sca
7000: 6e 22 20 77 68 65 72 65 20 69 74 20 64 69 64 6e  n" where it didn
7010: 27 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64  't properly hand
7020: 6c 65 0a 25 25 20 63 6f 6e 76 65 72 73 69 6f 6e  le.%% conversion
7030: 20 73 70 65 63 69 66 69 65 72 73 2e 20 20 41 6c   specifiers.  Al
7040: 73 6f 20 63 68 61 6e 67 65 64 20 22 73 63 61 6e  so changed "scan
7050: 22 20 74 6f 20 75 73 65 20 54 63 6c 5f 50 72 69  " to use Tcl_Pri
7060: 6e 74 44 6f 75 62 6c 65 0a 66 6f 72 20 70 72 69  ntDouble.for pri
7070: 6e 74 69 6e 67 20 72 65 61 6c 20 76 61 6c 75 65  nting real value
7080: 73 2e 0a 0a 31 37 39 2e 20 35 2f 37 2f 39 33 20  s...179. 5/7/93 
7090: 41 64 64 65 64 20 22 2d 65 78 61 63 74 22 2c 20  Added "-exact", 
70a0: 22 2d 67 6c 6f 62 22 2c 20 61 6e 64 20 22 2d 72  "-glob", and "-r
70b0: 65 67 65 78 70 22 20 6f 70 74 69 6f 6e 73 20 74  egexp" options t
70c0: 6f 20 22 6c 73 65 61 72 63 68 22 0a 63 6f 6d 6d  o "lsearch".comm
70d0: 61 6e 64 20 74 6f 20 61 6c 6c 6f 77 20 64 69 66  and to allow dif
70e0: 66 65 72 65 6e 74 20 6b 69 6e 64 73 20 6f 66 20  ferent kinds of 
70f0: 70 61 74 74 65 72 6e 20 6d 61 74 63 68 69 6e 67  pattern matching
7100: 2e 0a 0a 31 38 30 2e 20 35 2f 37 2f 39 33 20 41  ...180. 5/7/93 A
7110: 64 64 65 64 20 6d 61 6e 79 20 6e 65 77 20 73 77  dded many new sw
7120: 69 74 63 68 65 73 20 74 6f 20 22 6c 73 6f 72 74  itches to "lsort
7130: 22 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 74 68 65  " to control the
7140: 20 73 6f 72 74 69 6e 67 0a 70 72 6f 63 65 73 73   sorting.process
7150: 3a 20 22 2d 61 73 63 69 69 22 2c 20 22 2d 69 6e  : "-ascii", "-in
7160: 74 65 67 65 72 22 2c 20 22 2d 72 65 61 6c 22 2c  teger", "-real",
7170: 20 22 2d 63 6f 6d 6d 61 6e 64 22 2c 20 22 2d 69   "-command", "-i
7180: 6e 63 72 65 61 73 69 6e 67 22 2c 0a 61 6e 64 20  ncreasing",.and 
7190: 22 2d 64 65 63 72 65 61 73 69 6e 67 22 2e 0a 0a  "-decreasing"...
71a0: 31 38 31 2e 20 35 2f 31 30 2f 39 33 20 43 68 61  181. 5/10/93 Cha
71b0: 6e 67 65 73 20 74 6f 20 66 69 6c 65 20 49 2f 4f  nges to file I/O
71c0: 3a 0a 20 20 20 20 2d 20 4d 6f 64 69 66 69 65 64  :.    - Modified
71d0: 20 22 6f 70 65 6e 22 20 63 6f 6d 6d 61 6e 64 20   "open" command 
71e0: 74 6f 20 73 75 70 70 6f 72 74 20 61 20 6c 69 73  to support a lis
71f0: 74 20 6f 66 20 50 4f 53 49 58 20 61 63 63 65 73  t of POSIX acces
7200: 73 20 66 6c 61 67 73 0a 20 20 20 20 20 20 6c 69  s flags.      li
7210: 6b 65 20 7b 57 52 4f 4e 4c 59 20 43 52 45 41 54  ke {WRONLY CREAT
7220: 20 54 52 55 4e 43 7d 20 69 6e 20 61 64 64 69 74   TRUNC} in addit
7230: 69 6f 6e 20 74 6f 20 63 75 72 72 65 6e 74 20 66  ion to current f
7240: 6f 70 65 6e 2d 73 74 79 6c 65 0a 20 20 20 20 20  open-style.     
7250: 20 61 63 63 65 73 73 20 6d 6f 64 65 73 2e 20 20   access modes.  
7260: 41 6c 73 6f 20 61 64 64 65 64 20 22 70 65 72 6d  Also added "perm
7270: 69 73 73 69 6f 6e 73 22 20 61 72 67 75 6d 65 6e  issions" argumen
7280: 74 20 74 6f 20 73 65 74 20 70 65 72 6d 69 73 73  t to set permiss
7290: 69 6f 6e 73 0a 20 20 20 20 20 20 6f 66 20 6e 65  ions.      of ne
72a0: 77 6c 79 2d 63 72 65 61 74 65 64 20 66 69 6c 65  wly-created file
72b0: 73 2e 0a 20 20 20 20 2d 20 46 69 78 65 64 20 53  s..    - Fixed S
72c0: 63 6f 74 74 20 42 6f 6c 74 65 27 73 20 62 75 67  cott Bolte's bug
72d0: 20 28 63 61 6e 20 63 6c 6f 73 65 20 73 74 64 69   (can close stdi
72e0: 6e 20 65 74 63 2e 20 69 6e 20 61 70 70 6c 69 63  n etc. in applic
72f0: 61 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20 20  ation and.      
7300: 74 68 65 6e 20 72 65 2d 6f 70 65 6e 20 74 68 65  then re-open the
7310: 6d 20 77 69 74 68 20 54 63 6c 20 63 6f 6d 6d 61  m with Tcl comma
7320: 6e 64 73 29 2e 0a 20 20 20 20 2d 20 45 78 70 6f  nds)..    - Expo
7330: 72 74 65 64 20 61 63 63 65 73 73 20 74 6f 20 54  rted access to T
7340: 63 6c 27 73 20 66 69 6c 65 20 74 61 62 6c 65 20  cl's file table 
7350: 77 69 74 68 20 6e 65 77 20 70 72 6f 63 65 64 75  with new procedu
7360: 72 65 73 20 54 63 6c 5f 45 6e 74 65 72 46 69 6c  res Tcl_EnterFil
7370: 65 0a 20 20 20 20 20 20 61 6e 64 20 54 63 6c 5f  e.      and Tcl_
7380: 47 65 74 4f 70 65 6e 46 69 6c 65 2e 0a 0a 31 38  GetOpenFile...18
7390: 32 2e 20 35 2f 31 35 2f 39 33 20 41 64 64 65 64  2. 5/15/93 Added
73a0: 20 6e 65 77 20 22 70 69 64 22 20 63 6f 6d 6d 61   new "pid" comma
73b0: 6e 64 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65  nd, which can be
73c0: 20 75 73 65 64 20 74 6f 20 72 65 74 72 69 65 76   used to retriev
73d0: 65 0a 65 69 74 68 65 72 20 74 68 65 20 63 75 72  e.either the cur
73e0: 72 65 6e 74 20 70 72 6f 63 65 73 73 20 69 64 20  rent process id 
73f0: 6f 72 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65  or a list of the
7400: 20 70 72 6f 63 65 73 73 20 69 64 73 20 69 6e 20   process ids in 
7410: 61 0a 70 69 70 65 6c 69 6e 65 20 6f 70 65 6e 65  a.pipeline opene
7420: 64 20 77 69 74 68 20 22 6f 70 65 6e 20 7c 2e 2e  d with "open |..
7430: 2e 22 0a 0a 31 38 33 2e 20 36 2f 33 2f 39 33 20  ."..183. 6/3/93 
7440: 43 68 61 6e 67 65 64 20 74 6f 20 75 73 65 20 47  Changed to use G
7450: 4e 55 20 61 75 74 6f 63 6f 6e 66 69 67 20 66 6f  NU autoconfig fo
7460: 72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20  r configuration 
7470: 69 6e 73 74 65 61 64 20 6f 66 0a 74 68 65 20 68  instead of.the h
7480: 6f 6d 65 2d 62 72 65 77 20 22 63 6f 6e 66 69 67  ome-brew "config
7490: 22 20 73 63 72 69 70 74 2e 20 20 41 6c 73 6f 20  " script.  Also 
74a0: 6d 61 64 65 20 6d 61 6e 79 20 6f 74 68 65 72 20  made many other 
74b0: 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2d 72 65  configuration-re
74c0: 6c 61 74 65 64 0a 63 68 61 6e 67 65 73 2c 20 73  lated.changes, s
74d0: 75 63 68 20 61 73 20 75 73 69 6e 67 20 3c 75 6e  uch as using <un
74e0: 69 73 74 64 2e 68 3e 20 69 6e 73 74 65 61 64 20  istd.h> instead 
74f0: 6f 66 20 65 78 70 6c 69 63 69 74 6c 79 20 64 65  of explicitly de
7500: 63 6c 61 72 69 6e 67 20 73 79 73 74 65 6d 0a 63  claring system.c
7510: 61 6c 6c 73 20 69 6e 20 74 63 6c 55 6e 69 78 2e  alls in tclUnix.
7520: 68 2e 0a 0a 31 38 34 2e 20 36 2f 34 2f 39 33 20  h...184. 6/4/93 
7530: 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65 20  Fixed bug where 
7540: 63 6f 72 65 2d 64 75 6d 70 73 20 63 6f 75 6c 64  core-dumps could
7550: 20 6f 63 63 75 72 20 69 66 20 61 20 70 72 6f 63   occur if a proc
7560: 65 64 75 72 65 0a 72 65 64 65 66 69 6e 65 64 20  edure.redefined 
7570: 69 74 73 65 6c 66 20 28 74 68 65 20 6d 65 6d 6f  itself (the memo
7580: 72 79 20 66 6f 72 20 74 68 65 20 70 72 6f 63 65  ry for the proce
7590: 64 75 72 65 27 73 20 62 6f 64 79 20 63 6f 75 6c  dure's body coul
75a0: 64 20 67 65 74 0a 72 65 61 6c 6c 6f 63 61 74 65  d get.reallocate
75b0: 64 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20  d in the middle 
75c0: 6f 66 20 65 76 61 6c 75 61 74 69 6e 67 20 74 68  of evaluating th
75d0: 65 20 62 6f 64 79 29 3b 20 20 69 6d 70 6c 65 6d  e body);  implem
75e0: 65 6e 74 65 64 0a 73 69 6d 70 6c 65 20 72 65 66  ented.simple ref
75f0: 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 6d 65 63  erence count mec
7600: 68 61 6e 69 73 6d 2e 0a 0a 31 38 35 2e 20 36 2f  hanism...185. 6/
7610: 35 2f 39 33 20 43 68 61 6e 67 65 64 20 74 63 6c  5/93 Changed tcl
7620: 49 6e 64 65 78 20 66 69 6c 65 20 66 6f 72 6d 61  Index file forma
7630: 74 20 69 6e 20 74 77 6f 20 77 61 79 73 3a 20 20  t in two ways:  
7640: 28 61 29 20 69 74 27 73 20 6e 6f 77 0a 65 76 61  (a) it's now.eva
7650: 6c 2d 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20  l-ed instead of 
7660: 70 61 72 73 65 64 2c 20 77 68 69 63 68 20 6d 61  parsed, which ma
7670: 6b 65 73 20 69 74 20 33 2d 34 78 20 66 61 73 74  kes it 3-4x fast
7680: 65 72 3b 20 28 62 29 20 74 68 65 20 65 6e 74 72  er; (b) the entr
7690: 69 65 73 0a 69 6e 20 61 75 74 6f 5f 69 6e 64 65  ies.in auto_inde
76a0: 78 20 61 72 65 20 6e 6f 77 20 63 6f 6d 6d 61 6e  x are now comman
76b0: 64 73 20 74 6f 20 65 76 61 6c 75 61 74 65 2c 20  ds to evaluate, 
76c0: 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 63 6f 6d  which allows com
76d0: 6d 61 6e 64 73 20 74 6f 0a 62 65 20 6c 6f 61 64  mands to.be load
76e0: 65 64 20 69 6e 20 64 69 66 66 65 72 65 6e 74 20  ed in different 
76f0: 77 61 79 73 20 73 75 63 68 20 61 73 20 64 79 6e  ways such as dyn
7700: 61 6d 69 63 2d 6c 6f 61 64 69 6e 67 20 6f 66 20  amic-loading of 
7710: 43 20 63 6f 64 65 2e 20 20 54 68 65 0a 6f 6c 64  C code.  The.old
7720: 20 74 63 6c 49 6e 64 65 78 20 66 69 6c 65 20 66   tclIndex file f
7730: 6f 72 6d 61 74 20 69 73 20 73 74 69 6c 6c 20 73  ormat is still s
7740: 75 70 70 6f 72 74 65 64 2e 0a 0a 31 38 36 2e 20  upported...186. 
7750: 36 2f 37 2f 39 33 20 45 6c 69 6d 69 6e 61 74 65  6/7/93 Eliminate
7760: 64 20 74 63 6c 54 65 73 74 20 70 72 6f 67 72 61  d tclTest progra
7770: 6d 2c 20 61 64 64 65 64 20 6e 65 77 20 22 74 63  m, added new "tc
7780: 6c 73 68 22 20 70 72 6f 67 72 61 6d 0a 74 68 61  lsh" program.tha
7790: 74 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 20 77  t is more like w
77a0: 69 73 68 20 28 61 6c 6c 6f 77 73 20 73 63 72 69  ish (allows scri
77b0: 70 74 20 66 69 6c 65 73 20 74 6f 20 62 65 20 69  pt files to be i
77c0: 6e 76 6f 6b 65 64 20 61 75 74 6f 6d 61 74 69 63  nvoked automatic
77d0: 61 6c 6c 79 0a 75 73 69 6e 67 20 22 23 21 2f 75  ally.using "#!/u
77e0: 73 72 2f 6c 6f 63 61 6c 2f 62 69 6e 2f 74 63 6c  sr/local/bin/tcl
77f0: 73 68 22 2c 20 6d 61 6b 65 73 20 61 72 67 75 6d  sh", makes argum
7800: 65 6e 74 73 20 61 76 61 69 6c 61 62 6c 65 20 74  ents available t
7810: 6f 20 73 63 72 69 70 74 2c 0a 65 74 63 2e 29 2e  o script,.etc.).
7820: 20 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20    Added support 
7830: 66 6f 72 20 54 63 6c 5f 41 70 70 49 6e 69 74 20  for Tcl_AppInit 
7840: 70 6c 75 73 20 64 65 66 61 75 6c 74 20 76 65 72  plus default ver
7850: 73 69 6f 6e 3b 20 20 74 68 69 73 0a 61 6c 6c 6f  sion;  this.allo
7860: 77 73 20 6e 65 77 20 54 63 6c 20 61 70 70 6c 69  ws new Tcl appli
7870: 63 61 74 69 6f 6e 73 20 74 6f 20 62 65 20 63 72  cations to be cr
7880: 65 61 74 65 64 20 77 69 74 68 6f 75 74 20 6d 6f  eated without mo
7890: 64 69 66 79 69 6e 67 20 74 68 65 0a 6d 61 69 6e  difying the.main
78a0: 20 70 72 6f 67 72 61 6d 20 66 6f 72 20 74 63 6c   program for tcl
78b0: 73 68 2e 0a 0a 31 38 37 2e 20 36 2f 37 2f 39 33  sh...187. 6/7/93
78c0: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54 63   Fixed bug in Tc
78d0: 6c 57 6f 72 64 45 6e 64 20 74 68 61 74 20 6b 65  lWordEnd that ke
78e0: 70 74 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77  pt backslash-new
78f0: 6c 69 6e 65 20 66 72 6f 6d 0a 77 6f 72 6b 69 6e  line from.workin
7900: 67 20 63 6f 72 72 65 63 74 6c 79 20 69 6e 20 73  g correctly in s
7910: 6f 6d 65 20 63 61 73 65 73 20 64 75 72 69 6e 67  ome cases during
7920: 20 69 6e 74 65 72 61 63 74 69 76 65 20 69 6e 70   interactive inp
7930: 75 74 2e 0a 0a 31 38 38 2e 20 36 2f 39 2f 39 33  ut...188. 6/9/93
7940: 20 41 64 64 65 64 20 54 63 6c 5f 4c 69 6e 6b 56   Added Tcl_LinkV
7950: 61 72 20 61 6e 64 20 72 65 6c 61 74 65 64 20 70  ar and related p
7960: 72 6f 63 65 64 75 72 65 73 2c 20 77 68 69 63 68  rocedures, which
7970: 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 6b   automatically.k
7980: 65 65 70 20 61 20 54 63 6c 20 76 61 72 69 61 62  eep a Tcl variab
7990: 6c 65 20 69 6e 20 73 79 6e 63 20 77 69 74 68 20  le in sync with 
79a0: 61 20 43 20 76 61 72 69 61 62 6c 65 2e 0a 0a 31  a C variable...1
79b0: 38 39 2e 20 36 2f 31 36 2f 39 33 20 49 6e 63 72  89. 6/16/93 Incr
79c0: 65 61 73 65 64 20 6d 61 78 69 6d 75 6d 20 6e 65  eased maximum ne
79d0: 73 74 69 6e 67 20 64 65 70 74 68 20 66 72 6f 6d  sting depth from
79e0: 20 31 30 30 20 74 6f 20 31 30 30 30 2e 0a 0a 31   100 to 1000...1
79f0: 39 30 2e 20 36 2f 31 36 2f 39 33 20 4d 6f 64 69  90. 6/16/93 Modi
7a00: 66 69 65 64 20 22 74 72 61 63 65 20 76 61 72 22  fied "trace var"
7a10: 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74   command so that
7a20: 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73 20   error messages 
7a30: 66 72 6f 6d 0a 77 69 74 68 69 6e 20 74 72 61 63  from.within trac
7a40: 65 73 20 61 72 65 20 72 65 74 75 72 6e 65 64 20  es are returned 
7a50: 70 72 6f 70 65 72 6c 79 20 61 73 20 74 68 65 20  properly as the 
7a60: 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 76 61  result of the va
7a70: 72 69 61 62 6c 65 0a 61 63 63 65 73 73 2c 20 69  riable.access, i
7a80: 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 67 65  nstead of the ge
7a90: 6e 65 72 69 63 20 22 61 63 63 65 73 73 20 64 69  neric "access di
7aa0: 73 61 6c 6c 6f 77 65 64 20 62 79 20 74 72 61 63  sallowed by trac
7ab0: 65 20 63 6f 6d 6d 61 6e 64 22 0a 6d 65 73 73 61  e command".messa
7ac0: 67 65 2e 0a 0a 31 39 31 2e 20 36 2f 31 36 2f 39  ge...191. 6/16/9
7ad0: 33 20 41 64 64 65 64 20 54 63 6c 5f 43 61 6c 6c  3 Added Tcl_Call
7ae0: 57 68 65 6e 44 65 6c 65 74 65 64 20 74 6f 20 70  WhenDeleted to p
7af0: 72 6f 76 69 64 65 20 63 61 6c 6c 62 61 63 6b 73  rovide callbacks
7b00: 20 77 68 65 6e 20 61 6e 0a 69 6e 74 65 72 70 72   when an.interpr
7b10: 65 74 65 72 20 69 73 20 64 65 6c 65 74 65 64 20  eter is deleted 
7b20: 28 73 61 6d 65 20 66 75 6e 63 74 69 6f 6e 61 6c  (same functional
7b30: 69 74 79 20 61 73 20 54 63 6c 5f 57 61 74 63 68  ity as Tcl_Watch
7b40: 49 6e 74 65 72 70 2c 20 77 68 69 63 68 0a 75 73  Interp, which.us
7b50: 65 64 20 74 6f 20 65 78 69 73 74 20 69 6e 20 76  ed to exist in v
7b60: 65 72 73 69 6f 6e 73 20 62 65 66 6f 72 65 20 36  ersions before 6
7b70: 2e 30 29 2e 0a 0a 31 39 33 2e 20 36 2f 31 36 2f  .0)...193. 6/16/
7b80: 39 33 20 41 64 64 65 64 20 22 2d 63 6f 64 65 22  93 Added "-code"
7b90: 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 22 72 65   argument to "re
7ba0: 74 75 72 6e 22 20 63 6f 6d 6d 61 6e 64 3b 20 20  turn" command;  
7bb0: 69 74 27 73 20 74 68 65 72 65 0a 70 72 69 6d 61  it's there.prima
7bc0: 72 69 6c 79 20 66 6f 72 20 63 6f 6d 70 6c 65 74  rily for complet
7bd0: 65 6e 65 73 73 2c 20 73 6f 20 74 68 61 74 20 70  eness, so that p
7be0: 72 6f 63 65 64 75 72 65 73 20 69 6d 70 6c 65 6d  rocedures implem
7bf0: 65 6e 74 69 6e 67 20 63 6f 6e 74 72 6f 6c 0a 63  enting control.c
7c00: 6f 6e 73 74 72 75 63 74 73 20 63 61 6e 20 72 65  onstructs can re
7c10: 66 6c 65 63 74 20 65 78 63 65 70 74 69 6f 6e 61  flect exceptiona
7c20: 6c 20 63 6f 6e 64 69 74 69 6f 6e 73 20 62 61 63  l conditions bac
7c30: 6b 20 74 6f 20 74 68 65 69 72 20 63 61 6c 6c 65  k to their calle
7c40: 72 73 2e 0a 0a 31 39 34 2e 20 36 2f 31 36 2f 39  rs...194. 6/16/9
7c50: 33 20 53 70 6c 69 74 20 75 70 20 54 63 6c 2e 6e  3 Split up Tcl.n
7c60: 20 74 6f 20 6d 61 6b 65 20 73 65 70 61 72 61 74   to make separat
7c70: 65 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73  e manual entries
7c80: 20 66 6f 72 20 65 61 63 68 0a 54 63 6c 20 63 6f   for each.Tcl co
7c90: 6d 6d 61 6e 64 2e 20 20 54 63 6c 2e 6e 20 6e 6f  mmand.  Tcl.n no
7ca0: 77 20 63 6f 6e 74 61 69 6e 73 20 61 20 73 75 6d  w contains a sum
7cb0: 6d 61 72 79 20 6f 66 20 74 68 65 20 6c 61 6e 67  mary of the lang
7cc0: 75 61 67 65 20 73 79 6e 74 61 78 2e 0a 0a 31 39  uage syntax...19
7cd0: 35 2e 20 36 2f 31 37 2f 39 33 20 41 64 64 65 64  5. 6/17/93 Added
7ce0: 20 6e 65 77 20 22 73 77 69 74 63 68 22 20 63 6f   new "switch" co
7cf0: 6d 6d 61 6e 64 20 74 6f 20 72 65 70 6c 61 63 65  mmand to replace
7d00: 20 22 63 61 73 65 22 3a 20 61 6c 6c 6f 77 73 0a   "case": allows.
7d10: 61 6c 74 65 72 6e 61 74 65 20 66 6f 72 6d 73 20  alternate forms 
7d20: 6f 66 20 70 61 74 74 65 72 6e 20 6d 61 74 63 68  of pattern match
7d30: 69 6e 67 20 28 65 78 61 63 74 2c 20 67 6c 6f 62  ing (exact, glob
7d40: 2c 20 72 65 67 65 78 70 29 2c 20 72 65 70 6c 61  , regexp), repla
7d50: 63 65 73 0a 70 61 74 74 65 72 6e 20 6c 69 73 74  ces.pattern list
7d60: 73 20 77 69 74 68 20 73 69 6e 67 6c 65 20 70 61  s with single pa
7d70: 74 74 65 72 6e 73 20 28 62 75 74 20 79 6f 75 20  tterns (but you 
7d80: 63 61 6e 20 75 73 65 20 22 2d 22 20 62 6f 64 69  can use "-" bodi
7d90: 65 73 20 74 6f 0a 73 68 61 72 65 20 6f 6e 65 20  es to.share one 
7da0: 62 6f 64 79 20 61 6d 6f 6e 67 20 73 65 76 65 72  body among sever
7db0: 61 6c 20 70 61 74 74 65 72 6e 73 29 2c 20 65 6c  al patterns), el
7dc0: 69 6d 69 6e 61 74 65 73 20 22 69 6e 22 20 6e 6f  iminates "in" no
7dd0: 69 73 65 20 77 6f 72 64 2e 0a 22 43 61 73 65 22  ise word.."Case"
7de0: 20 63 6f 6d 6d 61 6e 64 20 69 73 20 6e 6f 77 20   command is now 
7df0: 6f 62 73 6f 6c 65 74 65 2e 0a 0a 31 39 36 2e 20  obsolete...196. 
7e00: 36 2f 31 37 2f 39 33 20 43 68 61 6e 67 65 64 20  6/17/93 Changed 
7e10: 74 68 65 20 22 65 78 65 63 22 2c 20 22 67 6c 6f  the "exec", "glo
7e20: 62 22 2c 20 22 72 65 67 65 78 70 22 2c 20 61 6e  b", "regexp", an
7e30: 64 20 22 72 65 67 73 75 62 22 20 63 6f 6d 6d 61  d "regsub" comma
7e40: 6e 64 73 0a 74 6f 20 69 6e 63 6c 75 64 65 20 61  nds.to include a
7e50: 20 22 2d 2d 22 20 73 77 69 74 63 68 2e 20 20 41   "--" switch.  A
7e60: 6c 6c 20 69 6e 69 74 69 61 6c 20 61 72 67 75 6d  ll initial argum
7e70: 65 6e 74 73 20 73 74 61 72 74 69 6e 67 20 77 69  ents starting wi
7e80: 74 68 20 22 2d 22 20 61 72 65 20 6e 6f 77 0a 74  th "-" are now.t
7e90: 72 65 61 74 65 64 20 61 73 20 73 77 69 74 63 68  reated as switch
7ea0: 65 73 20 75 6e 6c 65 73 73 20 61 20 22 2d 2d 22  es unless a "--"
7eb0: 20 73 77 69 74 63 68 20 69 73 20 70 72 65 73 65   switch is prese
7ec0: 6e 74 20 74 6f 20 65 6e 64 20 74 68 65 20 6c 69  nt to end the li
7ed0: 73 74 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  st..*** POTENTIA
7ee0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
7ef0: 59 20 2a 2a 2a 0a 0a 31 39 37 2e 20 36 2f 31 37  Y ***..197. 6/17
7f00: 2f 39 33 20 43 68 61 6e 67 65 64 20 61 75 74 6f  /93 Changed auto
7f10: 2d 65 78 65 63 20 73 6f 20 74 68 61 74 20 74 68  -exec so that th
7f20: 65 20 73 75 62 70 72 6f 63 65 73 73 20 67 65 74  e subprocess get
7f30: 73 20 73 74 64 69 6e 2c 20 73 74 64 6f 75 74 2c  s stdin, stdout,
7f40: 0a 61 6e 64 20 73 74 64 65 72 72 20 66 72 6f 6d  .and stderr from
7f50: 20 74 68 65 20 70 61 72 65 6e 74 2e 20 20 54 68   the parent.  Th
7f60: 69 73 20 61 6c 6c 6f 77 73 20 74 72 75 6c 79 20  is allows truly 
7f70: 69 6e 74 65 72 61 63 74 69 76 65 20 73 75 62 2d  interactive sub-
7f80: 70 72 6f 63 65 73 73 65 73 0a 28 65 2e 67 2e 20  processes.(e.g. 
7f90: 76 69 29 20 74 6f 20 62 65 20 61 75 74 6f 2d 65  vi) to be auto-e
7fa0: 78 65 63 27 65 64 20 66 72 6f 6d 20 61 20 74 63  xec'ed from a tc
7fb0: 6c 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20  l shell command 
7fc0: 6c 69 6e 65 2e 0a 0a 31 39 38 2e 20 36 2f 31 38  line...198. 6/18
7fd0: 2f 39 33 20 41 64 64 65 64 20 70 61 74 63 68 6c  /93 Added patchl
7fe0: 65 76 65 6c 2e 68 2c 20 66 6f 72 20 75 73 65 20  evel.h, for use 
7ff0: 69 6e 20 63 6f 6f 72 64 69 6e 61 74 69 6e 67 20  in coordinating 
8000: 66 75 74 75 72 65 20 70 61 74 63 68 0a 72 65 6c  future patch.rel
8010: 65 61 73 65 73 2c 20 61 6e 64 20 61 6c 73 6f 20  eases, and also 
8020: 61 64 64 65 64 20 22 69 6e 66 6f 20 70 61 74 63  added "info patc
8030: 68 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 20  hlevel" command 
8040: 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 61 74 63  to make the patc
8050: 68 0a 6c 65 76 65 6c 20 61 76 61 69 6c 61 62 6c  h.level availabl
8060: 65 20 74 6f 20 54 63 6c 20 73 63 72 69 70 74 73  e to Tcl scripts
8070: 2e 0a 0a 31 39 39 2e 20 36 2f 31 39 2f 39 33 20  ...199. 6/19/93 
8080: 4d 6f 64 69 66 69 65 64 20 22 67 6c 6f 62 22 20  Modified "glob" 
8090: 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20  command so that 
80a0: 61 20 6c 65 61 64 69 6e 67 20 22 2f 2f 22 20 69  a leading "//" i
80b0: 6e 20 61 20 6e 61 6d 65 0a 67 65 74 73 20 6c 65  n a name.gets le
80c0: 66 74 20 61 73 20 69 73 20 28 74 68 69 73 20 69  ft as is (this i
80d0: 73 20 6e 65 65 64 65 64 20 66 6f 72 20 73 79 73  s needed for sys
80e0: 74 65 6d 73 20 6c 69 6b 65 20 41 70 6f 6c 6c 6f  tems like Apollo
80f0: 73 20 77 68 65 72 65 20 22 2f 2f 22 20 69 73 0a  s where "//" is.
8100: 74 68 65 20 73 75 70 65 72 2d 72 6f 6f 74 3b 20  the super-root; 
8110: 20 54 63 6c 20 75 73 65 64 20 74 6f 20 63 6f 6c   Tcl used to col
8120: 6c 61 70 73 65 20 74 68 65 20 74 77 6f 20 73 6c  lapse the two sl
8130: 61 73 68 65 73 20 69 6e 74 6f 20 61 20 73 69 6e  ashes into a sin
8140: 67 6c 65 0a 73 6c 61 73 68 29 2e 0a 0a 32 30 30  gle.slash)...200
8150: 2e 20 37 2f 37 2f 39 33 20 41 64 64 65 64 20 54  . 7/7/93 Added T
8160: 63 6c 5f 53 65 74 52 65 63 75 72 73 69 6f 6e 4c  cl_SetRecursionL
8170: 69 6d 69 74 20 70 72 6f 63 65 64 75 72 65 20 73  imit procedure s
8180: 6f 20 74 68 61 74 20 74 68 65 20 6d 61 78 69 6d  o that the maxim
8190: 75 6d 0a 61 6c 6c 6f 77 61 62 6c 65 20 6e 65 73  um.allowable nes
81a0: 74 69 6e 67 20 64 65 70 74 68 20 63 61 6e 20 62  ting depth can b
81b0: 65 20 63 6f 6e 74 72 6f 6c 6c 65 64 20 66 6f 72  e controlled for
81c0: 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20   an interpreter 
81d0: 66 72 6f 6d 20 43 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d  from C...-------
81e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
81f0: 73 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 30 20  sed version 7.0 
8200: 42 65 74 61 20 31 2c 20 37 2f 39 2f 39 33 20 2d  Beta 1, 7/9/93 -
8210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
8220: 2d 0a 0a 32 30 31 2e 20 37 2f 31 32 2f 39 33 20  -..201. 7/12/93 
8230: 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f 47 65 74  Modified Tcl_Get
8240: 49 6e 74 20 61 6e 64 20 74 63 6c 45 78 70 72 2e  Int and tclExpr.
8250: 63 20 73 6f 20 74 68 61 74 20 66 75 6c 6c 2d 70  c so that full-p
8260: 72 65 63 69 73 69 6f 6e 0a 75 6e 73 69 67 6e 65  recision.unsigne
8270: 64 20 69 6e 74 65 67 65 72 73 20 63 61 6e 20 62  d integers can b
8280: 65 20 73 70 65 63 69 66 69 65 64 20 77 69 74 68  e specified with
8290: 6f 75 74 20 6f 76 65 72 66 6c 6f 77 20 65 72 72  out overflow err
82a0: 6f 72 73 2e 0a 0a 32 30 32 2e 20 37 2f 31 32 2f  ors...202. 7/12/
82b0: 39 33 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e  93 Configuration
82c0: 20 63 68 61 6e 67 65 73 3a 20 20 65 6c 69 6d 69   changes:  elimi
82d0: 6e 61 74 65 20 6c 65 61 64 69 6e 67 20 62 6c 61  nate leading bla
82e0: 6e 6b 20 6c 69 6e 65 20 69 6e 0a 63 6f 6e 66 69  nk line in.confi
82f0: 67 75 72 65 20 73 63 72 69 70 74 3b 20 20 70 72  gure script;  pr
8300: 6f 76 69 64 65 20 73 65 70 61 72 61 74 65 20 74  ovide separate t
8310: 61 72 67 65 74 73 20 69 6e 20 4d 61 6b 65 66 69  argets in Makefi
8320: 6c 65 20 66 6f 72 20 69 6e 73 74 61 6c 6c 69 6e  le for installin
8330: 67 0a 62 69 6e 61 72 79 20 61 6e 64 20 6e 6f 6e  g.binary and non
8340: 2d 62 69 6e 61 72 79 20 69 6e 66 6f 72 6d 61 74  -binary informat
8350: 69 6f 6e 3b 20 63 68 65 63 6b 20 66 6f 72 20 73  ion; check for s
8360: 69 7a 65 5f 74 20 61 6e 64 20 61 20 66 65 77 20  ize_t and a few 
8370: 6f 74 68 65 72 0a 70 6f 74 65 6e 74 69 61 6c 6c  other.potentiall
8380: 79 20 6d 69 73 73 69 6e 67 20 74 79 70 65 64 65  y missing typede
8390: 66 73 3b 20 64 6f 6e 27 74 20 70 75 74 20 74 63  fs; don't put tc
83a0: 6c 41 70 70 49 6e 69 74 2e 6f 20 69 6e 74 6f 20  lAppInit.o into 
83b0: 6c 69 62 74 63 6c 2e 61 3b 0a 62 65 74 74 65 72  libtcl.a;.better
83c0: 20 63 68 65 63 6b 73 20 66 6f 72 20 6d 61 74 68   checks for math
83d0: 65 72 72 20 73 75 70 70 6f 72 74 2e 0a 0a 32 30  err support...20
83e0: 33 2e 20 37 2f 31 34 2f 39 33 20 43 68 61 6e 67  3. 7/14/93 Chang
83f0: 65 64 20 74 63 6c 45 78 70 72 2e 63 20 74 6f 20  ed tclExpr.c to 
8400: 63 68 65 63 6b 20 74 68 65 20 74 65 72 6d 69 6e  check the termin
8410: 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 62 65  ation pointer be
8420: 66 6f 72 65 0a 65 72 72 6e 6f 20 61 66 74 65 72  fore.errno after
8430: 20 73 74 72 74 6f 64 20 63 61 6c 6c 73 2c 20 74   strtod calls, t
8440: 6f 20 61 76 6f 69 64 20 70 72 6f 62 6c 65 6d 73  o avoid problems
8450: 20 77 69 74 68 20 73 6f 6d 65 20 76 65 72 73 69   with some versi
8460: 6f 6e 73 20 6f 66 0a 73 74 72 74 6f 64 20 74 68  ons of.strtod th
8470: 61 74 20 73 65 74 20 65 72 72 6e 6f 20 69 6e 20  at set errno in 
8480: 75 6e 65 78 70 65 63 74 65 64 20 77 61 79 73 2e  unexpected ways.
8490: 0a 0a 32 30 34 2e 20 37 2f 31 36 2f 39 33 20 43  ..204. 7/16/93 C
84a0: 68 61 6e 67 65 64 20 22 73 63 61 6e 22 20 63 6f  hanged "scan" co
84b0: 6d 6d 61 6e 64 20 74 6f 20 62 65 20 6d 6f 72 65  mmand to be more
84c0: 20 41 4e 53 49 2d 63 6f 6e 66 6f 72 6d 61 6e 74   ANSI-conformant
84d0: 3a 0a 65 6c 69 6d 69 6e 61 74 65 64 20 25 46 2c  :.eliminated %F,
84e0: 20 25 44 2c 20 65 74 63 2e 2c 20 61 64 64 65 64   %D, etc., added
84f0: 20 63 6f 64 65 20 74 6f 20 69 67 6e 6f 72 65 20   code to ignore 
8500: 22 6c 22 2c 20 22 68 22 2c 20 61 6e 64 20 22 4c  "l", "h", and "L
8510: 22 0a 6d 6f 64 69 66 69 65 72 73 20 62 75 74 20  ".modifiers but 
8520: 61 6c 77 61 79 73 20 63 6f 6e 76 65 72 74 20 25  always convert %
8530: 65 2c 20 25 66 2c 20 61 6e 64 20 25 67 20 77 69  e, %f, and %g wi
8540: 74 68 20 69 6d 70 6c 69 63 69 74 20 22 6c 22 3b  th implicit "l";
8550: 0a 61 6c 73 6f 20 61 64 64 65 64 20 73 75 70 70  .also added supp
8560: 6f 72 74 20 66 6f 72 20 25 75 20 61 6e 64 20 25  ort for %u and %
8570: 69 2e 20 20 41 6c 73 6f 20 63 68 61 6e 67 65 64  i.  Also changed
8580: 20 22 66 6f 72 6d 61 74 22 20 63 6f 6d 6d 61 6e   "format" comman
8590: 64 0a 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20 25  d.to eliminate %
85a0: 44 2c 20 25 55 2c 20 25 4f 2c 20 61 6e 64 20 61  D, %U, %O, and a
85b0: 64 64 20 25 69 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  dd %i..*** POTEN
85c0: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
85d0: 4c 49 54 59 20 2a 2a 2a 0a 0a 32 30 35 2e 20 37  LITY ***..205. 7
85e0: 2f 31 37 2f 39 33 20 43 68 61 6e 67 65 64 20 22  /17/93 Changed "
85f0: 75 70 6c 65 76 65 6c 22 20 61 6e 64 20 22 75 70  uplevel" and "up
8600: 76 61 72 22 20 73 6f 20 74 68 61 74 20 74 68 65  var" so that the
8610: 79 20 63 61 6e 20 62 65 20 75 73 65 64 0a 66 72  y can be used.fr
8620: 6f 6d 20 67 6c 6f 62 61 6c 20 6c 65 76 65 6c 20  om global level 
8630: 74 6f 20 67 6c 6f 62 61 6c 20 6c 65 76 65 6c 3a  to global level:
8640: 20 20 74 68 69 73 20 75 73 65 64 20 74 6f 20 67    this used to g
8650: 65 6e 65 72 61 74 65 20 61 6e 20 65 72 72 6f 72  enerate an error
8660: 2e 0a 0a 32 30 36 2e 20 37 2f 31 39 2f 39 33 20  ...206. 7/19/93 
8670: 52 65 6e 61 6d 65 64 20 22 73 65 74 65 6e 76 22  Renamed "setenv"
8680: 2c 20 22 70 75 74 65 6e 76 22 2c 20 61 6e 64 20  , "putenv", and 
8690: 22 75 6e 73 65 74 65 6e 76 22 20 70 72 6f 63 65  "unsetenv" proce
86a0: 64 75 72 65 73 0a 74 6f 20 61 76 6f 69 64 20 63  dures.to avoid c
86b0: 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 73 79  onflicts with sy
86c0: 73 74 65 6d 20 70 72 6f 63 65 64 75 72 65 73 20  stem procedures 
86d0: 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 6e 61  with the same na
86e0: 6d 65 73 2e 20 20 49 66 0a 79 6f 75 20 77 61 6e  mes.  If.you wan
86f0: 74 20 54 63 6c 27 73 20 70 72 6f 63 65 64 75 72  t Tcl's procedur
8700: 65 73 20 74 6f 20 6f 76 65 72 72 69 64 65 20 74  es to override t
8710: 68 65 20 73 79 73 74 65 6d 20 70 72 6f 63 65 64  he system proced
8720: 75 72 65 73 2c 20 64 6f 20 69 74 0a 69 6e 20 74  ures, do it.in t
8730: 68 65 20 4d 61 6b 65 66 69 6c 65 20 28 69 6e 73  he Makefile (ins
8740: 74 72 75 63 74 69 6f 6e 73 20 61 72 65 20 69 6e  tructions are in
8750: 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 29 2e 0a   the Makefile)..
8760: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
8770: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
8780: 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  *..-------------
8790: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
87a0: 72 73 69 6f 6e 20 37 2e 30 20 42 65 74 61 20 32  rsion 7.0 Beta 2
87b0: 2c 20 37 2f 32 31 2f 39 33 20 2d 2d 2d 2d 2d 2d  , 7/21/93 ------
87c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 30  ------------..20
87d0: 37 2e 20 37 2f 32 31 2f 39 33 20 46 69 78 65 64  7. 7/21/93 Fixed
87e0: 20 62 75 67 20 69 6e 20 74 63 6c 56 61 72 2e 63   bug in tclVar.c
87f0: 20 77 68 65 72 65 20 66 72 65 65 64 20 6d 65 6d   where freed mem
8800: 6f 72 79 20 77 61 73 20 61 63 63 69 64 65 6e 74  ory was accident
8810: 61 6c 6c 79 0a 75 73 65 64 20 69 66 20 61 20 70  ally.used if a p
8820: 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e 65  rocedure returne
8830: 64 20 61 6e 20 65 6c 65 6d 65 6e 74 20 6f 66 20  d an element of 
8840: 61 20 6c 6f 63 61 6c 20 61 72 72 61 79 2e 0a 0a  a local array...
8850: 32 30 38 2e 20 37 2f 32 32 2f 39 33 20 46 69 78  208. 7/22/93 Fix
8860: 65 64 20 62 75 67 20 69 6e 20 22 75 6e 6b 6e 6f  ed bug in "unkno
8870: 77 6e 22 20 77 68 65 72 65 20 69 74 20 64 69 64  wn" where it did
8880: 6e 27 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e  n't properly han
8890: 64 6c 65 0a 65 72 72 6f 72 73 20 6f 63 63 75 72  dle.errors occur
88a0: 72 69 6e 67 20 69 6e 20 74 68 65 20 22 61 75 74  ring in the "aut
88b0: 6f 5f 6c 6f 61 64 22 20 70 72 6f 63 65 64 75 72  o_load" procedur
88c0: 65 2c 20 6c 65 61 76 69 6e 67 20 69 74 73 20 73  e, leaving its s
88d0: 74 61 74 65 0a 69 6e 63 6f 6e 73 69 73 74 65 6e  tate.inconsisten
88e0: 74 2e 0a 0a 32 30 39 2e 20 37 2f 32 33 2f 39 33  t...209. 7/23/93
88f0: 20 43 68 61 6e 67 65 64 20 65 78 65 63 27 73 20   Changed exec's 
8900: 22 3e 32 22 20 72 65 64 69 72 65 63 74 69 6f 6e  ">2" redirection
8910: 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 22 32 3e   operator to "2>
8920: 22 20 66 6f 72 0a 63 6f 6e 73 69 73 74 65 6e 63  " for.consistenc
8930: 79 20 77 69 74 68 20 73 68 2e 20 20 54 68 69 73  y with sh.  This
8940: 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c 65   is incompatible
8950: 20 77 69 74 68 20 65 61 72 6c 69 65 72 20 62 65   with earlier be
8960: 74 61 20 72 65 6c 65 61 73 65 73 0a 6f 66 20 37  ta releases.of 7
8970: 2e 30 20 62 75 74 20 6e 6f 74 20 77 69 74 68 20  .0 but not with 
8980: 70 72 65 2d 37 2e 30 20 72 65 6c 65 61 73 65 73  pre-7.0 releases
8990: 2c 20 77 68 69 63 68 20 64 69 64 6e 27 74 20 73  , which didn't s
89a0: 75 70 70 6f 72 74 20 65 69 74 68 65 72 0a 6f 70  upport either.op
89b0: 65 72 61 74 6f 72 2e 0a 0a 32 31 30 2e 20 37 2f  erator...210. 7/
89c0: 32 38 2f 39 33 20 43 68 61 6e 67 65 64 20 62 61  28/93 Changed ba
89d0: 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20  ckslash-newline 
89e0: 68 61 6e 64 6c 69 6e 67 20 73 6f 20 74 68 61 74  handling so that
89f0: 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 0a 73   the resulting.s
8a00: 70 61 63 65 20 63 68 61 72 61 63 74 65 72 20 2a  pace character *
8a10: 69 73 2a 20 74 72 65 61 74 65 64 20 61 73 20 61  is* treated as a
8a20: 20 77 6f 72 64 20 73 65 70 61 72 61 74 6f 72 20   word separator 
8a30: 75 6e 6c 65 73 73 20 74 68 65 20 62 61 63 6b 73  unless the backs
8a40: 6c 61 73 68 0a 73 65 71 75 65 6e 63 65 20 69 73  lash.sequence is
8a50: 20 69 6e 20 71 75 6f 74 65 73 20 6f 72 20 62 72   in quotes or br
8a60: 61 63 65 73 2e 20 20 54 68 69 73 20 69 73 20 69  aces.  This is i
8a70: 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68  ncompatible with
8a80: 20 37 2e 30 62 31 0a 61 6e 64 20 37 2e 30 62 32   7.0b1.and 7.0b2
8a90: 20 62 75 74 20 69 73 20 6d 6f 72 65 20 63 6f 6d   but is more com
8aa0: 70 61 74 69 62 6c 65 20 77 69 74 68 20 70 72 65  patible with pre
8ab0: 2d 37 2e 30 20 76 65 72 73 69 6f 6e 73 20 74 68  -7.0 versions th
8ac0: 61 74 20 74 68 65 20 62 31 0a 61 6e 64 20 62 32  at the b1.and b2
8ad0: 20 72 65 6c 65 61 73 65 73 20 77 65 72 65 2e 0a   releases were..
8ae0: 0a 32 31 31 2e 20 37 2f 32 38 2f 39 33 20 45 6c  .211. 7/28/93 El
8af0: 69 6d 69 6e 61 74 65 64 20 54 63 6c 5f 4c 69 6e  iminated Tcl_Lin
8b00: 6b 65 64 56 61 72 57 72 69 74 61 62 6c 65 2c 20  kedVarWritable, 
8b10: 61 64 64 65 64 20 54 43 4c 5f 4c 49 4e 4b 5f 52  added TCL_LINK_R
8b20: 45 41 44 5f 4f 4e 4c 59 20 74 6f 0a 54 63 6c 5f  EAD_ONLY to.Tcl_
8b30: 4c 69 6e 6b 56 61 72 20 74 6f 20 61 63 63 6f 6d  LinkVar to accom
8b40: 70 6c 69 73 68 20 73 61 6d 65 20 70 75 72 70 6f  plish same purpo
8b50: 73 65 2e 20 20 54 68 69 73 20 63 68 61 6e 67 65  se.  This change
8b60: 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c 65   is incompatible
8b70: 0a 77 69 74 68 20 65 61 72 6c 69 65 72 20 62 65  .with earlier be
8b80: 74 61 20 72 65 6c 65 61 73 65 73 2c 20 62 75 74  ta releases, but
8b90: 20 6e 6f 74 20 77 69 74 68 20 72 65 6c 65 61 73   not with releas
8ba0: 65 73 20 62 65 66 6f 72 65 20 54 63 6c 20 37 2e  es before Tcl 7.
8bb0: 30 2e 0a 0a 32 31 32 2e 20 37 2f 32 39 2f 39 33  0...212. 7/29/93
8bc0: 20 52 65 6e 61 6d 65 64 20 72 65 67 65 78 70 20   Renamed regexp 
8bd0: 43 20 66 75 6e 63 74 69 6f 6e 73 20 73 6f 20 74  C functions so t
8be0: 68 65 79 20 77 6f 6e 27 74 20 63 6c 61 73 68 20  hey won't clash 
8bf0: 77 69 74 68 20 50 4f 53 49 58 0a 72 65 67 65 78  with POSIX.regex
8c00: 70 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74  p functions that
8c10: 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 6e 61   use the same na
8c20: 6d 65 2e 0a 0a 32 31 33 2e 20 38 2f 33 2f 39 33  me...213. 8/3/93
8c30: 20 41 64 64 65 64 20 22 2d 65 72 72 6f 72 69 6e   Added "-errorin
8c40: 66 6f 22 20 61 6e 64 20 22 2d 65 72 72 6f 72 63  fo" and "-errorc
8c50: 6f 64 65 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20  ode" options to 
8c60: 22 72 65 74 75 72 6e 22 0a 63 6f 6d 6d 61 6e 64  "return".command
8c70: 3a 20 74 68 65 73 65 20 61 6c 6c 6f 77 20 66 6f  : these allow fo
8c80: 72 20 6d 75 63 68 20 62 65 74 74 65 72 20 68 61  r much better ha
8c90: 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20 65 72  ndling of the er
8ca0: 72 6f 72 49 6e 66 6f 0a 61 6e 64 20 65 72 72 6f  rorInfo.and erro
8cb0: 72 43 6f 64 65 20 76 61 72 69 61 62 6c 65 73 20  rCode variables 
8cc0: 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 2e 0a 0a  in some cases...
8cd0: 32 31 34 2e 20 38 2f 31 32 2f 39 33 20 43 68 61  214. 8/12/93 Cha
8ce0: 6e 67 65 64 20 22 65 78 70 72 22 20 73 6f 20 74  nged "expr" so t
8cf0: 68 61 74 20 25 20 61 6c 77 61 79 73 20 72 65 74  hat % always ret
8d00: 75 72 6e 73 20 61 20 72 65 6d 61 69 6e 64 65 72  urns a remainder
8d10: 20 77 69 74 68 0a 74 68 65 20 73 61 6d 65 20 73   with.the same s
8d20: 69 67 6e 20 61 73 20 74 68 65 20 64 69 76 69 73  ign as the divis
8d30: 6f 72 20 61 6e 64 20 61 62 73 6f 6c 75 74 65 20  or and absolute 
8d40: 76 61 6c 75 65 20 73 6d 61 6c 6c 65 72 20 74 68  value smaller th
8d50: 61 6e 20 74 68 65 0a 64 69 76 69 73 6f 72 2e 0a  an the.divisor..
8d60: 0a 32 31 35 2e 20 38 2f 31 34 2f 39 33 20 54 75  .215. 8/14/93 Tu
8d70: 72 6e 65 64 20 6f 66 66 20 61 75 74 6f 2d 65 78  rned off auto-ex
8d80: 65 63 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e 22 20  ec in "unknown" 
8d90: 75 6e 6c 65 73 73 20 74 68 65 20 63 6f 6d 6d 61  unless the comma
8da0: 6e 64 0a 77 61 73 20 74 79 70 65 64 20 69 6e 74  nd.was typed int
8db0: 65 72 61 63 74 69 76 65 6c 79 2e 20 20 54 68 69  eractively.  Thi
8dc0: 73 20 6d 65 61 6e 73 20 79 6f 75 20 6d 75 73 74  s means you must
8dd0: 20 75 73 65 20 22 65 78 65 63 22 20 77 68 65 6e   use "exec" when
8de0: 0a 69 6e 76 6f 6b 69 6e 67 20 73 75 62 70 72 6f  .invoking subpro
8df0: 63 65 73 73 65 73 2c 20 75 6e 6c 65 73 73 20 69  cesses, unless i
8e00: 74 27 73 20 61 20 63 6f 6d 6d 61 6e 64 20 74 68  t's a command th
8e10: 61 74 27 73 20 74 79 70 65 64 20 69 6e 74 65 72  at's typed inter
8e20: 61 63 74 69 76 65 6c 79 2e 0a 2a 2a 2a 20 50 4f  actively..*** PO
8e30: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
8e40: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 31 36  IBILITY ***..216
8e50: 2e 20 38 2f 31 34 2f 39 33 20 41 64 64 65 64 20  . 8/14/93 Added 
8e60: 73 75 70 70 6f 72 74 20 66 6f 72 20 74 63 6c 5f  support for tcl_
8e70: 70 72 6f 6d 70 74 31 20 61 6e 64 20 74 63 6c 5f  prompt1 and tcl_
8e80: 70 72 6f 6d 70 74 32 20 76 61 72 69 61 62 6c 65  prompt2 variable
8e90: 73 0a 74 6f 20 74 63 6c 4d 61 69 6e 2e 63 3a 20  s.to tclMain.c: 
8ea0: 20 6d 61 6b 65 73 20 70 72 6f 6d 70 74 73 20 75   makes prompts u
8eb0: 73 65 72 2d 73 65 74 74 61 62 6c 65 2e 0a 0a 32  ser-settable...2
8ec0: 31 37 2e 20 38 2f 31 34 2f 39 33 20 41 64 64 65  17. 8/14/93 Adde
8ed0: 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 68  d asynchronous h
8ee0: 61 6e 64 6c 65 72 73 20 28 54 63 6c 5f 41 73 79  andlers (Tcl_Asy
8ef0: 6e 63 43 72 65 61 74 65 20 65 74 63 2e 29 20 73  ncCreate etc.) s
8f00: 6f 0a 74 68 61 74 20 73 69 67 6e 61 6c 73 20 63  o.that signals c
8f10: 61 6e 20 62 65 20 74 61 6b 65 6e 20 63 6c 65 61  an be taken clea
8f20: 6e 6c 79 20 62 79 20 54 63 6c 20 61 70 70 6c 69  nly by Tcl appli
8f30: 63 61 74 69 6f 6e 73 2e 0a 0a 32 31 38 2e 20 38  cations...218. 8
8f40: 2f 31 36 2f 39 33 20 4d 6f 76 65 64 20 69 6e 66  /16/93 Moved inf
8f50: 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 6f  ormation about o
8f60: 70 65 6e 20 66 69 6c 65 73 20 66 72 6f 6d 20 74  pen files from t
8f70: 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 0a 73  he interpreter.s
8f80: 74 72 75 63 74 75 72 65 20 74 6f 20 67 6c 6f 62  tructure to glob
8f90: 61 6c 20 76 61 72 69 61 62 6c 65 73 20 73 6f 20  al variables so 
8fa0: 74 68 61 74 20 61 20 66 69 6c 65 20 63 61 6e 20  that a file can 
8fb0: 62 65 20 6f 70 65 6e 65 64 20 69 6e 20 6f 6e 65  be opened in one
8fc0: 0a 69 6e 74 65 72 70 72 65 74 65 72 20 61 6e 64  .interpreter and
8fd0: 20 72 65 61 64 20 6f 72 20 77 72 69 74 74 65 6e   read or written
8fe0: 20 69 6e 20 61 6e 6f 74 68 65 72 2e 0a 0a 32 31   in another...21
8ff0: 39 2e 20 38 2f 31 36 2f 39 33 20 52 65 6d 6f 76  9. 8/16/93 Remov
9000: 65 64 20 45 4e 56 5f 46 4c 41 47 53 20 66 72 6f  ed ENV_FLAGS fro
9010: 6d 20 4d 61 6b 65 66 69 6c 65 2c 20 73 6f 20 74  m Makefile, so t
9020: 68 61 74 20 74 68 65 72 65 27 73 20 6e 6f 0a 6f  hat there's no.o
9030: 66 66 69 63 69 61 6c 20 73 75 70 70 6f 72 74 20  fficial support 
9040: 66 6f 72 20 6f 76 65 72 72 69 64 69 6e 67 20 73  for overriding s
9050: 65 74 65 6e 76 2c 20 75 6e 73 65 74 65 6e 76 2c  etenv, unsetenv,
9060: 20 61 6e 64 20 70 75 74 65 6e 76 2e 0a 0a 32 32   and putenv...22
9070: 30 2e 20 38 2f 32 30 2f 39 33 20 56 61 72 69 6f  0. 8/20/93 Vario
9080: 75 73 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  us configuration
9090: 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 3a 20 20   improvements:  
90a0: 63 6f 65 72 63 65 20 63 68 61 72 73 0a 74 6f 20  coerce chars.to 
90b0: 75 6e 73 69 67 6e 65 64 20 63 68 61 72 73 20 62  unsigned chars b
90c0: 65 66 6f 72 65 20 75 73 69 6e 67 20 6d 61 63 72  efore using macr
90d0: 6f 73 20 6c 69 6b 65 20 69 73 73 70 61 63 65 3b  os like isspace;
90e0: 20 20 73 6f 75 72 63 65 20 7e 2f 2e 74 63 6c 73    source ~/.tcls
90f0: 68 72 63 0a 66 69 6c 65 20 64 75 72 69 6e 67 20  hrc.file during 
9100: 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 69  initialization i
9110: 66 20 69 74 20 65 78 69 73 74 73 20 61 6e 64 20  f it exists and 
9120: 70 72 6f 67 72 61 6d 20 69 73 20 72 75 6e 6e 69  program is runni
9130: 6e 67 0a 69 6e 74 65 72 61 63 74 69 76 65 6c 79  ng.interactively
9140: 3b 20 20 61 6c 6c 6f 77 20 74 68 65 72 65 20 74  ;  allow there t
9150: 6f 20 62 65 20 64 69 72 65 63 74 6f 72 69 65 73  o be directories
9160: 20 69 6e 20 61 75 74 6f 5f 70 61 74 68 20 74 68   in auto_path th
9170: 61 74 20 64 6f 6e 27 74 0a 65 78 69 73 74 20 6f  at don't.exist o
9180: 72 20 64 6f 6e 27 74 20 68 61 76 65 20 74 63 6c  r don't have tcl
9190: 49 6e 64 65 78 20 66 69 6c 65 73 20 28 69 67 6e  Index files (ign
91a0: 6f 72 65 20 74 68 65 6d 29 3b 20 61 64 64 65 64  ore them); added
91b0: 20 54 63 6c 5f 49 6e 69 74 0a 70 72 6f 63 65 64   Tcl_Init.proced
91c0: 75 72 65 20 61 6e 64 20 63 68 61 6e 67 65 64 20  ure and changed 
91d0: 54 63 6c 5f 41 70 70 49 6e 69 74 20 74 6f 20 63  Tcl_AppInit to c
91e0: 61 6c 6c 20 69 74 2e 0a 0a 32 32 31 2e 20 38 2f  all it...221. 8/
91f0: 32 31 2f 39 33 20 46 69 78 65 64 20 62 75 67 20  21/93 Fixed bug 
9200: 69 6e 20 65 78 70 72 20 77 68 65 72 65 20 22 2b  in expr where "+
9210: 22 2c 20 22 2d 22 2c 20 61 6e 64 20 22 20 22 20  ", "-", and " " 
9220: 77 65 72 65 20 61 6c 6c 0a 67 65 74 74 69 6e 67  were all.getting
9230: 20 74 72 65 61 74 65 64 20 61 73 20 69 6e 74 65   treated as inte
9240: 67 65 72 73 20 77 69 74 68 20 76 61 6c 75 65 20  gers with value 
9250: 30 2e 0a 0a 32 32 32 2e 20 38 2f 32 36 2f 39 33  0...222. 8/26/93
9260: 20 41 64 64 65 64 20 22 74 63 6c 5f 69 6e 74 65   Added "tcl_inte
9270: 72 61 63 74 69 76 65 22 20 76 61 72 69 61 62 6c  ractive" variabl
9280: 65 20 74 6f 20 74 63 6c 73 68 2e 0a 0a 32 32 33  e to tclsh...223
9290: 2e 20 38 2f 32 37 2f 39 33 20 41 64 64 65 64 20  . 8/27/93 Added 
92a0: 70 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 46 69  procedure Tcl_Fi
92b0: 6c 65 50 65 72 6d 69 73 73 69 6f 6e 73 20 74 6f  lePermissions to
92c0: 20 72 65 74 75 72 6e 20 77 68 65 74 68 65 72 20   return whether 
92d0: 61 0a 67 69 76 65 6e 20 66 69 6c 65 20 63 61 6e  a.given file can
92e0: 20 62 65 20 72 65 61 64 20 6f 72 20 77 72 69 74   be read or writ
92f0: 74 65 6e 20 6f 72 20 62 6f 74 68 2e 20 20 4d 6f  ten or both.  Mo
9300: 64 69 66 69 65 64 20 54 63 6c 5f 45 6e 74 65 72  dified Tcl_Enter
9310: 46 69 6c 65 0a 74 6f 20 74 61 6b 65 20 61 20 70  File.to take a p
9320: 65 72 6d 69 73 73 69 6f 6e 73 20 6d 61 73 6b 20  ermissions mask 
9330: 72 61 74 68 65 72 20 74 68 61 6e 20 73 65 70 61  rather than sepa
9340: 72 61 74 65 20 72 65 61 64 20 61 6e 64 20 77 72  rate read and wr
9350: 69 74 65 20 61 72 67 75 6d 65 6e 74 73 2e 0a 0a  ite arguments...
9360: 32 32 34 2e 20 38 2f 32 38 2f 39 33 20 46 69 78  224. 8/28/93 Fix
9370: 65 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62  ed performance b
9380: 75 67 20 69 6e 20 22 67 6c 6f 62 22 20 63 6f 6d  ug in "glob" com
9390: 6d 61 6e 64 20 28 75 6e 6e 65 63 65 73 73 61 72  mand (unnecessar
93a0: 79 20 63 61 6c 6c 0a 74 6f 20 22 61 63 63 65 73  y call.to "acces
93b0: 73 22 20 66 6f 72 20 65 61 63 68 20 66 69 6c 65  s" for each file
93c0: 20 63 61 75 73 65 64 20 61 20 35 2d 31 30 78 20   caused a 5-10x 
93d0: 73 6c 6f 77 2d 64 6f 77 6e 20 66 6f 72 20 62 69  slow-down for bi
93e0: 67 20 64 69 72 65 63 74 6f 72 69 65 73 29 2e 0a  g directories)..
93f0: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
9400: 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73  -- Released vers
9410: 69 6f 6e 20 37 2e 30 20 42 65 74 61 20 33 2c 20  ion 7.0 Beta 3, 
9420: 38 2f 32 38 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d  8/28/93 --------
9430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 32 35 2e  ----------..225.
9440: 20 39 2f 39 2f 39 33 20 52 65 6e 61 6d 65 64 20   9/9/93 Renamed 
9450: 72 65 67 65 78 70 2e 68 20 74 6f 20 74 63 6c 52  regexp.h to tclR
9460: 65 67 65 78 70 2e 68 20 74 6f 20 61 76 6f 69 64  egexp.h to avoid
9470: 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20   conflicts with 
9480: 73 79 73 74 65 6d 0a 69 6e 63 6c 75 64 65 20 66  system.include f
9490: 69 6c 65 20 62 79 20 73 61 6d 65 20 6e 61 6d 65  ile by same name
94a0: 2e 0a 0a 32 32 36 2e 20 39 2f 39 2f 39 33 20 41  ...226. 9/9/93 A
94b0: 64 64 65 64 20 54 63 6c 5f 44 6f 6e 74 43 61 6c  dded Tcl_DontCal
94c0: 6c 57 68 65 6e 44 65 6c 65 74 65 64 2e 0a 0a 32  lWhenDeleted...2
94d0: 32 37 2e 20 39 2f 31 36 2f 39 33 20 43 68 61 6e  27. 9/16/93 Chan
94e0: 67 65 64 20 6e 6f 74 20 74 6f 20 63 61 6c 6c 20  ged not to call 
94f0: 65 78 69 74 20 43 20 70 72 6f 63 65 64 75 72 65  exit C procedure
9500: 20 64 69 72 65 63 74 6c 79 3b 20 20 69 6e 73 74   directly;  inst
9510: 65 61 64 0a 61 6c 77 61 79 73 20 69 6e 76 6f 6b  ead.always invok
9520: 65 20 22 65 78 69 74 22 20 54 63 6c 20 63 6f 6d  e "exit" Tcl com
9530: 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 61 70 70  mand so that app
9540: 6c 69 63 61 74 69 6f 6e 20 63 61 6e 20 72 65 64  lication can red
9550: 65 66 69 6e 65 20 74 68 65 0a 63 6f 6d 6d 61 6e  efine the.comman
9560: 64 20 74 6f 20 64 6f 20 61 64 64 69 74 69 6f 6e  d to do addition
9570: 61 6c 20 63 6c 65 61 6e 75 70 2e 0a 0a 32 32 38  al cleanup...228
9580: 2e 20 39 2f 31 37 2f 39 33 20 43 68 61 6e 67 65  . 9/17/93 Change
9590: 64 20 61 75 74 6f 2d 65 78 65 63 20 74 6f 20 68  d auto-exec to h
95a0: 61 6e 64 6c 65 20 6e 61 6d 65 73 20 74 68 61 74  andle names that
95b0: 20 63 6f 6e 74 61 69 6e 20 73 6c 61 73 68 65 73   contain slashes
95c0: 0a 28 69 2e 65 2e 20 64 6f 6e 27 74 20 75 73 65  .(i.e. don't use
95d0: 20 50 41 54 48 20 66 6f 72 20 74 68 65 6d 29 2e   PATH for them).
95e0: 0a 0a 32 32 39 2e 20 39 2f 32 33 2f 39 33 20 46  ..229. 9/23/93 F
95f0: 69 78 65 64 20 62 75 67 20 69 6e 20 22 72 65 61  ixed bug in "rea
9600: 64 22 20 61 6e 64 20 22 67 65 74 73 22 20 63 6f  d" and "gets" co
9610: 6d 6d 61 6e 64 73 20 77 68 65 72 65 20 74 68 65  mmands where the
9620: 79 20 64 69 64 6e 27 74 0a 63 6c 65 61 72 20 45  y didn't.clear E
9630: 4f 46 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 0a 0a  OF conditions...
9640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
9650: 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69  - Released versi
9660: 6f 6e 20 37 2e 30 2c 20 39 2f 32 39 2f 39 33 20  on 7.0, 9/29/93 
9670: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
9680: 2d 2d 0a 0a 32 33 30 2e 20 31 30 2f 37 2f 39 33  --..230. 10/7/93
9690: 20 22 53 63 61 6e 22 20 63 6f 6d 6d 61 6e 64 20   "Scan" command 
96a0: 77 61 73 6e 27 74 20 70 72 6f 70 65 72 6c 79 20  wasn't properly 
96b0: 61 6c 69 67 6e 69 6e 67 20 74 68 69 6e 67 73 20  aligning things 
96c0: 69 6e 20 6d 65 6d 6f 72 79 2c 0a 73 6f 20 73 65  in memory,.so se
96d0: 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c 74  gmentation fault
96e0: 73 20 63 6f 75 6c 64 20 61 72 69 73 65 20 75 6e  s could arise un
96f0: 64 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73  der some circums
9700: 74 61 6e 63 65 73 2e 0a 0a 32 33 31 2e 20 31 30  tances...231. 10
9710: 2f 37 2f 39 33 20 46 69 78 65 64 20 62 75 67 20  /7/93 Fixed bug 
9720: 69 6e 20 54 63 6c 5f 43 6f 6e 76 65 72 74 45 6c  in Tcl_ConvertEl
9730: 65 6d 65 6e 74 20 77 68 65 72 65 20 69 74 20 66  ement where it f
9740: 6f 72 67 6f 74 20 74 6f 0a 62 61 63 6b 73 6c 61  orgot to.backsla
9750: 73 68 20 6c 65 61 64 69 6e 67 20 63 75 72 6c 79  sh leading curly
9760: 20 62 72 61 63 65 20 77 68 65 6e 20 63 72 65 61   brace when crea
9770: 74 69 6e 67 20 6c 69 73 74 73 2e 0a 0a 32 33 32  ting lists...232
9780: 2e 20 31 30 2f 37 2f 39 33 20 45 6c 69 6d 69 6e  . 10/7/93 Elimin
9790: 61 74 65 64 20 64 65 70 65 6e 64 65 6e 63 79 20  ated dependency 
97a0: 6f 66 20 74 63 6c 4d 61 69 6e 2e 63 20 6f 6e 20  of tclMain.c on 
97b0: 74 63 6c 49 6e 74 2e 68 20 61 6e 64 0a 74 63 6c  tclInt.h and.tcl
97c0: 55 6e 69 78 2e 68 2c 20 73 6f 20 74 68 61 74 20  Unix.h, so that 
97d0: 70 65 6f 70 6c 65 20 63 61 6e 20 63 6f 70 79 20  people can copy 
97e0: 74 68 65 20 66 69 6c 65 20 6f 75 74 20 6f 66 20  the file out of 
97f0: 74 68 65 20 54 63 6c 20 73 6f 75 72 63 65 0a 64  the Tcl source.d
9800: 69 72 65 63 74 6f 72 79 20 74 6f 20 6d 61 6b 65  irectory to make
9810: 20 6d 6f 64 69 66 69 65 64 20 70 72 69 76 61 74   modified privat
9820: 65 20 76 65 72 73 69 6f 6e 73 2e 0a 0a 32 33 33  e versions...233
9830: 2e 20 31 30 2f 38 2f 39 33 20 46 69 78 65 64 20  . 10/8/93 Fixed 
9840: 62 75 67 20 69 6e 20 61 75 74 6f 2d 6c 6f 61 64  bug in auto-load
9850: 65 72 20 74 68 61 74 20 72 65 76 65 72 73 65 64  er that reversed
9860: 20 74 68 65 20 70 72 69 6f 72 69 74 79 20 6f 72   the priority or
9870: 64 65 72 0a 6f 66 20 65 6e 74 72 69 65 73 20 69  der.of entries i
9880: 6e 20 61 75 74 6f 5f 70 61 74 68 20 66 6f 72 20  n auto_path for 
9890: 6e 65 77 2d 73 74 79 6c 65 20 69 6e 64 65 78 20  new-style index 
98a0: 66 69 6c 65 73 2e 20 20 4e 6f 77 20 74 68 69 6e  files.  Now thin
98b0: 67 73 20 61 72 65 0a 62 61 63 6b 20 74 6f 20 74  gs are.back to t
98c0: 68 65 20 77 61 79 20 74 68 65 79 20 77 65 72 65  he way they were
98d0: 20 62 65 66 6f 72 65 20 33 2e 30 3a 20 20 66 69   before 3.0:  fi
98e0: 72 73 74 20 69 6e 20 61 75 74 6f 5f 70 61 74 68  rst in auto_path
98f0: 20 69 73 20 61 6c 77 61 79 73 0a 68 69 67 68 65   is always.highe
9900: 73 74 20 70 72 69 6f 72 69 74 79 2e 0a 0a 32 33  st priority...23
9910: 34 2e 20 31 30 2f 31 33 2f 39 33 20 46 69 78 65  4. 10/13/93 Fixe
9920: 64 20 62 75 67 20 77 68 65 72 65 20 54 63 6c 5f  d bug where Tcl_
9930: 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65 74 65 20  CommandComplete 
9940: 64 69 64 6e 27 74 20 72 65 63 6f 67 6e 69 7a 65  didn't recognize
9950: 0a 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 74 72  .comments and tr
9960: 65 61 74 20 74 68 65 6d 20 61 73 20 73 75 63 68  eat them as such
9970: 2e 20 20 54 68 75 73 20 69 66 20 79 6f 75 20 74  .  Thus if you t
9980: 79 70 65 64 20 74 68 65 20 6c 69 6e 65 0a 20 20  yped the line.  
9990: 20 20 23 20 7b 0a 69 6e 74 65 72 61 63 74 69 76    # {.interactiv
99a0: 65 6c 79 2c 20 54 63 6c 20 77 6f 75 6c 64 20 74  ely, Tcl would t
99b0: 68 69 6e 6b 20 74 68 61 74 20 74 68 65 20 63 6f  hink that the co
99c0: 6d 6d 61 6e 64 20 77 61 73 6e 27 74 20 63 6f 6d  mmand wasn't com
99d0: 70 6c 65 74 65 20 61 6e 64 0a 77 61 69 74 20 66  plete and.wait f
99e0: 6f 72 20 6d 6f 72 65 20 69 6e 70 75 74 20 62 65  or more input be
99f0: 66 6f 72 65 20 65 76 61 6c 75 61 74 69 6e 67 20  fore evaluating 
9a00: 74 68 65 20 73 63 72 69 70 74 2e 0a 0a 32 33 35  the script...235
9a10: 2e 20 31 30 2f 31 34 2f 39 33 20 46 69 78 65 64  . 10/14/93 Fixed
9a20: 20 62 75 67 20 77 68 65 72 65 20 22 72 65 67 73   bug where "regs
9a30: 75 62 22 20 64 69 64 6e 27 74 20 73 65 74 20 74  ub" didn't set t
9a40: 68 65 20 6f 75 74 70 75 74 20 76 61 72 69 61 62  he output variab
9a50: 6c 65 0a 69 66 20 74 68 65 20 69 6e 70 75 74 20  le.if the input 
9a60: 73 74 72 69 6e 67 20 77 61 73 20 65 6d 70 74 79  string was empty
9a70: 2e 0a 0a 32 33 36 2e 20 31 30 2f 32 33 2f 39 33  ...236. 10/23/93
9a80: 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
9a90: 20 54 63 6c 5f 43 72 65 61 74 65 50 69 70 65 6c   Tcl_CreatePipel
9aa0: 69 6e 65 20 64 69 64 6e 27 74 20 63 6c 6f 73 65  ine didn't close
9ab0: 20 6f 66 66 20 65 6e 6f 75 67 68 0a 66 69 6c 65   off enough.file
9ac0: 20 64 65 73 63 72 69 70 74 6f 72 73 20 69 6e 20   descriptors in 
9ad0: 63 68 69 6c 64 20 70 72 6f 63 65 73 73 65 73 2c  child processes,
9ae0: 20 63 61 75 73 69 6e 67 20 63 68 69 6c 64 72 65   causing childre
9af0: 6e 20 6e 6f 74 20 74 6f 20 65 78 69 74 0a 70 72  n not to exit.pr
9b00: 6f 70 65 72 6c 79 20 69 6e 20 73 6f 6d 65 20 63  operly in some c
9b10: 61 73 65 73 2e 0a 0a 32 33 37 2e 20 31 30 2f 32  ases...237. 10/2
9b20: 38 2f 39 33 20 43 68 61 6e 67 65 64 20 22 6c 69  8/93 Changed "li
9b30: 73 74 22 20 61 6e 64 20 22 63 6f 6e 63 61 74 22  st" and "concat"
9b40: 20 63 6f 6d 6d 61 6e 64 73 20 6e 6f 74 20 74 6f   commands not to
9b50: 20 67 65 6e 65 72 61 74 65 0a 65 72 72 6f 72 73   generate.errors
9b60: 20 69 66 20 67 69 76 65 6e 20 7a 65 72 6f 20 61   if given zero a
9b70: 72 67 75 6d 65 6e 74 73 2c 20 62 75 74 20 69 6e  rguments, but in
9b80: 73 74 65 61 64 20 74 6f 20 6a 75 73 74 20 72 65  stead to just re
9b90: 74 75 72 6e 20 61 6e 20 65 6d 70 74 79 0a 73 74  turn an empty.st
9ba0: 72 69 6e 67 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  ring...---------
9bb0: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
9bc0: 64 20 76 65 72 73 69 6f 6e 20 37 2e 31 2c 20 31  d version 7.1, 1
9bd0: 31 2f 34 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  1/4/93 ---------
9be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4e 6f 74 65 3a  ---------..Note:
9bf0: 20 74 68 65 72 65 20 69 73 20 6e 6f 20 37 2e 32   there is no 7.2
9c00: 20 72 65 6c 65 61 73 65 2e 20 20 49 74 20 77 61   release.  It wa
9c10: 73 20 66 6c 61 77 65 64 20 61 6e 64 20 77 61 73  s flawed and was
9c20: 20 74 68 75 73 20 77 69 74 68 64 72 61 77 6e 0a   thus withdrawn.
9c30: 73 68 6f 72 74 6c 79 20 61 66 74 65 72 20 69 74  shortly after it
9c40: 20 77 61 73 20 72 65 6c 65 61 73 65 64 2e 0a 0a   was released...
9c50: 32 33 38 2e 20 31 31 2f 31 30 2f 39 33 20 54 63  238. 11/10/93 Tc
9c60: 6c 4d 61 69 6e 2e 63 20 64 69 64 6e 27 74 20 63  lMain.c didn't c
9c70: 6f 6d 70 69 6c 65 20 6f 6e 20 73 6f 6d 65 20 73  ompile on some s
9c80: 79 73 74 65 6d 73 20 62 65 63 61 75 73 65 20 6f  ystems because o
9c90: 66 0a 52 5f 4f 4b 20 69 6e 20 63 61 6c 6c 20 74  f.R_OK in call t
9ca0: 6f 20 22 61 63 63 65 73 73 22 2e 20 20 43 68 61  o "access".  Cha
9cb0: 6e 67 65 64 20 74 6f 20 65 6c 69 6d 69 6e 61 74  nged to eliminat
9cc0: 65 20 63 61 6c 6c 20 74 6f 20 22 61 63 63 65 73  e call to "acces
9cd0: 73 22 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  s"...-----------
9ce0: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
9cf0: 76 65 72 73 69 6f 6e 20 37 2e 33 2c 20 31 31 2f  version 7.3, 11/
9d00: 32 36 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  26/93 ----------
9d10: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 33 39 2e 20 31  --------..239. 1
9d20: 31 2f 36 2f 39 33 20 4d 6f 64 69 66 69 65 64 20  1/6/93 Modified 
9d30: 22 6c 69 6e 64 65 78 22 2c 20 22 6c 69 6e 73 65  "lindex", "linse
9d40: 72 74 22 2c 20 22 6c 72 61 6e 67 65 22 2c 20 61  rt", "lrange", a
9d50: 6e 64 20 22 6c 72 65 70 6c 61 63 65 22 0a 73 6f  nd "lreplace".so
9d60: 20 74 68 61 74 20 22 65 6e 64 22 20 63 61 6e 20   that "end" can 
9d70: 62 65 20 73 70 65 63 69 66 69 65 64 20 61 73 20  be specified as 
9d80: 61 6e 20 69 6e 64 65 78 2e 0a 0a 32 34 30 2e 20  an index...240. 
9d90: 31 31 2f 36 2f 39 33 20 4d 6f 64 69 66 69 65 64  11/6/93 Modified
9da0: 20 22 61 70 70 65 6e 64 22 20 61 6e 64 20 22 6c   "append" and "l
9db0: 61 70 70 65 6e 64 22 20 74 6f 20 61 6c 6c 6f 77  append" to allow
9dc0: 20 6f 6e 6c 79 20 74 77 6f 0a 77 6f 72 64 73 20   only two.words 
9dd0: 74 6f 74 61 6c 20 28 69 2e 65 2e 2c 20 6e 6f 74  total (i.e., not
9de0: 68 69 6e 67 20 74 6f 20 61 70 70 65 6e 64 29 20  hing to append) 
9df0: 77 69 74 68 6f 75 74 20 67 65 6e 65 72 61 74 69  without generati
9e00: 6e 67 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 32 34  ng an error...24
9e10: 31 2e 20 31 32 2f 32 2f 39 33 20 43 68 61 6e 67  1. 12/2/93 Chang
9e20: 65 64 20 74 6f 20 75 73 65 20 45 41 47 41 49 4e  ed to use EAGAIN
9e30: 20 61 73 20 74 68 65 20 65 72 72 6e 6f 20 66 6f   as the errno fo
9e40: 72 20 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 0a 49  r non-blocking.I
9e50: 2f 4f 20 69 6e 73 74 65 61 64 20 6f 66 20 45 57  /O instead of EW
9e60: 4f 55 4c 44 42 4c 4f 43 4b 3a 20 20 74 68 69 73  OULDBLOCK:  this
9e70: 20 73 68 6f 75 6c 64 20 66 69 78 20 70 72 6f 62   should fix prob
9e80: 6c 65 6d 20 77 68 65 72 65 20 6e 6f 6e 2d 62 6c  lem where non-bl
9e90: 6f 63 6b 69 6e 67 0a 49 2f 4f 20 64 69 64 6e 27  ocking.I/O didn'
9ea0: 74 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79  t work correctly
9eb0: 20 6f 6e 20 53 79 73 74 65 6d 2d 56 20 73 79 73   on System-V sys
9ec0: 74 65 6d 73 2e 0a 0a 32 34 32 2e 20 31 32 2f 32  tems...242. 12/2
9ed0: 32 2f 39 33 20 46 69 78 65 64 20 62 75 67 20 69  2/93 Fixed bug i
9ee0: 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68  n expressions wh
9ef0: 65 72 65 20 63 61 6e 63 65 6c 6c 65 64 20 65 76  ere cancelled ev
9f00: 61 6c 75 61 74 69 6f 6e 0a 77 61 73 6e 27 74 20  aluation.wasn't 
9f10: 61 6c 77 61 79 73 20 77 6f 72 6b 69 6e 67 20 63  always working c
9f20: 6f 72 72 65 63 74 6c 79 20 28 65 2e 67 2e 20 22  orrectly (e.g. "
9f30: 73 65 74 20 6f 6e 65 20 31 3b 20 65 76 61 6c 20  set one 1; eval 
9f40: 7b 31 20 7c 7c 20 31 2f 24 6f 6e 65 7d 22 0a 66  {1 || 1/$one}".f
9f50: 61 69 6c 65 64 20 77 69 74 68 20 61 20 64 69 76  ailed with a div
9f60: 69 64 65 20 62 79 20 7a 65 72 6f 20 65 72 72 6f  ide by zero erro
9f70: 72 29 2e 0a 0a 32 34 33 2e 20 31 2f 36 2f 39 34  r)...243. 1/6/94
9f80: 20 43 68 61 6e 67 65 64 20 54 43 4c 5f 56 4f 4c   Changed TCL_VOL
9f90: 41 54 49 4c 45 20 64 65 66 69 6e 69 74 69 6f 6e  ATILE definition
9fa0: 20 66 72 6f 6d 20 2d 31 20 74 6f 20 74 68 65 20   from -1 to the 
9fb0: 61 64 64 72 65 73 73 20 6f 66 0a 61 20 64 75 6d  address of.a dum
9fc0: 6d 79 20 70 72 6f 63 65 64 75 72 65 20 54 63 6c  my procedure Tcl
9fd0: 5f 56 6f 6c 61 74 69 6c 65 2c 20 73 69 6e 63 65  _Volatile, since
9fe0: 20 2d 31 20 63 61 75 73 65 73 20 70 6f 72 74 61   -1 causes porta
9ff0: 62 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73 20  bility problems 
a000: 6f 6e 0a 73 6f 6d 65 20 6d 61 63 68 69 6e 65 73  on.some machines
a010: 20 28 65 2e 67 2e 2c 20 43 72 61 79 73 29 2e 0a   (e.g., Crays)..
a020: 0a 32 34 34 2e 20 32 2f 34 2f 39 34 20 41 64 64  .244. 2/4/94 Add
a030: 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 75  ed support for u
a040: 6e 61 72 79 20 70 6c 75 73 2e 0a 0a 32 34 35 2e  nary plus...245.
a050: 20 32 2f 31 37 2f 39 34 20 43 68 61 6e 67 65 64   2/17/94 Changed
a060: 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45 76   Tcl_RecordAndEv
a070: 61 6c 20 61 6e 64 20 22 68 69 73 74 6f 72 79 22  al and "history"
a080: 20 63 6f 6d 6d 61 6e 64 20 74 6f 0a 63 61 6c 6c   command to.call
a090: 20 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c 20   Tcl_GlobalEval 
a0a0: 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f 45  instead of Tcl_E
a0b0: 76 61 6c 2e 20 20 4f 74 68 65 72 77 69 73 65 2c  val.  Otherwise,
a0c0: 20 69 6e 76 6f 63 61 74 69 6f 6e 20 6f 66 0a 74   invocation of.t
a0d0: 68 65 73 65 20 66 61 63 69 6c 69 74 69 65 73 20  hese facilities 
a0e0: 69 6e 20 6e 65 73 74 65 64 20 70 72 6f 63 65 64  in nested proced
a0f0: 75 72 65 73 20 63 61 6e 20 63 61 75 73 65 20 75  ures can cause u
a100: 6e 77 61 6e 74 65 64 20 72 65 73 75 6c 74 73 2e  nwanted results.
a110: 0a 0a 32 34 36 2e 20 32 2f 31 37 2f 39 34 20 46  ..246. 2/17/94 F
a120: 69 78 65 64 20 62 75 67 20 69 6e 20 74 63 6c 45  ixed bug in tclE
a130: 78 70 72 2e 63 20 77 68 65 72 65 20 61 6e 20 65  xpr.c where an e
a140: 78 70 72 65 73 73 69 6f 6e 20 73 75 63 68 20 61  xpression such a
a150: 73 0a 22 65 78 70 72 20 7b 22 31 32 33 39 38 37  s."expr {"123987
a160: 31 32 39 33 38 37 38 38 32 33 34 2d 31 32 39 38  12938788234-1298
a170: 33 37 39 22 20 21 3d 20 22 22 7d 22 20 74 72 69  379" != ""}" tri
a180: 67 67 65 72 73 20 61 6e 20 69 6e 74 65 67 65 72  ggers an integer
a190: 0a 6f 76 65 72 66 6c 6f 77 20 65 72 72 6f 72 20  .overflow error 
a1a0: 66 6f 72 20 74 68 65 20 6e 75 6d 62 65 72 20 69  for the number i
a1b0: 6e 20 71 75 6f 74 65 73 2c 20 65 76 65 6e 20 74  n quotes, even t
a1c0: 68 6f 75 67 68 20 69 74 20 69 73 6e 27 74 20 72  hough it isn't r
a1d0: 65 61 6c 6c 79 0a 61 20 70 72 6f 70 65 72 20 69  eally.a proper i
a1e0: 6e 74 65 67 65 72 20 61 6e 79 77 61 79 2e 0a 0a  nteger anyway...
a1f0: 32 34 37 2e 20 32 2f 31 39 2f 39 34 20 41 64 64  247. 2/19/94 Add
a200: 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65  ed new procedure
a210: 20 54 63 6c 5f 44 53 74 72 69 6e 67 47 65 74 52   Tcl_DStringGetR
a220: 65 73 75 6c 74 20 74 6f 20 6d 6f 76 65 20 72 65  esult to move re
a230: 73 75 6c 74 0a 66 72 6f 6d 20 69 6e 74 65 72 70  sult.from interp
a240: 72 65 74 65 72 20 74 6f 20 61 20 64 79 6e 61 6d  reter to a dynam
a250: 69 63 20 73 74 72 69 6e 67 2e 0a 0a 32 34 38 2e  ic string...248.
a260: 20 32 2f 31 39 2f 39 34 20 46 69 78 65 64 20 62   2/19/94 Fixed b
a270: 75 67 20 69 6e 20 54 63 6c 5f 44 53 74 72 69 6e  ug in Tcl_DStrin
a280: 67 52 65 73 75 6c 74 20 74 68 61 74 20 63 61 75  gResult that cau
a290: 73 65 64 20 69 74 20 74 6f 20 6f 76 65 72 77 72  sed it to overwr
a2a0: 69 74 65 0a 74 68 65 20 63 6f 6e 74 65 6e 74 73  ite.the contents
a2b0: 20 6f 66 20 61 20 73 74 61 74 69 63 20 72 65 73   of a static res
a2c0: 75 6c 74 20 69 6e 20 73 6f 6d 65 20 73 69 74 75  ult in some situ
a2d0: 61 74 69 6f 6e 73 2e 20 20 54 68 69 73 20 63 61  ations.  This ca
a2e0: 6e 20 63 61 75 73 65 0a 62 69 7a 61 72 72 65 20  n cause.bizarre 
a2f0: 65 72 72 6f 72 73 20 73 75 63 68 20 61 73 20 76  errors such as v
a300: 61 72 69 61 62 6c 65 73 20 73 75 64 64 65 6e 6c  ariables suddenl
a310: 79 20 68 61 76 69 6e 67 20 65 6d 70 74 79 20 76  y having empty v
a320: 61 6c 75 65 73 2e 0a 0a 32 34 39 2e 20 32 2f 32  alues...249. 2/2
a330: 31 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69  1/94 Fixed bug i
a340: 6e 20 54 63 6c 5f 41 70 70 65 6e 64 45 6c 65 6d  n Tcl_AppendElem
a350: 65 6e 74 2c 20 54 63 6c 5f 44 53 74 72 69 6e 67  ent, Tcl_DString
a360: 41 70 70 65 6e 64 45 6c 65 6d 65 6e 74 2c 0a 61  AppendElement,.a
a370: 6e 64 20 74 68 65 20 22 6c 61 70 70 65 6e 64 22  nd the "lappend"
a380: 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20 63 61   command that ca
a390: 75 73 65 64 20 69 6d 70 72 6f 70 65 72 20 6f 6d  used improper om
a3a0: 69 73 73 69 6f 6e 20 6f 66 20 61 20 73 65 70 61  ission of a sepa
a3b0: 72 61 74 6f 72 0a 73 70 61 63 65 20 69 6e 20 73  rator.space in s
a3c0: 6f 6d 65 20 63 61 73 65 73 2e 20 20 46 6f 72 20  ome cases.  For 
a3d0: 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 73 63 72  example, the scr
a3e0: 69 70 74 0a 20 20 20 20 73 65 74 20 78 20 22 61  ipt.    set x "a
a3f0: 62 63 7b 22 3b 20 6c 61 70 70 65 6e 64 20 78 20  bc{"; lappend x 
a400: 22 64 65 66 22 0a 75 73 65 64 20 74 6f 20 72 65  "def".used to re
a410: 74 75 72 6e 20 74 68 65 20 72 65 73 75 6c 74 20  turn the result 
a420: 22 61 62 63 7b 64 65 66 22 20 69 6e 73 74 65 61  "abc{def" instea
a430: 64 20 6f 66 20 22 61 62 63 7b 20 64 65 66 22 2e  d of "abc{ def".
a440: 0a 0a 32 35 30 2e 20 33 2f 33 2f 39 34 20 54 63  ..250. 3/3/94 Tc
a450: 6c 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74  l_ConvertElement
a460: 20 77 61 73 20 6f 75 74 70 75 74 74 69 6e 67 20   was outputting 
a470: 65 6d 70 74 79 20 65 6c 65 6d 65 6e 74 73 20 61  empty elements a
a480: 73 20 5c 30 20 69 66 0a 54 43 4c 5f 44 4f 4e 54  s \0 if.TCL_DONT
a490: 5f 55 53 45 5f 42 52 41 43 45 53 20 77 61 73 20  _USE_BRACES was 
a4a0: 73 65 74 2e 20 20 54 68 69 73 20 64 65 70 65 6e  set.  This depen
a4b0: 64 73 20 6f 6e 20 6f 6c 64 20 70 72 65 2d 37 2e  ds on old pre-7.
a4c0: 30 20 6d 65 61 6e 69 6e 67 20 6f 66 0a 5c 30 2c  0 meaning of.\0,
a4d0: 20 77 68 69 63 68 20 69 73 20 6e 6f 20 6c 6f 6e   which is no lon
a4e0: 67 65 72 20 69 6e 20 65 66 66 65 63 74 2c 20 73  ger in effect, s
a4f0: 6f 20 69 74 20 64 69 64 6e 27 74 20 72 65 61 6c  o it didn't real
a500: 6c 79 20 77 6f 72 6b 2e 20 20 43 68 61 6e 67 65  ly work.  Change
a510: 64 0a 74 6f 20 6f 75 74 70 75 74 20 65 6d 70 74  d.to output empt
a520: 79 20 65 6c 65 6d 65 6e 74 73 20 61 73 20 7b 7d  y elements as {}
a530: 20 61 6c 77 61 79 73 2e 0a 0a 32 35 31 2e 20 33   always...251. 3
a540: 2f 33 2f 39 34 20 52 65 6e 61 6d 65 64 20 54 63  /3/94 Renamed Tc
a550: 6c 5f 44 53 74 72 69 6e 67 54 72 75 6e 63 20 74  l_DStringTrunc t
a560: 6f 20 54 63 6c 5f 44 53 74 72 69 6e 67 53 65 74  o Tcl_DStringSet
a570: 4c 65 6e 67 74 68 20 61 6e 64 20 65 78 74 65 6e  Length and exten
a580: 64 65 64 0a 69 74 20 73 6f 20 74 68 61 74 20 69  ded.it so that i
a590: 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f  t can be used to
a5a0: 20 6c 65 6e 67 74 68 65 6e 20 61 20 73 74 72 69   lengthen a stri
a5b0: 6e 67 20 61 73 20 77 65 6c 6c 20 61 73 20 73 68  ng as well as sh
a5c0: 6f 72 74 65 6e 20 69 74 2e 0a 54 63 6c 5f 44 53  orten it..Tcl_DS
a5d0: 74 72 69 6e 67 54 72 75 6e 63 20 69 73 20 64 65  tringTrunc is de
a5e0: 66 69 6e 65 64 20 61 73 20 61 20 6d 61 63 72 6f  fined as a macro
a5f0: 20 66 6f 72 20 62 61 63 6b 77 61 72 64 20 63 6f   for backward co
a600: 6d 70 61 74 69 62 69 6c 69 74 79 2c 20 62 75 74  mpatibility, but
a610: 0a 69 74 20 69 73 20 64 65 70 72 65 63 61 74 65  .it is deprecate
a620: 64 2e 0a 0a 32 35 32 2e 20 33 2f 33 2f 39 34 20  d...252. 3/3/94 
a630: 41 64 64 65 64 20 54 63 6c 5f 41 6c 6c 6f 77 45  Added Tcl_AllowE
a640: 78 63 65 70 74 69 6f 6e 73 20 70 72 6f 63 65 64  xceptions proced
a650: 75 72 65 2e 0a 0a 32 35 33 2e 20 33 2f 31 33 2f  ure...253. 3/13/
a660: 39 34 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  94 Fixed bug in 
a670: 54 63 6c 5f 46 6f 72 6d 61 74 43 6d 64 20 74 68  Tcl_FormatCmd th
a680: 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65 20 22  at could cause "
a690: 66 6f 72 6d 61 74 22 0a 74 6f 20 6d 69 73 2d 62  format".to mis-b
a6a0: 65 68 61 76 65 20 6f 6e 20 36 34 2d 62 69 74 20  ehave on 64-bit 
a6b0: 42 69 67 2d 45 6e 64 69 61 6e 20 6d 61 63 68 69  Big-Endian machi
a6c0: 6e 65 73 2e 0a 0a 32 35 34 2e 20 33 2f 31 33 2f  nes...254. 3/13/
a6d0: 39 34 20 43 68 61 6e 67 65 64 20 74 6f 20 75 73  94 Changed to us
a6e0: 65 20 76 66 6f 72 6b 20 69 6e 73 74 65 61 64 20  e vfork instead 
a6f0: 6f 66 20 66 6f 72 6b 20 6f 6e 20 73 79 73 74 65  of fork on syste
a700: 6d 73 20 77 68 65 72 65 0a 76 66 6f 72 6b 20 65  ms where.vfork e
a710: 78 69 73 74 73 2e 0a 0a 32 35 35 2e 20 33 2f 32  xists...255. 3/2
a720: 33 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69  3/94 Fixed bug i
a730: 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77 68  n expressions wh
a740: 65 72 65 20 3f 3a 20 64 69 64 6e 27 74 20 61 73  ere ?: didn't as
a750: 73 6f 63 69 61 74 65 0a 72 69 67 68 74 2d 74 6f  sociate.right-to
a760: 2d 6c 65 66 74 20 61 73 20 74 68 65 79 20 73 68  -left as they sh
a770: 6f 75 6c 64 2e 0a 0a 32 35 36 2e 20 34 2f 33 2f  ould...256. 4/3/
a780: 39 34 20 46 69 78 65 64 20 22 65 78 65 63 22 20  94 Fixed "exec" 
a790: 74 6f 20 66 6c 75 73 68 20 61 6e 79 20 66 69 6c  to flush any fil
a7a0: 65 73 20 75 73 65 64 20 69 6e 20 3e 40 20 6f 72  es used in >@ or
a7b0: 20 3e 26 40 0a 72 65 64 69 72 65 63 74 69 6f 6e   >&@.redirection
a7c0: 20 69 6e 20 65 78 65 63 2c 20 73 6f 20 74 68 61   in exec, so tha
a7d0: 74 20 64 61 74 61 20 62 75 66 66 65 72 65 64 20  t data buffered 
a7e0: 66 6f 72 20 74 68 65 6d 20 69 73 20 77 72 69 74  for them is writ
a7f0: 74 65 6e 0a 62 65 66 6f 72 65 20 61 6e 79 20 6e  ten.before any n
a800: 65 77 20 64 61 74 61 20 61 64 64 65 64 20 62 79  ew data added by
a810: 20 74 68 65 20 73 75 62 70 72 6f 63 65 73 73 2e   the subprocess.
a820: 0a 0a 32 35 37 2e 20 34 2f 33 2f 39 34 20 41 64  ..257. 4/3/94 Ad
a830: 64 65 64 20 22 73 75 62 73 74 22 20 63 6f 6d 6d  ded "subst" comm
a840: 61 6e 64 2e 0a 0a 32 35 38 2e 20 35 2f 32 30 2f  and...258. 5/20/
a850: 39 34 20 54 68 65 20 74 63 6c 73 68 20 6d 61 69  94 The tclsh mai
a860: 6e 20 70 72 6f 67 72 61 6d 20 69 73 20 6e 6f 77  n program is now
a870: 20 63 61 6c 6c 65 64 20 54 63 6c 5f 4d 61 69 6e   called Tcl_Main
a880: 3b 20 20 74 63 6c 41 70 70 49 6e 69 74 2e 63 0a  ;  tclAppInit.c.
a890: 68 61 73 20 61 20 22 6d 61 69 6e 22 20 70 72 6f  has a "main" pro
a8a0: 63 65 64 75 72 65 20 74 68 61 74 20 63 61 6c 6c  cedure that call
a8b0: 73 20 54 63 6c 5f 4d 61 69 6e 2e 20 20 54 68 69  s Tcl_Main.  Thi
a8c0: 73 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65  s makes it easie
a8d0: 72 20 74 6f 20 75 73 65 0a 54 63 6c 20 77 69 74  r to use.Tcl wit
a8e0: 68 20 43 2b 2b 20 70 72 6f 67 72 61 6d 73 2c 20  h C++ programs, 
a8f0: 77 68 69 63 68 20 6e 65 65 64 20 74 68 65 69 72  which need their
a900: 20 6f 77 6e 20 6d 61 69 6e 20 70 72 6f 67 72 61   own main progra
a910: 6d 73 2c 20 61 6e 64 20 69 74 20 61 6c 73 6f 0a  ms, and it also.
a920: 61 6c 6c 6f 77 73 20 61 6e 20 61 70 70 6c 69 63  allows an applic
a930: 61 74 69 6f 6e 20 74 6f 20 70 72 65 66 69 6c 74  ation to prefilt
a940: 65 72 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20  er the argument 
a950: 6c 69 73 74 20 62 65 66 6f 72 65 20 63 61 6c 6c  list before call
a960: 69 6e 67 0a 54 63 6c 5f 4d 61 69 6e 2e 0a 2a 2a  ing.Tcl_Main..**
a970: 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
a980: 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a  MPATIBILITY ***.
a990: 0a 32 35 39 2e 20 36 2f 36 2f 39 34 20 46 69 78  .259. 6/6/94 Fix
a9a0: 65 64 20 62 75 67 20 69 6e 20 70 72 6f 63 65 64  ed bug in proced
a9b0: 75 72 65 20 72 65 74 75 72 6e 73 20 77 68 65 72  ure returns wher
a9c0: 65 20 74 68 65 20 65 72 72 6f 72 49 6e 66 6f 20  e the errorInfo 
a9d0: 76 61 72 69 61 62 6c 65 0a 63 6f 75 6c 64 20 67  variable.could g
a9e0: 65 74 20 74 72 75 6e 63 61 74 65 64 20 69 66 20  et truncated if 
a9f0: 61 6e 20 75 6e 73 65 74 20 74 72 61 63 65 20 77  an unset trace w
aa00: 61 73 20 69 6e 76 6f 6b 65 64 20 61 73 20 70 61  as invoked as pa
aa10: 72 74 20 6f 66 20 72 65 74 75 72 6e 69 6e 67 0a  rt of returning.
aa20: 66 72 6f 6d 20 74 68 65 20 70 72 6f 63 65 64 75  from the procedu
aa30: 72 65 2e 0a 0a 32 36 30 2e 20 36 2f 31 33 2f 39  re...260. 6/13/9
aa40: 34 20 41 64 64 65 64 20 22 77 6f 72 64 73 74 61  4 Added "wordsta
aa50: 72 74 22 20 61 6e 64 20 22 77 6f 72 64 65 6e 64  rt" and "wordend
aa60: 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 73 74  " options to "st
aa70: 72 69 6e 67 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a  ring" command...
aa80: 32 36 31 2e 20 36 2f 32 37 2f 39 34 20 46 69 78  261. 6/27/94 Fix
aa90: 65 64 20 62 75 67 20 69 6e 20 65 78 70 72 65 73  ed bug in expres
aaa0: 73 69 6f 6e 73 20 77 68 65 72 65 20 74 68 65 79  sions where they
aab0: 20 64 69 64 6e 27 74 20 70 72 6f 70 65 72 6c 79   didn't properly
aac0: 20 63 61 6e 63 65 6c 0a 74 68 65 20 65 76 61 6c   cancel.the eval
aad0: 75 61 74 69 6f 6e 20 6f 66 20 6d 61 74 68 20 66  uation of math f
aae0: 75 6e 63 74 69 6f 6e 73 20 69 6e 20 26 26 2c 20  unctions in &&, 
aaf0: 7c 7c 2c 20 61 6e 64 20 3f 3a 2e 0a 0a 32 36 32  ||, and ?:...262
ab00: 2e 20 37 2f 31 31 2f 39 34 20 49 6e 63 6f 72 72  . 7/11/94 Incorr
ab10: 65 63 74 20 62 6f 6f 6c 65 61 6e 20 76 61 6c 75  ect boolean valu
ab20: 65 73 2c 20 6c 69 6b 65 20 22 6f 67 6c 65 22 2c  es, like "ogle",
ab30: 20 77 65 72 65 6e 27 74 20 62 65 69 6e 67 0a 68   weren't being.h
ab40: 61 6e 64 6c 65 64 20 70 72 6f 70 65 72 6c 79 2e  andled properly.
ab50: 0a 0a 32 36 33 2e 20 37 2f 31 35 2f 39 34 20 41  ..263. 7/15/94 A
ab60: 64 64 65 64 20 54 63 6c 5f 52 65 67 45 78 70 43  dded Tcl_RegExpC
ab70: 6f 6d 70 69 6c 65 2c 20 54 63 6c 5f 52 65 67 45  ompile, Tcl_RegE
ab80: 78 70 45 78 65 63 2c 20 61 6e 64 20 54 63 6c 5f  xpExec, and Tcl_
ab90: 52 65 67 45 78 70 52 61 6e 67 65 2c 0a 77 68 69  RegExpRange,.whi
aba0: 63 68 20 70 72 6f 76 69 64 65 20 6c 6f 77 65 72  ch provide lower
abb0: 2d 6c 65 76 65 6c 20 61 63 63 65 73 73 20 74 6f  -level access to
abc0: 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
abd0: 69 6f 6e 20 70 61 74 74 65 72 6e 20 6d 61 74 63  ion pattern matc
abe0: 68 69 6e 67 2e 0a 0a 32 36 34 2e 20 37 2f 32 32  hing...264. 7/22
abf0: 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69 6e  /94 Fixed bug in
ac00: 20 22 67 6c 6f 62 22 20 63 6f 6d 6d 61 6e 64 20   "glob" command 
ac10: 77 68 65 72 65 20 22 67 6c 6f 62 20 2d 6e 6f 63  where "glob -noc
ac20: 6f 6d 70 6c 61 69 6e 20 7e 62 61 64 5f 75 73 65  omplain ~bad_use
ac30: 72 22 0a 77 6f 75 6c 64 20 63 6f 6d 70 6c 61 69  r".would complai
ac40: 6e 20 61 62 6f 75 74 20 61 20 6d 69 73 73 69 6e  n about a missin
ac50: 67 20 75 73 65 72 2e 20 20 4e 6f 77 20 69 74 20  g user.  Now it 
ac60: 64 6f 65 73 6e 27 74 20 63 6f 6d 70 6c 61 69 6e  doesn't complain
ac70: 20 61 6e 79 6d 6f 72 65 2e 0a 0a 32 36 35 2e 20   anymore...265. 
ac80: 38 2f 34 2f 39 34 20 46 69 78 65 64 20 62 75 67  8/4/94 Fixed bug
ac90: 20 77 69 74 68 20 6c 69 6e 6b 65 64 20 76 61 72   with linked var
aca0: 69 61 62 6c 65 73 20 77 68 65 72 65 20 74 68 65  iables where the
acb0: 79 20 64 69 64 6e 27 74 20 62 65 68 61 76 65 0a  y didn't behave.
acc0: 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e 20 61  correctly when a
acd0: 63 63 65 73 73 65 64 20 76 69 61 20 75 70 76 61  ccessed via upva
ace0: 72 73 2e 0a 0a 32 36 36 2e 20 38 2f 31 37 2f 39  rs...266. 8/17/9
acf0: 34 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54  4 Fixed bug in T
ad00: 63 6c 5f 45 76 61 6c 46 69 6c 65 20 77 68 65 72  cl_EvalFile wher
ad10: 65 20 69 74 20 64 69 64 6e 27 74 20 63 6c 65 61  e it didn't clea
ad20: 72 20 69 6e 74 65 72 70 2d 3e 72 65 73 75 6c 74  r interp->result
ad30: 2e 0a 0a 32 36 37 2e 20 38 2f 33 31 2f 39 34 20  ...267. 8/31/94 
ad40: 4d 6f 64 69 66 69 65 64 20 22 6f 70 65 6e 22 20  Modified "open" 
ad50: 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20  command so that 
ad60: 65 72 72 6f 72 73 20 69 6e 20 65 78 65 63 2d 69  errors in exec-i
ad70: 6e 67 0a 73 75 62 70 72 6f 63 65 73 73 65 73 20  ng.subprocesses 
ad80: 61 72 65 20 72 65 74 75 72 6e 65 64 20 62 79 20  are returned by 
ad90: 74 68 65 20 6f 70 65 6e 20 69 6d 6d 65 64 69 61  the open immedia
ada0: 74 65 6c 79 2c 20 72 61 74 68 65 72 20 74 68 61  tely, rather tha
adb0: 6e 0a 62 65 69 6e 67 20 64 65 6c 61 79 65 64 20  n.being delayed 
adc0: 75 6e 74 69 6c 20 74 68 65 20 22 63 6c 6f 73 65  until the "close
add0: 22 20 69 73 20 65 78 65 63 75 74 65 64 2e 0a 0a  " is executed...
ade0: 32 36 38 2e 20 39 2f 39 2f 39 34 20 4d 6f 64 69  268. 9/9/94 Modi
adf0: 66 69 65 64 20 22 65 78 70 72 22 20 63 6f 6d 6d  fied "expr" comm
ae00: 61 6e 64 20 74 6f 20 67 65 6e 65 72 61 74 65 20  and to generate 
ae10: 65 72 72 6f 72 73 20 66 6f 72 20 69 6e 74 65 67  errors for integ
ae20: 65 72 0a 6f 76 65 72 66 6c 6f 77 20 28 69 6e 63  er.overflow (inc
ae30: 6c 75 64 65 73 20 61 64 64 69 74 69 6f 6e 2c 20  ludes addition, 
ae40: 73 75 62 74 72 61 63 74 69 6f 6e 2c 20 6e 65 67  subtraction, neg
ae50: 61 74 69 6f 6e 2c 20 6d 75 6c 74 69 70 6c 69 63  ation, multiplic
ae60: 61 74 69 6f 6e 2c 0a 64 69 76 69 73 69 6f 6e 29  ation,.division)
ae70: 2e 0a 0a 32 36 39 2e 20 39 2f 32 33 2f 39 34 20  ...269. 9/23/94 
ae80: 4d 6f 64 69 66 69 65 64 20 22 72 65 67 73 75 62  Modified "regsub
ae90: 22 20 74 6f 20 72 65 74 75 72 6e 20 61 20 63 6f  " to return a co
aea0: 75 6e 74 20 6f 66 20 74 68 65 20 6e 75 6d 62 65  unt of the numbe
aeb0: 72 20 6f 66 0a 6d 61 74 63 68 65 73 20 61 6e 64  r of.matches and
aec0: 20 72 65 70 6c 61 63 65 6d 65 6e 74 73 2c 20 72   replacements, r
aed0: 61 74 68 65 72 20 74 68 61 6e 20 30 2f 31 2e 0a  ather than 0/1..
aee0: 0a 32 37 39 2e 20 31 30 2f 34 2f 39 34 20 41 64  .279. 10/4/94 Ad
aef0: 64 65 64 20 6e 65 77 20 66 65 61 74 75 72 65 73  ded new features
af00: 20 74 6f 20 22 61 72 72 61 79 22 20 63 6f 6d 6d   to "array" comm
af10: 61 6e 64 3a 0a 20 20 20 20 2d 20 61 64 64 65 64  and:.    - added
af20: 20 22 67 65 74 22 20 61 6e 64 20 22 73 65 74 22   "get" and "set"
af30: 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 65 61   commands for ea
af40: 73 79 20 63 6f 6e 76 65 72 73 69 6f 6e 20 62 65  sy conversion be
af50: 74 77 65 65 6e 20 61 72 72 61 79 73 0a 20 20 20  tween arrays.   
af60: 20 20 20 61 6e 64 20 6c 69 73 74 73 2e 0a 20 20     and lists..  
af70: 20 20 2d 20 61 64 64 65 64 20 22 65 78 69 73 74    - added "exist
af80: 73 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73 65  s" command to se
af90: 65 20 69 66 20 61 20 76 61 72 69 61 62 6c 65 20  e if a variable 
afa0: 69 73 20 61 6e 20 61 72 72 61 79 2c 20 63 68 61  is an array, cha
afb0: 6e 67 65 64 0a 20 20 20 20 20 20 22 6e 61 6d 65  nged.      "name
afc0: 73 22 20 61 6e 64 20 22 73 69 7a 65 22 20 63 6f  s" and "size" co
afd0: 6d 6d 61 6e 64 73 20 74 6f 20 74 72 65 61 74 20  mmands to treat 
afe0: 61 20 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20 61  a non-existent a
aff0: 72 72 61 79 20 28 6f 72 20 73 63 61 6c 61 72 0a  rray (or scalar.
b000: 20 20 20 20 20 20 76 61 72 69 61 62 6c 65 29 20        variable) 
b010: 6a 75 73 74 20 6c 69 6b 65 20 61 6e 20 65 6d 70  just like an emp
b020: 74 79 20 6f 6e 65 2e 0a 20 20 20 20 2d 20 61 64  ty one..    - ad
b030: 64 65 64 20 70 61 74 74 65 72 6e 20 6f 70 74 69  ded pattern opti
b040: 6f 6e 20 74 6f 20 22 6e 61 6d 65 73 22 20 63 6f  on to "names" co
b050: 6d 6d 61 6e 64 2e 0a 0a 32 38 30 2e 20 31 30 2f  mmand...280. 10/
b060: 36 2f 39 34 20 4d 6f 64 69 66 69 65 64 20 54 63  6/94 Modified Tc
b070: 6c 5f 53 65 74 56 61 72 32 20 73 6f 20 74 68 61  l_SetVar2 so tha
b080: 74 20 72 65 61 64 20 74 72 61 63 65 73 20 6f 6e  t read traces on
b090: 20 76 61 72 69 61 62 6c 65 73 20 67 65 74 0a 63   variables get.c
b0a0: 61 6c 6c 65 64 20 64 75 72 69 6e 67 20 61 70 70  alled during app
b0b0: 65 6e 64 20 6f 70 65 72 61 74 69 6f 6e 73 2e 0a  end operations..
b0c0: 0a 32 38 31 2e 20 31 30 2f 32 30 2f 39 34 20 46  .281. 10/20/94 F
b0d0: 69 78 65 64 20 62 75 67 20 69 6e 20 22 72 65 61  ixed bug in "rea
b0e0: 64 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72 65  d" command where
b0f0: 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 73 74   reading from st
b100: 64 69 6e 0a 72 65 71 75 69 72 65 64 20 74 77 6f  din.required two
b110: 20 63 6f 6e 74 72 6f 6c 2d 44 27 73 20 74 6f 20   control-D's to 
b120: 73 74 6f 70 20 74 68 65 20 72 65 61 64 69 6e 67  stop the reading
b130: 2e 0a 0a 32 38 32 2e 20 31 31 2f 33 2f 39 34 20  ...282. 11/3/94 
b140: 43 68 61 6e 67 65 64 20 22 65 78 70 72 22 20 63  Changed "expr" c
b150: 6f 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 6c 6f  ommand to use lo
b160: 6e 67 73 20 66 6f 72 20 64 69 76 69 73 69 6f 6e  ngs for division
b170: 20 6a 75 73 74 20 6c 69 6b 65 0a 61 6c 6c 20 6f   just like.all o
b180: 74 68 65 72 20 65 78 70 72 20 6f 70 65 72 61 74  ther expr operat
b190: 6f 72 73 3b 20 20 69 74 20 70 72 65 76 69 6f 75  ors;  it previou
b1a0: 73 6c 79 20 75 73 65 64 20 69 6e 74 73 20 66 6f  sly used ints fo
b1b0: 72 20 64 69 76 69 73 69 6f 6e 2e 0a 0a 32 38 33  r division...283
b1c0: 2e 20 31 31 2f 34 2f 39 34 20 46 69 78 65 64 20  . 11/4/94 Fixed 
b1d0: 62 75 67 73 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e  bugs in "unknown
b1e0: 22 20 70 72 6f 63 65 64 75 72 65 3a 20 20 69 74  " procedure:  it
b1f0: 20 77 61 73 6e 27 74 20 70 72 6f 70 65 72 6c 79   wasn't properly
b200: 0a 68 61 6e 64 6c 69 6e 67 20 65 78 63 65 70 74  .handling except
b210: 69 6f 6e 20 72 65 74 75 72 6e 73 20 66 72 6f 6d  ion returns from
b220: 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 77   commands that w
b230: 65 72 65 20 65 78 65 63 75 74 65 64 20 61 66 74  ere executed aft
b240: 65 72 0a 62 65 69 6e 67 20 61 75 74 6f 2d 6c 6f  er.being auto-lo
b250: 61 64 65 64 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  aded...---------
b260: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
b270: 64 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 31 2c  d version 7.4b1,
b280: 20 31 32 2f 32 33 2f 39 34 20 2d 2d 2d 2d 2d 2d   12/23/94 ------
b290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 38  ------------..28
b2a0: 34 2e 20 31 32 2f 32 36 2f 39 34 20 46 69 78 65  4. 12/26/94 Fixe
b2b0: 64 20 22 69 6e 73 74 61 6c 6c 22 20 74 61 72 67  d "install" targ
b2c0: 65 74 20 69 6e 20 4d 61 6b 65 66 69 6c 65 20 28  et in Makefile (
b2d0: 63 6f 75 6c 64 6e 27 74 20 61 6c 77 61 79 73 0a  couldn't always.
b2e0: 66 69 6e 64 20 69 6e 73 74 61 6c 6c 20 70 72 6f  find install pro
b2f0: 67 72 61 6d 29 2e 0a 0a 32 38 35 2e 20 31 32 2f  gram)...285. 12/
b300: 32 36 2f 39 34 20 41 64 64 65 64 20 73 74 72 63  26/94 Added strc
b310: 6e 63 61 73 65 63 6d 70 20 70 72 6f 63 65 64 75  ncasecmp procedu
b320: 72 65 20 74 6f 20 63 6f 6d 70 61 74 20 64 69 72  re to compat dir
b330: 65 63 74 6f 72 79 2e 0a 0a 32 38 36 2e 20 31 2f  ectory...286. 1/
b340: 33 2f 39 35 20 46 69 78 65 64 20 61 6c 6c 20 70  3/95 Fixed all p
b350: 72 6f 63 65 64 75 72 65 20 63 61 6c 6c 73 20 74  rocedure calls t
b360: 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 63 61 73  o explicitly cas
b370: 74 20 61 72 67 75 6d 65 6e 74 73 3a 0a 69 6d 70  t arguments:.imp
b380: 6c 69 63 69 74 20 63 6f 6e 76 65 72 73 69 6f 6e  licit conversion
b390: 73 20 66 72 6f 6d 20 70 72 6f 74 6f 74 79 70 65  s from prototype
b3a0: 73 20 28 65 73 70 65 63 69 61 6c 6c 79 20 69 6e  s (especially in
b3b0: 74 65 67 65 72 2d 3e 64 6f 75 62 6c 65 29 0a 64  teger->double).d
b3c0: 6f 6e 27 74 20 77 6f 72 6b 20 77 68 65 6e 20 63  on't work when c
b3d0: 6f 6d 70 69 6c 69 6e 67 20 75 6e 64 65 72 20 6e  ompiling under n
b3e0: 6f 6e 2d 41 4e 53 49 20 63 6f 6d 70 69 6c 65 72  on-ANSI compiler
b3f0: 73 2e 20 20 54 63 6c 20 69 73 20 6e 6f 77 20 63  s.  Tcl is now c
b400: 6c 65 61 6e 0a 75 6e 64 65 72 20 67 63 63 20 2d  lean.under gcc -
b410: 57 63 6f 6e 76 65 72 73 69 6f 6e 2e 0a 0a 32 38  Wconversion...28
b420: 37 2e 20 31 2f 34 2f 39 35 20 46 69 78 65 64 20  7. 1/4/95 Fixed 
b430: 70 72 6f 62 6c 65 6d 20 69 6e 20 54 63 6c 5f 41  problem in Tcl_A
b440: 72 72 61 79 43 6d 64 20 77 68 65 72 65 20 73 61  rrayCmd where sa
b450: 6d 65 20 6e 61 6d 65 20 77 61 73 20 75 73 65 64  me name was used
b460: 20 66 6f 72 0a 62 6f 74 68 20 61 20 6c 61 62 65   for.both a labe
b470: 6c 20 61 6e 64 20 61 20 76 61 72 69 61 62 6c 65  l and a variable
b480: 3b 20 20 63 61 75 73 65 64 20 70 72 6f 62 6c 65  ;  caused proble
b490: 6d 73 20 6f 6e 20 73 65 76 65 72 61 6c 20 6f 6c  ms on several ol
b4a0: 64 65 72 20 63 6f 6d 70 69 6c 65 72 73 2c 0a 6d  der compilers,.m
b4b0: 61 6b 69 6e 67 20 61 72 72 61 79 20 63 6f 6d 6d  aking array comm
b4c0: 61 6e 64 20 6d 69 73 62 65 68 61 76 65 20 61 6e  and misbehave an
b4d0: 64 20 63 61 75 73 69 6e 67 20 6d 61 6e 79 20 65  d causing many e
b4e0: 72 72 6f 72 73 20 69 6e 20 54 63 6c 20 74 65 73  rrors in Tcl tes
b4f0: 74 20 73 75 69 74 65 2e 0a 0a 2d 2d 2d 2d 2d 2d  t suite...------
b500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
b510: 61 73 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 34  ased version 7.4
b520: 62 32 2c 20 31 2f 31 32 2f 39 35 20 2d 2d 2d 2d  b2, 1/12/95 ----
b530: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
b540: 32 38 38 2e 20 32 2f 39 2f 39 35 20 4d 6f 64 69  288. 2/9/95 Modi
b550: 66 69 65 64 20 54 63 6c 5f 43 72 65 61 74 65 43  fied Tcl_CreateC
b560: 6f 6d 6d 61 6e 64 20 74 6f 20 72 65 74 75 72 6e  ommand to return
b570: 20 61 20 74 6f 6b 65 6e 2c 20 61 6e 64 20 61 64   a token, and ad
b580: 64 65 64 0a 54 63 6c 5f 47 65 74 43 6f 6d 6d 61  ded.Tcl_GetComma
b590: 6e 64 4e 61 6d 65 20 70 72 6f 63 65 64 75 72 65  ndName procedure
b5a0: 2e 20 20 54 6f 67 65 74 68 65 72 2c 20 74 68 65  .  Together, the
b5b0: 73 65 20 70 72 6f 63 65 64 75 72 65 73 20 6d 61  se procedures ma
b5c0: 6b 65 20 69 74 20 70 6f 73 73 69 62 6c 65 0a 74  ke it possible.t
b5d0: 6f 20 74 72 61 63 6b 20 72 65 6e 61 6d 65 73 20  o track renames 
b5e0: 6f 66 20 61 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 32  of a command...2
b5f0: 38 39 2e 20 32 2f 31 33 2f 39 35 20 46 69 78 65  89. 2/13/95 Fixe
b600: 64 20 62 75 67 20 69 6e 20 65 78 70 72 20 77 68  d bug in expr wh
b610: 65 72 65 20 22 30 38 39 22 20 77 61 73 20 69 6e  ere "089" was in
b620: 74 65 72 70 72 65 74 65 64 20 61 73 20 61 0a 66  terpreted as a.f
b630: 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6e 75  loating-point nu
b640: 6d 62 65 72 20 72 61 74 68 65 72 20 74 68 61 6e  mber rather than
b650: 20 61 20 62 6f 67 75 73 20 6f 63 74 61 6c 20 6e   a bogus octal n
b660: 75 6d 62 65 72 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  umber..*** POTEN
b670: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
b680: 4c 49 54 59 20 2a 2a 2a 0a 0a 32 39 30 2e 20 32  LITY ***..290. 2
b690: 2f 31 34 2f 39 35 20 41 64 64 65 64 20 63 6f 64  /14/95 Added cod
b6a0: 65 20 74 6f 20 54 63 6c 5f 47 65 74 49 6e 74 20  e to Tcl_GetInt 
b6b0: 61 6e 64 20 54 63 6c 5f 47 65 74 44 6f 75 62 6c  and Tcl_GetDoubl
b6c0: 65 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 0a 6f  e to check for.o
b6d0: 76 65 72 66 6c 6f 77 73 20 77 68 65 6e 20 72 65  verflows when re
b6e0: 61 64 69 6e 67 20 69 6e 20 6e 75 6d 62 65 72 73  ading in numbers
b6f0: 2e 0a 0a 32 39 31 2e 20 32 2f 31 38 2f 39 35 20  ...291. 2/18/95 
b700: 43 68 61 6e 67 65 64 20 22 61 72 72 61 79 20 73  Changed "array s
b710: 65 74 22 20 74 6f 20 73 74 6f 70 20 61 66 74 65  et" to stop afte
b720: 72 20 66 69 72 73 74 20 65 72 72 6f 72 2c 20 72  r first error, r
b730: 61 74 68 65 72 20 74 68 61 6e 0a 63 6f 6e 74 69  ather than.conti
b740: 6e 75 69 6e 67 20 61 66 74 65 72 20 65 72 72 6f  nuing after erro
b750: 72 2e 0a 0a 32 39 32 2e 20 32 2f 32 30 2f 39 35  r...292. 2/20/95
b760: 20 55 70 67 72 61 64 65 64 20 74 6f 20 75 73 65   Upgraded to use
b770: 20 61 75 74 6f 63 6f 6e 66 20 76 65 72 73 69 6f   autoconf versio
b780: 6e 20 32 2e 32 2e 0a 0a 32 39 33 2e 20 32 2f 32  n 2.2...293. 2/2
b790: 30 2f 39 35 20 46 69 78 65 64 20 63 6f 72 65 20  0/95 Fixed core 
b7a0: 64 75 6d 70 20 74 68 61 74 20 63 6f 75 6c 64 20  dump that could 
b7b0: 6f 63 63 75 72 20 69 6e 20 22 73 63 61 6e 22 20  occur in "scan" 
b7c0: 63 6f 6d 6d 61 6e 64 20 69 66 20 61 0a 63 6c 6f  command if a.clo
b7d0: 73 65 20 62 72 61 63 6b 65 74 20 77 61 73 20 6f  se bracket was o
b7e0: 6d 69 74 74 65 64 2e 0a 0a 32 39 34 2e 20 32 2f  mitted...294. 2/
b7f0: 32 37 2f 39 35 20 43 68 61 6e 67 65 64 20 4d 61  27/95 Changed Ma
b800: 6b 65 66 69 6c 65 20 74 6f 20 61 6c 77 61 79 73  kefile to always
b810: 20 75 73 65 20 69 6e 73 74 61 6c 6c 2d 73 68 20   use install-sh 
b820: 66 6f 72 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e  for installation
b830: 73 3a 0a 74 68 65 72 65 27 73 20 6a 75 73 74 20  s:.there's just 
b840: 74 6f 6f 20 6d 75 63 68 20 76 61 72 69 61 74 69  too much variati
b850: 6f 6e 20 61 6d 6f 6e 67 20 22 69 6e 73 74 61 6c  on among "instal
b860: 6c 22 20 73 79 73 74 65 6d 20 70 72 6f 67 72 61  l" system progra
b870: 6d 73 2c 20 77 68 69 63 68 0a 6d 61 6b 65 73 20  ms, which.makes 
b880: 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 6c 61  installation fla
b890: 6b 65 79 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  key...----------
b8a0: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
b8b0: 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 33 2c 20   version 7.4b3, 
b8c0: 33 2f 32 34 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d  3/24/95 --------
b8d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 32 35  ----------..3/25
b8e0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43 68  /95 (bug fix) Ch
b8f0: 61 6e 67 65 64 20 22 69 6e 73 74 61 6c 6c 22 20  anged "install" 
b900: 74 6f 20 22 2e 2f 69 6e 73 74 61 6c 6c 22 20 69  to "./install" i
b910: 6e 20 4d 61 6b 65 66 69 6c 65 20 73 6f 20 74 68  n Makefile so th
b920: 61 74 0a 22 6d 61 6b 65 20 69 6e 73 74 61 6c 6c  at."make install
b930: 22 20 77 69 6c 6c 20 77 6f 72 6b 20 65 76 65 6e  " will work even
b940: 20 77 68 65 6e 20 22 2e 22 20 69 73 6e 27 74 20   when "." isn't 
b950: 69 6e 20 74 68 65 20 73 65 61 72 63 68 20 70 61  in the search pa
b960: 74 68 2e 0a 0a 33 2f 32 39 2f 39 35 20 28 62 75  th...3/29/95 (bu
b970: 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
b980: 20 77 68 65 72 65 20 74 68 65 20 61 75 74 6f 2d   where the auto-
b990: 6c 6f 61 64 69 6e 67 20 6d 65 63 68 61 6e 69 73  loading mechanis
b9a0: 6d 20 77 61 73 6e 27 74 0a 70 72 6f 74 65 63 74  m wasn't.protect
b9b0: 69 6e 67 20 74 68 65 20 76 61 6c 75 65 73 20 6f  ing the values o
b9c0: 66 20 74 68 65 20 65 72 72 6f 72 43 6f 64 65 20  f the errorCode 
b9d0: 61 6e 64 20 65 72 72 6f 72 49 6e 66 6f 20 76 61  and errorInfo va
b9e0: 72 69 61 62 6c 65 73 2e 0a 0a 33 2f 32 39 2f 39  riables...3/29/9
b9f0: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
ba00: 41 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 70  Added optional p
ba10: 61 74 74 65 72 6e 20 61 72 67 75 6d 65 6e 74 20  attern argument 
ba20: 74 6f 20 22 70 61 72 72 61 79 22 20 70 72 6f 63  to "parray" proc
ba30: 65 64 75 72 65 2e 0a 0a 33 2f 32 39 2f 39 35 20  edure...3/29/95 
ba40: 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20 74  (bug fix) Made t
ba50: 68 65 20 66 75 6c 6c 20 66 75 6e 63 74 69 6f 6e  he full function
ba60: 61 6c 69 74 79 20 6f 66 0a 20 20 20 20 22 72 65  ality of.    "re
ba70: 74 75 72 6e 20 2d 63 6f 64 65 20 2e 2e 2e 20 2d  turn -code ... -
ba80: 65 72 72 6f 72 63 6f 64 65 20 2e 2e 2e 22 0a 77  errorcode ...".w
ba90: 6f 72 6b 20 6e 6f 74 20 6a 75 73 74 20 69 6e 73  ork not just ins
baa0: 69 64 65 20 70 72 6f 63 65 64 75 72 65 73 2c 20  ide procedures, 
bab0: 62 75 74 20 61 6c 73 6f 20 69 6e 20 73 6f 75 72  but also in sour
bac0: 63 65 64 20 66 69 6c 65 73 20 61 6e 64 20 61 74  ced files and at
bad0: 0a 74 6f 70 20 6c 65 76 65 6c 2e 0a 0a 34 2f 36  .top level...4/6
bae0: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
baf0: 29 20 41 64 64 65 64 20 22 70 61 74 74 65 72 6e  ) Added "pattern
bb00: 22 20 6f 70 74 69 6f 6e 20 74 6f 20 22 61 72 72  " option to "arr
bb10: 61 79 20 6e 61 6d 65 73 22 20 63 6f 6d 6d 61 6e  ay names" comman
bb20: 64 2e 0a 0a 34 2f 31 38 2f 39 35 20 28 62 75 67  d...4/18/95 (bug
bb30: 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
bb40: 69 6e 20 70 61 72 73 65 72 20 77 68 65 72 65 20  in parser where 
bb50: 69 74 20 64 69 64 6e 27 74 20 61 6c 6c 6f 77 20  it didn't allow 
bb60: 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e  backslash-newlin
bb70: 65 0a 69 6d 6d 65 64 69 61 74 65 6c 79 20 61 66  e.immediately af
bb80: 74 65 72 20 61 6e 20 61 72 67 75 6d 65 6e 74 20  ter an argument 
bb90: 69 6e 20 62 72 61 63 65 73 20 6f 72 20 71 75 6f  in braces or quo
bba0: 74 65 73 2e 0a 0a 34 2f 31 39 2f 39 35 20 28 6e  tes...4/19/95 (n
bbb0: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
bbc0: 64 20 74 63 6c 5f 6c 69 62 72 61 72 79 20 76 61  d tcl_library va
bbd0: 72 69 61 62 6c 65 2c 20 77 68 69 63 68 20 61 70  riable, which ap
bbe0: 70 6c 69 63 61 74 69 6f 6e 20 63 61 6e 0a 73 65  plication can.se
bbf0: 74 20 74 6f 20 6f 76 65 72 72 69 64 65 20 64 65  t to override de
bc00: 66 61 75 6c 74 20 6c 69 62 72 61 72 79 20 64 69  fault library di
bc10: 72 65 63 74 6f 72 79 2e 0a 0a 34 2f 33 30 2f 39  rectory...4/30/9
bc20: 35 20 28 62 75 67 20 66 69 78 29 20 44 75 72 69  5 (bug fix) Duri
bc30: 6e 67 20 74 72 61 63 65 20 63 61 6c 6c 62 61 63  ng trace callbac
bc40: 6b 73 20 66 6f 72 20 61 72 72 61 79 20 65 6c 65  ks for array ele
bc50: 6d 65 6e 74 73 2c 20 74 68 65 20 76 61 72 69 61  ments, the varia
bc60: 62 6c 65 0a 6e 61 6d 65 20 75 73 65 64 20 69 6e  ble.name used in
bc70: 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 72 65   the original re
bc80: 66 65 72 65 6e 63 65 20 77 6f 75 6c 64 20 62 65  ference would be
bc90: 20 74 65 6d 70 6f 72 61 72 69 6c 79 20 6d 6f 64   temporarily mod
bca0: 69 66 69 65 64 20 74 6f 0a 73 65 70 61 72 61 74  ified to.separat
bcb0: 65 20 74 68 65 20 61 72 72 61 79 20 6e 61 6d 65  e the array name
bcc0: 20 61 6e 64 20 65 6c 65 6d 65 6e 74 20 6e 61 6d   and element nam
bcd0: 65 3b 20 20 69 66 20 74 68 65 20 74 72 61 63 65  e;  if the trace
bce0: 20 63 61 6c 6c 62 61 63 6b 20 75 73 65 64 0a 74   callback used.t
bcf0: 68 65 20 73 61 6d 65 20 6e 61 6d 65 20 73 74 72  he same name str
bd00: 69 6e 67 2c 20 69 74 20 77 6f 75 6c 64 20 67 65  ing, it would ge
bd10: 74 20 74 68 65 20 77 72 6f 6e 67 20 6e 61 6d 65  t the wrong name
bd20: 20 28 74 68 65 20 61 72 72 61 79 20 6e 61 6d 65   (the array name
bd30: 20 77 69 74 68 6f 75 74 0a 65 6c 65 6d 65 6e 74   without.element
bd40: 29 2e 20 20 46 69 78 65 64 20 74 6f 20 72 65 73  ).  Fixed to res
bd50: 74 6f 72 65 20 74 68 65 20 76 61 72 69 61 62 6c  tore the variabl
bd60: 65 20 6e 61 6d 65 20 62 65 66 6f 72 65 20 6d 61  e name before ma
bd70: 6b 69 6e 67 20 74 72 61 63 65 0a 63 61 6c 6c 62  king trace.callb
bd80: 61 63 6b 73 2e 0a 0a 34 2f 33 30 2f 39 35 20 28  acks...4/30/95 (
bd90: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
bda0: 65 64 20 2d 6e 6f 62 61 63 6b 73 6c 61 73 68 65  ed -nobackslashe
bdb0: 73 2c 20 2d 6e 6f 63 6f 6d 6d 61 6e 64 73 2c 20  s, -nocommands, 
bdc0: 61 6e 64 20 2d 6e 6f 76 61 72 69 61 62 6c 65 73  and -novariables
bdd0: 0a 73 77 69 74 63 68 65 73 20 74 6f 20 22 73 75  .switches to "su
bde0: 62 73 74 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35  bst" command...5
bdf0: 2f 34 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  /4/95 (new featu
be00: 72 65 29 20 41 64 64 65 64 20 54 43 4c 5f 45 56  re) Added TCL_EV
be10: 41 4c 5f 47 4c 4f 42 41 4c 20 66 6c 61 67 20 74  AL_GLOBAL flag t
be20: 6f 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45  o Tcl_RecordAndE
be30: 76 61 6c 2e 0a 0a 35 2f 35 2f 39 35 20 28 62 75  val...5/5/95 (bu
be40: 67 20 66 69 78 29 20 20 46 6f 72 6d 61 74 20 63  g fix)  Format c
be50: 6f 6d 6d 61 6e 64 20 77 6f 75 6c 64 20 6f 76 65  ommand would ove
be60: 72 72 75 6e 20 6d 65 6d 6f 72 79 20 77 68 65 6e  rrun memory when
be70: 20 70 72 69 6e 74 69 6e 67 0a 69 6e 74 65 67 65   printing.intege
be80: 72 73 20 77 69 74 68 20 76 65 72 79 20 6c 61 72  rs with very lar
be90: 67 65 20 70 72 65 63 69 73 69 6f 6e 2c 20 61 73  ge precision, as
bea0: 20 69 6e 20 22 66 6f 72 6d 61 74 20 25 2e 31 30   in "format %.10
beb0: 30 30 64 20 30 22 2e 0a 0a 35 2f 35 2f 39 35 20  00d 0"...5/5/95 
bec0: 28 70 6f 72 74 61 62 69 6c 69 74 79 20 69 6d 70  (portability imp
bed0: 72 6f 76 65 6d 65 6e 74 29 20 43 68 61 6e 67 65  rovement) Change
bee0: 64 20 74 6f 20 75 73 65 20 42 53 44 67 65 74 74  d to use BSDgett
bef0: 69 6d 65 6f 66 64 61 79 20 6f 6e 0a 49 52 49 58  imeofday on.IRIX
bf00: 20 6d 61 63 68 69 6e 65 73 2c 20 74 6f 20 61 76   machines, to av
bf10: 6f 69 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  oid compilation 
bf20: 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 68  problems with th
bf30: 65 20 67 65 74 74 69 6d 65 6f 66 64 61 79 0a 64  e gettimeofday.d
bf40: 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 0a 35 2f 36  eclaration...5/6
bf50: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43 68  /95 (bug fix) Ch
bf60: 61 6e 67 65 64 20 6d 61 6e 75 61 6c 20 65 6e 74  anged manual ent
bf70: 72 69 65 73 20 74 6f 20 75 73 65 20 74 68 65 20  ries to use the 
bf80: 73 74 61 6e 64 61 72 64 20 2e 54 48 0a 6d 61 63  standard .TH.mac
bf90: 72 6f 20 69 6e 73 74 65 61 64 20 6f 66 20 61 20  ro instead of a 
bfa0: 63 75 73 74 6f 6d 20 2e 48 53 20 6d 61 63 72 6f  custom .HS macro
bfb0: 3b 20 20 74 68 65 20 2e 48 53 20 6d 61 63 72 6f  ;  the .HS macro
bfc0: 20 63 6f 6e 66 75 73 65 73 20 69 6e 64 65 78 0a   confuses index.
bfd0: 67 65 6e 65 72 61 74 6f 72 73 20 6c 69 6b 65 20  generators like 
bfe0: 6d 61 6b 65 77 68 61 74 69 73 2e 0a 0a 35 2f 39  makewhatis...5/9
bff0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 4d 6f  /95 (bug fix) Mo
c000: 64 69 66 69 65 64 20 63 6f 6e 66 69 67 75 72 65  dified configure
c010: 20 73 63 72 69 70 74 20 74 6f 20 63 68 65 63 6b   script to check
c020: 20 66 6f 72 20 53 6f 6c 61 72 69 73 20 62 75 67   for Solaris bug
c030: 0a 74 68 61 74 20 6d 61 6b 65 73 20 76 66 6f 72  .that makes vfor
c040: 6b 20 75 6e 72 65 6c 69 61 62 6c 65 20 28 63 6f  k unreliable (co
c050: 72 65 20 64 75 6d 70 73 20 72 65 73 75 6c 74 20  re dumps result 
c060: 69 66 20 76 66 6f 72 6b 65 64 20 63 68 69 6c 64  if vforked child
c070: 0a 63 68 61 6e 67 65 73 20 61 20 73 69 67 6e 61  .changes a signa
c080: 6c 20 68 61 6e 64 6c 65 72 29 3b 20 20 77 69 6c  l handler);  wil
c090: 6c 20 75 73 65 20 66 6f 72 6b 20 69 6e 73 74 65  l use fork inste
c0a0: 61 64 20 6f 66 20 76 66 6f 72 6b 20 69 66 20 74  ad of vfork if t
c0b0: 68 65 0a 62 75 67 20 69 73 20 70 72 65 73 65 6e  he.bug is presen
c0c0: 74 2e 0a 0a 36 2f 35 2f 39 35 20 28 62 75 67 20  t...6/5/95 (bug 
c0d0: 66 69 78 29 20 4d 6f 64 69 66 69 65 64 20 22 6c  fix) Modified "l
c0e0: 73 6f 72 74 22 20 63 6f 6d 6d 61 6e 64 20 74 6f  sort" command to
c0f0: 20 64 69 73 61 6c 6c 6f 77 20 72 65 63 75 72 73   disallow recurs
c100: 69 76 65 20 63 61 6c 6c 73 0a 74 6f 20 6c 73 6f  ive calls.to lso
c110: 72 74 20 66 72 6f 6d 20 61 20 63 6f 6d 70 61 72  rt from a compar
c120: 69 73 6f 6e 20 66 75 6e 63 74 69 6f 6e 2e 20 20  ison function.  
c130: 54 68 69 73 20 69 73 20 6e 65 65 64 65 64 20 62  This is needed b
c140: 65 63 61 75 73 65 20 71 73 6f 72 74 0a 69 73 20  ecause qsort.is 
c150: 6e 6f 74 20 72 65 65 6e 74 72 61 6e 74 2e 0a 0a  not reentrant...
c160: 36 2f 35 2f 39 35 20 28 62 75 67 20 66 69 78 29  6/5/95 (bug fix)
c170: 20 55 6e 64 69 64 20 63 68 61 6e 67 65 20 32 34   Undid change 24
c180: 33 20 61 62 6f 76 65 3a 20 20 63 68 61 6e 67 65  3 above:  change
c190: 64 20 54 43 4c 5f 56 4f 4c 41 54 49 4c 45 20 61  d TCL_VOLATILE a
c1a0: 6e 64 0a 54 43 4c 5f 44 59 4e 41 4d 49 43 20 62  nd.TCL_DYNAMIC b
c1b0: 61 63 6b 20 74 6f 20 69 6e 74 65 67 65 72 20 63  ack to integer c
c1c0: 6f 6e 73 74 61 6e 74 73 20 72 61 74 68 65 72 20  onstants rather 
c1d0: 74 68 61 6e 20 70 72 6f 63 65 64 75 72 65 20 61  than procedure a
c1e0: 64 64 72 65 73 73 65 73 2e 0a 54 68 69 73 20 77  ddresses..This w
c1f0: 61 73 20 6e 65 65 64 65 64 20 62 65 63 61 75 73  as needed becaus
c200: 65 20 70 72 6f 63 65 64 75 72 65 20 61 64 64 72  e procedure addr
c210: 65 73 73 65 73 20 63 61 6e 20 68 61 76 65 20 6d  esses can have m
c220: 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 0a 75  ultiple values.u
c230: 6e 64 65 72 20 73 6f 6d 65 20 64 79 6e 61 6d 69  nder some dynami
c240: 63 20 6c 6f 61 64 69 6e 67 20 73 79 73 74 65 6d  c loading system
c250: 73 20 28 65 2e 67 2e 20 53 75 6e 4f 53 20 34 2e  s (e.g. SunOS 4.
c260: 31 20 61 6e 64 20 57 69 6e 64 6f 77 73 29 2e 0a  1 and Windows)..
c270: 0a 36 2f 38 2f 39 35 20 28 66 65 61 74 75 72 65  .6/8/95 (feature
c280: 20 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65   change) Modifie
c290: 64 20 69 6e 74 65 72 66 61 63 65 20 74 6f 20 54  d interface to T
c2a0: 63 6c 5f 4d 61 69 6e 20 74 6f 20 70 61 73 73 20  cl_Main to pass 
c2b0: 69 6e 20 74 68 65 0a 61 64 64 72 65 73 73 20 6f  in the.address o
c2c0: 66 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f  f the applicatio
c2d0: 6e 2d 73 70 65 63 69 66 69 63 20 69 6e 69 74 69  n-specific initi
c2e0: 61 6c 69 7a 61 74 69 6f 6e 20 70 72 6f 63 65 64  alization proced
c2f0: 75 72 65 2e 0a 54 63 6c 5f 41 70 70 49 6e 69 74  ure..Tcl_AppInit
c300: 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 68 61   is no longer ha
c310: 72 64 77 69 72 65 64 20 69 6e 74 6f 20 54 63 6c  rdwired into Tcl
c320: 5f 4d 61 69 6e 2e 20 20 54 68 69 73 20 69 73 20  _Main.  This is 
c330: 6e 65 65 64 65 64 0a 69 6e 20 6f 72 64 65 72 20  needed.in order 
c340: 74 6f 20 6d 61 6b 65 20 54 63 6c 20 61 20 73 68  to make Tcl a sh
c350: 61 72 65 64 20 6c 69 62 72 61 72 79 2e 20 0a 0a  ared library. ..
c360: 36 2f 38 2f 39 35 20 28 66 65 61 74 75 72 65 20  6/8/95 (feature 
c370: 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64  change) Modified
c380: 20 4d 61 6b 65 66 69 6c 65 20 73 6f 20 74 68 61   Makefile so tha
c390: 74 20 74 68 65 20 69 6e 73 74 61 6c 6c 65 64 20  t the installed 
c3a0: 76 65 72 73 69 6f 6e 73 0a 6f 66 20 74 63 6c 73  versions.of tcls
c3b0: 68 20 61 6e 64 20 6c 69 62 74 63 6c 2e 61 20 68  h and libtcl.a h
c3c0: 61 76 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62  ave version numb
c3d0: 65 72 20 69 6e 20 74 68 65 6d 20 28 65 2e 67 2e  er in them (e.g.
c3e0: 20 74 63 6c 73 68 37 2e 34 20 61 6e 64 0a 6c 69   tclsh7.4 and.li
c3f0: 62 74 63 6c 37 2e 34 2e 61 29 20 61 6e 64 20 74  btcl7.4.a) and t
c400: 68 65 20 6c 69 62 72 61 72 79 20 64 69 72 65 63  he library direc
c410: 74 6f 72 79 20 6e 61 6d 65 20 61 6c 73 6f 20 68  tory name also h
c420: 61 73 20 61 6e 20 65 6d 62 65 64 64 65 64 20 76  as an embedded v
c430: 65 72 73 69 6f 6e 0a 6e 75 6d 62 65 72 20 28 65  ersion.number (e
c440: 2e 67 2e 2c 20 2f 75 73 72 2f 6c 6f 63 61 6c 2f  .g., /usr/local/
c450: 6c 69 62 2f 74 63 6c 37 2e 34 29 2e 20 20 54 68  lib/tcl7.4).  Th
c460: 69 73 20 73 68 6f 75 6c 64 20 6d 61 6b 65 20 69  is should make i
c470: 74 20 65 61 73 69 65 72 20 66 6f 72 0a 54 63 6c  t easier for.Tcl
c480: 20 37 2e 34 20 74 6f 20 63 6f 65 78 69 73 74 20   7.4 to coexist 
c490: 77 69 74 68 20 65 61 72 6c 69 65 72 20 76 65 72  with earlier ver
c4a0: 73 69 6f 6e 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  sions...--------
c4b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
c4c0: 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 34  ed version 7.4b4
c4d0: 2c 20 36 2f 31 36 2f 39 35 20 2d 2d 2d 2d 2d 2d  , 6/16/95 ------
c4e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 36 2f  ------------..6/
c4f0: 31 39 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  19/95 (bug fix) 
c500: 46 69 78 65 64 20 62 75 67 73 20 69 6e 20 74 63  Fixed bugs in tc
c510: 6c 43 6b 61 6c 6c 6f 63 2e 63 20 74 68 61 74 20  lCkalloc.c that 
c520: 63 61 75 73 65 64 20 63 6f 72 65 20 64 75 6d 70  caused core dump
c530: 73 0a 69 66 20 54 43 4c 5f 4d 45 4d 5f 44 45 42  s.if TCL_MEM_DEB
c540: 55 47 20 77 61 73 20 65 6e 61 62 6c 65 64 20 6f  UG was enabled o
c550: 6e 20 77 6f 72 64 2d 61 64 64 72 65 73 73 65 64  n word-addressed
c560: 20 6d 61 63 68 69 6e 65 73 20 73 75 63 68 20 61   machines such a
c570: 73 20 43 72 61 79 73 2e 0a 0a 36 2f 32 31 2f 39  s Crays...6/21/9
c580: 35 20 28 66 65 61 74 75 72 65 20 72 65 6d 6f 76  5 (feature remov
c590: 61 6c 29 20 52 65 6d 6f 76 65 64 20 6f 76 65 72  al) Removed over
c5a0: 66 6c 6f 77 20 63 68 65 63 6b 73 20 66 6f 72 20  flow checks for 
c5b0: 69 6e 74 65 67 65 72 20 61 72 69 74 68 6d 65 74  integer arithmet
c5c0: 69 63 3a 0a 74 68 65 79 20 6a 75 73 74 20 63 61  ic:.they just ca
c5d0: 75 73 65 20 74 6f 6f 20 6d 75 63 68 20 74 72 6f  use too much tro
c5e0: 75 62 6c 65 20 28 65 2e 67 2e 20 66 6f 72 20 72  uble (e.g. for r
c5f0: 61 6e 64 6f 6d 20 20 6e 75 6d 62 65 72 20 67 65  andom  number ge
c600: 6e 65 72 61 74 6f 72 73 29 2e 0a 0a 36 2f 32 38  nerators)...6/28
c610: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
c620: 73 29 20 41 64 64 65 64 20 74 63 6c 5f 70 61 74  s) Added tcl_pat
c630: 63 68 4c 65 76 65 6c 20 61 6e 64 20 74 63 6c 5f  chLevel and tcl_
c640: 76 65 72 73 69 6f 6e 20 76 61 72 69 61 62 6c 65  version variable
c650: 73 2c 0a 66 6f 72 20 63 6f 6e 73 69 73 74 65 6e  s,.for consisten
c660: 63 79 20 77 69 74 68 20 54 6b 2e 0a 0a 36 2f 32  cy with Tk...6/2
c670: 39 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 46  9/95 (bug fix) F
c680: 69 78 65 64 20 70 72 6f 62 6c 65 6d 20 69 6e 20  ixed problem in 
c690: 54 63 6c 5f 45 76 61 6c 20 77 68 65 72 65 20 69  Tcl_Eval where i
c6a0: 74 20 64 69 64 6e 27 74 20 72 65 63 6f 72 64 0a  t didn't record.
c6b0: 74 68 65 20 72 69 67 68 74 20 74 65 72 6d 69 6e  the right termin
c6c0: 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72 20  ation character 
c6d0: 69 66 20 61 20 73 63 72 69 70 74 20 65 6e 64 65  if a script ende
c6e0: 64 20 77 69 74 68 20 61 20 63 6f 6d 6d 65 6e 74  d with a comment
c6f0: 2e 20 20 54 68 69 73 0a 63 61 75 73 65 64 20 65  .  This.caused e
c700: 72 72 6f 6e 65 6f 75 73 20 6f 75 74 70 75 74 20  rroneous output 
c710: 66 6f 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e  for the followin
c720: 67 20 63 6f 6d 6d 61 6e 64 2c 20 61 6d 6f 6e 67  g command, among
c730: 20 6f 74 68 65 72 73 3a 0a 70 75 74 73 20 22 5b   others:.puts "[
c740: 0a 65 78 70 72 20 31 2b 31 0a 23 20 64 75 68 21  .expr 1+1.# duh!
c750: 0a 5d 22 0a 0a 36 2f 32 39 2f 39 35 20 28 6d 65  .]"..6/29/95 (me
c760: 73 73 61 67 65 20 63 68 61 6e 67 65 29 20 43 68  ssage change) Ch
c770: 61 6e 67 65 64 20 74 68 65 20 65 72 72 6f 72 20  anged the error 
c780: 6d 65 73 73 61 67 65 20 66 6f 72 20 45 43 48 49  message for ECHI
c790: 4c 44 20 73 6c 69 67 68 74 6c 79 0a 74 6f 20 70  LD slightly.to p
c7a0: 72 6f 76 69 64 65 20 61 20 68 69 6e 74 20 61 62  rovide a hint ab
c7b0: 6f 75 74 20 77 68 79 20 74 68 65 20 70 72 6f 62  out why the prob
c7c0: 6c 65 6d 20 69 73 20 6f 63 63 75 72 72 69 6e 67  lem is occurring
c7d0: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
c7e0: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
c7f0: 72 73 69 6f 6e 20 37 2e 34 2c 20 37 2f 31 2f 39  rsion 7.4, 7/1/9
c800: 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  5 --------------
c810: 2d 2d 2d 2d 0a 0a 37 2f 31 38 2f 39 35 20 28 62  ----..7/18/95 (b
c820: 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
c830: 22 6c 72 65 70 6c 61 63 65 22 20 73 6f 20 74 68  "lreplace" so th
c840: 61 74 20 6e 6f 74 68 69 6e 67 20 69 73 20 64 65  at nothing is de
c850: 6c 65 74 65 64 20 69 66 0a 74 68 65 20 6c 61 73  leted if.the las
c860: 74 20 69 6e 64 65 78 20 69 73 20 6c 65 73 73 20  t index is less 
c870: 74 68 61 6e 20 74 68 65 20 66 69 72 73 74 20 69  than the first i
c880: 6e 64 65 78 20 6f 72 20 69 66 20 74 68 65 20 6c  ndex or if the l
c890: 61 73 74 20 69 6e 64 65 78 0a 69 73 20 3c 20 30  ast index.is < 0
c8a0: 2e 0a 0a 37 2f 31 38 2f 39 35 20 28 62 75 67 20  ...7/18/95 (bug 
c8b0: 66 69 78 29 20 46 69 78 65 64 20 62 75 67 73 20  fix) Fixed bugs 
c8c0: 77 69 74 68 20 62 61 63 6b 73 6c 61 73 68 65 73  with backslashes
c8d0: 20 69 6e 20 63 6f 6d 6d 65 6e 74 73 3a 0a 54 63   in comments:.Tc
c8e0: 6c 5f 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65 74  l_CommandComplet
c8f0: 65 20 28 61 6e 64 20 22 69 6e 66 6f 20 63 6f 6d  e (and "info com
c900: 70 6c 65 74 65 22 29 20 64 69 64 6e 27 74 20 70  plete") didn't p
c910: 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65 0a 73  roperly handle.s
c920: 74 72 69 6e 67 73 20 65 6e 64 69 6e 67 20 69 6e  trings ending in
c930: 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69   backslash-newli
c940: 6e 65 2c 20 61 6e 64 20 6e 65 69 74 68 65 72 20  ne, and neither 
c950: 54 63 6c 5f 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c  Tcl_CommandCompl
c960: 65 74 65 0a 6e 6f 72 20 74 68 65 20 54 63 6c 20  ete.nor the Tcl 
c970: 70 61 72 73 65 72 20 68 61 6e 64 6c 65 64 20 6f  parser handled o
c980: 74 68 65 72 20 62 61 63 6b 73 6c 61 73 68 20 73  ther backslash s
c990: 65 71 75 65 6e 63 65 73 20 72 69 67 68 74 2c 20  equences right, 
c9a0: 73 75 63 68 0a 61 73 20 74 77 6f 20 62 61 63 6b  such.as two back
c9b0: 73 6c 61 73 68 65 73 20 62 65 66 6f 72 65 20 61  slashes before a
c9c0: 20 6e 65 77 6c 69 6e 65 2e 0a 0a 37 2f 31 39 2f   newline...7/19/
c9d0: 39 35 20 28 62 75 67 20 66 69 78 29 20 4d 6f 64  95 (bug fix) Mod
c9e0: 69 66 69 65 64 20 54 63 6c 5f 44 65 6c 65 74 65  ified Tcl_Delete
c9f0: 43 6f 6d 6d 61 6e 64 20 74 6f 20 64 65 6c 65 74  Command to delet
ca00: 65 20 74 68 65 20 68 61 73 68 20 74 61 62 6c 65  e the hash table
ca10: 0a 65 6e 74 72 79 20 66 6f 72 20 74 68 65 20 63  .entry for the c
ca20: 6f 6d 6d 61 6e 64 20 62 65 66 6f 72 65 20 69 6e  ommand before in
ca30: 76 6f 6b 69 6e 67 20 69 74 73 20 63 61 6c 6c 62  voking its callb
ca40: 61 63 6b 2e 20 20 54 68 69 73 20 69 73 20 6e 65  ack.  This is ne
ca50: 65 64 65 64 20 69 6e 0a 6f 72 64 65 72 20 74 6f  eded in.order to
ca60: 20 64 65 61 6c 20 77 69 74 68 20 72 65 65 6e 74   deal with reent
ca70: 72 61 6e 63 79 2e 0a 0a 37 2f 32 32 2f 39 35 20  rancy...7/22/95 
ca80: 28 62 75 67 20 66 69 78 29 20 22 65 78 65 63 22  (bug fix) "exec"
ca90: 20 77 61 73 6e 27 74 20 72 65 61 70 69 6e 67 20   wasn't reaping 
caa0: 70 72 6f 63 65 73 73 65 73 20 63 6f 72 72 65 63  processes correc
cab0: 74 6c 79 20 61 66 74 65 72 0a 63 65 72 74 61 69  tly after.certai
cac0: 6e 20 65 72 72 6f 72 73 20 28 65 2e 67 2e 20 69  n errors (e.g. i
cad0: 66 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68  f the name of th
cae0: 65 20 65 78 65 63 75 74 61 62 6c 65 20 77 61 73  e executable was
caf0: 20 62 6f 67 75 73 2c 20 61 73 0a 69 6e 20 22 65   bogus, as.in "e
cb00: 78 65 63 20 66 6f 6f 62 61 72 22 29 2e 0a 0a 37  xec foobar")...7
cb10: 2f 32 37 2f 39 35 20 28 62 75 67 20 66 69 78 29  /27/95 (bug fix)
cb20: 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 77 61 73   Makefile.in was
cb30: 6e 27 74 20 75 73 69 6e 67 20 74 68 65 20 4c 49  n't using the LI
cb40: 42 53 20 76 61 72 69 61 62 6c 65 20 70 72 6f 76  BS variable prov
cb50: 69 64 65 64 0a 62 79 20 74 68 65 20 22 63 6f 6e  ided.by the "con
cb60: 66 69 67 75 72 65 22 20 73 63 72 69 70 74 2e 20  figure" script. 
cb70: 20 54 68 69 73 20 63 61 75 73 65 64 20 70 72 6f   This caused pro
cb80: 62 6c 65 6d 73 20 6f 6e 20 73 6f 6d 65 20 53 43  blems on some SC
cb90: 4f 20 73 79 73 74 65 6d 73 2e 0a 0a 37 2f 32 37  O systems...7/27
cba0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 54 68  /95 (bug fix) Th
cbb0: 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 74 72  e version of str
cbc0: 74 6f 64 20 69 6e 20 66 69 78 73 74 72 74 6f 64  tod in fixstrtod
cbd0: 2e 63 20 64 69 64 6e 27 74 20 70 72 6f 70 65 72  .c didn't proper
cbe0: 6c 79 0a 68 61 6e 64 6c 65 20 74 68 65 20 63 61  ly.handle the ca
cbf0: 73 65 20 77 68 65 72 65 20 65 6e 64 50 74 72 20  se where endPtr 
cc00: 3d 3d 20 4e 55 4c 4c 2e 0a 0a 2d 2d 2d 2d 2d 2d  == NULL...------
cc10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
cc20: 61 73 65 64 20 70 61 74 63 68 20 37 2e 34 70 31  ased patch 7.4p1
cc30: 2c 20 37 2f 32 39 2f 39 35 20 2d 2d 2d 2d 2d 2d  , 7/29/95 ------
cc40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
cc50: 2d 0a 0a 38 2f 34 2f 39 35 20 28 62 75 67 20 66  -..8/4/95 (bug f
cc60: 69 78 29 20 43 2d 6c 65 76 65 6c 20 74 72 61 63  ix) C-level trac
cc70: 65 20 63 61 6c 6c 62 61 63 6b 73 20 66 6f 72 20  e callbacks for 
cc80: 76 61 72 69 61 62 6c 65 73 20 77 65 72 65 20 73  variables were s
cc90: 6f 6d 65 74 69 6d 65 73 0a 72 65 63 65 69 76 69  ometimes.receivi
cca0: 6e 67 20 74 68 65 20 50 41 52 54 31 5f 4e 4f 54  ng the PART1_NOT
ccb0: 5f 50 41 52 53 45 44 20 66 6c 61 67 2c 20 77 68  _PARSED flag, wh
ccc0: 69 63 68 20 63 6f 75 6c 64 20 63 61 75 73 65 20  ich could cause 
ccd0: 65 72 72 6f 72 73 20 69 6e 0a 73 75 62 73 65 71  errors in.subseq
cce0: 75 65 6e 74 20 54 63 6c 20 6c 69 62 72 61 72 79  uent Tcl library
ccf0: 20 63 61 6c 6c 73 20 75 73 69 6e 67 20 74 68 65   calls using the
cd00: 20 66 6c 61 67 73 2e 20 28 4a 4f 29 0a 0a 38 2f   flags. (JO)..8/
cd10: 34 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  4/95 (bug fix) C
cd20: 61 6c 6c 73 20 74 6f 20 74 6f 75 70 70 65 72 20  alls to toupper 
cd30: 61 6e 64 20 74 6f 6c 6f 77 65 72 20 77 65 72 65  and tolower were
cd40: 6e 27 74 20 75 73 69 6e 67 20 74 68 65 0a 55 43  n't using the.UC
cd50: 48 41 52 20 6d 61 63 72 6f 73 2c 20 77 68 69 63  HAR macros, whic
cd60: 68 20 63 61 75 73 65 64 20 74 72 6f 75 62 6c 65  h caused trouble
cd70: 20 69 6e 20 6e 6f 6e 2d 55 2e 53 2e 20 6c 6f 63   in non-U.S. loc
cd80: 61 6c 65 73 2e 20 28 4a 4f 29 0a 0a 38 2f 31 30  ales. (JO)..8/10
cd90: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
cda0: 29 20 41 64 64 65 64 20 74 68 65 20 22 6c 6f 61  ) Added the "loa
cdb0: 64 22 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 64  d" command for d
cdc0: 79 6e 61 6d 69 63 20 6c 6f 61 64 69 6e 67 20 6f  ynamic loading o
cdd0: 66 0a 62 69 6e 61 72 79 20 70 61 63 6b 61 67 65  f.binary package
cde0: 73 2c 20 61 6e 64 20 74 68 65 20 54 63 6c 5f 50  s, and the Tcl_P
cdf0: 61 63 6b 61 67 65 49 6e 69 74 50 72 6f 63 20 70  ackageInitProc p
ce00: 72 6f 74 6f 74 79 70 65 20 66 6f 72 20 70 61 63  rototype for pac
ce10: 6b 61 67 65 0a 69 6e 69 74 69 61 6c 69 7a 61 74  kage.initializat
ce20: 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 73 2e 20  ion procedures. 
ce30: 28 4a 4f 29 0a 0a 38 2f 32 33 2f 39 35 20 28 6e  (JO)..8/23/95 (n
ce40: 65 77 20 66 65 61 74 75 72 65 73 29 20 41 64 64  ew features) Add
ce50: 65 64 20 22 69 6e 66 6f 20 73 68 61 72 65 64 6c  ed "info sharedl
ce60: 69 62 65 78 74 65 6e 73 69 6f 6e 22 20 61 6e 64  ibextension" and
ce70: 0a 22 69 6e 66 6f 20 6e 61 6d 65 6f 66 65 78 65  ."info nameofexe
ce80: 63 75 74 61 62 6c 65 22 20 63 6f 6d 6d 61 6e 64  cutable" command
ce90: 73 2c 20 70 6c 75 73 20 54 63 6c 5f 46 69 6e 64  s, plus Tcl_Find
cea0: 45 78 74 65 6e 73 69 6f 6e 20 70 72 6f 63 65 64  Extension proced
ceb0: 75 72 65 2e 20 28 4a 4f 29 0a 0a 38 2f 32 35 2f  ure. (JO)..8/25/
cec0: 39 35 20 28 62 75 67 20 66 69 78 29 20 49 66 20  95 (bug fix) If 
ced0: 74 68 65 20 74 61 72 67 65 74 20 6f 66 20 61 6e  the target of an
cee0: 20 22 75 70 76 61 72 22 20 77 61 73 20 6e 6f 6e   "upvar" was non
cef0: 2d 65 78 69 73 74 65 6e 74 20 62 75 74 0a 68 61  -existent but.ha
cf00: 64 20 74 72 61 63 65 73 20 73 65 74 2c 20 74 68  d traces set, th
cf10: 65 20 74 72 61 63 65 73 20 77 65 72 65 20 73 69  e traces were si
cf20: 6c 65 6e 74 6c 79 20 6c 6f 73 74 2e 20 20 43 68  lently lost.  Ch
cf30: 61 6e 67 65 20 74 6f 20 67 65 6e 65 72 61 74 65  ange to generate
cf40: 0a 61 6e 20 65 72 72 6f 72 20 69 6e 73 74 65 61  .an error instea
cf50: 64 2e 20 28 4a 4f 29 0a 0a 38 2f 32 35 2f 39 35  d. (JO)..8/25/95
cf60: 20 28 62 75 67 20 66 69 78 29 20 55 6e 64 69 64   (bug fix) Undid
cf70: 20 63 68 61 6e 67 65 20 66 72 6f 6d 20 37 2f 31   change from 7/1
cf80: 39 2c 20 73 6f 20 74 68 61 74 20 63 6f 6d 6d 61  9, so that comma
cf90: 6e 64 73 20 63 61 6e 20 73 74 61 79 0a 61 72 6f  nds can stay.aro
cfa0: 75 6e 64 20 77 68 69 6c 65 20 74 68 65 69 72 20  und while their 
cfb0: 64 65 6c 65 74 69 6f 6e 20 63 61 6c 6c 62 61 63  deletion callbac
cfc0: 6b 73 20 65 78 65 63 75 74 65 2e 20 20 41 64 64  ks execute.  Add
cfd0: 65 64 20 6c 6f 74 73 20 6f 66 20 63 6f 64 65 20  ed lots of code 
cfe0: 74 6f 0a 68 61 6e 64 6c 65 20 61 6c 6c 20 6f 66  to.handle all of
cff0: 20 74 68 65 20 72 65 65 6e 74 72 61 6e 63 79 20   the reentrancy 
d000: 70 72 6f 62 6c 65 6d 73 20 74 68 61 74 20 74 68  problems that th
d010: 69 73 20 6f 70 65 6e 73 20 75 70 2e 20 28 4a 4f  is opens up. (JO
d020: 29 0a 0a 38 2f 32 35 2f 39 35 20 28 62 75 67 20  )..8/25/95 (bug 
d030: 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20  fix) Fixed core 
d040: 64 75 6d 70 20 74 68 61 74 20 63 6f 75 6c 64 20  dump that could 
d050: 6f 63 63 75 72 20 69 6e 20 54 63 6c 44 65 6c 65  occur in TclDele
d060: 74 65 56 61 72 73 0a 69 66 20 74 68 65 72 65 20  teVars.if there 
d070: 77 61 73 20 61 6e 20 75 70 76 61 72 20 66 72 6f  was an upvar fro
d080: 6d 20 6f 6e 65 20 65 6e 74 72 79 20 69 6e 20 74  m one entry in t
d090: 68 65 20 74 61 62 6c 65 20 74 6f 20 74 68 65 20  he table to the 
d0a0: 6e 65 78 74 20 65 6e 74 72 79 0a 69 6e 20 74 68  next entry.in th
d0b0: 65 20 73 61 6d 65 20 74 61 62 6c 65 2e 20 28 4a  e same table. (J
d0c0: 4f 29 0a 0a 38 2f 32 38 2f 39 35 20 28 62 75 67  O)..8/28/95 (bug
d0d0: 20 66 69 78 29 20 45 78 65 63 20 77 61 73 6e 27   fix) Exec wasn'
d0e0: 74 20 68 61 6e 64 6c 69 6e 67 20 62 61 64 20 75  t handling bad u
d0f0: 73 65 72 20 6e 61 6d 65 73 20 70 72 6f 70 65 72  ser names proper
d100: 6c 79 2c 20 61 73 0a 69 6e 20 22 65 78 65 63 20  ly, as.in "exec 
d110: 7e 62 6f 67 75 73 5f 75 73 65 72 2f 66 6f 6f 22  ~bogus_user/foo"
d120: 2e 20 28 4a 4f 29 0a 0a 38 2f 32 39 2f 39 35 20  . (JO)..8/29/95 
d130: 28 62 75 67 20 66 69 78 65 73 29 20 43 68 61 6e  (bug fixes) Chan
d140: 67 65 64 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65  ged backslash-ne
d150: 77 6c 69 6e 65 20 68 61 6e 64 6c 69 6e 67 20 74  wline handling t
d160: 6f 20 63 6f 72 72 65 63 74 20 74 77 6f 0a 70 72  o correct two.pr
d170: 6f 62 6c 65 6d 73 3a 0a 20 20 20 20 2d 20 4f 6e  oblems:.    - On
d180: 6c 79 20 73 70 61 63 65 73 20 61 6e 64 20 74 61  ly spaces and ta
d190: 62 73 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68 65  bs following the
d1a0: 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69   backslash-newli
d1b0: 6e 65 20 61 72 65 20 6e 6f 77 0a 20 20 20 20 20  ne are now.     
d1c0: 20 61 62 73 6f 72 62 65 64 20 61 73 20 70 61 72   absorbed as par
d1d0: 74 20 6f 66 20 74 68 65 20 62 61 63 6b 73 6c 61  t of the backsla
d1e0: 73 68 2d 6e 65 77 6c 69 6e 65 2e 20 20 4e 65 77  sh-newline.  New
d1f0: 6c 69 6e 65 77 20 61 72 65 20 6e 6f 0a 20 20 20  linew are no.   
d200: 20 20 20 6c 6f 6e 67 65 72 20 61 62 73 6f 72 62     longer absorb
d210: 65 64 20 28 61 64 64 20 61 6e 6f 74 68 65 72 20  ed (add another 
d220: 62 61 63 6b 73 6c 61 73 68 20 69 66 20 79 6f 75  backslash if you
d230: 20 77 61 6e 74 20 74 6f 20 61 62 73 6f 72 62 0a   want to absorb.
d240: 20 20 20 20 20 20 61 6e 6f 74 68 65 72 20 6e 65        another ne
d250: 77 6c 69 6e 65 29 2e 0a 20 20 20 20 2d 20 54 63  wline)..    - Tc
d260: 6c 57 6f 72 64 45 6e 64 20 72 65 74 75 72 6e 73  lWordEnd returns
d270: 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 6a   the character j
d280: 75 73 74 20 62 65 66 6f 72 65 20 74 68 65 20 62  ust before the b
d290: 61 63 6b 73 6c 61 73 68 20 69 6e 0a 20 20 20 20  ackslash in.    
d2a0: 20 20 74 68 65 20 73 65 71 75 65 6e 63 65 20 61    the sequence a
d2b0: 73 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65  s the end of the
d2c0: 20 73 65 71 75 65 6e 63 65 3b 20 20 69 74 20 75   sequence;  it u
d2d0: 73 65 64 20 74 6f 20 6e 6f 74 20 63 6f 6e 73 69  sed to not consi
d2e0: 64 65 72 0a 20 20 20 20 20 20 74 68 65 20 62 61  der.      the ba
d2f0: 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20  ckslash-newline 
d300: 61 73 20 61 20 77 6f 72 64 20 73 65 70 61 72 61  as a word separa
d310: 74 6f 72 2e 20 28 4a 4f 29 0a 0a 38 2f 33 31 2f  tor. (JO)..8/31/
d320: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  95 (new feature)
d330: 20 43 68 61 6e 67 65 64 20 6d 61 6e 20 70 61 67   Changed man pag
d340: 65 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 28  e installation (
d350: 77 69 74 68 20 22 6d 6b 4c 69 6e 6b 73 22 0a 73  with "mkLinks".s
d360: 63 72 69 70 74 29 20 74 6f 20 63 72 65 61 74 65  cript) to create
d370: 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b   additional link
d380: 73 20 66 6f 72 20 6d 61 6e 75 61 6c 20 70 61 67  s for manual pag
d390: 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67  es corresponding
d3a0: 20 74 6f 0a 65 61 63 68 20 6f 66 20 74 68 65 20   to.each of the 
d3b0: 70 72 6f 63 65 64 75 72 65 20 61 6e 64 20 63 6f  procedure and co
d3c0: 6d 6d 61 6e 64 20 6e 61 6d 65 73 20 64 65 73 63  mmand names desc
d3d0: 72 69 62 65 64 20 69 6e 20 74 68 65 20 70 61 67  ribed in the pag
d3e0: 65 73 2e 20 28 4a 4f 29 0a 0a 39 2f 31 30 2f 39  es. (JO)..9/10/9
d3f0: 35 20 52 65 6f 72 67 61 6e 69 7a 65 64 20 54 63  5 Reorganized Tc
d400: 6c 20 73 6f 75 72 63 65 73 20 66 6f 72 20 57 69  l sources for Wi
d410: 6e 64 6f 77 73 20 61 6e 64 20 4d 61 63 20 70 6f  ndows and Mac po
d420: 72 74 73 2e 20 20 41 6c 6c 20 73 6f 75 72 63 65  rts.  All source
d430: 73 0a 61 72 65 20 6e 6f 77 20 69 6e 20 73 75 62  s.are now in sub
d440: 64 69 72 65 63 74 6f 72 69 65 73 3a 20 20 22 67  directories:  "g
d450: 65 6e 65 72 69 63 22 20 63 6f 6e 74 61 69 6e 73  eneric" contains
d460: 20 73 6f 75 72 63 65 73 20 74 68 61 74 20 77 6f   sources that wo
d470: 72 6b 20 6f 6e 20 61 6c 6c 0a 70 6c 61 74 66 6f  rk on all.platfo
d480: 72 6d 73 2c 20 22 77 69 6e 64 6f 77 73 22 2c 20  rms, "windows", 
d490: 22 6d 61 63 22 2c 20 61 6e 64 20 22 75 6e 69 78  "mac", and "unix
d4a0: 22 20 64 69 72 65 63 74 6f 72 69 65 73 20 63 6f  " directories co
d4b0: 6e 74 61 69 6e 20 70 6c 61 74 66 6f 72 6d 2d 0a  ntain platform-.
d4c0: 73 70 65 63 69 66 69 63 20 73 6f 75 72 63 65 73  specific sources
d4d0: 2e 20 20 53 6f 6d 65 20 55 4e 49 58 20 73 6f 75  .  Some UNIX sou
d4e0: 72 63 65 73 20 61 72 65 20 61 6c 73 6f 20 75 73  rces are also us
d4f0: 65 64 20 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74  ed on other plat
d500: 66 6f 72 6d 73 2e 20 28 53 53 29 0a 0a 39 2f 31  forms. (SS)..9/1
d510: 30 2f 39 35 20 28 66 65 61 74 75 72 65 20 63 68  0/95 (feature ch
d520: 61 6e 67 65 29 20 45 6c 69 6d 69 6e 61 74 65 64  ange) Eliminated
d530: 20 65 78 70 6f 72 74 65 64 20 67 6c 6f 62 61 6c   exported global
d540: 20 76 61 72 69 61 62 6c 65 73 20 28 74 68 65 79   variables (they
d550: 0a 64 6f 6e 27 74 20 77 6f 72 6b 20 77 69 74 68  .don't work with
d560: 20 57 69 6e 64 6f 77 73 20 44 4c 4c 73 29 2e 20   Windows DLLs). 
d570: 20 52 65 70 6c 61 63 65 64 20 74 63 6c 5f 41 73   Replaced tcl_As
d580: 79 6e 63 52 65 61 64 79 20 61 6e 64 0a 74 63 6c  yncReady and.tcl
d590: 5f 46 69 6c 65 43 6c 6f 73 65 50 72 6f 63 20 77  _FileCloseProc w
d5a0: 69 74 68 20 70 72 6f 63 65 64 75 72 65 73 20 54  ith procedures T
d5b0: 63 6c 5f 41 73 79 6e 63 52 65 61 64 79 28 29 20  cl_AsyncReady() 
d5c0: 61 6e 64 0a 54 63 6c 5f 53 65 74 46 69 6c 65 43  and.Tcl_SetFileC
d5d0: 6c 6f 73 65 50 72 6f 63 28 29 2e 20 20 52 65 70  loseProc().  Rep
d5e0: 6c 61 63 65 64 20 43 20 76 61 72 69 61 62 6c 65  laced C variable
d5f0: 20 74 63 6c 5f 52 63 46 69 6c 65 4e 61 6d 65 20   tcl_RcFileName 
d600: 77 69 74 68 0a 61 20 54 63 6c 20 76 61 72 69 61  with.a Tcl varia
d610: 62 6c 65 20 74 63 6c 5f 72 63 46 69 6c 65 4e 61  ble tcl_rcFileNa
d620: 6d 65 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54  me. (SS).*** POT
d630: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
d640: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 39 2f 31 31  BILITY ***..9/11
d650: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
d660: 29 20 41 64 64 65 64 20 70 72 6f 63 65 64 75 72  ) Added procedur
d670: 65 20 54 63 6c 5f 53 65 74 50 61 6e 69 63 50 72  e Tcl_SetPanicPr
d680: 6f 63 20 74 6f 20 6f 76 65 72 72 69 64 65 0a 74  oc to override.t
d690: 68 65 20 64 65 66 61 75 6c 74 20 69 6d 70 6c 65  he default imple
d6a0: 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 22 70 61  mentation of "pa
d6b0: 6e 69 63 22 2e 20 28 53 53 29 0a 0a 39 2f 31 31  nic". (SS)..9/11
d6c0: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
d6d0: 29 20 41 64 64 65 64 20 22 69 6e 74 65 72 70 22  ) Added "interp"
d6e0: 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 6c 6f   command to allo
d6f0: 77 20 63 72 65 61 74 69 6f 6e 20 6f 66 0a 6e 65  w creation of.ne
d700: 77 20 69 6e 74 65 72 70 72 65 74 65 72 73 20 61  w interpreters a
d710: 6e 64 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20  nd execution of 
d720: 75 6e 74 72 75 73 74 65 64 20 73 63 72 69 70 74  untrusted script
d730: 73 2e 20 20 41 64 64 65 64 20 6d 61 6e 79 20 6e  s.  Added many n
d740: 65 77 0a 70 72 6f 63 65 64 75 72 65 73 2c 20 73  ew.procedures, s
d750: 75 63 68 20 61 73 20 54 63 6c 5f 43 72 65 61 74  uch as Tcl_Creat
d760: 65 53 6c 61 76 65 2c 20 54 63 6c 5f 43 72 65 61  eSlave, Tcl_Crea
d770: 74 65 41 6c 69 61 73 2c 61 6e 64 20 54 63 6c 5f  teAlias,and Tcl_
d780: 4d 61 6b 65 53 61 66 65 2c 0a 74 6f 20 70 72 6f  MakeSafe,.to pro
d790: 76 69 64 65 20 43 2d 6c 65 76 65 6c 20 61 63 63  vide C-level acc
d7a0: 65 73 73 20 74 6f 20 74 68 65 20 69 6e 74 65 72  ess to the inter
d7b0: 70 72 65 74 65 72 20 66 61 63 69 6c 69 74 79 2e  preter facility.
d7c0: 20 54 68 69 73 20 6d 65 63 68 61 6e 69 73 6d 0a   This mechanism.
d7d0: 6e 6f 77 20 70 72 6f 76 69 64 65 73 20 61 6c 6d  now provides alm
d7e0: 6f 73 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 67  ost all of the g
d7f0: 65 6e 65 72 69 63 20 66 75 6e 63 74 69 6f 6e 73  eneric functions
d800: 20 6f 66 20 42 6f 72 65 6e 73 74 65 69 6e 27 73   of Borenstein's
d810: 20 61 6e 64 0a 52 6f 73 65 27 73 20 53 61 66 65   and.Rose's Safe
d820: 2d 54 63 6c 20 28 62 75 74 20 6e 6f 74 20 61 6e  -Tcl (but not an
d830: 79 20 54 6b 20 6f 72 20 65 6d 61 69 6c 2d 72 65  y Tk or email-re
d840: 6c 61 74 65 64 20 73 74 75 66 66 29 2e 20 20 28  lated stuff).  (
d850: 4a 4c 29 0a 0a 39 2f 31 31 2f 39 35 20 28 66 65  JL)..9/11/95 (fe
d860: 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43 68  ature change) Ch
d870: 61 6e 67 65 64 20 66 69 6c 65 20 6d 61 6e 61 67  anged file manag
d880: 65 6d 65 6e 74 20 73 6f 20 74 68 61 74 20 66 69  ement so that fi
d890: 6c 65 73 20 61 72 65 0a 6e 6f 20 6c 6f 6e 67 65  les are.no longe
d8a0: 72 20 73 68 61 72 65 64 20 62 65 74 77 65 65 6e  r shared between
d8b0: 20 69 6e 74 65 72 70 72 65 74 65 72 73 3a 20 20   interpreters:  
d8c0: 61 20 66 69 6c 65 20 63 61 6e 6e 6f 74 20 6e 6f  a file cannot no
d8d0: 72 6d 61 6c 6c 79 20 62 65 0a 72 65 66 65 72 65  rmally be.refere
d8e0: 6e 63 65 64 20 69 6e 20 6f 6e 65 20 69 6e 74 65  nced in one inte
d8f0: 72 70 72 65 74 65 72 20 69 66 20 69 74 20 77 61  rpreter if it wa
d900: 73 20 6f 70 65 6e 65 64 20 69 6e 20 61 6e 6f 74  s opened in anot
d910: 68 65 72 2e 20 20 54 68 69 73 0a 66 65 61 74 75  her.  This.featu
d920: 72 65 20 69 73 20 6e 65 65 64 65 64 20 74 6f 20  re is needed to 
d930: 73 75 70 70 6f 72 74 20 73 61 66 65 20 69 6e 74  support safe int
d940: 65 72 70 72 65 74 65 72 73 2e 20 20 41 64 64 65  erpreters.  Adde
d950: 64 20 54 63 6c 5f 53 68 61 72 65 48 61 6e 64 6c  d Tcl_ShareHandl
d960: 65 28 29 0a 70 72 6f 63 65 64 75 72 65 20 66 6f  e().procedure fo
d970: 72 20 61 6c 6c 6f 77 69 6e 67 20 66 69 6c 65 73  r allowing files
d980: 20 74 6f 20 62 65 20 73 68 61 72 65 64 2c 20 61   to be shared, a
d990: 6e 64 20 61 64 64 65 64 20 22 69 6e 74 65 72 70  nd added "interp
d9a0: 22 20 61 72 67 75 6d 65 6e 74 0a 74 6f 20 54 63  " argument.to Tc
d9b0: 6c 5f 46 69 6c 65 50 65 72 6d 69 73 73 69 6f 6e  l_FilePermission
d9c0: 73 20 70 72 6f 63 65 64 75 72 65 2e 20 28 4a 4c  s procedure. (JL
d9d0: 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
d9e0: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
d9f0: 2a 2a 2a 0a 0a 39 2f 31 31 2f 39 35 20 28 6e 65  ***..9/11/95 (ne
da00: 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
da10: 20 22 41 73 73 6f 63 44 61 74 61 22 20 6d 65 63   "AssocData" mec
da20: 68 61 6e 69 73 6d 2c 20 77 68 65 72 65 62 79 20  hanism, whereby 
da30: 65 78 74 65 6e 73 69 6f 6e 73 0a 63 61 6e 20 61  extensions.can a
da40: 73 73 6f 63 69 61 74 65 20 74 68 65 69 72 20 6f  ssociate their o
da50: 77 6e 20 64 61 74 61 20 77 69 74 68 20 61 6e 20  wn data with an 
da60: 69 6e 74 65 72 70 72 65 74 65 72 20 61 6e 64 20  interpreter and 
da70: 67 65 74 20 63 61 6c 6c 65 64 20 62 61 63 6b 0a  get called back.
da80: 77 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72  when the interpr
da90: 65 74 65 72 20 69 73 20 64 65 6c 65 74 65 64 2e  eter is deleted.
daa0: 20 20 54 68 69 73 20 69 73 20 76 69 73 69 62 6c    This is visibl
dab0: 65 20 61 74 20 43 20 6c 65 76 65 6c 20 76 69 61  e at C level via
dac0: 20 74 68 65 0a 70 72 6f 63 65 64 75 72 65 73 20   the.procedures 
dad0: 54 63 6c 5f 53 65 74 41 73 73 6f 63 44 61 74 61  Tcl_SetAssocData
dae0: 20 61 6e 64 20 54 63 6c 5f 47 65 74 41 73 73 6f   and Tcl_GetAsso
daf0: 63 44 61 74 61 2e 20 20 28 4a 4c 29 0a 0a 39 2f  cData.  (JL)..9/
db00: 31 31 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  11/95 (new featu
db10: 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 45 72  re) Added Tcl_Er
db20: 72 6e 6f 4d 73 67 20 74 6f 20 74 72 61 6e 73 6c  rnoMsg to transl
db30: 61 74 65 20 61 6e 20 65 72 72 6e 6f 20 76 61 6c  ate an errno val
db40: 75 65 0a 69 6e 74 6f 20 61 20 68 75 6d 61 6e 2d  ue.into a human-
db50: 72 65 61 64 61 62 6c 65 20 73 74 72 69 6e 67 2e  readable string.
db60: 20 20 54 68 69 73 20 69 73 20 6e 6f 77 20 75 73    This is now us
db70: 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 63 61  ed instead of ca
db80: 6c 6c 69 6e 67 0a 73 74 72 65 72 72 6f 72 20 62  lling.strerror b
db90: 65 63 61 75 73 65 20 73 74 72 65 72 72 6f 72 20  ecause strerror 
dba0: 6d 65 73 61 67 65 73 20 76 61 72 79 20 64 72 61  mesages vary dra
dbb0: 6d 61 74 69 63 61 6c 6c 79 20 66 72 6f 6d 20 70  matically from p
dbc0: 6c 61 74 66 6f 72 6d 0a 74 6f 20 70 6c 61 74 66  latform.to platf
dbd0: 6f 72 6d 2c 20 77 68 69 63 68 20 6d 65 73 73 65  orm, which messe
dbe0: 73 20 75 70 20 54 63 6c 20 74 65 73 74 73 2e 20  s up Tcl tests. 
dbf0: 20 54 63 6c 5f 45 72 72 6e 6f 4d 73 67 20 75 73   Tcl_ErrnoMsg us
dc00: 65 73 20 74 68 65 20 73 74 61 6e 64 61 72 64 0a  es the standard.
dc10: 50 4f 53 49 58 20 6d 65 73 73 61 67 65 73 20 66  POSIX messages f
dc20: 6f 72 20 61 6c 6c 20 74 68 65 20 63 6f 6d 6d 6f  or all the commo
dc30: 6e 20 73 69 67 6e 61 6c 73 2c 20 61 6e 64 20 63  n signals, and c
dc40: 61 6c 6c 73 20 73 74 72 65 72 72 6f 72 20 66 6f  alls strerror fo
dc50: 72 0a 73 69 67 6e 61 6c 73 20 69 74 20 64 6f 65  r.signals it doe
dc60: 73 6e 27 74 20 75 6e 64 65 72 73 74 61 6e 64 2e  sn't understand.
dc70: 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
dc80: 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 70 61 74  --- Released pat
dc90: 63 68 20 37 2e 34 70 32 2c 20 39 2f 31 35 2f 39  ch 7.4p2, 9/15/9
dca0: 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  5 --------------
dcb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 2d 2d 2d 2d 2d  ---------..-----
dcc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
dcd0: 65 61 73 65 64 20 37 2e 35 61 31 2c 20 39 2f 31  eased 7.5a1, 9/1
dce0: 35 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  5/95 -----------
dcf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f  ------------..9/
dd00: 32 32 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  22/95 (bug fix) 
dd10: 43 68 61 6e 67 65 64 20 61 75 74 6f 5f 6d 6b 69  Changed auto_mki
dd20: 6e 64 65 78 20 74 6f 20 63 72 65 61 74 65 20 74  ndex to create t
dd30: 63 6c 49 6e 64 65 78 20 66 69 6c 65 73 20 74 68  clIndex files th
dd40: 61 74 0a 68 61 6e 64 6c 65 20 64 69 72 65 63 74  at.handle direct
dd50: 6f 72 69 65 73 20 77 68 6f 73 65 20 70 61 74 68  ories whose path
dd60: 73 20 6d 69 67 68 74 20 63 6f 6e 74 61 69 6e 20  s might contain 
dd70: 73 70 61 63 65 73 2e 20 28 52 4a 29 0a 0a 39 2f  spaces. (RJ)..9/
dd80: 32 37 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  27/95 (bug fix) 
dd90: 54 68 65 20 22 66 6f 72 6d 61 74 22 20 63 6f 6d  The "format" com
dda0: 6d 61 6e 64 20 64 69 64 6e 27 74 20 63 68 65 63  mand didn't chec
ddb0: 6b 20 66 6f 72 20 68 75 67 65 20 6f 72 20 6e 65  k for huge or ne
ddc0: 67 61 74 69 76 65 0a 77 69 64 74 68 20 73 70 65  gative.width spe
ddd0: 63 69 66 69 65 72 73 2c 20 77 68 69 63 68 20 63  cifiers, which c
dde0: 6f 75 6c 64 20 63 61 75 73 65 20 63 6f 72 65 20  ould cause core 
ddf0: 64 75 6d 70 73 2e 20 28 4a 4f 29 0a 0a 39 2f 32  dumps. (JO)..9/2
de00: 37 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  7/95 (bug fix) C
de10: 6f 72 65 20 64 75 6d 70 73 20 63 6f 75 6c 64 20  ore dumps could 
de20: 6f 63 63 75 72 20 69 66 20 61 6e 20 69 6e 74 65  occur if an inte
de30: 72 61 63 74 69 76 65 20 63 6f 6d 6d 61 6e 64 20  ractive command 
de40: 74 79 70 65 64 0a 74 6f 20 74 63 6c 73 68 20 72  typed.to tclsh r
de50: 65 74 75 72 6e 65 64 20 61 20 76 65 72 79 20 6c  eturned a very l
de60: 6f 6e 67 20 72 65 73 75 6c 74 20 66 6f 72 20 74  ong result for t
de70: 63 6c 73 68 20 74 6f 20 70 72 69 6e 74 20 6f 75  clsh to print ou
de80: 74 2e 20 20 54 68 65 20 62 75 67 20 69 73 0a 61  t.  The bug is.a
de90: 63 74 75 61 6c 6c 79 20 69 6e 20 70 72 69 6e 74  ctually in print
dea0: 66 20 28 69 6e 20 53 6f 6c 61 72 69 73 20 32 2e  f (in Solaris 2.
deb0: 33 20 61 6e 64 20 32 2e 34 2c 20 61 74 20 6c 65  3 and 2.4, at le
dec0: 61 73 74 29 3b 20 20 73 77 69 74 63 68 65 64 20  ast);  switched 
ded0: 74 6f 20 75 73 65 0a 70 75 74 73 20 69 6e 73 74  to use.puts inst
dee0: 65 61 64 2e 20 20 28 4a 4f 29 0a 0a 39 2f 32 38  ead.  (JO)..9/28
def0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43 68  /95 (bug fix) Ch
df00: 61 6e 67 65 64 20 6d 61 6b 65 66 69 6c 65 2e 62  anged makefile.b
df10: 63 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20 61  c to eliminate a
df20: 20 66 61 6c 73 65 20 64 65 70 65 6e 64 65 6e 63   false dependenc
df30: 79 0a 66 6f 72 20 74 63 6c 31 36 37 35 2e 64 6c  y.for tcl1675.dl
df40: 6c 20 6f 6e 20 74 68 65 20 42 6f 72 6c 61 6e 64  l on the Borland
df50: 20 72 75 6e 20 74 69 6d 65 20 6c 69 62 72 61 72   run time librar
df60: 79 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35  y. (SS)..9/28/95
df70: 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
df80: 20 74 63 6c 37 35 2e 64 6c 6c 20 73 6f 20 69 74   tcl75.dll so it
df90: 20 6c 6f 6f 6b 73 20 66 6f 72 20 74 63 6c 31 36   looks for tcl16
dfa0: 37 35 2e 64 6c 6c 20 69 6e 73 74 65 61 64 0a 6f  75.dll instead.o
dfb0: 66 20 74 63 6c 31 36 2e 64 6c 6c 2e 20 28 53 53  f tcl16.dll. (SS
dfc0: 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67 20  )..9/28/95 (bug 
dfd0: 66 69 78 29 20 54 63 6c 20 77 61 73 20 6e 6f 74  fix) Tcl was not
dfe0: 20 63 6f 72 72 65 63 74 6c 79 20 64 65 74 65 63   correctly detec
dff0: 74 69 6e 67 20 74 68 65 20 64 69 66 66 65 72 65  ting the differe
e000: 6e 63 65 0a 62 65 74 77 65 65 6e 20 57 69 6e 33  nce.between Win3
e010: 32 73 20 61 6e 64 20 57 69 6e 64 6f 77 73 20 27  2s and Windows '
e020: 39 35 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39  95. (SS)..9/28/9
e030: 35 20 28 62 75 67 20 66 69 78 29 20 22 65 78 65  5 (bug fix) "exe
e040: 63 22 20 77 61 73 20 6e 6f 74 20 70 61 73 73 69  c" was not passi
e050: 6e 67 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 63  ng environment c
e060: 68 61 6e 67 65 73 20 74 6f 20 63 68 69 6c 64 0a  hanges to child.
e070: 70 72 6f 63 65 73 73 65 73 20 75 6e 64 65 72 20  processes under 
e080: 57 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a 39  Windows. (SS)..9
e090: 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29  /28/95 (bug fix)
e0a0: 20 43 68 61 6e 67 65 64 20 54 63 6c 20 74 6f 20   Changed Tcl to 
e0b0: 65 6e 73 75 72 65 20 74 68 61 74 20 6f 70 65 6e  ensure that open
e0c0: 20 66 69 6c 65 73 20 61 72 65 20 6e 6f 74 20 70   files are not p
e0d0: 61 73 73 65 64 0a 74 6f 20 63 68 69 6c 64 20 70  assed.to child p
e0e0: 72 6f 63 65 73 73 65 73 20 75 6e 64 65 72 20 57  rocesses under W
e0f0: 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a 39 2f  indows. (SS)..9/
e100: 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  28/95 (bug fix) 
e110: 46 69 78 65 64 20 57 69 6e 64 6f 77 73 20 27 39  Fixed Windows '9
e120: 35 20 61 6e 64 20 4e 54 20 76 65 72 73 69 6f 6e  5 and NT version
e130: 73 20 6f 66 20 65 78 65 63 20 73 6f 20 69 74 20  s of exec so it 
e140: 63 61 6e 0a 68 61 6e 64 6c 65 20 62 6f 74 68 20  can.handle both 
e150: 63 6f 6e 73 6f 6c 65 20 61 6e 64 20 77 69 6e 64  console and wind
e160: 6f 77 73 20 61 70 70 73 2e 20 20 20 28 53 53 29  ows apps.   (SS)
e170: 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67 20 66  ..9/28/95 (bug f
e180: 69 78 29 20 46 69 78 65 64 20 57 69 6e 64 6f 77  ix) Fixed Window
e190: 73 20 76 65 72 73 69 6f 6e 20 6f 66 20 65 78 65  s version of exe
e1a0: 63 20 73 6f 20 69 74 20 6e 6f 20 6c 6f 6e 67 65  c so it no longe
e1b0: 72 20 6c 65 61 76 65 73 0a 74 65 6d 70 20 66 69  r leaves.temp fi
e1c0: 6c 65 73 20 6c 79 69 6e 67 20 61 72 6f 75 6e 64  les lying around
e1d0: 2e 20 20 41 6c 73 6f 20 63 68 61 6e 67 65 64 20  .  Also changed 
e1e0: 69 74 20 73 6f 20 74 68 65 20 74 65 6d 70 20 66  it so the temp f
e1f0: 69 6c 65 73 20 61 72 65 0a 63 72 65 61 74 65 64  iles are.created
e200: 20 69 6e 20 74 68 65 20 61 70 70 72 6f 70 72 69   in the appropri
e210: 61 74 65 20 73 79 73 74 65 6d 20 64 65 70 65 6e  ate system depen
e220: 64 65 6e 74 20 74 65 6d 70 20 64 69 72 65 63 74  dent temp direct
e230: 6f 72 79 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f  ory. (SS)..9/28/
e240: 39 35 20 28 62 75 67 20 66 69 78 29 20 45 6c 69  95 (bug fix) Eli
e250: 6d 69 6e 61 74 65 64 20 73 6f 75 72 63 65 20 64  minated source d
e260: 65 70 65 6e 64 65 6e 63 79 20 6f 6e 20 74 68 65  ependency on the
e270: 20 57 69 6e 33 32 73 20 55 6e 69 76 65 72 73 61   Win32s Universa
e280: 6c 0a 54 68 75 6e 6b 20 68 65 61 64 65 72 20 66  l.Thunk header f
e290: 69 6c 65 2c 20 73 69 6e 63 65 20 69 74 20 69 73  ile, since it is
e2a0: 20 6e 6f 74 20 62 75 6e 64 6c 65 64 20 77 69 74   not bundled wit
e2b0: 68 20 56 43 2b 2b 2e 20 28 53 53 29 0a 0a 39 2f  h VC++. (SS)..9/
e2c0: 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  28/95 (bug fix) 
e2d0: 55 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 54  Under Windows, T
e2e0: 63 6c 20 6e 6f 77 20 63 6f 6e 73 74 72 75 63 74  cl now construct
e2f0: 73 20 74 68 65 20 48 4f 4d 45 0a 65 6e 76 69 72  s the HOME.envir
e300: 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20  onment variable 
e310: 66 72 6f 6d 20 48 4f 4d 45 50 41 54 48 20 61 6e  from HOMEPATH an
e320: 64 20 48 4f 4d 45 44 52 49 56 45 20 77 68 65 6e  d HOMEDRIVE when
e330: 20 48 4f 4d 45 20 69 73 20 6e 6f 74 0a 61 6c 72   HOME is not.alr
e340: 65 61 64 79 20 73 65 74 2e 20 28 53 53 29 0a 0a  eady set. (SS)..
e350: 39 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78  9/28/95 (bug fix
e360: 29 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20  ) Added support 
e370: 66 6f 72 20 22 69 6e 66 6f 20 6e 61 6d 65 6f 66  for "info nameof
e380: 65 78 65 63 75 74 61 62 6c 65 22 20 61 6e 64 20  executable" and 
e390: 22 69 6e 66 6f 0a 73 68 61 72 65 64 6c 69 62 65  "info.sharedlibe
e3a0: 78 74 65 6e 73 69 6f 6e 22 20 74 6f 20 74 68 65  xtension" to the
e3b0: 20 57 69 6e 64 6f 77 73 20 76 65 72 73 69 6f 6e   Windows version
e3c0: 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35 20  . (SS)..9/28/95 
e3d0: 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
e3e0: 64 20 74 63 6c 73 68 20 74 6f 20 63 6f 72 72 65  d tclsh to corre
e3f0: 63 74 6c 79 20 70 61 72 73 65 20 63 6f 6d 6d 61  ctly parse comma
e400: 6e 64 20 6c 69 6e 65 0a 61 72 67 75 6d 65 6e 74  nd line.argument
e410: 73 20 73 6f 20 74 68 61 74 20 62 61 63 6b 73 6c  s so that backsl
e420: 61 73 68 65 73 20 61 72 65 20 70 72 65 73 65 72  ashes are preser
e430: 76 65 64 20 75 6e 64 65 72 20 57 69 6e 64 6f 77  ved under Window
e440: 73 2e 20 28 53 53 29 0a 0a 39 2f 32 39 2f 39 35  s. (SS)..9/29/95
e450: 20 28 62 75 67 20 66 69 78 29 20 54 63 6c 20 37   (bug fix) Tcl 7
e460: 2e 35 61 31 20 74 72 65 61 74 65 64 20 65 69 74  .5a1 treated eit
e470: 68 65 72 20 72 65 74 75 72 6e 20 6f 72 20 6e 65  her return or ne
e480: 77 6c 69 6e 65 20 61 73 20 65 6e 64 0a 6f 66 20  wline as end.of 
e490: 6c 69 6e 65 20 69 6e 20 22 67 65 74 73 22 2c 20  line in "gets", 
e4a0: 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 69 6e  which caused lin
e4b0: 65 73 20 65 6e 64 69 6e 67 20 69 6e 20 43 52 4c  es ending in CRL
e4c0: 46 20 74 6f 20 62 65 20 74 72 65 61 74 65 64 20  F to be treated 
e4d0: 61 73 0a 74 77 6f 20 73 65 70 61 72 61 74 65 20  as.two separate 
e4e0: 6c 69 6e 65 73 2e 20 20 43 68 61 6e 67 65 64 20  lines.  Changed 
e4f0: 74 6f 20 61 6c 6c 6f 77 20 6f 6e 6c 79 20 63 68  to allow only ch
e500: 61 72 61 63 74 65 72 20 61 73 20 65 6e 64 2d 6f  aracter as end-o
e510: 66 2d 6c 69 6e 65 3a 0a 63 61 72 72 69 61 67 65  f-line:.carriage
e520: 20 72 65 74 75 72 6e 20 6f 6e 20 4d 61 63 73 2c   return on Macs,
e530: 20 6e 65 77 6c 69 6e 65 20 65 6c 73 65 77 68 65   newline elsewhe
e540: 72 65 2e 20 28 4a 4f 29 0a 0a 39 2f 32 39 2f 39  re. (JO)..9/29/9
e550: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
e560: 43 68 61 6e 67 65 64 20 74 6f 20 69 6e 73 74 61  Changed to insta
e570: 6c 6c 20 22 63 6f 6e 66 69 67 49 6e 66 6f 22 20  ll "configInfo" 
e580: 66 69 6c 65 20 69 6e 20 73 61 6d 65 0a 64 69 72  file in same.dir
e590: 65 63 74 6f 72 79 20 61 73 20 6c 69 62 72 61 72  ectory as librar
e5a0: 79 20 73 63 72 69 70 74 73 2e 20 20 49 74 20 64  y scripts.  It d
e5b0: 69 64 6e 27 74 20 75 73 65 64 20 74 6f 20 67 65  idn't used to ge
e5c0: 74 20 69 6e 73 74 61 6c 6c 65 64 2e 20 28 4a 4f  t installed. (JO
e5d0: 29 0a 0a 39 2f 32 39 2f 39 35 20 28 62 75 67 20  )..9/29/95 (bug 
e5e0: 66 69 78 29 20 54 63 6c 20 77 61 73 20 6e 6f 74  fix) Tcl was not
e5f0: 20 63 6f 6e 76 65 72 74 69 6e 67 20 57 69 6e 33   converting Win3
e600: 32 20 65 72 72 6f 72 73 20 69 6e 74 6f 20 50 4f  2 errors into PO
e610: 53 49 58 0a 65 72 72 6f 72 73 20 75 6e 64 65 72  SIX.errors under
e620: 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74 61 6e   some circumstan
e630: 63 65 73 2e 20 28 53 53 29 0a 0a 31 30 2f 32 2f  ces. (SS)..10/2/
e640: 39 35 20 28 62 75 67 20 66 69 78 29 20 53 61 66  95 (bug fix) Saf
e650: 65 20 69 6e 74 65 72 70 72 65 74 65 72 73 20 6e  e interpreters n
e660: 6f 20 6c 6f 6e 67 65 72 20 67 65 74 20 69 6e 69  o longer get ini
e670: 74 69 61 6c 69 7a 65 64 20 77 69 74 68 0a 61 20  tialized with.a 
e680: 63 61 6c 6c 20 74 6f 20 54 63 6c 5f 49 6e 69 74  call to Tcl_Init
e690: 28 29 2e 20 28 4a 4c 29 0a 0a 31 30 2f 31 2f 39  (). (JL)..10/1/9
e6a0: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
e6b0: 41 64 64 65 64 20 22 74 63 6c 5f 70 6c 61 74 66  Added "tcl_platf
e6c0: 6f 72 6d 22 20 67 6c 6f 62 61 6c 20 76 61 72 69  orm" global vari
e6d0: 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65 0a  able to provide.
e6e0: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 69 6e 66 6f  environment info
e6f0: 72 6d 61 74 69 6f 6e 20 73 75 63 68 20 61 73 20  rmation such as 
e700: 74 68 65 20 69 6e 73 74 72 75 63 74 69 6f 6e 20  the instruction 
e710: 73 65 74 20 61 6e 64 20 6f 70 65 72 61 74 69 6e  set and operatin
e720: 67 0a 73 79 73 74 65 6d 2e 20 28 4a 4f 29 0a 0a  g.system. (JO)..
e730: 31 30 2f 31 2f 39 35 20 28 62 75 67 20 66 69 78  10/1/95 (bug fix
e740: 29 20 22 65 78 65 63 22 20 63 6f 6d 6d 61 6e 64  ) "exec" command
e750: 20 77 61 73 6e 27 74 20 61 6c 77 61 79 73 20 67   wasn't always g
e760: 65 6e 65 72 61 74 69 6e 67 20 74 68 65 0a 22 63  enerating the."c
e770: 68 69 6c 64 20 70 72 6f 63 65 73 73 20 65 78 69  hild process exi
e780: 74 65 64 20 61 62 6e 6f 72 6d 61 6c 6c 79 22 20  ted abnormally" 
e790: 6d 65 73 73 61 67 65 20 77 68 65 6e 20 69 74 20  message when it 
e7a0: 73 68 6f 75 6c 64 20 68 61 76 65 2e 20 20 28 4a  should have.  (J
e7b0: 4f 29 0a 0a 31 30 2f 32 2f 39 35 20 28 62 75 67  O)..10/2/95 (bug
e7c0: 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 22 6d   fix) Changed "m
e7d0: 6b 4c 69 6e 6b 73 2e 74 63 6c 22 20 73 6f 20 74  kLinks.tcl" so t
e7e0: 68 61 74 20 74 68 65 20 73 63 72 69 70 74 73 20  hat the scripts 
e7f0: 69 74 20 67 65 6e 65 72 61 74 65 73 0a 77 6f 6e  it generates.won
e800: 27 74 20 63 72 65 61 74 65 20 6c 69 6e 6b 73 20  't create links 
e810: 74 68 61 74 20 6f 76 65 72 77 72 69 74 65 20 6f  that overwrite o
e820: 72 69 67 69 6e 61 6c 20 6d 61 6e 75 61 6c 20 65  riginal manual e
e830: 6e 74 72 69 65 73 20 28 74 68 65 72 65 20 77 61  ntries (there wa
e840: 73 0a 61 20 70 72 6f 62 6c 65 6d 20 77 68 65 72  s.a problem wher
e850: 65 20 70 61 63 6b 2d 6f 6c 64 2e 6e 20 77 61 73  e pack-old.n was
e860: 20 6f 76 65 72 77 72 69 74 69 6e 67 20 70 61 63   overwriting pac
e870: 6b 2e 6e 29 2e 20 20 28 4a 4f 29 0a 0a 31 30 2f  k.n).  (JO)..10/
e880: 32 2f 39 35 20 28 66 65 61 74 75 72 65 20 63 68  2/95 (feature ch
e890: 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 74 6f  ange) Changed to
e8a0: 20 75 73 65 20 2d 6c 64 6c 20 66 6f 72 20 64 79   use -ldl for dy
e8b0: 6e 61 6d 69 63 20 6c 6f 61 64 69 6e 67 20 75 6e  namic loading un
e8c0: 64 65 72 0a 4c 69 6e 75 78 20 69 66 20 69 74 20  der.Linux if it 
e8d0: 69 73 20 61 76 61 69 6c 61 62 6c 65 2c 20 62 75  is available, bu
e8e0: 74 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 2d  t fall back to -
e8f0: 6c 64 6c 64 20 69 66 20 69 74 20 69 73 6e 27 74  ldld if it isn't
e900: 2e 20 20 28 4a 4f 29 0a 0a 31 30 2f 32 2f 39 35  .  (JO)..10/2/95
e910: 20 28 62 75 67 20 66 69 78 29 20 46 69 6c 65 20   (bug fix) File 
e920: 73 68 61 72 69 6e 67 20 77 61 73 20 63 61 75 73  sharing was caus
e930: 69 6e 67 20 72 65 66 63 6f 75 6e 74 73 20 74 6f  ing refcounts to
e940: 20 72 65 61 63 68 20 30 0a 70 72 65 6d 61 74 75   reach 0.prematu
e950: 72 65 6c 79 20 66 6f 72 20 73 74 64 69 6e 2c 20  rely for stdin, 
e960: 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65 72  stdout and stder
e970: 72 2c 20 75 6e 64 65 72 20 73 6f 6d 65 20 63 69  r, under some ci
e980: 72 63 75 6d 73 74 61 6e 63 65 73 2e 20 28 4a 4c  rcumstances. (JL
e990: 29 0a 0a 31 30 2f 32 2f 39 35 20 28 70 6c 61 74  )..10/2/95 (plat
e9a0: 66 6f 72 6d 20 73 75 70 70 6f 72 74 29 20 41 64  form support) Ad
e9b0: 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
e9c0: 56 69 73 75 61 6c 20 43 2b 2b 20 63 6f 6d 70 69  Visual C++ compi
e9d0: 6c 65 72 20 6f 6e 0a 57 69 6e 64 6f 77 73 2c 20  ler on.Windows, 
e9e0: 57 69 6e 64 6f 77 73 20 27 39 35 20 61 6e 64 20  Windows '95 and 
e9f0: 57 69 6e 64 6f 77 73 20 4e 54 2c 20 63 6f 64 65  Windows NT, code
ea00: 20 64 6f 6e 61 74 65 64 20 62 79 20 47 6f 72 64   donated by Gord
ea10: 6f 6e 20 43 68 61 66 66 65 65 2e 20 28 4a 4c 29  on Chaffee. (JL)
ea20: 0a 0a 31 30 2f 33 2f 39 35 20 28 62 75 67 20 66  ..10/3/95 (bug f
ea30: 69 78 29 20 54 63 6c 20 6e 6f 77 20 66 72 65 65  ix) Tcl now free
ea40: 73 20 61 6e 79 20 6c 69 62 72 61 72 69 65 73 20  s any libraries 
ea50: 74 68 61 74 20 69 74 20 6c 6f 61 64 73 20 62 65  that it loads be
ea60: 66 6f 72 65 20 69 74 0a 65 78 69 74 73 2e 20 28  fore it.exits. (
ea70: 53 53 29 0a 0a 31 30 2f 30 33 2f 39 35 20 28 62  SS)..10/03/95 (b
ea80: 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
ea90: 67 20 69 6e 20 4d 61 63 69 6e 74 6f 73 68 20 6c  g in Macintosh l
eaa0: 73 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72 65 20  s command where 
eab0: 74 68 65 20 2d 6c 0a 61 6e 64 20 2d 43 20 6f 70  the -l.and -C op
eac0: 74 69 6f 6e 73 20 77 6f 75 6c 64 20 66 61 69 6c  tions would fail
ead0: 20 69 6e 20 61 6e 79 74 68 69 6e 67 20 62 75 74   in anything but
eae0: 20 74 68 65 20 48 4f 4d 45 20 64 69 72 65 63 74   the HOME direct
eaf0: 6f 72 79 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d  ory. (RJ)..-----
eb00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
eb10: 65 61 73 65 64 20 37 2e 35 61 32 2c 20 31 30 2f  eased 7.5a2, 10/
eb20: 36 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  6/95 -----------
eb30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30  ------------..10
eb40: 2f 31 30 2f 39 35 20 28 62 75 67 20 66 69 78 29  /10/95 (bug fix)
eb50: 20 22 66 69 6c 65 20 64 69 72 6e 61 6d 20 2f 2e   "file dirnam /.
eb60: 22 20 77 61 73 20 72 65 74 75 72 6e 69 6e 67 20  " was returning 
eb70: 22 3a 22 20 6f 6e 20 55 4e 49 58 20 69 6e 73 74  ":" on UNIX inst
eb80: 65 61 64 0a 6f 66 20 22 2f 22 2e 20 28 4a 4f 29  ead.of "/". (JO)
eb90: 0a 0a 31 30 2f 31 33 2f 39 35 20 28 62 75 67 20  ..10/13/95 (bug 
eba0: 66 69 78 29 20 45 6c 69 6d 69 6e 61 74 65 64 20  fix) Eliminated 
ebb0: 64 65 70 65 6e 64 65 6e 63 79 20 6f 6e 20 4d 4b  dependency on MK
ebc0: 53 20 74 6f 6f 6c 6b 69 74 20 66 6f 72 20 67 65  S toolkit for ge
ebd0: 6e 65 72 61 74 69 6e 67 0a 74 68 65 20 74 63 6c  nerating.the tcl
ebe0: 2e 64 65 66 20 66 69 6c 65 20 66 72 6f 6d 20 42  .def file from B
ebf0: 6f 72 6c 61 6e 64 20 6f 62 6a 65 63 74 20 66 69  orland object fi
ec00: 6c 65 73 2e 20 28 53 53 29 0a 0a 31 30 2f 31 37  les. (SS)..10/17
ec10: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
ec20: 73 29 20 4d 6f 76 65 64 20 74 68 65 20 65 76 65  s) Moved the eve
ec30: 6e 74 20 6c 6f 6f 70 20 66 72 6f 6d 20 54 63 6c  nt loop from Tcl
ec40: 20 74 6f 20 54 6b 2c 20 6d 61 64 65 20 6d 61 6a   to Tk, made maj
ec50: 6f 72 0a 72 65 76 69 73 69 6f 6e 73 20 61 6c 6f  or.revisions alo
ec60: 6e 67 20 74 68 65 20 77 61 79 3a 0a 20 20 20 20  ng the way:.    
ec70: 2d 20 4e 65 77 20 54 63 6c 20 63 6f 6d 6d 61 6e  - New Tcl comman
ec80: 64 73 3a 20 20 61 66 74 65 72 2c 20 75 70 64 61  ds:  after, upda
ec90: 74 65 2c 20 76 77 61 69 74 20 28 72 65 70 6c 61  te, vwait (repla
eca0: 63 65 73 20 22 74 6b 77 61 69 74 20 76 61 72 69  ces "tkwait vari
ecb0: 61 62 6c 65 22 29 2e 0a 20 20 20 20 2d 20 22 74  able")..    - "t
ecc0: 6b 65 72 72 6f 72 22 20 69 73 20 6e 6f 77 20 72  kerror" is now r
ecd0: 65 70 6c 61 63 65 64 20 77 69 74 68 20 22 62 67  eplaced with "bg
ece0: 65 72 72 6f 72 22 2e 0a 20 20 20 20 2d 20 54 68  error"..    - Th
ecf0: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f 63  e following proc
ed00: 65 64 75 72 65 73 20 61 72 65 20 73 69 6d 69 6c  edures are simil
ed10: 61 72 20 74 6f 20 74 68 65 69 72 20 6f 6c 64 20  ar to their old 
ed20: 54 6b 20 63 6f 75 6e 74 65 72 70 61 72 74 73 3a  Tk counterparts:
ed30: 0a 20 20 20 20 20 20 54 63 6c 5f 44 6f 4f 6e 65  .      Tcl_DoOne
ed40: 45 76 65 6e 74 2c 20 54 63 6c 5f 53 6c 65 65 70  Event, Tcl_Sleep
ed50: 2c 20 54 63 6c 5f 44 6f 57 68 65 6e 49 64 6c 65  , Tcl_DoWhenIdle
ed60: 2c 20 54 63 6c 5f 43 61 6e 63 65 6c 49 64 6c 65  , Tcl_CancelIdle
ed70: 43 61 6c 6c 2c 0a 20 20 20 20 20 20 54 63 6c 5f  Call,.      Tcl_
ed80: 43 72 65 61 74 65 46 69 6c 65 48 61 6e 64 6c 65  CreateFileHandle
ed90: 72 2c 20 54 63 6c 5f 44 65 6c 65 74 65 46 69 6c  r, Tcl_DeleteFil
eda0: 65 48 61 6e 64 6c 65 72 2c 20 54 63 6c 5f 43 72  eHandler, Tcl_Cr
edb0: 65 61 74 65 54 69 6d 65 72 48 61 6e 64 6c 65 72  eateTimerHandler
edc0: 2c 0a 20 20 20 20 20 20 54 63 6c 5f 44 65 6c 65  ,.      Tcl_Dele
edd0: 74 65 54 69 6d 65 72 48 61 6e 64 6c 65 72 2c 20  teTimerHandler, 
ede0: 54 63 6c 5f 42 61 63 6b 67 72 6f 75 6e 64 45 72  Tcl_BackgroundEr
edf0: 72 6f 72 2e 0a 20 20 20 20 2d 20 52 65 76 69 73  ror..    - Revis
ee00: 65 64 20 6e 6f 74 69 66 69 65 72 2c 20 61 64 64  ed notifier, add
ee10: 20 6e 65 77 20 63 6f 6e 63 65 70 74 20 6f 66 20   new concept of 
ee20: 22 65 76 65 6e 74 20 73 6f 75 72 63 65 22 20 77  "event source" w
ee30: 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e  ith the followin
ee40: 67 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75 72  g.      procedur
ee50: 65 73 3a 20 20 54 63 6c 5f 43 72 65 61 74 65 45  es:  Tcl_CreateE
ee60: 76 65 6e 74 53 6f 75 72 63 65 2c 20 54 63 6c 5f  ventSource, Tcl_
ee70: 44 65 6c 65 74 65 45 76 65 6e 74 53 6f 75 72 63  DeleteEventSourc
ee80: 65 2c 0a 20 20 20 20 20 20 54 63 6c 5f 57 61 74  e,.      Tcl_Wat
ee90: 63 68 46 69 6c 65 2c 20 54 63 6c 5f 53 65 74 4d  chFile, Tcl_SetM
eea0: 61 78 42 6c 6f 63 6b 54 69 6d 65 2c 20 54 63 6c  axBlockTime, Tcl
eeb0: 5f 46 69 6c 65 52 65 61 64 79 2c 20 54 63 6c 5f  _FileReady, Tcl_
eec0: 51 75 65 75 65 45 76 65 6e 74 2c 0a 20 20 20 20  QueueEvent,.    
eed0: 20 20 54 63 6c 5f 57 61 69 74 46 6f 72 45 76 65    Tcl_WaitForEve
eee0: 6e 74 2e 20 28 4a 4f 29 0a 0a 31 30 2f 33 31 2f  nt. (JO)..10/31/
eef0: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 73  95 (new features
ef00: 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20 63 72  ) Implemented cr
ef10: 6f 73 73 20 70 6c 61 74 66 6f 72 6d 20 66 69 6c  oss platform fil
ef20: 65 20 6e 61 6d 65 20 73 75 70 70 6f 72 74 20 74  e name support t
ef30: 6f 20 6d 61 6b 65 0a 69 74 20 65 61 73 69 65 72  o make.it easier
ef40: 20 74 6f 20 77 72 69 74 65 20 63 72 6f 73 73 20   to write cross 
ef50: 70 6c 61 74 66 6f 72 6d 20 73 63 72 69 70 74 73  platform scripts
ef60: 2e 20 20 54 63 6c 20 6e 6f 77 20 75 6e 64 65 72  .  Tcl now under
ef70: 73 74 61 6e 64 73 20 34 20 66 69 6c 65 20 6e 61  stands 4 file na
ef80: 6d 69 6e 67 0a 63 6f 6e 76 65 6e 74 69 6f 6e 73  ming.conventions
ef90: 3a 20 57 69 6e 64 6f 77 73 20 28 62 6f 74 68 20  : Windows (both 
efa0: 44 4f 53 20 61 6e 64 20 55 4e 43 29 2c 20 4d 61  DOS and UNC), Ma
efb0: 63 2c 20 55 6e 69 78 2c 20 61 6e 64 20 4e 65 74  c, Unix, and Net
efc0: 77 6f 72 6b 2e 20 20 54 68 65 20 6e 65 74 77 6f  work.  The netwo
efd0: 72 6b 0a 63 6f 6e 76 65 6e 74 69 6f 6e 20 69 73  rk.convention is
efe0: 20 61 20 6e 65 77 20 6e 61 6d 69 6e 67 20 6d 65   a new naming me
eff0: 63 68 61 6e 69 73 6d 20 74 68 61 74 20 63 61 6e  chanism that can
f000: 20 62 65 20 75 73 65 64 20 74 6f 20 70 61 74 68   be used to path
f010: 73 20 69 6e 20 61 20 70 6c 61 74 66 6f 72 6d 0a  s in a platform.
f020: 69 6e 64 65 70 65 6e 64 65 6e 74 20 66 61 73 68  independent fash
f030: 69 6f 6e 2e 20 20 53 65 65 20 74 68 65 20 22 66  ion.  See the "f
f040: 69 6c 65 22 20 63 6f 6d 6d 61 6e 64 20 6d 61 6e  ile" command man
f050: 75 61 6c 20 70 61 67 65 20 66 6f 72 20 6d 6f 72  ual page for mor
f060: 65 20 64 65 74 61 69 6c 73 2e 0a 54 68 65 20 70  e details..The p
f070: 72 69 6d 61 72 79 20 69 6e 74 65 72 66 61 63 65  rimary interface
f080: 73 20 63 68 61 6e 67 65 73 20 61 72 65 3a 0a 20  s changes are:. 
f090: 20 20 20 2d 20 41 6c 6c 20 54 63 6c 20 63 6f 6d     - All Tcl com
f0a0: 6d 61 6e 64 73 20 74 68 61 74 20 65 78 70 65 63  mands that expec
f0b0: 74 20 61 20 66 69 6c 65 20 6e 61 6d 65 20 6e 6f  t a file name no
f0c0: 77 20 61 63 63 65 70 74 20 62 6f 74 68 20 6e 65  w accept both ne
f0d0: 74 77 6f 72 6b 20 61 6e 64 0a 20 20 20 20 20 20  twork and.      
f0e0: 6e 61 74 69 76 65 20 66 6f 72 6d 2e 0a 20 20 20  native form..   
f0f0: 20 2d 20 54 77 6f 20 6e 65 77 20 22 66 69 6c 65   - Two new "file
f100: 22 20 73 75 62 63 6f 6d 6d 61 6e 64 73 2c 20 22  " subcommands, "
f110: 6e 61 74 69 76 65 6e 61 6d 65 22 20 61 6e 64 20  nativename" and 
f120: 22 6e 65 74 77 6f 72 6b 6e 61 6d 65 22 2c 20 70  "networkname", p
f130: 72 6f 76 69 64 65 20 61 0a 20 20 20 20 20 20 77  rovide a.      w
f140: 61 79 20 74 6f 20 63 6f 6e 76 65 72 74 20 62 65  ay to convert be
f150: 74 77 65 65 6e 20 6e 65 74 77 6f 72 6b 20 61 6e  tween network an
f160: 64 20 6e 61 74 69 76 65 20 66 6f 72 6d 2e 0a 20  d native form.. 
f170: 20 20 20 2d 20 52 65 6e 61 6d 65 64 20 54 63 6c     - Renamed Tcl
f180: 5f 54 69 6c 64 65 53 75 62 73 74 20 74 6f 20 54  _TildeSubst to T
f190: 63 6c 5f 54 72 61 6e 73 6c 61 74 65 46 69 6c 65  cl_TranslateFile
f1a0: 4e 61 6d 65 2c 20 61 6e 64 20 63 68 61 6e 67 65  Name, and change
f1b0: 64 20 69 74 20 73 6f 20 74 68 61 74 0a 20 20 20  d it so that.   
f1c0: 20 20 20 69 74 20 61 6c 77 61 79 73 20 72 65 74     it always ret
f1d0: 75 72 6e 73 20 61 20 66 69 6c 65 6e 61 6d 65 20  urns a filename 
f1e0: 69 6e 20 6e 61 74 69 76 65 20 66 6f 72 6d 2e 20  in native form. 
f1f0: 20 54 63 6c 5f 54 69 6c 64 65 53 75 62 73 74 20   Tcl_TildeSubst 
f200: 69 73 20 64 65 66 69 6e 65 64 0a 20 20 20 20 20  is defined.     
f210: 20 61 73 20 61 20 6d 61 63 72 6f 20 66 6f 72 20   as a macro for 
f220: 62 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74 69  backward compati
f230: 62 69 6c 69 74 79 2c 20 62 75 74 20 69 74 20 69  bility, but it i
f240: 73 20 64 65 70 72 65 63 61 74 65 64 2e 20 28 53  s deprecated. (S
f250: 53 29 0a 0a 31 31 2f 35 2f 39 35 20 28 6e 65 77  S)..11/5/95 (new
f260: 20 66 65 61 74 75 72 65 29 20 4d 61 64 65 20 22   feature) Made "
f270: 74 6b 65 72 72 6f 72 22 20 61 6e 64 20 22 62 67  tkerror" and "bg
f280: 65 72 72 6f 72 22 20 73 79 6e 6f 6e 79 6d 73 2c  error" synonyms,
f290: 20 73 6f 20 74 68 61 74 0a 65 69 74 68 65 72 20   so that.either 
f2a0: 6e 61 6d 65 20 63 61 6e 20 62 65 20 75 73 65 64  name can be used
f2b0: 20 74 6f 20 6d 61 6e 69 70 75 6c 61 74 65 20 74   to manipulate t
f2c0: 68 65 20 63 6f 6d 6d 61 6e 64 20 28 70 72 6f 76  he command (prov
f2d0: 69 64 65 73 20 74 65 6d 70 6f 72 61 72 79 0a 62  ides temporary.b
f2e0: 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74 69 62  ackward compatib
f2f0: 69 6c 69 74 79 20 66 6f 72 20 65 78 69 73 74 69  ility for existi
f300: 6e 67 20 73 63 72 69 70 74 73 20 74 68 61 74 20  ng scripts that 
f310: 75 73 65 20 74 6b 65 72 72 6f 72 29 2e 20 28 4a  use tkerror). (J
f320: 4f 29 0a 0a 31 31 2f 35 2f 39 35 20 28 6e 65 77  O)..11/5/95 (new
f330: 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
f340: 65 78 69 74 20 68 61 6e 64 6c 65 72 73 20 61 6e  exit handlers an
f350: 64 20 6e 65 77 20 43 20 70 72 6f 63 65 64 75 72  d new C procedur
f360: 65 73 0a 54 63 6c 5f 43 72 65 61 74 65 45 78 69  es.Tcl_CreateExi
f370: 74 48 61 6e 64 6c 65 72 2c 20 54 63 6c 5f 44 65  tHandler, Tcl_De
f380: 6c 65 74 65 45 78 69 74 48 61 6e 64 6c 65 72 2c  leteExitHandler,
f390: 20 61 6e 64 20 54 63 6c 5f 45 78 69 74 2e 20 28   and Tcl_Exit. (
f3a0: 4a 4f 29 0a 0a 31 31 2f 36 2f 39 35 20 28 6e 65  JO)..11/6/95 (ne
f3b0: 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
f3c0: 20 70 69 64 20 63 6f 6d 6d 61 6e 64 20 66 6f 72   pid command for
f3d0: 20 4d 61 63 69 6e 74 6f 73 68 20 76 65 72 73 69   Macintosh versi
f3e0: 6f 6e 20 6f 66 0a 54 63 6c 20 28 69 74 20 64 69  on of.Tcl (it di
f3f0: 64 6e 27 74 20 70 72 65 76 69 6f 75 73 6c 79 20  dn't previously 
f400: 65 78 69 73 74 20 6f 6e 20 74 68 65 20 4d 61 63  exist on the Mac
f410: 29 2e 20 28 52 4a 29 0a 0a 31 31 2f 37 2f 39 35  ). (RJ)..11/7/95
f420: 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 4e   (new feature) N
f430: 65 77 20 67 65 6e 65 72 69 63 20 49 4f 20 66 61  ew generic IO fa
f440: 63 69 6c 69 74 79 20 61 6e 64 20 73 75 70 70 6f  cility and suppo
f450: 72 74 20 66 6f 72 20 49 4f 20 74 6f 0a 66 69 6c  rt for IO to.fil
f460: 65 73 2c 20 70 69 70 65 73 20 61 6e 64 20 73 6f  es, pipes and so
f470: 63 6b 65 74 73 20 62 61 73 65 64 20 6f 6e 20 61  ckets based on a
f480: 20 63 6f 6d 6d 6f 6e 20 62 75 66 66 65 72 69 6e   common bufferin
f490: 67 20 73 63 68 65 6d 65 2e 20 53 75 70 70 6f 72  g scheme. Suppor
f4a0: 74 0a 66 6f 72 20 61 73 79 6e 63 68 72 6f 6e 6f  t.for asynchrono
f4b0: 75 73 20 28 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67  us (non-blocking
f4c0: 29 20 49 4f 20 61 6e 64 20 66 6f 72 20 65 76 65  ) IO and for eve
f4d0: 6e 74 20 64 72 69 76 65 72 20 49 4f 2e 20 53 75  nt driver IO. Su
f4e0: 70 70 6f 72 74 0a 66 6f 72 20 61 75 74 6f 6d 61  pport.for automa
f4f0: 74 69 63 20 28 62 61 63 6b 67 72 6f 75 6e 64 29  tic (background)
f500: 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 66 6c   asynchronous fl
f510: 75 73 68 69 6e 67 20 61 6e 64 20 61 73 79 6e 63  ushing and async
f520: 68 72 6f 6e 6f 75 73 0a 63 6c 6f 73 69 6e 67 20  hronous.closing 
f530: 6f 66 20 63 68 61 6e 6e 65 6c 73 2e 20 28 4a 4c  of channels. (JL
f540: 29 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77 20  )..11/7/95 (new 
f550: 66 65 61 74 75 72 65 29 20 20 41 64 64 65 64 20  feature)  Added 
f560: 6e 65 77 20 63 6f 6d 6d 61 6e 64 73 20 22 66 63  new commands "fc
f570: 6f 6e 66 69 67 75 72 65 22 20 61 6e 64 20 22 66  onfigure" and "f
f580: 62 6c 6f 63 6b 65 64 22 0a 74 6f 20 73 75 70 70  blocked".to supp
f590: 6f 72 74 20 6e 65 77 20 49 2f 4f 20 66 65 61 74  ort new I/O feat
f5a0: 75 72 65 73 20 73 75 63 68 20 61 73 20 6e 6f 6e  ures such as non
f5b0: 62 6c 6f 63 6b 69 6e 67 20 49 2f 4f 2e 20 20 41  blocking I/O.  A
f5c0: 64 64 65 64 20 22 73 6f 63 6b 65 74 22 0a 63 6f  dded "socket".co
f5d0: 6d 6d 61 6e 64 20 66 6f 72 20 63 72 65 61 74 69  mmand for creati
f5e0: 6e 67 20 54 43 50 20 63 6c 69 65 6e 74 20 61 6e  ng TCP client an
f5f0: 64 20 73 65 72 76 65 72 20 73 6f 63 6b 65 74 73  d server sockets
f600: 2e 20 28 4a 4c 29 2e 0a 0a 31 31 2f 37 2f 39 35  . (JL)...11/7/95
f610: 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 43   (new feature) C
f620: 6f 6d 70 6c 65 74 65 20 73 65 74 20 6f 66 20 43  omplete set of C
f630: 20 41 50 49 73 20 74 6f 20 74 68 65 20 6e 65 77   APIs to the new
f640: 20 67 65 6e 65 72 69 63 20 49 4f 0a 66 61 63 69   generic IO.faci
f650: 6c 69 74 79 3a 0a 20 20 20 20 2d 20 4f 70 65 6e  lity:.    - Open
f660: 69 6e 67 20 63 68 61 6e 6e 65 6c 73 3a 20 54 63  ing channels: Tc
f670: 6c 5f 4f 70 65 6e 46 69 6c 65 43 68 61 6e 6e 65  l_OpenFileChanne
f680: 6c 2c 20 54 63 6c 5f 4f 70 65 6e 43 6f 6d 6d 61  l, Tcl_OpenComma
f690: 6e 64 43 68 61 6e 6e 65 6c 2c 0a 20 20 20 20 20  ndChannel,.     
f6a0: 20 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65   Tcl_OpenTcpClie
f6b0: 6e 74 2c 20 54 63 6c 5f 4f 70 65 6e 54 63 70 53  nt, Tcl_OpenTcpS
f6c0: 65 72 76 65 72 2e 0a 20 20 20 20 2d 20 49 2f 4f  erver..    - I/O
f6d0: 20 70 72 6f 63 65 64 75 72 65 73 20 6f 6e 20 63   procedures on c
f6e0: 68 61 6e 6e 65 6c 73 2c 20 77 68 69 63 68 20 72  hannels, which r
f6f0: 6f 75 67 68 6c 79 20 6d 69 72 72 6f 72 20 74 68  oughly mirror th
f700: 65 20 41 4e 53 49 20 43 20 73 74 64 69 6f 0a 20  e ANSI C stdio. 
f710: 20 20 20 20 20 6c 69 62 72 61 72 79 3a 20 20 54       library:  T
f720: 63 6c 5f 52 65 61 64 2c 20 54 63 6c 5f 47 65 74  cl_Read, Tcl_Get
f730: 73 2c 20 54 63 6c 5f 57 72 69 74 65 2c 20 54 63  s, Tcl_Write, Tc
f740: 6c 5f 46 6c 75 73 68 2c 20 54 63 6c 5f 53 65 65  l_Flush, Tcl_See
f750: 6b 2c 0a 20 20 20 20 20 20 54 63 6c 5f 54 65 6c  k,.      Tcl_Tel
f760: 6c 2c 20 54 63 6c 5f 43 6c 6f 73 65 2c 20 54 63  l, Tcl_Close, Tc
f770: 6c 5f 45 6f 66 2c 20 54 63 6c 5f 49 6e 70 75 74  l_Eof, Tcl_Input
f780: 42 6c 6f 63 6b 65 64 2c 20 54 63 6c 5f 47 65 74  Blocked, Tcl_Get
f790: 43 68 61 6e 6e 65 6c 4f 70 74 69 6f 6e 2c 0a 20  ChannelOption,. 
f7a0: 20 20 20 20 20 54 63 6c 5f 53 65 74 43 68 61 6e       Tcl_SetChan
f7b0: 6e 65 6c 4f 70 74 69 6f 6e 2e 0a 20 20 20 20 2d  nelOption..    -
f7c0: 20 45 78 74 65 6e 73 69 6f 6e 20 6d 65 63 68 61   Extension mecha
f7d0: 6e 69 73 6d 20 66 6f 72 20 63 72 65 61 74 69 6e  nism for creatin
f7e0: 67 20 6e 65 77 20 6b 69 6e 64 73 20 6f 66 20 63  g new kinds of c
f7f0: 68 61 6e 6e 65 6c 73 3a 0a 20 20 20 20 20 20 54  hannels:.      T
f800: 63 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e 65 6c  cl_CreateChannel
f810: 2c 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c  , Tcl_GetChannel
f820: 49 6e 73 74 61 6e 63 65 44 61 74 61 2c 20 54 63  InstanceData, Tc
f830: 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 54 79 70 65  l_GetChannelType
f840: 2c 0a 20 20 20 20 20 20 54 63 6c 5f 47 65 74 43  ,.      Tcl_GetC
f850: 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 54 63 6c 5f  hannelName, Tcl_
f860: 47 65 74 43 68 61 6e 6e 65 6c 46 69 6c 65 2c 20  GetChannelFile, 
f870: 54 63 6c 5f 52 65 67 69 73 74 65 72 43 68 61 6e  Tcl_RegisterChan
f880: 6e 65 6c 2c 0a 20 20 20 20 20 20 54 63 6c 5f 55  nel,.      Tcl_U
f890: 6e 72 65 67 69 73 74 65 72 43 68 61 6e 6e 65 6c  nregisterChannel
f8a0: 2c 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c  , Tcl_GetChannel
f8b0: 2e 0a 20 20 20 20 2d 20 45 76 65 6e 74 2d 64 72  ..    - Event-dr
f8c0: 69 76 65 6e 20 49 2f 4f 20 6f 6e 20 63 68 61 6e  iven I/O on chan
f8d0: 6e 65 6c 73 3a 20 54 63 6c 5f 43 72 65 61 74 65  nels: Tcl_Create
f8e0: 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 2c 0a  ChannelHandler,.
f8f0: 20 20 20 20 20 20 54 63 6c 5f 44 65 6c 65 74 65        Tcl_Delete
f900: 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 2e 20  ChannelHandler. 
f910: 28 4a 4c 29 0a 0a 31 31 2f 37 2f 39 35 20 28 6e  (JL)..11/7/95 (n
f920: 65 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e  ew feature) Chan
f930: 6e 65 6c 20 64 72 69 76 65 72 20 69 6e 74 65 72  nel driver inter
f940: 66 61 63 65 20 73 70 65 63 69 66 69 63 61 74 69  face specificati
f950: 6f 6e 20 74 6f 20 61 6c 6c 6f 77 0a 6e 65 77 20  on to allow.new 
f960: 74 79 70 65 73 20 6f 66 20 63 68 61 6e 6e 65 6c  types of channel
f970: 73 20 74 6f 20 62 65 20 61 64 64 65 64 20 65 61  s to be added ea
f980: 73 69 6c 79 20 74 6f 20 54 63 6c 2e 20 43 75 72  sily to Tcl. Cur
f990: 72 65 6e 74 6c 79 20 62 65 69 6e 67 20 75 73 65  rently being use
f9a0: 64 0a 69 6e 20 74 68 72 65 65 20 64 72 69 76 65  d.in three drive
f9b0: 72 73 20 2d 20 66 6f 72 20 66 69 6c 65 73 2c 20  rs - for files, 
f9c0: 70 69 70 65 73 20 61 6e 64 20 54 43 50 2d 62 61  pipes and TCP-ba
f9d0: 73 65 64 20 73 6f 63 6b 65 74 73 2e 20 28 4a 4c  sed sockets. (JL
f9e0: 29 2e 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77  )...11/7/95 (new
f9f0: 20 66 65 61 74 75 72 65 29 20 69 6e 74 65 72 70   feature) interp
fa00: 20 64 65 6c 65 74 65 20 6e 6f 77 20 74 61 6b 65   delete now take
fa10: 73 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 20  s any number of 
fa20: 70 61 74 68 0a 6e 61 6d 65 73 20 6f 66 20 69 6e  path.names of in
fa30: 74 65 72 70 72 65 74 65 72 73 20 74 6f 20 64 65  terpreters to de
fa40: 6c 65 74 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20  lete, including 
fa50: 7a 65 72 6f 2e 20 28 4a 4c 29 2e 0a 0a 31 31 2f  zero. (JL)...11/
fa60: 38 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  8/95 (new featur
fa70: 65 29 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 27  e) implemented '
fa80: 69 6e 66 6f 20 68 6f 73 74 6e 61 6d 65 27 20 61  info hostname' a
fa90: 6e 64 20 54 63 6c 5f 47 65 74 48 6f 73 74 4e 61  nd Tcl_GetHostNa
faa0: 6d 65 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 67 65  me.command to ge
fab0: 74 20 68 6f 73 74 20 6e 61 6d 65 20 6f 66 20 6d  t host name of m
fac0: 61 63 68 69 6e 65 20 6f 6e 20 77 68 69 63 68 20  achine on which 
fad0: 74 68 65 20 54 63 6c 20 70 72 6f 63 65 73 73 20  the Tcl process 
fae0: 69 73 20 72 75 6e 6e 69 6e 67 2e 20 28 4a 4c 29  is running. (JL)
faf0: 0a 0a 31 31 2f 39 2f 39 35 20 28 6e 65 77 20 66  ..11/9/95 (new f
fb00: 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e  eature) Implemen
fb10: 74 65 64 20 66 69 6c 65 20 41 50 49 73 20 66 6f  ted file APIs fo
fb20: 72 20 61 63 63 65 73 73 20 74 6f 20 6c 6f 77 20  r access to low 
fb30: 6c 65 76 65 6c 20 66 69 6c 65 73 0a 6f 6e 20 65  level files.on e
fb40: 61 63 68 20 73 79 73 74 65 6d 2e 20 54 68 65 20  ach system. The 
fb50: 41 50 49 73 20 61 72 65 3a 20 54 63 6c 5f 43 6c  APIs are: Tcl_Cl
fb60: 6f 73 65 46 69 6c 65 2c 20 54 63 6c 5f 4f 70 65  oseFile, Tcl_Ope
fb70: 6e 46 69 6c 65 2c 20 54 63 6c 5f 52 65 61 64 46  nFile, Tcl_ReadF
fb80: 69 6c 65 2c 0a 54 63 6c 5f 57 72 69 74 65 46 69  ile,.Tcl_WriteFi
fb90: 6c 65 20 61 6e 64 20 54 63 6c 5f 53 65 65 6b 46  le and Tcl_SeekF
fba0: 69 6c 65 2e 20 41 6c 73 6f 20 69 6d 70 6c 65 6d  ile. Also implem
fbb0: 65 6e 74 65 64 20 54 63 6c 5f 57 61 69 74 50 69  ented Tcl_WaitPi
fbc0: 64 20 77 68 69 63 68 20 77 61 69 74 73 0a 69 6e  d which waits.in
fbd0: 20 61 20 73 79 73 74 65 6d 20 64 65 70 65 6e 64   a system depend
fbe0: 65 6e 74 20 6d 61 6e 6e 65 72 20 66 6f 72 20 61  ent manner for a
fbf0: 20 63 68 69 6c 64 20 70 72 6f 63 65 73 73 2e 20   child process. 
fc00: 28 4a 4c 29 0a 0a 31 31 2f 39 2f 39 35 20 28 6e  (JL)..11/9/95 (n
fc10: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
fc20: 64 20 54 63 6c 5f 55 70 64 61 74 65 4c 69 6e 6b  d Tcl_UpdateLink
fc30: 65 64 56 61 72 20 70 72 6f 63 65 64 75 72 65 20  edVar procedure 
fc40: 74 6f 20 66 6f 72 63 65 20 61 0a 54 63 6c 20 76  to force a.Tcl v
fc50: 61 72 69 61 62 6c 65 20 74 6f 20 62 65 20 75 70  ariable to be up
fc60: 64 61 74 65 64 20 61 66 74 65 72 20 69 74 73 20  dated after its 
fc70: 43 20 76 61 72 69 61 62 6c 65 20 63 68 61 6e 67  C variable chang
fc80: 65 73 2e 20 28 4a 4f 29 0a 0a 31 31 2f 39 2f 39  es. (JO)..11/9/9
fc90: 35 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  5 (bug fix) The 
fca0: 67 6c 6f 62 20 63 6f 6d 6d 61 6e 64 20 68 61 73  glob command has
fcb0: 20 62 65 65 6e 20 74 6f 74 61 6c 6c 79 20 72 65   been totally re
fcc0: 69 6d 70 6c 65 6d 65 6e 74 65 64 20 73 6f 0a 74  implemented so.t
fcd0: 68 61 74 20 69 74 20 63 61 6e 20 73 75 70 70 6f  hat it can suppo
fce0: 72 74 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c  rt different fil
fcf0: 65 20 6e 61 6d 65 20 63 6f 6e 76 65 6e 74 69 6f  e name conventio
fd00: 6e 73 2e 20 20 49 74 20 6e 6f 77 20 68 61 6e 64  ns.  It now hand
fd10: 6c 65 73 0a 57 69 6e 64 6f 77 73 20 66 69 6c 65  les.Windows file
fd20: 20 6e 61 6d 65 73 20 28 62 6f 74 68 20 55 4e 43   names (both UNC
fd30: 20 61 6e 64 20 64 72 69 76 65 2d 72 65 6c 61 74   and drive-relat
fd40: 69 76 65 29 20 70 72 6f 70 65 72 6c 79 2e 20 20  ive) properly.  
fd50: 49 74 20 61 6c 73 6f 0a 73 75 70 70 6f 72 74 73  It also.supports
fd60: 20 6e 65 73 74 65 64 20 62 72 61 63 65 73 20 63   nested braces c
fd70: 6f 72 72 65 63 74 6c 79 20 6e 6f 77 2e 20 28 53  orrectly now. (S
fd80: 53 29 0a 0a 31 31 2f 31 33 2f 39 35 20 28 62 75  S)..11/13/95 (bu
fd90: 67 20 66 69 78 29 20 46 69 78 65 64 20 4d 61 6b  g fix) Fixed Mak
fda0: 65 66 69 6c 65 2e 69 6e 20 73 6f 20 74 68 61 74  efile.in so that
fdb0: 20 63 6f 6e 66 69 67 75 72 65 20 63 61 6e 20 62   configure can b
fdc0: 65 20 72 75 6e 0a 66 72 6f 6d 20 61 20 63 6c 65  e run.from a cle
fdd0: 61 6e 20 64 69 72 65 63 74 6f 72 79 20 73 65 70  an directory sep
fde0: 61 72 61 74 65 20 66 72 6f 6d 20 74 68 65 20 54  arate from the T
fdf0: 63 6c 20 73 6f 75 72 63 65 20 74 72 65 65 2c 20  cl source tree, 
fe00: 61 6e 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 73  and compilations
fe10: 0a 63 61 6e 20 62 65 20 70 65 72 66 6f 72 6d 65  .can be performe
fe20: 64 20 74 68 65 72 65 2e 20 28 4a 4f 29 0a 0a 31  d there. (JO)..1
fe30: 31 2f 31 34 2f 39 35 20 28 62 75 67 20 66 69 78  1/14/95 (bug fix
fe40: 29 20 46 69 78 65 64 20 66 69 6c 65 20 73 68 61  ) Fixed file sha
fe50: 72 69 6e 67 20 62 65 74 77 65 65 6e 20 69 6e 74  ring between int
fe60: 65 72 70 72 65 74 65 72 73 20 61 6e 64 20 66 69  erpreters and fi
fe70: 6c 65 0a 74 72 61 6e 73 66 65 72 72 69 6e 67 20  le.transferring 
fe80: 62 65 74 77 65 65 6e 20 69 6e 74 65 72 70 72 65  between interpre
fe90: 74 65 72 73 20 74 6f 20 63 6f 72 72 65 63 74 6c  ters to correctl
fea0: 79 20 6d 61 6e 61 67 65 20 74 68 65 20 72 65 66  y manage the ref
feb0: 63 6f 75 6e 74 20 73 6f 20 74 68 61 74 0a 66 69  count so that.fi
fec0: 6c 65 73 20 61 72 65 20 63 6c 6f 73 65 64 20 77  les are closed w
fed0: 68 65 6e 20 74 68 65 20 6c 61 73 74 20 72 65 66  hen the last ref
fee0: 65 72 65 6e 63 65 20 74 6f 20 74 68 65 6d 20 69  erence to them i
fef0: 73 20 64 69 73 63 61 72 64 65 64 2e 20 28 4a 4c  s discarded. (JL
ff00: 29 0a 0a 31 31 2f 31 34 2f 39 35 20 28 62 75 67  )..11/14/95 (bug
ff10: 20 66 69 78 29 20 46 69 78 65 64 20 67 65 74 74   fix) Fixed gett
ff20: 69 6d 65 6f 66 64 61 79 20 69 6d 70 6c 65 6d 65  imeofday impleme
ff30: 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 0a  ntation for the.
ff40: 4d 61 63 69 6e 74 6f 73 68 2e 20 20 54 68 69 73  Macintosh.  This
ff50: 20 66 69 78 65 73 20 73 65 76 65 72 61 6c 20 74   fixes several t
ff60: 69 6d 69 6e 67 20 72 65 6c 61 74 65 64 20 62 75  iming related bu
ff70: 67 73 2e 20 28 52 4a 29 0a 0a 31 31 2f 31 37 2f  gs. (RJ)..11/17/
ff80: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  95 (new feature)
ff90: 20 41 64 64 65 64 20 6d 69 73 73 69 6e 67 20 73   Added missing s
ffa0: 75 70 70 6f 72 74 20 66 6f 72 20 69 6e 66 6f 20  upport for info 
ffb0: 6e 61 6d 65 6f 66 65 78 65 63 75 74 61 62 6c 65  nameofexecutable
ffc0: 0a 6f 6e 20 74 68 65 20 4d 61 63 69 6e 74 6f 73  .on the Macintos
ffd0: 68 2e 20 28 52 4a 29 0a 0a 31 31 2f 31 37 2f 39  h. (RJ)..11/17/9
ffe0: 35 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  5 (bug fix) The 
fff0: 54 63 6c 20 76 61 72 69 61 62 6c 65 73 20 61 72  Tcl variables ar
10000 67 63 20 61 72 67 76 20 61 6e 64 20 61 72 67 76  gc argv and argv
10010 30 20 6e 6f 77 20 72 65 74 75 72 6e 0a 73 6f 6d  0 now return.som
10020 65 74 68 69 6e 67 20 72 65 61 73 6f 6e 61 62 6c  ething reasonabl
10030 65 20 6f 6e 20 74 68 65 20 4d 61 63 2e 20 20 28  e on the Mac.  (
10040 52 4a 29 0a 0a 31 31 2f 32 32 2f 39 35 20 28 6e  RJ)..11/22/95 (n
10050 65 77 20 66 65 61 74 75 72 65 29 20 49 6d 70 6c  ew feature) Impl
10060 65 6d 65 6e 74 65 64 20 22 61 75 74 6f 2d 64 65  emented "auto-de
10070 74 65 63 74 22 20 6d 6f 64 65 20 66 6f 72 20 65  tect" mode for e
10080 6e 64 20 6f 66 20 6c 69 6e 65 0a 74 72 61 6e 73  nd of line.trans
10090 6c 61 74 69 6f 6e 73 2e 20 4f 6e 20 69 6e 70 75  lations. On inpu
100a0 74 2c 20 73 74 61 6e 64 61 6c 6f 6e 65 20 22 5c  t, standalone "\
100b0 72 22 20 6d 65 61 6e 20 4d 41 43 20 6d 6f 64 65  r" mean MAC mode
100c0 2c 20 73 74 61 6e 64 61 6c 6f 6e 65 20 22 5c 6e  , standalone "\n
100d0 22 0a 6d 65 61 6e 20 55 6e 69 78 20 6d 6f 64 65  ".mean Unix mode
100e0 20 61 6e 64 20 22 5c 72 5c 6e 22 20 6d 65 61 6e   and "\r\n" mean
100f0 73 20 57 69 6e 64 6f 77 73 20 6d 6f 64 65 2e 20  s Windows mode. 
10100 4f 6e 20 6f 75 74 70 75 74 2c 20 74 68 65 20 6d  On output, the m
10110 6f 64 65 20 69 73 0a 6d 6f 64 69 66 69 65 64 20  ode is.modified 
10120 74 6f 20 77 68 61 74 65 76 65 72 20 74 68 65 20  to whatever the 
10130 70 6c 61 74 66 6f 72 6d 20 73 70 65 63 69 66 69  platform specifi
10140 63 20 6d 6f 64 65 20 66 6f 72 20 74 68 61 74 20  c mode for that 
10150 70 6c 61 74 66 6f 72 6d 20 69 73 2e 20 28 4a 4c  platform is. (JL
10160 29 0a 0a 31 31 2f 32 34 2f 39 35 20 28 66 65 61  )..11/24/95 (fea
10170 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65 70  ture change) Rep
10180 6c 61 63 65 64 20 22 63 6f 6e 66 69 67 49 6e 66  laced "configInf
10190 6f 22 20 66 69 6c 65 20 77 69 74 68 20 74 63 6c  o" file with tcl
101a0 43 6f 6e 66 69 67 2e 73 68 2c 0a 77 68 69 63 68  Config.sh,.which
101b0 20 69 73 20 6d 6f 72 65 20 63 6f 6d 70 6c 65 74   is more complet
101c0 65 20 61 6e 64 20 75 73 65 73 20 73 6c 69 67 68  e and uses sligh
101d0 74 6c 79 20 64 69 66 66 65 72 65 6e 74 20 6e 61  tly different na
101e0 6d 65 73 2e 20 20 41 6c 73 6f 0a 61 72 72 61 6e  mes.  Also.arran
101f0 67 65 64 20 66 6f 72 20 74 63 6c 43 6f 6e 66 69  ged for tclConfi
10200 67 2e 73 68 20 74 6f 20 62 65 20 69 6e 73 74 61  g.sh to be insta
10210 6c 6c 65 64 20 69 6e 20 74 68 65 20 70 6c 61 74  lled in the plat
10220 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 0a 6c 69  form-specific.li
10230 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 20  brary directory 
10240 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 27 73  instead of Tcl's
10250 20 73 63 72 69 70 74 20 6c 69 62 72 61 72 79 20   script library 
10260 64 69 72 65 63 74 6f 72 79 2e 20 28 4a 4f 29 0a  directory. (JO).
10270 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
10280 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
10290 74 68 20 54 63 6c 20 37 2e 35 61 32 2c 20 62 75  th Tcl 7.5a2, bu
102a0 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37  t not with Tcl 7
102b0 2e 34 20 2a 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  .4 ***..--------
102c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
102d0 65 64 20 70 61 74 63 68 20 37 2e 34 70 33 2c 20  ed patch 7.4p3, 
102e0 31 31 2f 32 38 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d  11/28/95 -------
102f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
10300 0a 0a 31 32 2f 35 2f 39 35 20 28 6e 65 77 20 66  ..12/5/95 (new f
10310 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63  eature) Added Tc
10320 6c 5f 46 69 6c 65 20 66 61 63 69 6c 69 74 79 20  l_File facility 
10330 74 6f 20 73 75 70 70 6f 72 74 20 70 6c 61 74 66  to support platf
10340 6f 72 6d 2d 0a 69 6e 64 65 70 65 6e 64 65 6e 74  orm-.independent
10350 20 66 69 6c 65 20 68 61 6e 64 6c 65 73 2e 20 20   file handles.  
10360 43 68 61 6e 67 65 64 20 61 6c 6c 20 69 6e 74 65  Changed all inte
10370 72 66 61 63 65 73 20 74 68 61 74 20 75 73 65 64  rfaces that used
10380 20 55 6e 69 78 2d 0a 73 74 79 6c 65 20 69 6e 74   Unix-.style int
10390 65 67 65 72 20 66 64 27 73 20 74 6f 20 75 73 65  eger fd's to use
103a0 20 54 63 6c 5f 46 69 6c 65 27 73 20 69 6e 73 74   Tcl_File's inst
103b0 65 61 64 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f  ead. (SS).*** PO
103c0 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
103d0 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 32 2f  IBILITY ***..12/
103e0 35 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  5/95 (new featur
103f0 65 29 20 41 64 64 65 64 20 61 20 6e 65 77 20 22  e) Added a new "
10400 63 6c 6f 63 6b 22 20 63 6f 6d 6d 61 6e 64 20 74  clock" command t
10410 6f 20 54 63 6c 2e 20 20 54 68 65 20 63 6f 6d 6d  o Tcl.  The comm
10420 61 6e 64 0a 61 6c 6c 6f 77 73 20 79 6f 75 20 74  and.allows you t
10430 6f 20 67 65 74 20 74 68 65 20 63 75 72 72 65 6e  o get the curren
10440 74 20 22 63 6c 69 63 6b 73 22 20 6f 72 20 73 65  t "clicks" or se
10450 63 6f 6e 64 73 20 26 20 61 6c 6c 6f 77 73 20 79  conds & allows y
10460 6f 75 20 74 6f 0a 66 6f 72 6d 61 74 20 6f 72 20  ou to.format or 
10470 73 63 61 6e 20 68 75 6d 61 6e 20 72 65 61 64 61  scan human reada
10480 62 6c 65 20 74 69 6d 65 2f 64 61 74 65 20 73 74  ble time/date st
10490 72 69 6e 67 73 2e 20 28 52 4a 29 0a 0a 31 32 2f  rings. (RJ)..12/
104a0 31 38 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  18/95 (new featu
104b0 72 65 29 20 4d 6f 76 65 64 20 54 6b 5f 50 72 65  re) Moved Tk_Pre
104c0 73 65 72 76 65 2c 20 54 6b 5f 52 65 6c 65 61 73  serve, Tk_Releas
104d0 65 2c 20 61 6e 64 20 54 6b 5f 45 76 65 6e 74 75  e, and Tk_Eventu
104e0 61 6c 6c 79 46 72 65 65 0a 74 6f 20 54 63 6c 2c  allyFree.to Tcl,
104f0 20 72 65 6e 61 6d 65 64 20 74 6f 20 54 63 6c 5f   renamed to Tcl_
10500 50 72 65 73 65 72 76 65 2c 20 54 63 6c 5f 52 65  Preserve, Tcl_Re
10510 6c 65 61 73 65 2c 20 61 6e 64 20 54 63 6c 5f 45  lease, and Tcl_E
10520 76 65 6e 74 75 61 6c 6c 79 46 72 65 65 2e 20 28  ventuallyFree. (
10530 4a 4f 29 0a 0a 31 32 2f 31 38 2f 39 35 20 28 6e  JO)..12/18/95 (n
10540 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
10550 64 20 6e 65 77 20 22 70 61 63 6b 61 67 65 22 20  d new "package" 
10560 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 61 73 73 6f  command and asso
10570 63 69 61 74 65 64 0a 70 72 6f 63 65 64 75 72 65  ciated.procedure
10580 73 20 54 63 6c 5f 50 6b 67 52 65 71 75 69 72 65  s Tcl_PkgRequire
10590 20 61 6e 64 20 54 63 6c 5f 50 6b 67 50 72 6f 76   and Tcl_PkgProv
105a0 69 64 65 2e 20 20 20 41 6c 73 6f 20 77 72 6f 74  ide.   Also wrot
105b0 65 0a 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 6c 69  e.pkg_mkIndex li
105c0 62 72 61 72 79 20 70 72 6f 63 65 64 75 72 65 20  brary procedure 
105d0 74 6f 20 63 72 65 61 74 65 20 69 6e 64 65 78 20  to create index 
105e0 66 69 6c 65 73 20 66 72 6f 6d 20 62 69 6e 61 72  files from binar
105f0 69 65 73 0a 61 6e 64 20 73 63 72 69 70 74 73 2e  ies.and scripts.
10600 20 28 4a 4f 29 0a 0a 31 32 2f 32 30 2f 39 35 20   (JO)..12/20/95 
10610 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
10620 64 65 64 20 54 63 6c 5f 57 61 69 74 46 6f 72 46  ded Tcl_WaitForF
10630 69 6c 65 20 70 72 6f 63 65 64 75 72 65 2e 20 28  ile procedure. (
10640 4a 4f 29 0a 0a 31 32 2f 32 31 2f 39 35 20 28 6e  JO)..12/21/95 (n
10650 65 77 20 66 65 61 74 75 72 65 73 29 20 4d 61 64  ew features) Mad
10660 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 61  e package name a
10670 72 67 75 6d 65 6e 74 20 74 6f 20 22 6c 6f 61 64  rgument to "load
10680 22 20 6f 70 74 69 6f 6e 61 6c 0a 28 54 63 6c 20  " optional.(Tcl 
10690 77 69 6c 6c 20 6e 6f 77 20 61 74 74 65 6d 70 74  will now attempt
106a0 20 74 6f 20 67 75 65 73 73 20 74 68 65 20 70 61   to guess the pa
106b0 63 6b 61 67 65 20 6e 61 6d 65 20 69 66 20 6e 65  ckage name if ne
106c0 63 65 73 73 61 72 79 29 2e 20 20 41 6c 73 6f 0a  cessary).  Also.
106d0 61 64 64 65 64 20 54 63 6c 5f 53 74 61 74 69 63  added Tcl_Static
106e0 50 61 63 6b 61 67 65 20 61 6e 64 20 73 75 70 70  Package and supp
106f0 6f 72 74 20 69 6e 20 22 6c 6f 61 64 22 20 66 6f  ort in "load" fo
10700 72 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 69 6e  r statically lin
10710 6b 65 64 0a 70 61 63 6b 61 67 65 73 2e 20 20 28  ked.packages.  (
10720 4a 4f 29 0a 0a 31 32 2f 32 32 2f 39 35 20 28 6e  JO)..12/22/95 (n
10730 65 77 20 66 65 61 74 75 72 65 29 20 55 70 67 72  ew feature) Upgr
10740 61 64 65 64 20 74 68 65 20 66 6f 72 65 61 63 68  aded the foreach
10750 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 63 63 65   command to acce
10760 70 74 20 6d 75 6c 74 69 70 6c 65 0a 6c 6f 6f 70  pt multiple.loop
10770 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20 6d   variables and m
10780 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 20 6c 69  ultiple value li
10790 73 74 73 2e 20 20 54 68 69 73 20 6c 65 74 73 20  sts.  This lets 
107a0 79 6f 75 20 69 74 65 72 61 74 65 20 6f 76 65 72  you iterate over
107b0 0a 6d 75 6c 74 69 70 6c 65 20 6c 69 73 74 73 20  .multiple lists 
107c0 69 6e 20 70 61 72 61 6c 6c 65 6c 2c 20 61 6e 64  in parallel, and
107d0 2f 6f 72 20 61 73 73 69 67 6e 20 6d 75 6c 74 69  /or assign multi
107e0 70 6c 65 20 6c 6f 6f 70 20 76 61 72 69 61 62 6c  ple loop variabl
107f0 65 73 20 66 72 6f 6d 0a 6f 6e 65 20 76 61 6c 75  es from.one valu
10800 65 20 6c 69 73 74 20 64 75 72 69 6e 67 20 65 61  e list during ea
10810 63 68 20 69 74 65 72 61 74 69 6f 6e 2e 20 54 68  ch iteration. Th
10820 65 20 6f 6e 6c 79 20 70 6f 74 65 6e 74 69 61 6c  e only potential
10830 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 0a 70   compatibility.p
10840 72 6f 62 6c 65 6d 20 69 73 20 77 69 74 68 20 73  roblem is with s
10850 63 72 69 70 74 73 20 74 68 61 74 20 75 73 65 64  cripts that used
10860 20 6c 6f 6f 70 20 76 61 72 69 61 62 6c 65 73 20   loop variables 
10870 77 69 74 68 20 61 20 6e 61 6d 65 20 74 68 61 74  with a name that
10880 20 63 6f 75 6c 64 20 62 65 0a 63 6f 6e 73 74 72   could be.constr
10890 75 65 64 20 74 6f 20 62 65 20 61 20 6c 69 73 74  ued to be a list
108a0 20 6f 66 20 76 61 72 69 61 62 6c 65 20 6e 61 6d   of variable nam
108b0 65 73 20 28 69 2e 65 2e 20 63 6f 6e 74 61 69 6e  es (i.e. contain
108c0 65 64 20 73 70 61 63 65 73 29 2e 20 20 28 42 57  ed spaces).  (BW
108d0 29 0a 0a 31 2f 35 2f 39 36 20 28 6e 65 77 20 66  )..1/5/96 (new f
108e0 65 61 74 75 72 65 29 20 43 68 61 6e 67 65 64 20  eature) Changed 
108f0 74 63 6c 73 68 20 73 6f 20 69 74 20 62 75 69 6c  tclsh so it buil
10900 64 73 20 61 73 20 61 20 63 6f 6e 73 6f 6c 65 20  ds as a console 
10910 6d 6f 64 65 0a 61 70 70 6c 69 63 61 74 69 6f 6e  mode.application
10920 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 2e 20   under Windows. 
10930 20 4e 6f 77 20 74 63 6c 73 68 20 63 61 6e 20 62   Now tclsh can b
10940 65 20 75 73 65 64 20 66 72 6f 6d 20 74 68 65 20  e used from the 
10950 63 6f 6d 6d 61 6e 64 0a 6c 69 6e 65 20 77 69 74  command.line wit
10960 68 20 70 69 70 65 73 20 6f 72 20 69 6e 74 65 72  h pipes or inter
10970 61 63 74 69 76 65 6c 79 2e 20 20 4e 6f 74 65 20  actively.  Note 
10980 74 68 61 74 20 74 68 69 73 20 6f 6e 6c 79 20 77  that this only w
10990 6f 72 6b 73 20 75 6e 64 65 72 0a 57 69 6e 64 6f  orks under.Windo
109a0 77 73 20 39 35 20 6f 72 20 4e 54 2e 20 28 53 53  ws 95 or NT. (SS
109b0 29 0a 0a 31 2f 31 37 2f 39 36 20 28 6e 65 77 20  )..1/17/96 (new 
109c0 66 65 61 74 75 72 65 29 20 4d 6f 64 69 66 69 65  feature) Modifie
109d0 64 20 4d 61 6b 65 66 69 6c 65 20 61 6e 64 20 63  d Makefile and c
109e0 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20  onfigure script 
109f0 74 6f 20 61 6c 6c 6f 77 0a 54 63 6c 20 74 6f 20  to allow.Tcl to 
10a00 62 65 20 63 6f 6d 70 69 6c 65 64 20 61 73 20 61  be compiled as a
10a10 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 3a   shared library:
10a20 20 20 75 73 65 20 74 68 65 20 2d 2d 65 6e 61 62    use the --enab
10a30 6c 65 2d 73 68 61 72 65 64 20 6f 70 74 69 6f 6e  le-shared option
10a40 0a 77 68 65 6e 20 63 6f 6e 66 69 67 75 69 6e 67  .when configuing
10a50 2e 20 20 28 4a 4f 29 0a 0a 31 2f 31 37 2f 39 36  .  (JO)..1/17/96
10a60 20 28 72 65 6d 6f 76 65 64 20 6f 62 73 6f 6c 65   (removed obsole
10a70 74 65 20 66 65 61 74 75 72 65 73 29 20 20 52 65  te features)  Re
10a80 6d 6f 76 65 64 20 74 68 65 20 70 72 6f 63 65 64  moved the proced
10a90 75 72 65 73 20 54 63 6c 5f 45 6e 74 65 72 46 69  ures Tcl_EnterFi
10aa0 6c 65 0a 61 6e 64 20 54 63 6c 5f 47 65 74 4f 70  le.and Tcl_GetOp
10ab0 65 6e 46 69 6c 65 3a 20 20 74 68 65 73 65 20 6e  enFile:  these n
10ac0 6f 20 6c 6f 6e 67 65 72 20 6d 61 6b 65 20 73 65  o longer make se
10ad0 6e 73 65 20 77 69 74 68 20 74 68 65 20 6e 65 77  nse with the new
10ae0 20 49 2f 4f 20 73 79 73 74 65 6d 2e 20 28 4a 4c   I/O system. (JL
10af0 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
10b00 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
10b10 2a 2a 2a 0a 0a 31 2f 31 39 2f 39 36 20 28 62 75  ***..1/19/96 (bu
10b20 67 20 66 69 78 65 73 29 20 50 72 65 76 65 6e 74  g fixes) Prevent
10b30 65 64 20 66 6f 72 6d 61 74 69 6f 6e 20 6f 66 20  ed formation of 
10b40 63 69 72 63 75 6c 61 72 20 61 6c 69 61 73 65 73  circular aliases
10b50 2c 20 74 68 72 6f 75 67 68 20 74 68 65 0a 54 63  , through the.Tc
10b60 6c 20 27 69 6e 74 65 72 70 20 61 6c 69 61 73 27  l 'interp alias'
10b70 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 74 68 72   command and thr
10b80 6f 75 67 68 20 74 68 65 20 27 72 65 6e 61 6d 65  ough the 'rename
10b90 27 20 63 6f 6d 6d 61 6e 64 2c 20 61 73 20 77 65  ' command, as we
10ba0 6c 6c 20 61 73 0a 74 68 72 6f 75 67 68 20 74 68  ll as.through th
10bb0 65 20 43 20 41 50 49 20 54 63 6c 5f 43 72 65 61  e C API Tcl_Crea
10bc0 74 65 41 6c 69 61 73 2e 20 28 4a 4c 29 0a 0a 31  teAlias. (JL)..1
10bd0 2f 31 39 2f 39 36 20 28 62 75 67 20 66 69 78 65  /19/96 (bug fixe
10be0 73 29 20 46 69 78 65 64 20 73 65 76 65 72 61 6c  s) Fixed several
10bf0 20 62 75 67 73 20 69 6e 20 64 69 72 65 63 74 20   bugs in direct 
10c00 64 65 6c 65 74 69 6f 6e 20 6f 66 20 69 6e 74 65  deletion of inte
10c10 72 70 72 65 74 65 72 73 0a 77 69 74 68 20 54 63  rpreters.with Tc
10c20 6c 5f 44 65 6c 65 74 65 49 6e 74 65 72 70 20 77  l_DeleteInterp w
10c30 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65  hen the interpre
10c40 74 65 72 20 69 73 20 61 20 73 6c 61 76 65 3b 20  ter is a slave; 
10c50 66 69 78 65 73 20 62 61 73 65 64 20 6f 6e 20 61  fixes based on a
10c60 0a 70 61 74 63 68 20 72 65 63 65 69 76 65 64 20  .patch received 
10c70 66 72 6f 6d 20 56 69 6b 74 6f 72 20 44 75 6b 68  from Viktor Dukh
10c80 6f 76 6e 69 20 6f 66 20 45 53 4d 2e 20 28 4a 4c  ovni of ESM. (JL
10c90 29 0a 0a 31 2f 31 39 2f 39 36 20 28 6e 65 77 20  )..1/19/96 (new 
10ca0 66 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65  feature) Impleme
10cb0 6e 74 65 64 20 6f 6e 2d 63 6c 6f 73 65 20 68 61  nted on-close ha
10cc0 6e 64 6c 65 72 73 20 66 6f 72 20 63 68 61 6e 6e  ndlers for chann
10cd0 65 6c 73 3b 20 61 64 64 65 64 0a 74 68 65 20 43  els; added.the C
10ce0 20 41 50 49 73 20 54 63 6c 5f 43 72 65 61 74 65   APIs Tcl_Create
10cf0 43 6c 6f 73 65 48 61 6e 64 6c 65 72 20 61 6e 64  CloseHandler and
10d00 20 54 63 6c 5f 44 65 6c 65 74 65 43 6c 6f 73 65   Tcl_DeleteClose
10d10 48 61 6e 64 6c 65 72 2e 20 28 4a 4c 29 0a 0a 31  Handler. (JL)..1
10d20 2f 31 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /19/96 (new feat
10d30 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64  ure) Implemented
10d40 20 70 6f 72 74 61 62 6c 65 20 65 72 72 6f 72 20   portable error 
10d50 72 65 70 6f 72 74 69 6e 67 20 6d 65 63 68 61 6e  reporting mechan
10d60 69 73 6d 3b 20 61 64 64 65 64 0a 74 68 65 20 43  ism; added.the C
10d70 20 41 50 49 73 20 54 63 6c 5f 53 65 74 45 72 72   APIs Tcl_SetErr
10d80 6e 6f 20 61 6e 64 20 54 63 6c 5f 47 65 74 45 72  no and Tcl_GetEr
10d90 72 6e 6f 2e 20 28 4a 4c 29 0a 0a 31 2f 32 34 2f  rno. (JL)..1/24/
10da0 39 36 20 28 62 75 67 20 66 69 78 29 20 55 6e 6b  96 (bug fix) Unk
10db0 6e 6f 77 6e 20 63 6f 6d 6d 61 6e 64 20 70 72 6f  nown command pro
10dc0 63 65 73 73 69 6e 67 20 70 72 6f 70 65 72 6c 79  cessing properly
10dd0 20 69 6e 76 6f 6b 65 73 20 65 78 74 65 72 6e 61   invokes externa
10de0 6c 0a 63 6f 6d 6d 61 6e 64 73 20 75 6e 64 65 72  l.commands under
10df0 20 57 69 6e 64 6f 77 73 20 4e 54 20 61 6e 64 20   Windows NT and 
10e00 57 69 6e 64 6f 77 73 20 27 39 35 20 6e 6f 77 2e  Windows '95 now.
10e10 20 28 53 53 29 0a 0a 31 2f 32 33 2f 39 36 20 28   (SS)..1/23/96 (
10e20 62 75 67 20 66 69 78 29 20 45 6c 69 6d 69 6e 61  bug fix) Elimina
10e30 74 65 64 20 65 78 74 72 65 6d 65 6c 79 20 6c 6f  ted extremely lo
10e40 6e 67 20 73 74 61 72 74 75 70 20 74 69 6d 65 73  ng startup times
10e50 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20 27   under Windows '
10e60 39 35 2e 0a 54 68 65 20 70 72 6f 62 6c 65 6d 20  95..The problem 
10e70 77 61 73 20 61 20 72 65 73 75 6c 74 20 6f 66 20  was a result of 
10e80 74 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61 62  the option datab
10e90 61 73 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69  ase initializati
10ea0 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 63 6f 6e  on code that.con
10eb0 63 61 74 65 6e 61 74 65 64 20 24 48 4f 4d 45 20  catenated $HOME 
10ec0 77 69 74 68 20 2f 2e 58 64 65 66 61 75 6c 74 73  with /.Xdefaults
10ed0 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 61  , resulting in a
10ee0 20 2f 2f 20 69 6e 20 74 68 65 20 6d 69 64 64 6c   // in the middl
10ef0 65 20 6f 66 20 74 68 65 0a 66 69 6c 65 20 6e 61  e of the.file na
10f00 6d 65 2e 20 20 55 6e 64 65 72 20 57 69 6e 64 6f  me.  Under Windo
10f10 77 73 20 27 39 35 2c 20 74 68 69 73 20 69 73 20  ws '95, this is 
10f20 69 6e 63 6f 72 72 65 63 74 6c 79 20 69 6e 74 65  incorrectly inte
10f30 72 70 72 65 74 65 64 20 61 73 20 61 20 55 4e 43  rpreted as a UNC
10f40 0a 70 61 74 68 2e 20 20 54 68 65 79 20 64 65 6c  .path.  They del
10f50 61 79 73 20 63 61 6d 65 20 66 72 6f 6d 20 74 68  ays came from th
10f60 65 20 6e 65 74 77 6f 72 6b 20 74 69 6d 65 6f 75  e network timeou
10f70 74 73 20 6e 65 65 64 65 64 20 74 6f 20 64 65 74  ts needed to det
10f80 65 72 6d 69 6e 65 20 74 68 61 74 0a 74 68 65 20  ermine that.the 
10f90 66 69 6c 65 20 6e 61 6d 65 20 77 61 73 20 69 6e  file name was in
10fa0 76 61 6c 69 64 2e 20 20 54 63 6c 5f 54 72 61 6e  valid.  Tcl_Tran
10fb0 73 6c 61 74 65 46 69 6c 65 4e 61 6d 65 20 6e 6f  slateFileName no
10fc0 77 20 73 75 70 70 72 65 73 73 65 73 20 64 75 70  w suppresses dup
10fd0 6c 69 63 61 74 65 0a 73 6c 61 73 68 65 73 20 74  licate.slashes t
10fe0 68 61 74 20 61 72 65 6e 27 74 20 61 74 20 74 68  hat aren't at th
10ff0 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74  e beginning of t
11000 68 65 20 66 69 6c 65 20 6e 61 6d 65 2e 20 28 53  he file name. (S
11010 53 29 0a 09 09 09 09 20 20 20 20 20 0a 31 2f 32  S).....     .1/2
11020 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43  5/96 (bug fix) C
11030 68 61 6e 67 65 64 20 65 78 65 63 20 61 6e 64 20  hanged exec and 
11040 6f 70 65 6e 20 74 6f 20 63 72 65 61 74 65 20 63  open to create c
11050 68 69 6c 64 72 65 6e 20 73 6f 20 74 68 65 79 20  hildren so they 
11060 61 72 65 0a 61 74 74 61 63 68 65 64 20 74 6f 20  are.attached to 
11070 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 27  the application'
11080 73 20 63 6f 6e 73 6f 6c 65 20 69 66 20 69 74 20  s console if it 
11090 65 78 69 73 74 73 2e 20 28 53 53 29 0a 0a 31 2f  exists. (SS)..1/
110a0 33 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  31/96 (bug fix) 
110b0 46 69 78 65 64 20 63 6f 6d 6d 61 6e 64 20 6c 69  Fixed command li
110c0 6e 65 20 70 61 72 73 69 6e 67 20 74 6f 20 68 61  ne parsing to ha
110d0 6e 64 6c 65 20 65 6d 62 65 64 64 65 64 0a 73 70  ndle embedded.sp
110e0 61 63 65 73 20 75 6e 64 65 72 20 57 69 6e 64 6f  aces under Windo
110f0 77 73 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d  ws. (SS)..------
11100 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
11110 61 73 65 64 20 37 2e 35 62 31 2c 20 32 2f 31 2f  ased 7.5b1, 2/1/
11120 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  96 -------------
11130 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 2f 37 2f  ----------..2/7/
11140 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
11150 65 64 20 6f 66 66 20 62 79 20 6f 6e 65 20 65 72  ed off by one er
11160 72 6f 72 20 69 6e 20 61 72 67 75 6d 65 6e 74 20  ror in argument 
11170 70 61 72 73 69 6e 67 20 63 6f 64 65 20 75 6e 64  parsing code und
11180 65 72 0a 57 69 6e 64 6f 77 73 2e 20 28 53 53 29  er.Windows. (SS)
11190 0a 0a 32 2f 37 2f 39 36 20 28 62 75 67 20 66 69  ..2/7/96 (bug fi
111a0 78 29 20 46 69 78 65 64 20 62 75 67 73 20 69 6e  x) Fixed bugs in
111b0 20 56 43 2b 2b 20 6d 61 6b 65 66 69 6c 65 20 74   VC++ makefile t
111c0 68 61 74 20 69 6d 70 72 6f 70 65 72 6c 79 0a 69  hat improperly.i
111d0 6e 69 74 69 61 6c 69 7a 65 64 20 74 68 65 20 74  nitialized the t
111e0 63 6c 37 35 2e 64 6c 6c 2e 20 20 46 69 78 65 64  cl75.dll.  Fixed
111f0 20 62 75 67 73 20 69 6e 20 42 6f 72 6c 61 6e 64   bugs in Borland
11200 20 6d 61 6b 65 66 69 6c 65 20 74 68 61 74 20 63   makefile that c
11210 61 75 73 65 64 0a 62 75 69 6c 64 20 66 61 69 6c  aused.build fail
11220 75 72 65 73 20 75 6e 64 65 72 20 57 69 6e 64 6f  ures under Windo
11230 77 73 20 4e 54 2e 20 28 53 53 29 0a 0a 32 2f 39  ws NT. (SS)..2/9
11240 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
11250 78 65 64 20 64 65 61 64 6c 6f 63 6b 20 70 72 6f  xed deadlock pro
11260 62 6c 65 6d 20 69 6e 20 41 55 54 4f 20 65 6e 64  blem in AUTO end
11270 20 6f 66 20 6c 69 6e 65 20 74 72 61 6e 73 6c 61   of line transla
11280 74 69 6f 6e 0a 6d 6f 64 65 20 77 68 69 63 68 20  tion.mode which 
11290 77 6f 75 6c 64 20 63 61 75 73 65 20 61 20 73 6f  would cause a so
112a0 63 6b 65 74 20 73 65 72 76 65 72 20 77 69 74 68  cket server with
112b0 20 73 65 76 65 72 61 6c 20 63 6f 6e 63 75 72 72   several concurr
112c0 65 6e 74 20 63 6c 69 65 6e 74 73 0a 77 72 69 74  ent clients.writ
112d0 69 6e 67 20 69 6e 20 43 52 4c 46 20 6d 6f 64 65  ing in CRLF mode
112e0 20 74 6f 20 68 61 6e 67 2e 20 28 4a 4c 29 0a 0a   to hang. (JL)..
112f0 32 2f 39 2f 39 36 20 28 41 50 49 20 63 68 61 6e  2/9/96 (API chan
11300 67 65 29 20 52 65 70 6c 61 63 65 64 20 2d 6c 69  ge) Replaced -li
11310 6e 65 6d 6f 64 65 20 6f 70 74 69 6f 6e 20 74 6f  nemode option to
11320 20 66 63 6f 6e 66 69 67 75 72 65 20 77 69 74 68   fconfigure with
11330 20 61 0a 6e 65 77 20 2d 62 75 66 66 65 72 69 6e   a.new -bufferin
11340 67 20 6f 70 74 69 6f 6e 2c 20 61 64 64 65 64 20  g option, added 
11350 22 6e 6f 6e 65 22 20 73 65 74 74 69 6e 67 20 74  "none" setting t
11360 6f 20 65 6e 61 62 6c 65 20 69 6d 6d 65 64 69 61  o enable immedia
11370 74 65 20 77 72 69 74 65 2e 20 28 4a 4c 29 0a 2a  te write. (JL).*
11380 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  ** INCOMPATIBILI
11390 54 59 20 77 69 74 68 20 62 31 20 2a 2a 2a 0a 0a  TY with b1 ***..
113a0 32 2f 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74  2/9/96 (new feat
113b0 75 72 65 29 20 41 64 64 65 64 20 43 20 41 50 49  ure) Added C API
113c0 20 54 63 6c 5f 49 6e 70 75 74 42 75 66 66 65 72   Tcl_InputBuffer
113d0 65 64 20 77 68 69 63 68 20 72 65 74 75 72 6e 73  ed which returns
113e0 20 74 68 65 20 63 6f 75 6e 74 0a 6f 66 20 62 79   the count.of by
113f0 74 65 73 20 63 75 72 72 65 6e 74 6c 79 20 62 75  tes currently bu
11400 66 66 65 72 65 64 20 69 6e 20 74 68 65 20 69 6e  ffered in the in
11410 70 75 74 20 62 75 66 66 65 72 20 6f 66 20 61 20  put buffer of a 
11420 63 68 61 6e 6e 65 6c 2c 20 61 6e 64 20 6f 20 66  channel, and o f
11430 6f 72 0a 6f 75 74 70 75 74 20 6f 6e 6c 79 20 63  or.output only c
11440 68 61 6e 6e 65 6c 73 2e 20 28 4a 4c 29 0a 0a 32  hannels. (JL)..2
11450 2f 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  /9/96 (new featu
11460 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20  re) Implemented 
11470 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 63 6f 6e  asynchronous con
11480 6e 65 63 74 20 66 6f 72 20 73 6f 63 6b 65 74 73  nect for sockets
11490 2e 20 28 4a 4c 29 0a 0a 32 2f 39 2f 39 36 20 28  . (JL)..2/9/96 (
114a0 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
114b0 65 64 20 43 20 41 50 49 20 54 63 6c 5f 53 65 74  ed C API Tcl_Set
114c0 44 65 66 61 75 6c 74 54 72 61 6e 73 6c 61 74 69  DefaultTranslati
114d0 6f 6e 20 74 6f 20 73 65 74 20 28 70 65 72 0a 63  on to set (per.c
114e0 68 61 6e 6e 65 6c 29 20 74 68 65 20 64 65 66 61  hannel) the defa
114f0 75 6c 74 20 65 6e 64 20 6f 66 20 6c 69 6e 65 20  ult end of line 
11500 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64 65  translation mode
11510 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f  . This is the mo
11520 64 65 20 74 68 61 74 0a 77 69 6c 6c 20 62 65 20  de that.will be 
11530 69 6e 73 74 61 6c 6c 65 64 20 69 66 20 61 6e 20  installed if an 
11540 6f 75 74 70 75 74 20 6f 70 65 72 61 74 69 6f 6e  output operation
11550 20 69 73 20 64 6f 6e 65 20 6f 6e 20 74 68 65 20   is done on the 
11560 63 68 61 6e 6e 65 6c 20 77 68 69 6c 65 20 69 74  channel while it
11570 20 69 73 0a 73 74 69 6c 6c 20 69 6e 20 41 55 54   is.still in AUT
11580 4f 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a 0a 32 2f  O mode. (JL)..2/
11590 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43  9/96 (bug fix) C
115a0 68 61 6e 67 65 64 20 54 63 6c 5f 4f 70 65 6e 43  hanged Tcl_OpenC
115b0 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 20 69 6e  ommandChannel in
115c0 74 65 72 66 61 63 65 20 74 6f 20 70 72 6f 70 65  terface to prope
115d0 72 6c 79 0a 68 61 6e 64 6c 65 20 61 6c 6c 20 6f  rly.handle all o
115e0 66 20 74 68 65 20 63 6f 6d 62 69 6e 61 74 69 6f  f the combinatio
115f0 6e 73 20 6f 66 20 73 74 64 69 6f 20 69 6e 68 65  ns of stdio inhe
11600 72 69 74 61 6e 63 65 20 69 6e 20 62 61 63 6b 67  ritance in backg
11610 72 6f 75 6e 64 0a 70 69 70 65 6c 69 6e 65 73 2e  round.pipelines.
11620 20 20 53 65 65 20 74 68 65 20 54 63 6c 5f 4f 70    See the Tcl_Op
11630 65 6e 46 69 6c 65 43 68 61 6e 6e 65 6c 28 33 29  enFileChannel(3)
11640 20 6d 61 6e 20 70 61 67 65 20 66 6f 72 20 6d 6f   man page for mo
11650 72 65 0a 69 6e 66 6f 2e 20 20 54 68 69 73 20 63  re.info.  This c
11660 68 61 6e 67 65 20 66 69 78 65 73 20 74 68 65 20  hange fixes the 
11670 62 75 67 20 77 68 65 72 65 20 65 78 65 63 20 6f  bug where exec o
11680 66 20 61 20 62 61 63 6b 67 72 6f 75 6e 64 20 70  f a background p
11690 69 70 65 6c 69 6e 65 0a 77 61 73 20 6e 6f 74 20  ipeline.was not 
116a0 67 65 74 74 69 6e 67 20 70 61 73 73 65 64 20 74  getting passed t
116b0 68 65 20 73 74 64 69 6f 20 68 61 6e 64 6c 65 73  he stdio handles
116c0 20 70 72 6f 70 65 72 6c 79 2e 20 28 53 53 29 0a   properly. (SS).
116d0 0a 32 2f 39 2f 39 36 20 28 62 75 67 20 66 69 78  .2/9/96 (bug fix
116e0 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20 6e 65  ) Removed the ne
116f0 77 20 54 63 6c 5f 43 72 65 61 74 65 50 69 70 65  w Tcl_CreatePipe
11700 6c 69 6e 65 20 69 6e 74 65 72 66 61 63 65 2c 20  line interface, 
11710 61 6e 64 0a 72 65 73 74 6f 72 65 64 20 74 68 65  and.restored the
11720 20 6f 6c 64 20 76 65 72 73 69 6f 6e 20 66 6f 72   old version for
11730 20 55 6e 69 78 20 70 6c 61 74 66 6f 72 6d 73 20   Unix platforms 
11740 6f 6e 6c 79 2e 20 20 41 6c 6c 20 6e 65 77 20 63  only.  All new c
11750 6f 64 65 20 73 68 6f 75 6c 64 0a 75 73 65 20 54  ode should.use T
11760 63 6c 5f 43 72 65 61 74 65 43 6f 6d 6d 61 6e 64  cl_CreateCommand
11770 43 68 61 6e 6e 65 6c 20 69 6e 73 74 65 61 64 2e  Channel instead.
11780 20 28 53 53 29 0a 0a 32 2f 39 2f 39 36 20 28 62   (SS)..2/9/96 (b
11790 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
117a0 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20 75  Makefile.in to u
117b0 73 65 20 2d 4c 20 61 6e 64 20 2d 6c 74 63 6c 37  se -L and -ltcl7
117c0 2e 35 20 66 6f 72 20 54 63 6c 0a 6c 69 62 72 61  .5 for Tcl.libra
117d0 72 79 20 73 6f 20 74 68 61 74 20 73 68 61 72 65  ry so that share
117e0 64 20 6c 69 62 72 61 72 69 65 73 20 61 72 65 20  d libraries are 
117f0 6d 6f 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20 62  more likely to b
11800 65 20 66 6f 75 6e 64 20 63 6f 72 72 65 63 74 6c  e found correctl
11810 79 0a 6f 6e 20 6d 6f 72 65 20 70 6c 61 74 66 6f  y.on more platfo
11820 72 6d 73 2e 20 28 4a 4f 29 0a 0a 32 2f 31 33 2f  rms. (JO)..2/13/
11830 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
11840 20 41 64 64 65 64 20 43 20 41 50 49 20 54 63 6c   Added C API Tcl
11850 5f 53 65 74 4e 6f 74 69 66 69 65 72 44 61 74 61  _SetNotifierData
11860 20 61 6e 64 0a 54 63 6c 5f 47 65 74 4e 6f 74 69   and.Tcl_GetNoti
11870 66 69 65 72 44 61 74 61 20 74 6f 20 61 6c 6c 6f  fierData to allo
11880 77 20 6e 6f 74 69 66 69 65 72 20 61 6e 64 20 63  w notifier and c
11890 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 77 72  hannel driver wr
118a0 69 74 65 72 73 20 74 6f 0a 61 73 73 6f 63 69 61  iters to.associa
118b0 74 65 20 64 61 74 61 20 77 69 74 68 20 61 20 54  te data with a T
118c0 63 6c 5f 46 69 6c 65 2e 20 20 54 68 65 20 72 65  cl_File.  The re
118d0 73 75 6c 74 20 6f 66 20 74 68 69 73 20 63 68 61  sult of this cha
118e0 6e 67 65 20 69 73 20 74 68 61 74 0a 54 63 6c 5f  nge is that.Tcl_
118f0 47 65 74 46 69 6c 65 49 6e 66 6f 20 6e 6f 77 20  GetFileInfo now 
11900 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 20 61  always returns a
11910 6e 20 4f 53 20 66 69 6c 65 20 68 61 6e 64 6c 65  n OS file handle
11920 2c 20 61 6e 64 20 54 63 6c 5f 47 65 74 46 69 6c  , and Tcl_GetFil
11930 65 0a 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f  e.can be used to
11940 20 63 6f 6e 73 74 72 75 63 74 20 61 20 54 63 6c   construct a Tcl
11950 5f 46 69 6c 65 20 66 6f 72 20 61 6e 20 65 78 74  _File for an ext
11960 65 72 6e 61 6c 6c 79 20 63 6f 6e 73 74 72 75 63  ernally construc
11970 74 65 64 20 4f 53 0a 68 61 6e 64 6c 65 2e 20 28  ted OS.handle. (
11980 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20 28 62 75  SS)..2/13/96 (bu
11990 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 57  g fix) Changed W
119a0 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 69 6d  indows socket im
119b0 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 6f 20  plementation so 
119c0 69 74 20 64 6f 65 73 6e 27 74 0a 73 65 74 20 53  it doesn't.set S
119d0 4f 5f 52 45 55 53 45 41 44 44 52 20 6f 6e 20 73  O_REUSEADDR on s
119e0 65 72 76 65 72 20 73 6f 63 6b 65 74 73 2e 20 20  erver sockets.  
119f0 4e 6f 77 20 61 74 74 65 6d 70 74 73 20 74 6f 20  Now attempts to 
11a00 63 72 65 61 74 65 20 61 20 73 65 72 76 65 72 0a  create a server.
11a10 73 6f 63 6b 65 74 20 6f 6e 20 61 20 70 6f 72 74  socket on a port
11a20 20 74 68 61 74 20 69 73 20 61 6c 72 65 61 64 79   that is already
11a30 20 69 6e 20 75 73 65 20 77 69 6c 6c 20 62 65 20   in use will be 
11a40 70 72 6f 70 65 72 6c 79 20 69 64 65 6e 74 69 66  properly identif
11a50 69 65 64 0a 61 6e 64 20 61 6e 20 65 72 72 6f 72  ied.and an error
11a60 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61 74   will be generat
11a70 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33 2f 39  ed. (SS)..2/13/9
11a80 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
11a90 64 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20  d problems with 
11aa0 44 4c 4c 20 69 6e 69 74 69 61 6c 69 7a 61 74 69  DLL initializati
11ab0 6f 6e 20 75 6e 64 65 72 20 56 69 73 75 61 6c 0a  on under Visual.
11ac0 43 2b 2b 20 74 68 61 74 20 6c 65 66 74 20 74 68  C++ that left th
11ad0 65 20 43 20 72 75 6e 20 74 69 6d 65 20 6c 69 62  e C run time lib
11ae0 72 61 72 79 20 75 6e 69 6e 69 74 69 61 6c 69 7a  rary uninitializ
11af0 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33 2f 39  ed. (SS)..2/13/9
11b00 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
11b10 64 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74  d Windows socket
11b20 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20   initialization 
11b30 73 6f 20 69 74 20 6c 6f 61 64 73 0a 77 69 6e 73  so it loads.wins
11b40 6f 63 6b 20 74 68 65 20 66 69 72 73 74 20 74 69  ock the first ti
11b50 6d 65 20 69 74 20 69 73 20 75 73 65 64 2c 20 72  me it is used, r
11b60 61 74 68 65 72 20 74 68 61 6e 20 61 74 20 74 68  ather than at th
11b70 65 20 74 69 6d 65 20 74 63 6c 37 35 2e 64 6c 6c  e time tcl75.dll
11b80 0a 69 73 20 6c 6f 61 64 65 64 2e 20 20 54 68 69  .is loaded.  Thi
11b90 73 20 73 68 6f 75 6c 64 20 66 69 78 20 74 68 65  s should fix the
11ba0 20 62 75 67 20 77 68 65 72 65 20 74 68 65 20 6d   bug where the m
11bb0 6f 64 65 6d 20 69 6d 6d 65 64 69 61 74 65 6c 79  odem immediately
11bc0 20 73 74 61 72 74 73 0a 74 72 79 69 6e 67 20 74   starts.trying t
11bd0 6f 20 63 6f 6e 6e 65 63 74 20 74 6f 20 61 20 73  o connect to a s
11be0 65 72 76 69 63 65 20 70 72 6f 76 69 64 65 72 20  ervice provider 
11bf0 77 68 65 6e 20 77 69 73 68 20 6f 72 20 74 63 6c  when wish or tcl
11c00 73 68 20 61 72 65 0a 73 74 61 72 74 65 64 2e 20  sh are.started. 
11c10 28 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20 28 6e  (SS)..2/13/96 (n
11c20 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
11c30 64 20 43 20 41 50 49 73 20 54 63 6c 5f 4d 61 6b  d C APIs Tcl_Mak
11c40 65 46 69 6c 65 43 68 61 6e 6e 65 6c 20 61 6e 64  eFileChannel and
11c50 0a 54 63 6c 5f 4d 61 6b 65 54 63 70 43 6c 69 65  .Tcl_MakeTcpClie
11c60 6e 74 43 68 61 6e 6e 65 6c 20 74 6f 20 77 72 61  ntChannel to wra
11c70 70 20 75 70 20 65 78 69 73 74 69 6e 67 20 66 64  p up existing fd
11c80 73 20 61 6e 64 20 73 6f 63 6b 65 74 73 20 69 6e  s and sockets in
11c90 74 6f 0a 63 68 61 6e 6e 65 6c 73 2e 20 50 72 6f  to.channels. Pro
11ca0 76 69 64 65 64 20 69 6d 70 6c 65 6d 65 6e 74 61  vided implementa
11cb0 74 69 6f 6e 73 20 6f 6e 20 55 6e 69 78 20 61 6e  tions on Unix an
11cc0 64 20 57 69 6e 64 6f 77 73 2e 20 28 4a 4c 29 0a  d Windows. (JL).
11cd0 0a 32 2f 31 33 2f 39 36 20 28 62 75 67 20 66 69  .2/13/96 (bug fi
11ce0 78 29 20 46 69 78 65 64 20 62 75 67 20 77 69 74  x) Fixed bug wit
11cf0 68 20 73 65 65 6b 20 6c 65 61 76 69 6e 67 20 45  h seek leaving E
11d00 4f 46 20 61 6e 64 20 42 4c 4f 43 4b 49 4e 47 20  OF and BLOCKING 
11d10 73 65 74 2e 20 28 4a 4c 29 0a 0a 32 2f 31 34 2f  set. (JL)..2/14/
11d20 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
11d30 65 64 20 72 65 65 6e 74 72 61 6e 63 79 20 70 72  ed reentrancy pr
11d40 6f 62 6c 65 6d 20 69 6e 20 66 69 6c 65 65 76 65  oblem in fileeve
11d50 6e 74 20 68 61 6e 64 6c 69 6e 67 0a 61 6e 64 20  nt handling.and 
11d60 6d 61 64 65 20 69 74 20 6d 6f 72 65 20 72 6f 62  made it more rob
11d70 75 73 74 20 69 6e 20 74 68 65 20 66 61 63 65 20  ust in the face 
11d80 6f 66 20 65 72 72 6f 72 73 2e 20 28 4a 4c 29 0a  of errors. (JL).
11d90 0a 32 2f 31 34 2f 39 36 20 28 66 65 61 74 75 72  .2/14/96 (featur
11da0 65 20 63 68 61 6e 67 65 29 20 4d 61 64 65 20 67  e change) Made g
11db0 65 6e 65 72 69 63 20 49 4f 20 6c 65 76 65 6c 20  eneric IO level 
11dc0 65 6d 75 6c 61 74 65 20 62 6c 6f 63 6b 69 6e 67  emulate blocking
11dd0 20 6d 6f 64 65 20 69 66 20 74 68 65 0a 63 68 61   mode if the.cha
11de0 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 73 20 75  nnel driver is u
11df0 6e 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65  nable to provide
11e00 20 69 74 2c 20 65 2e 67 2e 20 69 66 20 74 68 65   it, e.g. if the
11e10 20 6c 6f 77 20 6c 65 76 65 6c 20 64 65 76 69 63   low level devic
11e20 65 20 69 73 0a 61 6c 77 61 79 73 20 6e 6f 6e 62  e is.always nonb
11e30 6c 6f 63 6b 69 6e 67 2e 20 54 68 75 73 2c 20 6e  locking. Thus, n
11e40 6f 77 20 62 6c 6f 63 6b 69 6e 67 20 62 65 68 61  ow blocking beha
11e50 76 69 6f 72 20 69 73 20 61 6e 20 61 64 76 69 73  vior is an advis
11e60 6f 72 79 20 73 65 74 74 69 6e 67 20 66 6f 72 0a  ory setting for.
11e70 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73 20  channel drivers 
11e80 61 6e 64 20 63 61 6e 20 62 65 20 69 67 6e 6f 72  and can be ignor
11e90 65 64 20 73 61 66 65 6c 79 20 69 66 20 74 68 65  ed safely if the
11ea0 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20   channel driver 
11eb0 69 73 20 75 6e 61 62 6c 65 0a 74 6f 20 70 72 6f  is unable.to pro
11ec0 76 69 64 65 20 69 74 2e 20 28 4a 4c 29 0a 0a 32  vide it. (JL)..2
11ed0 2f 31 35 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /15/96 (new feat
11ee0 75 72 65 29 20 41 64 64 65 64 20 22 62 69 6e 61  ure) Added "bina
11ef0 72 79 22 20 65 6e 64 20 6f 66 20 6c 69 6e 65 20  ry" end of line 
11f00 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64 65  translation mode
11f10 2c 20 77 68 69 63 68 20 69 73 0a 61 20 73 79 6e  , which is.a syn
11f20 6f 6e 79 6d 20 6f 66 20 22 6c 66 22 20 6d 6f 64  onym of "lf" mod
11f30 65 2e 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f 39 36  e. (JL)..2/15/96
11f40 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
11f50 20 72 65 65 6e 74 72 61 6e 63 79 20 70 72 6f 62   reentrancy prob
11f60 6c 65 6d 20 69 6e 20 66 69 6c 65 65 76 65 6e 74  lem in fileevent
11f70 20 68 61 6e 64 6c 69 6e 67 20 76 73 0a 64 65 6c   handling vs.del
11f80 65 74 69 6f 6e 20 6f 66 20 63 68 61 6e 6e 65 6c  etion of channel
11f90 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73 2e   event handlers.
11fa0 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f 39 36 20 28   (JL)..2/15/96 (
11fb0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
11fc0 75 67 20 69 6e 20 65 76 65 6e 74 20 68 61 6e 64  ug in event hand
11fd0 6c 69 6e 67 20 77 68 69 63 68 20 77 6f 75 6c 64  ling which would
11fe0 20 63 61 75 73 65 20 61 0a 6e 6f 6e 62 6c 6f 63   cause a.nonbloc
11ff0 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20 74 6f 20  king channel to 
12000 6e 6f 74 20 73 65 65 20 66 75 72 74 68 65 72 20  not see further 
12010 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74 73 20  readable events 
12020 61 66 74 65 72 20 74 68 65 20 66 69 72 73 74 0a  after the first.
12030 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74 20 74  readable event t
12040 68 61 74 20 68 61 64 20 69 6e 73 75 66 66 69 63  hat had insuffic
12050 69 65 6e 74 20 69 6e 70 75 74 2e 20 28 4a 4c 29  ient input. (JL)
12060 0a 0a 32 2f 31 37 2f 39 36 20 28 62 75 67 20 66  ..2/17/96 (bug f
12070 69 78 29 20 22 69 6e 66 6f 20 63 6f 6d 70 6c 65  ix) "info comple
12080 74 65 22 20 64 69 64 6e 27 74 20 70 72 6f 70 65  te" didn't prope
12090 72 6c 79 20 68 61 6e 64 6c 65 20 63 6f 6d 6d 65  rly handle comme
120a0 6e 74 73 0a 69 6e 20 6e 65 73 74 65 64 20 63 6f  nts.in nested co
120b0 6d 6d 61 6e 64 73 2e 20 28 4a 4f 29 0a 0a 32 2f  mmands. (JO)..2/
120c0 32 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  21/96 (bug fix) 
120d0 22 65 78 65 63 22 20 75 6e 64 65 72 20 57 69 6e  "exec" under Win
120e0 64 6f 77 73 20 4e 54 2f 39 35 20 64 69 64 20 6e  dows NT/95 did n
120f0 6f 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64  ot properly hand
12100 6c 65 0a 76 65 72 79 20 6c 6f 6e 67 20 63 6f 6d  le.very long com
12110 6d 61 6e 64 20 6c 69 6e 65 73 20 28 3e 32 30 30  mand lines (>200
12120 20 63 68 61 72 73 29 2e 20 28 53 53 29 0a 0a 32   chars). (SS)..2
12130 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69 78 29  /21/96 (bug fix)
12140 20 53 6f 63 6b 65 74 73 20 63 6f 75 6c 64 20 67   Sockets could g
12150 65 74 20 69 6e 74 6f 20 61 6e 20 69 6e 66 69 6e  et into an infin
12160 69 74 65 20 6c 6f 6f 70 20 69 66 20 61 20 72 65  ite loop if a re
12170 61 64 0a 65 76 65 6e 74 20 61 72 72 69 76 65 64  ad.event arrived
12180 20 61 66 74 65 72 20 61 6c 6c 20 6f 66 20 74 68   after all of th
12190 65 20 61 76 61 69 6c 61 62 6c 65 20 64 61 74 61  e available data
121a0 20 68 61 64 20 62 65 65 6e 20 72 65 61 64 2e 20   had been read. 
121b0 28 53 53 29 0a 0a 32 2f 32 32 2f 39 36 20 28 62  (SS)..2/22/96 (b
121c0 75 67 20 66 69 78 29 20 41 64 64 65 64 20 63 61  ug fix) Added ca
121d0 73 74 20 6f 66 20 73 74 5f 73 69 7a 65 20 65 6c  st of st_size el
121e0 65 6d 65 6e 74 73 20 74 6f 20 28 6c 6f 6e 67 29  ements to (long)
121f0 20 62 65 66 6f 72 65 0a 73 70 72 69 6e 74 66 2d   before.sprintf-
12200 69 6e 67 20 69 6e 20 22 66 69 6c 65 20 73 69 7a  ing in "file siz
12210 65 22 20 63 6f 6d 6d 61 6e 64 2e 20 20 54 68 69  e" command.  Thi
12220 73 20 69 73 20 6e 65 65 64 65 64 20 74 6f 20 68  s is needed to h
12230 61 6e 64 6c 65 20 73 79 73 74 65 6d 73 0a 6c 69  andle systems.li
12240 6b 65 20 4e 65 74 42 53 44 20 77 69 74 68 20 36  ke NetBSD with 6
12250 34 2d 62 69 74 20 66 69 6c 65 20 6f 66 66 73 65  4-bit file offse
12260 74 73 2e 20 20 28 4a 4f 29 0a 0a 2d 2d 2d 2d 2d  ts.  (JO)..-----
12270 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
12280 65 61 73 65 64 20 37 2e 35 62 32 2c 20 32 2f 32  eased 7.5b2, 2/2
12290 33 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  3/96 -----------
122a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 2f  ------------..2/
122b0 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  23/96 (bug fix) 
122c0 54 43 4c 5f 56 41 52 41 52 47 53 20 6d 61 63 72  TCL_VARARGS macr
122d0 6f 20 69 6e 20 74 63 6c 2e 68 20 77 61 73 6e 27  o in tcl.h wasn'
122e0 74 20 64 65 66 69 6e 65 64 20 70 72 6f 70 65 72  t defined proper
122f0 6c 79 0a 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ly.when compilin
12300 67 20 77 69 74 68 20 43 2b 2b 2e 20 20 28 4a 4f  g with C++.  (JO
12310 29 0a 0a 32 2f 32 34 2f 39 36 20 28 62 75 67 20  )..2/24/96 (bug 
12320 66 69 78 29 20 52 65 6d 6f 76 65 64 20 64 65 70  fix) Removed dep
12330 65 6e 64 65 6e 63 69 65 73 20 6f 6e 20 4d 61 6b  endencies on Mak
12340 65 66 69 6c 65 20 69 6e 20 74 68 65 20 55 4e 49  efile in the UNI
12350 58 20 4d 61 6b 65 66 69 6c 65 3a 0a 74 68 69 73  X Makefile:.this
12360 20 63 61 75 73 65 64 20 70 72 6f 62 6c 65 6d 73   caused problems
12370 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72   on some platfor
12380 6d 73 20 28 6c 69 6b 65 20 4c 69 6e 75 78 3f 29  ms (like Linux?)
12390 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34 2f 39 36 20  . (JO)..2/24/96 
123a0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
123b0 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 62 75  configuration bu
123c0 67 20 74 68 61 74 20 6d 61 64 65 20 54 63 6c 20  g that made Tcl 
123d0 6e 6f 74 20 63 6f 6d 70 69 6c 65 0a 63 6f 72 72  not compile.corr
123e0 65 63 74 6c 79 20 6f 6e 20 4c 69 6e 75 78 20 6d  ectly on Linux m
123f0 61 63 68 69 6e 65 73 20 77 69 74 68 20 6e 65 69  achines with nei
12400 74 68 65 72 20 2d 6c 64 6c 20 6f 72 20 2d 6c 64  ther -ldl or -ld
12410 6c 64 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34 2f 39  ld. (JO)..2/24/9
12420 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  6 (new feature) 
12430 41 64 64 65 64 20 61 20 62 6c 6f 63 6b 20 6f 66  Added a block of
12440 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 64 65   comments and de
12450 66 69 6e 69 74 69 6f 6e 73 20 74 6f 0a 4d 61 6b  finitions to.Mak
12460 65 66 69 6c 65 2e 69 6e 20 74 6f 20 6d 61 6b 65  efile.in to make
12470 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 68 61   it easier to ha
12480 76 65 20 54 63 6c 27 73 20 54 63 6c 53 65 74 45  ve Tcl's TclSetE
12490 6e 76 20 65 74 63 2e 20 72 65 70 6c 61 63 65 0a  nv etc. replace.
124a0 74 68 65 20 6c 69 62 72 61 72 79 20 70 72 6f 63  the library proc
124b0 65 64 75 72 65 73 20 73 65 74 65 6e 76 20 65 74  edures setenv et
124c0 63 2c 20 73 6f 20 74 68 61 74 20 63 61 6c 6c 73  c, so that calls
124d0 20 74 6f 20 73 65 74 65 6e 76 20 65 74 63 2e 20   to setenv etc. 
124e0 69 6e 0a 74 68 65 20 61 70 70 6c 69 63 61 74 69  in.the applicati
124f0 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79  on automatically
12500 20 75 70 64 61 74 65 20 74 68 65 20 54 63 6c 20   update the Tcl 
12510 22 65 6e 76 22 20 76 61 72 69 61 62 6c 65 2e 20  "env" variable. 
12520 28 4a 4f 29 0a 0a 32 2f 32 37 2f 39 36 20 28 66  (JO)..2/27/96 (f
12530 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
12540 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 54 63  dded optional Tc
12550 6c 5f 49 6e 74 65 72 70 20 2a 20 61 72 67 75 6d  l_Interp * argum
12560 65 6e 74 20 28 6d 61 79 20 62 65 20 4e 55 4c 4c  ent (may be NULL
12570 29 0a 74 6f 20 43 20 41 50 49 20 54 63 6c 5f 43  ).to C API Tcl_C
12580 6c 6f 73 65 20 61 6e 64 20 73 69 6d 70 6c 69 66  lose and simplif
12590 69 65 64 20 63 6c 6f 73 69 6e 67 20 6f 66 20 63  ied closing of c
125a0 6f 6d 6d 61 6e 64 20 63 68 61 6e 6e 65 6c 73 2e  ommand channels.
125b0 20 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50   (JL).*** INCOMP
125c0 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54  ATIBILITY with T
125d0 63 6c 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f  cl 7.5b2, but no
125e0 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a  t with Tcl 7.4 *
125f0 2a 2a 0a 0a 32 2f 32 37 2f 39 36 20 28 66 65 61  **..2/27/96 (fea
12600 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64 64  ture change) Add
12610 65 64 20 6f 70 74 69 6f 6e 61 6c 20 54 63 6c 5f  ed optional Tcl_
12620 49 6e 74 65 72 70 20 2a 20 61 72 67 75 6d 65 6e  Interp * argumen
12630 74 20 28 6d 61 79 20 62 65 20 4e 55 4c 4c 29 0a  t (may be NULL).
12640 74 6f 20 43 20 74 79 70 65 20 64 65 66 69 6e 69  to C type defini
12650 74 69 6f 6e 20 54 63 6c 5f 44 72 69 76 65 72 43  tion Tcl_DriverC
12660 6c 6f 73 65 50 72 6f 63 3b 20 6d 6f 64 69 66 69  loseProc; modifi
12670 65 64 20 61 6c 6c 20 63 68 61 6e 6e 65 6c 20 64  ed all channel d
12680 72 69 76 65 72 73 20 74 6f 0a 69 6d 70 6c 65 6d  rivers to.implem
12690 65 6e 74 20 63 6c 6f 73 65 20 70 72 6f 63 65 64  ent close proced
126a0 75 72 65 73 20 74 68 61 74 20 61 63 63 65 70 74  ures that accept
126b0 20 74 68 65 20 61 64 64 69 74 69 6f 6e 61 6c 20   the additional 
126c0 61 72 67 75 6d 65 6e 74 2e 20 28 4a 4c 29 0a 2a  argument. (JL).*
126d0 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  ** INCOMPATIBILI
126e0 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35 62  TY with Tcl 7.5b
126f0 32 2c 20 62 75 74 20 6e 6f 74 20 77 69 74 68 20  2, but not with 
12700 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 32 2f 32  Tcl 7.4 ***..2/2
12710 38 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  8/96 (bug fix) F
12720 69 78 65 64 20 6d 65 6d 6f 72 79 20 6c 65 61 6b  ixed memory leak
12730 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63 63 75   that could occu
12740 72 20 69 66 20 61 6e 20 75 70 76 61 72 0a 72 65  r if an upvar.re
12750 66 65 72 72 65 64 20 74 6f 20 61 6e 20 65 6c 65  ferred to an ele
12760 6d 65 6e 74 20 6f 66 20 61 6e 20 61 72 72 61 79  ment of an array
12770 20 69 6e 20 74 68 65 20 73 61 6d 65 20 73 74 61   in the same sta
12780 63 6b 20 66 72 61 6d 65 20 61 73 20 74 68 65 0a  ck frame as the.
12790 75 70 76 61 72 2e 20 28 4a 4f 29 0a 0a 32 2f 32  upvar. (JO)..2/2
127a0 39 2f 39 36 20 28 66 65 61 74 75 72 65 20 63 68  9/96 (feature ch
127b0 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64 20 62  ange) Modified b
127c0 6f 74 68 20 54 63 6c 5f 44 6f 4f 6e 65 45 76 65  oth Tcl_DoOneEve
127d0 6e 74 20 61 6e 64 20 54 63 6c 5f 57 61 69 74 46  nt and Tcl_WaitF
127e0 6f 72 45 76 65 6e 74 0a 73 6f 20 74 68 61 74 20  orEvent.so that 
127f0 74 68 65 79 20 72 65 74 75 72 6e 20 69 6d 6d 65  they return imme
12800 64 69 61 74 65 6c 79 20 69 6e 20 63 61 73 65 73  diately in cases
12810 20 77 68 65 72 65 20 74 68 65 79 20 77 6f 75 6c   where they woul
12820 64 20 6f 74 68 65 72 77 69 73 65 0a 62 6c 6f 63  d otherwise.bloc
12830 6b 20 66 6f 72 65 76 65 72 20 28 65 2e 67 2e 20  k forever (e.g. 
12840 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20  if there are no 
12850 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73 20 6f  event handlers o
12860 66 20 61 6e 79 20 73 6f 72 74 29 2e 20 28 4a 4f  f any sort). (JO
12870 29 0a 0a 32 2f 32 39 2f 39 36 20 28 6e 65 77 20  )..2/29/96 (new 
12880 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 43  feature) Added C
12890 20 41 50 49 73 20 54 63 6c 5f 47 65 74 43 68 61   APIs Tcl_GetCha
128a0 6e 6e 65 6c 42 75 66 66 65 72 53 69 7a 65 20 61  nnelBufferSize a
128b0 6e 64 0a 54 63 6c 5f 53 65 74 43 68 61 6e 6e 65  nd.Tcl_SetChanne
128c0 6c 42 75 66 66 65 72 53 69 7a 65 20 74 6f 20 73  lBufferSize to s
128d0 65 74 20 61 6e 64 20 72 65 74 72 69 65 76 65 20  et and retrieve 
128e0 74 68 65 20 73 69 7a 65 2c 20 69 6e 20 62 79 74  the size, in byt
128f0 65 73 2c 20 66 6f 72 0a 62 75 66 66 65 72 73 20  es, for.buffers 
12900 61 6c 6c 6f 63 61 74 65 64 20 74 6f 20 73 74 6f  allocated to sto
12910 72 65 20 69 6e 70 75 74 20 6f 72 20 6f 75 74 70  re input or outp
12920 75 74 20 69 6e 20 61 20 63 68 61 6e 6e 65 6c 2e  ut in a channel.
12930 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f 39 36 20 28   (JL)..2/29/96 (
12940 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
12950 65 64 20 6f 70 74 69 6f 6e 20 2d 62 75 66 66 65  ed option -buffe
12960 72 73 69 7a 65 20 74 6f 20 54 63 6c 20 66 63 6f  rsize to Tcl fco
12970 6e 66 69 67 75 72 65 20 63 6f 6d 6d 61 6e 64 0a  nfigure command.
12980 74 6f 20 61 6c 6c 6f 77 20 54 63 6c 20 73 63 72  to allow Tcl scr
12990 69 70 74 73 20 74 6f 20 71 75 65 72 79 20 61 6e  ipts to query an
129a0 64 20 73 65 74 20 74 68 65 20 73 69 7a 65 20 6f  d set the size o
129b0 66 20 63 68 61 6e 6e 65 6c 20 62 75 66 66 65 72  f channel buffer
129c0 73 2e 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f 39 36  s. (JL)..2/29/96
129d0 20 28 66 65 61 74 75 72 65 20 72 65 6d 6f 76 65   (feature remove
129e0 64 29 20 52 65 6d 6f 76 65 64 20 63 68 61 6e 6e  d) Removed chann
129f0 65 6c 20 64 72 69 76 65 72 20 66 75 6e 63 74 69  el driver functi
12a00 6f 6e 20 74 6f 20 73 70 65 63 69 66 79 0a 74 68  on to specify.th
12a10 65 20 62 75 66 66 65 72 20 73 69 7a 65 20 74 6f  e buffer size to
12a20 20 75 73 65 20 77 68 65 6e 20 61 6c 6c 6f 63 61   use when alloca
12a30 74 69 6e 67 20 61 20 62 75 66 66 65 72 2e 20 52  ting a buffer. R
12a40 65 6d 6f 76 65 64 20 74 68 65 20 43 20 74 79 70  emoved the C typ
12a50 65 64 65 66 0a 66 6f 72 20 54 63 6c 5f 44 72 69  edef.for Tcl_Dri
12a60 76 65 72 42 75 66 66 65 72 53 69 7a 65 50 72 6f  verBufferSizePro
12a70 63 2e 20 43 68 61 6e 6e 65 6c 73 20 61 72 65 20  c. Channels are 
12a80 6e 6f 77 20 63 72 65 61 74 65 64 20 77 69 74 68  now created with
12a90 20 61 20 64 65 66 61 75 6c 74 0a 62 75 66 66 65   a default.buffe
12aa0 72 20 73 69 7a 65 20 6f 66 20 34 4b 2e 20 28 4a  r size of 4K. (J
12ab0 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49  L).*** INCOMPATI
12ac0 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20  BILITY with Tcl 
12ad0 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74 20 77  7.5b2, but not w
12ae0 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a  ith Tcl 7.4 ***.
12af0 0a 32 2f 32 39 2f 39 36 20 28 66 65 61 74 75 72  .2/29/96 (featur
12b00 65 20 63 68 61 6e 67 65 29 20 54 68 65 20 63 68  e change) The ch
12b10 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 66 75 6e  annel driver fun
12b20 63 74 69 6f 6e 20 66 6f 72 20 73 65 74 74 69 6e  ction for settin
12b30 67 20 62 6c 6f 63 6b 69 6e 67 0a 6d 6f 64 65 20  g blocking.mode 
12b40 6f 6e 20 74 68 65 20 64 65 76 69 63 65 20 6d 61  on the device ma
12b50 79 20 6e 6f 77 20 62 65 20 4e 55 4c 4c 2e 20 49  y now be NULL. I
12b60 66 20 74 68 65 20 67 65 6e 65 72 69 63 20 63 6f  f the generic co
12b70 64 65 20 64 65 74 65 63 74 73 20 74 68 61 74 20  de detects that 
12b80 74 68 65 0a 66 75 6e 63 74 69 6f 6e 20 69 73 20  the.function is 
12b90 4e 55 4c 4c 2c 20 6f 70 65 72 61 74 69 6f 6e 73  NULL, operations
12ba0 20 74 68 61 74 20 73 65 74 20 74 68 65 20 62 6c   that set the bl
12bb0 6f 63 6b 69 6e 67 20 6d 6f 64 65 20 6f 6e 20 74  ocking mode on t
12bc0 68 65 20 63 68 61 6e 6e 65 6c 0a 73 69 6d 70 6c  he channel.simpl
12bd0 79 20 73 75 63 63 65 65 64 2e 20 28 4a 4c 29 0a  y succeed. (JL).
12be0 0a 33 2f 32 2f 39 36 20 28 62 75 67 20 66 69 78  .3/2/96 (bug fix
12bf0 29 20 46 69 78 65 64 20 63 6f 72 65 20 64 75 6d  ) Fixed core dum
12c00 70 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63 63  p that could occ
12c10 75 72 20 69 66 20 61 20 73 79 6e 74 61 78 20 65  ur if a syntax e
12c20 72 72 6f 72 0a 28 73 75 63 68 20 61 73 20 6d 69  rror.(such as mi
12c30 73 73 69 6e 67 20 63 6c 6f 73 65 20 70 61 72 65  ssing close pare
12c40 6e 29 20 6f 63 63 75 72 72 65 64 20 69 6e 20 61  n) occurred in a
12c50 6e 20 61 72 72 61 79 20 72 65 66 65 72 65 6e 63  n array referenc
12c60 65 20 77 69 74 68 20 61 0a 76 65 72 79 20 6c 6f  e with a.very lo
12c70 6e 67 20 61 72 72 61 79 20 6e 61 6d 65 2e 20 28  ng array name. (
12c80 4a 4f 29 0a 0a 33 2f 34 2f 39 36 20 28 62 75 67  JO)..3/4/96 (bug
12c90 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20 63 6f   fix) Removed co
12ca0 64 65 20 69 6e 20 74 68 65 20 22 61 75 74 6f 5f  de in the "auto_
12cb0 6c 6f 61 64 22 20 70 72 6f 63 65 64 75 72 65 20  load" procedure 
12cc0 74 68 61 74 20 64 65 6c 65 74 65 73 0a 61 6c 6c  that deletes.all
12cd0 20 65 78 69 73 74 69 6e 67 20 61 75 74 6f 2d 6c   existing auto-l
12ce0 6f 61 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20  oad information 
12cf0 77 68 65 6e 65 76 65 72 20 74 68 65 20 22 61 75  whenever the "au
12d00 74 6f 5f 70 61 74 68 22 20 76 61 72 69 61 62 6c  to_path" variabl
12d10 65 0a 69 73 20 63 68 61 6e 67 65 64 2e 20 20 49  e.is changed.  I
12d20 6e 73 74 65 61 64 2c 20 6e 65 77 20 69 6e 66 6f  nstead, new info
12d30 72 6d 61 74 69 6f 6e 20 61 64 64 73 20 74 6f 20  rmation adds to 
12d40 77 68 61 74 20 77 61 73 20 61 6c 72 65 61 64 79  what was already
12d50 20 74 68 65 72 65 2e 0a 4f 74 68 65 72 77 69 73   there..Otherwis
12d60 65 2c 20 63 68 61 6e 67 69 6e 67 20 74 68 65 20  e, changing the 
12d70 22 61 75 74 6f 5f 70 61 74 68 22 20 76 61 72 69  "auto_path" vari
12d80 61 62 6c 65 20 63 61 75 73 65 73 20 61 6c 6c 20  able causes all 
12d90 70 61 63 6b 61 67 65 2d 0a 72 65 6c 61 74 65 64  package-.related
12da0 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20   information to 
12db0 62 65 20 6c 6f 73 74 2e 20 20 49 66 20 79 6f 75  be lost.  If you
12dc0 20 72 65 61 6c 6c 79 20 77 61 6e 74 20 74 6f 20   really want to 
12dd0 67 65 74 20 72 69 64 20 6f 66 0a 65 78 69 73 74  get rid of.exist
12de0 69 6e 67 20 61 75 74 6f 2d 6c 6f 61 64 20 69 6e  ing auto-load in
12df0 66 6f 72 6d 61 74 69 6f 6e 2c 20 75 73 65 20 61  formation, use a
12e00 75 74 6f 5f 72 65 73 65 74 20 62 65 66 6f 72 65  uto_reset before
12e10 20 73 65 74 74 69 6e 67 20 61 75 74 6f 5f 70 61   setting auto_pa
12e20 74 68 2e 20 28 4a 4f 29 0a 0a 33 2f 35 2f 39 36  th. (JO)..3/5/96
12e30 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
12e40 64 64 65 64 20 76 65 72 73 69 6f 6e 20 73 75 66  dded version suf
12e50 66 69 78 20 74 6f 20 73 68 61 72 65 64 20 6c 69  fix to shared li
12e60 62 72 61 72 79 20 6e 61 6d 65 73 20 73 6f 20 74  brary names so t
12e70 68 61 74 0a 54 63 6c 20 77 69 6c 6c 20 63 6f 6d  hat.Tcl will com
12e80 70 69 6c 65 20 75 6e 64 65 72 20 4e 65 74 42 53  pile under NetBS
12e90 44 20 61 6e 64 20 46 72 65 65 42 53 44 20 28 49  D and FreeBSD (I
12ea0 20 68 6f 70 65 29 2e 20 20 28 4a 4f 29 0a 0a 33   hope).  (JO)..3
12eb0 2f 36 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /6/96 (bug fix) 
12ec0 43 6c 65 61 6e 65 64 20 75 70 20 65 72 72 6f 72  Cleaned up error
12ed0 20 6d 65 73 73 61 67 65 73 20 69 6e 20 6e 65 77   messages in new
12ee0 20 49 2f 4f 20 73 79 73 74 65 6d 20 74 6f 20 63   I/O system to c
12ef0 6f 72 72 65 73 70 6f 6e 64 0a 6d 6f 72 65 20 63  orrespond.more c
12f00 6c 6f 73 65 6c 79 20 74 6f 20 6f 6c 64 20 49 2f  losely to old I/
12f10 4f 20 73 79 73 74 65 6d 2e 20 28 4a 4f 29 0a 0a  O system. (JO)..
12f20 33 2f 36 2f 39 36 20 28 6e 65 77 20 66 65 61 74  3/6/96 (new feat
12f30 75 72 65 29 20 41 64 64 65 64 20 2d 6d 79 61 64  ure) Added -myad
12f40 64 72 20 61 6e 64 20 2d 6d 79 70 6f 72 74 20 6f  dr and -myport o
12f50 70 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 73 6f  ptions to the so
12f60 63 6b 65 74 0a 63 6f 6d 6d 61 6e 64 2c 20 72 65  cket.command, re
12f70 6d 6f 76 65 64 20 2d 74 63 70 20 61 6e 64 20 2d  moved -tcp and -
12f80 2d 20 6f 70 74 69 6f 6e 73 2e 20 20 54 68 69 73  - options.  This
12f90 20 6c 65 74 73 20 63 6c 69 65 6e 74 73 20 61 6e   lets clients an
12fa0 64 20 73 65 72 76 65 72 73 0a 63 68 6f 6f 73 65  d servers.choose
12fb0 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 69 6e   a particular in
12fc0 74 65 72 66 61 63 65 2e 20 20 41 6c 73 6f 20 63  terface.  Also c
12fd0 68 61 6e 67 65 64 20 74 68 65 20 64 65 66 61 75  hanged the defau
12fe0 6c 74 20 73 65 72 76 65 72 20 61 64 64 72 65 73  lt server addres
12ff0 73 0a 66 72 6f 6d 20 74 68 65 20 68 6f 73 74 6e  s.from the hostn
13000 61 6d 65 20 74 6f 20 49 4e 41 44 44 52 5f 41 4e  ame to INADDR_AN
13010 59 2e 20 20 54 68 65 20 73 65 72 76 65 72 20 61  Y.  The server a
13020 63 63 65 70 74 20 63 61 6c 6c 62 61 63 6b 20 6e  ccept callback n
13030 6f 77 20 67 65 74 73 0a 70 61 73 73 65 64 20 74  ow gets.passed t
13040 68 65 20 63 6c 69 65 6e 74 27 73 20 70 6f 72 74  he client's port
13050 20 61 73 20 77 65 6c 6c 20 61 73 20 49 50 20 61   as well as IP a
13060 64 64 72 65 73 73 2e 20 20 54 68 65 20 43 20 69  ddress.  The C i
13070 6e 74 65 72 66 61 63 65 73 20 66 6f 72 0a 54 63  nterfaces for.Tc
13080 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74 20  l_OpenTcpClient 
13090 61 6e 64 20 54 63 6c 5f 4f 70 65 6e 54 63 70 53  and Tcl_OpenTcpS
130a0 65 72 76 65 72 20 68 61 76 65 20 63 68 61 6e 67  erver have chang
130b0 65 64 20 74 6f 20 73 75 70 70 6f 72 74 20 74 68  ed to support th
130c0 65 0a 61 62 6f 76 65 20 63 68 61 6e 67 65 73 2e  e.above changes.
130d0 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BW).*** POTENT
130e0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
130f0 49 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35  ITY with Tcl 7.5
13100 62 32 2c 20 62 75 74 20 6e 6f 74 20 77 69 74 68  b2, but not with
13110 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 33 2f   Tcl 7.4 ***..3/
13120 36 2f 39 36 20 28 63 68 61 6e 67 65 64 20 66 65  6/96 (changed fe
13130 61 74 75 72 65 29 20 54 68 65 20 6c 69 62 72 61  ature) The libra
13140 72 79 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f  ry function auto
13150 5f 6d 6b 69 6e 64 65 78 20 77 69 6c 6c 20 6e 6f  _mkindex will no
13160 77 0a 64 65 66 61 75 6c 74 20 74 6f 20 75 73 69  w.default to usi
13170 6e 67 20 74 68 65 20 70 61 74 74 65 72 6e 20 22  ng the pattern "
13180 2a 2e 74 63 6c 22 20 69 66 20 6e 6f 20 70 61 74  *.tcl" if no pat
13190 74 65 72 6e 20 69 73 20 67 69 76 65 6e 2e 20 28  tern is given. (
131a0 52 4a 29 0a 0a 33 2f 36 2f 39 36 20 28 62 75 67  RJ)..3/6/96 (bug
131b0 20 66 69 78 29 20 54 68 65 20 73 6f 63 6b 65 74   fix) The socket
131c0 20 63 68 61 6e 6e 65 6c 20 63 6f 64 65 20 66 6f   channel code fo
131d0 72 20 74 68 65 20 4d 61 63 69 6e 74 6f 73 68 20  r the Macintosh 
131e0 68 61 73 20 62 65 65 6e 0a 72 65 77 72 69 74 74  has been.rewritt
131f0 65 6e 20 74 6f 20 75 73 65 20 6e 61 74 69 76 65  en to use native
13200 20 4d 61 63 54 63 70 2e 20 20 28 52 4a 29 0a 0a   MacTcp.  (RJ)..
13210 33 2f 37 2f 39 36 20 28 6e 65 77 20 66 65 61 74  3/7/96 (new feat
13220 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 53  ure) Added Tcl_S
13230 65 74 53 74 64 43 68 61 6e 6e 65 6c 20 61 6e 64  etStdChannel and
13240 20 54 63 6c 5f 47 65 74 53 74 64 43 68 61 6e 6e   Tcl_GetStdChann
13250 65 6c 0a 69 6e 74 65 72 66 61 63 65 73 20 74 6f  el.interfaces to
13260 20 61 6c 6c 6f 77 20 61 70 70 6c 69 63 61 74 69   allow applicati
13270 6f 6e 73 20 74 6f 20 65 78 70 6c 69 63 69 74 6c  ons to explicitl
13280 79 20 73 65 74 20 61 6e 64 20 67 65 74 20 74 68  y set and get th
13290 65 20 67 6c 6f 62 61 6c 0a 73 74 61 6e 64 61 72  e global.standar
132a0 64 20 63 68 61 6e 6e 65 6c 73 2e 20 28 53 53 29  d channels. (SS)
132b0 0a 0a 33 2f 37 2f 39 36 20 28 62 75 67 20 66 69  ..3/7/96 (bug fi
132c0 78 29 20 54 63 6c 20 64 69 64 20 63 6c 6f 73 65  x) Tcl did close
132d0 20 6e 6f 74 20 74 68 65 20 66 69 6c 65 20 64 65   not the file de
132e0 73 63 72 69 70 74 6f 72 73 20 61 73 73 6f 63 69  scriptors associ
132f0 61 74 65 64 0a 77 69 74 68 20 22 73 74 64 6f 75  ated.with "stdou
13300 74 22 2c 20 65 74 63 2e 20 77 68 65 6e 20 74 68  t", etc. when th
13310 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20  e corresponding 
13320 63 68 61 6e 6e 65 6c 73 20 77 65 72 65 20 63 6c  channels were cl
13330 6f 73 65 64 2e 20 20 28 53 53 29 0a 0a 33 2f 37  osed.  (SS)..3/7
13340 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 52 65  /96 (bug fix) Re
13350 77 6f 72 6b 65 64 20 73 68 61 72 65 64 20 6c 69  worked shared li
13360 62 72 61 72 79 20 61 6e 64 20 64 79 6e 61 6d 69  brary and dynami
13370 63 20 6c 6f 61 64 69 6e 67 20 73 74 75 66 66 20  c loading stuff 
13380 74 6f 0a 74 72 79 20 74 6f 20 67 65 74 20 69 74  to.try to get it
13390 20 77 6f 72 6b 69 6e 67 20 75 6e 64 65 72 20 41   working under A
133a0 49 58 2e 20 20 41 64 64 65 64 20 6e 65 77 20 40  IX.  Added new @
133b0 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 40 20 61  [email protected] a
133c0 75 74 6f 63 6f 6e 66 0a 73 79 6d 62 6f 6c 20 61  utoconf.symbol a
133d0 73 20 70 61 72 74 20 6f 66 20 74 68 69 73 2e 20  s part of this. 
133e0 20 41 49 58 20 70 72 6f 62 61 62 6c 79 20 64 6f   AIX probably do
133f0 65 73 6e 27 74 20 77 6f 72 6b 20 79 65 74 2c 20  esn't work yet, 
13400 62 75 74 20 69 74 20 73 68 6f 75 6c 64 0a 62 65  but it should.be
13410 20 61 20 6c 6f 74 20 63 6c 6f 73 65 72 2e 20 28   a lot closer. (
13420 4a 4f 29 0a 0a 33 2f 37 2f 39 36 20 28 66 65 61  JO)..3/7/96 (fea
13430 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64 64  ture change) Add
13440 65 64 20 54 63 6c 5f 43 68 61 6e 6e 65 6c 50 72  ed Tcl_ChannelPr
13450 6f 63 20 74 79 70 65 64 65 66 20 61 6e 64 20 63  oc typedef and c
13460 68 61 6e 67 65 64 20 74 68 65 0a 73 69 67 6e 61  hanged the.signa
13470 74 75 72 65 20 6f 66 20 54 63 6c 5f 43 72 65 61  ture of Tcl_Crea
13480 74 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72  teChannelHandler
13490 20 61 6e 64 20 54 63 6c 5f 44 65 6c 65 74 65 43   and Tcl_DeleteC
134a0 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 20 74 6f  hannelHandler to
134b0 20 74 61 6b 65 0a 54 63 6c 5f 43 68 61 6e 6e 65   take.Tcl_Channe
134c0 6c 50 72 6f 63 20 61 72 67 75 6d 65 6e 74 73 20  lProc arguments 
134d0 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f 46  instead of Tcl_F
134e0 69 6c 65 50 72 6f 63 20 61 72 67 75 6d 65 6e 74  ileProc argument
134f0 73 2e 20 54 68 69 73 20 63 68 61 6e 67 65 0a 73  s. This change.s
13500 68 6f 75 6c 64 20 6e 6f 74 20 61 66 66 65 63 74  hould not affect
13510 20 61 6e 79 20 63 6f 64 65 20 6f 75 74 73 69 64   any code outsid
13520 65 20 54 63 6c 20 62 65 63 61 75 73 65 20 74 68  e Tcl because th
13530 65 20 73 69 67 6e 61 74 75 72 65 73 20 6f 66 0a  e signatures of.
13540 54 63 6c 5f 43 68 61 6e 6e 65 6c 50 72 6f 63 20  Tcl_ChannelProc 
13550 61 6e 64 20 54 63 6c 5f 46 69 6c 65 50 72 6f 63  and Tcl_FileProc
13560 20 61 72 65 20 63 6f 6d 70 61 74 69 62 6c 65 2e   are compatible.
13570 20 28 4a 4c 29 0a 0a 33 2f 37 2f 39 36 20 28 41   (JL)..3/7/96 (A
13580 50 49 20 63 68 61 6e 67 65 29 20 4d 6f 64 69 66  PI change) Modif
13590 69 65 64 20 73 69 67 6e 61 74 75 72 65 20 6f 66  ied signature of
135a0 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 4f   Tcl_GetChannelO
135b0 70 74 69 6f 6e 20 74 6f 20 72 65 74 75 72 6e 0a  ption to return.
135c0 61 6e 20 69 6e 74 20 69 6e 73 74 65 61 64 20 6f  an int instead o
135d0 66 20 63 68 61 72 20 2a 2c 20 61 6e 64 20 74 6f  f char *, and to
135e0 20 74 61 6b 65 20 61 20 54 63 6c 5f 44 53 74 72   take a Tcl_DStr
135f0 69 6e 67 20 2a 20 61 72 67 75 6d 65 6e 74 2e 20  ing * argument. 
13600 4d 6f 64 69 66 69 65 64 0a 74 68 65 20 69 6d 70  Modified.the imp
13610 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 6f 20 74  lementation so t
13620 68 61 74 20 74 68 65 20 6f 70 74 69 6f 6e 20 6e  hat the option n
13630 61 6d 65 20 63 61 6e 20 62 65 20 4e 55 4c 4c 2c  ame can be NULL,
13640 20 74 6f 20 6d 65 61 6e 20 74 68 61 74 20 74 68   to mean that th
13650 65 0a 63 61 6c 6c 20 73 68 6f 75 6c 64 20 72 65  e.call should re
13660 74 72 69 65 76 65 20 61 20 6c 69 73 74 20 6f 66  trieve a list of
13670 20 61 6c 74 65 72 6e 61 74 69 6e 67 20 6f 70 74   alternating opt
13680 69 6f 6e 20 6e 61 6d 65 73 20 61 6e 64 20 76 61  ion names and va
13690 6c 75 65 73 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 49  lues. (JL).*** I
136a0 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77  NCOMPATIBILITY w
136b0 69 74 68 20 54 63 6c 20 37 2e 35 62 32 2c 20 62  ith Tcl 7.5b2, b
136c0 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20  ut not with Tcl 
136d0 37 2e 34 20 2a 2a 2a 0a 0a 33 2f 37 2f 39 36 20  7.4 ***..3/7/96 
136e0 28 41 50 49 20 63 68 61 6e 67 65 29 20 41 64 64  (API change) Add
136f0 65 64 20 54 63 6c 5f 44 72 69 76 65 72 53 65 74  ed Tcl_DriverSet
13700 4f 70 74 69 6f 6e 50 72 6f 63 2c 20 54 63 6c 5f  OptionProc, Tcl_
13710 44 72 69 76 65 72 47 65 74 4f 70 74 69 6f 6e 50  DriverGetOptionP
13720 72 6f 63 0a 74 79 70 65 64 65 66 73 2c 20 61 64  roc.typedefs, ad
13730 64 65 64 20 74 77 6f 20 73 6c 6f 74 73 20 73 65  ded two slots se
13740 74 4f 70 74 69 6f 6e 50 72 6f 63 20 61 6e 64 20  tOptionProc and 
13750 67 65 74 4f 70 74 69 6f 6e 50 72 6f 63 20 74 6f  getOptionProc to
13760 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a 74 79 70   the channel.typ
13770 65 20 73 74 72 75 63 74 75 72 65 2e 20 54 68 65  e structure. The
13780 73 65 20 6d 61 79 20 62 65 20 4e 55 4c 4c 20 74  se may be NULL t
13790 6f 20 69 6e 64 69 63 61 74 65 20 74 68 61 74 20  o indicate that 
137a0 74 68 65 20 63 68 61 6e 6e 65 6c 20 74 79 70 65  the channel type
137b0 20 64 6f 65 73 0a 6e 6f 74 20 73 75 70 70 6f 72   does.not suppor
137c0 74 20 61 6e 79 20 6f 70 74 69 6f 6e 73 2e 20 28  t any options. (
137d0 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54  JL).*** INCOMPAT
137e0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
137f0 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74 20   7.5b2, but not 
13800 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a  with Tcl 7.4 ***
13810 0a 0a 33 2f 37 2f 39 36 20 28 66 65 61 74 75 72  ..3/7/96 (featur
13820 65 20 63 68 61 6e 67 65 29 20 73 74 64 69 6e 2c  e change) stdin,
13830 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65   stdout and stde
13840 72 72 20 63 61 6e 20 6e 6f 77 20 62 65 20 70 75  rr can now be pu
13850 74 20 69 6e 74 6f 0a 6e 6f 6e 62 6c 6f 63 6b 69  t into.nonblocki
13860 6e 67 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a 0a 33  ng mode. (JL)..3
13870 2f 38 2f 39 36 20 28 66 65 61 74 75 72 65 20 63  /8/96 (feature c
13880 68 61 6e 67 65 29 20 45 6c 69 6d 69 6e 61 74 65  hange) Eliminate
13890 64 20 64 65 70 65 6e 64 65 6e 63 65 20 6f 6e 20  d dependence on 
138a0 74 68 65 20 72 65 67 69 73 74 72 79 20 66 6f 72  the registry for
138b0 0a 66 69 6e 64 69 6e 67 20 74 68 65 20 54 63 6c  .finding the Tcl
138c0 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20   library files. 
138d0 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  (SS)..----------
138e0 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
138f0 20 37 2e 35 62 33 2c 20 33 2f 38 2f 39 36 20 2d   7.5b3, 3/8/96 -
13900 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13910 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 31 32 2f 39 36 20  ------..3/12/96 
13920 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76 65  (feature improve
13930 6d 65 6e 74 29 20 4d 6f 64 69 66 69 65 64 20 73  ment) Modified s
13940 74 61 72 74 75 70 20 73 63 72 69 70 74 20 74 6f  tartup script to
13950 20 6c 6f 6f 6b 20 69 6e 20 73 65 76 65 72 61 6c   look in several
13960 0a 64 69 66 66 65 72 65 6e 74 20 70 6c 61 63 65  .different place
13970 73 20 66 6f 72 20 74 68 65 20 54 63 6c 20 6c 69  s for the Tcl li
13980 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 2e  brary directory.
13990 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 61 6c    This should al
139a0 6c 6f 77 20 54 63 6c 0a 74 6f 20 66 69 6e 64 20  low Tcl.to find 
139b0 74 68 65 20 6c 69 62 72 61 72 69 65 73 20 75 6e  the libraries un
139c0 64 65 72 20 61 6c 6c 20 62 75 74 20 74 68 65 20  der all but the 
139d0 77 65 69 72 64 65 73 74 20 63 6f 6e 64 69 74 69  weirdest conditi
139e0 6f 6e 73 2c 20 65 76 65 6e 20 77 69 74 68 6f 75  ons, even withou
139f0 74 0a 74 68 65 20 54 43 4c 5f 4c 49 42 52 41 52  t.the TCL_LIBRAR
13a00 59 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61  Y environment va
13a10 72 69 61 62 6c 65 20 62 65 69 6e 67 20 73 65 74  riable being set
13a20 2e 20 28 4a 4f 29 0a 0a 33 2f 31 33 2f 39 36 20  . (JO)..3/13/96 
13a30 28 62 75 67 20 66 69 78 29 20 45 6c 69 6d 69 6e  (bug fix) Elimin
13a40 61 74 65 64 20 75 73 65 20 6f 66 20 74 68 65 20  ated use of the 
13a50 22 6c 69 6e 67 65 72 22 20 6f 70 74 69 6f 6e 20  "linger" option 
13a60 66 72 6f 6d 20 74 68 65 20 57 69 6e 64 6f 77 73  from the Windows
13a70 0a 73 6f 63 6b 65 74 20 69 6d 70 6c 65 6d 65 6e  .socket implemen
13a80 74 61 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a 33 2f  tation. (JL)..3/
13a90 31 33 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  13/96 (new featu
13aa0 72 65 29 20 41 64 64 65 64 20 2d 70 65 65 72 6e  re) Added -peern
13ab0 61 6d 65 20 61 6e 64 20 2d 73 6f 63 6b 6e 61 6d  ame and -socknam
13ac0 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 66 63  e options for fc
13ad0 6f 6e 66 69 67 75 72 65 0a 66 6f 72 20 73 6f 63  onfigure.for soc
13ae0 6b 65 74 20 63 68 61 6e 6e 65 6c 73 2e 20 43 6f  ket channels. Co
13af0 64 65 20 63 6f 6e 74 72 69 62 75 74 65 64 20 62  de contributed b
13b00 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f 66 20  y John Haxby of 
13b10 48 50 2e 20 28 4a 4c 29 0a 0a 33 2f 31 33 2f 39  HP. (JL)..3/13/9
13b20 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
13b30 64 20 70 61 6e 69 63 20 61 6e 64 20 63 6f 72 65  d panic and core
13b40 20 64 75 6d 70 20 74 68 61 74 20 77 6f 75 6c 64   dump that would
13b50 20 6f 63 63 75 72 20 69 66 20 74 68 65 20 61 63   occur if the ac
13b60 63 65 70 74 0a 63 61 6c 6c 62 61 63 6b 20 73 63  cept.callback sc
13b70 72 69 70 74 20 6f 6e 20 61 20 73 65 72 76 65 72  ript on a server
13b80 20 73 6f 63 6b 65 74 20 65 6e 63 6f 75 6e 74 65   socket encounte
13b90 72 65 64 20 61 6e 20 65 72 72 6f 72 2e 20 28 4a  red an error. (J
13ba0 4c 29 0a 0a 33 2f 31 33 2f 39 36 20 28 66 65 61  L)..3/13/96 (fea
13bb0 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64 64  ture change) Add
13bc0 65 64 20 2d 61 73 79 6e 63 20 6f 70 74 69 6f 6e  ed -async option
13bd0 20 74 6f 20 74 68 65 20 54 63 6c 20 73 6f 63 6b   to the Tcl sock
13be0 65 74 20 63 6f 6d 6d 61 6e 64 2e 0a 49 66 20 74  et command..If t
13bf0 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 63 72  he command is cr
13c00 65 61 74 69 6e 67 20 61 20 63 6c 69 65 6e 74 20  eating a client 
13c10 73 6f 63 6b 65 74 20 61 6e 64 20 74 68 65 20 66  socket and the f
13c20 6c 61 67 20 69 73 20 70 72 65 73 65 6e 74 2c 20  lag is present, 
13c30 74 68 65 0a 63 6c 69 65 6e 74 20 69 73 20 63 6f  the.client is co
13c40 6e 6e 65 63 74 65 64 20 61 73 79 6e 63 68 72 6f  nnected asynchro
13c50 6e 6f 75 73 6c 79 2e 20 49 66 20 74 68 65 20 6f  nously. If the o
13c60 70 74 69 6f 6e 20 69 73 20 61 62 73 65 6e 74 20  ption is absent 
13c70 28 74 68 65 20 64 65 66 61 75 6c 74 29 2c 0a 74  (the default),.t
13c80 68 65 20 63 6c 69 65 6e 74 20 73 6f 63 6b 65 74  he client socket
13c90 20 69 73 20 63 6f 6e 6e 65 63 74 65 64 20 73 79   is connected sy
13ca0 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61 6e 64  nchronously, and
13cb0 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72 65 74   the command ret
13cc0 75 72 6e 73 20 6f 6e 6c 79 0a 77 68 65 6e 20 74  urns only.when t
13cd0 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 68 61  he connection ha
13ce0 73 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65 64  s been completed
13cf0 20 6f 72 20 66 61 69 6c 65 64 2e 20 54 68 69 73   or failed. This
13d00 20 63 68 61 6e 67 65 20 77 61 73 20 73 75 67 67   change was sugg
13d10 65 73 74 65 64 0a 62 79 20 4d 61 72 6b 20 44 69  ested.by Mark Di
13d20 65 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 33 2f  ekhans. (JL)..3/
13d30 31 33 2f 39 36 20 28 66 65 61 74 75 72 65 20 63  13/96 (feature c
13d40 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64 20  hange) Modified 
13d50 74 68 65 20 73 69 67 6e 61 74 75 72 65 20 6f 66  the signature of
13d60 20 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65   Tcl_OpenTcpClie
13d70 6e 74 20 74 6f 0a 74 61 6b 65 20 61 6e 20 61 64  nt to.take an ad
13d80 64 69 74 69 6f 6e 61 6c 20 69 6e 74 20 61 72 67  ditional int arg
13d90 75 6d 65 6e 74 2c 20 61 73 79 6e 63 2e 20 49 66  ument, async. If
13da0 20 6e 6f 6e 7a 65 72 6f 2c 20 74 68 65 20 63 6c   nonzero, the cl
13db0 69 65 6e 74 20 69 73 20 63 6f 6e 6e 65 63 74 65  ient is connecte
13dc0 64 0a 74 6f 20 74 68 65 20 73 65 72 76 65 72 20  d.to the server 
13dd0 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e 20  asynchronously. 
13de0 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73 20  If the value is 
13df0 7a 65 72 6f 2c 20 74 68 65 20 63 6f 6e 6e 65 63  zero, the connec
13e00 74 69 6f 6e 20 69 73 20 6d 61 64 65 0a 73 79 6e  tion is made.syn
13e10 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61 6e 64 20  chronously, and 
13e20 74 68 65 20 63 61 6c 6c 20 74 6f 20 54 63 6c 5f  the call to Tcl_
13e30 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74 20 72 65  OpenTcpClient re
13e40 74 75 72 6e 73 20 6f 6e 6c 79 20 77 68 65 6e 20  turns only when 
13e50 74 68 65 0a 63 6f 6e 6e 65 63 74 69 6f 6e 20 66  the.connection f
13e60 61 69 6c 73 20 6f 72 20 73 75 63 63 65 65 64 73  ails or succeeds
13e70 2e 20 54 68 69 73 20 63 68 61 6e 67 65 20 77 61  . This change wa
13e80 73 20 73 75 67 67 65 73 74 65 64 20 62 79 20 4d  s suggested by M
13e90 61 72 6b 20 44 69 65 6b 68 61 6e 73 2e 20 28 4a  ark Diekhans. (J
13ea0 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49  L).*** INCOMPATI
13eb0 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20  BILITY with Tcl 
13ec0 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74 20 77  7.5b3, but not w
13ed0 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a  ith Tcl 7.4 ***.
13ee0 0a 33 2f 31 34 2f 39 36 20 28 62 75 67 20 66 69  .3/14/96 (bug fi
13ef0 78 29 20 22 74 63 6c 73 68 20 62 6f 67 75 73 5f  x) "tclsh bogus_
13f00 66 69 6c 65 5f 6e 61 6d 65 22 20 64 69 64 6e 27  file_name" didn'
13f10 74 20 70 72 69 6e 74 20 61 6e 20 65 72 72 6f 72  t print an error
13f20 20 6d 65 73 73 61 67 65 2e 20 28 4a 4f 29 0a 0a   message. (JO)..
13f30 33 2f 31 34 2f 39 36 20 28 62 75 67 20 66 69 78  3/14/96 (bug fix
13f40 29 20 41 64 64 65 64 20 6e 65 77 20 70 72 6f 63  ) Added new proc
13f50 65 64 75 72 65 73 20 74 6f 20 74 63 6c 43 6b 61  edures to tclCka
13f60 6c 6c 6f 63 2e 63 20 73 6f 20 74 68 61 74 20 6c  lloc.c so that l
13f70 69 62 72 61 72 69 65 73 0a 61 6e 64 20 61 70 70  ibraries.and app
13f80 6c 69 63 61 74 69 6f 6e 73 20 63 61 6e 20 62 65  lications can be
13f90 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 20 54   compiled with T
13fa0 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 20 65 76 65  CL_MEM_DEBUG eve
13fb0 6e 20 69 66 20 54 63 6c 20 69 73 6e 27 74 0a 28  n if Tcl isn't.(
13fc0 68 6f 77 65 76 65 72 2c 20 74 68 65 20 63 6f 6e  however, the con
13fd0 76 65 72 73 65 20 69 73 20 73 74 69 6c 6c 20 6e  verse is still n
13fe0 6f 74 20 74 72 75 65 29 2e 20 20 50 61 74 63 68  ot true).  Patch
13ff0 65 73 20 70 72 6f 76 69 64 65 64 20 62 79 20 4a  es provided by J
14000 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e 20 28 4a 4f  an.Nijtmans. (JO
14010 29 0a 0a 33 2f 31 35 2f 39 36 20 28 62 75 67 20  )..3/15/96 (bug 
14020 66 69 78 29 20 4d 61 72 6b 65 64 20 73 74 61 6e  fix) Marked stan
14030 64 61 72 64 20 49 4f 20 68 61 6e 64 6c 65 73 20  dard IO handles 
14040 6f 66 20 61 20 70 72 6f 63 65 73 73 20 61 73 20  of a process as 
14050 63 6c 6f 73 65 2d 6f 6e 2d 65 78 65 63 0a 74 6f  close-on-exec.to
14060 20 66 69 78 20 62 75 67 20 69 6e 20 55 6c 74 72   fix bug in Ultr
14070 69 78 20 77 68 65 72 65 20 65 78 65 63 20 77 61  ix where exec wa
14080 73 20 6e 6f 74 20 73 68 61 72 69 6e 67 20 73 74  s not sharing st
14090 61 6e 64 61 72 64 20 49 4f 20 68 61 6e 64 6c 65  andard IO handle
140a0 73 20 77 69 74 68 0a 73 75 62 70 72 6f 63 65 73  s with.subproces
140b0 73 65 73 2e 20 46 69 78 20 73 75 67 67 65 73 74  ses. Fix suggest
140c0 65 64 20 62 79 20 4d 61 72 6b 20 44 69 65 6b 68  ed by Mark Diekh
140d0 61 6e 73 2e 20 28 4a 4c 29 0a 0a 33 2f 31 35 2f  ans. (JL)..3/15/
140e0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
140f0 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20  ed asynchronous 
14100 63 6c 6f 73 65 20 6d 65 63 68 61 6e 69 73 6d 20  close mechanism 
14110 73 6f 20 74 68 61 74 20 69 74 20 63 6c 6f 73 65  so that it close
14120 73 20 74 68 65 0a 63 68 61 6e 6e 65 6c 20 69 6e  s the.channel in
14130 73 74 65 61 64 20 6f 66 20 6c 65 61 6b 69 6e 67  stead of leaking
14140 20 73 79 73 74 65 6d 20 72 65 73 6f 75 72 63 65   system resource
14150 73 2e 20 54 68 65 20 6d 61 6e 69 66 65 73 74 61  s. The manifesta
14160 74 69 6f 6e 20 77 61 73 20 74 68 61 74 20 54 63  tion was that Tc
14170 6c 0a 77 6f 75 6c 64 20 65 76 65 6e 74 75 61 6c  l.would eventual
14180 6c 79 20 72 75 6e 20 6f 75 74 20 6f 66 20 66 69  ly run out of fi
14190 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73 20 69  le descriptors i
141a0 66 20 69 74 20 77 61 73 20 68 61 6e 64 6c 69 6e  f it was handlin
141b0 67 20 61 20 6c 61 72 67 65 0a 6e 75 6d 62 65 72  g a large.number
141c0 20 6f 66 20 6e 6f 6e 62 6c 6f 63 6b 69 6e 67 20   of nonblocking 
141d0 73 6f 63 6b 65 74 73 20 6f 72 20 70 69 70 65 73  sockets or pipes
141e0 20 77 69 74 68 20 68 69 67 68 20 63 6f 6e 67 65   with high conge
141f0 73 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a 33 2f 31  stion. (JL)..3/1
14200 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  5/96 (bug fix) F
14210 69 78 65 64 20 74 65 73 74 73 20 73 6f 20 74 68  ixed tests so th
14220 61 74 20 74 68 65 79 20 6e 6f 20 6c 6f 6e 67 65  at they no longe
14230 72 20 6c 65 61 6b 20 66 69 6c 65 20 64 65 73 63  r leak file desc
14240 72 69 70 74 6f 72 73 2e 0a 54 68 65 20 6d 61 6e  riptors..The man
14250 69 66 65 73 74 61 74 69 6f 6e 20 77 61 73 20 74  ifestation was t
14260 68 61 74 20 54 63 6c 20 77 6f 75 6c 64 20 65 76  hat Tcl would ev
14270 65 6e 74 75 61 6c 6c 79 20 72 75 6e 20 6f 75 74  entually run out
14280 20 6f 66 20 66 69 6c 65 20 64 65 73 63 72 69 70   of file descrip
14290 74 6f 72 73 0a 69 66 20 74 68 65 20 74 65 73 74  tors.if the test
142a0 73 20 77 65 72 65 20 72 65 72 75 6e 20 6d 61 6e  s were rerun man
142b0 79 20 74 69 6d 65 73 20 28 3e 20 61 20 68 75 6e  y times (> a hun
142c0 64 72 65 64 20 74 69 6d 65 73 20 6f 6e 20 53 6f  dred times on So
142d0 6c 61 72 69 73 29 2e 20 28 4a 4c 29 0a 0a 33 2f  laris). (JL)..3/
142e0 31 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  15/96 (bug fix) 
142f0 46 69 78 65 64 20 63 68 61 6e 6e 65 6c 20 63 72  Fixed channel cr
14300 65 61 74 69 6f 6e 20 63 6f 64 65 20 73 6f 20 74  eation code so t
14310 68 61 74 20 69 74 20 6e 65 76 65 72 20 63 72 65  hat it never cre
14320 61 74 65 73 0a 75 6e 6e 61 6d 65 64 20 63 68 61  ates.unnamed cha
14330 6e 6e 65 6c 73 2e 20 54 68 69 73 20 77 6f 75 6c  nnels. This woul
14340 64 20 63 61 75 73 65 20 61 20 70 61 6e 69 63 20  d cause a panic 
14350 61 6e 64 20 63 6f 72 65 20 64 75 6d 70 20 77 68  and core dump wh
14360 65 6e 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a 77  en the channel.w
14370 61 73 20 63 6c 6f 73 65 64 2e 20 28 4a 4c 29 0a  as closed. (JL).
14380 0a 33 2f 31 36 2f 39 36 20 28 62 75 67 20 66 69  .3/16/96 (bug fi
14390 78 65 73 29 20 4d 61 64 65 20 6c 6f 74 73 20 6f  xes) Made lots o
143a0 66 20 63 68 61 6e 67 65 73 20 69 6e 20 63 6f 6e  f changes in con
143b0 66 69 67 75 72 61 74 69 6f 6e 20 73 74 75 66 66  figuration stuff
143c0 20 74 6f 20 67 65 74 0a 54 63 6c 20 77 6f 72 6b   to get.Tcl work
143d0 69 6e 67 20 75 6e 64 65 72 20 41 49 58 20 28 66  ing under AIX (f
143e0 69 6e 61 6c 6c 79 29 2e 20 20 54 63 6c 20 73 68  inally).  Tcl sh
143f0 6f 75 6c 64 20 6e 6f 77 20 73 75 70 70 6f 72 74  ould now support
14400 20 74 68 65 20 22 6c 6f 61 64 22 0a 63 6f 6d 6d   the "load".comm
14410 61 6e 64 20 75 6e 64 65 72 20 41 49 58 20 61 6e  and under AIX an
14420 64 20 73 68 6f 75 6c 64 20 77 6f 72 6b 20 65 69  d should work ei
14430 74 68 65 72 20 77 69 74 68 20 6f 72 20 77 69 74  ther with or wit
14440 68 6f 75 74 20 73 68 61 72 65 64 0a 6c 69 62 72  hout shared.libr
14450 61 72 69 65 73 20 66 6f 72 20 54 63 6c 20 61 6e  aries for Tcl an
14460 64 20 54 6b 2e 20 28 4a 4f 29 0a 0a 33 2f 32 31  d Tk. (JO)..3/21
14470 2f 39 36 20 28 63 6f 6e 66 69 67 75 72 61 74 69  /96 (configurati
14480 6f 6e 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20  on improvement) 
14490 43 68 61 6e 67 65 64 20 63 6f 6e 66 69 67 75 72  Changed configur
144a0 65 20 73 63 72 69 70 74 20 73 6f 20 69 74 0a 64  e script so it.d
144b0 6f 65 73 6e 27 74 20 75 73 65 20 76 65 72 73 69  oesn't use versi
144c0 6f 6e 20 6e 75 6d 62 65 72 73 20 28 61 73 20 69  on numbers (as i
144d0 6e 20 2d 6c 74 63 6c 37 2e 35 20 61 6e 64 20 6c  n -ltcl7.5 and l
144e0 69 62 74 63 6c 37 2e 35 2e 73 6f 29 20 75 6e 64  ibtcl7.5.so) und
144f0 65 72 0a 53 75 6e 4f 53 20 34 2e 31 2c 20 77 68  er.SunOS 4.1, wh
14500 65 72 65 20 74 68 65 79 20 64 6f 6e 27 74 20 77  ere they don't w
14510 6f 72 6b 20 61 6e 79 77 61 79 2e 20 20 28 4a 4f  ork anyway.  (JO
14520 29 0a 0a 33 2f 32 32 2f 39 36 20 28 6e 65 77 20  )..3/22/96 (new 
14530 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 43  feature) Added C
14540 20 41 50 49 20 54 63 6c 5f 49 6e 74 65 72 70 44   API Tcl_InterpD
14550 65 6c 65 74 65 64 20 74 68 61 74 20 61 6c 6c 6f  eleted that allo
14560 77 73 20 65 78 74 65 6e 73 69 6f 6e 0a 77 72 69  ws extension.wri
14570 74 65 72 73 20 74 6f 20 64 69 73 63 6f 76 65 72  ters to discover
14580 20 77 68 65 6e 20 61 6e 20 69 6e 74 65 72 70 72   when an interpr
14590 65 74 65 72 20 69 73 20 62 65 69 6e 67 20 64 65  eter is being de
145a0 6c 65 74 65 64 2e 20 28 4a 4c 29 0a 0a 33 2f 32  leted. (JL)..3/2
145b0 32 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 54  2/96 (bug fix) T
145c0 68 65 20 73 74 61 6e 64 61 72 64 20 49 4f 20 63  he standard IO c
145d0 68 61 6e 6e 65 6c 73 20 61 72 65 20 6e 6f 77 20  hannels are now 
145e0 61 64 64 65 64 20 74 6f 20 65 61 63 68 0a 74 72  added to each.tr
145f0 75 73 74 65 64 20 69 6e 74 65 72 70 72 65 74 65  usted interprete
14600 72 20 61 73 20 73 6f 6f 6e 20 61 73 20 74 68 65  r as soon as the
14610 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 73 20   interpreter is 
14620 63 72 65 61 74 65 64 2e 20 54 68 69 73 20 65 6e  created. This en
14630 73 75 72 65 73 0a 61 67 61 69 6e 73 74 20 74 68  sures.against th
14640 65 20 62 75 67 20 77 68 65 72 65 20 61 20 63 68  e bug where a ch
14650 69 6c 64 20 77 6f 75 6c 64 20 64 6f 20 49 4f 20  ild would do IO 
14660 62 65 66 6f 72 65 20 74 68 65 20 6d 61 73 74 65  before the maste
14670 72 20 68 61 64 20 64 6f 6e 65 20 61 6e 79 2c 0a  r had done any,.
14680 61 6e 64 20 74 68 65 6e 20 74 68 65 20 63 68 69  and then the chi
14690 6c 64 20 69 73 20 64 65 73 74 72 6f 79 65 64 20  ld is destroyed 
146a0 2d 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 49  - the standard I
146b0 4f 20 63 68 61 6e 6e 65 6c 73 20 77 6f 75 6c 64  O channels would
146c0 20 62 65 20 74 68 65 6e 0a 63 6c 6f 73 65 64 20   be then.closed 
146d0 61 6e 64 20 74 68 65 20 6d 61 73 74 65 72 20 77  and the master w
146e0 6f 75 6c 64 20 62 65 20 75 6e 61 62 6c 65 20 74  ould be unable t
146f0 6f 20 64 6f 20 61 6e 79 20 49 4f 2e 20 28 4a 4c  o do any IO. (JL
14700 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75 67 20  )..3/22/96 (bug 
14710 66 69 78 29 20 4d 61 64 65 20 54 63 6c 20 6d 6f  fix) Made Tcl mo
14720 72 65 20 72 6f 62 75 73 74 20 61 67 61 69 6e 73  re robust agains
14730 74 20 69 6e 74 65 72 70 72 65 74 65 72 20 64 65  t interpreter de
14740 6c 65 74 69 6f 6e 2c 20 62 79 0a 75 73 69 6e 67  letion, by.using
14750 20 54 63 6c 5f 50 72 65 73 65 72 76 65 2c 20 54   Tcl_Preserve, T
14760 63 6c 5f 52 65 6c 65 61 73 65 20 61 6e 64 20 54  cl_Release and T
14770 63 6c 5f 45 76 65 6e 74 75 61 6c 6c 79 46 72 65  cl_EventuallyFre
14780 65 20 74 6f 20 73 70 6c 69 74 20 74 68 65 20 70  e to split the p
14790 72 6f 63 65 73 73 0a 6f 66 20 69 6e 74 65 72 70  rocess.of interp
147a0 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e 20 69  reter deletion i
147b0 6e 74 6f 20 74 77 6f 20 64 69 73 74 69 6e 63 74  nto two distinct
147c0 20 70 68 61 73 65 73 2e 20 41 6c 73 6f 20 77 65   phases. Also we
147d0 6e 74 20 74 68 72 6f 75 67 68 20 61 6c 6c 20 6f  nt through all o
147e0 66 0a 54 63 6c 20 61 6e 64 20 61 64 64 65 64 20  f.Tcl and added 
147f0 63 61 6c 6c 73 20 74 6f 20 54 63 6c 5f 50 72 65  calls to Tcl_Pre
14800 73 65 72 76 65 20 61 6e 64 20 54 63 6c 5f 44 65  serve and Tcl_De
14810 6c 65 74 65 20 77 68 65 72 65 20 6e 65 65 64 65  lete where neede
14820 64 2e 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36  d. (JL)..3/22/96
14830 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
14840 20 73 65 76 65 72 61 6c 20 70 6c 61 63 65 73 20   several places 
14850 77 68 65 72 65 20 43 20 63 6f 64 65 20 77 61 73  where C code was
14860 20 72 65 61 64 69 6e 67 20 61 6e 64 20 77 72 69   reading and wri
14870 74 69 6e 67 0a 69 6e 74 6f 20 66 72 65 65 64 20  ting.into freed 
14880 6d 65 6d 6f 72 79 2c 20 65 73 70 65 63 69 61 6c  memory, especial
14890 6c 79 20 64 75 72 69 6e 67 20 69 6e 74 65 72 70  ly during interp
148a0 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e 2e 20  reter deletion. 
148b0 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62  (JL)..3/22/96 (b
148c0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 76 65  ug fix) Fixed ve
148d0 72 79 20 64 65 65 70 20 62 75 67 20 69 6e 20 54  ry deep bug in T
148e0 63 6c 5f 52 65 6c 65 61 73 65 20 74 68 61 74 20  cl_Release that 
148f0 63 61 75 73 65 64 20 6d 65 6d 6f 72 79 20 74 6f  caused memory to
14900 0a 62 65 20 66 72 65 65 64 20 74 77 69 63 65 20  .be freed twice 
14910 69 66 20 74 68 65 20 72 65 6c 65 61 73 65 20 63  if the release c
14920 61 6c 6c 62 61 63 6b 20 64 69 64 20 54 63 6c 5f  allback did Tcl_
14930 50 72 65 73 65 72 76 65 20 61 6e 64 20 54 63 6c  Preserve and Tcl
14940 5f 52 65 6c 65 61 73 65 20 6f 6e 0a 74 68 65 20  _Release on.the 
14950 73 61 6d 65 20 6d 65 6d 6f 72 79 20 61 73 20 74  same memory as t
14960 68 65 20 63 68 75 6e 6b 20 63 75 72 72 65 6e 74  he chunk current
14970 6c 79 20 62 65 69 6e 67 20 66 72 65 65 64 2e 20  ly being freed. 
14980 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62  (JL)..3/22/96 (b
14990 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20  ug fix) Removed 
149a0 73 65 76 65 72 61 6c 20 6d 65 6d 6f 72 79 20 6c  several memory l
149b0 65 61 6b 73 20 74 68 61 74 20 77 6f 75 6c 64 20  eaks that would 
149c0 63 61 75 73 65 20 6d 65 6d 6f 72 79 0a 62 75 69  cause memory.bui
149d0 6c 64 75 70 20 6f 6e 20 68 61 6c 66 2d 4b 20 63  ldup on half-K c
149e0 68 75 6e 6b 73 20 69 6e 20 74 68 65 20 67 65 6e  hunks in the gen
149f0 65 72 69 63 20 49 4f 20 6c 65 76 65 6c 2e 20 28  eric IO level. (
14a00 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75  JL)..3/22/96 (bu
14a10 67 20 66 69 78 29 20 46 69 78 65 64 20 73 65 76  g fix) Fixed sev
14a20 65 72 61 6c 20 63 6f 72 65 20 64 75 6d 70 73 20  eral core dumps 
14a30 77 68 69 63 68 20 6f 63 63 75 72 72 65 64 20 77  which occurred w
14a40 68 65 6e 20 6e 65 77 0a 41 73 73 6f 63 44 61 74  hen new.AssocDat
14a50 61 20 77 61 73 20 62 65 69 6e 67 20 63 72 65 61  a was being crea
14a60 74 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 63  ted during the c
14a70 6c 65 61 6e 75 70 73 20 69 6e 20 69 6e 74 65 72  leanups in inter
14a80 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e 2e  preter deletion.
14a90 0a 54 68 65 20 73 6f 6c 75 74 69 6f 6e 20 69 6d  .The solution im
14aa0 70 6c 65 6d 65 6e 74 65 64 20 6e 6f 77 20 69 73  plemented now is
14ab0 20 74 6f 20 6c 6f 6f 70 20 72 65 70 65 61 74 65   to loop repeate
14ac0 64 6c 79 20 6f 76 65 72 20 74 68 65 20 41 73 73  dly over the Ass
14ad0 6f 63 44 61 74 61 20 75 6e 74 69 6c 0a 6e 6f 6e  ocData until.non
14ae0 65 20 69 73 20 6c 65 66 74 20 74 6f 20 63 6c 65  e is left to cle
14af0 61 6e 20 75 70 2e 20 28 4a 4c 29 0a 0a 33 2f 32  an up. (JL)..3/2
14b00 32 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  2/96 (bug fix) F
14b10 69 78 65 64 20 61 20 62 75 67 20 69 6e 20 65 76  ixed a bug in ev
14b20 65 6e 74 20 68 61 6e 64 6c 69 6e 67 20 77 68 69  ent handling whi
14b30 63 68 20 63 61 75 73 65 64 20 61 6e 20 69 6e 66  ch caused an inf
14b40 69 6e 69 74 65 0a 6c 6f 6f 70 20 69 66 20 74 68  inite.loop if th
14b50 65 72 65 20 77 65 72 65 20 6e 6f 20 66 69 6c 65  ere were no file
14b60 73 20 62 65 69 6e 67 20 77 61 74 63 68 65 64 20  s being watched 
14b70 61 6e 64 20 6e 6f 20 74 69 6d 65 72 2e 20 46 69  and no timer. Fi
14b80 78 20 73 75 67 67 65 73 74 65 64 20 62 79 0a 4a  x suggested by.J
14b90 61 6e 20 4e 69 6a 74 6d 61 6e 73 2e 20 28 4a 4c  an Nijtmans. (JL
14ba0 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75 67 20  )..3/22/96 (bug 
14bb0 66 69 78 29 20 46 69 78 65 64 20 54 63 6c 5f 43  fix) Fixed Tcl_C
14bc0 72 65 61 74 65 43 6f 6d 6d 61 6e 64 2c 20 54 63  reateCommand, Tc
14bd0 6c 5f 44 65 6c 65 74 65 43 6f 6d 6d 61 6e 64 20  l_DeleteCommand 
14be0 74 6f 20 62 65 20 6d 6f 72 65 0a 72 6f 62 75 73  to be more.robus
14bf0 74 20 69 66 20 74 68 65 20 69 6e 74 65 72 70 72  t if the interpr
14c00 65 74 65 72 20 69 73 20 62 65 69 6e 67 20 64 65  eter is being de
14c10 6c 65 74 65 64 2e 20 41 6c 73 6f 20 66 69 78 65  leted. Also fixe
14c20 64 20 73 65 76 65 72 61 6c 20 6f 72 64 65 72 0a  d several order.
14c30 64 65 70 65 6e 64 65 6e 63 79 20 62 75 67 73 20  dependency bugs 
14c40 69 6e 20 54 63 6c 5f 44 65 6c 65 74 65 43 6f 6d  in Tcl_DeleteCom
14c50 6d 61 6e 64 20 77 68 69 63 68 20 6b 69 63 6b 65  mand which kicke
14c60 64 20 69 6e 20 77 68 65 6e 20 61 6e 20 69 6e 74  d in when an int
14c70 65 72 70 72 65 74 65 72 0a 77 61 73 20 62 65 69  erpreter.was bei
14c80 6e 67 20 64 65 6c 65 74 65 64 2e 20 28 4a 4c 29  ng deleted. (JL)
14c90 0a 0a 33 2f 32 36 2f 39 36 20 28 62 75 67 20 66  ..3/26/96 (bug f
14ca0 69 78 29 20 55 70 6f 6e 20 61 20 22 73 68 6f 72  ix) Upon a "shor
14cb0 74 20 72 65 61 64 22 2c 20 74 68 65 20 67 65 6e  t read", the gen
14cc0 65 72 69 63 20 63 6f 64 65 20 6e 6f 20 6c 6f 6e  eric code no lon
14cd0 67 65 72 20 63 61 6c 6c 73 0a 74 68 65 20 64 72  ger calls.the dr
14ce0 69 76 65 72 20 66 6f 72 20 6d 6f 72 65 20 69 6e  iver for more in
14cf0 70 75 74 2e 20 44 6f 69 6e 67 20 74 68 69 73 20  put. Doing this 
14d00 63 61 75 73 65 64 20 62 6c 6f 63 6b 69 6e 67 20  caused blocking 
14d10 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72 6d  on some platform
14d20 73 0a 65 76 65 6e 20 6f 6e 20 6e 6f 6e 62 6c 6f  s.even on nonblo
14d30 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 73 2e 20  cking channels. 
14d40 42 75 67 20 61 6e 64 20 66 69 78 20 63 6f 75 72  Bug and fix cour
14d50 74 65 73 79 20 4d 61 72 6b 20 52 6f 73 65 6d 61  tesy Mark Rosema
14d60 6e 2e 20 28 4a 4c 29 0a 0a 33 2f 32 36 2f 39 36  n. (JL)..3/26/96
14d70 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
14d80 64 64 65 64 20 27 70 61 63 6b 61 67 65 20 54 63  dded 'package Tc
14d90 6c 74 65 73 74 27 20 77 68 69 63 68 20 69 73 20  ltest' which is 
14da0 70 72 65 73 65 6e 74 20 6f 6e 6c 79 20 69 6e 0a  present only in.
14db0 74 65 73 74 20 76 65 72 73 69 6f 6e 73 20 6f 66  test versions of
14dc0 20 54 63 6c 3b 20 74 68 69 73 20 61 6c 6c 6f 77   Tcl; this allow
14dd0 73 20 74 68 65 20 74 65 73 74 69 6e 67 20 63 6f  s the testing co
14de0 6d 6d 61 6e 64 73 20 74 6f 20 62 65 20 6c 6f 61  mmands to be loa
14df0 64 65 64 20 69 6e 74 6f 0a 6e 65 77 20 69 6e 74  ded into.new int
14e00 65 72 70 72 65 74 65 72 73 20 62 65 73 69 64 65  erpreters beside
14e10 73 20 74 68 65 20 6d 61 69 6e 20 6f 6e 65 2e 20  s the main one. 
14e20 28 4a 4c 29 0a 0a 33 2f 32 36 2f 39 36 20 28 72  (JL)..3/26/96 (r
14e30 65 73 74 6f 72 65 64 20 66 65 61 74 75 72 65 29  estored feature)
14e40 20 52 65 63 72 65 61 74 65 64 20 74 68 65 20 54   Recreated the T
14e50 63 6c 5f 47 65 74 4f 70 65 6e 46 69 6c 65 20 43  cl_GetOpenFile C
14e60 20 41 50 49 2e 20 59 6f 75 20 63 61 6e 0a 6e 6f   API. You can.no
14e70 77 20 67 65 74 20 61 20 46 49 4c 45 20 2a 20 66  w get a FILE * f
14e80 72 6f 6d 20 61 20 72 65 67 69 73 74 65 72 65 64  rom a registered
14e90 20 63 68 61 6e 6e 65 6c 3b 20 55 6e 69 78 20 6f   channel; Unix o
14ea0 6e 6c 79 2e 20 28 4a 4c 29 0a 0a 33 2f 32 37 2f  nly. (JL)..3/27/
14eb0 39 36 20 28 62 75 67 20 66 69 78 29 20 54 68 65  96 (bug fix) The
14ec0 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
14ed0 69 6f 6e 20 63 6f 64 65 20 64 69 64 20 6e 6f 74  ion code did not
14ee0 20 73 75 70 70 6f 72 74 20 6d 6f 72 65 0a 74 68   support more.th
14ef0 61 6e 20 39 20 73 75 62 65 78 70 72 65 73 73 69  an 9 subexpressi
14f00 6f 6e 73 2e 20 20 49 74 20 6e 6f 77 20 73 75 70  ons.  It now sup
14f10 70 6f 72 74 73 20 75 70 20 74 6f 20 32 30 2e 20  ports up to 20. 
14f20 28 53 53 29 0a 0a 34 2f 31 2f 39 36 20 28 62 75  (SS)..4/1/96 (bu
14f30 67 20 66 69 78 65 73 29 20 54 68 65 20 43 48 41  g fixes) The CHA
14f40 4e 4e 45 4c 5f 42 4c 4f 43 4b 45 44 20 62 69 74  NNEL_BLOCKED bit
14f50 20 77 61 73 20 62 65 69 6e 67 20 6c 65 66 74 20   was being left 
14f60 6f 6e 20 6f 6e 20 61 20 73 68 6f 72 74 0a 72 65  on on a short.re
14f70 61 64 2c 20 73 6f 20 74 68 61 74 20 66 69 6c 65  ad, so that file
14f80 65 76 65 6e 74 73 20 77 6f 75 6c 64 6e 27 74 20  events wouldn't 
14f90 66 69 72 65 20 63 6f 72 72 65 63 74 6c 79 2e 20  fire correctly. 
14fa0 42 75 67 20 72 65 70 6f 72 74 65 64 20 62 79 20  Bug reported by 
14fb0 4d 61 72 6b 0a 52 6f 73 65 6d 61 6e 2e 28 4a 4c  Mark.Roseman.(JL
14fc0 2c 20 52 4a 29 0a 0a 34 2f 31 2f 39 36 20 28 62  , RJ)..4/1/96 (b
14fd0 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 54 63  ug fix) Moved Tc
14fe0 6c 5f 52 65 6c 65 61 73 65 20 74 6f 20 6d 61 74  l_Release to mat
14ff0 63 68 20 54 63 6c 5f 50 72 65 73 65 72 76 65 20  ch Tcl_Preserve 
15000 65 78 61 63 74 6c 79 2c 20 69 6e 0a 74 63 6c 49  exactly, in.tclI
15010 6e 74 65 72 70 2e 63 3b 20 70 72 65 76 69 6f 75  nterp.c; previou
15020 73 6c 79 20 69 6e 74 65 72 70 72 65 74 65 72 73  sly interpreters
15030 20 77 65 72 65 20 62 65 69 6e 67 20 66 72 65 65   were being free
15040 64 20 6f 6e 6c 79 20 63 6f 6e 64 69 74 69 6f 6e  d only condition
15050 61 6c 6c 79 0a 61 6e 64 20 73 6f 6d 65 74 69 6d  ally.and sometim
15060 65 73 20 6e 6f 74 20 61 74 20 61 6c 6c 2e 20 28  es not at all. (
15070 4a 4c 29 0a 0a 34 2f 31 2f 39 36 20 28 62 75 67  JL)..4/1/96 (bug
15080 20 66 69 78 29 20 46 69 78 65 64 20 65 72 72 6f   fix) Fixed erro
15090 72 20 72 65 70 6f 72 74 69 6e 67 20 69 6e 20 73  r reporting in s
150a0 6c 61 76 65 20 69 6e 74 65 72 70 72 65 74 65 72  lave interpreter
150b0 73 20 77 68 65 6e 20 74 68 65 0a 65 72 72 6f 72  s when the.error
150c0 20 6d 65 73 73 61 67 65 20 77 61 73 20 62 65 69   message was bei
150d0 6e 67 20 67 65 6e 65 72 61 74 65 64 20 64 69 72  ng generated dir
150e0 65 63 74 6c 79 20 62 79 20 43 20 63 6f 64 65 2e  ectly by C code.
150f0 20 46 69 78 20 73 75 67 67 65 73 74 65 64 20 62   Fix suggested b
15100 79 0a 56 69 6b 74 6f 72 20 44 75 6b 68 6f 76 6e  y.Viktor Dukhovn
15110 69 20 6f 66 20 45 53 4d 2e 20 28 4a 4c 29 0a 0a  i of ESM. (JL)..
15120 34 2f 32 2f 39 36 20 28 62 75 67 20 66 69 78 65  4/2/96 (bug fixe
15130 73 29 20 46 69 78 65 64 20 61 20 73 65 72 69 65  s) Fixed a serie
15140 73 20 6f 66 20 62 75 67 73 20 69 6e 20 57 69 6e  s of bugs in Win
15150 64 6f 77 73 20 73 6f 63 6b 65 74 73 20 74 68 61  dows sockets tha
15160 74 20 63 61 75 73 65 64 0a 65 76 65 6e 74 73 20  t caused.events 
15170 74 6f 20 76 61 72 69 6f 75 73 6c 79 20 67 65 74  to variously get
15180 20 6c 6f 73 74 2c 20 74 6f 20 67 65 74 20 73 65   lost, to get se
15190 6e 74 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d 65  nt multiple time
151a0 73 2c 20 6f 72 20 74 6f 20 62 65 20 69 67 6e 6f  s, or to be igno
151b0 72 65 64 0a 62 79 20 74 68 65 20 64 72 69 76 65  red.by the drive
151c0 72 2e 20 54 68 65 20 6d 61 6e 69 66 65 73 74 61  r. The manifesta
151d0 74 69 6f 6e 20 77 61 73 20 62 6c 6f 63 6b 69 6e  tion was blockin
151e0 67 20 69 66 20 74 68 65 20 63 68 61 6e 6e 65 6c  g if the channel
151f0 20 69 73 20 62 6c 6f 63 6b 69 6e 67 2c 0a 61 6e   is blocking,.an
15200 64 20 65 69 74 68 65 72 20 67 65 74 74 69 6e 67  d either getting
15210 20 45 41 47 41 49 4e 20 6f 72 20 69 6e 66 69 6e   EAGAIN or infin
15220 69 74 65 20 6c 6f 6f 70 73 20 69 66 20 74 68 65  ite loops if the
15230 20 63 68 61 6e 6e 65 6c 20 69 73 20 6e 6f 6e 62   channel is nonb
15240 6c 6f 63 6b 69 6e 67 2e 0a 54 68 69 73 20 73 65  locking..This se
15250 72 69 65 73 20 6f 66 20 62 75 67 73 20 77 61 73  ries of bugs was
15260 20 66 6f 75 6e 64 20 62 79 20 49 61 6e 20 57 61   found by Ian Wa
15270 6c 6c 69 73 20 6f 66 20 43 69 73 63 6f 2e 20 4e  llis of Cisco. N
15280 6f 77 20 61 6c 6c 20 74 65 73 74 73 20 28 61 6c  ow all tests (al
15290 73 6f 0a 74 68 6f 73 65 20 74 68 61 74 20 77 65  so.those that we
152a0 72 65 20 70 72 65 76 69 6f 75 73 6c 79 20 63 6f  re previously co
152b0 6d 6d 65 6e 74 65 64 20 6f 75 74 29 20 69 6e 20  mmented out) in 
152c0 73 6f 63 6b 65 74 2e 74 65 73 74 20 70 61 73 73  socket.test pass
152d0 2e 20 20 28 4a 4c 2c 20 53 53 29 0a 0a 34 2f 32  .  (JL, SS)..4/2
152e0 2f 39 36 20 28 66 65 61 74 75 72 65 20 63 68 61  /96 (feature cha
152f0 6e 67 65 2f 62 75 67 20 66 69 78 29 20 45 6c 69  nge/bug fix) Eli
15300 6d 69 6e 61 74 65 64 20 6e 65 74 77 6f 72 6b 20  minated network 
15310 6e 61 6d 65 20 73 75 70 70 6f 72 74 20 69 6e 0a  name support in.
15320 66 61 76 6f 72 20 6f 66 20 62 65 74 74 65 72 20  favor of better 
15330 6e 61 74 69 76 65 20 6e 61 6d 65 20 73 75 70 70  native name supp
15340 6f 72 74 2e 20 20 41 64 64 65 64 20 22 66 69 6c  ort.  Added "fil
15350 65 20 73 70 6c 69 74 22 2c 20 22 66 69 6c 65 20  e split", "file 
15360 6a 6f 69 6e 22 2c 0a 61 6e 64 20 22 66 69 6c 65  join",.and "file
15370 20 70 61 74 68 74 79 70 65 22 20 63 6f 6d 6d 61   pathtype" comma
15380 6e 64 73 2e 20 20 53 65 65 20 74 68 65 20 22 66  nds.  See the "f
15390 69 6c 65 22 20 6d 61 6e 20 70 61 67 65 20 66 6f  ile" man page fo
153a0 72 20 6d 6f 72 65 0a 64 65 74 61 69 6c 73 2e 20  r more.details. 
153b0 28 53 53 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41  (SS).*** INCOMPA
153c0 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
153d0 6c 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74  l 7.5b3, but not
153e0 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
153f0 2a 0a 0a 34 2f 32 2f 39 36 20 28 62 75 67 20 66  *..4/2/96 (bug f
15400 69 78 29 20 43 68 61 6e 67 65 64 20 69 6d 70 6c  ix) Changed impl
15410 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 75  ementation of au
15420 74 6f 5f 6d 6b 69 6e 64 65 78 20 73 6f 20 74 63  to_mkindex so tc
15430 6c 49 6e 64 65 78 0a 66 69 6c 65 73 20 77 69 6c  lIndex.files wil
15440 6c 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c  l properly handl
15450 65 20 70 61 74 68 20 6e 61 6d 65 73 20 69 6e 20  e path names in 
15460 61 20 63 72 6f 73 73 20 70 6c 61 74 66 6f 72 6d  a cross platform
15470 20 63 6f 6e 74 65 78 74 2e 20 28 53 53 29 0a 0a   context. (SS)..
15480 34 2f 35 2f 39 36 20 28 62 75 67 20 66 69 78 29  4/5/96 (bug fix)
15490 20 46 69 78 65 64 20 54 63 6c 5f 52 65 61 64 43   Fixed Tcl_ReadC
154a0 6d 64 20 74 6f 20 75 73 65 20 74 68 65 20 63 68  md to use the ch
154b0 61 6e 6e 65 6c 20 62 75 66 66 65 72 20 73 69 7a  annel buffer siz
154c0 65 20 61 73 20 74 68 65 0a 63 68 75 6e 6b 20 73  e as the.chunk s
154d0 69 7a 65 20 69 74 20 72 65 61 64 73 2c 20 69 6e  ize it reads, in
154e0 73 74 65 61 64 20 6f 66 20 61 20 66 69 78 65 64  stead of a fixed
154f0 20 34 4b 20 73 69 7a 65 2e 20 54 68 75 73 2c 20   4K size. Thus, 
15500 6f 6e 20 6c 61 72 67 65 20 72 65 61 64 73 2c 20  on large reads, 
15510 74 68 65 0a 75 73 65 72 20 63 61 6e 20 73 65 74  the.user can set
15520 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 62 75 66   the channel buf
15530 66 65 72 20 73 69 7a 65 20 74 6f 20 61 20 6c 61  fer size to a la
15540 72 67 65 20 73 69 7a 65 20 61 6e 64 20 74 68 65  rge size and the
15550 20 72 65 61 64 20 77 69 6c 6c 0a 6f 63 63 75 72   read will.occur
15560 20 6f 72 64 65 72 73 20 6f 66 20 6d 61 67 6e 69   orders of magni
15570 74 75 64 65 20 66 61 73 74 65 72 2e 20 46 6f 72  tude faster. For
15580 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 61 20 32   example, on a 2
15590 4d 42 20 66 69 6c 65 2c 20 72 65 61 64 69 6e 67  MB file, reading
155a0 20 69 6e 20 34 4b 0a 63 68 75 6e 6b 73 20 74 6f   in 4K.chunks to
155b0 6f 6b 20 33 34 20 73 65 63 6f 6e 64 73 2c 20 77  ok 34 seconds, w
155c0 68 69 6c 65 20 72 65 61 64 69 6e 67 20 69 6e 20  hile reading in 
155d0 31 4d 42 20 63 68 75 6e 6b 73 20 74 6f 6f 6b 20  1MB chunks took 
155e0 31 2e 35 20 73 65 63 6f 6e 64 73 20 28 6f 6e 20  1.5 seconds (on 
155f0 61 0a 53 53 2d 32 30 29 2e 20 50 72 6f 62 6c 65  a.SS-20). Proble
15600 6d 20 69 64 65 6e 74 69 66 69 65 64 20 61 6e 64  m identified and
15610 20 66 69 78 20 73 75 67 67 65 73 74 65 64 20 62   fix suggested b
15620 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f 66 20  y John Haxby of 
15630 48 50 2e 20 28 4a 4c 29 0a 0a 34 2f 35 2f 39 36  HP. (JL)..4/5/96
15640 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
15650 20 73 6f 63 6b 65 74 20 63 72 65 61 74 69 6f 6e   socket creation
15660 20 63 6f 64 65 20 74 6f 20 69 6e 76 6f 6b 65 20   code to invoke 
15670 67 65 74 68 6f 73 74 62 79 6e 61 6d 65 20 6f 6e  gethostbyname on
15680 6c 79 20 69 66 0a 69 6e 65 74 5f 61 64 64 72 20  ly if.inet_addr 
15690 66 61 69 6c 65 64 20 28 76 65 72 79 20 75 6e 6c  failed (very unl
156a0 69 6b 65 6c 79 29 2e 20 42 65 66 6f 72 65 20 74  ikely). Before t
156b0 68 69 73 20 63 68 61 6e 67 65 20 74 68 65 20 6f  his change the o
156c0 72 64 65 72 20 77 61 73 20 72 65 76 65 72 73 65  rder was reverse
156d0 64 0a 61 6e 64 20 74 68 69 73 20 6d 61 64 65 20  d.and this made 
156e0 74 68 69 6e 67 73 20 6d 75 63 68 20 73 6c 6f 77  things much slow
156f0 65 72 20 74 68 61 6e 20 74 68 65 79 20 6e 65 65  er than they nee
15700 64 65 64 20 74 6f 20 62 65 20 28 67 65 74 68 6f  ded to be (getho
15710 73 74 62 79 6e 61 6d 65 0a 67 65 6e 65 72 61 6c  stbyname.general
15720 6c 79 20 72 65 71 75 69 72 65 73 20 61 6e 20 52  ly requires an R
15730 50 43 2c 20 77 68 69 63 68 20 69 73 20 73 6c 6f  PC, which is slo
15740 77 29 2e 20 50 72 6f 62 6c 65 6d 20 69 64 65 6e  w). Problem iden
15750 74 69 66 69 65 64 20 61 6e 64 20 66 69 78 0a 73  tified and fix.s
15760 75 67 67 65 73 74 65 64 20 62 79 20 4a 6f 68 6e  uggested by John
15770 20 4c 6f 76 65 72 73 6f 20 6f 66 20 4f 53 46 2e   Loverso of OSF.
15780 20 28 4a 4c 29 0a 0a 34 2f 39 2f 39 36 20 28 66   (JL)..4/9/96 (f
15790 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 4d  eature change) M
157a0 6f 64 69 66 69 65 64 20 22 61 75 74 6f 22 20 74  odified "auto" t
157b0 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64 65 20  ranslation mode 
157c0 73 6f 20 74 68 61 74 20 69 74 0a 72 65 63 6f 67  so that it.recog
157d0 6e 69 7a 65 73 20 61 6e 79 20 6f 66 20 22 5c 6e  nizes any of "\n
157e0 22 2c 20 22 5c 72 22 20 61 6e 64 20 22 5c 72 5c  ", "\r" and "\r\
157f0 6e 22 20 69 6e 20 69 6e 70 75 74 20 61 73 20 65  n" in input as e
15800 6e 64 20 6f 66 20 6c 69 6e 65 2c 20 73 6f 0a 74  nd of line, so.t
15810 68 61 74 20 61 20 66 69 6c 65 20 63 61 6e 20 68  hat a file can h
15820 61 76 65 20 6d 69 78 65 64 20 65 6e 64 2d 6f 66  ave mixed end-of
15830 2d 6c 69 6e 65 20 73 65 71 75 65 6e 63 65 73 2e  -line sequences.
15840 20 49 74 20 6e 6f 77 20 6f 75 74 70 75 74 73 0a   It now outputs.
15850 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 73 70 65  the platform spe
15860 63 69 66 69 63 20 65 6e 64 20 6f 66 20 6c 69 6e  cific end of lin
15870 65 20 73 65 71 75 65 6e 63 65 20 6f 6e 20 65 61  e sequence on ea
15880 63 68 20 70 6c 61 74 66 6f 72 6d 20 66 6f 72 20  ch platform for 
15890 66 69 6c 65 73 20 61 6e 64 0a 70 69 70 65 73 2c  files and.pipes,
158a0 20 61 6e 64 20 66 6f 72 20 73 6f 63 6b 65 74 73   and for sockets
158b0 20 69 74 20 70 72 6f 64 75 63 65 73 20 63 72 6c   it produces crl
158c0 66 20 69 6e 20 6f 75 74 70 75 74 20 6f 6e 20 61  f in output on a
158d0 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 20 28 4a  ll platforms. (J
158e0 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49  L).*** INCOMPATI
158f0 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20  BILITY with Tcl 
15900 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74 20 77  7.5b3, but not w
15910 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a  ith Tcl 7.4 ***.
15920 0a 34 2f 31 31 2f 39 36 20 28 6e 65 77 20 66 65  .4/11/96 (new fe
15930 61 74 75 72 65 29 20 41 64 64 65 64 20 2d 65 6f  ature) Added -eo
15940 66 63 68 61 72 20 6f 70 74 69 6f 6e 20 74 6f 20  fchar option to 
15950 54 63 6c 5f 53 65 74 43 68 61 6e 6e 65 6c 4f 70  Tcl_SetChannelOp
15960 74 69 6f 6e 20 74 6f 20 61 6c 6c 6f 77 0a 73 65  tion to allow.se
15970 74 74 69 6e 67 20 6f 66 20 61 6e 20 65 6e 64 20  tting of an end 
15980 6f 66 20 66 69 6c 65 20 63 68 61 72 61 63 74 65  of file characte
15990 72 20 66 6f 72 20 69 6e 70 75 74 20 61 6e 64 20  r for input and 
159a0 6f 75 74 70 75 74 2e 20 49 66 20 61 6e 20 69 6e  output. If an in
159b0 70 75 74 20 65 6f 66 0a 63 68 61 72 20 69 73 20  put eof.char is 
159c0 73 65 74 2c 20 69 74 20 69 73 20 72 65 63 6f 67  set, it is recog
159d0 6e 69 7a 65 64 20 61 73 20 45 4f 46 20 61 6e 64  nized as EOF and
159e0 20 66 75 72 74 68 65 72 20 69 6e 70 75 74 20 66   further input f
159f0 72 6f 6d 20 74 68 65 20 63 68 61 6e 6e 65 6c 20  rom the channel 
15a00 69 73 0a 6e 6f 74 20 70 72 65 73 65 6e 74 65 64  is.not presented
15a10 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 2e 20   to the caller. 
15a20 49 66 20 61 6e 20 6f 75 74 70 75 74 20 65 6f 66  If an output eof
15a30 20 63 68 61 72 20 69 73 20 73 65 74 2c 20 6f 6e   char is set, on
15a40 20 6f 75 74 70 75 74 2c 20 74 68 61 74 0a 62 79   output, that.by
15a50 74 65 20 69 73 20 61 70 70 65 6e 64 65 64 20 74  te is appended t
15a60 6f 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 77 68  o the channel wh
15a70 65 6e 20 69 74 20 69 73 20 63 6c 6f 73 65 64 2e  en it is closed.
15a80 20 4f 6e 20 55 6e 69 78 20 61 6e 64 20 4d 61 63   On Unix and Mac
15a90 69 6e 74 6f 73 68 2c 0a 61 6c 6c 20 63 68 61 6e  intosh,.all chan
15aa0 6e 65 6c 73 20 73 74 61 72 74 20 77 69 74 68 20  nels start with 
15ab0 6e 6f 20 65 6f 66 20 63 68 61 72 20 73 65 74 20  no eof char set 
15ac0 66 6f 72 20 69 6e 70 75 74 20 6f 72 20 6f 75 74  for input or out
15ad0 70 75 74 2e 20 4f 6e 20 57 69 6e 64 6f 77 73 2c  put. On Windows,
15ae0 0a 66 69 6c 65 73 20 61 6e 64 20 70 69 70 65 73  .files and pipes
15af0 20 73 74 61 72 74 20 77 69 74 68 20 69 6e 70 75   start with inpu
15b00 74 20 61 6e 64 20 6f 75 74 70 75 74 20 65 6f 66  t and output eof
15b10 20 63 68 61 72 73 20 73 65 74 20 74 6f 20 43 72   chars set to Cr
15b20 6c 74 2d 5a 20 28 61 73 63 69 69 0a 32 36 29 2c  lt-Z (ascii.26),
15b30 20 61 6e 64 20 73 6f 63 6b 65 74 73 20 73 74 61   and sockets sta
15b40 72 74 20 77 69 74 68 20 6e 6f 20 69 6e 70 75 74  rt with no input
15b50 20 6f 72 20 6f 75 74 70 75 74 20 65 6f 66 20 63   or output eof c
15b60 68 61 72 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 49 4e  har. (JL).*** IN
15b70 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
15b80 74 68 20 54 63 6c 20 37 2e 35 62 33 2c 20 62 75  th Tcl 7.5b3, bu
15b90 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37  t not with Tcl 7
15ba0 2e 34 20 2a 2a 2a 0a 0a 34 2f 31 37 2f 39 36 20  .4 ***..4/17/96 
15bb0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
15bc0 73 65 72 69 65 73 20 6f 66 20 62 75 67 73 20 77  series of bugs w
15bd0 69 74 68 20 68 61 6e 64 6c 69 6e 67 20 6f 66 20  ith handling of 
15be0 63 72 6c 66 20 73 65 71 75 65 6e 63 65 20 73 70  crlf sequence sp
15bf0 6c 69 74 0a 61 63 72 6f 73 73 20 62 75 66 66 65  lit.across buffe
15c00 72 20 62 6f 75 6e 64 61 72 69 65 73 20 69 6e 20  r boundaries in 
15c10 69 6e 70 75 74 2c 20 69 6e 20 41 55 54 4f 20 6d  input, in AUTO m
15c20 6f 64 65 2e 20 28 4a 4c 2c 20 42 57 29 0a 0a 34  ode. (JL, BW)..4
15c30 2f 31 37 2f 39 36 20 28 74 65 73 74 20 73 75 69  /17/96 (test sui
15c40 74 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20  te improvement) 
15c50 46 69 78 65 64 20 74 65 73 74 20 73 75 69 74 65  Fixed test suite
15c60 20 73 6f 20 74 68 61 74 20 74 65 73 74 73 20 74   so that tests t
15c70 68 61 74 0a 64 65 70 65 6e 64 20 6f 6e 20 74 68  hat.depend on th
15c80 65 20 61 76 61 69 6c 61 62 69 6c 69 74 79 20 6f  e availability o
15c90 66 20 55 6e 69 78 20 63 6f 6d 6d 61 6e 64 73 20  f Unix commands 
15ca0 73 75 63 68 20 61 73 20 65 63 68 6f 2c 20 63 61  such as echo, ca
15cb0 74 20 61 6e 64 20 6f 74 68 65 72 73 0a 61 72 65  t and others.are
15cc0 20 6e 6f 74 20 72 75 6e 20 69 66 20 74 68 65 73   not run if thes
15cd0 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 6e  e commands are n
15ce0 6f 74 20 70 72 65 73 65 6e 74 2e 20 28 4a 4c 29  ot present. (JL)
15cf0 0a 0a 34 2f 31 37 2f 39 36 20 28 74 65 73 74 20  ..4/17/96 (test 
15d00 73 75 69 74 65 20 69 6d 70 72 6f 76 65 6d 65 6e  suite improvemen
15d10 74 29 20 54 68 65 20 73 6f 63 6b 65 74 20 74 65  t) The socket te
15d20 73 74 20 6e 6f 77 20 61 75 74 6f 6d 61 74 69 63  st now automatic
15d30 61 6c 6c 79 20 73 74 61 72 74 73 2c 0a 6f 6e 20  ally starts,.on 
15d40 70 6c 61 74 66 6f 72 6d 73 74 20 74 68 61 74 20  platformst that 
15d50 73 75 70 70 6f 72 74 20 65 78 65 63 2c 20 61 20  support exec, a 
15d60 73 65 70 61 72 61 74 65 20 70 72 6f 63 65 73 73  separate process
15d70 20 66 6f 72 20 72 65 6d 6f 74 65 20 74 65 73 74   for remote test
15d80 73 69 6e 67 2e 20 28 4a 4c 29 0a 0a 2d 2d 2d 2d  sing. (JL)..----
15d90 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
15da0 6c 65 61 73 65 64 20 37 2e 35 2c 20 34 2f 32 31  leased 7.5, 4/21
15db0 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /96 ------------
15dc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 31  -----------..5/1
15dd0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 22 66  /96 (bug fix) "f
15de0 69 6c 65 20 74 61 69 6c 20 7e 22 20 64 69 64 20  ile tail ~" did 
15df0 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20 72 65  not correctly re
15e00 74 75 72 6e 20 74 68 65 20 74 61 69 6c 0a 70 6f  turn the tail.po
15e10 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 75 73 65  rtion of the use
15e20 72 27 73 20 68 6f 6d 65 20 64 69 72 65 63 74 6f  r's home directo
15e30 72 79 2e 20 28 53 53 29 0a 0a 35 2f 31 2f 39 36  ry. (SS)..5/1/96
15e40 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
15e50 20 62 75 67 20 69 6e 20 54 63 6c 47 65 74 45 6e   bug in TclGetEn
15e60 76 20 77 68 65 72 65 20 69 74 20 64 69 64 6e 27  v where it didn'
15e70 74 20 6c 6f 6f 6b 75 70 20 65 6e 76 69 72 6f 6e  t lookup environ
15e80 6d 65 6e 74 0a 76 61 72 69 61 62 6c 65 73 20 63  ment.variables c
15e90 6f 72 72 65 63 74 6c 79 3a 20 20 63 6f 75 6c 64  orrectly:  could
15ea0 20 63 6f 6e 66 75 73 65 20 22 48 22 20 61 6e 64   confuse "H" and
15eb0 20 22 48 4f 4d 45 22 2c 20 66 6f 72 20 65 78 61   "HOME", for exa
15ec0 6d 70 6c 65 2e 20 20 28 4a 4f 29 0a 0a 35 2f 31  mple.  (JO)..5/1
15ed0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43 68  /96 (bug fix) Ch
15ee0 61 6e 67 65 64 20 74 6f 20 69 6e 73 74 61 6c 6c  anged to install
15ef0 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 75 6e   tclConfig.sh un
15f00 64 65 72 20 22 6d 61 6b 65 20 69 6e 73 74 61 6c  der "make instal
15f10 6c 2d 62 69 6e 61 72 69 65 73 22 2c 0a 6e 6f 74  l-binaries",.not
15f20 20 22 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d 6c   "make install-l
15f30 69 62 72 61 72 69 65 73 22 2e 20 20 28 4a 4f 29  ibraries".  (JO)
15f40 0a 0a 35 2f 32 2f 39 36 20 28 62 75 67 20 66 69  ..5/2/96 (bug fi
15f50 78 29 20 43 68 61 6e 67 65 64 20 70 6b 67 5f 6d  x) Changed pkg_m
15f60 6b 49 6e 64 65 78 20 6e 6f 74 20 74 6f 20 61 74  kIndex not to at
15f70 74 65 6d 70 74 20 74 6f 20 22 6c 6f 61 64 22 20  tempt to "load" 
15f80 61 20 66 69 6c 65 20 75 6e 6c 65 73 73 0a 69 74  a file unless.it
15f90 20 68 61 73 20 74 68 65 20 73 74 61 6e 64 61 72   has the standar
15fa0 64 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79  d shared library
15fb0 20 65 78 74 65 6e 73 69 6f 6e 2e 20 20 4f 6e 20   extension.  On 
15fc0 53 75 6e 4f 53 2c 20 61 74 74 65 6d 70 74 73 20  SunOS, attempts 
15fd0 74 6f 20 6c 6f 61 64 0a 54 63 6c 20 73 63 72 69  to load.Tcl scri
15fe0 70 74 73 20 63 61 75 73 65 20 74 68 65 20 77 68  pts cause the wh
15ff0 6f 6c 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 20  ole application 
16000 74 6f 20 62 65 20 61 62 6f 72 74 65 64 20 28 74  to be aborted (t
16010 68 65 72 65 27 73 20 6e 6f 20 77 61 79 20 74 6f  here's no way to
16020 0a 67 65 74 20 74 68 65 20 65 72 72 6f 72 20 62  .get the error b
16030 61 63 6b 20 69 6e 74 6f 20 54 63 6c 29 2e 20 20  ack into Tcl).  
16040 28 4a 4f 29 0a 0a 35 2f 37 2f 39 36 20 28 62 75  (JO)..5/7/96 (bu
16050 67 20 66 69 78 29 20 4d 6f 76 65 64 20 69 6e 69  g fix) Moved ini
16060 74 53 63 72 69 70 74 20 69 6e 20 74 63 6c 55 6e  tScript in tclUn
16070 69 78 49 6e 69 74 2e 63 20 74 6f 20 77 72 69 74  ixInit.c to writ
16080 61 62 6c 65 20 6d 65 6d 6f 72 79 20 74 6f 0a 61  able memory to.a
16090 76 6f 69 64 20 70 6f 74 65 6e 74 69 61 6c 20 63  void potential c
160a0 6f 72 65 20 64 75 6d 70 73 2e 20 28 4a 4f 29 0a  ore dumps. (JO).
160b0 0a 35 2f 37 2f 39 36 20 28 62 75 67 20 66 69 78  .5/7/96 (bug fix
160c0 29 20 41 75 74 6f 5f 72 65 73 65 74 20 70 72 6f  ) Auto_reset pro
160d0 63 65 64 75 72 65 20 77 61 73 20 72 65 6d 6f 76  cedure was remov
160e0 69 6e 67 20 70 72 6f 63 65 64 75 72 65 20 66 72  ing procedure fr
160f0 6f 6d 20 69 6e 69 74 2e 74 63 6c 2c 0a 73 75 63  om init.tcl,.suc
16100 68 20 61 73 20 70 6b 67 5f 6d 6b 49 6e 64 65 78  h as pkg_mkIndex
16110 2e 20 20 28 4a 4f 29 0a 0a 35 2f 37 2f 39 36 20  .  (JO)..5/7/96 
16120 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
16130 63 61 73 74 20 6f 6e 20 73 6f 63 6b 65 74 20 61  cast on socket a
16140 64 64 72 65 73 73 20 72 65 73 6f 6c 75 74 69 6f  ddress resolutio
16150 6e 20 63 6f 64 65 20 74 68 61 74 0a 77 6f 75 6c  n code that.woul
16160 64 20 63 61 75 73 65 20 61 20 66 61 69 6c 75 72  d cause a failur
16170 65 20 74 6f 20 63 6f 6e 6e 65 63 74 20 6f 6e 20  e to connect on 
16180 44 65 63 20 41 6c 70 68 61 73 2e 20 28 4a 4c 29  Dec Alphas. (JL)
16190 0a 0a 35 2f 37 2f 39 36 20 28 62 75 67 20 66 69  ..5/7/96 (bug fi
161a0 78 29 20 41 64 64 65 64 20 22 74 69 6d 65 22 2c  x) Added "time",
161b0 20 22 73 75 62 73 74 22 20 61 6e 64 20 22 66 69   "subst" and "fi
161c0 6c 65 65 76 65 6e 74 22 20 63 6f 6d 6d 61 6e 64  leevent" command
161d0 73 20 74 6f 20 73 65 74 20 6f 66 0a 63 6f 6d 6d  s to set of.comm
161e0 61 6e 64 73 20 61 76 61 69 6c 61 62 6c 65 20 69  ands available i
161f0 6e 20 61 20 73 61 66 65 20 69 6e 74 65 72 70 72  n a safe interpr
16200 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 31 33  eter. (JL)..5/13
16210 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 50 72  /96 (bug fix) Pr
16220 65 76 65 6e 74 69 6e 67 20 4f 53 20 6c 65 76 65  eventing OS leve
16230 6c 20 68 61 6e 64 6c 65 73 20 66 6f 72 20 73 74  l handles for st
16240 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e 64 20  din, stdout and 
16250 73 74 64 65 72 72 0a 66 72 6f 6d 20 62 65 69 6e  stderr.from bein
16260 67 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 6c 6f  g implicitly clo
16270 73 65 64 20 77 68 65 6e 20 74 68 65 20 6c 61 73  sed when the las
16280 74 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74  t reference to t
16290 68 65 20 73 74 61 6e 64 61 72 64 0a 63 68 61 6e  he standard.chan
162a0 6e 65 6c 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74  nel containing t
162b0 68 61 74 20 68 61 6e 64 6c 65 20 69 73 20 64 69  hat handle is di
162c0 73 63 61 72 64 65 64 20 77 68 65 6e 20 61 6e 20  scarded when an 
162d0 69 6e 74 65 72 70 72 65 74 65 72 20 69 73 20 64  interpreter is d
162e0 65 6c 65 74 65 64 2e 0a 45 78 70 6c 69 63 69 74  eleted..Explicit
162f0 6c 79 20 63 6c 6f 73 69 6e 67 20 73 74 61 6e 64  ly closing stand
16300 61 72 64 20 63 68 61 6e 6e 65 6c 73 20 62 79 20  ard channels by 
16310 75 73 69 6e 67 20 22 63 6c 6f 73 65 22 20 73 74  using "close" st
16320 69 6c 6c 20 77 6f 72 6b 73 2e 20 28 4a 4c 29 0a  ill works. (JL).
16330 0a 35 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69  .5/21/96 (bug fi
16340 78 29 20 44 6f 20 6e 6f 74 20 63 72 65 61 74 65  x) Do not create
16350 20 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20 73 74   channels for st
16360 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e 64 20  din, stdout and 
16370 73 74 64 65 72 72 20 6f 6e 0a 55 6e 69 78 20 69  stderr on.Unix i
16380 66 20 74 68 65 20 64 65 76 69 63 65 73 20 61 72  f the devices ar
16390 65 20 63 6c 6f 73 65 64 2e 20 54 68 69 73 20 70  e closed. This p
163a0 72 65 76 65 6e 74 73 20 61 20 64 75 70 6c 69 63  revents a duplic
163b0 61 74 65 20 63 68 61 6e 6e 65 6c 20 6e 61 6d 65  ate channel name
163c0 0a 70 61 6e 69 63 20 6c 61 74 65 72 20 6f 6e 20  .panic later on 
163d0 77 68 65 6e 20 74 68 65 20 66 64 20 69 73 20 75  when the fd is u
163e0 73 65 64 20 74 6f 20 6f 70 65 6e 20 61 20 63 68  sed to open a ch
163f0 61 6e 6e 65 6c 20 61 6e 64 20 74 68 65 20 63 68  annel and the ch
16400 61 6e 6e 65 6c 20 69 73 0a 72 65 67 69 73 74 65  annel is.registe
16410 72 65 64 20 69 6e 20 61 6e 20 69 6e 74 65 72 70  red in an interp
16420 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 32  reter. (JL)..5/2
16430 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  3/96 (bug fix) F
16440 69 78 65 64 20 62 75 67 20 74 68 61 74 20 70 72  ixed bug that pr
16450 65 76 65 6e 74 65 64 20 74 68 65 20 75 73 65 20  evented the use 
16460 6f 66 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e  of standard chan
16470 6e 65 6c 73 20 69 6e 0a 69 6e 74 65 72 70 72 65  nels in.interpre
16480 74 65 72 73 20 63 72 65 61 74 65 64 20 61 66 74  ters created aft
16490 65 72 20 74 68 65 20 6c 61 73 74 20 69 6e 74 65  er the last inte
164a0 72 70 72 65 74 65 72 20 77 61 73 20 64 65 73 74  rpreter was dest
164b0 72 6f 79 65 64 2e 20 49 6e 20 74 68 65 20 73 65  royed. In the se
164c0 71 75 65 6e 63 65 0a 0a 09 69 6e 74 65 72 70 20  quence...interp 
164d0 3d 20 54 63 6c 5f 43 72 65 61 74 65 49 6e 74 65  = Tcl_CreateInte
164e0 72 70 28 29 3b 0a 09 54 63 6c 5f 44 65 6c 65 74  rp();..Tcl_Delet
164f0 65 49 6e 74 65 72 70 28 69 6e 74 65 72 70 29 3b  eInterp(interp);
16500 0a 09 69 6e 74 65 72 70 20 3d 20 54 63 6c 5f 43  ..interp = Tcl_C
16510 72 65 61 74 65 49 6e 74 65 72 70 28 29 3b 0a 0a  reateInterp();..
16520 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20 73 74 64  channels for std
16530 69 6f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20  io would not be 
16540 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68 65  available in the
16550 20 73 65 63 6f 6e 64 20 69 6e 74 65 72 70 72 65   second interpre
16560 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 32 33 2f  ter. (JL)..5/23/
16570 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
16580 65 64 20 62 75 67 20 74 68 61 74 20 61 6c 6c 6f  ed bug that allo
16590 77 65 64 20 54 63 6c 5f 4d 61 6b 65 46 69 6c 65  wed Tcl_MakeFile
165a0 43 68 61 6e 6e 65 6c 20 74 6f 20 63 72 65 61 74  Channel to creat
165b0 65 20 6e 65 77 0a 63 68 61 6e 6e 65 6c 73 20 77  e new.channels w
165c0 69 74 68 20 54 63 6c 5f 46 69 6c 65 73 20 69 6e  ith Tcl_Files in
165d0 20 74 68 65 6d 20 74 68 61 74 20 61 72 65 20 61   them that are a
165e0 6c 72 65 61 64 79 20 75 73 65 64 20 62 79 20 61  lready used by a
165f0 6e 6f 74 68 65 72 20 63 68 61 6e 6e 65 6c 2e 0a  nother channel..
16600 54 68 69 73 20 77 6f 75 6c 64 20 63 61 75 73 65  This would cause
16610 20 63 6f 72 65 20 64 75 6d 70 73 20 77 68 65 6e   core dumps when
16620 20 74 68 65 20 54 63 6c 5f 46 69 6c 65 73 20 77   the Tcl_Files w
16630 65 72 65 20 62 65 69 6e 67 20 66 72 65 65 64 20  ere being freed 
16640 74 77 69 63 65 2e 20 28 4a 4c 29 0a 0a 35 2f 32  twice. (JL)..5/2
16650 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  3/96 (bug fix) F
16660 69 78 65 64 20 61 20 6c 6f 67 69 63 61 6c 20 74  ixed a logical t
16670 69 6d 69 6e 67 20 62 75 67 20 74 68 61 74 20 63  iming bug that c
16680 61 75 73 65 64 20 61 20 73 74 61 6e 64 61 72 64  aused a standard
16690 20 63 68 61 6e 6e 65 6c 0a 74 6f 20 62 65 20 72   channel.to be r
166a0 65 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68 65 20  emoved from the 
166b0 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c  standard channel
166c0 20 74 61 62 6c 65 20 74 6f 6f 20 65 61 72 6c 79   table too early
166d0 20 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e 65   when the channe
166e0 6c 0a 77 61 73 20 62 65 69 6e 67 20 63 6c 6f 73  l.was being clos
166f0 65 64 2e 20 49 66 20 74 68 65 20 63 68 61 6e 6e  ed. If the chann
16700 65 6c 20 77 61 73 20 62 65 69 6e 67 20 66 6c 75  el was being flu
16710 73 68 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75  shed asynchronou
16720 73 6c 79 2c 20 69 74 20 63 6f 75 6c 64 0a 67 65  sly, it could.ge
16730 74 20 72 65 63 72 65 61 74 65 64 20 62 65 66 6f  t recreated befo
16740 72 65 20 62 65 69 6e 67 20 61 63 74 75 61 6c 6c  re being actuall
16750 79 20 64 65 73 74 72 6f 79 65 64 2c 20 61 6e 64  y destroyed, and
16760 20 74 68 65 20 72 65 63 72 65 61 74 65 64 20 63   the recreated c
16770 68 61 6e 6e 65 6c 0a 77 6f 75 6c 64 20 63 6f 6e  hannel.would con
16780 74 61 69 6e 20 74 68 65 20 73 61 6d 65 20 54 63  tain the same Tc
16790 6c 5f 46 69 6c 65 20 61 73 20 74 68 65 20 6f 6e  l_File as the on
167a0 65 20 62 65 69 6e 67 20 63 6c 6f 73 65 64 2c 20  e being closed, 
167b0 6c 65 61 64 69 6e 67 20 74 6f 0a 64 61 6e 67 6c  leading to.dangl
167c0 69 6e 67 20 70 6f 69 6e 74 65 72 73 20 61 6e 64  ing pointers and
167d0 20 63 6f 72 65 20 64 75 6d 70 73 2e 20 28 4a 4c   core dumps. (JL
167e0 29 0a 0a 35 2f 32 37 2f 39 36 20 28 62 75 67 20  )..5/27/96 (bug 
167f0 66 69 78 29 20 46 69 78 65 64 20 61 20 62 75 67  fix) Fixed a bug
16800 20 69 6e 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e   in Tcl_GetChann
16810 65 6c 4f 70 74 69 6f 6e 20 77 68 69 63 68 20 63  elOption which c
16820 61 75 73 65 64 20 69 74 20 74 6f 0a 61 6c 77 61  aused it to.alwa
16830 79 73 20 72 65 74 75 72 6e 20 61 20 6c 69 73 74  ys return a list
16840 20 6f 66 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 2c   of one element,
16850 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65 20 73   a list of the s
16860 65 74 74 69 6e 67 73 2c 20 66 6f 72 0a 2d 74 72  ettings, for.-tr
16870 61 6e 73 6c 61 74 69 6f 6e 20 61 6e 64 20 2d 65  anslation and -e
16880 6f 66 63 68 61 72 20 6f 70 74 69 6f 6e 73 2e 20  ofchar options. 
16890 4e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 72 65  Now correctly re
168a0 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65 0a  turns the value.
168b0 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65  described by the
168c0 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 28   documentation (
168d0 4d 61 72 6b 20 44 69 65 6b 68 61 6e 73 20 66 6f  Mark Diekhans fo
168e0 75 6e 64 20 74 68 69 73 2c 20 74 68 61 6e 6b 73  und this, thanks
168f0 21 29 2e 20 28 4a 4c 29 0a 0a 35 2f 33 30 2f 39  !). (JL)..5/30/9
16900 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
16910 64 20 61 20 63 6f 75 70 6c 65 20 6f 66 20 73 79  d a couple of sy
16920 6e 74 61 78 20 65 72 72 6f 72 73 20 69 6e 20 69  ntax errors in i
16930 6f 2e 74 65 73 74 2e 20 28 4a 4c 29 0a 0a 35 2f  o.test. (JL)..5/
16940 33 30 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  30/96 (bug fix) 
16950 49 66 20 61 20 66 69 6c 65 65 76 65 6e 74 20 73  If a fileevent s
16960 63 72 69 70 74 73 20 67 65 74 73 20 61 6e 20 65  cripts gets an e
16970 72 72 6f 72 2c 20 64 65 6c 65 74 65 20 69 74 20  rror, delete it 
16980 62 65 66 6f 72 65 0a 63 61 75 73 69 6e 67 20 61  before.causing a
16990 20 62 61 63 6b 67 72 6f 75 6e 64 20 65 72 72 6f   background erro
169a0 72 2e 20 54 68 69 73 20 69 73 20 74 6f 20 61 6c  r. This is to al
169b0 6c 6f 77 20 74 68 65 20 65 72 72 6f 72 20 68 61  low the error ha
169c0 6e 64 6c 65 72 20 74 6f 20 72 65 69 6e 73 74 61  ndler to reinsta
169d0 6c 6c 0a 74 68 65 20 66 69 6c 65 65 76 65 6e 74  ll.the fileevent
169e0 20 61 6e 64 20 74 6f 20 70 72 65 76 65 6e 74 20   and to prevent 
169f0 69 6e 66 69 6e 69 74 65 20 6c 6f 6f 70 73 20 69  infinite loops i
16a00 66 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70  f the event loop
16a10 20 69 73 20 72 65 65 6e 74 65 72 65 64 0a 69 6e   is reentered.in
16a20 20 74 68 65 20 65 72 72 6f 72 20 68 61 6e 64 6c   the error handl
16a30 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 33 31 2f 39  er. (JL)..5/31/9
16a40 36 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e  6 (bug fix) Chan
16a50 6e 65 6c 73 20 6e 6f 77 20 77 69 6c 6c 20 67 65  nels now will ge
16a60 74 20 70 72 6f 70 65 72 6c 79 20 66 6c 75 73 68  t properly flush
16a70 65 64 20 6f 6e 20 65 78 69 74 2e 20 28 4a 4c 29  ed on exit. (JL)
16a80 0a 0a 36 2f 35 2f 39 36 20 28 62 75 67 20 66 69  ..6/5/96 (bug fi
16a90 78 29 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 43  x) Changed Tcl_C
16aa0 6b 61 6c 6c 6f 63 2c 20 54 63 6c 5f 43 6b 66 72  kalloc, Tcl_Ckfr
16ab0 65 65 2c 20 61 6e 64 20 54 63 6c 5f 43 6b 72 65  ee, and Tcl_Ckre
16ac0 61 6c 6c 6f 63 20 74 6f 0a 54 63 6c 5f 41 6c 6c  alloc to.Tcl_All
16ad0 6f 63 2c 20 54 63 6c 5f 46 72 65 65 2c 20 61 6e  oc, Tcl_Free, an
16ae0 64 20 54 63 6c 5f 52 65 61 6c 6c 6f 63 2e 20 20  d Tcl_Realloc.  
16af0 41 64 64 65 64 20 64 6f 63 75 6d 65 6e 74 61 74  Added documentat
16b00 69 6f 6e 20 66 6f 72 20 74 68 65 73 65 0a 72 6f  ion for these.ro
16b10 75 74 69 6e 65 73 20 6e 6f 77 20 74 68 61 74 20  utines now that 
16b20 74 68 65 79 20 61 72 65 20 6f 66 66 69 63 69 61  they are officia
16b30 6c 6c 79 20 73 75 70 70 6f 72 74 65 64 2e 20 20  lly supported.  
16b40 45 78 74 65 6e 73 69 6f 6e 20 77 72 69 74 65 72  Extension writer
16b50 73 0a 73 68 6f 75 6c 64 20 75 73 65 20 74 68 65  s.should use the
16b60 73 65 20 72 6f 75 74 69 6e 65 73 20 69 6e 73 74  se routines inst
16b70 65 61 64 20 6f 66 20 66 72 65 65 28 29 20 61 6e  ead of free() an
16b80 64 20 6d 61 6c 6c 6f 63 28 29 2e 20 28 53 53 29  d malloc(). (SS)
16b90 0a 0a 36 2f 31 30 2f 39 36 20 28 62 75 67 20 66  ..6/10/96 (bug f
16ba0 69 78 29 20 43 68 61 6e 67 65 73 20 74 68 65 20  ix) Changes the 
16bb0 54 63 6c 20 63 6c 6f 73 65 20 63 6f 6d 6d 61 6e  Tcl close comman
16bc0 64 20 73 6f 20 74 68 61 74 20 69 74 20 6e 6f 20  d so that it no 
16bd0 6c 6f 6e 67 65 72 0a 77 61 69 74 73 20 6f 6e 20  longer.waits on 
16be0 6e 6f 6e 62 6c 6f 63 6b 69 6e 67 20 70 69 70 65  nonblocking pipe
16bf0 73 20 66 6f 72 20 74 68 65 20 70 69 70 65 64 20  s for the piped 
16c00 70 72 6f 63 65 73 73 65 73 20 74 6f 20 65 78 69  processes to exi
16c10 74 3b 20 69 6e 73 74 65 61 64 20 69 74 0a 72 65  t; instead it.re
16c20 61 70 73 20 74 68 65 6d 20 69 6e 20 74 68 65 20  aps them in the 
16c30 62 61 63 6b 67 72 6f 75 6e 64 2e 20 28 4a 4c 29  background. (JL)
16c40 0a 0a 36 2f 31 31 2f 39 36 20 28 62 75 67 20 66  ..6/11/96 (bug f
16c50 69 78 29 20 49 6e 63 72 65 61 73 65 64 20 74 68  ix) Increased th
16c60 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20  e length of the 
16c70 6c 69 73 74 65 6e 20 71 75 65 75 65 20 66 6f 72  listen queue for
16c80 20 73 65 72 76 65 72 0a 73 6f 63 6b 65 74 73 20   server.sockets 
16c90 6f 6e 20 55 6e 69 78 20 66 72 6f 6d 20 35 20 74  on Unix from 5 t
16ca0 6f 20 31 30 30 2e 20 53 6f 6d 65 20 4f 53 65 73  o 100. Some OSes
16cb0 20 77 69 6c 6c 20 64 69 73 72 65 67 61 72 64 20   will disregard 
16cc0 74 68 69 73 20 61 6e 64 20 72 65 73 65 74 20 69  this and reset i
16cd0 74 0a 74 6f 20 35 2c 20 62 75 74 20 77 65 20 73  t.to 5, but we s
16ce0 68 6f 75 6c 64 20 74 72 79 20 74 6f 20 67 65 74  hould try to get
16cf0 20 61 73 20 6c 6f 6e 67 20 61 20 71 75 65 75 65   as long a queue
16d00 20 61 73 20 77 65 20 63 61 6e 2c 20 66 6f 72 20   as we can, for 
16d10 70 65 72 66 6f 72 6d 61 6e 63 65 0a 72 65 61 73  performance.reas
16d20 6f 6e 73 2e 20 28 4a 4c 29 0a 0a 36 2f 31 31 2f  ons. (JL)..6/11/
16d30 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
16d40 65 64 20 77 69 6e 64 6f 77 73 20 73 6f 63 6b 65  ed windows socke
16d50 74 73 20 62 75 67 20 74 68 61 74 20 63 61 75 73  ts bug that caus
16d60 65 64 20 61 20 63 61 73 63 61 64 65 20 6f 66 20  ed a cascade of 
16d70 65 76 65 6e 74 73 0a 69 66 20 74 68 65 20 66 69  events.if the fi
16d80 6c 65 65 76 65 6e 74 20 73 63 72 69 70 74 20 72  leevent script r
16d90 65 61 64 20 6c 65 73 73 20 74 68 61 6e 20 77 61  ead less than wa
16da0 73 20 61 76 61 69 6c 61 62 6c 65 2e 20 4e 6f 77  s available. Now
16db0 20 72 65 61 64 69 6e 67 20 6c 65 73 73 20 74 68   reading less th
16dc0 61 6e 0a 69 73 20 61 76 61 69 6c 61 62 6c 65 20  an.is available 
16dd0 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65 20 61  does not cause a
16de0 20 66 6c 6f 6f 64 20 6f 66 20 54 63 6c 20 65 76   flood of Tcl ev
16df0 65 6e 74 73 2e 20 28 4a 4c 2c 20 53 53 29 0a 0a  ents. (JL, SS)..
16e00 36 2f 31 31 2f 39 36 20 28 62 75 67 20 66 69 78  6/11/96 (bug fix
16e10 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 62  ) Fixed bug in b
16e20 61 63 6b 67 72 6f 75 6e 64 20 66 6c 75 73 68 69  ackground flushi
16e30 6e 67 20 6f 6e 20 63 6c 6f 73 65 64 20 63 68 61  ng on closed cha
16e40 6e 6e 65 6c 73 20 74 68 61 74 0a 77 6f 75 6c 64  nnels that.would
16e50 20 70 72 65 76 65 6e 74 20 74 68 65 20 6c 61 73   prevent the las
16e60 74 20 62 75 66 66 65 72 20 66 72 6f 6d 20 67 65  t buffer from ge
16e70 74 74 69 6e 67 20 66 6c 75 73 68 65 64 2e 20 28  tting flushed. (
16e80 4a 4c 29 0a 0a 36 2f 31 33 2f 39 36 20 28 62 75  JL)..6/13/96 (bu
16e90 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
16ea0 20 69 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b   in Windows sock
16eb0 65 74 73 20 74 68 61 74 20 63 61 75 73 65 64 20  ets that caused 
16ec0 61 20 63 6f 72 65 20 64 75 6d 70 20 69 66 0a 61  a core dump if.a
16ed0 20 44 4c 4c 20 6c 69 6e 6b 65 64 20 77 69 74 68   DLL linked with
16ee0 20 74 63 6c 2e 64 6c 6c 20 61 6e 64 20 72 65 66   tcl.dll and ref
16ef0 65 72 72 65 64 20 74 6f 20 65 2e 67 2e 20 6e 74  erred to e.g. nt
16f00 6f 68 73 28 29 20 77 69 74 68 6f 75 74 20 6f 70  ohs() without op
16f10 65 6e 69 6e 67 20 61 0a 54 63 6c 20 73 6f 63 6b  ening a.Tcl sock
16f20 65 74 2e 20 54 68 65 20 70 72 6f 62 6c 65 6d 20  et. The problem 
16f30 77 61 73 20 74 68 61 74 20 74 68 65 20 69 6e 64  was that the ind
16f40 69 72 65 63 74 69 6f 6e 20 74 61 62 6c 65 20 77  irection table w
16f50 61 73 20 6e 6f 74 20 62 65 69 6e 67 0a 69 6e 69  as not being.ini
16f60 74 69 61 6c 69 7a 65 64 2e 20 28 4a 4c 29 0a 0a  tialized. (JL)..
16f70 36 2f 31 33 2f 39 36 20 28 62 75 67 20 66 69 78  6/13/96 (bug fix
16f80 29 20 46 69 78 65 64 20 4f 53 20 6c 65 76 65 6c  ) Fixed OS level
16f90 20 72 65 73 6f 75 72 63 65 20 6c 65 61 6b 20 74   resource leak t
16fa0 68 61 74 20 77 6f 75 6c 64 20 6f 63 63 75 72 20  hat would occur 
16fb0 77 68 65 6e 20 61 0a 54 63 6c 20 63 68 61 6e 6e  when a.Tcl chann
16fc0 65 6c 20 77 61 73 20 73 74 69 6c 6c 20 72 65 67  el was still reg
16fd0 69 73 74 65 72 65 64 20 69 6e 20 73 6f 6d 65 20  istered in some 
16fe0 69 6e 74 65 72 70 72 65 74 65 72 20 77 68 65 6e  interpreter when
16ff0 20 74 68 65 20 70 72 6f 63 65 73 73 0a 65 78 69   the process.exi
17000 74 73 2e 20 50 72 65 76 69 6f 75 73 6c 79 20 74  ts. Previously t
17010 68 65 20 63 68 61 6e 6e 65 6c 20 77 61 73 20 6e  he channel was n
17020 6f 74 20 62 65 69 6e 67 20 63 6c 6f 73 65 64 20  ot being closed 
17030 61 6e 64 20 74 68 65 20 4f 53 20 6c 65 76 65 6c  and the OS level
17040 20 68 61 6e 64 6c 65 73 0a 77 65 72 65 20 6e 6f   handles.were no
17050 74 20 62 65 69 6e 67 20 72 65 6c 65 61 73 65 64  t being released
17060 3b 20 74 68 65 20 6f 75 74 70 75 74 20 77 61 73  ; the output was
17070 20 62 65 69 6e 67 20 66 6c 75 73 68 65 64 20 62   being flushed b
17080 75 74 20 74 68 65 20 64 65 76 69 63 65 20 77 61  ut the device wa
17090 73 0a 6e 6f 74 20 62 65 69 6e 67 20 63 6c 6f 73  s.not being clos
170a0 65 64 2e 20 4e 6f 77 20 74 68 65 20 64 65 76 69  ed. Now the devi
170b0 63 65 20 69 73 20 70 72 6f 70 65 72 6c 79 20 63  ce is properly c
170c0 6c 6f 73 65 64 2e 20 54 68 69 73 20 77 61 73 20  losed. This was 
170d0 6f 6e 6c 79 20 61 0a 70 72 6f 62 6c 65 6d 20 6f  only a.problem o
170e0 6e 20 57 69 6e 33 2e 31 20 61 6e 64 20 4d 61 63  n Win3.1 and Mac
170f0 4f 53 2e 20 28 4a 4c 2c 20 53 53 29 0a 0a 36 2f  OS. (JL, SS)..6/
17100 32 38 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  28/96 (bug fix) 
17110 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65 20  Fixed bug where 
17120 74 72 61 6e 73 69 65 6e 74 20 65 72 72 6f 72 73  transient errors
17130 20 77 65 72 65 20 6c 65 61 76 69 6e 67 20 61 6e   were leaving an
17140 20 65 72 72 6f 72 0a 63 6f 64 65 20 61 72 6f 75   error.code arou
17150 6e 64 2c 20 73 6f 20 74 68 61 74 20 69 74 20 77  nd, so that it w
17160 6f 75 6c 64 20 65 72 72 6f 6e 65 6f 75 73 6c 79  ould erroneously
17170 20 67 65 74 20 72 65 70 6f 72 74 65 64 20 6c 61   get reported la
17180 74 65 72 2e 20 54 68 69 73 20 62 75 67 20 77 61  ter. This bug wa
17190 73 0a 65 78 65 72 63 69 73 65 64 20 69 6e 74 65  s.exercised inte
171a0 72 6d 69 74 74 65 6e 74 6c 79 20 62 79 20 63 6c  rmittently by cl
171b0 6f 73 69 6e 67 20 61 20 63 68 61 6e 6e 65 6c 20  osing a channel 
171c0 74 6f 20 61 20 66 69 6c 65 20 6f 6e 20 61 20 76  to a file on a v
171d0 65 72 79 20 6c 6f 61 64 65 64 0a 4e 46 53 20 73  ery loaded.NFS s
171e0 65 72 76 65 72 2c 20 6f 72 20 74 6f 20 61 20 73  erver, or to a s
171f0 6f 63 6b 65 74 20 77 68 6f 73 65 20 6f 74 68 65  ocket whose othe
17200 72 20 65 6e 64 20 62 6c 6f 63 6b 65 64 2e 20 28  r end blocked. (
17210 4a 4c 2c 20 42 57 29 0a 0a 37 2f 33 2f 39 36 20  JL, BW)..7/3/96 
17220 28 62 75 67 20 66 69 78 29 20 46 69 6c 65 65 76  (bug fix) Fileev
17230 65 6e 74 73 20 64 65 63 6c 61 72 65 64 20 69 6e  ents declared in
17240 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20   an interpreter 
17250 61 72 65 20 6e 6f 77 20 64 65 6c 65 74 65 64 0a  are now deleted.
17260 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e 65 6c  when the channel
17270 20 69 73 20 63 6c 6f 73 65 64 20 69 6e 20 74 68   is closed in th
17280 61 74 20 69 6e 74 65 72 70 72 65 74 65 72 2e 20  at interpreter. 
17290 42 65 66 6f 72 65 20 74 68 69 73 20 66 69 78 2c  Before this fix,
172a0 20 74 68 65 0a 66 69 6c 65 65 76 65 6e 74 20 77   the.fileevent w
172b0 6f 75 6c 64 20 68 61 6e 67 20 61 72 6f 75 6e 64  ould hang around
172c0 20 75 6e 74 69 6c 20 74 68 65 20 63 68 61 6e 6e   until the chann
172d0 65 6c 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c 79  el is completely
172e0 20 63 6c 6f 73 65 64 2c 20 61 6e 64 0a 77 6f 75   closed, and.wou
172f0 6c 64 20 63 61 75 73 65 20 65 72 72 6f 72 73 20  ld cause errors 
17300 69 66 20 65 76 65 6e 74 73 20 68 61 70 70 65 6e  if events happen
17310 65 64 20 62 65 66 6f 72 65 20 74 68 65 20 63 68  ed before the ch
17320 61 6e 6e 65 6c 20 77 61 73 20 63 6c 6f 73 65 64  annel was closed
17330 2e 20 54 68 69 73 0a 63 6f 75 6c 64 20 68 61 70  . This.could hap
17340 70 65 6e 20 69 6e 20 74 77 6f 20 63 61 73 65 73  pen in two cases
17350 3a 20 66 69 72 73 74 20 69 66 20 74 68 65 20 63  : first if the c
17360 68 61 6e 6e 65 6c 20 69 73 20 73 68 61 72 65 64  hannel is shared
17370 20 62 65 74 77 65 65 6e 20 73 65 76 65 72 61 6c   between several
17380 0a 69 6e 74 65 72 70 72 65 74 65 72 73 2c 20 61  .interpreters, a
17390 6e 64 20 73 65 63 6f 6e 64 20 69 66 20 61 6e 20  nd second if an 
173a0 61 73 79 6e 63 20 66 6c 75 73 68 20 69 73 20 69  async flush is i
173b0 6e 20 70 72 6f 67 72 65 73 73 20 74 68 61 74 20  n progress that 
173c0 70 72 65 76 65 6e 74 73 20 74 68 65 0a 63 68 61  prevents the.cha
173d0 6e 6e 65 6c 20 66 72 6f 6d 20 62 65 69 6e 67 20  nnel from being 
173e0 63 6c 6f 73 65 64 20 75 6e 74 69 6c 20 74 68 65  closed until the
173f0 20 66 6c 75 73 68 20 66 69 6e 69 73 68 65 73 2e   flush finishes.
17400 20 28 4a 4c 29 0a 0a 37 2f 31 30 2f 39 36 20 28   (JL)..7/10/96 (
17410 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
17420 75 67 73 20 69 6e 20 62 6f 74 68 20 22 6c 72 61  ugs in both "lra
17430 6e 67 65 22 20 61 6e 64 20 22 6c 72 65 70 6c 61  nge" and "lrepla
17440 63 65 22 20 63 6f 6d 6d 61 6e 64 73 0a 77 68 65  ce" commands.whe
17450 72 65 20 74 6f 6f 20 6d 75 63 68 20 77 68 69 74  re too much whit
17460 65 20 73 70 61 63 65 20 77 61 73 20 62 65 69 6e  e space was bein
17470 67 20 72 65 6d 6f 76 65 64 2e 20 46 6f 72 20 65  g removed. For e
17480 78 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6d 6d  xample, the comm
17490 61 6e 64 0a 09 09 6c 72 65 70 6c 61 63 65 20 7b  and...lreplace {
174a0 5c 7d 5c 20 20 20 20 20 68 65 6c 6c 6f 7d 20 65  \}\     hello} e
174b0 6e 64 20 65 6e 64 0a 77 61 73 20 72 65 74 75 72  nd end.was retur
174c0 6e 69 6e 67 20 22 5c 7d 5c 22 2c 20 6c 6f 73 69  ning "\}\", losi
174d0 6e 67 20 74 68 65 20 73 69 67 6e 69 66 69 63 61  ng the significa
174e0 6e 74 20 73 70 61 63 65 20 69 6e 20 74 68 65 20  nt space in the 
174f0 66 69 72 73 74 20 6c 69 73 74 0a 65 6c 65 6d 65  first list.eleme
17500 6e 74 20 61 6e 64 20 63 6f 72 72 75 70 74 69 6e  nt and corruptin
17510 67 20 74 68 65 20 6c 69 73 74 2e 20 28 4a 4f 29  g the list. (JO)
17520 0a 0a 37 2f 32 30 2f 39 36 20 28 62 75 67 20 66  ..7/20/96 (bug f
17530 69 78 29 20 54 68 65 20 70 72 6f 63 65 64 75 72  ix) The procedur
17540 65 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 64 69  e pkg_mkIndex di
17550 64 6e 27 74 20 77 6f 72 6b 20 70 72 6f 70 65 72  dn't work proper
17560 6c 79 20 66 6f 72 0a 65 78 74 65 6e 73 69 6f 6e  ly for.extension
17570 73 20 74 68 61 74 20 64 65 70 65 6e 64 20 6f 6e  s that depend on
17580 20 54 6b 2c 20 62 65 63 61 75 73 65 20 69 74 20   Tk, because it 
17590 64 69 64 6e 27 74 20 6c 6f 61 64 20 54 6b 20 69  didn't load Tk i
175a0 6e 74 6f 20 74 68 65 20 63 68 69 6c 64 0a 69 6e  nto the child.in
175b0 74 65 72 70 72 65 74 65 72 20 62 65 66 6f 72 65  terpreter before
175c0 20 6c 6f 61 64 69 6e 67 20 74 68 65 20 65 78 74   loading the ext
175d0 65 6e 73 69 6f 6e 2e 20 20 4e 6f 77 20 69 74 20  ension.  Now it 
175e0 6c 6f 61 64 73 20 54 6b 20 69 66 20 54 6b 20 69  loads Tk if Tk i
175f0 73 0a 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65  s.present in the
17600 20 70 61 72 65 6e 74 2e 20 28 4a 4f 29 0a 0a 37   parent. (JO)..7
17610 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29  /23/96 (bug fix)
17620 20 41 64 64 65 64 20 63 6f 6d 70 61 74 20 76 65   Added compat ve
17630 72 73 69 6f 6e 20 6f 66 20 73 74 72 66 74 69 6d  rsion of strftim
17640 65 20 74 6f 20 66 69 78 20 63 72 61 73 68 65 73  e to fix crashes
17650 0a 72 65 73 75 6c 74 69 6e 67 20 66 72 6f 6d 20  .resulting from 
17660 62 61 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  bad implementati
17670 6f 6e 73 20 75 6e 64 65 72 20 57 69 6e 64 6f 77  ons under Window
17680 73 2e 20 28 53 53 29 0a 0a 37 2f 32 33 2f 39 36  s. (SS)..7/23/96
17690 20 28 62 75 67 20 66 69 78 29 20 53 74 61 6e 64   (bug fix) Stand
176a0 61 72 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ard implementati
176b0 6f 6e 73 20 6f 66 20 67 6d 74 69 6d 65 28 29 20  ons of gmtime() 
176c0 61 6e 64 20 6c 6f 63 61 6c 74 69 6d 65 28 29 0a  and localtime().
176d0 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20 64 69  under Windows di
176e0 64 20 6e 6f 74 20 68 61 6e 64 6c 65 20 64 61 74  d not handle dat
176f0 65 73 20 62 65 66 6f 72 65 20 31 39 37 30 2c 20  es before 1970, 
17700 73 6f 20 74 68 65 79 20 77 65 72 65 20 72 65 70  so they were rep
17710 6c 61 63 65 64 0a 77 69 74 68 20 61 20 72 65 76  laced.with a rev
17720 69 73 65 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74  ised implementat
17730 69 6f 6e 2e 20 28 53 53 29 0a 0a 37 2f 32 33 2f  ion. (SS)..7/23/
17740 39 36 20 28 62 75 67 20 66 69 78 29 20 54 63 6c  96 (bug fix) Tcl
17750 20 77 6f 75 6c 64 20 63 72 61 73 68 20 6f 6e 20   would crash on 
17760 65 78 69 74 20 75 6e 64 65 72 20 42 6f 72 6c 61  exit under Borla
17770 6e 64 20 35 2e 30 20 62 65 63 61 75 73 65 0a 74  nd 5.0 because.t
17780 68 65 20 67 6c 6f 62 61 6c 20 65 6e 76 69 72 6f  he global enviro
17790 6e 20 70 6f 69 6e 74 65 72 20 77 61 73 20 6c 65  n pointer was le
177a0 66 74 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 66  ft pointing to f
177b0 72 65 65 64 20 6d 65 6d 6f 72 79 2e 20 28 53 53  reed memory. (SS
177c0 29 0a 0a 37 2f 32 39 2f 39 36 20 28 62 75 67 20  )..7/29/96 (bug 
177d0 66 69 78 29 20 46 69 78 65 64 20 6d 65 6d 6f 72  fix) Fixed memor
177e0 79 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f 4c 6f  y leak in Tcl_Lo
177f0 61 64 43 6d 64 20 74 68 61 74 20 63 6f 75 6c 64  adCmd that could
17800 20 6f 63 63 75 72 20 69 66 0a 61 20 70 61 63 6b   occur if.a pack
17810 61 67 65 27 73 20 41 70 70 49 6e 69 74 20 70 72  age's AppInit pr
17820 6f 63 65 64 75 72 65 20 63 61 6c 6c 65 64 20 54  ocedure called T
17830 63 6c 5f 53 74 61 74 69 63 50 61 63 6b 61 67 65  cl_StaticPackage
17840 20 74 6f 20 72 65 67 69 73 74 65 72 0a 73 74 61   to register.sta
17850 74 69 63 20 70 61 63 6b 61 67 65 73 2e 20 28 4a  tic packages. (J
17860 4f 29 0a 0a 38 2f 31 2f 39 36 20 28 62 75 67 20  O)..8/1/96 (bug 
17870 66 69 78 29 20 46 69 78 65 64 20 61 20 73 65 72  fix) Fixed a ser
17880 69 65 73 20 6f 66 20 62 75 67 73 20 69 6e 20 57  ies of bugs in W
17890 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73 20 73  indows sockets s
178a0 6f 20 74 68 61 74 20 61 73 79 6e 63 0a 77 72 69  o that async.wri
178b0 74 65 62 65 68 69 6e 64 20 69 6e 20 74 68 65 20  tebehind in the 
178c0 70 72 65 73 65 6e 63 65 20 6f 66 20 72 65 61 64  presence of read
178d0 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73 20   event handlers 
178e0 6e 6f 77 20 77 6f 72 6b 73 2c 20 61 6e 64 20 73  now works, and s
178f0 6f 20 74 68 61 74 0a 61 73 79 6e 63 20 77 72 69  o that.async wri
17900 74 65 62 65 68 69 6e 64 20 61 6c 73 6f 20 77 6f  tebehind also wo
17910 72 6b 73 20 6f 6e 20 73 6f 63 6b 65 74 73 20 66  rks on sockets f
17920 6f 72 20 77 68 69 63 68 20 61 20 72 65 61 64 20  or which a read 
17930 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 20 77 61  event handler wa
17940 73 0a 64 65 63 6c 61 72 65 64 20 61 6e 64 20 77  s.declared and w
17950 68 6f 73 65 20 63 68 61 6e 6e 65 6c 73 20 77 65  hose channels we
17960 72 65 20 74 68 65 6e 20 63 6c 6f 73 65 64 20 62  re then closed b
17970 65 66 6f 72 65 20 74 68 65 20 61 73 79 6e 63 20  efore the async 
17980 77 72 69 74 65 0a 66 69 6e 69 73 68 65 64 2e 20  write.finished. 
17990 54 68 65 20 62 75 67 20 77 61 73 20 72 65 70 6f  The bug was repo
179a0 72 74 65 64 20 62 79 20 4a 6f 68 6e 20 4c 6f 76  rted by John Lov
179b0 65 72 73 6f 20 61 6e 64 20 53 74 65 76 65 6e 20  erso and Steven 
179c0 57 61 68 6c 2c 0a 69 6e 64 65 70 65 6e 64 65 6e  Wahl,.independen
179d0 74 6c 79 2c 20 74 65 73 74 20 63 61 73 65 20 73  tly, test case s
179e0 75 70 70 6c 69 65 64 20 62 79 20 4a 6f 68 6e 20  upplied by John 
179f0 4c 6f 76 65 72 73 6f 2e 20 28 4a 4c 29 0a 0a 2d  Loverso. (JL)..-
17a00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
17a10 20 52 65 6c 65 61 73 65 64 20 70 61 74 63 68 20   Released patch 
17a20 37 2e 35 70 31 2c 20 38 2f 32 2f 39 36 20 2d 2d  7.5p1, 8/2/96 --
17a30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
17a40 2d 2d 2d 2d 2d 0a 0a 35 2f 38 2f 39 36 20 28 6e  -----..5/8/96 (n
17a50 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
17a60 64 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c  d Tcl_GetChannel
17a70 4d 6f 64 65 20 43 20 41 50 49 20 66 6f 72 20 72  Mode C API for r
17a80 65 74 72 69 65 76 69 6e 67 20 77 68 65 74 68 65  etrieving whethe
17a90 72 0a 61 20 63 68 61 6e 6e 65 6c 20 69 73 20 6f  r.a channel is o
17aa0 70 65 6e 20 66 6f 72 20 72 65 61 64 69 6e 67 20  pen for reading 
17ab0 61 6e 64 20 77 72 69 74 69 6e 67 2e 20 28 4a 4c  and writing. (JL
17ac0 29 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49 20 63  )..5/8/96 (API c
17ad0 68 61 6e 67 65 73 29 20 52 65 76 69 73 65 64 20  hanges) Revised 
17ae0 43 20 41 50 49 73 20 66 6f 72 20 63 68 61 6e 6e  C APIs for chann
17af0 65 6c 20 64 72 69 76 65 72 73 3a 0a 20 20 20 20  el drivers:.    
17b00 2d 20 52 65 6d 6f 76 65 64 20 61 6c 6c 20 54 63  - Removed all Tc
17b10 6c 5f 46 69 6c 65 73 20 66 72 6f 6d 20 63 68 61  l_Files from cha
17b20 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 6e 74 65  nnel driver inte
17b30 72 66 61 63 65 3b 20 79 6f 75 20 63 61 6e 20 6e  rface; you can n
17b40 6f 77 20 68 61 76 65 0a 20 20 20 20 20 20 63 68  ow have.      ch
17b50 61 6e 6e 65 6c 73 20 74 68 61 74 20 61 72 65 20  annels that are 
17b60 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 54 63 6c  not based on Tcl
17b70 5f 46 69 6c 65 73 2e 0a 20 20 20 20 2d 20 41 64  _Files..    - Ad
17b80 64 65 64 20 63 68 61 6e 6e 65 6c 52 65 61 64 79  ded channelReady
17b90 50 72 6f 63 20 61 6e 64 20 77 61 74 63 68 43 68  Proc and watchCh
17ba0 61 6e 6e 65 6c 50 72 6f 63 20 70 72 6f 63 65 64  annelProc proced
17bb0 75 72 65 73 20 74 6f 20 69 6e 74 65 72 66 61 63  ures to interfac
17bc0 65 3b 0a 20 20 20 20 20 20 74 68 65 73 65 20 61  e;.      these a
17bd0 72 65 20 75 73 65 64 20 74 6f 20 69 6d 70 6c 65  re used to imple
17be0 6d 65 6e 74 20 65 76 65 6e 74 20 6e 6f 74 69 66  ment event notif
17bf0 69 63 61 74 69 6f 6e 20 66 6f 72 20 63 68 61 6e  ication for chan
17c00 6e 65 6c 73 2e 0a 20 20 20 20 2d 20 41 64 64 65  nels..    - Adde
17c10 64 20 67 65 74 46 69 6c 65 50 72 6f 63 20 74 6f  d getFileProc to
17c20 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 2c   channel driver,
17c30 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 67 65   to allow the ge
17c40 6e 65 72 69 63 20 49 4f 20 63 6f 64 65 0a 20 20  neric IO code.  
17c50 20 20 20 20 74 6f 20 72 65 74 72 69 65 76 65 20      to retrieve 
17c60 61 20 54 63 6c 5f 46 69 6c 65 20 66 72 6f 6d 20  a Tcl_File from 
17c70 61 20 63 68 61 6e 6e 65 6c 20 28 70 72 65 73 75  a channel (presu
17c80 6d 61 62 6c 79 20 69 66 20 74 68 65 20 63 68 61  mably if the cha
17c90 6e 6e 65 6c 0a 20 20 20 20 20 20 75 73 65 73 20  nnel.      uses 
17ca0 54 63 6c 5f 46 69 6c 65 73 20 74 68 65 79 20 77  Tcl_Files they w
17cb0 69 6c 6c 20 62 65 20 73 74 6f 72 65 64 20 69 6e  ill be stored in
17cc0 73 69 64 65 20 69 74 73 20 69 6e 73 74 61 6e 63  side its instanc
17cd0 65 44 61 74 61 29 2e 20 28 4a 4c 29 0a 2a 2a 2a  eData). (JL).***
17ce0 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
17cf0 20 77 69 74 68 20 54 63 6c 20 37 2e 35 20 2a 2a   with Tcl 7.5 **
17d00 2a 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49 20 63  *..5/8/96 (API c
17d10 68 61 6e 67 65 29 20 54 68 65 20 54 63 6c 5f 43  hange) The Tcl_C
17d20 72 65 61 74 65 43 68 61 6e 6e 65 6c 20 43 20 41  reateChannel C A
17d30 50 49 20 77 61 73 20 6d 6f 64 69 66 69 65 64 20  PI was modified 
17d40 74 6f 20 6e 6f 74 20 74 61 6b 65 0a 54 63 6c 5f  to not take.Tcl_
17d50 46 69 6c 65 20 61 72 67 75 6d 65 6e 74 73 2c 20  File arguments, 
17d60 61 6e 64 20 69 6e 73 74 65 61 64 20 74 6f 20 74  and instead to t
17d70 61 6b 65 20 61 20 6d 61 73 6b 20 73 70 65 63 69  ake a mask speci
17d80 66 79 69 6e 67 20 77 68 65 74 68 65 72 20 74 68  fying whether th
17d90 65 0a 63 68 61 6e 6e 65 6c 20 69 73 20 72 65 61  e.channel is rea
17da0 64 61 62 6c 65 20 61 6e 64 2f 6f 72 20 77 72 69  dable and/or wri
17db0 74 61 62 6c 65 2e 20 28 4a 4c 29 0a 2a 2a 2a 20  table. (JL).*** 
17dc0 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
17dd0 77 69 74 68 20 54 63 6c 20 37 2e 35 20 2a 2a 2a  with Tcl 7.5 ***
17de0 0a 0a 36 2f 33 2f 39 36 20 28 62 75 67 20 66 69  ..6/3/96 (bug fi
17df0 78 29 20 4d 61 64 65 20 54 63 6c 5f 53 65 74 56  x) Made Tcl_SetV
17e00 61 72 32 20 72 6f 62 75 73 74 20 61 67 61 69 6e  ar2 robust again
17e10 73 74 20 74 68 65 20 63 61 73 65 20 77 68 65 72  st the case wher
17e20 65 20 74 68 65 20 76 61 6c 75 65 0a 6f 66 20 74  e the value.of t
17e30 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20 61  he variable is a
17e40 20 4e 55 4c 4c 20 70 6f 69 6e 74 65 72 20 69 6e   NULL pointer in
17e50 73 74 65 61 64 20 6f 66 20 22 22 2e 20 28 4a 4c  stead of "". (JL
17e60 29 0a 0a 36 2f 31 37 2f 39 36 20 28 62 75 67 20  )..6/17/96 (bug 
17e70 66 69 78 29 20 46 69 78 65 64 20 22 72 65 61 64  fix) Fixed "read
17e80 69 6e 67 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65  ing uninitialize
17e90 64 20 6d 65 6d 6f 72 79 22 20 65 72 72 6f 72 20  d memory" error 
17ea0 72 65 70 6f 72 74 65 64 20 62 79 0a 50 75 72 69  reported by.Puri
17eb0 66 79 2c 20 69 6e 20 54 63 6c 5f 50 72 65 73 65  fy, in Tcl_Prese
17ec0 72 76 65 2f 54 63 6c 5f 52 65 6c 65 61 73 65 2e  rve/Tcl_Release.
17ed0 20 28 4a 4c 29 0a 0a 38 2f 39 2f 39 36 20 28 62   (JL)..8/9/96 (b
17ee0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
17ef0 67 20 69 6e 20 69 6e 69 74 2e 74 63 6c 20 74 68  g in init.tcl th
17f00 61 74 20 63 61 75 73 65 64 20 69 6e 63 6f 72 72  at caused incorr
17f10 65 63 74 20 65 72 72 6f 72 20 6d 65 73 73 61 67  ect error messag
17f20 65 0a 69 66 20 74 68 65 20 61 63 74 20 6f 66 20  e.if the act of 
17f30 61 75 74 6f 6c 6f 61 64 69 6e 67 20 61 20 70 72  autoloading a pr
17f40 6f 63 65 64 75 72 65 20 63 61 75 73 65 64 20 74  ocedure caused t
17f50 68 65 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20  he procedure to 
17f60 62 65 20 69 6e 76 6f 6b 65 64 0a 61 67 61 69 6e  be invoked.again
17f70 2e 20 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36 20 28  . (JO)..8/9/96 (
17f80 62 75 67 20 66 69 78 29 20 43 6f 6e 66 69 67 75  bug fix) Configu
17f90 72 65 20 73 63 72 69 70 74 20 70 72 6f 64 75 63  re script produc
17fa0 65 64 20 62 61 64 20 6c 69 62 72 61 72 79 20 6e  ed bad library n
17fb0 61 6d 65 73 20 61 6e 64 20 65 78 74 65 6e 73 69  ames and extensi
17fc0 6f 6e 73 0a 75 6e 64 65 72 20 53 75 6e 4f 53 20  ons.under SunOS 
17fd0 61 6e 64 20 61 20 66 65 77 20 6f 74 68 65 72 20  and a few other 
17fe0 70 6c 61 74 66 6f 72 6d 73 20 69 66 20 74 68 65  platforms if the
17ff0 20 2d 2d 64 69 73 61 62 6c 65 2d 6c 6f 61 64 20   --disable-load 
18000 73 77 69 74 63 68 20 77 61 73 20 75 73 65 64 2e  switch was used.
18010 0a 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36 20 28 62  .(JO)..8/9/96 (b
18020 75 67 20 66 69 78 29 20 54 63 6c 5f 55 70 64 61  ug fix) Tcl_Upda
18030 74 65 4c 69 6e 6b 65 64 56 61 72 20 67 65 6e 65  teLinkedVar gene
18040 72 61 74 65 64 20 61 6e 20 65 72 72 6f 72 20 69  rated an error i
18050 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 0a 62  f the variable.b
18060 65 69 6e 67 20 75 70 64 61 74 65 64 20 77 61 73  eing updated was
18070 20 72 65 61 64 2d 6f 6e 6c 79 2e 20 28 4a 4f 29   read-only. (JO)
18080 0a 0a 38 2f 31 34 2f 39 36 20 28 62 75 67 20 66  ..8/14/96 (bug f
18090 69 78 29 20 54 68 65 20 6d 61 63 69 6e 74 6f 73  ix) The macintos
180a0 68 20 6e 6f 77 20 73 75 70 70 6f 72 74 73 20 73  h now supports s
180b0 79 6e 63 68 72 6f 6e 6f 75 73 20 73 6f 63 6b 65  ynchronous socke
180c0 74 0a 63 6f 6e 6e 65 63 74 69 6f 6e 73 2e 20 20  t.connections.  
180d0 4f 74 68 65 72 20 6d 69 6e 6f 72 20 62 75 67 73  Other minor bugs
180e0 20 77 65 72 65 20 61 6c 73 6f 20 66 69 78 65 64   were also fixed
180f0 2e 20 28 52 4a 29 0a 0a 38 2f 31 35 2f 39 36 20  . (RJ)..8/15/96 
18100 28 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 69  (configuration i
18110 6d 70 72 6f 76 65 6d 65 6e 74 29 20 43 68 61 6e  mprovement) Chan
18120 67 65 64 20 74 68 65 20 66 69 6c 65 20 70 61 74  ged the file pat
18130 63 68 6c 65 76 65 6c 2e 68 0a 74 6f 20 62 65 20  chlevel.h.to be 
18140 74 63 6c 50 61 74 63 68 2e 68 2e 20 20 54 68 69  tclPatch.h.  Thi
18150 73 20 61 76 6f 69 64 73 20 63 6f 6e 66 6c 69 63  s avoids conflic
18160 74 20 77 69 74 68 20 74 68 65 20 54 6b 20 66 69  t with the Tk fi
18170 6c 65 20 61 6e 64 20 69 73 20 6e 6f 77 0a 69 6e  le and is now.in
18180 20 38 2e 33 20 66 6f 72 6d 61 74 20 6f 6e 20 74   8.3 format on t
18190 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66  he Windows platf
181a0 6f 72 6d 2e 20 28 52 4a 29 0a 0a 38 2f 32 30 2f  orm. (RJ)..8/20/
181b0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
181c0 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69 6e 20  ed core dump in 
181d0 69 6e 74 65 72 70 20 61 6c 69 61 73 20 63 6f 6d  interp alias com
181e0 6d 61 6e 64 20 66 6f 72 20 69 6e 74 65 72 70 72  mand for interpr
181f0 65 74 65 72 73 0a 63 72 65 61 74 65 64 20 77 69  eters.created wi
18200 74 68 20 54 63 6c 5f 43 72 65 61 74 65 49 6e 74  th Tcl_CreateInt
18210 65 72 70 20 28 61 73 20 6f 70 70 6f 73 65 64 20  erp (as opposed 
18220 74 6f 20 77 69 74 68 20 54 63 6c 5f 43 72 65 61  to with Tcl_Crea
18230 74 65 53 6c 61 76 65 29 2e 20 28 4a 4c 29 0a 0a  teSlave). (JL)..
18240 38 2f 32 30 2f 39 36 20 28 62 75 67 20 66 69 78  8/20/96 (bug fix
18250 29 20 4e 6f 20 6c 6f 6e 67 65 72 20 6d 61 73 6b  ) No longer mask
18260 69 6e 67 20 45 43 4f 4e 4e 52 45 53 45 54 20 6f  ing ECONNRESET o
18270 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74  n Windows socket
18280 73 20 73 6f 0a 74 68 61 74 20 74 68 65 20 68 69  s so.that the hi
18290 67 68 65 72 20 6c 65 76 65 6c 20 6f 66 20 74 68  gher level of th
182a0 65 20 49 4f 20 6d 65 63 68 61 6e 69 73 6d 20 73  e IO mechanism s
182b0 65 65 73 20 74 68 65 20 65 72 72 6f 72 20 69 6e  ees the error in
182c0 73 74 65 61 64 20 6f 66 0a 65 6e 74 65 72 69 6e  stead of.enterin
182d0 67 20 61 6e 20 69 6e 66 69 6e 69 74 65 20 6c 6f  g an infinite lo
182e0 6f 70 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30 2f 39  op. (JL)..8/20/9
182f0 36 20 28 62 75 67 20 66 69 78 29 20 44 65 73 74  6 (bug fix) Dest
18300 72 6f 79 69 6e 67 20 74 68 65 20 6c 61 73 74 20  roying the last 
18310 69 6e 74 65 72 70 72 65 74 65 72 20 6e 6f 20 6c  interpreter no l
18320 6f 6e 67 65 72 20 63 6c 6f 73 65 73 20 74 68 65  onger closes the
18330 0a 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e 65  .standard channe
18340 6c 73 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30 2f 39  ls. (JL)..8/20/9
18350 36 20 28 62 75 67 20 66 69 78 29 20 43 6c 6f 73  6 (bug fix) Clos
18360 69 6e 67 20 6f 6e 65 20 6f 66 20 74 68 65 20 73  ing one of the s
18370 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 6f 72 20  tdin, stdout or 
18380 73 74 64 65 72 72 20 63 68 61 6e 6e 65 6c 73 20  stderr channels 
18390 61 6e 64 0a 74 68 65 6e 20 6f 70 65 6e 69 6e 67  and.then opening
183a0 20 61 20 6e 65 77 20 63 68 61 6e 6e 65 6c 20 6e   a new channel n
183b0 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 61 73 73  ow correctly ass
183c0 69 67 6e 73 20 74 68 65 20 6e 65 77 20 63 68 61  igns the new cha
183d0 6e 6e 65 6c 20 61 73 20 74 68 65 0a 73 74 61 6e  nnel as the.stan
183e0 64 61 72 64 20 63 68 61 6e 6e 65 6c 20 74 68 61  dard channel tha
183f0 74 20 77 61 73 20 63 6c 6f 73 65 64 2e 20 28 4a  t was closed. (J
18400 4c 29 0a 0a 38 2f 32 30 2f 39 36 20 28 62 75 67  L)..8/20/96 (bug
18410 20 66 69 78 29 20 41 64 64 65 64 20 63 6f 64 65   fix) Added code
18420 20 74 6f 20 75 6e 69 78 2f 74 63 6c 55 6e 69 78   to unix/tclUnix
18430 43 68 61 6e 2e 63 20 66 6f 72 20 75 73 69 6e 67  Chan.c for using
18440 20 69 6f 63 74 6c 20 77 69 74 68 0a 46 49 4f 4e   ioctl with.FION
18450 42 49 4f 20 69 6e 73 74 65 61 64 20 6f 66 20 66  BIO instead of f
18460 63 6e 74 6c 20 77 69 74 68 20 4f 5f 4e 4f 4e 42  cntl with O_NONB
18470 4c 4f 43 4b 2c 20 66 6f 72 20 74 68 6f 73 65 20  LOCK, for those 
18480 76 65 72 73 69 6f 6e 73 20 6f 66 20 55 6e 69 78  versions of Unix
18490 20 77 68 65 72 65 0a 65 69 74 68 65 72 20 4f 5f   where.either O_
184a0 4e 4f 4e 42 4c 4f 43 4b 20 69 73 20 6e 6f 74 20  NONBLOCK is not 
184b0 73 75 70 70 6f 72 74 65 64 20 6f 72 20 69 6d 70  supported or imp
184c0 6c 65 6d 65 6e 74 65 64 20 69 6e 63 6f 72 72 65  lemented incorre
184d0 63 74 6c 79 2e 20 28 4a 4c 29 0a 0a 38 2f 32 31  ctly. (JL)..8/21
184e0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
184f0 78 65 64 20 22 66 69 6c 65 20 65 78 74 65 6e 73  xed "file extens
18500 69 6f 6e 22 20 73 6f 20 69 74 20 63 6f 72 72 65  ion" so it corre
18510 63 74 6c 79 20 72 65 74 75 72 6e 73 20 74 68 65  ctly returns the
18520 0a 65 78 74 65 6e 73 69 6f 6e 20 6f 6e 20 66 69  .extension on fi
18530 6c 65 73 20 6c 69 6b 65 20 22 66 6f 6f 2e 2e 63  les like "foo..c
18540 22 20 61 73 20 22 2e 2e 63 22 20 69 6e 73 74 65  " as "..c" inste
18550 61 64 20 6f 66 20 22 2e 63 22 2e 20 28 53 53 29  ad of ".c". (SS)
18560 0a 0a 38 2f 32 32 2f 39 36 20 28 62 75 67 20 66  ..8/22/96 (bug f
18570 69 78 29 20 49 66 20 65 6e 76 69 72 6f 6e 5b 5d  ix) If environ[]
18580 20 63 6f 6e 74 61 69 6e 73 20 73 74 61 74 69 63   contains static
18590 20 73 74 72 69 6e 67 73 2c 20 54 63 6c 20 77 6f   strings, Tcl wo
185a0 75 6c 64 20 63 6f 72 65 0a 64 75 6d 70 20 69 6e  uld core.dump in
185b0 20 54 63 6c 53 65 74 75 70 45 6e 76 20 62 65 63   TclSetupEnv bec
185c0 61 75 73 65 20 69 74 20 77 61 73 20 74 72 79 69  ause it was tryi
185d0 6e 67 20 74 6f 20 77 72 69 74 65 20 4e 55 4c 4c  ng to write NULL
185e0 73 20 69 6e 74 6f 20 74 68 65 20 61 63 74 75 61  s into the actua
185f0 6c 0a 64 61 74 61 20 69 6e 20 65 6e 76 69 72 6f  l.data in enviro
18600 6e 5b 5d 2e 20 4e 6f 77 20 77 65 20 69 6e 73 74  n[]. Now we inst
18610 65 61 64 20 63 6f 70 79 20 61 73 20 61 70 70 72  ead copy as appr
18620 6f 70 72 69 61 74 65 2e 20 28 4a 4c 29 0a 0a 38  opriate. (JL)..8
18630 2f 32 32 2f 39 36 20 28 61 64 64 65 64 20 69 6d  /22/96 (added im
18640 70 6c 29 20 41 64 64 65 64 20 6d 69 73 73 69 6e  pl) Added missin
18650 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e  g implementation
18660 20 6f 66 20 54 63 6c 5f 4d 61 6b 65 54 63 70 43   of Tcl_MakeTcpC
18670 6c 69 65 6e 74 43 68 61 6e 6e 65 6c 0a 66 6f 72  lientChannel.for
18680 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72   Windows platfor
18690 6d 2e 20 43 6f 64 65 20 63 6f 6e 74 72 69 62 75  m. Code contribu
186a0 74 65 64 20 62 79 20 4d 61 72 6b 20 44 69 65 6b  ted by Mark Diek
186b0 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 38 2f 32 32  hans. (JL)..8/22
186c0 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65  /96 (new feature
186d0 29 20 41 64 64 65 64 20 61 20 6e 65 77 20 6d 65  ) Added a new me
186e0 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 6f 72 20 66  mory allocator f
186f0 6f 72 20 74 68 65 20 4d 61 63 69 6e 74 6f 73 68  or the Macintosh
18700 0a 76 65 72 73 69 6f 6e 20 6f 66 20 54 63 6c 2e  .version of Tcl.
18710 20 20 49 74 27 73 20 71 75 69 74 65 20 61 20 62    It's quite a b
18720 69 74 20 66 61 73 74 65 72 20 74 68 61 6e 20 4d  it faster than M
18730 65 74 72 6f 57 65 72 6b 27 73 20 76 65 72 73 69  etroWerk's versi
18740 6f 6e 2e 20 28 52 4a 29 0a 0a 38 2f 32 36 2f 39  on. (RJ)..8/26/9
18750 36 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  6 (documentation
18760 20 75 70 64 61 74 65 29 20 52 65 6d 6f 76 65 64   update) Removed
18770 20 6f 6c 64 20 63 68 61 6e 67 65 20 62 61 72 73   old change bars
18780 20 28 66 6f 72 20 61 6c 6c 20 63 68 61 6e 67 65   (for all change
18790 73 0a 69 6e 20 54 63 6c 20 37 2e 35 20 61 6e 64  s.in Tcl 7.5 and
187a0 20 65 61 72 6c 69 65 72 20 72 65 6c 65 61 73 65   earlier release
187b0 73 29 20 66 72 6f 6d 20 6d 61 6e 75 61 6c 20 65  s) from manual e
187c0 6e 74 72 69 65 73 2e 20 28 4a 4f 29 0a 0a 38 2f  ntries. (JO)..8/
187d0 32 37 2f 39 36 20 28 65 6e 68 61 6e 63 65 6d 65  27/96 (enhanceme
187e0 6e 74 29 20 54 68 65 20 65 78 65 63 20 61 6e 64  nt) The exec and
187f0 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 73 20 62   open commands b
18800 65 68 61 76 65 20 62 65 74 74 65 72 20 61 6e 64  ehave better and
18810 20 77 6f 72 6b 20 69 6e 20 0a 6d 6f 72 65 20 73   work in .more s
18820 69 74 75 61 74 69 6f 6e 73 20 75 6e 64 65 72 20  ituations under 
18830 57 69 6e 64 6f 77 73 20 4e 54 20 61 6e 64 20 57  Windows NT and W
18840 69 6e 64 6f 77 73 20 39 35 2e 20 20 44 6f 63 75  indows 95.  Docu
18850 6d 65 6e 74 61 74 69 6f 6e 20 64 65 73 63 72 69  mentation descri
18860 62 65 73 20 0a 77 68 61 74 20 69 73 20 73 74 69  bes .what is sti
18870 6c 6c 20 6c 61 63 6b 69 6e 67 2e 20 28 43 53 29  ll lacking. (CS)
18880 0a 0a 38 2f 32 37 2f 39 36 20 28 65 6e 68 61 6e  ..8/27/96 (enhan
18890 63 65 6d 65 6e 74 29 20 54 68 65 20 57 69 6e 64  cement) The Wind
188a0 6f 77 73 20 6d 61 6b 65 66 69 6c 65 73 20 77 69  ows makefiles wi
188b0 6c 6c 20 6e 6f 77 20 63 6f 6d 70 69 6c 65 20 65  ll now compile e
188c0 76 65 6e 20 69 66 20 74 68 65 0a 63 6f 6d 70 69  ven if the.compi
188d0 6c 65 72 20 69 73 20 6e 6f 74 20 69 6e 20 74 68  ler is not in th
188e0 65 20 70 61 74 68 20 61 6e 64 2f 6f 72 20 74 68  e path and/or th
188f0 65 20 63 6f 6d 70 69 6c 65 72 27 73 20 65 6e 76  e compiler's env
18900 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c  ironment variabl
18910 65 73 0a 68 61 76 65 20 6e 6f 74 20 62 65 65 6e  es.have not been
18920 20 73 65 74 20 75 70 2e 20 28 43 53 29 20 0a 0a   set up. (CS) ..
18930 38 2f 32 37 2f 39 36 20 28 63 6f 6e 66 69 67 75  8/27/96 (configu
18940 72 61 74 69 6f 6e 20 69 6d 70 72 6f 76 65 6d 65  ration improveme
18950 6e 74 29 20 54 68 65 20 57 69 6e 64 6f 77 73 20  nt) The Windows 
18960 72 65 73 6f 75 72 63 65 20 66 69 6c 65 73 20 61  resource files a
18970 72 65 20 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c  re .automaticall
18980 79 20 75 70 64 61 74 65 64 20 77 68 65 6e 20 74  y updated when t
18990 68 65 20 76 65 72 73 69 6f 6e 2f 70 61 74 63 68  he version/patch
189a0 20 6c 65 76 65 6c 20 63 68 61 6e 67 65 73 2e 20   level changes. 
189b0 20 54 68 65 20 68 65 61 64 65 72 20 66 69 6c 65   The header file
189c0 0a 6e 6f 77 20 68 61 73 20 61 20 63 6f 6d 6d 65  .now has a comme
189d0 6e 74 20 74 68 61 74 20 72 65 6d 69 6e 64 73 20  nt that reminds 
189e0 74 68 65 20 75 73 65 72 20 77 68 69 63 68 20 6f  the user which o
189f0 74 68 65 72 20 66 69 6c 65 73 20 6d 75 73 74 20  ther files must 
18a00 62 65 20 6d 61 6e 75 61 6c 6c 79 0a 75 70 64 61  be manually.upda
18a10 74 65 64 20 77 68 65 6e 20 74 68 65 20 76 65 72  ted when the ver
18a20 73 69 6f 6e 2f 70 61 74 63 68 20 6c 65 76 65 6c  sion/patch level
18a30 20 63 68 61 6e 67 65 73 2e 20 28 43 53 29 0a 0a   changes. (CS)..
18a40 38 2f 32 38 2f 39 36 20 28 6e 65 77 20 66 65 61  8/28/96 (new fea
18a50 74 75 72 65 29 20 41 64 64 65 64 20 66 69 6c 65  ture) Added file
18a60 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 66 65   manipulation fe
18a70 61 74 75 72 65 73 20 28 63 6f 70 79 2c 20 72 65  atures (copy, re
18a80 6e 61 6d 65 2c 20 64 65 6c 65 74 65 2c 0a 6d 6b  name, delete,.mk
18a90 64 69 72 29 20 74 68 61 74 20 61 72 65 20 73 75  dir) that are su
18aa0 70 70 6f 72 74 65 64 20 6f 6e 20 61 6c 6c 20 70  pported on all p
18ab0 6c 61 74 66 6f 72 6d 73 2e 20 54 68 65 79 20 61  latforms. They a
18ac0 72 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 61  re implemented a
18ad0 73 20 0a 73 75 62 63 6f 6d 6d 61 6e 64 73 20 74  s .subcommands t
18ae0 6f 20 74 68 65 20 22 66 69 6c 65 22 20 63 6f 6d  o the "file" com
18af0 6d 61 6e 64 2e 20 53 65 65 20 74 68 65 20 64 6f  mand. See the do
18b00 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20  cumentation for 
18b10 74 68 65 20 22 66 69 6c 65 22 0a 63 6f 6d 6d 61  the "file".comma
18b20 6e 64 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f  nd for more info
18b30 72 6d 61 74 69 6f 6e 2e 20 28 4a 48 29 0a 0a 2d  rmation. (JH)..-
18b40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18b50 20 52 65 6c 65 61 73 65 64 20 37 2e 36 62 31 2c   Released 7.6b1,
18b60 20 38 2f 33 30 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d   8/30/96 -------
18b70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18b80 0a 0a 39 2f 33 2f 39 36 20 28 62 75 67 20 66 69  ..9/3/96 (bug fi
18b90 78 29 20 53 69 6d 70 6c 69 66 69 65 64 20 63 6f  x) Simplified co
18ba0 64 65 20 73 6f 20 74 68 61 74 20 73 74 61 6e 64  de so that stand
18bb0 61 72 64 20 63 68 61 6e 6e 65 6c 73 20 61 72 65  ard channels are
18bc0 20 63 72 65 61 74 65 64 0a 6c 61 7a 69 6c 79 2c   created.lazily,
18bd0 20 74 68 65 79 20 61 72 65 20 61 64 64 65 64 20   they are added 
18be0 74 6f 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65  to an interprete
18bf0 72 20 6c 61 7a 69 6c 79 2c 20 61 6e 64 20 74 68  r lazily, and th
18c00 65 79 20 61 72 65 20 6e 65 76 65 72 20 61 64 64  ey are never add
18c10 65 64 0a 74 6f 20 61 20 73 61 66 65 20 69 6e 74  ed.to a safe int
18c20 65 72 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a  erpreter. (JL)..
18c30 39 2f 33 2f 39 36 20 28 62 75 67 20 66 69 78 29  9/3/96 (bug fix)
18c40 20 43 6c 6f 73 69 6e 67 20 61 20 63 68 61 6e 6e   Closing a chann
18c50 65 6c 20 61 66 74 65 72 20 63 6c 6f 73 69 6e 67  el after closing
18c60 20 61 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e   a standard chan
18c70 6e 65 6c 2c 20 65 2e 67 2e 0a 73 74 64 6f 75 74  nel, e.g..stdout
18c80 2c 20 77 6f 75 6c 64 20 63 61 75 73 65 20 74 68  , would cause th
18c90 65 20 69 6d 70 6c 69 63 69 74 20 72 65 63 72 65  e implicit recre
18ca0 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 20 73 74  ation of that st
18cb0 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 2e 20  andard channel. 
18cc0 28 4a 4c 29 0a 0a 39 2f 33 2f 39 36 20 28 6e 65  (JL)..9/3/96 (ne
18cd0 77 20 66 65 61 74 75 72 65 29 20 4e 6f 77 20 63  w feature) Now c
18ce0 61 6c 6c 69 6e 67 20 54 63 6c 5f 52 65 67 69 73  alling Tcl_Regis
18cf0 74 65 72 43 68 61 6e 6e 65 6c 20 77 69 74 68 20  terChannel with 
18d00 61 20 4e 55 4c 4c 0a 69 6e 74 65 72 70 72 65 74  a NULL.interpret
18d10 65 72 20 69 6e 63 72 65 6d 65 6e 74 73 20 74 68  er increments th
18d20 65 20 72 65 66 63 6f 75 6e 74 20 73 6f 20 74 68  e refcount so th
18d30 61 74 20 63 6f 64 65 20 6f 75 74 73 69 64 65 20  at code outside 
18d40 61 6e 79 20 69 6e 74 65 72 70 72 65 74 65 72 0a  any interpreter.
18d50 63 61 6e 20 75 73 65 20 63 68 61 6e 6e 65 6c 73  can use channels
18d60 20 74 68 61 74 20 61 72 65 20 61 6c 73 6f 20 72   that are also r
18d70 65 67 69 73 74 65 72 65 64 20 69 6e 20 69 6e 74  egistered in int
18d80 65 72 70 72 65 74 65 72 73 2c 20 77 69 74 68 6f  erpreters, witho
18d90 75 74 20 77 6f 72 72 79 69 6e 67 0a 74 68 61 74  ut worrying.that
18da0 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 6d 61 79   the channel may
18db0 20 74 75 72 6e 20 69 6e 74 6f 20 61 20 64 61 6e   turn into a dan
18dc0 67 6c 69 6e 67 20 70 6f 69 6e 74 65 72 20 61 74  gling pointer at
18dd0 20 61 6e 79 20 74 69 6d 65 2e 20 43 61 6c 6c 69   any time. Calli
18de0 6e 67 0a 54 63 6c 5f 55 6e 72 65 67 69 73 74 65  ng.Tcl_Unregiste
18df0 72 43 68 61 6e 6e 65 6c 20 77 69 74 68 20 61 20  rChannel with a 
18e00 4e 55 4c 4c 20 69 6e 74 65 72 70 72 65 74 65 72  NULL interpreter
18e10 20 6f 6e 6c 79 20 64 65 63 72 65 6d 65 6e 74 73   only decrements
18e20 20 74 68 65 20 72 65 63 6f 75 6e 74 0a 73 6f 20   the recount.so 
18e30 74 68 61 74 20 63 6f 64 65 20 6f 75 74 73 69 64  that code outsid
18e40 65 20 61 6e 79 20 69 6e 74 65 72 70 72 65 74 65  e any interprete
18e50 72 20 63 61 6e 20 73 61 66 65 6c 79 20 64 65 63  r can safely dec
18e60 6c 61 72 65 20 69 74 20 69 73 20 6e 6f 20 6c 6f  lare it is no lo
18e70 6e 67 65 72 0a 69 6e 74 65 72 65 73 74 65 64 20  nger.interested 
18e80 69 6e 20 61 20 63 68 61 6e 6e 65 6c 2e 20 28 4a  in a channel. (J
18e90 4c 29 0a 0a 39 2f 34 2f 39 36 20 28 6e 65 77 20  L)..9/4/96 (new 
18ea0 66 65 61 74 75 72 65 73 29 20 54 77 6f 20 63 68  features) Two ch
18eb0 61 6e 67 65 73 20 74 6f 20 64 79 6e 61 6d 69 63  anges to dynamic
18ec0 20 6c 6f 61 64 69 6e 67 3a 0a 20 20 20 20 2d 20   loading:.    - 
18ed0 49 66 20 74 68 65 20 66 69 6c 65 20 6e 61 6d 65  If the file name
18ee0 20 69 73 20 65 6d 70 74 79 20 69 6e 20 74 68 65   is empty in the
18ef0 20 22 6c 6f 61 64 22 20 63 6f 6d 6d 61 6e 64 20   "load" command 
18f00 61 6e 64 20 74 68 65 72 65 20 69 73 20 6e 6f 0a  and there is no.
18f10 20 20 20 20 20 20 73 74 61 74 69 63 61 6c 6c 79        statically
18f20 20 6c 6f 61 64 65 64 20 76 65 72 73 69 6f 6e 20   loaded version 
18f30 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 2c 20  of the package, 
18f40 61 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 6f  a dynamically lo
18f50 61 64 65 64 0a 20 20 20 20 20 20 76 65 72 73 69  aded.      versi
18f60 6f 6e 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20  on will be used 
18f70 69 66 20 74 68 65 72 65 20 69 73 20 6f 6e 65 2e  if there is one.
18f80 0a 20 20 20 20 2d 20 54 63 6c 5f 53 74 61 74 69  .    - Tcl_Stati
18f90 63 50 61 63 6b 61 67 65 20 69 67 6e 6f 72 65 73  cPackage ignores
18fa0 20 72 65 64 75 6e 64 61 6e 74 20 63 61 6c 6c 73   redundant calls
18fb0 20 66 6f 72 20 74 68 65 20 73 61 6d 65 20 70 61   for the same pa
18fc0 63 6b 61 67 65 2e 20 28 4a 4f 29 0a 0a 39 2f 36  ckage. (JO)..9/6
18fd0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 50 6c  /96 (bug fix) Pl
18fe0 61 74 66 6f 72 6d 20 73 70 65 63 69 66 69 63 20  atform specific 
18ff0 70 72 6f 63 65 64 75 72 65 73 20 66 6f 72 20 6d  procedures for m
19000 61 6e 69 70 75 6c 61 74 69 6e 67 20 66 69 6c 65  anipulating file
19010 73 20 61 72 65 0a 6e 6f 20 6c 6f 6e 67 65 72 20  s are.no longer 
19020 6d 61 63 72 6f 73 20 61 6e 64 20 68 61 76 65 20  macros and have 
19030 62 65 65 6e 20 70 72 65 66 69 78 65 64 20 77 69  been prefixed wi
19040 74 68 20 22 54 63 6c 70 22 2c 20 73 75 63 68 20  th "Tclp", such 
19050 61 73 20 54 63 6c 70 52 65 6e 61 6d 65 46 69 6c  as TclpRenameFil
19060 65 2e 0a 55 6e 69 78 20 66 69 6c 65 20 63 6f 64  e..Unix file cod
19070 65 20 6e 6f 77 20 68 61 6e 64 6c 65 73 20 73 79  e now handles sy
19080 6d 62 6f 6c 69 63 20 6c 69 6e 6b 73 20 61 6e 64  mbolic links and
19090 20 6f 74 68 65 72 20 73 70 65 63 69 61 6c 20 66   other special f
190a0 69 6c 65 73 20 63 6f 72 72 65 63 74 6c 79 2e 0a  iles correctly..
190b0 54 68 65 20 73 65 6d 61 6e 74 69 63 73 20 6f 66  The semantics of
190c0 20 66 69 6c 65 20 63 6f 70 79 20 61 6e 64 20 66   file copy and f
190d0 69 6c 65 20 72 65 6e 61 6d 65 20 68 61 73 20 62  ile rename has b
190e0 65 65 6e 20 63 68 61 6e 67 65 64 20 73 6f 20 74  een changed so t
190f0 68 61 74 20 69 66 0a 61 20 74 61 72 67 65 74 20  hat if.a target 
19100 64 69 72 65 63 74 6f 72 79 20 65 78 69 73 74 73  directory exists
19110 2c 20 74 68 65 20 73 6f 75 72 63 65 20 66 69 6c  , the source fil
19120 65 73 20 77 69 6c 6c 20 4e 4f 54 20 62 65 20 6d  es will NOT be m
19130 65 72 67 65 64 20 77 69 74 68 20 74 68 65 0a 65  erged with the.e
19140 78 69 73 74 69 6e 67 20 66 69 6c 65 73 2e 20 28  xisting files. (
19150 4a 48 29 0a 0a 39 2f 36 2f 39 36 20 28 62 75 67  JH)..9/6/96 (bug
19160 20 66 69 78 29 20 49 66 20 73 74 61 6e 64 61 72   fix) If standar
19170 64 20 63 68 61 6e 6e 65 6c 20 69 73 20 4e 55 4c  d channel is NUL
19180 4c 2c 20 62 65 63 61 75 73 65 20 54 63 6c 20 63  L, because Tcl c
19190 61 6e 6e 6f 74 20 63 6f 6e 6e 65 63 74 0a 74 6f  annot connect.to
191a0 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 63 68   the standard ch
191b0 61 6e 6e 65 6c 2c 20 64 6f 20 6e 6f 74 20 69 6e  annel, do not in
191c0 63 72 65 6d 65 6e 74 20 74 68 65 20 72 65 66 63  crement the refc
191d0 6f 75 6e 74 2e 20 54 68 65 20 63 68 61 6e 6e 65  ount. The channe
191e0 6c 20 63 61 6e 0a 62 65 20 4e 55 4c 4c 20 69 66  l can.be NULL if
191f0 20 74 68 65 72 65 20 69 73 20 66 6f 72 20 65 78   there is for ex
19200 61 6d 70 6c 65 20 6e 6f 20 73 74 61 6e 64 61 72  ample no standar
19210 64 20 69 6e 70 75 74 2e 20 28 4a 4c 29 0a 0a 39  d input. (JL)..9
19220 2f 36 2f 39 36 20 28 70 6f 72 74 61 62 69 6c 69  /6/96 (portabili
19230 74 79 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20  ty improvement) 
19240 43 68 61 6e 67 65 64 20 70 61 72 73 69 6e 67 20  Changed parsing 
19250 6f 66 20 62 61 63 6b 73 6c 61 73 68 20 73 65 71  of backslash seq
19260 75 65 6e 63 65 73 0a 6c 69 6b 65 20 5c 6e 20 74  uences.like \n t
19270 6f 20 74 72 61 6e 73 6c 61 74 65 20 64 69 72 65  o translate dire
19280 63 74 6c 79 20 74 6f 20 61 62 73 6f 6c 75 74 65  ctly to absolute
19290 20 76 61 6c 75 65 73 20 6c 69 6b 65 20 30 78 61   values like 0xa
192a0 20 69 6e 73 74 65 61 64 20 6f 66 0a 6c 65 74 74   instead of.lett
192b0 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65 72  ing the compiler
192c0 20 64 6f 20 74 68 65 20 74 72 61 6e 73 6c 61 74   do the translat
192d0 69 6f 6e 2e 20 20 54 68 69 73 20 67 75 61 72 61  ion.  This guara
192e0 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 0a 74  ntees that the.t
192f0 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 20 64 6f  ranslation is do
19300 6e 65 20 74 68 65 20 73 61 6d 65 20 65 76 65 72  ne the same ever
19310 79 77 68 65 72 65 2e 20 28 4a 4f 29 0a 0a 39 2f  ywhere. (JO)..9/
19320 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 49  9/96 (bug fix) I
19330 66 20 63 68 61 6e 6e 65 6c 20 69 73 20 6f 70 65  f channel is ope
19340 6e 65 64 20 61 6e 64 20 6e 6f 74 20 61 73 73 6f  ned and not asso
19350 63 69 61 74 65 64 20 77 69 74 68 20 61 6e 79 0a  ciated with any.
19360 69 6e 74 65 72 70 72 65 74 65 72 2c 20 62 75 74  interpreter, but
19370 20 54 63 6c 20 64 65 63 69 64 65 73 20 74 6f 20   Tcl decides to 
19380 75 73 65 20 69 74 20 61 73 20 6f 6e 65 20 6f 66  use it as one of
19390 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 63 68   the standard ch
193a0 61 6e 6e 65 6c 73 2c 20 69 74 0a 62 65 63 61 6d  annels, it.becam
193b0 65 20 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20  e impossible to 
193c0 63 6c 6f 73 65 20 74 68 65 20 63 68 61 6e 6e 65  close the channe
193d0 6c 20 77 69 74 68 20 54 63 6c 5f 43 6c 6f 73 65  l with Tcl_Close
193e0 20 2d 2d 20 69 6e 73 74 65 61 64 20 79 6f 75 20   -- instead you 
193f0 68 61 64 0a 74 6f 20 63 61 6c 6c 20 54 63 6c 5f  had.to call Tcl_
19400 55 6e 72 65 67 69 73 74 65 72 43 68 61 6e 6e 65  UnregisterChanne
19410 6c 2e 20 46 69 78 65 64 20 6e 6f 77 20 73 6f 20  l. Fixed now so 
19420 74 68 61 74 20 69 74 27 73 20 73 61 66 65 20 74  that it's safe t
19430 6f 20 63 61 6c 6c 0a 54 63 6c 5f 43 6c 6f 73 65  o call.Tcl_Close
19440 20 65 76 65 6e 20 77 68 65 6e 20 54 63 6c 20 69   even when Tcl i
19450 73 20 75 73 69 6e 67 20 74 68 65 20 63 68 61 6e  s using the chan
19460 6e 65 6c 20 61 73 20 6f 6e 65 20 6f 66 20 74 68  nel as one of th
19470 65 20 73 74 61 6e 64 61 72 64 20 6f 6e 65 73 2e  e standard ones.
19480 20 28 4a 4c 29 0a 0a 39 2f 31 31 2f 39 36 20 28   (JL)..9/11/96 (
19490 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
194a0 54 68 65 20 54 63 6c 20 6c 69 62 72 61 72 79 20  The Tcl library 
194b0 69 73 20 6e 6f 77 20 70 6c 61 63 65 64 20 69 6e  is now placed in
194c0 20 74 68 65 20 54 63 6c 0a 73 68 61 72 65 64 20   the Tcl.shared 
194d0 6c 69 62 72 61 72 69 65 73 20 72 65 73 6f 75 72  libraries resour
194e0 63 65 2e 20 20 59 6f 75 20 6e 6f 20 6c 6f 6e 67  ce.  You no long
194f0 65 72 20 6e 65 65 64 20 74 6f 20 70 6c 61 63 65  er need to place
19500 20 74 68 65 20 54 63 6c 20 66 69 6c 65 73 0a 69   the Tcl files.i
19510 6e 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74 69  n your applicati
19520 6f 6e 73 20 65 78 70 6c 69 63 69 74 6c 79 2e 20  ons explicitly. 
19530 20 28 52 4a 29 0a 0a 39 2f 31 31 2f 39 36 20 28   (RJ)..9/11/96 (
19540 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
19550 45 78 74 65 6e 73 69 6f 6e 73 20 6e 6f 20 6c 6f  Extensions no lo
19560 6e 67 65 72 20 61 75 74 6f 6d 61 74 69 63 61 6c  nger automatical
19570 6c 79 20 68 61 76 65 20 74 68 65 0a 72 65 73 6f  ly have the.reso
19580 75 72 63 65 20 66 6f 72 6b 20 6f 66 20 74 68 65  urce fork of the
19590 20 65 78 74 65 6e 73 69 6f 6e 20 6f 70 65 6e 65   extension opene
195a0 64 20 66 6f 72 20 69 74 2e 20 20 49 6e 73 74 65  d for it.  Inste
195b0 61 64 20 79 6f 75 20 6e 65 65 64 20 74 6f 0a 75  ad you need to.u
195c0 73 65 20 74 68 65 20 74 63 6c 4d 61 63 4c 69 62  se the tclMacLib
195d0 72 61 72 79 2e 63 20 66 69 6c 65 20 69 6e 20 79  rary.c file in y
195e0 6f 75 72 20 65 78 74 65 6e 73 69 6f 6e 2e 20 20  our extension.  
195f0 28 52 4a 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  (RJ).*** POTENTI
19600 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
19610 54 59 20 2a 2a 2a 0a 0a 39 2f 31 32 2f 39 36 20  TY ***..9/12/96 
19620 28 62 75 67 20 66 69 78 29 20 54 68 65 20 65 78  (bug fix) The ex
19630 74 65 6e 73 69 6f 6e 20 6c 6f 61 64 69 6e 67 20  tension loading 
19640 6d 65 63 68 61 6e 69 73 6d 20 6f 6e 20 74 68 65  mechanism on the
19650 20 4d 61 63 69 6e 74 6f 73 68 20 6e 6f 77 0a 6c   Macintosh now.l
19660 6f 6f 6b 73 20 61 74 20 74 68 65 20 27 63 66 72  ooks at the 'cfr
19670 67 27 20 72 65 73 6f 75 72 63 65 20 74 6f 20 64  g' resource to d
19680 65 74 65 72 6d 69 6e 65 20 77 68 65 72 65 20 74  etermine where t
19690 6f 20 6c 6f 61 64 20 74 68 65 20 63 6f 64 65 0a  o load the code.
196a0 66 72 61 67 6d 65 6e 74 20 66 72 6f 6d 2e 20 20  fragment from.  
196b0 54 68 69 73 20 6d 65 61 6e 73 20 46 41 54 20 66  This means FAT f
196c0 72 61 67 6d 65 6e 74 73 20 73 68 6f 75 6c 64 20  ragments should 
196d0 6e 6f 77 20 77 6f 72 6b 2e 20 28 52 4a 29 0a 0a  now work. (RJ)..
196e0 39 2f 31 38 2f 39 36 20 28 65 6e 68 61 6e 63 65  9/18/96 (enhance
196f0 6d 65 6e 74 29 20 54 68 65 20 65 78 65 63 20 61  ment) The exec a
19700 6e 64 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 73  nd open commands
19710 20 62 65 68 61 76 65 20 62 65 74 74 65 72 20 61   behave better a
19720 6e 64 20 77 6f 72 6b 20 69 6e 0a 6d 6f 72 65 20  nd work in.more 
19730 73 69 74 75 61 74 69 6f 6e 73 20 75 6e 64 65 72  situations under
19740 20 57 69 6e 64 6f 77 73 20 33 2e 58 2e 20 20 44   Windows 3.X.  D
19750 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 64 65 73  ocumentation des
19760 63 72 69 62 65 73 20 77 68 61 74 20 69 73 20 73  cribes what is s
19770 74 69 6c 6c 0a 6c 61 63 6b 69 6e 67 2e 20 20 28  till.lacking.  (
19780 43 53 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75  CS)..9/19/96 (bu
19790 67 20 66 69 78 29 20 46 69 78 65 64 20 61 20 70  g fix) Fixed a p
197a0 61 6e 69 63 20 77 68 69 63 68 20 77 6f 75 6c 64  anic which would
197b0 20 6f 63 63 75 72 20 69 66 20 79 6f 75 20 64 65   occur if you de
197c0 6c 65 74 65 20 61 0a 6e 6f 6e 2d 65 78 69 73 74  lete a.non-exist
197d0 65 6e 74 20 61 6c 69 61 73 20 62 65 66 6f 72 65  ent alias before
197e0 20 61 6e 79 20 61 6c 69 61 73 65 73 20 61 72 65   any aliases are
197f0 20 63 72 65 61 74 65 64 2e 20 4e 6f 77 20 69 6e   created. Now in
19800 73 74 65 61 64 20 63 6f 72 72 65 63 74 6c 79 0a  stead correctly.
19810 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72  returns an error
19820 20 74 68 61 74 20 74 68 65 20 61 6c 69 61 73 20   that the alias 
19830 69 73 20 6e 6f 74 20 66 6f 75 6e 64 2e 20 28 4a  is not found. (J
19840 4c 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75 67  L)..9/19/96 (bug
19850 20 66 69 78 29 20 53 6c 61 76 65 20 69 6e 74 65   fix) Slave inte
19860 72 70 72 65 74 65 72 73 20 63 6f 75 6c 64 20 72  rpreters could r
19870 65 6e 61 6d 65 20 61 6c 69 61 73 65 73 20 61 6e  ename aliases an
19880 64 20 74 68 65 79 20 77 6f 75 6c 64 0a 6e 6f 74  d they would.not
19890 20 67 65 74 20 64 65 6c 65 74 65 64 20 77 68 65   get deleted whe
198a0 6e 20 74 68 65 20 61 6c 69 61 73 20 77 61 73 20  n the alias was 
198b0 62 65 69 6e 67 20 72 65 64 65 66 69 6e 65 64 2e  being redefined.
198c0 20 54 68 69 73 20 6c 65 64 20 74 6f 20 64 61 6e   This led to dan
198d0 67 6c 69 6e 67 0a 70 6f 69 6e 74 65 72 73 20 65  gling.pointers e
198e0 74 63 2e 20 28 4a 4c 29 0a 0a 39 2f 31 39 2f 39  tc. (JL)..9/19/9
198f0 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
19900 64 20 61 20 70 61 6e 69 63 20 77 68 65 72 65 20  d a panic where 
19910 61 20 68 61 73 68 20 74 61 62 6c 65 20 65 6e 74  a hash table ent
19920 72 79 20 77 61 73 20 62 65 69 6e 67 20 64 65 6c  ry was being del
19930 65 74 65 64 0a 74 77 69 63 65 20 64 75 72 69 6e  eted.twice durin
19940 67 20 61 6c 69 61 73 20 6d 61 6e 61 67 65 6d 65  g alias manageme
19950 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 2e 20 28  nt operations. (
19960 4a 4c 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75  JL)..9/19/96 (bu
19970 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
19980 20 69 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 20 74   in event loop t
19990 68 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65 20  hat could cause 
199a0 74 68 65 20 69 6e 70 75 74 20 66 6f 63 75 73 0a  the input focus.
199b0 69 6e 20 54 6b 20 74 6f 20 67 65 74 20 63 6f 6e  in Tk to get con
199c0 66 75 73 65 64 20 64 75 72 69 6e 67 20 6d 65 6e  fused during men
199d0 75 20 74 72 61 76 65 72 73 61 6c 2c 20 61 6d 6f  u traversal, amo
199e0 6e 67 20 6f 74 68 65 72 20 70 72 6f 62 6c 65 6d  ng other problem
199f0 73 2e 20 20 54 68 65 0a 70 72 6f 62 6c 65 6d 20  s.  The.problem 
19a00 77 61 73 20 72 65 6c 61 74 65 64 20 74 6f 20 68  was related to h
19a10 61 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20 22  andling of the "
19a20 6d 61 72 6b 65 72 22 20 77 68 65 6e 20 69 74 73  marker" when its
19a30 20 65 76 65 6e 74 20 77 61 73 0a 64 65 6c 65 74   event was.delet
19a40 65 64 2e 20 28 4a 4f 29 0a 0a 39 2f 32 36 2f 39  ed. (JO)..9/26/9
19a50 36 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64  6 (bug fix) Wind
19a60 6f 77 73 20 77 61 73 20 6c 6f 73 69 6e 67 20 45  ows was losing E
19a70 4f 46 20 6f 6e 20 61 20 73 6f 63 6b 65 74 20 69  OF on a socket i
19a80 66 20 74 68 65 20 46 44 5f 43 4c 4f 53 45 20 65  f the FD_CLOSE e
19a90 76 65 6e 74 0a 68 61 70 70 65 6e 65 64 20 74 6f  vent.happened to
19aa0 20 70 72 65 63 65 64 65 20 61 6e 79 20 6c 65 66   precede any lef
19ab0 74 20 6f 76 65 72 20 46 44 5f 52 45 41 44 20 65  t over FD_READ e
19ac0 76 65 6e 74 73 2e 20 4e 6f 77 20 63 6f 72 72 65  vents. Now corre
19ad0 63 74 6c 79 20 72 65 6d 65 6d 62 65 72 73 0a 73  ctly remembers.s
19ae0 65 65 69 6e 67 20 46 44 5f 43 4c 4f 53 45 2c 20  eeing FD_CLOSE, 
19af0 73 6f 20 74 68 61 74 20 74 72 61 69 6c 69 6e 67  so that trailing
19b00 20 46 44 5f 52 45 41 44 20 65 76 65 6e 74 73 20   FD_READ events 
19b10 61 72 65 20 6e 6f 74 20 64 69 73 63 61 72 64 65  are not discarde
19b20 64 20 69 66 20 74 68 65 79 0a 64 6f 20 6e 6f 74  d if they.do not
19b30 20 63 6f 6e 74 61 69 6e 20 61 6e 79 20 64 61 74   contain any dat
19b40 61 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20 54  a. This allows T
19b50 63 6c 20 74 6f 20 63 6f 72 72 65 63 74 6c 79 20  cl to correctly 
19b60 67 65 74 20 61 20 7a 65 72 6f 20 72 65 61 64 20  get a zero read 
19b70 61 6e 64 0a 6e 6f 74 69 63 65 20 45 4f 46 2e 20  and.notice EOF. 
19b80 28 4a 4c 29 0a 0a 39 2f 32 36 2f 39 36 20 28 62  (JL)..9/26/96 (b
19b90 75 67 20 66 69 78 29 20 57 61 73 20 6e 6f 74 20  ug fix) Was not 
19ba0 72 65 73 65 74 74 69 6e 67 20 52 45 41 44 41 42  resetting READAB
19bb0 4c 45 20 73 74 61 74 65 20 70 72 6f 70 65 72 6c  LE state properl
19bc0 79 20 6f 6e 20 73 6f 63 6b 65 74 73 0a 75 6e 64  y on sockets.und
19bd0 65 72 20 57 69 6e 64 6f 77 73 20 69 66 20 74 68  er Windows if th
19be0 65 20 64 72 69 76 65 72 20 64 69 73 63 61 72 64  e driver discard
19bf0 65 64 20 61 6e 20 46 44 5f 52 45 41 44 20 65 76  ed an FD_READ ev
19c00 65 6e 74 20 62 65 63 61 75 73 65 20 6e 6f 20 64  ent because no d
19c10 61 74 61 20 77 61 73 0a 70 72 65 73 65 6e 74 2e  ata was.present.
19c20 20 4e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 72   Now correctly r
19c30 65 73 65 74 73 20 74 68 65 20 73 74 61 74 65 2e  esets the state.
19c40 20 28 4a 4c 29 0a 0a 39 2f 33 30 2f 39 36 20 28   (JL)..9/30/96 (
19c50 62 75 67 20 66 69 78 29 20 4d 61 64 65 20 45 4f  bug fix) Made EO
19c60 46 20 73 74 69 63 6b 79 20 6f 6e 20 57 69 6e 64  F sticky on Wind
19c70 6f 77 73 20 73 6f 63 6b 65 74 73 2c 20 73 6f 20  ows sockets, so 
19c80 74 68 61 74 20 66 69 6c 65 65 76 65 6e 74 0a 72  that fileevent.r
19c90 65 61 64 61 62 6c 65 20 77 69 6c 6c 20 66 69 72  eadable will fir
19ca0 65 20 72 65 70 65 61 74 65 64 6c 79 20 75 6e 74  e repeatedly unt
19cb0 69 6c 20 74 68 65 20 73 6f 63 6b 65 74 20 69 73  il the socket is
19cc0 20 63 6c 6f 73 65 64 2e 20 50 72 65 76 69 6f 75   closed. Previou
19cd0 73 6c 79 20 74 68 65 0a 66 69 6c 65 65 76 65 6e  sly the.fileeven
19ce0 74 20 66 69 72 65 64 20 6f 6e 6c 79 20 6f 6e 63  t fired only onc
19cf0 65 2e 20 54 68 69 73 20 63 6f 75 6c 64 20 6c 65  e. This could le
19d00 61 64 20 74 6f 20 6e 65 76 65 72 2d 63 6c 6f 73  ad to never-clos
19d10 65 64 20 63 6f 6e 6e 65 63 74 69 6f 6e 73 20 69  ed connections i
19d20 66 0a 74 68 65 20 54 63 6c 20 73 63 72 69 70 74  f.the Tcl script
19d30 20 69 6e 20 74 68 65 20 66 69 6c 65 65 76 65 6e   in the fileeven
19d40 74 20 77 61 73 6e 27 74 20 63 6c 6f 73 69 6e 67  t wasn't closing
19d50 20 74 68 65 20 73 6f 63 6b 65 74 20 69 6d 6d 65   the socket imme
19d60 64 69 61 74 65 6c 79 2e 20 28 4a 4c 29 0a 0a 31  diately. (JL)..1
19d70 30 2f 32 2f 39 36 20 28 6e 65 77 20 66 65 61 74  0/2/96 (new feat
19d80 75 72 65 29 20 49 6d 70 72 6f 76 65 64 20 74 68  ure) Improved th
19d90 65 20 70 61 63 6b 61 67 65 20 6c 6f 61 64 65 72  e package loader
19da0 3a 0a 20 20 20 20 2d 20 41 64 64 65 64 20 6e 65  :.    - Added ne
19db0 77 20 76 61 72 69 61 62 6c 65 20 74 63 6c 5f 70  w variable tcl_p
19dc0 6b 67 50 61 74 68 2c 20 77 68 69 63 68 20 68 6f  kgPath, which ho
19dd0 6c 64 73 20 74 68 65 20 64 65 66 61 75 6c 74 0a  lds the default.
19de0 20 20 20 20 20 20 64 69 72 65 63 74 6f 72 69 65        directorie
19df0 73 20 75 6e 64 65 72 20 77 68 69 63 68 20 70 61  s under which pa
19e00 63 6b 61 67 65 73 20 61 72 65 20 6e 6f 72 6d 61  ckages are norma
19e10 6c 6c 79 20 69 6e 73 74 61 6c 6c 65 64 20 28 65  lly installed (e
19e20 61 63 68 0a 20 20 20 20 20 20 70 61 63 6b 61 67  ach.      packag
19e30 65 20 67 6f 65 73 20 69 6e 20 61 20 73 65 70 61  e goes in a sepa
19e40 72 61 74 65 20 73 75 62 64 69 72 65 63 74 6f 72  rate subdirector
19e50 79 20 6f 66 20 61 20 64 69 72 65 63 74 6f 72 79  y of a directory
19e60 20 69 6e 0a 20 20 20 20 20 20 24 74 63 6c 5f 70   in.      $tcl_p
19e70 6b 67 50 61 74 68 29 2e 20 20 54 68 65 73 65 20  kgPath).  These 
19e80 64 69 72 65 63 74 6f 72 69 65 73 20 61 72 65 20  directories are 
19e90 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 75 74 6f  included in auto
19ea0 5f 70 61 74 68 20 62 79 0a 20 20 20 20 20 20 64  _path by.      d
19eb0 65 66 61 75 6c 74 2e 0a 20 20 20 20 2d 20 43 68  efault..    - Ch
19ec0 61 6e 67 65 64 20 74 68 65 20 70 61 63 6b 61 67  anged the packag
19ed0 65 20 61 75 74 6f 2d 6c 6f 61 64 65 72 20 74 6f  e auto-loader to
19ee0 20 6c 6f 6f 6b 20 66 6f 72 20 70 6b 67 49 6e 64   look for pkgInd
19ef0 65 78 2e 74 63 6c 20 66 69 6c 65 73 20 0a 20 20  ex.tcl files .  
19f00 20 20 20 20 6e 6f 74 20 6f 6e 6c 79 20 69 6e 20      not only in 
19f10 74 68 65 20 61 75 74 6f 5f 70 61 74 68 20 64 69  the auto_path di
19f20 72 65 63 74 6f 72 69 65 73 20 62 75 74 20 61 6c  rectories but al
19f30 73 6f 20 69 6e 20 74 68 65 69 72 20 69 6d 6d 65  so in their imme
19f40 64 69 61 74 65 0a 20 20 20 20 20 20 63 68 69 6c  diate.      chil
19f50 64 72 65 6e 2e 20 20 54 68 69 73 20 73 68 6f 75  dren.  This shou
19f60 6c 64 20 6d 61 6b 65 20 69 74 20 65 61 73 69 65  ld make it easie
19f70 72 20 74 6f 20 69 6e 73 74 61 6c 6c 20 61 6e 64  r to install and
19f80 20 75 6e 69 6e 73 74 61 6c 6c 0a 20 20 20 20 20   uninstall.     
19f90 20 70 61 63 6b 61 67 65 73 20 28 64 6f 6e 27 74   packages (don't
19fa0 20 68 61 76 65 20 74 6f 20 63 68 61 6e 67 65 20   have to change 
19fb0 61 75 74 6f 5f 70 61 74 68 20 6f 72 20 6d 65 72  auto_path or mer
19fc0 67 65 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c 0a  ge pkgIndex.tcl.
19fd0 20 20 20 20 20 20 66 69 6c 65 73 29 2e 20 28 4a        files). (J
19fe0 4f 29 0a 0a 31 30 2f 33 2f 39 36 20 28 62 75 67  O)..10/3/96 (bug
19ff0 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 74 63   fix) Changed tc
1a000 6c 73 68 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72 20  lsh to look for 
1a010 74 63 6c 73 68 72 63 2e 74 63 6c 20 69 6e 73 74  tclshrc.tcl inst
1a020 65 61 64 20 6f 66 0a 74 63 6c 73 68 2e 72 63 20  ead of.tclsh.rc 
1a030 6f 6e 20 73 74 61 72 74 75 70 20 75 6e 64 65 72  on startup under
1a040 20 57 69 6e 64 6f 77 73 2e 20 20 54 68 69 73 20   Windows.  This 
1a050 69 73 20 6d 6f 72 65 20 63 6f 6e 73 69 73 74 65  is more consiste
1a060 6e 74 20 77 69 74 68 20 77 69 73 68 20 61 6e 64  nt with wish and
1a070 0a 75 73 65 73 20 74 68 65 20 72 69 67 68 74 20  .uses the right 
1a080 65 78 74 65 6e 73 69 6f 6e 2e 20 28 53 53 29 0a  extension. (SS).
1a090 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
1a0a0 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
1a0b0 2a 0a 0a 31 30 2f 38 2f 39 36 20 28 62 75 67 20  *..10/8/96 (bug 
1a0c0 66 69 78 29 20 43 6f 6e 76 65 72 74 63 6c 6f 63  fix) Convertcloc
1a0d0 6b 20 64 6f 65 73 20 6e 6f 74 20 70 61 72 73 65  k does not parse
1a0e0 20 32 34 2d 68 6f 75 72 20 74 69 6d 65 73 20 6f   24-hour times o
1a0f0 66 20 74 68 65 0a 66 6f 72 6d 20 22 68 68 6d 6d  f the.form "hhmm
1a100 22 20 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e  " correctly when
1a110 20 68 6f 75 72 20 3d 20 30 30 2e 20 20 49 6e 20   hour = 00.  In 
1a120 74 68 65 20 70 61 72 73 65 20 63 6f 64 65 2c 20  the parse code, 
1a130 68 6f 75 72 20 6d 75 73 74 20 62 65 0a 3e 3d 20  hour must be.>= 
1a140 31 30 30 20 66 6f 72 20 6d 69 6e 75 74 65 73 20  100 for minutes 
1a150 74 6f 20 62 65 20 6e 6f 6e 2d 7a 65 72 6f 2e 20  to be non-zero. 
1a160 20 54 68 61 6e 6b 73 20 74 6f 20 4c 69 6e 74 20   Thanks to Lint 
1a170 4c 61 43 6f 75 72 20 66 6f 72 20 74 68 69 73 0a  LaCour for this.
1a180 62 75 67 20 66 69 78 2e 20 28 52 4a 29 0a 0a 31  bug fix. (RJ)..1
1a190 30 2f 31 31 2f 39 36 20 28 62 75 67 20 66 69 78  0/11/96 (bug fix
1a1a0 29 20 55 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c  ) Under Windows,
1a1b0 20 74 68 65 20 70 69 64 20 63 6f 6d 6d 61 6e 64   the pid command
1a1c0 20 72 65 74 75 72 6e 65 64 20 74 68 65 20 70 72   returned the pr
1a1d0 6f 63 65 73 73 0a 68 61 6e 64 6c 65 20 69 6e 73  ocess.handle ins
1a1e0 74 65 61 64 20 6f 66 20 74 68 65 20 70 72 6f 63  tead of the proc
1a1f0 65 73 73 20 69 64 2e 20 28 53 53 29 0a 0a 2d 2d  ess id. (SS)..--
1a200 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
1a210 52 65 6c 65 61 73 65 64 20 37 2e 36 2c 20 31 30  Released 7.6, 10
1a220 2f 31 36 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /16/96 ---------
1a230 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
1a240 31 30 2f 32 39 2f 39 36 20 28 62 75 67 20 66 69  10/29/96 (bug fi
1a250 78 29 20 55 6e 64 65 72 20 57 69 6e 64 6f 77 73  x) Under Windows
1a260 2c 20 73 6f 63 6b 65 74 73 20 77 6f 75 6c 64 20  , sockets would 
1a270 63 6f 6e 73 75 6d 65 20 31 30 30 25 20 43 50 55  consume 100% CPU
1a280 20 74 69 6d 65 20 61 66 74 65 72 0a 74 68 65 20   time after.the 
1a290 66 69 72 73 74 20 61 63 63 65 70 74 28 29 2c 20  first accept(), 
1a2a0 64 75 65 20 74 6f 20 61 20 74 79 70 6f 2e 20 28  due to a typo. (
1a2b0 4a 4c 29 0a 0a 31 30 2f 32 39 2f 39 36 20 28 62  JL)..10/29/96 (b
1a2c0 75 67 20 66 69 78 29 20 49 6e 63 6f 72 72 65 63  ug fix) Incorrec
1a2d0 74 20 72 65 66 63 6f 75 6e 74 20 6d 61 6e 61 67  t refcount manag
1a2e0 65 6d 65 6e 74 20 63 61 75 73 65 64 20 73 74 61  ement caused sta
1a2f0 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 73 0a 6e  ndard channels.n
1a300 6f 74 20 74 6f 20 67 65 74 20 64 65 6c 65 74 65  ot to get delete
1a310 64 20 61 74 20 70 72 6f 63 65 73 73 20 65 78 69  d at process exi
1a320 74 20 6f 72 20 44 4c 4c 20 75 6e 6c 6f 61 64 20  t or DLL unload 
1a330 74 69 6d 65 2c 20 63 61 75 73 69 6e 67 20 61 20  time, causing a 
1a340 6d 65 6d 6f 72 79 0a 6c 65 61 6b 20 6f 66 20 75  memory.leak of u
1a350 70 77 61 72 64 73 20 6f 66 20 32 30 4b 20 65 61  pwards of 20K ea
1a360 63 68 20 74 69 6d 65 2e 20 28 4a 4c 29 0a 0a 31  ch time. (JL)..1
1a370 31 2f 37 2f 39 36 20 28 62 75 67 20 66 69 78 29  1/7/96 (bug fix)
1a380 20 41 75 74 6f 2d 65 78 65 63 20 64 69 64 6e 27   Auto-exec didn'
1a390 74 20 77 6f 72 6b 20 6f 6e 20 66 69 6c 65 20 6e  t work on file n
1a3a0 61 6d 65 73 20 74 68 61 74 20 63 6f 6e 74 61 69  ames that contai
1a3b0 6e 65 64 0a 73 70 61 63 65 73 2e 20 28 4a 4f 29  ned.spaces. (JO)
1a3c0 0a 0a 31 31 2f 38 2f 39 36 20 28 62 75 67 20 66  ..11/8/96 (bug f
1a3d0 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64  ix) Fixed core d
1a3e0 75 6d 70 20 74 68 61 74 20 77 6f 75 6c 64 20 6f  ump that would o
1a3f0 63 63 75 72 20 69 66 20 6d 6f 72 65 20 74 68 61  ccur if more tha
1a400 6e 20 6f 6e 65 20 63 61 6c 6c 0a 74 6f 20 54 63  n one call.to Tc
1a410 6c 5f 44 65 6c 65 74 65 43 68 61 6e 6e 65 6c 48  l_DeleteChannelH
1a420 61 6e 64 6c 65 72 20 77 61 73 20 6d 61 64 65 20  andler was made 
1a430 74 6f 20 64 65 6c 65 74 65 20 61 20 67 69 76 65  to delete a give
1a440 6e 20 63 68 61 6e 6e 65 6c 20 68 61 6e 64 6c 65  n channel handle
1a450 72 2e 20 28 4a 4c 29 0a 0a 31 31 2f 38 2f 39 36  r. (JL)..11/8/96
1a460 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1a470 20 74 65 73 74 20 66 6f 72 20 72 65 74 75 72 6e   test for return
1a480 20 76 61 6c 75 65 20 69 6e 20 54 63 6c 5f 53 65   value in Tcl_Se
1a490 65 6b 20 61 6e 64 20 54 63 6c 5f 53 65 65 6b 43  ek and Tcl_SeekC
1a4a0 6d 64 0a 74 6f 20 6f 6e 6c 79 20 74 72 65 61 74  md.to only treat
1a4b0 20 2d 31 20 61 73 20 65 72 72 6f 72 2c 20 69 6e   -1 as error, in
1a4c0 73 74 65 61 64 20 6f 66 20 61 6c 6c 20 6e 65 67  stead of all neg
1a4d0 61 74 69 76 65 20 6e 75 6d 62 65 72 73 2e 20 28  ative numbers. (
1a4e0 4a 4c 29 0a 0a 31 31 2f 31 32 2f 39 36 20 28 62  JL)..11/12/96 (b
1a4f0 75 67 20 66 69 78 29 20 44 6f 20 6e 6f 74 20 62  ug fix) Do not b
1a500 6c 6f 63 6b 69 6e 67 20 77 61 69 74 69 6e 67 20  locking waiting 
1a510 66 6f 72 20 70 72 6f 63 65 73 73 65 73 20 61 74  for processes at
1a520 20 74 68 65 20 65 6e 64 20 6f 66 20 61 0a 70 69   the end of a.pi
1a530 70 65 20 64 75 72 69 6e 67 20 65 78 69 74 20 63  pe during exit c
1a540 6c 65 61 6e 75 70 2e 20 28 4a 4c 29 0a 0a 31 31  leanup. (JL)..11
1a550 2f 31 32 2f 39 36 20 28 62 75 67 20 66 69 78 29  /12/96 (bug fix)
1a560 20 49 66 20 77 65 20 61 72 65 20 69 6e 20 65 78   If we are in ex
1a570 69 74 20 63 6c 65 61 6e 75 70 2c 20 64 6f 20 6e  it cleanup, do n
1a580 6f 74 20 63 6c 6f 73 65 20 74 68 65 20 73 79 73  ot close the sys
1a590 74 65 6d 20 6c 65 76 65 6c 0a 66 69 6c 65 20 64  tem level.file d
1a5a0 65 73 63 72 69 70 74 6f 72 73 20 30 2c 20 31 20  escriptors 0, 1 
1a5b0 61 6e 64 20 32 2e 20 50 72 65 76 69 6f 75 73 6c  and 2. Previousl
1a5c0 79 20 74 68 65 79 20 77 65 72 65 20 62 65 69 6e  y they were bein
1a5d0 67 20 63 6c 6f 73 65 64 20 77 68 69 63 68 20 69  g closed which i
1a5e0 73 0a 69 6e 63 6f 72 72 65 63 74 2c 20 69 6e 20  s.incorrect, in 
1a5f0 74 68 65 20 65 6d 62 65 64 64 65 64 20 63 61 73  the embedded cas
1a600 65 2e 20 54 68 69 73 20 6c 65 64 20 74 6f 20 77  e. This led to w
1a610 65 69 72 64 20 62 65 68 61 76 69 6f 72 20 66 6f  eird behavior fo
1a620 72 20 70 72 6f 67 72 61 6d 73 0a 74 68 61 74 20  r programs.that 
1a630 77 61 6e 74 20 74 6f 20 69 6e 74 65 72 70 6f 73  want to interpos
1a640 65 20 6f 6e 20 49 2f 4f 20 74 68 72 6f 75 67 68  e on I/O through
1a650 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 66 69   the standard fi
1a660 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73 20 28  le descriptors (
1a670 65 2e 67 2e 0a 4e 65 74 73 63 61 70 65 20 4e 61  e.g..Netscape Na
1a680 76 69 67 61 74 6f 72 29 2e 20 28 4a 4c 29 0a 0a  vigator). (JL)..
1a690 31 31 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69  11/15/96 (bug fi
1a6a0 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64 75  x) Fixed core du
1a6b0 6d 70 20 6f 6e 20 57 69 6e 64 6f 77 73 20 73 6f  mp on Windows so
1a6c0 63 6b 65 74 73 20 64 75 65 20 74 6f 20 64 65 70  ckets due to dep
1a6d0 65 6e 64 65 6e 63 79 20 6f 6e 0a 64 65 6c 65 74  endency on.delet
1a6e0 69 6f 6e 20 6f 72 64 65 72 20 61 74 20 65 78 69  ion order at exi
1a6f0 74 2e 20 4e 6f 77 20 61 6c 6c 20 73 6f 63 6b 65  t. Now all socke
1a700 74 20 66 75 6e 63 74 69 6f 6e 73 20 63 68 65 63  t functions chec
1a710 6b 20 74 6f 20 73 65 65 20 69 66 20 73 6f 63 6b  k to see if sock
1a720 65 74 73 0a 61 72 65 20 28 73 74 69 6c 6c 29 20  ets.are (still) 
1a730 69 6e 69 74 69 61 6c 69 7a 65 64 2c 20 62 65 66  initialized, bef
1a740 6f 72 65 20 63 61 6c 6c 69 6e 67 20 74 68 72 6f  ore calling thro
1a750 75 67 68 20 66 75 6e 63 74 69 6f 6e 20 70 6f 69  ugh function poi
1a760 6e 74 65 72 73 2e 20 42 65 66 6f 72 65 2c 0a 74  nters. Before,.t
1a770 68 65 79 20 77 6f 75 6c 64 20 63 61 6c 6c 20 61  hey would call a
1a780 6e 64 20 6d 69 67 68 74 20 65 6e 64 20 75 70 20  nd might end up 
1a790 63 61 6c 6c 69 6e 67 20 75 6e 6c 6f 61 64 65 64  calling unloaded
1a7a0 20 6f 62 6a 65 63 74 20 63 6f 64 65 2e 20 28 4a   object code. (J
1a7b0 4c 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 62 75  L)..11/15/96 (bu
1a7c0 67 20 66 69 78 29 20 46 69 78 65 64 20 63 6f 72  g fix) Fixed cor
1a7d0 65 20 64 75 6d 70 20 69 6e 20 57 69 6e 64 6f 77  e dump in Window
1a7e0 73 20 73 6f 63 6b 65 74 20 69 6e 69 74 69 61 6c  s socket initial
1a7f0 69 7a 61 74 69 6f 6e 20 72 6f 75 74 69 6e 65 0a  ization routine.
1a800 69 66 20 73 6f 63 6b 65 74 73 20 77 65 72 65 20  if sockets were 
1a810 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 20 6f 6e  not installed on
1a820 20 74 68 65 20 73 79 73 74 65 6d 2e 20 42 65 66   the system. Bef
1a830 6f 72 65 2c 20 69 74 20 77 61 73 20 6e 6f 74 20  ore, it was not 
1a840 70 72 6f 70 65 72 6c 79 0a 63 68 65 63 6b 69 6e  properly.checkin
1a850 67 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66 20  g the result of 
1a860 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 6c 6f  attempting to lo
1a870 61 64 20 74 68 65 20 73 6f 63 6b 65 74 20 44 4c  ad the socket DL
1a880 4c 2c 20 73 6f 20 69 74 20 77 6f 75 6c 64 20 63  L, so it would c
1a890 61 6c 6c 0a 74 68 72 6f 75 67 68 20 75 6e 69 6e  all.through unin
1a8a0 69 74 69 61 6c 69 7a 65 64 20 66 75 6e 63 74 69  itialized functi
1a8b0 6f 6e 20 70 6f 69 6e 74 65 72 73 2e 20 28 4a 4c  on pointers. (JL
1a8c0 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 62 75 67  )..11/15/96 (bug
1a8d0 20 66 69 78 29 20 46 69 78 65 64 20 6d 65 6d 6f   fix) Fixed memo
1a8e0 72 79 20 6c 65 61 6b 20 69 6e 20 57 69 6e 64 6f  ry leak in Windo
1a8f0 77 73 20 73 6f 63 6b 65 74 73 20 77 68 69 63 68  ws sockets which
1a900 20 6c 65 66 74 20 73 6f 63 6b 65 74 0a 44 4c 4c   left socket.DLL
1a910 20 68 61 6e 64 6c 65 20 6f 70 65 6e 20 61 6e 64   handle open and
1a920 20 63 6f 75 6c 64 20 68 6f 6c 64 20 74 68 65 20   could hold the 
1a930 73 6f 63 6b 65 74 20 44 4c 4c 20 69 6e 20 6d 65  socket DLL in me
1a940 6d 6f 72 79 20 75 6e 65 63 63 65 73 73 61 72 69  mory uneccessari
1a950 6c 79 2c 0a 75 6e 74 69 6c 20 61 20 72 65 62 6f  ly,.until a rebo
1a960 6f 74 2e 20 28 4a 4c 29 0a 0a 31 32 2f 34 2f 39  ot. (JL)..12/4/9
1a970 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
1a980 64 20 62 75 67 20 69 6e 20 4d 61 63 69 6e 74 6f  d bug in Macinto
1a990 73 68 20 73 6f 63 6b 65 74 20 63 6f 64 65 20 74  sh socket code t
1a9a0 68 61 74 20 63 6f 75 6c 64 20 72 65 73 75 6c 74  hat could result
1a9b0 0a 69 6e 20 6c 6f 73 74 20 64 61 74 61 20 69 66  .in lost data if
1a9c0 20 61 20 63 6c 69 65 6e 74 20 77 61 73 20 63 6c   a client was cl
1a9d0 6f 73 65 64 20 74 6f 6f 20 73 6f 6f 6e 20 61 66  osed too soon af
1a9e0 74 65 72 20 73 65 6e 64 69 6e 67 20 64 61 74 61  ter sending data
1a9f0 2e 20 28 52 4a 29 0a 0a 31 32 2f 31 37 2f 39 36  . (RJ)..12/17/96
1aa00 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1aa10 20 64 65 61 64 6c 6f 63 6b 20 62 75 67 20 69 6e   deadlock bug in
1aa20 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73   Windows sockets
1aa30 20 64 75 65 20 74 6f 20 6c 6f 73 69 6e 67 20 61   due to losing a
1aa40 6e 0a 65 76 65 6e 74 2e 20 54 68 69 73 20 77 61  n.event. This wa
1aa50 73 20 68 61 70 70 65 6e 69 6e 67 20 62 65 63 61  s happening beca
1aa60 75 73 65 20 6f 66 20 61 6e 20 69 6e 74 65 72 61  use of an intera
1aa70 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 62 75  ction between bu
1aa80 66 66 65 72 69 6e 67 20 61 6e 64 0a 6e 6f 6e 62  ffering and.nonb
1aa90 6c 6f 63 6b 69 6e 67 20 6d 6f 64 65 20 6f 6e 20  locking mode on 
1aaa0 73 6f 63 6b 65 74 73 2e 20 4e 6f 77 20 73 77 69  sockets. Now swi
1aab0 74 63 68 65 64 20 74 6f 20 73 6f 63 6b 65 74 73  tched to sockets
1aac0 20 62 65 69 6e 67 20 62 6c 6f 63 6b 69 6e 67 20   being blocking 
1aad0 62 79 0a 64 65 66 61 75 6c 74 2c 20 73 6f 20 77  by.default, so w
1aae0 65 20 61 72 65 20 61 6c 73 6f 20 6e 6f 20 6c 6f  e are also no lo
1aaf0 6e 67 65 72 20 65 6d 75 6c 61 74 69 6e 67 20 62  nger emulating b
1ab00 6c 6f 63 6b 69 6e 67 20 74 68 72 6f 75 67 68 20  locking through 
1ab10 61 20 70 72 69 76 61 74 65 0a 65 76 65 6e 74 20  a private.event 
1ab20 6c 6f 6f 70 2e 20 28 4a 4c 29 0a 0a 31 2f 32 31  loop. (JL)..1/21
1ab30 2f 39 37 20 28 70 65 72 66 6f 72 6d 61 6e 63 65  /97 (performance
1ab40 20 62 75 67 20 66 69 78 29 20 43 6c 69 65 6e 74   bug fix) Client
1ab50 20 54 43 50 20 63 6f 6e 6e 65 63 74 69 6f 6e 73   TCP connections
1ab60 20 77 65 72 65 20 73 6c 6f 77 20 74 6f 20 63 72   were slow to cr
1ab70 65 61 74 65 0a 62 65 63 61 75 73 65 20 67 65 74  eate.because get
1ab80 73 65 72 76 62 79 6e 61 6d 65 20 77 61 73 20 61  servbyname was a
1ab90 6c 77 61 79 73 20 63 61 6c 6c 65 64 20 6f 6e 20  lways called on 
1aba0 74 68 65 20 70 6f 72 74 2e 20 20 4e 6f 77 20 74  the port.  Now t
1abb0 68 69 73 20 69 73 20 6f 6e 6c 79 0a 64 6f 6e 65  his is only.done
1abc0 20 69 66 20 54 63 6c 5f 47 65 74 49 6e 74 20 66   if Tcl_GetInt f
1abd0 61 69 6c 73 2e 20 28 42 57 29 0a 0a 31 2f 32 31  ails. (BW)..1/21
1abe0 2f 39 37 20 28 63 6f 6e 66 69 67 75 72 61 74 69  /97 (configurati
1abf0 6f 6e 20 66 69 78 29 20 4d 61 64 65 20 69 74 20  on fix) Made it 
1ac00 70 6f 73 73 69 62 6c 65 20 74 6f 20 6f 76 65 72  possible to over
1ac10 72 69 64 65 20 54 43 4c 5f 50 41 43 4b 41 47 45  ride TCL_PACKAGE
1ac20 5f 50 41 54 48 0a 64 75 72 69 6e 67 20 6d 61 6b  _PATH.during mak
1ac30 65 2e 20 20 50 72 65 76 69 6f 75 73 6c 79 20 69  e.  Previously i
1ac40 74 20 77 61 73 20 6f 6e 6c 79 20 73 65 74 20 64  t was only set d
1ac50 75 72 69 6e 67 20 61 75 74 6f 63 6f 6e 66 20 70  uring autoconf p
1ac60 72 6f 63 65 73 73 2e 0a 0a 31 2f 32 39 2f 39 37  rocess...1/29/97
1ac70 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1ac80 20 73 6f 6d 65 20 70 72 6f 62 6c 65 6d 73 20 77   some problems w
1ac90 69 74 68 20 74 68 65 20 63 6c 6f 63 6b 20 63 6f  ith the clock co
1aca0 6d 6d 61 6e 64 20 74 68 61 74 0a 69 6d 70 61 63  mmand that.impac
1acb0 74 65 64 20 68 6f 77 20 64 61 74 65 73 20 77 65  ted how dates we
1acc0 72 65 20 73 63 61 6e 65 64 20 61 66 74 65 72 20  re scaned after 
1acd0 74 68 65 20 79 65 61 72 20 32 30 30 30 2e 20 28  the year 2000. (
1ace0 52 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  RJ)..-----------
1acf0 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
1ad00 37 2e 36 70 32 2c 20 31 2f 33 31 2f 39 37 20 2d  7.6p2, 1/31/97 -
1ad10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ad20 2d 2d 2d 2d 2d 2d 0a 0a 32 2f 35 2f 39 37 20 28  ------..2/5/97 (
1ad30 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61  bug fix) Fixed a
1ad40 20 62 75 67 20 77 68 65 72 65 20 69 6e 20 43 52   bug where in CR
1ad50 2d 4c 46 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20  -LF translation 
1ad60 6d 6f 64 65 2c 20 5c 72 20 62 79 74 65 73 0a 69  mode, \r bytes.i
1ad70 6e 20 74 68 65 20 69 6e 70 75 74 20 73 74 72 65  n the input stre
1ad80 61 6d 20 77 65 72 65 20 6e 6f 74 20 62 65 69 6e  am were not bein
1ad90 67 20 68 61 6e 64 6c 65 64 20 63 6f 72 72 65 63  g handled correc
1ada0 74 6c 79 2e 20 28 4a 4c 29 0a 0a 32 2f 32 34 2f  tly. (JL)..2/24/
1adb0 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
1adc0 20 62 75 67 20 77 69 74 68 20 65 78 65 63 20 75   bug with exec u
1add0 6e 64 65 72 20 57 69 6e 33 32 73 20 6e 6f 74 20  nder Win32s not 
1ade0 62 65 69 6e 67 20 61 62 6c 65 20 74 6f 20 63 72  being able to cr
1adf0 65 61 74 65 0a 73 74 64 65 72 72 20 66 69 6c 65  eate.stderr file
1ae00 20 77 68 69 63 68 20 63 61 75 73 65 64 20 61 6c   which caused al
1ae10 6c 20 65 78 65 63 73 20 74 6f 20 66 61 69 6c 2e  l execs to fail.
1ae20 20 20 46 69 78 65 64 20 74 65 6d 70 20 66 69 6c    Fixed temp fil
1ae30 65 20 6c 65 61 6b 20 75 6e 64 65 72 0a 57 69 6e  e leak under.Win
1ae40 33 32 73 2e 20 20 46 69 78 65 64 20 6f 70 74 69  32s.  Fixed opti
1ae50 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 20 62  onal parameter b
1ae60 75 67 20 77 69 74 68 20 53 65 61 72 63 68 50 61  ug with SearchPa
1ae70 74 68 20 74 68 61 74 20 6f 6e 6c 79 20 68 61 70  th that only hap
1ae80 70 65 6e 65 64 0a 75 6e 64 65 72 20 57 69 6e 33  pened.under Win3
1ae90 32 73 20 31 2e 32 35 2e 20 28 43 43 53 29 0a 0a  2s 1.25. (CCS)..
1aea0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aeb0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aec0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aed0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 43 68 61 6e 67  ----------.Chang
1aee0 65 73 20 66 6f 72 20 54 63 6c 20 37 2e 36 20 67  es for Tcl 7.6 g
1aef0 6f 20 61 62 6f 76 65 20 74 68 69 73 20 6c 69 6e  o above this lin
1af00 65 2e 0a 43 68 61 6e 67 65 73 20 66 6f 72 20 54  e..Changes for T
1af10 63 6c 20 37 2e 37 20 67 6f 20 62 65 6c 6f 77 20  cl 7.7 go below 
1af20 74 68 69 73 20 6c 69 6e 65 2e 0a 2d 2d 2d 2d 2d  this line..-----
1af30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af50 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af60 2d 2d 2d 2d 2d 0a 0a 35 2f 38 2f 39 36 20 28 6e  -----..5/8/96 (n
1af70 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
1af80 64 20 54 63 6c 5f 55 6e 67 65 74 73 20 43 20 41  d Tcl_Ungets C A
1af90 50 49 20 66 6f 72 20 70 75 74 74 69 6e 67 20 61  PI for putting a
1afa0 20 73 65 71 75 65 6e 63 65 20 6f 66 20 62 79 74   sequence of byt
1afb0 65 73 0a 69 6e 74 6f 20 61 20 63 68 61 6e 6e 65  es.into a channe
1afc0 6c 27 73 20 69 6e 70 75 74 20 62 75 66 66 65 72  l's input buffer
1afd0 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73  . This can be us
1afe0 65 64 20 66 6f 72 20 22 70 75 73 68 22 20 6d 6f  ed for "push" mo
1aff0 64 65 6c 20 63 68 61 6e 6e 65 6c 73 0a 77 68 65  del channels.whe
1b000 72 65 20 74 68 65 20 69 6e 70 75 74 20 69 73 20  re the input is 
1b010 6f 62 74 61 69 6e 65 64 20 76 69 61 20 63 61 6c  obtained via cal
1b020 6c 62 61 63 6b 73 20 69 6e 73 74 65 61 64 20 6f  lbacks instead o
1b030 66 20 62 79 20 72 65 71 75 65 73 74 20 6f 66 20  f by request of 
1b040 74 68 65 0a 67 65 6e 65 72 69 63 20 49 4f 20 63  the.generic IO c
1b050 6f 64 65 2e 20 4e 6f 20 54 63 6c 20 70 72 6f 63  ode. No Tcl proc
1b060 65 64 75 72 65 20 79 65 74 2e 20 28 4a 4c 29 0a  edure yet. (JL).
1b070 0a 31 31 2f 31 35 2f 39 36 20 28 6e 65 77 20 66  .11/15/96 (new f
1b080 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e  eature) Implemen
1b090 74 65 64 20 68 69 64 64 65 6e 20 63 6f 6d 6d 61  ted hidden comma
1b0a0 6e 64 73 2e 20 4e 65 77 20 43 20 41 50 49 73 3a  nds. New C APIs:
1b0b0 0a 09 54 63 6c 5f 48 69 64 65 43 6f 6d 6d 61 6e  ..Tcl_HideComman
1b0c0 64 09 09 2d 2d 20 68 69 64 65 73 20 61 6e 20 65  d..-- hides an e
1b0d0 78 69 73 74 69 6e 67 20 65 78 70 6f 73 65 64 20  xisting exposed 
1b0e0 63 6f 6d 6d 61 6e 64 2e 0a 09 54 63 6c 5f 45 78  command...Tcl_Ex
1b0f0 70 6f 73 65 43 6f 6d 6d 61 6e 64 09 2d 2d 20 65  poseCommand.-- e
1b100 78 70 6f 73 65 73 20 61 6e 20 65 78 69 73 74 69  xposes an existi
1b110 6e 67 20 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e  ng hidden comman
1b120 64 2e 0a 4e 65 77 20 74 63 6c 20 41 50 49 73 3a  d..New tcl APIs:
1b130 0a 09 69 6e 74 65 72 70 20 69 6e 76 6f 6b 65 68  ..interp invokeh
1b140 69 64 64 65 6e 09 2d 2d 20 69 6e 76 6f 6b 65 73  idden.-- invokes
1b150 20 61 20 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e   a hidden comman
1b160 64 20 69 6e 20 61 20 73 6c 61 76 65 2e 0a 09 69  d in a slave...i
1b170 6e 74 65 72 70 20 68 69 64 65 09 09 2d 2d 20 68  nterp hide..-- h
1b180 69 64 65 73 20 61 6e 20 65 78 69 73 74 69 6e 67  ides an existing
1b190 20 65 78 70 6f 73 65 64 20 63 6f 6d 6d 61 6e 64   exposed command
1b1a0 2e 0a 09 69 6e 74 65 72 70 20 65 78 70 6f 73 65  ...interp expose
1b1b0 09 09 2d 2d 20 65 78 70 6f 73 65 73 20 61 6e 20  ..-- exposes an 
1b1c0 65 78 69 73 74 69 6e 67 20 68 69 64 64 65 6e 20  existing hidden 
1b1d0 63 6f 6d 6d 61 6e 64 2e 0a 09 69 6e 74 65 72 70  command...interp
1b1e0 20 68 69 64 64 65 6e 09 09 2d 2d 20 72 65 74 75   hidden..-- retu
1b1f0 72 6e 73 20 61 20 6c 69 73 74 20 6f 66 20 68 69  rns a list of hi
1b200 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 73 2e 0a 54  dden commands..T
1b210 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  he implementatio
1b220 6e 20 6f 66 20 53 61 66 65 20 54 63 6c 20 6e 6f  n of Safe Tcl no
1b230 77 20 75 73 65 73 20 74 68 65 20 6e 65 77 20 68  w uses the new h
1b240 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 73 20 66  idden commands f
1b250 61 63 69 6c 69 74 79 0a 74 6f 20 69 6d 70 6c 65  acility.to imple
1b260 6d 65 6e 74 20 74 68 65 20 73 61 66 65 20 62 61  ment the safe ba
1b270 73 65 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 64  se, instead of d
1b280 65 6c 65 74 69 6e 67 20 74 68 65 20 63 6f 6d 6d  eleting the comm
1b290 61 6e 64 73 20 66 72 6f 6d 20 61 20 73 61 66 65  ands from a safe
1b2a0 0a 69 6e 74 65 72 70 72 65 74 65 72 2e 20 28 4a  .interpreter. (J
1b2b0 4c 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 6e 65  L)..11/15/96 (ne
1b2c0 77 20 66 65 61 74 75 72 65 29 20 49 6d 70 6c 65  w feature) Imple
1b2d0 6d 65 6e 74 65 64 20 74 68 65 20 73 61 66 65 20  mented the safe 
1b2e0 62 61 73 65 2c 20 61 20 6d 65 63 68 61 6e 69 73  base, a mechanis
1b2f0 6d 20 66 6f 72 0a 69 6e 73 74 61 6c 6c 69 6e 67  m for.installing
1b300 20 61 6e 64 20 72 65 71 75 65 73 74 69 6e 67 20   and requesting 
1b310 73 65 63 75 72 69 74 79 20 70 6f 6c 69 63 69 65  security policie
1b320 73 2c 20 70 75 72 65 6c 79 20 69 6e 20 54 63 6c  s, purely in Tcl
1b330 20 63 6f 64 65 2e 20 4f 76 65 72 6c 6f 61 64 73   code. Overloads
1b340 0a 74 68 65 20 70 61 63 6b 61 67 65 20 63 6f 6d  .the package com
1b350 6d 61 6e 64 20 74 6f 20 61 6c 73 6f 20 61 6c 6c  mand to also all
1b360 6f 77 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65  ow an interprete
1b370 72 20 74 6f 20 22 72 65 71 75 69 72 65 22 20 61  r to "require" a
1b380 20 70 6f 6c 69 63 79 2e 20 54 68 65 0a 66 6f 6c   policy. The.fol
1b390 6c 6f 77 69 6e 67 20 6e 65 77 20 6c 69 62 72 61  lowing new libra
1b3a0 72 79 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20  ry commands are 
1b3b0 70 72 6f 76 69 64 65 64 3a 0a 09 74 63 6c 5f 73  provided:..tcl_s
1b3c0 61 66 65 43 72 65 61 74 65 49 6e 74 65 72 70 09  afeCreateInterp.
1b3d0 2d 2d 20 63 72 65 61 74 65 73 20 61 20 73 6c 61  -- creates a sla
1b3e0 76 65 20 61 6e 20 69 6e 69 74 69 61 6c 69 7a 65  ve an initialize
1b3f0 73 20 74 68 65 0a 09 09 09 09 20 20 20 70 6f 6c  s the.....   pol
1b400 69 63 79 20 6d 65 63 68 61 6e 69 73 6d 2e 0a 09  icy mechanism...
1b410 74 63 6c 5f 73 61 66 65 49 6e 69 74 49 6e 74 65  tcl_safeInitInte
1b420 72 70 09 2d 2d 20 69 6e 69 74 69 61 6c 69 7a 65  rp.-- initialize
1b430 73 20 61 6e 20 65 78 69 73 74 69 6e 67 20 73 6c  s an existing sl
1b440 61 76 65 20 77 69 74 68 20 74 68 65 0a 09 09 09  ave with the....
1b450 09 20 20 20 70 6f 6c 69 63 79 20 6d 65 63 68 61  .   policy mecha
1b460 6e 69 73 6d 2e 0a 09 74 63 6c 5f 73 61 66 65 44  nism...tcl_safeD
1b470 65 6c 65 74 65 49 6e 74 65 72 70 09 2d 2d 20 64  eleteInterp.-- d
1b480 65 6c 65 74 65 73 20 61 20 73 6c 61 76 65 20 61  eletes a slave a
1b490 6e 64 20 64 65 69 6e 69 74 69 61 6c 69 7a 65 73  nd deinitializes
1b4a0 20 74 68 65 0a 09 09 09 09 20 20 20 70 6f 6c 69   the.....   poli
1b4b0 63 79 20 6d 65 63 68 61 6e 69 73 6d 2e 0a 41 64  cy mechanism..Ad
1b4c0 64 65 64 20 61 20 6e 65 77 20 66 69 6c 65 20 74  ded a new file t
1b4d0 6f 20 74 68 65 20 6c 69 62 72 61 72 79 2c 20 73  o the library, s
1b4e0 61 66 65 69 6e 69 74 2e 74 63 6c 2c 20 74 6f 20  afeinit.tcl, to 
1b4f0 68 6f 6c 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74  hold implementat
1b500 69 6f 6e 2e 20 28 4a 4c 29 0a 4f 6e 20 37 2f 39  ion. (JL).On 7/9
1b510 2f 39 37 2c 20 72 65 6d 6f 76 65 64 20 74 68 65  /97, removed the
1b520 20 70 6f 6c 69 63 79 20 6c 6f 61 64 69 6e 67 20   policy loading 
1b530 6d 65 63 68 61 6e 69 73 6d 20 66 72 6f 6d 20 74  mechanism from t
1b540 68 65 20 53 61 66 65 20 42 61 73 65 2e 20 4c 65  he Safe Base. Le
1b550 66 74 0a 6f 6e 6c 79 20 74 68 65 20 53 61 66 65  ft.only the Safe
1b560 20 42 61 73 65 20 61 6c 69 61 73 65 73 20 64 65   Base aliases de
1b570 61 6c 69 6e 67 20 77 69 74 68 20 61 75 74 6f 2d  aling with auto-
1b580 6c 6f 61 64 69 6e 67 20 61 6e 64 20 73 6f 75 72  loading and sour
1b590 63 65 2e 20 28 4a 4c 29 0a 0a 31 32 2f 36 2f 39  ce. (JL)..12/6/9
1b5a0 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  6 (new feature) 
1b5b0 49 6d 70 6c 65 6d 65 6e 74 65 64 20 54 63 6c 5f  Implemented Tcl_
1b5c0 46 69 6e 61 6c 69 7a 65 2c 20 61 6e 20 41 50 49  Finalize, an API
1b5d0 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 0a   that should be.
1b5e0 63 61 6c 6c 65 64 20 62 79 20 61 20 70 72 6f 63  called by a proc
1b5f0 65 73 73 20 77 68 65 6e 20 69 74 20 69 73 20 64  ess when it is d
1b600 6f 6e 65 20 75 73 69 6e 67 20 54 63 6c 2e 20 54  one using Tcl. T
1b610 68 69 73 20 41 50 49 20 72 75 6e 73 20 61 6c 6c  his API runs all
1b620 20 74 68 65 20 65 78 69 74 0a 68 61 6e 64 6c 65   the exit.handle
1b630 72 73 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 6d  rs to allow them
1b640 20 74 6f 20 63 6c 65 61 6e 20 75 70 20 72 65 73   to clean up res
1b650 6f 75 72 63 65 73 20 65 74 63 2e 20 28 4a 4c 29  ources etc. (JL)
1b660 0a 0a 31 32 2f 31 37 2f 39 36 20 28 6e 65 77 20  ..12/17/96 (new 
1b670 66 65 61 74 75 72 65 29 20 41 64 64 20 61 6e 20  feature) Add an 
1b680 68 74 74 70 20 54 63 6c 20 73 63 72 69 70 74 20  http Tcl script 
1b690 70 61 63 6b 61 67 65 20 74 6f 20 74 68 65 20 54  package to the T
1b6a0 63 6c 20 6c 69 62 72 61 72 79 2e 0a 54 68 69 73  cl library..This
1b6b0 20 70 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65   package impleme
1b6c0 6e 74 73 20 74 68 65 20 63 6c 69 65 6e 74 20 73  nts the client s
1b6d0 69 64 65 20 6f 66 20 48 54 54 50 2f 31 2e 30 3b  ide of HTTP/1.0;
1b6e0 20 74 68 65 20 47 45 54 2c 20 48 45 41 44 2c 0a   the GET, HEAD,.
1b6f0 61 6e 64 20 50 4f 53 54 20 72 65 71 75 65 73 74  and POST request
1b700 73 2e 20 28 42 57 29 0a 0a 31 2f 32 31 2f 39 37  s. (BW)..1/21/97
1b710 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
1b720 64 64 65 64 20 61 20 22 6d 61 72 6b 74 72 75 73  dded a "marktrus
1b730 74 65 64 22 20 73 75 62 63 6f 6d 6d 61 6e 64 20  ted" subcommand 
1b740 74 6f 20 74 68 65 20 22 69 6e 74 65 72 70 22 20  to the "interp" 
1b750 61 6e 64 0a 74 6f 20 74 68 65 20 69 6e 74 65 72  and.to the inter
1b760 70 72 65 74 65 72 20 6f 62 6a 65 63 74 20 63 6f  preter object co
1b770 6d 6d 61 6e 64 2e 20 49 74 20 72 65 6d 6f 76 65  mmand. It remove
1b780 73 20 74 68 65 20 22 73 61 66 65 22 20 6d 61 72  s the "safe" mar
1b790 6b 20 6f 6e 20 61 6e 0a 69 6e 74 65 72 70 72 65  k on an.interpre
1b7a0 74 65 72 20 61 6e 64 20 64 69 73 61 62 6c 65 73  ter and disables
1b7b0 20 68 61 72 64 2d 77 69 72 65 64 20 63 68 65 63   hard-wired chec
1b7c0 6b 73 20 66 6f 72 20 73 61 66 65 74 79 20 69 6e  ks for safety in
1b7d0 20 74 68 65 20 43 20 73 6f 75 72 63 65 73 2e 20   the C sources. 
1b7e0 28 4a 4c 29 0a 0a 31 2f 32 31 2f 39 37 20 28 72  (JL)..1/21/97 (r
1b7f0 65 6d 6f 76 65 64 20 66 65 61 74 75 72 65 29 20  emoved feature) 
1b800 52 65 6d 6f 76 65 64 20 22 76 77 61 69 74 22 20  Removed "vwait" 
1b810 66 72 6f 6d 20 73 65 74 20 6f 66 20 63 6f 6d 6d  from set of comm
1b820 61 6e 64 73 20 61 76 61 69 6c 61 62 6c 65 20 69  ands available i
1b830 6e 0a 61 20 73 61 66 65 20 69 6e 74 65 72 70 72  n.a safe interpr
1b840 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 32 2f 31 31  eter. (JL)..2/11
1b850 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65  /97 (new feature
1b860 2c 20 62 75 67 20 66 69 78 29 20 68 74 74 70 20  , bug fix) http 
1b870 70 61 63 6b 61 67 65 2e 20 20 41 64 64 65 64 20  package.  Added 
1b880 2d 61 63 63 65 70 74 20 74 6f 20 68 74 74 70 5f  -accept to http_
1b890 63 6f 6e 66 69 67 0a 73 6f 20 79 6f 75 20 63 61  config.so you ca
1b8a0 6e 20 73 65 74 20 74 68 65 20 41 63 63 65 70 74  n set the Accept
1b8b0 20 68 65 61 64 65 72 2e 20 20 41 64 64 65 64 20   header.  Added 
1b8c0 2d 68 61 6e 64 6c 65 72 20 6f 70 74 69 6f 6e 20  -handler option 
1b8d0 74 6f 20 68 74 74 70 5f 67 65 74 20 73 6f 0a 79  to http_get so.y
1b8e0 6f 75 20 63 61 6e 20 73 75 70 70 6c 79 20 79 6f  ou can supply yo
1b8f0 75 72 20 6f 77 6e 20 64 61 74 61 20 68 61 6e 64  ur own data hand
1b900 6c 65 72 2e 20 20 41 6c 73 6f 20 66 69 78 65 64  ler.  Also fixed
1b910 20 50 4f 53 54 20 6f 70 65 72 61 74 69 6f 6e 20   POST operation 
1b920 74 6f 0a 73 65 74 20 74 68 65 20 63 6f 72 72 65  to.set the corre
1b930 63 74 20 4d 49 4d 45 20 74 79 70 65 20 6f 6e 20  ct MIME type on 
1b940 74 68 65 20 72 65 71 75 65 73 74 2e 20 28 42 57  the request. (BW
1b950 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  )..-------------
1b960 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b970 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b980 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 43 68  -------------.Ch
1b990 61 6e 67 65 73 20 66 6f 72 20 54 63 6c 20 37 2e  anges for Tcl 7.
1b9a0 37 20 67 6f 20 61 62 6f 76 65 20 74 68 69 73 20  7 go above this 
1b9b0 6c 69 6e 65 2e 0a 43 68 61 6e 67 65 73 20 66 6f  line..Changes fo
1b9c0 72 20 54 63 6c 20 38 2e 30 20 67 6f 20 62 65 6c  r Tcl 8.0 go bel
1b9d0 6f 77 20 74 68 69 73 20 6c 69 6e 65 2e 0a 2d 2d  ow this line..--
1b9e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b9f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba10 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 31 37 2f 39  --------..9/17/9
1ba20 36 20 28 62 75 67 20 66 69 78 29 20 55 73 69 6e  6 (bug fix) Usin
1ba30 67 20 22 75 70 76 61 72 22 20 69 74 20 77 61 73  g "upvar" it was
1ba40 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 74 75 72   possible to tur
1ba50 6e 20 61 6e 20 61 72 72 61 79 20 65 6c 65 6d 65  n an array eleme
1ba60 6e 74 0a 69 6e 74 6f 20 61 6e 20 61 72 72 61 79  nt.into an array
1ba70 20 69 74 73 65 6c 66 2e 20 20 43 68 61 6e 67 65   itself.  Change
1ba80 64 20 74 6f 20 64 69 73 61 6c 6c 6f 77 20 74 68  d to disallow th
1ba90 69 73 3b 20 69 74 20 77 61 73 20 71 75 69 72 6b  is; it was quirk
1baa0 79 20 61 6e 64 20 64 69 64 6e 27 74 0a 72 65 61  y and didn't.rea
1bab0 6c 6c 79 20 77 6f 72 6b 20 63 6f 72 72 65 63 74  lly work correct
1bac0 6c 79 20 61 6e 79 77 61 79 2e 20 28 4a 4f 29 0a  ly anyway. (JO).
1bad0 0a 31 30 2f 32 31 2f 39 36 20 28 6e 65 77 20 66  .10/21/96 (new f
1bae0 65 61 74 75 72 65 29 20 54 68 65 20 63 6f 72 65  eature) The core
1baf0 20 6f 66 20 74 68 65 20 54 63 6c 20 69 6e 74 65   of the Tcl inte
1bb00 72 70 72 65 74 65 72 20 68 61 73 20 62 65 65 6e  rpreter has been
1bb10 20 72 65 70 6c 61 63 65 64 0a 77 69 74 68 20 61   replaced.with a
1bb20 6e 20 6f 6e 2d 74 68 65 2d 66 6c 79 20 63 6f 6d  n on-the-fly com
1bb30 70 69 6c 65 72 20 74 68 61 74 20 74 72 61 6e 73  piler that trans
1bb40 6c 61 74 65 73 20 54 63 6c 20 73 63 72 69 70 74  lates Tcl script
1bb50 73 20 74 6f 20 62 79 74 65 63 6f 64 65 64 0a 69  s to bytecoded.i
1bb60 6e 73 74 72 75 63 74 69 6f 6e 73 3b 20 61 20 6e  nstructions; a n
1bb70 65 77 20 69 6e 74 65 72 70 72 65 74 65 72 20 74  ew interpreter t
1bb80 68 65 6e 20 65 78 65 63 75 74 65 73 20 74 68 65  hen executes the
1bb90 20 62 79 74 65 63 6f 64 65 73 2e 20 54 68 65 20   bytecodes. The 
1bba0 63 6f 6d 70 69 6c 65 72 0a 69 6e 74 72 6f 64 75  compiler.introdu
1bbb0 63 65 73 20 6f 6e 6c 79 20 61 20 66 65 77 20 6d  ces only a few m
1bbc0 69 6e 6f 72 20 63 68 61 6e 67 65 73 20 61 74 20  inor changes at 
1bbd0 74 68 65 20 6c 65 76 65 6c 20 6f 66 20 54 63 6c  the level of Tcl
1bbe0 20 73 63 72 69 70 74 73 2e 20 54 68 65 20 62 69   scripts. The bi
1bbf0 67 67 65 73 74 0a 63 68 61 6e 67 65 73 20 61 72  ggest.changes ar
1bc00 65 20 74 6f 20 65 78 70 72 65 73 73 69 6f 6e 73  e to expressions
1bc10 20 61 6e 64 20 6c 69 73 74 73 2e 0a 20 20 20 20   and lists..    
1bc20 2d 20 41 20 73 65 63 6f 6e 64 20 6c 65 76 65 6c  - A second level
1bc30 20 6f 66 20 73 75 62 73 74 69 74 75 74 69 6f 6e   of substitution
1bc40 73 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 64  s is no longer d
1bc50 6f 6e 65 20 66 6f 72 20 65 78 70 72 65 73 73 69  one for expressi
1bc60 6f 6e 73 2e 0a 20 20 20 20 20 20 54 68 69 73 20  ons..      This 
1bc70 73 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 69 6d  substantially im
1bc80 70 72 6f 76 65 73 20 74 68 65 69 72 20 65 78 65  proves their exe
1bc90 63 75 74 69 6f 6e 20 74 69 6d 65 2e 20 54 68 69  cution time. Thi
1bca0 73 20 6d 65 61 6e 73 20 74 68 61 74 0a 20 20 20  s means that.   
1bcb0 20 20 20 74 68 65 20 65 78 70 72 65 73 73 69 6f     the expressio
1bcc0 6e 20 22 24 78 2a 34 22 20 70 72 6f 64 75 63 65  n "$x*4" produce
1bcd0 73 20 61 20 64 69 66 66 65 72 65 6e 74 20 72 65  s a different re
1bce0 73 75 6c 74 20 74 68 61 6e 20 69 6e 20 74 68 65  sult than in the
1bcf0 20 70 61 73 74 0a 20 20 20 20 20 20 69 66 20 78   past.      if x
1bd00 20 69 73 20 22 24 79 2b 32 22 2e 20 46 6f 72 74   is "$y+2". Fort
1bd10 75 6e 61 74 65 6c 79 2c 20 6e 6f 74 20 6d 75 63  unately, not muc
1bd20 68 20 63 6f 64 65 20 64 65 70 65 6e 64 73 20 6f  h code depends o
1bd30 6e 20 74 68 65 20 6f 6c 64 0a 20 20 20 20 20 20  n the old.      
1bd40 74 77 6f 2d 6c 65 76 65 6c 20 73 65 6d 61 6e 74  two-level semant
1bd50 69 63 73 2e 20 53 6f 6d 65 20 65 78 70 72 65 73  ics. Some expres
1bd60 73 69 6f 6e 73 20 74 68 61 74 20 64 6f 2c 20 73  sions that do, s
1bd70 75 63 68 20 61 73 0a 20 20 20 20 20 20 22 65 78  uch as.      "ex
1bd80 70 72 20 5b 6a 6f 69 6e 20 24 6c 69 73 74 20 2b  pr [join $list +
1bd90 5d 22 20 63 61 6e 20 62 65 20 72 65 63 6f 64 65  ]" can be recode
1bda0 64 20 74 6f 20 77 6f 72 6b 20 69 6e 20 54 63 6c  d to work in Tcl
1bdb0 38 2e 30 20 62 79 20 61 64 64 69 6e 67 0a 20 20  8.0 by adding.  
1bdc0 20 20 20 20 61 6e 20 65 76 61 6c 3a 20 65 2e 67      an eval: e.g
1bdd0 2e 2c 20 22 65 76 61 6c 20 65 78 70 72 20 5b 6a  ., "eval expr [j
1bde0 6f 69 6e 20 24 6c 69 73 74 20 2b 5d 22 2e 0a 20  oin $list +]".. 
1bdf0 20 20 20 2d 20 4c 69 73 74 73 20 61 72 65 20 6e     - Lists are n
1be00 6f 77 20 63 6f 6d 70 6c 65 74 65 6c 79 20 70 61  ow completely pa
1be10 72 73 65 64 20 6f 6e 20 74 68 65 20 66 69 72 73  rsed on the firs
1be20 74 20 6c 69 73 74 20 6f 70 65 72 61 74 69 6f 6e  t list operation
1be30 20 74 6f 0a 20 20 20 20 20 20 63 72 65 61 74 65   to.      create
1be40 20 61 20 66 61 73 74 65 72 20 69 6e 74 65 72 6e   a faster intern
1be50 61 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f  al representatio
1be60 6e 2e 20 49 6e 20 74 68 65 20 70 61 73 74 2c 20  n. In the past, 
1be70 69 66 20 79 6f 75 20 68 61 64 20 61 0a 20 20 20  if you had a.   
1be80 20 20 20 6d 69 73 66 6f 72 6d 65 64 20 6c 69 73     misformed lis
1be90 74 20 62 75 74 20 74 68 65 20 65 72 72 6f 6e 65  t but the errone
1bea0 6f 75 73 20 70 61 72 74 20 77 61 73 20 61 66 74  ous part was aft
1beb0 65 72 20 74 68 65 20 70 6f 69 6e 74 20 79 6f 75  er the point you
1bec0 0a 20 20 20 20 20 20 69 6e 73 65 72 74 65 64 20  .      inserted 
1bed0 6f 72 20 65 78 74 72 61 63 74 65 64 20 61 6e 20  or extracted an 
1bee0 65 6c 65 6d 65 6e 74 2c 20 74 68 65 6e 20 79 6f  element, then yo
1bef0 75 20 6e 65 76 65 72 20 73 61 77 20 61 6e 20 65  u never saw an e
1bf00 72 72 6f 72 2e 0a 20 20 20 20 20 20 49 6e 20 54  rror..      In T
1bf10 63 6c 38 2e 30 20 61 6e 20 65 72 72 6f 72 20 77  cl8.0 an error w
1bf20 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64 2e  ill be reported.
1bf30 20 54 68 69 73 20 73 68 6f 75 6c 64 20 6f 6e 6c   This should onl
1bf40 79 20 65 66 66 65 63 74 0a 20 20 20 20 20 20 69  y effect.      i
1bf50 6e 63 6f 72 72 65 63 74 20 70 72 6f 67 72 61 6d  ncorrect program
1bf60 73 20 74 68 61 74 20 74 6f 6f 6b 20 61 64 76 61  s that took adva
1bf70 6e 74 61 67 65 20 6f 66 20 62 65 68 61 76 69 6f  ntage of behavio
1bf80 72 20 6f 66 20 74 68 65 20 6f 6c 64 0a 20 20 20  r of the old.   
1bf90 20 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f     implementatio
1bfa0 6e 20 74 68 61 74 20 77 61 73 20 6e 6f 74 20 64  n that was not d
1bfb0 6f 63 75 6d 65 6e 74 65 64 20 69 6e 20 74 68 65  ocumented in the
1bfc0 20 6d 61 6e 20 70 61 67 65 73 2e 0a 4f 74 68 65   man pages..Othe
1bfd0 72 20 63 68 61 6e 67 65 73 20 74 6f 20 54 63 6c  r changes to Tcl
1bfe0 20 73 63 72 69 70 74 73 20 61 72 65 20 64 69 73   scripts are dis
1bff0 63 75 73 73 65 64 20 69 6e 20 74 68 65 20 77 65  cussed in the we
1c000 62 20 70 61 67 65 20 61 74 0a 68 74 74 70 3a 2f  b page at.http:/
1c010 2f 77 77 77 2e 73 63 72 69 70 74 69 63 73 2e 63  /www.scriptics.c
1c020 6f 6d 2f 64 6f 63 2f 63 6f 6d 70 69 6c 65 72 2e  om/doc/compiler.
1c030 68 74 6d 6c 2e 20 28 42 4c 29 0a 2a 2a 2a 20 50  html. (BL).*** P
1c040 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
1c050 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 30  TIBILITY ***..10
1c060 2f 32 31 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /21/96 (new feat
1c070 75 72 65 29 20 49 6e 20 65 61 72 6c 69 65 72 20  ure) In earlier 
1c080 76 65 72 73 69 6f 6e 73 20 6f 66 20 54 63 6c 2c  versions of Tcl,
1c090 20 73 74 72 69 6e 67 73 20 77 65 72 65 20 75 73   strings were us
1c0a0 65 64 20 61 73 20 61 0a 75 6e 69 76 65 72 73 61  ed as a.universa
1c0b0 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e  l representation
1c0c0 3b 20 69 6e 20 54 63 6c 20 38 2e 30 20 73 74 72  ; in Tcl 8.0 str
1c0d0 69 6e 67 73 20 61 72 65 20 72 65 70 6c 61 63 65  ings are replace
1c0e0 64 20 77 69 74 68 20 54 63 6c 5f 4f 62 6a 0a 73  d with Tcl_Obj.s
1c0f0 74 72 75 63 74 75 72 65 73 20 28 22 6f 62 6a 65  tructures ("obje
1c100 63 74 73 22 29 20 74 68 61 74 20 63 61 6e 20 68  cts") that can h
1c110 6f 6c 64 20 62 6f 74 68 20 61 20 73 74 72 69 6e  old both a strin
1c120 67 20 76 61 6c 75 65 20 61 6e 64 20 61 6e 20 69  g value and an i
1c130 6e 74 65 72 6e 61 6c 0a 66 6f 72 6d 20 73 75 63  nternal.form suc
1c140 68 20 61 73 20 61 20 62 69 6e 61 72 79 20 69 6e  h as a binary in
1c150 74 65 67 65 72 20 6f 72 20 63 6f 6d 70 69 6c 65  teger or compile
1c160 64 20 62 79 74 65 63 6f 64 65 73 2e 20 54 68 65  d bytecodes. The
1c170 20 6e 65 77 20 6f 62 6a 65 63 74 73 20 6d 61 6b   new objects mak
1c180 65 20 69 74 0a 70 6f 73 73 69 62 6c 65 20 74 6f  e it.possible to
1c190 20 73 74 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69   store informati
1c1a0 6f 6e 20 69 6e 20 65 66 66 69 63 69 65 6e 74 20  on in efficient 
1c1b0 69 6e 74 65 72 6e 61 6c 20 66 6f 72 6d 73 20 61  internal forms a
1c1c0 6e 64 20 61 76 6f 69 64 20 74 68 65 0a 63 6f 6e  nd avoid the.con
1c1d0 73 74 61 6e 74 20 74 72 61 6e 73 6c 61 74 69 6f  stant translatio
1c1e0 6e 73 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20 73  ns to and from s
1c1f0 74 72 69 6e 67 73 20 74 68 61 74 20 6f 63 63 75  trings that occu
1c200 72 72 65 64 20 77 69 74 68 20 74 68 65 20 6f 6c  rred with the ol
1c210 64 0a 69 6e 74 65 72 70 72 65 74 65 72 2e 20 54  d.interpreter. T
1c220 68 65 72 65 20 61 72 65 20 6e 65 77 20 6d 61 6e  here are new man
1c230 79 20 6e 65 77 20 43 20 41 50 49 73 20 66 6f 72  y new C APIs for
1c240 20 6d 61 6e 61 67 69 6e 67 20 6f 62 6a 65 63 74   managing object
1c250 73 2e 20 53 6f 6d 65 20 6f 66 20 74 68 65 0a 6e  s. Some of the.n
1c260 65 77 20 6c 69 62 72 61 72 79 20 70 72 6f 63 65  ew library proce
1c270 64 75 72 65 73 20 66 6f 72 20 6f 62 6a 65 63 74  dures for object
1c280 73 20 28 73 75 63 68 20 61 73 20 54 63 6c 5f 45  s (such as Tcl_E
1c290 76 61 6c 4f 62 6a 29 20 72 65 73 65 6d 62 6c 65  valObj) resemble
1c2a0 20 65 78 69 73 74 69 6e 67 0a 73 74 72 69 6e 67   existing.string
1c2b0 2d 62 61 73 65 64 20 70 72 6f 63 65 64 75 72 65  -based procedure
1c2c0 73 20 28 73 75 63 68 20 61 73 20 54 63 6c 5f 45  s (such as Tcl_E
1c2d0 76 61 6c 29 20 62 75 74 20 74 61 6b 65 20 61 64  val) but take ad
1c2e0 76 61 6e 74 61 67 65 20 6f 66 20 74 68 65 0a 69  vantage of the.i
1c2f0 6e 74 65 72 6e 61 6c 20 66 6f 72 6d 20 73 74 6f  nternal form sto
1c300 72 65 64 20 69 6e 20 54 63 6c 20 6f 62 6a 65 63  red in Tcl objec
1c310 74 73 20 66 6f 72 20 67 72 65 61 74 65 72 20 73  ts for greater s
1c320 70 65 65 64 2e 20 4f 74 68 65 72 20 6e 65 77 20  peed. Other new 
1c330 70 72 6f 63 65 64 75 72 65 73 0a 6d 61 6e 61 67  procedures.manag
1c340 65 20 6f 62 6a 65 63 74 73 20 61 6e 64 20 61 6c  e objects and al
1c350 6c 6f 77 20 65 78 74 65 6e 73 69 6f 6e 20 77 72  low extension wr
1c360 69 74 65 72 73 20 74 6f 20 64 65 66 69 6e 65 20  iters to define 
1c370 6e 65 77 20 6b 69 6e 64 73 20 6f 66 20 6f 62 6a  new kinds of obj
1c380 65 63 74 73 2e 0a 53 65 65 20 74 68 65 20 6d 61  ects..See the ma
1c390 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 64 6f 63  nual entries doc
1c3a0 2f 2a 4f 62 6a 2a 2e 33 20 28 42 4c 29 0a 0a 31  /*Obj*.3 (BL)..1
1c3b0 30 2f 32 34 2f 39 36 20 28 62 75 67 20 66 69 78  0/24/96 (bug fix
1c3c0 29 20 46 69 78 65 64 20 6d 65 6d 6f 72 79 20 6c  ) Fixed memory l
1c3d0 65 61 6b 20 6f 6e 20 65 78 69 74 20 63 61 75 73  eak on exit caus
1c3e0 65 64 20 62 79 20 73 6f 6d 65 20 49 4f 20 72 65  ed by some IO re
1c3f0 6c 61 74 65 64 0a 64 61 74 61 20 73 74 72 75 63  lated.data struc
1c400 74 75 72 65 73 20 6e 6f 74 20 62 65 69 6e 67 20  tures not being 
1c410 64 65 61 6c 6c 6f 63 61 74 65 64 20 6f 6e 20 65  deallocated on e
1c420 78 69 74 20 62 65 63 61 75 73 65 20 74 68 65 69  xit because thei
1c430 72 20 72 65 66 63 6f 75 6e 74 20 77 61 73 0a 61  r refcount was.a
1c440 72 74 69 66 69 63 69 61 6c 6c 79 20 62 6f 6f 73  rtificially boos
1c450 74 65 64 2e 20 28 4a 4c 29 0a 0a 31 30 2f 32 34  ted. (JL)..10/24
1c460 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
1c470 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69 6e  xed core dump in
1c480 20 54 63 6c 5f 43 6c 6f 73 65 20 69 66 20 63 61   Tcl_Close if ca
1c490 6c 6c 65 64 20 77 69 74 68 20 4e 55 4c 4c 0a 54  lled with NULL.T
1c4a0 63 6c 5f 43 68 61 6e 6e 65 6c 2e 20 28 4a 4c 29  cl_Channel. (JL)
1c4b0 0a 0a 31 31 2f 31 39 2f 39 36 20 28 6e 65 77 20  ..11/19/96 (new 
1c4c0 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 6c  feature) Added l
1c4d0 69 62 72 61 72 79 20 70 72 6f 63 65 64 75 72 65  ibrary procedure
1c4e0 73 20 66 6f 72 20 66 69 6e 64 69 6e 67 20 77 6f  s for finding wo
1c4f0 72 64 0a 62 72 65 61 6b 73 20 69 6e 20 73 74 72  rd.breaks in str
1c500 69 6e 67 73 20 69 6e 20 61 20 70 6c 61 74 66 6f  ings in a platfo
1c510 72 6d 20 73 70 65 63 69 66 69 63 20 6d 61 6e 6e  rm specific mann
1c520 65 72 2e 20 20 53 65 65 20 74 68 65 20 6c 69 62  er.  See the lib
1c530 72 61 72 79 2e 6e 0a 6d 61 6e 75 61 6c 20 65 6e  rary.n.manual en
1c540 74 72 79 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66  try for more inf
1c550 6f 72 6d 61 74 69 6f 6e 2e 20 28 53 53 29 0a 0a  ormation. (SS)..
1c560 31 31 2f 32 32 2f 39 36 20 28 66 65 61 74 75 72  11/22/96 (featur
1c570 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29 20  e improvements) 
1c580 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f  Added support fo
1c590 72 20 64 69 66 66 65 72 65 6e 74 20 6c 65 76 65  r different leve
1c5a0 6c 73 20 6f 66 0a 74 72 61 63 69 6e 67 20 64 75  ls of.tracing du
1c5b0 72 69 6e 67 20 62 79 74 65 63 6f 64 65 20 63 6f  ring bytecode co
1c5c0 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 65 78  mpilation and ex
1c5d0 65 63 75 74 69 6f 6e 2e 20 54 68 69 73 20 73 68  ecution. This sh
1c5e0 6f 75 6c 64 20 68 65 6c 70 20 69 6e 0a 74 72 61  ould help in.tra
1c5f0 63 6b 69 6e 67 20 64 6f 77 6e 20 73 75 73 70 65  cking down suspe
1c600 63 74 65 64 20 70 72 6f 62 6c 65 6d 73 20 77 69  cted problems wi
1c610 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20  th the compiler 
1c620 6f 72 20 77 69 74 68 20 63 6f 6e 76 65 72 74 69  or with converti
1c630 6e 67 0a 65 78 69 73 74 69 6e 67 20 63 6f 64 65  ng.existing code
1c640 20 74 6f 20 75 73 65 20 54 63 6c 38 2e 30 2e 20   to use Tcl8.0. 
1c650 54 77 6f 20 67 6c 6f 62 61 6c 20 54 63 6c 20 76  Two global Tcl v
1c660 61 72 69 61 62 6c 65 73 2c 20 74 72 61 63 65 43  ariables, traceC
1c670 6f 6d 70 69 6c 65 0a 61 6e 64 20 74 72 61 63 65  ompile.and trace
1c680 45 78 65 63 2c 20 63 61 6e 20 62 65 20 73 65 74  Exec, can be set
1c690 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 72 61   to generate tra
1c6a0 63 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  cing information
1c6b0 20 69 6e 20 73 74 64 6f 75 74 3a 0a 20 20 20 20   in stdout:.    
1c6c0 2d 20 74 72 61 63 65 43 6f 6d 70 69 6c 65 3a 20  - traceCompile: 
1c6d0 30 20 20 6e 6f 20 74 72 61 63 69 6e 67 20 28 64  0  no tracing (d
1c6e0 65 66 61 75 6c 74 29 0a 20 20 20 20 20 20 20 20  efault).        
1c6f0 20 20 20 20 20 20 20 20 20 20 20 20 31 20 20 74              1  t
1c700 72 61 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  race compilation
1c710 73 20 6f 66 20 74 6f 70 20 6c 65 76 65 6c 20 63  s of top level c
1c720 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 70 72 6f 63  ommands and proc
1c730 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  s.              
1c740 20 20 20 20 20 20 32 20 20 74 72 61 63 65 20 61        2  trace a
1c750 6e 64 20 64 69 73 70 6c 61 79 20 69 6e 73 74 72  nd display instr
1c760 75 63 74 69 6f 6e 73 20 66 6f 72 20 61 6c 6c 20  uctions for all 
1c770 63 6f 6d 70 69 6c 61 74 69 6f 6e 73 0a 20 20 20  compilations.   
1c780 20 2d 20 74 72 61 63 65 45 78 65 63 3a 20 20 20   - traceExec:   
1c790 20 30 20 20 6e 6f 20 74 72 61 63 69 6e 67 0a 20   0  no tracing. 
1c7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c7b0 20 20 20 31 20 20 74 72 61 63 65 20 6f 6e 6c 79     1  trace only
1c7c0 20 63 61 6c 6c 73 20 74 6f 20 54 63 6c 20 70 72   calls to Tcl pr
1c7d0 6f 63 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  ocs.            
1c7e0 20 20 20 20 20 20 20 20 32 20 20 74 72 61 63 65          2  trace
1c7f0 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66 20   invocations of 
1c800 61 6c 6c 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 63  all commands inc
1c810 6c 75 64 69 6e 67 20 70 72 6f 63 73 0a 20 20 20  luding procs.   
1c820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c830 20 33 20 20 64 65 74 61 69 6c 65 64 20 74 72 61   3  detailed tra
1c840 63 65 20 73 68 6f 77 69 6e 67 20 74 68 65 20 72  ce showing the r
1c850 65 73 75 6c 74 20 6f 66 20 65 61 63 68 20 69 6e  esult of each in
1c860 73 74 72 75 63 74 69 6f 6e 0a 74 72 61 63 65 45  struction.traceE
1c870 78 65 63 20 3e 3d 20 32 20 70 72 6f 76 69 64 65  xec >= 2 provide
1c880 73 20 61 20 6f 6e 65 20 6c 69 6e 65 20 73 75 6d  s a one line sum
1c890 6d 61 72 79 20 6f 66 20 65 61 63 68 20 63 61 6c  mary of each cal
1c8a0 6c 65 64 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 0a  led command and.
1c8b0 69 74 73 20 61 72 67 75 6d 65 6e 74 73 2e 20 43  its arguments. C
1c8c0 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 68 61 76  ommands that hav
1c8d0 65 20 62 65 65 6e 20 22 63 6f 6d 70 69 6c 65 64  e been "compiled
1c8e0 20 61 77 61 79 22 20 73 75 63 68 20 61 73 20 73   away" such as s
1c8f0 65 74 20 61 72 65 0a 6e 6f 74 20 73 68 6f 77 6e  et are.not shown
1c900 2e 20 28 42 4c 29 0a 0a 31 31 2f 33 30 2f 39 36  . (BL)..11/30/96
1c910 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 63   (bug fix) The c
1c920 6f 6d 6d 61 6e 64 20 22 69 6e 66 6f 20 6e 61 6d  ommand "info nam
1c930 65 6f 66 65 78 65 63 75 74 61 62 6c 65 22 20 63  eofexecutable" c
1c940 6f 75 6c 64 20 73 6f 6d 65 74 69 6d 65 73 0a 72  ould sometimes.r
1c950 65 74 75 72 6e 20 74 68 65 20 6e 61 6d 65 20 6f  eturn the name o
1c960 66 20 61 20 64 69 72 65 63 74 6f 72 79 2e 20 28  f a directory. (
1c970 4a 4f 29 0a 0a 31 31 2f 33 30 2f 39 36 20 28 66  JO)..11/30/96 (f
1c980 65 61 74 75 72 65 20 69 6d 70 72 6f 76 65 6d 65  eature improveme
1c990 6e 74 73 29 20 43 68 61 6e 67 65 64 20 74 68 65  nts) Changed the
1c9a0 20 63 6f 64 65 20 69 6e 20 6c 69 62 72 61 72 79   code in library
1c9b0 2f 69 6e 69 74 2e 74 63 6c 0a 74 68 61 74 20 72  /init.tcl.that r
1c9c0 65 61 64 73 20 69 6e 20 70 6b 67 49 6e 64 65 78  eads in pkgIndex
1c9d0 2e 74 63 6c 20 73 6f 20 74 68 61 74 20 28 61 29  .tcl so that (a)
1c9e0 20 69 74 20 72 65 61 64 73 20 74 68 65 20 66 69   it reads the fi
1c9f0 6c 65 73 20 66 72 6f 6d 20 63 68 69 6c 64 0a 64  les from child.d
1ca00 69 72 65 63 74 6f 72 69 65 73 20 62 65 66 6f 72  irectories befor
1ca10 65 20 74 68 6f 73 65 20 69 6e 20 74 68 65 20 70  e those in the p
1ca20 61 72 65 6e 74 2c 20 73 6f 20 74 68 61 74 20 74  arent, so that t
1ca30 68 65 20 70 61 72 65 6e 74 20 67 65 74 73 0a 70  he parent gets.p
1ca40 72 65 63 65 64 65 6e 63 65 2c 20 61 6e 64 20 28  recedence, and (
1ca50 62 29 20 69 74 20 64 6f 65 73 6e 27 74 20 71 75  b) it doesn't qu
1ca60 69 74 20 69 66 20 74 68 65 72 65 20 69 73 20 61  it if there is a
1ca70 6e 20 65 72 72 6f 72 20 69 6e 20 61 0a 70 6b 67  n error in a.pkg
1ca80 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 3b 20  Index.tcl file; 
1ca90 20 69 6e 73 74 65 61 64 2c 20 69 74 20 70 72 69   instead, it pri
1caa0 6e 74 73 20 61 6e 20 65 72 72 6f 72 20 6d 65 73  nts an error mes
1cab0 73 61 67 65 20 6f 6e 20 73 74 61 6e 64 61 72 64  sage on standard
1cac0 0a 65 72 72 6f 72 20 61 6e 64 20 63 6f 6e 74 69  .error and conti
1cad0 6e 75 65 73 2e 20 28 4a 4f 29 0a 0a 31 30 2f 35  nues. (JO)..10/5
1cae0 2f 39 36 20 28 66 65 61 74 75 72 65 20 69 6d 70  /96 (feature imp
1caf0 72 6f 76 65 6d 65 6e 74 73 29 20 50 61 72 74 69  rovements) Parti
1cb00 61 6c 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  al implementatio
1cb10 6e 20 6f 66 20 62 69 6e 61 72 79 20 73 74 72 69  n of binary stri
1cb20 6e 67 0a 73 75 70 70 6f 72 74 3a 20 74 68 65 20  ng.support: the 
1cb30 61 62 69 6c 69 74 79 20 66 6f 72 20 54 63 6c 20  ability for Tcl 
1cb40 73 74 72 69 6e 67 20 76 61 6c 75 65 73 20 74 6f  string values to
1cb50 20 63 6f 6e 74 61 69 6e 20 65 6d 62 65 64 64 65   contain embedde
1cb60 64 20 6e 75 6c 6c 20 62 79 74 65 73 2e 0a 43 68  d null bytes..Ch
1cb70 61 6e 67 65 64 20 74 68 65 20 54 63 6c 20 6f 62  anged the Tcl ob
1cb80 6a 65 63 74 2d 62 61 73 65 64 20 41 50 49 73 20  ject-based APIs 
1cb90 74 6f 20 74 61 6b 65 20 61 20 62 79 74 65 20 70  to take a byte p
1cba0 6f 69 6e 74 65 72 20 61 6e 64 20 6c 65 6e 67 74  ointer and lengt
1cbb0 68 20 70 61 69 72 0a 69 6e 73 74 65 61 64 20 6f  h pair.instead o
1cbc0 66 20 61 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61  f a null-termina
1cbd0 74 65 64 20 43 20 73 74 72 69 6e 67 2e 20 4d 6f  ted C string. Mo
1cbe0 64 69 66 69 65 64 20 73 65 76 65 72 61 6c 20 6f  dified several o
1cbf0 62 6a 65 63 74 20 74 79 70 65 20 6d 61 6e 61 67  bject type manag
1cc00 65 72 73 0a 74 6f 20 73 75 70 70 6f 72 74 20 62  ers.to support b
1cc10 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 62 75  inary strings bu
1cc20 74 20 6e 6f 74 2c 20 66 6f 72 20 65 78 61 6d 70  t not, for examp
1cc30 6c 65 2c 20 74 68 65 20 6c 69 73 74 20 74 79 70  le, the list typ
1cc40 65 20 6d 61 6e 61 67 65 72 2e 0a 45 78 69 73 74  e manager..Exist
1cc50 69 6e 67 20 73 74 72 69 6e 67 2d 62 61 73 65 64  ing string-based
1cc60 20 43 20 41 50 49 73 20 61 72 65 20 75 6e 63 68   C APIs are unch
1cc70 61 6e 67 65 64 20 61 6e 64 20 77 69 6c 6c 20 74  anged and will t
1cc80 72 75 6e 63 61 74 65 20 62 69 6e 61 72 79 0a 73  runcate binary.s
1cc90 74 72 69 6e 67 73 2e 20 43 6f 6d 70 69 6c 65 64  trings. Compiled
1cca0 20 73 63 72 69 70 74 73 20 63 6f 6e 74 61 69 6e   scripts contain
1ccb0 69 6e 67 20 6e 75 6c 6c 73 20 61 72 65 20 61 6c  ing nulls are al
1ccc0 73 6f 20 74 72 75 6e 63 61 74 65 64 2e 20 28 42  so truncated. (B
1ccd0 4c 29 0a 0a 31 32 2f 31 32 2f 39 36 20 28 66 65  L)..12/12/96 (fe
1cce0 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65  ature change) Re
1ccf0 6d 6f 76 65 64 20 74 68 65 20 63 6f 6d 6d 61 6e  moved the comman
1cd00 64 73 20 22 63 70 22 2c 20 22 6d 6b 64 69 72 22  ds "cp", "mkdir"
1cd10 2c 20 22 6d 76 22 2c 0a 22 72 6d 22 2c 20 61 6e  , "mv",."rm", an
1cd20 64 20 22 72 6d 64 69 72 22 20 66 72 6f 6d 20 74  d "rmdir" from t
1cd30 68 65 20 4d 61 63 69 6e 74 6f 73 68 20 76 65 72  he Macintosh ver
1cd40 73 69 6f 6e 20 6f 66 20 54 63 6c 2e 20 20 54 68  sion of Tcl.  Th
1cd50 65 79 20 77 65 72 65 20 6e 65 76 65 72 0a 6f 66  ey were never.of
1cd60 66 69 63 69 61 6c 6c 79 20 73 75 70 70 6f 72 74  ficially support
1cd70 65 64 20 61 6e 64 20 74 68 65 69 72 20 66 75 6e  ed and their fun
1cd80 63 74 69 6f 6e 61 6c 69 74 79 20 69 73 20 6e 6f  ctionality is no
1cd90 77 20 61 76 61 69 6c 61 62 6c 65 20 76 69 61 0a  w available via.
1cda0 74 68 65 20 66 69 6c 65 20 63 6f 6d 6d 61 6e 64  the file command
1cdb0 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  . (RJ)..--------
1cdc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
1cdd0 65 64 20 38 2e 30 61 31 2c 20 31 32 2f 32 30 2f  ed 8.0a1, 12/20/
1cde0 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  96 -------------
1cdf0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 2f 37 2f  ----------..1/7/
1ce00 39 37 20 28 62 75 67 20 66 69 78 29 20 55 6e 64  97 (bug fix) Und
1ce10 65 72 20 57 69 6e 64 6f 77 73 2c 20 22 66 69 6c  er Windows, "fil
1ce20 65 20 73 74 61 74 20 63 3a 22 20 77 61 73 20 72  e stat c:" was r
1ce30 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 20 69  eturning error i
1ce40 6e 73 74 65 61 64 0a 6f 66 20 73 74 61 74 20 66  nstead.of stat f
1ce50 6f 72 20 63 75 72 72 65 6e 74 20 64 69 72 20 6f  or current dir o
1ce60 6e 20 63 3a 20 64 72 69 76 65 2e 0a 0a 31 2f 31  n c: drive...1/1
1ce70 30 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72  0/97 (new featur
1ce80 65 29 20 41 64 64 65 64 20 54 63 6c 5f 47 65 74  e) Added Tcl_Get
1ce90 49 6e 64 65 78 46 72 6f 6d 4f 62 6a 20 70 72 6f  IndexFromObj pro
1cea0 63 65 64 75 72 65 20 66 6f 72 20 71 75 69 63 6b  cedure for quick
1ceb0 0a 6c 6f 6f 6b 75 70 73 20 6f 66 20 6b 65 79 77  .lookups of keyw
1cec0 6f 72 64 20 61 72 67 75 6d 65 6e 74 73 2e 20 28  ord arguments. (
1ced0 4a 4f 29 0a 0a 31 2f 31 32 2f 39 37 20 28 6e 65  JO)..1/12/97 (ne
1cee0 77 20 66 65 61 74 75 72 65 29 20 53 65 72 69 61  w feature) Seria
1cef0 6c 20 49 4f 20 63 68 61 6e 6e 65 6c 20 64 72 69  l IO channel dri
1cf00 76 65 72 73 20 66 6f 72 20 57 69 6e 64 6f 77 73  vers for Windows
1cf10 20 61 6e 64 20 55 6e 69 78 2c 0a 61 76 61 69 6c   and Unix,.avail
1cf20 61 62 6c 65 20 62 79 20 75 73 69 6e 67 20 54 63  able by using Tc
1cf30 6c 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 20 74  l open command t
1cf40 6f 20 6f 70 65 6e 20 70 73 65 75 64 6f 2d 66 69  o open pseudo-fi
1cf50 6c 65 73 20 6c 69 6b 65 20 22 63 6f 6d 31 3a 22  les like "com1:"
1cf60 20 6f 72 0a 22 2f 64 65 76 2f 74 74 79 61 22 2e   or."/dev/ttya".
1cf70 20 20 4e 65 77 20 6f 70 74 69 6f 6e 20 74 6f 20    New option to 
1cf80 54 63 6c 20 66 63 6f 6e 66 69 67 75 72 65 20 63  Tcl fconfigure c
1cf90 6f 6d 6d 61 6e 64 20 66 6f 72 20 73 65 72 69 61  ommand for seria
1cfa0 6c 20 66 69 6c 65 73 3a 20 20 0a 22 2d 6d 6f 64  l files:  ."-mod
1cfb0 65 20 62 61 75 64 2c 70 61 72 69 74 79 2c 64 61  e baud,parity,da
1cfc0 74 61 2c 73 74 6f 70 22 20 74 6f 20 73 70 65 63  ta,stop" to spec
1cfd0 69 66 79 20 62 61 75 64 20 72 61 74 65 2c 20 70  ify baud rate, p
1cfe0 61 72 69 74 79 2c 20 64 61 74 61 20 62 69 74 73  arity, data bits
1cff0 2c 20 61 6e 64 0a 73 74 6f 70 20 62 69 74 73 2e  , and.stop bits.
1d000 20 20 53 65 72 69 61 6c 20 49 4f 20 69 73 20 6e    Serial IO is n
1d010 6f 74 20 79 65 74 20 61 76 61 69 6c 61 62 6c 65  ot yet available
1d020 20 6f 6e 20 4d 61 63 2e 0a 0a 31 2f 31 36 2f 39   on Mac...1/16/9
1d030 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
1d040 65 29 20 52 65 73 74 6f 72 65 64 20 74 68 65 20  e) Restored the 
1d050 54 63 6c 37 2e 78 20 22 74 77 6f 20 6c 65 76 65  Tcl7.x "two leve
1d060 6c 20 73 75 62 73 74 69 74 75 74 69 6f 6e 0a 73  l substitution.s
1d070 65 6d 61 6e 74 69 63 73 22 20 66 6f 72 20 65 78  emantics" for ex
1d080 70 72 65 73 73 69 6f 6e 73 2e 20 45 78 70 72 65  pressions. Expre
1d090 73 73 69 6f 6e 73 20 6e 6f 74 20 65 6e 63 6c 6f  ssions not enclo
1d0a0 73 65 64 20 69 6e 20 62 72 61 63 65 73 20 61 72  sed in braces ar
1d0b0 65 0a 69 6d 70 6c 65 6d 65 6e 74 65 64 2c 20 69  e.implemented, i
1d0c0 6e 20 67 65 6e 65 72 61 6c 2c 20 62 79 20 63 61  n general, by ca
1d0d0 6c 6c 69 6e 67 20 74 68 65 20 65 78 70 72 20 63  lling the expr c
1d0e0 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75 72 65  ommand procedure
1d0f0 0a 28 54 63 6c 5f 45 78 70 72 4f 62 6a 43 6d 64  .(Tcl_ExprObjCmd
1d100 29 20 61 74 20 72 75 6e 74 69 6d 65 20 61 66 74  ) at runtime aft
1d110 65 72 20 74 68 65 20 54 63 6c 20 69 6e 74 65 72  er the Tcl inter
1d120 70 72 65 74 65 72 20 68 61 73 20 61 6c 72 65 61  preter has alrea
1d130 64 79 20 64 6f 6e 65 20 61 0a 66 69 72 73 74 20  dy done a.first 
1d140 72 6f 75 6e 64 20 6f 66 20 73 75 62 73 74 69 74  round of substit
1d150 75 74 69 6f 6e 73 2e 20 54 68 69 73 20 69 73 20  utions. This is 
1d160 73 6c 6f 77 20 28 61 62 6f 75 74 20 54 63 6c 37  slow (about Tcl7
1d170 2e 78 20 73 70 65 65 64 29 20 62 65 63 61 75 73  .x speed) becaus
1d180 65 20 6e 65 77 0a 63 6f 64 65 20 66 6f 72 20 74  e new.code for t
1d190 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69 73  he expression is
1d1a0 20 67 65 6e 65 72 61 6c 6c 79 20 63 6f 6d 70 69   generally compi
1d1b0 6c 65 64 20 65 61 63 68 20 74 69 6d 65 2e 20 48  led each time. H
1d1c0 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 0a 65  owever, if the.e
1d1d0 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 6f 6e  xpression has on
1d1e0 6c 79 20 76 61 72 69 61 62 6c 65 20 73 75 62 73  ly variable subs
1d1f0 74 69 74 75 74 69 6f 6e 73 20 28 61 6e 64 20 6e  titutions (and n
1d200 6f 74 20 63 6f 6d 6d 61 6e 64 20 73 75 62 73 74  ot command subst
1d210 69 74 75 74 69 6f 6e 73 29 2c 0a 22 6f 70 74 69  itutions),."opti
1d220 6d 69 73 74 69 63 22 20 66 61 73 74 20 63 6f 64  mistic" fast cod
1d230 65 20 69 73 20 67 65 6e 65 72 61 74 65 64 20 69  e is generated i
1d240 6e 6c 69 6e 65 2e 20 54 68 69 73 20 69 6e 6c 69  nline. This inli
1d250 6e 65 20 63 6f 64 65 20 77 69 6c 6c 20 66 61 69  ne code will fai
1d260 6c 20 69 66 20 61 0a 73 65 63 6f 6e 64 20 72 6f  l if a.second ro
1d270 75 6e 64 20 6f 66 20 73 75 62 73 74 69 74 75 74  und of substitut
1d280 69 6f 6e 73 20 69 73 20 6e 65 65 64 65 64 20 28  ions is needed (
1d290 69 2e 65 2e 2c 20 69 66 20 74 68 65 20 76 61 6c  i.e., if the val
1d2a0 75 65 20 6f 66 20 61 20 73 75 62 73 74 69 74 75  ue of a substitu
1d2b0 74 65 64 0a 76 61 72 69 61 62 6c 65 20 69 74 73  ted.variable its
1d2c0 65 6c 66 20 72 65 71 75 69 72 65 73 20 6d 6f 72  elf requires mor
1d2d0 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73 29  e substitutions)
1d2e0 2e 20 54 68 65 20 6f 70 74 69 6d 69 73 74 69 63  . The optimistic
1d2f0 20 63 6f 64 65 20 77 69 6c 6c 0a 63 61 74 63 68   code will.catch
1d300 20 74 68 65 20 65 72 72 6f 72 20 61 6e 64 20 62   the error and b
1d310 61 63 6b 20 6f 66 66 20 74 6f 20 63 61 6c 6c 20  ack off to call 
1d320 74 68 65 20 73 6c 6f 77 65 72 20 62 75 74 20 67  the slower but g
1d330 75 61 72 61 6e 74 65 65 64 20 63 6f 72 72 65 63  uaranteed correc
1d340 74 0a 65 78 70 72 20 63 6f 6d 6d 61 6e 64 20 70  t.expr command p
1d350 72 6f 63 65 64 75 72 65 2e 20 28 42 4c 29 0a 0a  rocedure. (BL)..
1d360 31 2f 31 36 2f 39 37 20 28 66 65 61 74 75 72 65  1/16/97 (feature
1d370 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29 20 41   improvements) A
1d380 64 64 65 64 20 54 63 6c 5f 45 78 70 72 4c 6f 6e  dded Tcl_ExprLon
1d390 67 4f 62 6a 20 61 6e 64 20 54 63 6c 5f 45 78 70  gObj and Tcl_Exp
1d3a0 72 44 6f 75 62 6c 65 4f 62 6a 0a 74 6f 20 72 6f  rDoubleObj.to ro
1d3b0 75 6e 64 20 6f 75 74 20 65 78 70 72 65 73 73 69  und out expressi
1d3c0 6f 6e 2d 72 65 6c 61 74 65 64 20 70 72 6f 63 65  on-related proce
1d3d0 64 75 72 65 73 2e 20 28 42 4c 29 0a 0a 31 2f 31  dures. (BL)..1/1
1d3e0 36 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68  6/97 (feature ch
1d3f0 61 6e 67 65 29 20 55 6e 64 65 72 20 57 69 6e 64  ange) Under Wind
1d400 6f 77 73 2c 20 61 74 20 73 74 61 72 74 75 70 20  ows, at startup 
1d410 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20  the environment 
1d420 76 61 72 69 61 62 6c 65 73 0a 22 70 61 74 68 22  variables."path"
1d430 2c 20 22 63 6f 6d 73 70 65 63 22 2c 20 61 6e 64  , "comspec", and
1d440 20 22 77 69 6e 64 69 72 22 20 69 6e 20 61 6e 79   "windir" in any
1d450 20 63 61 70 69 74 61 6c 69 7a 61 74 69 6f 6e 20   capitalization 
1d460 61 72 65 20 63 6f 6e 76 65 72 74 65 64 0a 61 75  are converted.au
1d470 74 6f 6d 61 74 69 63 61 6c 6c 79 20 74 6f 20 75  tomatically to u
1d480 70 70 65 72 20 63 61 73 65 2e 20 20 54 68 65 20  pper case.  The 
1d490 50 41 54 48 20 76 61 72 69 61 62 6c 65 20 63 6f  PATH variable co
1d4a0 75 6c 64 20 62 65 20 73 70 65 6c 6c 65 64 20 61  uld be spelled a
1d4b0 73 20 70 61 74 68 2c 0a 50 61 74 68 2c 20 50 61  s path,.Path, Pa
1d4c0 54 68 2c 20 65 74 63 2e 20 61 6e 64 20 69 74 20  Th, etc. and it 
1d4d0 6d 61 6b 65 73 20 70 72 6f 67 72 61 6d 6d 69 6e  makes programmin
1d4e0 67 20 72 61 74 68 65 72 20 61 6e 6e 6f 79 69 6e  g rather annoyin
1d4f0 67 2e 20 20 41 6c 6c 20 6f 74 68 65 72 0a 65 6e  g.  All other.en
1d500 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62  vironment variab
1d510 6c 65 73 20 61 72 65 20 6c 65 66 74 20 61 6c 6f  les are left alo
1d520 6e 65 2e 20 28 43 53 29 0a 0a 31 2f 32 30 2f 39  ne. (CS)..1/20/9
1d530 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 73 29  7 (new features)
1d540 20 52 65 77 72 6f 74 65 20 74 68 65 20 22 6c 73   Rewrote the "ls
1d550 6f 72 74 22 20 63 6f 6d 6d 61 6e 64 3a 0a 20 20  ort" command:.  
1d560 20 20 2d 20 54 68 65 20 6e 65 77 20 76 65 72 73    - The new vers
1d570 69 6f 6e 20 69 73 20 62 61 73 65 64 20 6f 6e 20  ion is based on 
1d580 72 65 65 6e 74 72 61 6e 74 20 6d 65 72 67 65 20  reentrant merge 
1d590 73 6f 72 74 20 63 6f 64 65 20 70 72 6f 76 69 64  sort code provid
1d5a0 65 64 0a 20 20 20 20 20 20 62 79 20 52 69 63 68  ed.      by Rich
1d5b0 61 72 64 20 48 69 70 70 2c 20 73 6f 20 69 74 20  ard Hipp, so it 
1d5c0 65 6c 69 6d 69 6e 61 74 65 73 20 74 68 65 20 72  eliminates the r
1d5d0 65 65 6e 74 72 61 6e 63 79 20 61 6e 64 20 73 74  eentrancy and st
1d5e0 61 62 69 6c 69 74 79 0a 20 20 20 20 20 20 70 72  ability.      pr
1d5f0 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 68 65 20  oblems with the 
1d600 6f 6c 64 20 71 73 6f 72 74 2d 62 61 73 65 64 20  old qsort-based 
1d610 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 0a  implementation..
1d620 20 20 20 20 2d 20 54 68 65 20 6e 65 77 20 76 65      - The new ve
1d630 72 73 69 6f 6e 20 73 75 70 70 6f 72 74 73 20 61  rsion supports a
1d640 20 2d 64 69 63 74 69 6f 6e 61 72 79 20 6f 70 74   -dictionary opt
1d650 69 6f 6e 20 66 6f 72 20 73 6f 72 74 69 6e 67 2c  ion for sorting,
1d660 20 61 6e 64 0a 20 20 20 20 20 20 69 74 20 61 6c   and.      it al
1d670 73 6f 20 73 75 70 70 6f 72 74 73 20 61 20 2d 69  so supports a -i
1d680 6e 64 65 78 20 6f 70 74 69 6f 6e 20 66 6f 72 20  ndex option for 
1d690 73 6f 72 74 69 6e 67 20 6c 69 73 74 73 20 75 73  sorting lists us
1d6a0 69 6e 67 20 6f 6e 65 0a 20 20 20 20 20 20 65 6c  ing one.      el
1d6b0 65 6d 65 6e 74 20 66 6f 72 20 63 6f 6d 70 61 72  ement for compar
1d6c0 69 73 6f 6e 2e 0a 20 20 20 20 2d 20 54 68 65 20  ison..    - The 
1d6d0 6e 65 77 20 76 65 72 73 69 6f 6e 20 69 73 20 61  new version is a
1d6e0 6e 20 6f 62 6a 65 63 74 20 63 6f 6d 6d 61 6e 64  n object command
1d6f0 2c 20 73 6f 20 69 74 20 77 6f 72 6b 73 20 77 65  , so it works we
1d700 6c 6c 20 77 69 74 68 20 74 68 65 0a 20 20 20 20  ll with the.    
1d710 20 20 54 63 6c 20 63 6f 6d 70 69 6c 65 72 2c 20    Tcl compiler, 
1d720 65 73 70 65 63 69 61 6c 6c 79 20 69 6e 20 63 6f  especially in co
1d730 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20 74  njunction with t
1d740 68 65 20 6e 65 77 20 2d 69 6e 64 65 78 0a 20 20  he new -index.  
1d750 20 20 20 20 6f 70 74 69 6f 6e 2e 20 20 57 68 65      option.  Whe
1d760 6e 20 74 68 65 20 2d 69 6e 64 65 78 20 6f 70 74  n the -index opt
1d770 69 6f 6e 20 69 73 20 75 73 65 64 2c 20 74 68 69  ion is used, thi
1d780 73 20 76 65 72 73 69 6f 6e 20 6f 66 20 6c 73 6f  s version of lso
1d790 72 74 0a 20 20 20 20 20 20 69 73 20 6d 6f 72 65  rt.      is more
1d7a0 20 74 68 61 6e 20 31 30 30 20 74 69 6d 65 73 20   than 100 times 
1d7b0 66 61 73 74 65 72 20 74 68 61 6e 20 74 68 65 20  faster than the 
1d7c0 54 63 6c 20 37 2e 36 20 6c 73 6f 72 74 2c 20 77  Tcl 7.6 lsort, w
1d7d0 68 69 63 68 20 68 61 64 0a 20 20 20 20 20 20 74  hich had.      t
1d7e0 6f 20 75 73 65 20 74 68 65 20 2d 63 6f 6d 6d 61  o use the -comma
1d7f0 6e 64 20 6f 70 74 69 6f 6e 20 74 6f 20 67 65 74  nd option to get
1d800 20 74 68 65 20 73 61 6d 65 20 65 66 66 65 63 74   the same effect
1d810 2e 20 28 4a 4f 29 0a 0a 31 2f 32 30 2f 39 37 20  . (JO)..1/20/97 
1d820 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76 65  (feature improve
1d830 6d 65 6e 74 73 29 20 41 64 64 65 64 20 74 68 65  ments) Added the
1d840 20 69 6d 70 72 6f 76 65 64 20 64 65 62 75 67 67   improved debugg
1d850 69 6e 67 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ing support for 
1d860 54 63 6c 0a 6f 62 6a 65 63 74 73 20 70 72 6f 74  Tcl.objects prot
1d870 6f 74 79 70 65 64 20 62 79 20 4b 61 72 6c 20 4c  otyped by Karl L
1d880 65 68 65 6e 62 61 75 65 72 20 3c 6b 61 72 6c 40  ehenbauer <[email protected]
1d890 68 61 6d 6d 65 72 31 2e 6f 70 73 2e 4e 65 6f 53  hammer1.ops.NeoS
1d8a0 6f 66 74 2e 63 6f 6d 3e 2e 0a 49 66 20 54 43 4c  oft.com>..If TCL
1d8b0 5f 4d 45 4d 5f 44 45 42 55 47 20 69 73 20 64 65  _MEM_DEBUG is de
1d8c0 66 69 6e 65 64 2c 20 74 68 65 20 6f 62 6a 65 63  fined, the objec
1d8d0 74 20 63 72 65 61 74 69 6f 6e 20 63 61 6c 6c 73  t creation calls
1d8e0 20 75 73 65 20 54 63 6c 5f 44 62 43 6b 61 6c 6c   use Tcl_DbCkall
1d8f0 6f 63 0a 64 69 72 65 63 74 6c 79 20 69 6e 20 6f  oc.directly in o
1d900 72 64 65 72 20 74 6f 20 72 65 63 6f 72 64 20 74  rder to record t
1d910 68 65 20 63 61 6c 6c 65 72 27 73 20 73 6f 75 72  he caller's sour
1d920 63 65 20 66 69 6c 65 20 6e 61 6d 65 20 61 6e 64  ce file name and
1d930 20 6c 69 6e 65 0a 6e 75 6d 62 65 72 2e 20 28 42   line.number. (B
1d940 4c 29 0a 0a 31 2f 32 31 2f 39 37 20 28 72 65 6d  L)..1/21/97 (rem
1d950 6f 76 65 64 20 66 65 61 74 75 72 65 29 20 44 65  oved feature) De
1d960 73 75 70 70 6f 72 74 65 64 20 74 68 65 20 74 63  supported the tc
1d970 6c 5f 70 72 65 63 69 73 69 6f 6e 20 76 61 72 69  l_precision vari
1d980 61 62 6c 65 3a 20 69 66 0a 73 65 74 2c 20 69 74  able: if.set, it
1d990 20 69 73 20 69 67 6e 6f 72 65 64 2e 20 20 54 63   is ignored.  Tc
1d9a0 6c 20 6e 6f 77 20 75 73 65 73 20 74 68 65 20 66  l now uses the f
1d9b0 75 6c 6c 20 31 37 20 64 69 67 69 74 73 20 6f 66  ull 17 digits of
1d9c0 20 70 72 65 63 69 73 69 6f 6e 20 77 68 65 6e 0a   precision when.
1d9d0 63 6f 6e 76 65 72 74 69 6e 67 20 72 65 61 6c 20  converting real 
1d9e0 6e 75 6d 62 65 72 73 20 74 6f 20 73 74 72 69 6e  numbers to strin
1d9f0 67 73 20 28 77 69 74 68 20 74 68 65 20 6e 65 77  gs (with the new
1da00 20 6f 62 6a 65 63 74 20 73 79 73 74 65 6d 20 72   object system r
1da10 65 61 6c 0a 6e 75 6d 62 65 72 73 20 61 72 65 20  eal.numbers are 
1da20 72 61 72 65 6c 79 20 63 6f 6e 76 65 72 74 65 64  rarely converted
1da30 20 74 6f 20 73 74 72 69 6e 67 73 20 73 6f 20 74   to strings so t
1da40 68 65 72 65 20 69 73 20 6e 6f 20 65 66 66 69 63  here is no effic
1da50 69 65 6e 63 79 0a 64 69 73 61 64 76 61 6e 74 61  iency.disadvanta
1da60 67 65 20 74 6f 20 70 72 69 6e 74 69 6e 67 20 61  ge to printing a
1da70 6c 6c 20 31 37 20 64 69 67 69 74 73 3b 20 74 68  ll 17 digits; th
1da80 65 20 6e 65 77 20 73 63 68 65 6d 65 20 69 6d 70  e new scheme imp
1da90 72 6f 76 65 73 0a 61 63 63 75 72 61 63 79 20 61  roves.accuracy a
1daa0 6e 64 20 73 69 6d 70 6c 69 66 69 65 73 20 73 65  nd simplifies se
1dab0 76 65 72 61 6c 20 41 50 49 73 29 2e 20 28 4a 4f  veral APIs). (JO
1dac0 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
1dad0 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
1dae0 2a 2a 2a 0a 0a 31 2f 32 31 2f 39 37 20 28 66 65  ***..1/21/97 (fe
1daf0 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65  ature change) Re
1db00 6d 6f 76 65 64 20 74 68 65 20 22 69 6e 74 65 72  moved the "inter
1db10 70 22 20 61 72 67 75 6d 65 6e 74 20 66 6f 72 20  p" argument for 
1db20 74 68 65 0a 70 72 6f 63 65 64 75 72 65 73 20 54  the.procedures T
1db30 63 6c 5f 47 65 74 53 74 72 69 6e 67 46 72 6f 6d  cl_GetStringFrom
1db40 4f 62 6a 2c 20 54 63 6c 5f 53 74 72 69 6e 67 4f  Obj, Tcl_StringO
1db50 62 6a 41 70 70 65 6e 64 2c 20 61 6e 64 0a 54 63  bjAppend, and.Tc
1db60 6c 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65 6e  l_StringObjAppen
1db70 64 4f 62 6a 2e 20 20 41 6c 73 6f 20 72 65 6d 6f  dObj.  Also remo
1db80 76 65 64 20 74 68 65 20 22 69 6e 74 65 72 70 22  ved the "interp"
1db90 20 61 72 67 75 6d 65 6e 74 20 66 6f 72 0a 74 68   argument for.th
1dba0 65 20 75 70 64 61 74 65 53 74 72 69 6e 67 50 72  e updateStringPr
1dbb0 6f 63 20 70 72 6f 63 65 64 75 72 65 20 69 6e 20  oc procedure in 
1dbc0 54 63 6c 5f 4f 62 6a 54 79 70 65 20 73 74 72 75  Tcl_ObjType stru
1dbd0 63 74 75 72 65 73 2e 20 20 57 69 74 68 0a 74 68  ctures.  With.th
1dbe0 65 20 74 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20  e tcl_precision 
1dbf0 63 68 61 6e 67 65 73 20 61 62 6f 76 65 2c 20 74  changes above, t
1dc00 68 65 73 65 20 61 72 65 20 6e 6f 20 6c 6f 6e 67  hese are no long
1dc10 65 72 20 6e 65 65 64 65 64 2e 20 28 4a 4f 29 0a  er needed. (JO).
1dc20 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
1dc30 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
1dc40 74 68 20 54 63 6c 20 38 2e 30 61 31 2c 20 62 75  th Tcl 8.0a1, bu
1dc50 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37  t not with Tcl 7
1dc60 2e 36 20 2a 2a 2a 0a 0a 31 2f 32 32 2f 39 37 20  .6 ***..1/22/97 
1dc70 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1dc80 68 74 74 70 2e 74 63 6c 20 73 6f 20 74 68 61 74  http.tcl so that
1dc90 20 68 74 74 70 5f 72 65 73 65 74 20 64 6f 65 73   http_reset does
1dca0 20 6e 6f 74 20 72 65 73 75 6c 74 20 69 6e 0a 61   not result in.a
1dcb0 6e 20 65 78 74 72 61 20 63 61 6c 6c 20 74 6f 20  n extra call to 
1dcc0 74 68 65 20 63 6f 6d 6d 61 6e 64 20 63 61 6c 6c  the command call
1dcd0 62 61 63 6b 2e 20 20 49 6e 20 61 64 64 69 74 69  back.  In additi
1dce0 6f 6e 2c 20 69 66 20 74 68 65 20 74 72 61 6e 73  on, if the trans
1dcf0 61 63 74 69 6f 6e 0a 67 65 74 73 20 61 20 70 72  action.gets a pr
1dd00 65 6d 61 74 75 72 65 20 65 6f 66 2c 20 74 68 65  emature eof, the
1dd10 20 73 74 61 74 65 28 73 74 61 74 75 73 29 20 69   state(status) i
1dd20 73 20 22 65 6f 66 22 2c 20 6e 6f 74 20 22 6f 6b  s "eof", not "ok
1dd30 22 2e 20 28 42 57 29 0a 0a 2d 2d 2d 2d 2d 2d 2d  ". (BW)..-------
1dd40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
1dd50 73 65 64 20 38 2e 30 61 32 2c 20 31 2f 32 34 2f  sed 8.0a2, 1/24/
1dd60 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  97 -------------
1dd70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 2f 32 39  ----------..1/29
1dd80 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68 61  /97 (feature cha
1dd90 6e 67 65 29 20 43 68 61 6e 67 65 64 20 68 6f 77  nge) Changed how
1dda0 20 74 77 6f 20 64 69 67 69 74 20 79 65 61 72 73   two digit years
1ddb0 20 61 72 65 20 70 61 72 73 65 64 20 69 6e 20 74   are parsed in t
1ddc0 68 65 0a 63 6c 6f 63 6b 20 63 6f 6d 6d 61 6e 64  he.clock command
1ddd0 2e 20 20 54 68 65 20 6f 6c 64 20 69 6e 74 65 72  .  The old inter
1dde0 66 61 63 65 20 6a 75 73 74 20 61 64 64 65 64 20  face just added 
1ddf0 31 39 30 30 20 77 68 69 63 68 20 77 69 6c 6c 20  1900 which will 
1de00 73 65 65 6d 0a 62 72 6f 6b 65 6e 20 62 79 20 74  seem.broken by t
1de10 68 65 20 79 65 61 72 20 32 30 30 30 2e 20 20 54  he year 2000.  T
1de20 68 65 20 6e 65 77 20 73 63 68 65 6d 65 20 66 6f  he new scheme fo
1de30 6c 6c 6f 77 73 20 74 68 65 20 50 4f 53 49 58 20  llows the POSIX 
1de40 73 74 61 6e 64 61 72 64 0a 61 6e 64 20 74 72 65  standard.and tre
1de50 61 74 73 20 64 61 74 65 73 20 37 30 2d 39 39 20  ats dates 70-99 
1de60 61 73 20 31 39 37 30 2d 31 39 39 39 20 61 6e 64  as 1970-1999 and
1de70 20 64 61 74 65 73 20 30 30 2d 33 38 20 61 73 20   dates 00-38 as 
1de80 32 30 30 30 2d 32 30 33 38 2e 20 20 41 6c 6c 0a  2000-2038.  All.
1de90 6f 74 68 65 72 20 74 77 6f 20 64 69 67 69 74 20  other two digit 
1dea0 64 61 74 65 73 20 61 72 65 20 75 6e 64 65 66 69  dates are undefi
1deb0 6e 65 64 2e 20 28 52 4a 29 0a 2a 2a 2a 20 50 4f  ned. (RJ).*** PO
1dec0 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
1ded0 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 2f 34  IBILITY ***..2/4
1dee0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
1def0 78 65 64 20 62 75 67 20 69 6e 20 63 6c 6f 63 6b  xed bug in clock
1df00 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c 74   code that dealt
1df10 20 77 69 74 68 20 72 65 6c 61 74 69 76 65 0a 64   with relative.d
1df20 61 74 65 73 2e 20 20 55 73 69 6e 67 20 74 68 65  ates.  Using the
1df30 20 72 65 6c 61 74 69 76 65 20 6d 6f 6e 74 68 20   relative month 
1df40 63 6f 64 65 20 79 6f 75 20 63 6f 75 6c 64 20 67  code you could g
1df50 65 74 20 61 6e 20 69 6e 76 61 6c 69 64 20 64 61  et an invalid da
1df60 74 65 0a 62 65 63 61 75 73 65 20 69 74 20 6a 75  te.because it ju
1df70 6d 70 65 64 20 69 6e 74 6f 20 61 20 6e 6f 6e 2d  mped into a non-
1df80 65 78 69 73 74 61 6e 74 20 64 61 79 2e 20 20 28  existant day.  (
1df90 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 4a 61 6e  For example, Jan
1dfa0 20 33 31 0a 74 6f 20 46 65 62 20 33 31 2e 29 20   31.to Feb 31.) 
1dfb0 20 54 68 65 20 63 6f 64 65 20 6e 6f 77 20 77 69   The code now wi
1dfc0 6c 6c 20 72 65 74 75 72 6e 20 74 68 65 20 6c 61  ll return the la
1dfd0 73 74 20 76 61 6c 69 64 20 64 61 79 20 6f 66 20  st valid day of 
1dfe0 74 68 65 0a 6d 6f 6e 74 68 20 69 6e 20 74 68 65  the.month in the
1dff0 73 65 20 73 69 74 75 61 74 69 6f 6e 73 2e 20 20  se situations.  
1e000 54 68 61 6e 6b 73 20 74 6f 20 48 75 6d 65 20 53  Thanks to Hume S
1e010 6d 69 74 68 20 66 6f 72 20 73 65 6e 64 69 6e 67  mith for sending
1e020 20 69 6e 0a 74 68 69 73 20 62 75 67 20 66 69 78   in.this bug fix
1e030 2e 20 20 28 52 4a 29 0a 0a 32 2f 31 30 2f 39 37  .  (RJ)..2/10/97
1e040 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
1e050 29 20 45 6c 69 6d 69 6e 61 74 65 64 20 54 63 6c  ) Eliminated Tcl
1e060 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65 6e 64  _StringObjAppend
1e070 20 61 6e 64 20 0a 54 63 6c 5f 53 74 72 69 6e 67   and .Tcl_String
1e080 4f 62 6a 41 70 70 65 6e 64 4f 62 6a 20 70 72 6f  ObjAppendObj pro
1e090 63 65 64 75 72 65 73 2c 20 72 65 70 6c 61 63 65  cedures, replace
1e0a0 64 20 74 68 65 6d 20 77 69 74 68 20 54 63 6c 5f  d them with Tcl_
1e0b0 41 70 70 65 6e 64 54 6f 4f 62 6a 0a 61 6e 64 20  AppendToObj.and 
1e0c0 54 63 6c 5f 41 70 70 65 6e 64 53 74 72 69 6e 67  Tcl_AppendString
1e0d0 73 54 6f 4f 62 6a 20 70 72 6f 63 65 64 75 72 65  sToObj procedure
1e0e0 73 2e 20 20 41 64 64 65 64 20 6e 65 77 20 70 72  s.  Added new pr
1e0f0 6f 63 65 64 75 72 65 0a 54 63 6c 5f 53 65 74 4f  ocedure.Tcl_SetO
1e100 62 6a 4c 65 6e 67 74 68 2e 20 28 4a 4f 29 0a 2a  bjLength. (JO).*
1e110 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
1e120 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
1e130 68 20 54 63 6c 20 38 2e 30 61 32 2c 20 62 75 74  h Tcl 8.0a2, but
1e140 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e   not with Tcl 7.
1e150 36 20 2a 2a 2a 0a 0a 32 2f 31 30 2f 39 37 20 28  6 ***..2/10/97 (
1e160 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
1e170 65 64 20 54 63 6c 5f 57 72 6f 6e 67 4e 75 6d 41  ed Tcl_WrongNumA
1e180 72 67 73 20 70 72 6f 63 65 64 75 72 65 20 66 6f  rgs procedure fo
1e190 72 20 67 65 6e 65 72 61 74 69 6e 67 0a 65 72 72  r generating.err
1e1a0 6f 72 20 6d 65 73 73 61 67 65 73 20 61 62 6f 75  or messages abou
1e1b0 74 20 69 6e 63 6f 72 72 65 63 74 20 6e 75 6d 62  t incorrect numb
1e1c0 65 72 20 6f 66 20 61 72 67 75 6d 65 6e 74 73 2e  er of arguments.
1e1d0 20 28 4a 4f 29 0a 0a 32 2f 31 31 2f 39 37 20 28   (JO)..2/11/97 (
1e1e0 6e 65 77 20 66 65 61 74 75 72 65 2c 20 62 75 67  new feature, bug
1e1f0 20 66 69 78 29 20 68 74 74 70 20 70 61 63 6b 61   fix) http packa
1e200 67 65 2e 20 20 41 64 64 65 64 20 2d 61 63 63 65  ge.  Added -acce
1e210 70 74 20 74 6f 20 68 74 74 70 5f 63 6f 6e 66 69  pt to http_confi
1e220 67 0a 73 6f 20 79 6f 75 20 63 61 6e 20 73 65 74  g.so you can set
1e230 20 74 68 65 20 41 63 63 65 70 74 20 68 65 61 64   the Accept head
1e240 65 72 2e 20 20 41 64 64 65 64 20 2d 68 61 6e 64  er.  Added -hand
1e250 6c 65 72 20 6f 70 74 69 6f 6e 20 74 6f 20 68 74  ler option to ht
1e260 74 70 5f 67 65 74 20 73 6f 0a 79 6f 75 20 63 61  tp_get so.you ca
1e270 6e 20 73 75 70 70 6c 79 20 79 6f 75 72 20 6f 77  n supply your ow
1e280 6e 20 64 61 74 61 20 68 61 6e 64 6c 65 72 2e 20  n data handler. 
1e290 20 41 6c 73 6f 20 66 69 78 65 64 20 50 4f 53 54   Also fixed POST
1e2a0 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 0a 73 65   operation to.se
1e2b0 74 20 74 68 65 20 63 6f 72 72 65 63 74 20 4d 49  t the correct MI
1e2c0 4d 45 20 74 79 70 65 20 6f 6e 20 74 68 65 20 72  ME type on the r
1e2d0 65 71 75 65 73 74 2e 20 28 42 57 29 0a 0a 32 2f  equest. (BW)..2/
1e2e0 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  22/97 (bug fix) 
1e2f0 46 69 78 65 64 20 62 75 67 20 74 68 61 74 20 63  Fixed bug that c
1e300 61 75 73 65 64 20 24 74 63 6c 5f 70 6c 61 74 66  aused $tcl_platf
1e310 6f 72 6d 28 6f 73 56 65 72 73 69 6f 6e 29 20 74  orm(osVersion) t
1e320 6f 20 62 65 0a 63 6f 6d 70 75 74 65 64 20 69 6e  o be.computed in
1e330 63 6f 72 72 65 63 74 6c 79 20 75 6e 64 65 72 20  correctly under 
1e340 41 49 58 2e 20 28 4a 4f 29 0a 0a 32 2f 32 35 2f  AIX. (JO)..2/25/
1e350 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 2c  97 (new feature,
1e360 20 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29   feature change)
1e370 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   Added support f
1e380 6f 72 20 62 6f 74 68 20 69 6e 74 20 61 6e 64 20  or both int and 
1e390 6c 6f 6e 67 0a 69 6e 74 65 67 65 72 20 6f 62 6a  long.integer obj
1e3a0 65 63 74 73 2e 20 41 64 64 65 64 20 54 63 6c 5f  ects. Added Tcl_
1e3b0 4e 65 77 4c 6f 6e 67 4f 62 6a 2f 54 63 6c 5f 47  NewLongObj/Tcl_G
1e3c0 65 74 4c 6f 6e 67 46 72 6f 6d 4f 62 6a 2f 54 63  etLongFromObj/Tc
1e3d0 6c 5f 53 65 74 4c 6f 6e 67 46 72 6f 6d 4f 62 6a  l_SetLongFromObj
1e3e0 0a 70 72 6f 63 65 64 75 72 65 73 20 61 6e 64 20  .procedures and 
1e3f0 72 65 6e 61 6d 65 64 20 74 68 65 20 54 63 6c 5f  renamed the Tcl_
1e400 4f 62 6a 20 69 6e 74 65 72 6e 61 6c 52 65 70 20  Obj internalRep 
1e410 69 6e 74 56 61 6c 75 65 20 6d 65 6d 62 65 72 20  intValue member 
1e420 74 6f 0a 6c 6f 6e 67 56 61 6c 75 65 2e 20 54 63  to.longValue. Tc
1e430 6c 5f 47 65 74 49 6e 74 46 72 6f 6d 4f 62 6a 20  l_GetIntFromObj 
1e440 6e 6f 77 20 63 68 65 63 6b 73 20 66 6f 72 20 69  now checks for i
1e450 6e 74 65 67 65 72 20 76 61 6c 75 65 73 20 74 6f  nteger values to
1e460 6f 20 6c 61 72 67 65 20 74 6f 0a 72 65 70 72 65  o large to.repre
1e470 73 65 6e 74 20 61 73 20 6e 6f 6e 2d 6c 6f 6e 67  sent as non-long
1e480 20 69 6e 74 65 67 65 72 73 2e 20 43 68 61 6e 67   integers. Chang
1e490 65 64 20 54 63 6c 5f 47 65 74 41 6c 6c 4f 62 6a  ed Tcl_GetAllObj
1e4a0 54 79 70 65 73 20 74 6f 0a 54 63 6c 5f 41 70 70  Types to.Tcl_App
1e4b0 65 6e 64 41 6c 6c 4f 62 6a 54 79 70 65 73 2e 20  endAllObjTypes. 
1e4c0 28 42 4c 29 0a 0a 33 2f 35 2f 39 37 20 28 6e 65  (BL)..3/5/97 (ne
1e4d0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
1e4e0 20 6e 65 77 20 54 63 6c 5f 53 65 74 4c 69 73 74   new Tcl_SetList
1e4f0 4f 62 6a 20 70 72 6f 63 65 64 75 72 65 20 74 6f  Obj procedure to
1e500 20 72 6f 75 6e 64 20 6f 75 74 0a 63 6f 6c 6c 65   round out.colle
1e510 63 74 69 6f 6e 20 6f 66 20 70 72 6f 63 65 64 75  ction of procedu
1e520 72 65 73 20 74 68 61 74 20 73 65 74 20 74 68 65  res that set the
1e530 20 74 79 70 65 20 61 6e 64 20 76 61 6c 75 65 20   type and value 
1e540 6f 66 20 65 78 69 73 74 69 6e 67 20 54 63 6c 0a  of existing Tcl.
1e550 6f 62 6a 65 63 74 73 2e 20 28 42 4c 29 0a 0a 33  objects. (BL)..3
1e560 2f 36 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75  /6/97 (new featu
1e570 72 65 29 20 41 64 64 65 64 20 2d 67 6c 6f 62 61  re) Added -globa
1e580 6c 20 66 6c 61 67 20 66 6f 72 20 69 6e 74 65 72  l flag for inter
1e590 70 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 2e 20  p invokehidden. 
1e5a0 28 4a 4c 29 0a 0a 33 2f 36 2f 39 37 20 28 6e 65  (JL)..3/6/97 (ne
1e5b0 77 20 66 65 61 74 75 72 65 2c 20 66 65 61 74 75  w feature, featu
1e5c0 72 65 20 63 68 61 6e 67 65 29 20 41 64 64 65 64  re change) Added
1e5d0 20 69 73 4e 61 74 69 76 65 4f 62 6a 65 63 74 50   isNativeObjectP
1e5e0 72 6f 63 20 66 69 65 6c 64 20 74 6f 20 74 68 65  roc field to the
1e5f0 0a 54 63 6c 5f 43 6d 64 49 6e 66 6f 20 73 74 72  .Tcl_CmdInfo str
1e600 75 63 74 75 72 65 20 74 6f 20 69 6e 64 69 63 61  ucture to indica
1e610 74 65 20 28 77 68 65 6e 20 31 29 20 69 66 20 74  te (when 1) if t
1e620 68 65 20 63 6f 6d 6d 61 6e 64 20 68 61 73 20 61  he command has a
1e630 6e 0a 6f 62 6a 65 63 74 2d 62 61 73 65 64 20 63  n.object-based c
1e640 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75 72 65  ommand procedure
1e650 2e 20 52 65 6d 6f 76 65 64 20 74 68 65 20 6e 61  . Removed the na
1e660 6d 65 4c 65 6e 67 74 68 20 61 72 67 20 66 72 6f  meLength arg fro
1e670 6d 0a 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a 43  m.Tcl_CreateObjC
1e680 6f 6d 6d 61 6e 64 20 73 69 6e 63 65 20 63 6f 6d  ommand since com
1e690 6d 61 6e 64 20 6e 61 6d 65 73 20 63 61 6e 27 74  mand names can't
1e6a0 20 63 6f 6e 74 61 69 6e 20 6e 75 6c 6c 20 63 68   contain null ch
1e6b0 61 72 61 63 74 65 72 73 2e 20 28 42 4c 29 0a 0a  aracters. (BL)..
1e6c0 33 2f 36 2f 39 37 20 28 62 75 67 20 66 69 78 29  3/6/97 (bug fix)
1e6d0 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 75   Fixed bug in "u
1e6e0 6e 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72  nknown" procedur
1e6f0 65 20 74 68 61 74 20 63 61 75 73 65 64 20 61 75  e that caused au
1e700 74 6f 2d 0a 6c 6f 61 64 69 6e 67 20 74 6f 20 66  to-.loading to f
1e710 61 69 6c 20 6f 6e 20 63 6f 6d 6d 61 6e 64 73 20  ail on commands 
1e720 77 68 6f 73 65 20 6e 61 6d 65 73 20 62 65 67 69  whose names begi
1e730 6e 20 77 69 74 68 20 64 69 67 69 74 73 2e 20 28  n with digits. (
1e740 4a 4f 29 0a 0a 33 2f 37 2f 39 37 20 28 62 75 67  JO)..3/7/97 (bug
1e750 20 66 69 78 29 20 41 75 74 6f 2d 6c 6f 61 64 69   fix) Auto-loadi
1e760 6e 67 20 6e 6f 77 20 77 6f 72 6b 73 20 69 6e 20  ng now works in 
1e770 53 61 66 65 20 42 61 73 65 2e 20 53 61 66 65 20  Safe Base. Safe 
1e780 69 6e 74 65 72 70 72 65 74 65 72 73 0a 6f 6e 6c  interpreters.onl
1e790 79 20 61 63 63 65 70 74 20 74 68 65 20 56 65 72  y accept the Ver
1e7a0 73 69 6f 6e 20 32 20 61 6e 64 20 6f 6e 77 61 72  sion 2 and onwar
1e7b0 64 73 20 74 63 6c 49 6e 64 65 78 20 66 69 6c 65  ds tclIndex file
1e7c0 73 2e 20 28 4a 4c 29 0a 0a 33 2f 31 33 2f 39 37  s. (JL)..3/13/97
1e7d0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1e7e0 20 63 6f 72 65 20 64 75 6d 70 20 64 75 65 20 74   core dump due t
1e7f0 6f 20 69 6e 74 65 72 61 63 74 69 6f 6e 20 62 65  o interaction be
1e800 74 77 65 65 6e 20 61 6c 69 61 73 65 73 20 61 6e  tween aliases an
1e810 64 0a 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64  d.hidden command
1e820 73 2e 20 42 75 67 20 66 6f 75 6e 64 20 62 79 20  s. Bug found by 
1e830 4c 69 6e 64 73 61 79 20 4d 61 72 73 68 61 6c 6c  Lindsay Marshall
1e840 2e 20 28 4a 4c 29 0a 0a 33 2f 31 34 2f 39 37 20  . (JL)..3/14/97 
1e850 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1e860 6d 61 63 20 62 75 67 73 20 72 65 6c 61 74 69 6e  mac bugs relatin
1e870 67 20 74 6f 20 74 69 6d 65 2e 20 20 54 68 65 20  g to time.  The 
1e880 2d 67 6d 74 20 6f 70 74 69 6f 6e 0a 6e 6f 77 20  -gmt option.now 
1e890 61 64 6a 75 73 74 73 20 74 68 65 20 74 69 6d 65  adjusts the time
1e8a0 20 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74 20   in the correct 
1e8b0 64 69 72 65 63 74 69 6f 6e 2e 20 20 28 54 68 61  direction.  (Tha
1e8c0 6e 6b 73 20 74 6f 20 45 64 20 48 75 6d 65 20 66  nks to Ed Hume f
1e8d0 6f 72 0a 72 65 70 6f 72 74 69 6e 67 20 61 20 66  or.reporting a f
1e8e0 69 78 20 74 6f 20 74 68 69 73 20 70 72 6f 62 6c  ix to this probl
1e8f0 65 6d 2e 29 20 20 41 6c 73 6f 20 66 69 78 65 64  em.)  Also fixed
1e900 20 66 69 6c 65 20 22 6d 74 69 6d 65 22 20 65 74   file "mtime" et
1e910 63 2e 20 74 6f 0a 72 65 74 75 72 6e 20 74 69 6d  c. to.return tim
1e920 65 73 20 66 72 6f 6d 20 47 4d 54 20 72 61 74 68  es from GMT rath
1e930 65 72 20 74 68 61 6e 20 6c 6f 63 61 6c 20 74 69  er than local ti
1e940 6d 65 20 7a 6f 6e 65 2e 20 20 28 52 4a 29 0a 0a  me zone.  (RJ)..
1e950 33 2f 31 38 2f 39 37 20 28 66 65 61 74 75 72 65  3/18/97 (feature
1e960 20 63 68 61 6e 67 65 29 20 44 65 63 6c 61 72 61   change) Declara
1e970 74 69 6f 6e 20 6f 66 20 6f 62 6a 76 20 69 6e 20  tion of objv in 
1e980 54 63 6c 5f 4f 62 6a 43 6d 64 50 72 6f 63 20 66  Tcl_ObjCmdProc f
1e990 75 6e 63 74 69 6f 6e 0a 63 68 61 6e 67 65 64 20  unction.changed 
1e9a0 66 72 6f 6d 20 22 54 63 6c 5f 4f 62 6a 20 2a 6f  from "Tcl_Obj *o
1e9b0 62 6a 76 5b 5d 22 20 74 6f 20 22 54 63 6c 5f 4f  bjv[]" to "Tcl_O
1e9c0 62 6a 20 2a 43 4f 4e 53 54 20 6f 62 6a 76 5b 5d  bj *CONST objv[]
1e9d0 22 2e 20 20 41 6c 6c 20 54 63 6c 20 6f 62 6a 65  ".  All Tcl obje
1e9e0 63 74 0a 63 6f 6d 6d 61 6e 64 73 20 63 68 61 6e  ct.commands chan
1e9f0 67 65 64 20 74 6f 20 75 73 65 20 6e 65 77 20 64  ged to use new d
1ea00 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66 20 6f 62  eclaration of ob
1ea10 6a 76 2e 20 20 4e 61 69 76 65 20 74 72 61 6e 73  jv.  Naive trans
1ea20 6c 61 74 69 6f 6e 20 6f 66 0a 73 74 72 69 6e 67  lation of.string
1ea30 2d 62 61 73 65 64 20 63 6f 6d 6d 61 6e 64 20 70  -based command p
1ea40 72 6f 63 73 20 74 6f 20 6f 62 6a 65 63 74 2d 62  rocs to object-b
1ea50 61 73 65 64 20 63 6f 6d 6d 61 6e 64 20 70 72 6f  ased command pro
1ea60 63 73 20 63 6f 75 6c 64 20 76 65 72 79 20 65 61  cs could very ea
1ea70 73 69 6c 79 0a 68 61 76 65 20 79 69 65 6c 64 65  sily.have yielde
1ea80 64 20 63 6f 64 65 20 77 68 65 72 65 20 74 68 65  d code where the
1ea90 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68 65   contents of the
1eaa0 20 6f 62 6a 76 20 61 72 72 61 79 20 77 65 72 65   objv array were
1eab0 20 63 68 61 6e 67 65 64 2e 20 20 54 68 69 73 0a   changed.  This.
1eac0 69 73 20 6e 6f 74 20 61 20 70 72 6f 62 6c 65 6d  is not a problem
1ead0 20 77 69 74 68 20 73 74 72 69 6e 67 2d 62 61 73   with string-bas
1eae0 65 64 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 73  ed command procs
1eaf0 2c 20 62 75 74 20 64 6f 69 6e 67 20 73 6f 6d 65  , but doing some
1eb00 74 68 69 6e 67 20 61 73 0a 73 69 6d 70 6c 65 20  thing as.simple 
1eb10 61 73 20 6f 62 6a 76 5b 32 5d 20 3d 20 6f 62 6a  as objv[2] = obj
1eb20 76 5b 33 5d 20 77 6f 75 6c 64 20 63 6f 72 72 75  v[3] would corru
1eb30 70 74 20 74 68 65 20 72 75 6e 74 69 6d 65 20 73  pt the runtime s
1eb40 74 61 63 6b 20 61 6e 64 20 63 61 75 73 65 20 54  tack and cause T
1eb50 63 6c 20 74 6f 0a 63 72 61 73 68 2e 20 20 49 6e  cl to.crash.  In
1eb60 74 72 6f 64 75 63 65 64 20 43 4f 4e 53 54 20 69  troduced CONST i
1eb70 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66  n declaration of
1eb80 20 6f 62 6a 76 20 73 6f 20 74 68 61 74 20 61 74   objv so that at
1eb90 74 65 6d 70 74 65 64 20 61 73 73 69 67 6e 6d 65  tempted assignme
1eba0 6e 74 0a 6f 66 20 6e 65 77 20 70 6f 69 6e 74 65  nt.of new pointe
1ebb0 72 20 76 61 6c 75 65 73 20 74 6f 20 65 6c 65 6d  r values to elem
1ebc0 65 6e 74 73 20 6f 66 20 74 68 65 20 6f 62 6a 76  ents of the objv
1ebd0 20 61 72 72 61 79 20 77 69 6c 6c 20 62 65 20 63   array will be c
1ebe0 61 75 67 68 74 20 62 79 20 74 68 65 0a 63 6f 6d  aught by the.com
1ebf0 70 69 6c 65 72 2e 20 28 43 43 53 29 0a 2a 2a 2a  piler. (CCS).***
1ec00 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
1ec10 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
1ec20 54 63 6c 20 38 2e 30 61 32 20 2a 2a 2a 0a 0a 33  Tcl 8.0a2 ***..3
1ec30 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  /19/97 (bug fix)
1ec40 20 46 69 78 65 64 20 70 61 6e 69 63 20 64 75 65   Fixed panic due
1ec50 20 74 6f 20 6f 62 6a 65 63 74 20 73 68 61 72 69   to object shari
1ec60 6e 67 2e 20 54 68 65 20 72 6f 6f 74 20 63 61 75  ng. The root cau
1ec70 73 65 20 77 61 73 0a 74 68 61 74 20 6f 6c 64 20  se was.that old 
1ec80 63 6f 64 65 20 77 61 73 20 75 73 69 6e 67 20 54  code was using T
1ec90 63 6c 5f 52 65 73 65 74 52 65 73 75 6c 74 20 69  cl_ResetResult i
1eca0 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f 52 65  nstead of Tcl_Re
1ecb0 73 65 74 4f 62 6a 52 65 73 75 6c 74 2e 20 28 4a  setObjResult. (J
1ecc0 4c 29 0a 0a 33 2f 32 30 2f 39 37 20 28 6e 65 77  L)..3/20/97 (new
1ecd0 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
1ece0 61 20 6e 65 77 20 73 75 62 63 6f 6d 6d 61 6e 64  a new subcommand
1ecf0 20 66 6f 72 20 74 68 65 20 66 69 6c 65 0a 63 6f   for the file.co
1ed00 6d 6d 61 6e 64 2e 20 66 69 6c 65 20 61 74 74 72  mmand. file attr
1ed10 69 62 75 74 65 73 20 66 69 6c 65 6e 61 6d 65 20  ibutes filename 
1ed20 63 61 6e 20 67 69 76 65 20 61 20 6c 69 73 74 20  can give a list 
1ed30 6f 66 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65 63  of platform-spec
1ed40 69 66 69 63 0a 6f 70 74 69 6f 6e 73 20 28 73 75  ific.options (su
1ed50 63 68 20 61 73 20 66 69 6c 65 2f 63 72 65 61 74  ch as file/creat
1ed60 6f 72 20 74 79 70 65 20 6f 6e 20 74 68 65 20 4d  or type on the M
1ed70 61 63 2c 20 70 65 72 6d 69 73 73 69 6f 6e 73 20  ac, permissions 
1ed80 6f 6e 20 55 6e 69 78 29 20 6f 72 0a 73 65 74 20  on Unix) or.set 
1ed90 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 74 68  the values of th
1eda0 65 6d 2e 20 41 64 64 65 64 20 61 20 6e 65 77 20  em. Added a new 
1edb0 73 75 62 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 74  subcommand for t
1edc0 68 65 20 66 69 6c 65 0a 63 6f 6d 6d 61 6e 64 2e  he file.command.
1edd0 20 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d 65   file nativename
1ede0 20 6e 61 6d 65 20 67 69 76 65 73 20 62 61 63 6b   name gives back
1edf0 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 2d 73 70   the platform-sp
1ee00 65 63 69 66 69 63 20 66 6f 72 6d 0a 66 6f 72 20  ecific form.for 
1ee10 74 68 65 20 66 69 6c 65 2e 20 54 68 69 73 20 69  the file. This i
1ee20 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 74 68  s useful when th
1ee30 65 20 66 69 6c 65 6e 61 6d 65 20 69 73 20 6e 65  e filename is ne
1ee40 65 64 65 64 20 74 6f 20 70 61 73 73 20 74 6f 0a  eded to pass to.
1ee50 74 68 65 20 4f 53 2c 20 73 75 63 68 20 61 73 20  the OS, such as 
1ee60 65 78 65 63 20 75 6e 64 65 72 20 57 69 6e 64 6f  exec under Windo
1ee70 77 73 20 39 35 20 6f 72 20 41 70 70 6c 65 53 63  ws 95 or AppleSc
1ee80 72 69 70 74 20 6f 6e 20 74 68 65 20 4d 61 63 2e  ript on the Mac.
1ee90 20 46 6f 72 0a 6d 6f 72 65 20 69 6e 66 6f 2c 20   For.more info, 
1eea0 73 65 65 20 66 69 6c 65 2e 6e 2e 20 28 53 52 50  see file.n. (SRP
1eeb0 29 0a 0a 33 2f 32 34 2f 39 37 20 28 72 65 6d 6f  )..3/24/97 (remo
1eec0 76 65 64 20 66 65 61 74 75 72 65 29 20 52 65 6d  ved feature) Rem
1eed0 6f 76 65 64 20 74 68 65 20 74 63 6c 5f 73 61 66  oved the tcl_saf
1eee0 65 50 6f 6c 69 63 79 50 61 74 68 20 70 72 6f 63  ePolicyPath proc
1eef0 65 64 75 72 65 2e 20 4e 6f 77 0a 74 68 65 20 70  edure. Now.the p
1ef00 6f 6c 69 63 79 20 70 61 74 68 20 69 73 20 63 6f  olicy path is co
1ef10 6d 70 75 74 65 64 20 66 72 6f 6d 20 74 68 65 20  mputed from the 
1ef20 61 75 74 6f 5f 70 61 74 68 20 62 79 20 61 70 70  auto_path by app
1ef30 65 6e 64 69 6e 67 20 74 68 65 20 64 69 72 65 63  ending the direc
1ef40 74 6f 72 79 0a 27 70 6f 6c 69 63 69 65 73 27 20  tory.'policies' 
1ef50 74 6f 20 65 61 63 68 20 65 6c 65 6d 65 6e 74 2e  to each element.
1ef60 20 41 6c 73 6f 20 66 69 78 65 64 20 73 65 76 65   Also fixed seve
1ef70 72 61 6c 20 62 75 67 73 20 69 6e 20 61 75 74 6f  ral bugs in auto
1ef80 6d 61 74 69 63 20 74 72 61 63 6b 69 6e 67 0a 6f  matic tracking.o
1ef90 66 20 61 75 74 6f 5f 70 61 74 68 20 62 79 20 63  f auto_path by c
1efa0 6f 6d 70 75 74 65 64 20 70 6f 6c 69 63 79 20 70  omputed policy p
1efb0 61 74 68 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 50 4f  ath. (JL).*** PO
1efc0 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
1efd0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
1efe0 20 38 2e 30 61 32 20 62 75 74 20 6e 6f 74 20 77   8.0a2 but not w
1eff0 69 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a  ith Tcl 7.6 ***.
1f000 0a 34 2f 38 2f 39 37 20 28 6e 65 77 20 66 65 61  .4/8/97 (new fea
1f010 74 75 72 65 29 20 49 66 20 74 68 65 20 76 61 72  ture) If the var
1f020 69 61 62 6c 65 20 77 68 6f 73 65 20 6e 61 6d 65  iable whose name
1f030 20 69 73 20 70 61 73 73 65 64 20 74 6f 20 6c 61   is passed to la
1f040 70 70 65 6e 64 20 64 6f 65 73 6e 27 74 0a 61 6c  ppend doesn't.al
1f050 72 65 61 64 79 20 65 78 69 73 74 2c 20 61 6e 64  ready exist, and
1f060 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 76 61   there are no va
1f070 6c 75 65 20 61 72 67 75 6d 65 6e 74 73 2c 20 6c  lue arguments, l
1f080 61 70 70 65 6e 64 20 6e 6f 77 20 63 72 65 61 74  append now creat
1f090 65 73 20 74 68 65 0a 76 61 72 69 61 62 6c 65 20  es the.variable 
1f0a0 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 76 61  with an empty va
1f0b0 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20 72  lue instead of r
1f0c0 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72 6f  eturning an erro
1f0d0 72 2e 20 43 68 61 6e 67 65 20 73 75 67 67 65 73  r. Change sugges
1f0e0 74 65 64 0a 62 79 20 54 6f 6d 20 54 72 6f 6d 65  ted.by Tom Trome
1f0f0 79 2e 20 28 42 4c 29 0a 0a 34 2f 39 2f 39 37 20  y. (BL)..4/9/97 
1f100 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
1f110 20 43 68 61 6e 67 65 64 20 74 68 65 20 6e 61 6d   Changed the nam
1f120 65 20 6f 66 20 74 68 65 20 54 43 4c 5f 50 41 52  e of the TCL_PAR
1f130 54 31 5f 4e 4f 54 5f 50 41 52 53 45 44 20 66 6c  T1_NOT_PARSED fl
1f140 61 67 20 74 6f 0a 54 43 4c 5f 50 41 52 53 45 5f  ag to.TCL_PARSE_
1f150 50 41 52 54 31 2e 20 28 42 4c 29 0a 2a 2a 2a 20  PART1. (BL).*** 
1f160 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
1f170 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54  ATIBILITY with T
1f180 63 6c 20 38 2e 30 61 32 20 62 75 74 20 6e 6f 74  cl 8.0a2 but not
1f190 20 77 69 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a   with Tcl 7.6 **
1f1a0 2a 0a 0a 34 2f 31 30 2f 39 37 20 28 62 75 67 20  *..4/10/97 (bug 
1f1b0 66 69 78 65 73 29 20 46 69 78 65 64 20 76 61 72  fixes) Fixed var
1f1c0 69 6f 75 73 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  ious compilation
1f1d0 2d 72 65 6c 61 74 65 64 20 62 75 67 73 3a 0a 20  -related bugs:. 
1f1e0 20 20 20 2d 20 22 55 70 64 61 74 65 53 74 72 69     - "UpdateStri
1f1f0 6e 67 4f 66 43 6d 64 4e 61 6d 65 20 73 68 6f 75  ngOfCmdName shou
1f200 6c 64 20 6e 65 76 65 72 20 62 65 20 69 6e 76 6f  ld never be invo
1f210 6b 65 64 22 20 70 61 6e 69 63 2e 0a 20 20 20 20  ked" panic..    
1f220 2d 20 42 61 64 20 63 6f 64 65 20 67 65 6e 65 72  - Bad code gener
1f230 61 74 65 64 20 66 6f 72 20 65 78 70 72 65 73 73  ated for express
1f240 69 6f 6e 73 20 6e 6f 74 20 69 6e 20 7b 7d 27 73  ions not in {}'s
1f250 20 69 6e 73 69 64 65 20 63 61 74 63 68 20 63 6f   inside catch co
1f260 6d 6d 61 6e 64 73 2e 0a 20 20 20 20 2d 20 53 65  mmands..    - Se
1f270 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c 74  gmentation fault
1f280 20 69 6e 20 73 6f 6d 65 20 63 6f 6d 6d 61 6e 64   in some command
1f290 20 70 72 6f 63 65 64 75 72 65 73 20 77 68 65 6e   procedures when
1f2a0 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 0a 20 20   two argument.  
1f2b0 20 20 20 20 6f 62 6a 65 63 74 20 70 6f 69 6e 74      object point
1f2c0 65 72 73 20 72 65 66 65 72 20 74 6f 20 74 68 65  ers refer to the
1f2d0 20 73 61 6d 65 20 6f 62 6a 65 63 74 2e 0a 20 20   same object..  
1f2e0 20 20 2d 20 53 65 63 6f 6e 64 20 6c 65 76 65 6c    - Second level
1f2f0 20 6f 66 20 73 75 62 73 74 69 74 75 74 69 6f 6e   of substitution
1f300 73 20 77 65 72 65 20 6e 65 76 65 72 20 64 6f 6e  s were never don
1f310 65 20 66 6f 72 20 65 78 70 72 65 73 73 69 6f 6e  e for expression
1f320 73 20 6e 6f 74 0a 20 20 20 20 20 20 69 6e 20 7b  s not.      in {
1f330 7d 27 73 20 74 68 61 74 20 63 6f 6e 73 69 73 74  }'s that consist
1f340 20 6f 66 20 61 20 73 69 6e 67 6c 65 20 76 61 72   of a single var
1f350 69 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65 3a  iable reference:
1f360 20 65 2e 67 2e 2c 0a 20 20 20 20 20 20 22 73 65   e.g.,.      "se
1f370 74 20 78 20 32 37 3b 20 73 65 74 20 62 6f 6f 6c  t x 27; set bool
1f380 20 7b 24 78 7d 3b 20 69 66 20 24 62 6f 6f 6c 20   {$x}; if $bool 
1f390 7b 70 75 74 73 20 66 6f 6f 7d 22 20 77 6f 75 6c  {puts foo}" woul
1f3a0 64 20 66 61 69 6c 20 77 69 74 68 20 65 72 72 6f  d fail with erro
1f3b0 72 2e 0a 20 20 20 20 2d 20 42 61 64 20 63 6f 64  r..    - Bad cod
1f3c0 65 20 67 65 6e 65 72 61 74 65 64 20 77 68 65 6e  e generated when
1f3d0 20 63 6f 64 65 20 73 74 6f 72 61 67 65 20 77 61   code storage wa
1f3e0 73 20 67 72 6f 77 6e 20 77 68 69 6c 65 20 63 6f  s grown while co
1f3f0 6d 70 69 6c 69 6e 67 20 73 6f 6d 65 0a 20 20 20  mpiling some.   
1f400 20 20 20 65 78 70 72 65 73 73 69 6f 6e 73 3a 20     expressions: 
1f410 6f 6e 65 73 20 77 69 74 68 20 63 6f 6d 70 69 6c  ones with compil
1f420 61 74 69 6f 6e 20 65 72 72 6f 72 73 20 6f 72 20  ation errors or 
1f430 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20 6f 6e  consisting of on
1f440 6c 79 20 61 0a 20 20 20 20 20 20 76 61 72 69 61  ly a.      varia
1f450 62 6c 65 20 72 65 66 65 72 65 6e 63 65 2e 0a 20  ble reference.. 
1f460 20 20 20 2d 20 42 75 67 73 20 69 6e 76 6f 6c 76     - Bugs involv
1f470 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 69 6e 74  ing multiple int
1f480 65 72 70 72 65 74 65 72 73 3a 20 77 61 73 6e 27  erpreters: wasn'
1f490 74 20 63 68 65 63 6b 69 6e 67 20 74 68 61 74 20  t checking that 
1f4a0 61 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75 72  a.      procedur
1f4b0 65 27 73 20 63 6f 64 65 20 77 61 73 20 63 6f 6d  e's code was com
1f4c0 70 69 6c 65 64 20 66 6f 72 20 74 68 65 20 73 61  piled for the sa
1f4d0 6d 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 61  me interpreter a
1f4e0 73 20 74 68 65 20 6f 6e 65 0a 20 20 20 20 20 20  s the one.      
1f4f0 65 78 65 63 75 74 69 6e 67 20 69 74 2c 20 61 6e  executing it, an
1f500 64 20 64 69 64 6e 27 74 20 69 6e 76 61 6c 69 64  d didn't invalid
1f510 61 74 65 20 63 6f 64 65 20 6f 6e 20 68 69 64 64  ate code on hidd
1f520 65 6e 2d 65 78 70 6f 73 65 64 20 63 6f 6d 6d 61  en-exposed comma
1f530 6e 64 0a 20 20 20 20 20 20 74 72 61 6e 73 69 74  nd.      transit
1f540 69 6f 6e 73 2e 0a 20 20 20 20 2d 20 22 42 61 64  ions..    - "Bad
1f550 20 73 74 61 63 6b 20 74 6f 70 22 20 70 61 6e 69   stack top" pani
1f560 63 20 77 68 65 6e 20 65 78 65 63 75 74 69 6e 67  c when executing
1f570 20 73 63 72 69 70 74 73 20 74 68 61 74 20 72 65   scripts that re
1f580 71 75 69 72 65 20 61 20 68 75 67 65 0a 20 20 20  quire a huge.   
1f590 20 20 20 61 6d 6f 75 6e 74 20 6f 66 20 73 74 61     amount of sta
1f5a0 63 6b 20 73 70 61 63 65 2e 0a 20 20 20 20 2d 20  ck space..    - 
1f5b0 49 6e 63 6f 72 72 65 63 74 20 73 68 61 72 69 6e  Incorrect sharin
1f5c0 67 20 6f 66 20 63 6f 64 65 20 66 6f 72 20 70 72  g of code for pr
1f5d0 6f 63 65 64 75 72 65 20 62 6f 64 69 65 73 2c 20  ocedure bodies, 
1f5e0 61 6e 64 20 70 72 6f 63 65 64 75 72 65 20 63 6f  and procedure co
1f5f0 64 65 0a 20 20 20 20 20 20 64 65 61 6c 6c 6f 63  de.      dealloc
1f600 61 74 65 64 20 62 65 66 6f 72 65 20 6c 61 73 74  ated before last
1f610 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 74 68   execution of th
1f620 65 20 70 72 6f 63 65 64 75 72 65 20 66 69 6e 69  e procedure fini
1f630 73 68 65 64 2e 0a 20 20 20 20 2d 20 46 69 78 65  shed..    - Fixe
1f640 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 66  d compilation of
1f650 20 65 78 70 72 65 73 73 69 6f 6e 20 77 6f 72 64   expression word
1f660 73 20 69 6e 20 71 75 6f 74 65 73 2e 20 46 6f 72  s in quotes. For
1f670 20 65 78 61 6d 70 6c 65 2c 0a 20 20 20 20 20 20   example,.      
1f680 69 66 20 22 30 20 3c 20 33 22 20 7b 70 75 74 73  if "0 < 3" {puts
1f690 20 66 6f 6f 7d 2e 0a 20 20 20 20 2d 20 46 69 78   foo}..    - Fix
1f6a0 65 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62  ed performance b
1f6b0 75 67 20 69 6e 20 61 72 72 61 79 20 73 65 74 20  ug in array set 
1f6c0 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 6c 61 72  command with lar
1f6d0 67 65 20 61 73 73 69 67 6e 6d 65 6e 74 73 2e 0a  ge assignments..
1f6e0 20 20 20 20 2d 20 54 63 6c 5f 53 65 74 4f 62 6a      - Tcl_SetObj
1f6f0 4c 65 6e 67 74 68 20 73 65 67 6d 65 6e 74 61 74  Length segmentat
1f700 69 6f 6e 20 66 61 75 6c 74 20 73 65 74 74 69 6e  ion fault settin
1f710 67 20 6c 65 6e 67 74 68 20 6f 66 20 65 6d 70 74  g length of empt
1f720 79 20 6f 62 6a 65 63 74 2e 0a 20 20 20 20 2d 20  y object..    - 
1f730 49 66 20 54 63 6c 5f 53 65 74 4f 62 6a 65 63 74  If Tcl_SetObject
1f740 52 65 73 75 6c 74 20 77 61 73 20 70 61 73 73 65  Result was passe
1f750 64 20 74 68 65 20 73 61 6d 65 20 6f 62 6a 65 63  d the same objec
1f760 74 20 61 73 20 74 68 65 20 69 6e 74 65 72 70 72  t as the interpr
1f770 65 74 65 72 27 73 0a 20 20 20 20 20 20 72 65 73  eter's.      res
1f780 75 6c 74 20 6f 62 6a 65 63 74 2c 20 69 74 20 66  ult object, it f
1f790 72 65 65 64 20 74 68 65 20 6f 62 6a 65 63 74 20  reed the object 
1f7a0 69 6e 73 74 65 61 64 20 6f 66 20 64 6f 69 6e 67  instead of doing
1f7b0 20 6e 6f 74 68 69 6e 67 2e 20 42 75 67 20 66 69   nothing. Bug fi
1f7c0 78 0a 20 20 20 20 20 20 62 79 20 4d 69 63 68 61  x.      by Micha
1f7d0 65 6c 20 4a 2e 20 4d 63 4c 65 6e 6e 61 6e 2e 0a  el J. McLennan..
1f7e0 20 20 20 20 2d 20 54 63 6c 5f 4c 69 73 74 4f 62      - Tcl_ListOb
1f7f0 6a 41 70 70 65 6e 64 4c 69 73 74 20 69 6e 73 65  jAppendList inse
1f800 72 74 65 64 20 65 6c 65 6d 65 6e 74 73 20 66 72  rted elements fr
1f810 6f 6d 20 74 68 65 20 77 72 6f 6e 67 20 6c 69 73  om the wrong lis
1f820 74 2e 20 42 75 67 20 66 69 78 0a 20 20 20 20 20  t. Bug fix.     
1f830 20 62 79 20 4d 69 63 68 61 65 6c 20 4a 2e 20 4d   by Michael J. M
1f840 63 4c 65 6e 6e 61 6e 2e 0a 20 20 20 20 2d 20 53  cLennan..    - S
1f850 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c  egmentation faul
1f860 74 20 69 66 20 65 6d 70 74 79 20 76 61 72 69 61  t if empty varia
1f870 62 6c 65 20 6c 69 73 74 20 77 61 73 20 73 70 65  ble list was spe
1f880 63 69 66 69 65 64 20 69 6e 20 61 20 66 6f 72 65  cified in a fore
1f890 61 63 68 0a 20 20 20 20 20 20 63 6f 6d 6d 61 6e  ach.      comman
1f8a0 64 2e 20 42 75 67 20 66 69 78 20 62 79 20 4a 61  d. Bug fix by Ja
1f8b0 6e 20 4e 69 6a 74 6d 61 6e 73 2e 0a 20 20 20 20  n Nijtmans..    
1f8c0 2d 20 4e 55 4c 4c 20 63 6f 6d 6d 61 6e 64 20 6e  - NULL command n
1f8d0 61 6d 65 20 77 61 73 20 61 6c 77 61 79 73 20 70  ame was always p
1f8e0 61 73 73 65 64 20 74 6f 20 54 63 6c 5f 43 72 65  assed to Tcl_Cre
1f8f0 61 74 65 54 72 61 63 65 20 63 61 6c 6c 62 61 63  ateTrace callbac
1f900 6b 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75 72  k.      procedur
1f910 65 2e 0a 20 20 20 20 2d 20 57 72 6f 6e 67 20 73  e..    - Wrong s
1f920 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61  tring representa
1f930 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 64 20 66  tion generated f
1f940 6f 72 20 74 68 65 20 76 61 6c 75 65 20 4c 4f 4e  or the value LON
1f950 47 5f 4d 49 4e 2e 0a 20 20 20 20 20 20 46 6f 72  G_MIN..      For
1f960 20 65 78 61 6d 70 6c 65 2c 20 65 78 70 72 20 31   example, expr 1
1f970 3c 3c 33 31 20 70 72 69 6e 74 65 64 20 69 6e 63  <<31 printed inc
1f980 6f 72 72 65 63 74 6c 79 20 6f 6e 20 61 20 33 32  orrectly on a 32
1f990 20 62 69 74 20 6d 61 63 68 69 6e 65 2e 0a 20 20   bit machine..  
1f9a0 20 20 2d 20 22 73 65 74 20 7b 61 28 24 78 29 7d    - "set {a($x)}
1f9b0 20 31 22 20 73 74 6f 72 65 64 20 76 61 6c 75 65   1" stored value
1f9c0 20 69 6e 20 77 72 6f 6e 67 20 76 61 72 69 61 62   in wrong variab
1f9d0 6c 65 2e 0a 20 20 20 20 2d 20 54 63 6c 5f 47 65  le..    - Tcl_Ge
1f9e0 74 42 6f 6f 6c 65 61 6e 46 72 6f 6d 4f 62 6a 20  tBooleanFromObj 
1f9f0 77 61 73 20 6e 6f 74 20 63 68 65 63 6b 69 6e 67  was not checking
1fa00 20 66 6f 72 20 67 61 72 62 61 67 65 20 61 66 74   for garbage aft
1fa10 65 72 20 61 20 6e 75 6d 65 72 69 63 0a 20 20 20  er a numeric.   
1fa20 20 20 20 76 61 6c 75 65 2e 0a 20 20 20 20 2d 20     value..    - 
1fa30 47 61 72 62 6c 65 64 20 22 62 61 64 20 6f 70 65  Garbled "bad ope
1fa40 72 61 6e 64 20 74 79 70 65 22 20 65 72 72 6f 72  rand type" error
1fa50 20 6d 65 73 73 61 67 65 20 77 68 65 6e 20 65 76   message when ev
1fa60 61 6c 75 61 74 69 6e 67 20 65 78 70 72 65 73 73  aluating express
1fa70 69 6f 6e 73 0a 20 20 20 20 20 20 6e 6f 74 20 73  ions.      not s
1fa80 75 72 72 6f 75 6e 64 65 64 20 62 79 20 7b 7d 27  urrounded by {}'
1fa90 73 2e 20 28 42 4c 29 0a 0a 34 2f 31 36 2f 39 37  s. (BL)..4/16/97
1faa0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 54   (new feature) T
1fab0 68 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64 20  he expr command 
1fac0 6e 6f 77 20 68 61 73 20 74 68 65 20 22 72 61 6e  now has the "ran
1fad0 64 28 29 22 20 61 6e 64 0a 22 73 72 61 6e 64 28  d()" and."srand(
1fae0 29 22 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72  )" functions for
1faf0 20 67 65 74 74 69 6e 67 20 72 61 6e 64 6f 6d 20   getting random 
1fb00 6e 75 6d 62 65 72 73 20 69 6e 20 65 78 70 72 2e  numbers in expr.
1fb10 20 28 52 4a 29 0a 0a 34 2f 32 33 2f 39 37 20 28   (RJ)..4/23/97 (
1fb20 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63  bug fix) Fixed c
1fb30 6f 72 65 20 64 75 6d 70 20 69 6e 20 62 67 65 72  ore dump in bger
1fb40 72 6f 72 20 77 68 65 6e 20 74 68 65 20 65 72 72  ror when the err
1fb50 6f 72 20 68 61 6e 64 6c 65 72 20 63 6f 6d 6d 61  or handler comma
1fb60 6e 64 0a 64 65 6c 65 74 65 73 20 74 68 65 20 63  nd.deletes the c
1fb70 75 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65 74  urrent interpret
1fb80 65 72 2e 20 46 6f 75 6e 64 20 62 79 20 4a 75 65  er. Found by Jue
1fb90 72 67 65 6e 20 53 63 68 6f 65 6e 77 61 6c 64 2e  rgen Schoenwald.
1fba0 20 28 4a 4c 29 0a 0a 34 2f 32 33 2f 39 37 20 28   (JL)..4/23/97 (
1fbb0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
1fbc0 54 68 65 20 6e 6f 74 69 66 69 65 72 20 69 6e 74  The notifier int
1fbd0 65 72 66 61 63 65 73 20 68 61 76 65 20 62 65 65  erfaces have bee
1fbe0 6e 20 72 65 64 65 73 69 67 6e 65 64 0a 74 6f 20  n redesigned.to 
1fbf0 6d 61 6b 65 20 65 6d 62 65 64 64 69 6e 67 20 69  make embedding i
1fc00 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 77  n applications w
1fc10 69 74 68 20 65 78 74 65 72 6e 61 6c 20 65 76 65  ith external eve
1fc20 6e 74 20 6c 6f 6f 70 73 20 70 6f 73 73 69 62 6c  nt loops possibl
1fc30 65 2e 0a 41 20 6e 75 6d 62 65 72 20 6f 66 20 69  e..A number of i
1fc40 6e 74 65 72 66 61 63 65 73 20 69 6e 20 74 68 65  nterfaces in the
1fc50 20 6e 6f 74 69 66 69 65 72 20 61 6e 64 20 74 68   notifier and th
1fc60 65 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  e channel driver
1fc70 73 20 68 61 76 65 0a 63 68 61 6e 67 65 64 2e 20  s have.changed. 
1fc80 20 52 65 66 65 72 20 74 6f 20 74 68 65 20 4e 6f   Refer to the No
1fc90 74 69 66 69 65 72 2e 33 20 61 6e 64 20 43 72 74  tifier.3 and Crt
1fca0 43 68 61 6e 6e 65 6c 2e 33 20 6d 61 6e 75 61 6c  Channel.3 manual
1fcb0 20 65 6e 74 72 69 65 73 20 66 6f 72 0a 6d 6f 72   entries for.mor
1fcc0 65 20 64 65 74 61 69 6c 73 2e 20 28 53 53 29 0a  e details. (SS).
1fcd0 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
1fce0 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
1fcf0 2a 0a 0a 34 2f 32 33 2f 39 37 20 28 72 65 6d 6f  *..4/23/97 (remo
1fd00 76 65 64 20 66 65 61 74 75 72 65 29 20 54 68 65  ved feature) The
1fd10 20 54 63 6c 5f 46 69 6c 65 20 69 6e 74 65 72 66   Tcl_File interf
1fd20 61 63 65 73 20 68 61 76 65 20 62 65 65 6e 20 72  aces have been r
1fd30 65 6d 6f 76 65 64 2e 0a 54 68 65 20 54 63 6c 5f  emoved..The Tcl_
1fd40 43 72 65 61 74 65 46 69 6c 65 48 61 6e 64 6c 65  CreateFileHandle
1fd50 72 2f 54 63 6c 5f 44 65 6c 65 74 65 46 69 6c 65  r/Tcl_DeleteFile
1fd60 48 61 6e 64 6c 65 72 20 69 6e 74 65 72 66 61 63  Handler interfac
1fd70 65 73 20 6e 6f 77 20 74 61 6b 65 0a 55 6e 69 78  es now take.Unix
1fd80 20 66 64 27 73 20 61 6e 64 20 61 72 65 20 6f 6e   fd's and are on
1fd90 6c 79 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20  ly supported on 
1fda0 74 68 65 20 55 6e 69 78 20 70 6c 61 74 66 6f 72  the Unix platfor
1fdb0 6d 2e 0a 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65  m..Tcl_GetChanne
1fdc0 6c 46 69 6c 65 20 68 61 73 20 62 65 65 6e 20 72  lFile has been r
1fdd0 65 70 6c 61 63 65 64 20 77 69 74 68 20 54 63 6c  eplaced with Tcl
1fde0 5f 47 65 74 43 68 61 6e 6e 65 6c 48 61 6e 64 6c  _GetChannelHandl
1fdf0 65 2e 0a 54 63 6c 5f 4d 61 6b 65 46 69 6c 65 43  e..Tcl_MakeFileC
1fe00 68 61 6e 6e 65 6c 20 6e 6f 77 20 74 61 6b 65 73  hannel now takes
1fe10 20 61 20 70 6c 61 74 66 6f 72 6d 20 73 70 65 63   a platform spec
1fe20 69 66 69 63 20 66 69 6c 65 20 68 61 6e 64 6c 65  ific file handle
1fe30 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (SS).*** POTEN
1fe40 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
1fe50 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33 2f 39  LITY ***..4/23/9
1fe60 37 20 28 72 65 6d 6f 76 65 64 20 66 65 61 74 75  7 (removed featu
1fe70 72 65 29 20 54 68 65 20 6d 6f 64 61 6c 20 74 69  re) The modal ti
1fe80 6d 65 6f 75 74 20 69 6e 74 65 72 66 61 63 65 20  meout interface 
1fe90 68 61 73 20 62 65 65 6e 0a 72 65 6d 6f 76 65 64  has been.removed
1fea0 20 28 54 63 6c 5f 43 72 65 61 74 65 4d 6f 64 61   (Tcl_CreateModa
1feb0 6c 54 69 6d 65 6f 75 74 2f 54 63 6c 5f 44 65 6c  lTimeout/Tcl_Del
1fec0 65 74 65 4d 6f 64 61 6c 54 69 6d 65 6f 75 74 29  eteModalTimeout)
1fed0 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (SS).*** POTENT
1fee0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
1fef0 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33 2f 39 37  ITY ***..4/23/97
1ff00 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
1ff10 29 20 43 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  ) Channel driver
1ff20 73 20 61 72 65 20 6e 6f 77 20 72 65 71 75 69 72  s are now requir
1ff30 65 64 20 74 6f 20 63 6f 72 72 65 63 74 6c 79 0a  ed to correctly.
1ff40 69 6d 70 6c 65 6d 65 6e 74 20 62 6c 6f 63 6b 69  implement blocki
1ff50 6e 67 20 62 65 68 61 76 69 6f 72 20 77 68 65 6e  ng behavior when
1ff60 20 74 68 65 79 20 61 72 65 20 69 6e 20 62 6c 6f   they are in blo
1ff70 63 6b 69 6e 67 20 6d 6f 64 65 2e 20 28 53 53 29  cking mode. (SS)
1ff80 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
1ff90 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
1ffa0 2a 2a 0a 0a 34 2f 32 33 2f 39 37 20 28 6e 65 77  **..4/23/97 (new
1ffb0 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
1ffc0 74 68 65 20 22 62 69 6e 61 72 79 22 20 63 6f 6d  the "binary" com
1ffd0 6d 61 6e 64 20 66 6f 72 20 6d 61 6e 69 70 75 6c  mand for manipul
1ffe0 61 74 69 6e 67 0a 62 69 6e 61 72 79 20 73 74 72  ating.binary str
1fff0 69 6e 67 73 2e 20 41 6c 73 6f 2c 20 63 68 61 6e  ings. Also, chan
20000 67 65 64 20 74 68 65 20 22 70 75 74 73 22 2c 20  ged the "puts", 
20010 22 67 65 74 73 22 2c 20 61 6e 64 20 22 72 65 61  "gets", and "rea
20020 64 22 20 63 6f 6d 6d 61 6e 64 73 0a 74 6f 20 70  d" commands.to p
20030 72 65 73 65 72 76 65 20 65 6d 62 65 64 64 65 64  reserve embedded
20040 20 6e 75 6c 6c 73 2e 20 20 28 53 53 29 0a 0a 34   nulls.  (SS)..4
20050 2f 32 33 2f 39 37 20 28 6e 65 77 20 66 65 61 74  /23/97 (new feat
20060 75 72 65 29 20 41 64 64 65 64 20 74 63 6c 5f 70  ure) Added tcl_p
20070 6c 61 74 66 6f 72 6d 28 62 79 74 65 4f 72 64 65  latform(byteOrde
20080 72 29 20 65 6c 65 6d 65 6e 74 20 74 6f 20 74 68  r) element to th
20090 65 0a 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 20 61  e.tcl_platform a
200a0 72 72 61 79 20 74 6f 20 69 64 65 6e 74 69 66 79  rray to identify
200b0 20 74 68 65 20 6e 61 74 69 76 65 20 62 79 74 65   the native byte
200c0 20 6f 72 64 65 72 20 66 6f 72 20 74 68 65 20 63   order for the c
200d0 75 72 72 65 6e 74 0a 68 6f 73 74 2e 20 28 53 53  urrent.host. (SS
200e0 29 0a 0a 34 2f 32 33 2f 39 37 20 28 62 75 67 20  )..4/23/97 (bug 
200f0 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69  fix) Fixed bug i
20100 6e 20 64 61 74 65 20 70 61 72 73 69 6e 67 20 61  n date parsing a
20110 72 6f 75 6e 64 20 79 65 61 72 20 62 6f 75 6e 64  round year bound
20120 61 72 69 65 73 2e 20 28 53 53 29 0a 0a 34 2f 32  aries. (SS)..4/2
20130 34 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 49  4/97 (bug fix) I
20140 6e 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f 66  n the process of
20150 20 63 6f 70 79 69 6e 67 20 61 20 66 69 6c 65 20   copying a file 
20160 6f 77 6e 65 64 20 62 79 20 61 6e 6f 74 68 65 72  owned by another
20170 20 75 73 65 72 2c 0a 54 63 6c 20 77 61 73 20 63   user,.Tcl was c
20180 68 61 6e 67 69 6e 67 20 74 68 65 20 6f 77 6e 65  hanging the owne
20190 72 20 6f 66 20 74 68 65 20 63 6f 70 79 20 62 61  r of the copy ba
201a0 63 6b 20 74 6f 20 74 68 65 20 6f 77 6e 65 72 20  ck to the owner 
201b0 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0a  of the original.
201c0 66 69 6c 65 2c 20 74 68 65 72 65 66 6f 72 65 20  file, therefore 
201d0 63 61 75 73 69 6e 67 20 66 75 72 74 68 65 72 20  causing further 
201e0 66 69 6c 65 20 6f 70 65 72 61 74 69 6f 6e 73 20  file operations 
201f0 74 6f 20 66 61 69 6c 20 62 65 63 61 75 73 65 20  to fail because 
20200 74 68 65 20 63 75 72 72 65 6e 74 0a 75 73 65 72  the current.user
20210 20 64 69 64 6e 27 74 20 6f 77 6e 20 74 68 65 20   didn't own the 
20220 63 6f 70 79 20 61 6e 79 6d 6f 72 65 2e 20 20 54  copy anymore.  T
20230 68 65 20 6f 77 6e 65 72 20 6f 66 20 74 68 65 20  he owner of the 
20240 63 6f 70 79 20 69 73 20 6e 6f 77 20 6c 65 66 74  copy is now left
20250 20 61 73 20 74 68 65 0a 63 75 72 72 65 6e 74 20   as the.current 
20260 75 73 65 72 2e 20 28 43 43 53 29 0a 0a 34 2f 32  user. (CCS)..4/2
20270 34 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68  4/97 (feature ch
20280 61 6e 67 65 29 20 55 6e 64 65 72 20 57 69 6e 64  ange) Under Wind
20290 6f 77 73 2c 20 64 6f 6e 27 74 20 61 75 74 6f 6d  ows, don't autom
202a0 61 74 69 63 61 6c 6c 79 20 75 70 70 65 72 63 61  atically upperca
202b0 73 65 20 74 68 65 0a 65 6e 76 69 72 6f 6e 6d 65  se the.environme
202c0 6e 74 20 76 61 72 69 61 62 6c 65 20 22 77 69 6e  nt variable "win
202d0 64 69 72 22 20 2d 2d 20 69 74 27 73 20 73 75 70  dir" -- it's sup
202e0 70 6f 73 65 64 20 74 6f 20 62 65 20 6c 6f 77 65  posed to be lowe
202f0 72 20 63 61 73 65 2e 20 20 28 43 43 53 29 0a 0a  r case.  (CCS)..
20300 34 2f 32 39 2f 39 37 20 28 6e 65 77 20 66 65 61  4/29/97 (new fea
20310 74 75 72 65 29 20 41 64 64 65 64 20 6e 61 6d 65  ture) Added name
20320 73 70 61 63 65 20 73 75 70 70 6f 72 74 20 62 61  space support ba
20330 73 65 64 20 6f 6e 20 61 20 6e 61 6d 65 73 70 61  sed on a namespa
20340 63 65 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  ce.implementatio
20350 6e 20 62 79 20 4d 69 63 68 61 65 6c 20 4a 2e 20  n by Michael J. 
20360 4d 63 4c 65 6e 6e 61 6e 20 6f 66 20 4c 75 63 65  McLennan of Luce
20370 6e 74 20 54 65 63 68 6e 6f 6c 6f 67 69 65 73 2e  nt Technologies.
20380 20 41 20 6e 61 6d 65 73 70 61 63 65 0a 65 6e 63   A namespace.enc
20390 61 70 73 75 6c 61 74 65 73 20 61 20 63 6f 6c 6c  apsulates a coll
203a0 65 63 74 69 6f 6e 20 6f 66 20 63 6f 6d 6d 61 6e  ection of comman
203b0 64 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73  ds and variables
203c0 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20   to ensure that 
203d0 74 68 65 79 0a 77 6f 6e 27 74 20 69 6e 74 65 72  they.won't inter
203e0 66 65 72 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64  fere the command
203f0 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 20  s and variables 
20400 6f 66 20 6f 74 68 65 72 20 6e 61 6d 65 73 70 61  of other namespa
20410 63 65 73 2e 20 54 68 65 20 67 6c 6f 62 61 6c 0a  ces. The global.
20420 6e 61 6d 65 73 70 61 63 65 20 68 6f 6c 64 73 20  namespace holds 
20430 61 6c 6c 20 67 6c 6f 62 61 6c 20 76 61 72 69 61  all global varia
20440 62 6c 65 73 20 61 6e 64 20 63 6f 6d 6d 61 6e 64  bles and command
20450 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 20 6e 61  s. Additional na
20460 6d 65 73 70 61 63 65 73 20 61 72 65 0a 63 72 65  mespaces are.cre
20470 61 74 65 64 20 77 69 74 68 20 74 68 65 20 6e 65  ated with the ne
20480 77 20 6e 61 6d 65 73 70 61 63 65 20 63 6f 6d 6d  w namespace comm
20490 61 6e 64 2e 20 54 68 65 20 6e 65 77 20 76 61 72  and. The new var
204a0 69 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 20 6c 65  iable command le
204b0 74 73 20 79 6f 75 0a 63 72 65 61 74 65 20 54 63  ts you.create Tc
204c0 6c 20 76 61 72 69 61 62 6c 65 73 20 69 6e 73 69  l variables insi
204d0 64 65 20 61 20 6e 61 6d 65 73 70 61 63 65 2e 20  de a namespace. 
204e0 54 68 65 20 6e 61 6d 65 73 20 6f 66 20 54 63 6c  The names of Tcl
204f0 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 0a 63   variables and.c
20500 6f 6d 6d 61 6e 64 73 20 6d 61 79 20 6e 6f 77 20  ommands may now 
20510 62 65 20 71 75 61 6c 69 66 69 65 64 20 62 79 20  be qualified by 
20520 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20  the name of the 
20530 6e 61 6d 65 73 70 61 63 65 20 63 6f 6e 74 61 69  namespace contai
20540 6e 69 6e 67 20 74 68 65 6d 2e 0a 54 68 65 20 6b  ning them..The k
20550 65 79 20 6e 61 6d 65 73 70 61 63 65 2d 72 65 6c  ey namespace-rel
20560 61 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61 72  ated commands ar
20570 65 20 73 75 6d 6d 61 72 69 7a 65 64 20 62 65 6c  e summarized bel
20580 6f 77 3a 0a 20 20 20 20 2d 20 6e 61 6d 65 73 70  ow:.    - namesp
20590 61 63 65 20 3f 65 76 61 6c 3f 20 6e 61 6d 65 20  ace ?eval? name 
205a0 61 72 67 20 3f 61 72 67 2e 2e 2e 3f 0a 20 20 20  arg ?arg...?.   
205b0 20 20 20 20 20 20 55 73 65 64 20 74 6f 20 64 65        Used to de
205c0 66 69 6e 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64  fine the command
205d0 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 20  s and variables 
205e0 69 6e 20 61 20 6e 61 6d 65 73 70 61 63 65 2e 0a  in a namespace..
205f0 20 20 20 20 20 20 20 20 20 4f 70 74 69 6f 6e 61           Optiona
20600 6c 6c 79 20 63 72 65 61 74 65 73 20 74 68 65 20  lly creates the 
20610 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 2d  namespace..    -
20620 20 6e 61 6d 65 73 70 61 63 65 20 65 78 70 6f 72   namespace expor
20630 74 20 3f 2d 63 6c 65 61 72 3f 20 3f 70 61 74 74  t ?-clear? ?patt
20640 65 72 6e 20 70 61 74 74 65 72 6e 2e 2e 2e 3f 0a  ern pattern...?.
20650 20 20 20 20 20 20 20 20 20 53 70 65 63 69 66 69           Specifi
20660 65 73 20 77 68 69 63 68 20 63 6f 6d 6d 61 6e 64  es which command
20670 73 20 61 72 65 20 65 78 70 6f 72 74 65 64 20 66  s are exported f
20680 72 6f 6d 20 61 20 6e 61 6d 65 73 70 61 63 65 2e  rom a namespace.
20690 20 54 68 65 73 65 0a 20 20 20 20 20 20 20 20 20   These.         
206a0 61 72 65 20 74 68 65 20 6f 6e 65 73 20 74 68 61  are the ones tha
206b0 74 20 63 61 6e 20 62 65 20 69 6d 70 6f 72 74 65  t can be importe
206c0 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 20 6e  d into another n
206d0 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 2d 20  amespace..    - 
206e0 6e 61 6d 65 73 70 61 63 65 20 69 6d 70 6f 72 74  namespace import
206f0 20 3f 2d 66 6f 72 63 65 3f 20 3f 70 61 74 74 65   ?-force? ?patte
20700 72 6e 20 70 61 74 74 65 72 6e 2e 2e 2e 3f 0a 20  rn pattern...?. 
20710 20 20 20 20 20 20 20 20 4d 61 6b 65 73 20 74 68          Makes th
20720 65 20 73 70 65 63 69 66 69 65 64 20 63 6f 6d 6d  e specified comm
20730 61 6e 64 73 20 61 63 63 65 73 73 69 62 6c 65 20  ands accessible 
20740 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 6e  in the current n
20750 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 2d 20  amespace..    - 
20760 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65 6e  namespace curren
20770 74 0a 20 20 20 20 20 20 20 20 20 52 65 74 75 72  t.         Retur
20780 6e 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74  ns the name of t
20790 68 65 20 63 75 72 72 65 6e 74 20 6e 61 6d 65 73  he current names
207a0 70 61 63 65 2e 0a 20 20 20 20 2d 20 76 61 72 69  pace..    - vari
207b0 61 62 6c 65 20 6e 61 6d 65 20 3f 76 61 6c 75 65  able name ?value
207c0 3f 20 3f 6e 61 6d 65 20 3f 76 61 6c 75 65 3f 2e  ? ?name ?value?.
207d0 2e 2e 3f 0a 20 20 20 20 20 20 20 20 20 43 72 65  ..?.         Cre
207e0 61 74 65 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65  ates one or more
207f0 20 6e 61 6d 65 73 70 61 63 65 20 76 61 72 69 61   namespace varia
20800 62 6c 65 73 2e 20 28 42 54 4c 29 0a 0a 35 2f 31  bles. (BTL)..5/1
20810 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 55 6e  /97 (bug fix) Un
20820 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 66 69 6c  der Windows, fil
20830 65 20 74 69 6d 65 73 20 77 65 72 65 20 72 65 70  e times were rep
20840 6f 72 74 65 64 20 69 6e 20 47 4d 54 2e 20 20 53  orted in GMT.  S
20850 68 6f 75 6c 64 20 62 65 0a 72 65 70 6f 72 74 65  hould be.reporte
20860 64 20 69 6e 20 6c 6f 63 61 6c 20 74 69 6d 65 2e  d in local time.
20870 20 28 43 43 53 29 0a 0a 35 2f 32 2f 39 37 20 28   (CCS)..5/2/97 (
20880 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
20890 43 68 61 6e 67 65 64 20 74 68 65 20 6e 61 6d 65  Changed the name
208a0 20 6f 66 20 74 68 65 20 74 77 6f 20 54 63 6c 20   of the two Tcl 
208b0 76 61 72 69 61 62 6c 65 73 20 75 73 65 64 20 66  variables used f
208c0 6f 72 0a 74 72 61 63 69 6e 67 20 62 79 74 65 63  or.tracing bytec
208d0 6f 64 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  ode compilation 
208e0 61 6e 64 20 65 78 65 63 75 74 69 6f 6e 20 74 6f  and execution to
208f0 20 74 63 6c 5f 74 72 61 63 65 43 6f 6d 70 69 6c   tcl_traceCompil
20900 65 20 61 6e 64 0a 74 63 6c 5f 74 72 61 63 65 45  e and.tcl_traceE
20910 78 65 63 20 72 65 73 70 65 63 74 69 76 65 6c 79  xec respectively
20920 2e 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65  . These variable
20930 73 20 61 72 65 20 6e 6f 77 20 64 6f 63 75 6d 65  s are now docume
20940 6e 74 65 64 20 69 6e 20 74 68 65 0a 74 63 6c 76  nted in the.tclv
20950 61 72 73 20 6d 61 6e 20 70 61 67 65 2e 20 28 42  ars man page. (B
20960 4c 29 0a 0a 35 2f 35 2f 39 37 20 28 6e 65 77 20  L)..5/5/97 (new 
20970 66 65 61 74 75 72 65 29 20 53 75 70 70 6f 72 74  feature) Support
20980 20 22 65 6e 64 22 20 61 73 20 74 68 65 20 69 6e   "end" as the in
20990 64 65 78 20 66 6f 72 20 22 6c 73 6f 72 74 20 2d  dex for "lsort -
209a0 69 6e 64 65 78 22 2e 20 28 42 57 29 0a 0a 35 2f  index". (BW)..5/
209b0 35 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29  5/97 (bug fixes)
209c0 20 43 6c 65 61 6e 65 64 20 75 70 20 74 68 65 20   Cleaned up the 
209d0 77 61 79 20 74 68 65 20 68 74 74 70 20 70 61 63  way the http pac
209e0 6b 61 67 65 20 72 65 73 65 74 73 20 63 6f 6e 6e  kage resets conn
209f0 65 63 74 69 6f 6e 73 20 28 42 57 29 0a 0a 35 2f  ections (BW)..5/
20a00 38 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68  8/97 (feature ch
20a10 61 6e 67 65 29 20 4e 65 77 6c 79 20 63 72 65 61  ange) Newly crea
20a20 74 65 64 20 54 63 6c 20 6f 62 6a 65 63 74 73 20  ted Tcl objects 
20a30 6e 6f 77 20 68 61 76 65 20 61 20 72 65 66 65 72  now have a refer
20a40 65 6e 63 65 20 63 6f 75 6e 74 0a 6f 66 20 7a 65  ence count.of ze
20a50 72 6f 20 69 6e 73 74 65 61 64 20 6f 66 20 6f 6e  ro instead of on
20a60 65 2e 20 54 68 69 73 20 73 69 6d 70 6c 69 66 69  e. This simplifi
20a70 65 73 20 43 20 63 6f 64 65 20 74 68 61 74 20 73  es C code that s
20a80 74 6f 72 65 73 20 6e 65 77 6c 79 20 63 72 65 61  tores newly crea
20a90 74 65 64 0a 6f 62 6a 65 63 74 73 20 69 6e 20 54  ted.objects in T
20aa0 63 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 72 20  cl variables or 
20ab0 69 6e 20 64 61 74 61 20 73 74 72 75 63 74 75 72  in data structur
20ac0 65 73 20 73 75 63 68 20 61 73 20 6c 69 73 74 20  es such as list 
20ad0 6f 62 6a 65 63 74 73 2e 20 54 68 61 74 20 43 0a  objects. That C.
20ae0 63 6f 64 65 20 6d 75 73 74 20 69 6e 63 72 65 6d  code must increm
20af0 65 6e 74 20 74 68 65 20 6e 65 77 20 6f 62 6a 65  ent the new obje
20b00 63 74 27 73 20 72 65 66 65 72 65 6e 63 65 20 63  ct's reference c
20b10 6f 75 6e 74 20 73 69 6e 63 65 20 74 68 65 20 76  ount since the v
20b20 61 72 69 61 62 6c 65 20 6f 72 0a 64 61 74 61 20  ariable or.data 
20b30 73 74 72 75 63 74 75 72 65 20 77 69 6c 6c 20 63  structure will c
20b40 6f 6e 74 61 69 6e 20 61 20 6c 6f 6e 67 2d 74 65  ontain a long-te
20b50 72 6d 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20  rm reference to 
20b60 74 68 65 20 6f 62 6a 65 63 74 2e 20 46 6f 72 6d  the object. Form
20b70 65 72 6c 79 2c 0a 77 68 65 6e 20 6e 65 77 20 6f  erly,.when new o
20b80 62 6a 65 63 74 73 20 73 74 61 72 74 65 64 20 6f  bjects started o
20b90 75 74 20 77 69 74 68 20 72 65 66 65 72 65 6e 63  ut with referenc
20ba0 65 20 63 6f 75 6e 74 20 6f 6e 65 2c 20 69 74 20  e count one, it 
20bb0 77 61 73 20 6e 65 63 65 73 73 61 72 79 20 74 6f  was necessary to
20bc0 0a 64 65 63 72 65 6d 65 6e 74 20 74 68 65 20 6e  .decrement the n
20bd0 65 77 20 6f 62 6a 65 63 74 27 73 20 72 65 66 65  ew object's refe
20be0 72 65 6e 63 65 20 63 6f 75 6e 74 20 61 66 74 65  rence count afte
20bf0 72 20 74 68 65 20 73 74 6f 72 65 20 74 6f 20 6d  r the store to m
20c00 61 6b 65 20 73 75 72 65 20 69 74 0a 77 61 73 20  ake sure it.was 
20c10 6c 65 66 74 20 77 69 74 68 20 74 68 65 20 63 6f  left with the co
20c20 72 72 65 63 74 20 76 61 6c 75 65 3b 20 74 68 69  rrect value; thi
20c30 73 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e  s is no longer n
20c40 65 63 65 73 73 61 72 79 2e 20 28 42 4c 29 0a 0a  ecessary. (BL)..
20c50 35 2f 39 2f 39 37 20 28 6e 65 77 20 66 65 61 74  5/9/97 (new feat
20c60 75 72 65 29 20 41 64 64 65 64 20 74 68 65 20 54  ure) Added the T
20c70 63 6c 5f 47 65 74 73 4f 62 6a 20 69 6e 74 65 72  cl_GetsObj inter
20c80 66 61 63 65 20 74 68 61 74 20 74 61 6b 65 73 20  face that takes 
20c90 61 6e 0a 6f 62 6a 65 63 74 20 72 65 66 65 72 65  an.object refere
20ca0 6e 63 65 20 69 6e 73 74 65 61 64 20 6f 66 20 61  nce instead of a
20cb0 20 64 79 6e 61 6d 69 63 20 73 74 72 69 6e 67 20   dynamic string 
20cc0 28 61 73 20 69 6e 20 54 63 6c 5f 47 65 74 73 29  (as in Tcl_Gets)
20cd0 2e 20 28 53 53 29 0a 0a 35 2f 31 32 2f 39 37 20  . (SS)..5/12/97 
20ce0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
20cf0 64 65 64 20 54 63 6c 5f 43 72 65 61 74 65 41 6c  ded Tcl_CreateAl
20d00 69 61 73 4f 62 6a 20 61 6e 64 20 54 63 6c 5f 47  iasObj and Tcl_G
20d10 65 74 41 6c 69 61 73 4f 62 6a 20 43 20 41 50 49  etAliasObj C API
20d20 73 0a 74 6f 20 61 6c 6c 6f 77 20 61 6e 20 61 6c  s.to allow an al
20d30 69 61 73 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62  ias command to b
20d40 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20 61  e created with a
20d50 20 76 65 63 74 6f 72 20 6f 66 20 54 63 6c 5f 4f   vector of Tcl_O
20d60 62 6a 20 73 74 72 75 63 74 75 72 65 73 0a 61 6e  bj structures.an
20d70 64 20 74 6f 20 67 65 74 20 74 68 65 20 76 65 63  d to get the vec
20d80 74 6f 72 20 62 61 63 6b 20 6c 61 74 65 72 2e 20  tor back later. 
20d90 28 4a 4c 29 0a 0a 35 2f 31 32 2f 39 37 20 28 66  (JL)..5/12/97 (f
20da0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
20db0 68 61 6e 67 65 64 20 54 63 6c 5f 45 78 70 6f 73  hanged Tcl_Expos
20dc0 65 43 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63 6c  eCommand and Tcl
20dd0 5f 48 69 64 65 43 6f 6d 6d 61 6e 64 20 74 6f 0a  _HideCommand to.
20de0 6c 65 61 76 65 20 61 6e 20 6f 62 6a 65 63 74 20  leave an object 
20df0 72 65 73 75 6c 74 20 69 6e 73 74 65 61 64 20 6f  result instead o
20e00 66 20 61 20 73 74 72 69 6e 67 20 72 65 73 75 6c  f a string resul
20e10 74 2e 20 28 4a 4c 29 0a 0a 35 2f 31 34 2f 39 37  t. (JL)..5/14/97
20e20 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
20e30 29 20 49 6d 70 72 6f 76 65 64 20 74 68 65 20 68  ) Improved the h
20e40 61 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20 69  andling of the i
20e50 6e 74 65 72 70 72 65 74 65 72 20 72 65 73 75 6c  nterpreter resul
20e60 74 2e 0a 54 68 69 73 20 69 73 20 73 74 69 6c 6c  t..This is still
20e70 20 65 69 74 68 65 72 20 61 6e 20 6f 62 6a 65 63   either an objec
20e80 74 20 6f 72 20 61 20 73 74 72 69 6e 67 2c 20 62  t or a string, b
20e90 75 74 20 74 68 65 20 74 77 6f 20 76 61 6c 75 65  ut the two value
20ea0 73 20 61 72 65 20 6e 6f 77 20 6b 65 70 74 0a 63  s are now kept.c
20eb0 6f 6e 73 69 73 74 65 6e 74 20 75 6e 6c 65 73 73  onsistent unless
20ec0 20 73 6f 6d 65 20 43 20 63 6f 64 65 20 72 65 61   some C code rea
20ed0 64 73 20 6f 72 20 77 72 69 74 65 73 20 69 6e 74  ds or writes int
20ee0 65 72 70 2d 3e 72 65 73 75 6c 74 20 64 69 72 65  erp->result dire
20ef0 63 74 6c 79 2e 20 53 65 65 0a 74 68 65 20 53 65  ctly. See.the Se
20f00 74 52 65 73 75 6c 74 20 6d 61 6e 20 70 61 67 65  tResult man page
20f10 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 20 52 65   for details. Re
20f20 6d 6f 76 65 64 20 74 68 65 20 54 63 6c 5f 52 65  moved the Tcl_Re
20f30 73 65 74 4f 62 6a 52 65 73 75 6c 74 0a 70 72 6f  setObjResult.pro
20f40 63 65 64 75 72 65 2e 20 28 42 4c 29 0a 2a 2a 2a  cedure. (BL).***
20f50 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
20f60 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
20f70 54 63 6c 20 38 2e 30 61 32 20 2a 2a 2a 0a 0a 35  Tcl 8.0a2 ***..5
20f80 2f 31 36 2f 39 37 20 28 6e 65 77 20 66 65 61 74  /16/97 (new feat
20f90 75 72 65 29 20 41 64 64 65 64 20 22 66 63 6f 70  ure) Added "fcop
20fa0 79 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 6d 6f  y" command to mo
20fb0 76 65 20 64 61 74 61 20 62 65 74 77 65 65 6e 0a  ve data between.
20fc0 63 68 61 6e 6e 65 6c 73 2e 20 20 52 65 66 65 72  channels.  Refer
20fd0 20 74 6f 20 74 68 65 20 6d 61 6e 75 61 6c 20 70   to the manual p
20fe0 61 67 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66  age for more inf
20ff0 6f 72 6d 61 74 69 6f 6e 2e 20 20 52 65 6d 6f 76  ormation.  Remov
21000 65 64 20 74 68 65 0a 22 75 6e 73 75 70 70 6f 72  ed the."unsuppor
21010 74 65 64 30 22 20 63 6f 6d 6d 61 6e 64 20 73 69  ted0" command si
21020 6e 63 65 20 69 74 20 69 73 20 6f 62 73 6f 6c 65  nce it is obsole
21030 74 65 20 6e 6f 77 2e 20 20 28 53 53 29 0a 0a 35  te now.  (SS)..5
21040 2f 31 36 2f 39 37 20 28 6e 65 77 20 66 65 61 74  /16/97 (new feat
21050 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 47  ure) Added Tcl_G
21060 65 74 53 74 72 69 6e 67 52 65 73 75 6c 74 20 70  etStringResult p
21070 72 6f 63 65 64 75 72 65 20 74 6f 20 61 6c 6c 6f  rocedure to allo
21080 77 20 70 72 6f 67 72 61 6d 73 0a 74 6f 20 67 65  w programs.to ge
21090 74 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72  t an interpreter
210a0 27 73 20 72 65 73 75 6c 74 20 61 73 20 61 20 73  's result as a s
210b0 74 72 69 6e 67 2e 20 49 66 20 74 68 65 20 72 65  tring. If the re
210c0 73 75 6c 74 20 77 61 73 20 70 72 65 76 69 6f 75  sult was previou
210d0 73 6c 79 20 73 65 74 0a 74 6f 20 61 6e 20 6f 62  sly set.to an ob
210e0 6a 65 63 74 2c 20 74 68 69 73 20 70 72 6f 63 65  ject, this proce
210f0 64 75 72 65 20 77 69 6c 6c 20 63 6f 6e 76 65 72  dure will conver
21100 74 20 74 68 65 20 6f 62 6a 65 63 74 20 74 6f 20  t the object to 
21110 61 20 73 74 72 69 6e 67 2e 20 55 73 65 20 6f 66  a string. Use of
21120 0a 54 63 6c 5f 47 65 74 53 74 72 69 6e 67 52 65  .Tcl_GetStringRe
21130 73 75 6c 74 20 69 73 20 69 6e 74 65 6e 64 65 64  sult is intended
21140 20 74 6f 20 72 65 70 6c 61 63 65 20 64 69 72 65   to replace dire
21150 63 74 20 61 63 63 65 73 73 20 74 6f 20 69 6e 74  ct access to int
21160 65 72 70 2d 3e 72 65 73 75 6c 74 2c 0a 77 68 69  erp->result,.whi
21170 63 68 20 69 73 20 6e 6f 74 20 73 61 66 65 2e 20  ch is not safe. 
21180 28 42 4c 29 0a 0a 35 2f 32 30 2f 39 37 20 28 6e  (BL)..5/20/97 (n
21190 65 77 20 66 65 61 74 75 72 65 73 29 20 46 69 78  ew features) Fix
211a0 65 64 20 22 66 63 6f 70 79 22 20 74 6f 20 72 65  ed "fcopy" to re
211b0 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72 20  turn the number 
211c0 6f 66 20 62 79 74 65 73 0a 74 72 61 6e 73 66 65  of bytes.transfe
211d0 72 72 65 64 20 69 6e 20 74 68 65 20 62 6c 6f 63  rred in the bloc
211e0 6b 69 6e 67 20 63 61 73 65 2e 20 20 55 70 64 61  king case.  Upda
211f0 74 65 64 20 74 68 65 20 68 74 74 70 20 70 61 63  ted the http pac
21200 6b 61 67 65 20 74 6f 20 75 73 65 0a 66 63 6f 70  kage to use.fcop
21210 79 20 69 6e 73 74 65 61 64 20 6f 66 20 75 6e 73  y instead of uns
21220 75 70 70 6f 72 74 65 64 30 2e 20 20 41 64 64 65  upported0.  Adde
21230 64 20 2d 74 69 6d 65 6f 75 74 20 61 6e 64 20 2d  d -timeout and -
21240 68 61 6e 64 6c 65 72 20 6f 70 74 69 6f 6e 73 20  handler options 
21250 74 6f 0a 68 74 74 70 5f 67 65 74 2e 20 20 68 74  to.http_get.  ht
21260 74 70 5f 67 65 74 20 69 73 20 6e 6f 77 20 62 6c  tp_get is now bl
21270 6f 63 6b 69 6e 67 20 62 79 20 64 65 66 61 75 6c  ocking by defaul
21280 74 2e 20 20 49 74 20 69 73 20 6f 6e 6c 79 20 6e  t.  It is only n
21290 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 0a 69 66 20 79  on-blocking.if y
212a0 6f 75 20 73 75 70 70 6c 79 20 61 20 2d 63 6f 6d  ou supply a -com
212b0 6d 61 6e 64 20 61 72 67 75 6d 65 6e 74 2e 20 28  mand argument. (
212c0 42 57 29 0a 0a 35 2f 32 32 2f 39 37 20 28 62 75  BW)..5/22/97 (bu
212d0 67 20 66 69 78 29 20 46 69 78 65 64 20 73 65 76  g fix) Fixed sev
212e0 65 72 61 6c 20 62 75 67 73 20 69 6e 20 74 68 65  eral bugs in the
212f0 20 22 6c 73 6f 72 74 22 20 63 6f 6d 6d 61 6e 64   "lsort" command
21300 20 68 61 76 69 6e 67 20 74 6f 20 64 6f 0a 77 69   having to do.wi
21310 74 68 20 74 68 65 20 2d 64 69 63 74 69 6f 6e 61  th the -dictiona
21320 72 79 20 6f 70 74 69 6f 6e 20 61 6e 64 20 74 68  ry option and th
21330 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 6e 75  e presence of nu
21340 6d 62 65 72 73 20 65 6d 62 65 64 64 65 64 20 69  mbers embedded i
21350 6e 20 74 68 65 0a 73 74 72 69 6e 67 73 2e 20 20  n the.strings.  
21360 28 4a 4f 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  (JO)..----------
21370 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
21380 20 38 2e 30 62 31 2c 20 35 2f 32 37 2f 39 37 20   8.0b1, 5/27/97 
21390 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
213a0 2d 2d 2d 2d 2d 2d 2d 0a 0a 36 2f 32 2f 39 37 20  -------..6/2/97 
213b0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
213c0 62 75 67 20 69 6e 20 73 74 61 72 74 75 70 20 63  bug in startup c
213d0 6f 64 65 20 74 68 61 74 20 63 61 75 73 65 64 20  ode that caused 
213e0 61 20 70 72 6f 62 6c 65 6d 20 69 6e 0a 66 69 6e  a problem in.fin
213f0 64 69 6e 67 20 74 68 65 20 6c 69 62 72 61 72 79  ding the library
21400 20 66 69 6c 65 73 20 77 68 65 6e 20 74 68 65 79   files when they
21410 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 20 69   are installed i
21420 6e 20 61 20 64 69 72 65 63 74 6f 72 79 0a 63 6f  n a directory.co
21430 6e 74 61 69 6e 69 6e 67 20 61 20 73 70 61 63 65  ntaining a space
21440 20 69 6e 20 74 68 65 20 6e 61 6d 65 2e 20 28 53   in the name. (S
21450 53 29 0a 0a 36 2f 32 2f 39 37 20 28 62 75 67 20  S)..6/2/97 (bug 
21460 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69  fix) Fixed bug i
21470 6e 20 55 6e 69 78 20 6e 6f 74 69 66 69 65 72 20  n Unix notifier 
21480 77 68 65 72 65 20 74 68 65 20 73 65 6c 65 63 74  where the select
21490 20 6d 61 73 6b 20 77 61 73 0a 6e 6f 74 20 62 65   mask was.not be
214a0 69 6e 67 20 63 6c 65 61 72 65 64 20 75 6e 64 65  ing cleared unde
214b0 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74 61  r some circumsta
214c0 6e 63 65 73 2e 20 28 53 53 29 0a 0a 36 2f 34 2f  nces. (SS)..6/4/
214d0 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
214e0 65 64 20 62 75 67 20 74 68 61 74 20 70 72 65 76  ed bug that prev
214f0 65 6e 74 65 64 20 63 72 65 61 74 69 6f 6e 20 6f  ented creation o
21500 66 20 54 6b 20 77 69 64 67 65 74 73 20 69 6e 0a  f Tk widgets in.
21510 6e 61 6d 65 73 70 61 63 65 73 2e 20 54 63 6c 5f  namespaces. Tcl_
21520 43 72 65 61 74 65 4f 62 6a 43 6f 6d 6d 61 6e 64  CreateObjCommand
21530 20 61 6e 64 20 54 63 6c 5f 43 72 65 61 74 65 43   and Tcl_CreateC
21540 6f 6d 6d 61 6e 64 20 6e 6f 77 20 61 6c 77 61 79  ommand now alway
21550 73 20 63 72 65 61 74 65 0a 63 6f 6d 6d 61 6e 64  s create.command
21560 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c 20  s in the global 
21570 6e 61 6d 65 73 70 61 63 65 20 75 6e 6c 65 73 73  namespace unless
21580 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d   the command nam
21590 65 73 20 61 72 65 20 71 75 61 6c 69 66 69 65 64  es are qualified
215a0 2e 20 54 63 6c 0a 70 72 6f 63 65 64 75 72 65 73  . Tcl.procedures
215b0 20 63 6f 6e 74 69 6e 75 65 20 74 6f 20 62 65 20   continue to be 
215c0 63 72 65 61 74 65 64 20 69 6e 20 74 68 65 20 63  created in the c
215d0 75 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65  urrent namespace
215e0 20 62 79 20 64 65 66 61 75 6c 74 2e 20 28 42 4c   by default. (BL
215f0 29 0a 0a 36 2f 36 2f 39 37 20 28 6e 65 77 20 66  )..6/6/97 (new f
21600 65 61 74 75 72 65 73 29 20 41 64 64 65 64 20 6e  eatures) Added n
21610 65 77 20 6e 61 6d 65 73 70 61 63 65 20 41 50 49  ew namespace API
21620 20 70 72 6f 63 65 64 75 72 65 73 0a 54 63 6c 5f   procedures.Tcl_
21630 41 70 70 65 6e 64 45 78 70 6f 72 74 4c 69 73 74  AppendExportList
21640 20 61 6e 64 20 54 63 6c 5f 45 78 70 6f 72 74 20   and Tcl_Export 
21650 74 6f 20 61 6c 6c 6f 77 20 43 20 63 6f 64 65 20  to allow C code 
21660 74 6f 20 67 65 74 20 61 6e 64 20 73 65 74 20 61  to get and set a
21670 0a 6e 61 6d 65 73 70 61 63 65 27 73 20 65 78 70  .namespace's exp
21680 6f 72 74 20 6c 69 73 74 2e 20 28 42 4c 29 0a 0a  ort list. (BL)..
21690 36 2f 31 31 2f 39 37 20 28 6e 65 77 20 66 65 61  6/11/97 (new fea
216a0 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f  ture) Added Tcl_
216b0 43 6f 6e 63 61 74 4f 62 6a 2e 20 54 68 69 73 20  ConcatObj. This 
216c0 6f 62 6a 65 63 74 2d 62 61 73 65 64 20 72 6f 75  object-based rou
216d0 74 69 6e 65 0a 70 61 72 61 6c 6c 65 6c 73 20 74  tine.parallels t
216e0 68 65 20 73 74 72 69 6e 67 2d 62 61 73 65 64 20  he string-based 
216f0 72 6f 75 74 69 6e 65 20 54 63 6c 5f 43 6f 6e 63  routine Tcl_Conc
21700 61 74 2e 20 28 53 52 50 29 0a 0a 36 2f 31 31 2f  at. (SRP)..6/11/
21710 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  97 (new feature)
21720 20 41 64 64 65 64 20 54 63 6c 5f 53 65 74 4f 62   Added Tcl_SetOb
21730 6a 45 72 72 6f 72 43 6f 64 65 2e 20 54 68 69 73  jErrorCode. This
21740 20 6f 62 6a 65 63 74 2d 62 61 73 65 64 0a 72 6f   object-based.ro
21750 75 74 69 6e 65 73 20 70 61 72 61 6c 6c 65 6c 73  utines parallels
21760 20 74 68 65 20 73 74 72 69 6e 67 2d 62 61 73 65   the string-base
21770 64 20 72 6f 75 74 69 6e 65 20 54 63 6c 5f 53 65  d routine Tcl_Se
21780 74 45 72 72 6f 72 43 6f 64 65 2e 20 28 53 52 50  tErrorCode. (SRP
21790 29 0a 0a 36 2f 31 32 2f 39 37 20 28 62 75 67 20  )..6/12/97 (bug 
217a0 66 69 78 29 20 46 69 78 20 74 68 65 20 22 75 6e  fix) Fix the "un
217b0 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72 65  known" procedure
217c0 20 73 6f 20 74 68 61 74 20 77 69 73 68 20 75 6e   so that wish un
217d0 64 65 72 20 57 69 6e 64 6f 77 73 0a 77 69 6c 6c  der Windows.will
217e0 20 65 78 65 63 20 61 6e 20 65 78 74 65 72 6e 61   exec an externa
217f0 6c 20 70 72 6f 67 72 61 6d 2c 20 69 6e 73 74 65  l program, inste
21800 61 64 20 6f 66 20 61 6c 77 61 79 73 20 63 6f 6d  ad of always com
21810 70 6c 61 69 6e 69 6e 67 20 22 63 6f 6e 73 6f 6c  plaining "consol
21820 65 31 20 6e 6f 74 0a 6f 70 65 6e 65 64 20 66 6f  e1 not.opened fo
21830 72 20 77 72 69 74 69 6e 67 22 2e 20 28 43 43 53  r writing". (CCS
21840 29 0a 0a 36 2f 31 32 2f 39 37 20 28 62 75 67 20  )..6/12/97 (bug 
21850 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20  fix) Fixed core 
21860 64 75 6d 70 20 65 78 70 65 72 69 65 6e 63 65 64  dump experienced
21870 20 62 79 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e   by the followin
21880 67 20 73 69 6d 70 6c 65 0a 73 63 72 69 70 74 3a  g simple.script:
21890 0a 09 69 6e 74 65 72 70 20 63 72 65 61 74 65 20  ..interp create 
218a0 78 0a 09 78 20 61 6c 69 61 73 20 65 78 65 63 20  x..x alias exec 
218b0 65 78 65 63 0a 09 69 6e 74 65 72 70 20 64 65 6c  exec..interp del
218c0 65 74 65 20 78 0a 54 68 69 73 20 70 61 6e 69 63  ete x.This panic
218d0 20 77 61 73 20 63 61 75 73 65 64 20 62 79 20 6e   was caused by n
218e0 6f 74 20 69 6e 73 74 61 6c 6c 69 6e 67 20 74 68  ot installing th
218f0 65 20 6e 65 77 20 43 6d 64 44 65 6c 65 74 65 50  e new CmdDeleteP
21900 72 6f 63 20 77 68 65 6e 20 65 78 65 63 0a 67 6f  roc when exec.go
21910 74 20 72 65 64 65 66 69 6e 65 64 20 62 79 20 74  t redefined by t
21920 68 65 20 61 6c 69 61 73 20 63 72 65 61 74 69 6f  he alias creatio
21930 6e 20 73 74 65 70 2e 20 52 65 70 6f 72 74 65 64  n step. Reported
21940 20 62 79 20 4c 69 6e 64 73 61 79 20 4d 61 72 73   by Lindsay Mars
21950 68 61 6c 20 28 4a 4c 29 0a 0a 36 2f 31 33 2f 39  hal (JL)..6/13/9
21960 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 73 29  7 (new features)
21970 20 54 63 6c 20 6f 62 6a 65 63 74 73 20 6e 65 77   Tcl objects new
21980 6c 79 20 63 72 65 61 74 65 64 20 62 79 20 54 63  ly created by Tc
21990 6c 5f 4e 65 77 4f 62 6a 20 6e 6f 77 20 68 61 76  l_NewObj now hav
219a0 65 20 61 0a 73 74 72 69 6e 67 20 72 65 70 72 65  e a.string repre
219b0 73 65 6e 74 61 74 69 6f 6e 20 74 68 61 74 20 70  sentation that p
219c0 6f 69 6e 74 73 20 74 6f 20 61 20 73 68 61 72 65  oints to a share
219d0 64 20 68 65 61 70 20 73 74 72 69 6e 67 20 6f 66  d heap string of
219e0 20 6c 65 6e 67 74 68 20 31 2e 20 28 54 68 65 79   length 1. (They
219f0 0a 75 73 65 64 20 74 6f 20 68 61 76 65 20 4e 55  .used to have NU
21a00 4c 4c 20 62 79 74 65 73 20 61 6e 64 20 74 79 70  LL bytes and typ
21a10 65 50 74 72 20 66 69 65 6c 64 73 2e 20 54 68 69  ePtr fields. Thi
21a20 73 20 77 61 73 20 74 72 65 61 74 65 64 20 61 73  s was treated as
21a30 20 61 20 73 70 65 63 69 61 6c 0a 63 61 73 65 20   a special.case 
21a40 74 6f 20 69 6e 64 69 63 61 74 65 20 61 6e 20 65  to indicate an e
21a50 6d 70 74 79 20 73 74 72 69 6e 67 2c 20 62 75 74  mpty string, but
21a60 20 6d 61 64 65 20 74 79 70 65 20 6d 61 6e 61 67   made type manag
21a70 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  er implementatio
21a80 6e 73 0a 63 6f 6d 70 6c 65 78 20 61 6e 64 20 65  ns.complex and e
21a90 72 72 6f 72 20 70 72 6f 6e 65 2e 29 20 54 68 65  rror prone.) The
21aa0 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65 20 54   new procedure T
21ab0 63 6c 5f 49 6e 76 61 6c 69 64 61 74 65 53 74 72  cl_InvalidateStr
21ac0 69 6e 67 52 65 70 20 69 73 20 75 73 65 64 0a 74  ingRep is used.t
21ad0 6f 20 6d 61 72 6b 20 61 6e 20 6f 62 6a 65 63 74  o mark an object
21ae0 27 73 20 73 74 72 69 6e 67 20 72 65 70 72 65 73  's string repres
21af0 65 6e 74 61 74 69 6f 6e 20 69 6e 76 61 6c 69 64  entation invalid
21b00 20 61 6e 64 20 74 6f 20 66 72 65 65 20 61 6e 79   and to free any
21b10 20 73 74 6f 72 61 67 65 0a 61 73 73 6f 63 69 61   storage.associa
21b20 74 65 64 20 77 69 74 68 20 74 68 65 20 6f 6c 64  ted with the old
21b30 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e   string represen
21b40 74 61 74 69 6f 6e 2e 20 28 42 4c 29 0a 2a 2a 2a  tation. (BL).***
21b50 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
21b60 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
21b70 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74 20 6e  Tcl 8.0b1, but n
21b80 6f 74 20 77 69 74 68 20 54 63 6c 37 2e 36 20 2a  ot with Tcl7.6 *
21b90 2a 2a 0a 0a 36 2f 31 36 2f 39 37 20 28 62 75 67  **..6/16/97 (bug
21ba0 20 66 69 78 29 20 54 63 6c 5f 53 63 61 6e 43 6f   fix) Tcl_ScanCo
21bb0 75 6e 74 65 64 45 6c 65 6d 65 6e 74 20 63 6f 75  untedElement cou
21bc0 6c 64 20 6c 65 61 76 65 20 62 72 61 63 65 73 20  ld leave braces 
21bd0 75 6e 6d 61 74 63 68 65 64 0a 69 66 20 74 68 65  unmatched.if the
21be0 20 73 74 72 69 6e 67 20 65 6e 64 65 64 20 77 69   string ended wi
21bf0 74 68 20 61 20 62 61 63 6b 73 6c 61 73 68 2e 20  th a backslash. 
21c00 28 4a 4f 29 0a 0a 36 2f 31 37 2f 39 37 20 28 62  (JO)..6/17/97 (b
21c10 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63 68  ug fix) Fixed ch
21c20 61 6e 6e 65 6c 20 65 76 65 6e 74 20 62 75 67 20  annel event bug 
21c30 77 68 65 72 65 20 72 65 61 64 61 62 6c 65 20 65  where readable e
21c40 76 65 6e 74 73 20 77 6f 75 6c 64 20 62 65 0a 6c  vents would be.l
21c50 6f 73 74 20 64 75 72 69 6e 67 20 72 65 63 75 72  ost during recur
21c60 73 69 76 65 20 65 76 65 6e 74 73 20 6c 6f 6f 70  sive events loop
21c70 73 20 69 66 20 74 68 65 20 69 6e 70 75 74 20 62  s if the input b
21c80 75 66 66 65 72 73 20 63 6f 6e 74 61 69 6e 65 64  uffers contained
21c90 0a 64 61 74 61 2e 20 28 53 53 29 0a 0a 36 2f 31  .data. (SS)..6/1
21ca0 37 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  7/97 (bug fix) F
21cb0 69 78 65 64 20 62 75 67 20 69 6e 20 57 69 6e 64  ixed bug in Wind
21cc0 6f 77 73 20 73 6f 63 6b 65 74 20 63 6f 64 65 20  ows socket code 
21cd0 74 68 61 74 20 64 69 64 6e 27 74 0a 72 65 65 6e  that didn't.reen
21ce0 61 62 6c 65 20 72 65 61 64 20 65 76 65 6e 74 73  able read events
21cf0 20 69 6e 20 74 68 65 20 63 61 73 65 20 77 68 65   in the case whe
21d00 72 65 20 61 6e 20 65 78 74 65 72 6e 61 6c 20 65  re an external e
21d10 6e 74 69 74 79 20 69 73 20 61 6c 73 6f 0a 72 65  ntity is also.re
21d20 61 64 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 73  ading from the s
21d30 6f 63 6b 65 74 2e 20 28 53 53 29 0a 0a 36 2f 31  ocket. (SS)..6/1
21d40 38 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 43  8/97 (bug fix) C
21d50 68 61 6e 67 65 64 20 69 6e 69 74 69 61 6c 20 73  hanged initial s
21d60 65 74 74 69 6e 67 20 6f 66 20 74 68 65 20 6e 6f  etting of the no
21d70 74 69 66 69 65 72 20 73 65 72 76 69 63 65 20 6d  tifier service m
21d80 6f 64 65 0a 74 6f 20 54 43 4c 5f 53 45 52 56 49  ode.to TCL_SERVI
21d90 43 45 5f 4e 4f 4e 45 20 74 6f 20 61 76 6f 69 64  CE_NONE to avoid
21da0 20 75 6e 65 78 70 65 63 74 65 64 20 65 76 65 6e   unexpected even
21db0 74 20 68 61 6e 64 6c 69 6e 67 20 64 75 72 69 6e  t handling durin
21dc0 67 0a 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  g.initialization
21dd0 2e 20 28 53 53 29 0a 0a 36 2f 31 39 2f 39 37 20  . (SS)..6/19/97 
21de0 28 62 75 67 20 66 69 78 2f 66 65 61 74 75 72 65  (bug fix/feature
21df0 20 63 68 61 6e 67 65 29 20 54 68 65 20 63 6f 6d   change) The com
21e00 6d 61 6e 64 20 63 61 6c 6c 62 61 63 6b 20 74 6f  mand callback to
21e10 20 66 63 6f 70 79 20 69 73 20 6e 6f 77 0a 63 61   fcopy is now.ca
21e20 6c 6c 65 64 20 69 6e 20 63 61 73 65 20 6f 66 20  lled in case of 
21e30 65 72 72 6f 72 73 20 64 75 72 69 6e 67 20 74 68  errors during th
21e40 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 70  e background cop
21e50 79 2e 20 20 54 68 69 73 20 61 64 64 73 20 61 20  y.  This adds a 
21e60 73 65 63 6f 6e 64 2c 0a 6f 70 74 69 6f 6e 61 6c  second,.optional
21e70 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 74 68 65   argument to the
21e80 20 63 61 6c 6c 62 61 63 6b 20 74 68 61 74 20 69   callback that i
21e90 73 20 74 68 65 20 65 72 72 6f 72 20 73 74 72 69  s the error stri
21ea0 6e 67 2e 20 20 54 68 65 20 63 61 6c 6c 62 61 63  ng.  The callbac
21eb0 6b 0a 69 6e 20 63 61 73 65 20 6f 66 20 65 72 72  k.in case of err
21ec0 6f 72 73 20 69 73 20 72 65 71 75 69 72 65 64 20  ors is required 
21ed0 66 6f 72 20 70 72 6f 70 65 72 20 63 6c 65 61 6e  for proper clean
21ee0 75 70 20 62 79 20 74 68 65 20 75 73 65 72 20 6f  up by the user o
21ef0 66 20 66 63 6f 70 79 2e 20 28 42 57 29 0a 2a 2a  f fcopy. (BW).**
21f00 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
21f10 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
21f20 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74 20   Tcl 8.0b1, but 
21f30 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e 36  not with Tcl 7.6
21f40 20 2a 2a 2a 0a 0a 36 2f 31 39 2f 39 37 20 28 62   ***..6/19/97 (b
21f50 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61 20  ug fix) Fixed a 
21f60 70 61 6e 69 63 20 64 75 65 20 74 6f 20 74 68 65  panic due to the
21f70 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6f 75 72 20   following four 
21f80 6c 69 6e 65 20 73 63 72 69 70 74 3a 0a 09 69 6e  line script:..in
21f90 74 65 72 70 20 63 72 65 61 74 65 20 78 0a 09 78  terp create x..x
21fa0 20 61 6c 69 61 73 20 66 6f 6f 20 62 61 72 0a 09   alias foo bar..
21fb0 78 20 65 76 61 6c 20 72 65 6e 61 6d 65 20 66 6f  x eval rename fo
21fc0 6f 20 62 6c 6f 74 7a 0a 09 78 20 61 6c 69 61 73  o blotz..x alias
21fd0 20 66 6f 6f 20 7b 7d 0a 54 68 65 20 70 72 6f 62   foo {}.The prob
21fe0 6c 65 6d 20 77 61 73 20 74 68 61 74 20 74 68 65  lem was that the
21ff0 20 69 6e 74 65 72 70 20 63 6f 64 65 20 77 61 73   interp code was
22000 20 6e 6f 74 20 75 73 69 6e 67 20 74 68 65 20 61   not using the a
22010 63 74 75 61 6c 20 63 75 72 72 65 6e 74 20 6e 61  ctual current na
22020 6d 65 0a 6f 66 20 74 68 65 20 63 6f 6d 6d 61 6e  me.of the comman
22030 64 20 74 6f 20 62 65 20 64 65 6c 65 74 65 64 20  d to be deleted 
22040 61 73 20 61 20 72 65 73 75 6c 74 20 6f 66 20 75  as a result of u
22050 6e 2d 61 6c 69 61 73 69 6e 67 20 66 6f 6f 2e 20  n-aliasing foo. 
22060 28 4a 4c 29 0a 0a 36 2f 31 39 2f 39 37 20 28 66  (JL)..6/19/97 (f
22070 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 50  eature change) P
22080 61 73 73 20 69 6e 74 65 72 70 20 64 6f 77 6e 20  ass interp down 
22090 74 6f 20 74 68 65 20 43 68 61 6e 6e 65 6c 4f 70  to the ChannelOp
220a0 74 69 6f 6e 20 61 6e 64 0a 64 72 69 76 65 72 20  tion and.driver 
220b0 73 70 65 63 69 66 69 63 20 63 61 6c 6c 73 20 73  specific calls s
220c0 6f 20 73 79 73 74 65 6d 20 65 72 72 6f 72 73 20  o system errors 
220d0 63 61 6e 20 62 65 20 64 69 66 66 65 72 65 6e 74  can be different
220e0 69 61 74 65 64 20 66 72 6f 6d 20 73 79 6e 74 61  iated from synta
220f0 78 0a 6f 6e 65 73 2e 20 43 68 61 6e 67 65 64 20  x.ones. Changed 
22100 54 63 6c 5f 44 72 69 76 65 72 47 65 74 4f 70 74  Tcl_DriverGetOpt
22110 69 6f 6e 50 72 6f 63 20 74 79 70 65 2e 20 41 66  ionProc type. Af
22120 66 65 63 74 73 20 54 63 6c 5f 47 65 74 43 68 61  fects Tcl_GetCha
22130 6e 6e 65 6c 4f 70 74 69 6f 6e 2c 0a 54 63 70 47  nnelOption,.TcpG
22140 65 74 4f 70 74 69 6f 6e 50 72 6f 63 2c 20 20 54  etOptionProc,  T
22150 74 79 47 65 74 4f 70 74 69 6f 6e 50 72 6f 63 2c  tyGetOptionProc,
22160 20 65 74 63 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50   etc. (DL).*** P
22170 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
22180 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 36 2f  TIBILITY ***..6/
22190 31 39 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75  19/97 (new featu
221a0 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 42 61  re) Added Tcl_Ba
221b0 64 43 68 61 6e 6e 65 6c 4f 70 74 69 6f 6e 20 66  dChannelOption f
221c0 6f 72 20 75 73 65 20 62 79 20 62 79 20 64 72 69  or use by by dri
221d0 76 65 72 0a 73 70 65 63 69 66 69 63 20 6f 70 74  ver.specific opt
221e0 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 73 20 28  ion procedures (
221f0 53 65 74 20 61 6e 64 20 47 65 74 29 20 74 6f 20  Set and Get) to 
22200 72 65 74 75 72 6e 20 61 20 63 6f 6d 70 6c 65 74  return a complet
22210 65 20 61 6e 64 0a 6d 65 61 6e 69 6e 67 66 75 6c  e and.meaningful
22220 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e 20   error message. 
22230 28 44 4c 29 0a 0a 36 2f 31 39 2f 39 37 20 28 62  (DL)..6/19/97 (b
22240 75 67 20 66 69 78 65 73 29 20 49 66 20 61 20 73  ug fixes) If a s
22250 79 73 74 65 6d 20 63 61 6c 6c 20 65 72 72 6f 72  ystem call error
22260 20 6f 63 63 75 72 73 20 77 68 69 6c 65 20 64 6f   occurs while do
22270 69 6e 67 20 61 6e 0a 66 63 6f 6e 66 69 67 75 72  ing an.fconfigur
22280 65 20 6f 6e 20 74 63 70 20 6f 72 20 74 74 79 2f  e on tcp or tty/
22290 63 6f 6d 20 63 68 61 6e 6e 65 6c 3a 20 72 65 74  com channel: ret
222a0 75 72 6e 20 74 68 65 20 61 70 70 72 6f 70 72 69  urn the appropri
222b0 61 74 65 20 65 72 72 6f 72 0a 6d 65 73 73 61 67  ate error.messag
222c0 65 20 28 69 6e 73 74 65 61 64 20 6f 66 20 74 68  e (instead of th
222d0 65 20 73 79 6e 74 61 78 20 65 72 72 6f 72 20 6f  e syntax error o
222e0 6e 65 20 6f 72 20 6e 6f 6e 65 29 2e 20 28 46 69  ne or none). (Fi
222f0 78 65 64 20 66 6f 72 20 55 6e 69 78 20 61 6e 64  xed for Unix and
22300 0a 6d 6f 73 74 20 6f 66 20 74 68 65 20 57 69 6e  .most of the Win
22310 20 61 6e 64 20 4d 61 63 20 64 72 69 76 65 72 73   and Mac drivers
22320 29 2e 20 28 44 4c 29 0a 0a 36 2f 32 30 2f 39 37  ). (DL)..6/20/97
22330 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
22340 29 20 45 76 61 6c 20 69 73 20 6e 6f 20 6c 6f 6e  ) Eval is no lon
22350 67 65 72 20 61 73 73 75 6d 65 64 20 61 73 20 74  ger assumed as t
22360 68 65 20 73 75 62 63 6f 6d 6d 61 6e 64 20 6e 61  he subcommand na
22370 6d 65 0a 69 6e 20 6e 61 6d 65 73 70 61 63 65 20  me.in namespace 
22380 63 6f 6d 6d 61 6e 64 73 3a 20 79 6f 75 20 6d 75  commands: you mu
22390 73 74 20 6e 6f 77 20 77 72 69 74 65 20 22 6e 61  st now write "na
223a0 6d 65 73 70 61 63 65 20 65 76 61 6c 20 6e 73 4e  mespace eval nsN
223b0 61 6d 65 20 7b 2e 2e 2e 7d 22 2e 0a 41 62 62 72  ame {...}"..Abbr
223c0 65 76 69 61 74 69 6f 6e 73 20 6f 66 20 6e 61 6d  eviations of nam
223d0 65 73 70 61 63 65 20 73 75 62 63 6f 6d 6d 61 6e  espace subcomman
223e0 64 20 6e 61 6d 65 73 20 61 72 65 20 6e 6f 77 20  d names are now 
223f0 61 6c 6c 6f 77 65 64 2e 20 28 42 4c 29 0a 2a 2a  allowed. (BL).**
22400 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
22410 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
22420 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74 20   Tcl 8.0b1, but 
22430 6e 6f 74 20 77 69 74 68 20 54 63 6c 37 2e 36 20  not with Tcl7.6 
22440 2a 2a 2a 0a 0a 36 2f 32 30 2f 39 37 20 28 66 65  ***..6/20/97 (fe
22450 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43 68  ature change) Ch
22460 61 6e 67 65 64 20 74 68 65 20 65 72 72 6f 72 49  anged the errorI
22470 6e 66 6f 20 74 72 61 63 65 62 61 63 6b 20 6d 65  nfo traceback me
22480 73 73 61 67 65 20 66 6f 72 0a 63 6f 6d 70 69 6c  ssage for.compil
22490 61 74 69 6f 6e 20 65 72 72 6f 72 73 20 66 72 6f  ation errors fro
224a0 6d 20 22 69 6e 76 6f 6b 65 64 20 66 72 6f 6d 20  m "invoked from 
224b0 77 69 74 68 69 6e 22 20 74 6f 20 22 77 68 69 6c  within" to "whil
224c0 65 20 63 6f 6d 70 69 6c 69 6e 67 22 2e 20 28 42  e compiling". (B
224d0 4c 29 0a 0a 36 2f 32 30 2f 39 37 20 28 62 75 67  L)..6/20/97 (bug
224e0 20 66 69 78 65 73 29 20 46 69 78 65 64 20 76 61   fixes) Fixed va
224f0 72 69 6f 75 73 20 63 6f 6d 70 69 6c 61 74 69 6f  rious compilatio
22500 6e 2d 72 65 6c 61 74 65 64 20 62 75 67 73 3a 0a  n-related bugs:.
22510 20 20 20 20 2d 20 22 55 70 64 61 74 65 53 74 72      - "UpdateStr
22520 69 6e 67 4f 66 43 6d 64 4e 61 6d 65 20 73 68 6f  ingOfCmdName sho
22530 75 6c 64 20 6e 65 76 65 72 20 62 65 20 63 61 6c  uld never be cal
22540 6c 65 64 22 20 61 6e 64 0a 20 20 20 20 20 20 22  led" and.      "
22550 55 70 64 61 74 65 53 74 72 69 6e 67 4f 66 42 79  UpdateStringOfBy
22560 74 65 43 6f 64 65 20 73 68 6f 75 6c 64 20 6e 65  teCode should ne
22570 76 65 72 20 62 65 20 63 61 6c 6c 65 64 22 20 70  ver be called" p
22580 61 6e 69 63 73 2e 0a 20 20 20 20 2d 20 53 65 67  anics..    - Seg
22590 66 61 75 6c 74 20 69 6e 20 54 63 6c 4f 62 6a 49  fault in TclObjI
225a0 6e 74 65 72 70 50 72 6f 63 20 67 65 74 74 69 6e  nterpProc gettin
225b0 67 20 70 72 6f 63 65 64 75 72 65 20 6e 61 6d 65  g procedure name
225c0 20 61 66 74 65 72 20 65 76 61 6c 75 61 74 69 6f   after evaluatio
225d0 6e 0a 20 20 20 20 20 20 73 74 61 63 6b 20 69 73  n.      stack is
225e0 20 72 65 61 6c 6c 6f 63 61 74 65 64 20 28 67 72   reallocated (gr
225f0 6f 77 6e 29 2e 0a 20 20 20 20 2d 20 43 6f 75 6c  own)..    - Coul
22600 64 20 6e 6f 74 20 75 73 65 20 22 3a 22 20 61 74  d not use ":" at
22610 20 65 6e 64 20 6f 66 20 76 61 72 69 61 62 6c 65   end of variable
22620 20 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d   and command nam
22630 65 73 2e 0a 20 20 20 20 2d 20 42 61 64 20 63 6f  es..    - Bad co
22640 64 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72  de generated for
22650 20 77 68 69 6c 65 20 61 6e 64 20 66 6f 72 20 63   while and for c
22660 6f 6d 6d 61 6e 64 73 20 77 69 74 68 20 74 65 73  ommands with tes
22670 74 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20 20  t expressions.  
22680 20 20 20 20 65 6e 63 6c 6f 73 65 64 20 69 6e 20      enclosed in 
22690 71 75 6f 74 65 73 3a 20 65 2e 67 2e 2c 20 22 73  quotes: e.g., "s
226a0 65 74 20 69 20 30 3b 20 77 68 69 6c 65 20 22 24  et i 0; while "$
226b0 69 20 3e 20 35 22 20 7b 7d 22 2e 0a 20 20 20 20  i > 5" {}"..    
226c0 2d 20 43 6f 6d 6d 61 6e 64 20 74 72 61 63 65 20  - Command trace 
226d0 70 72 6f 63 65 64 75 72 65 73 20 77 6f 75 6c 64  procedures would
226e0 20 63 72 61 73 68 20 69 66 20 74 68 65 79 20 64   crash if they d
226f0 69 64 20 61 20 54 63 6c 5f 45 76 61 6c 4f 62 6a  id a Tcl_EvalObj
22700 20 74 68 61 74 0a 20 20 20 20 20 20 72 65 61 6c   that.      real
22710 6c 6f 63 61 74 65 64 20 74 68 65 20 65 76 61 6c  located the eval
22720 75 61 74 69 6f 6e 20 73 74 61 63 6b 2e 0a 20 20  uation stack..  
22730 20 20 2d 20 42 72 65 61 6b 20 61 6e 64 20 63 6f    - Break and co
22740 6e 74 69 6e 75 65 20 63 6f 6d 6d 61 6e 64 73 20  ntinue commands 
22750 64 69 64 20 6e 6f 74 20 72 65 73 65 74 20 74 68  did not reset th
22760 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 72 65  e interpreter re
22770 73 75 6c 74 2e 0a 20 20 20 20 2d 20 54 68 65 20  sult..    - The 
22780 54 63 6c 5f 45 78 70 72 58 58 58 20 72 6f 75 74  Tcl_ExprXXX rout
22790 69 6e 65 73 2c 20 62 6f 74 68 20 73 74 72 69 6e  ines, both strin
227a0 67 2d 20 6f 72 20 6f 62 6a 65 63 74 2d 62 61 73  g- or object-bas
227b0 65 64 2c 20 61 6c 77 61 79 73 0a 20 20 20 20 20  ed, always.     
227c0 20 6d 6f 64 69 66 69 65 64 20 74 68 65 20 69 6e   modified the in
227d0 74 65 72 70 72 65 74 65 72 20 72 65 73 75 6c 74  terpreter result
227e0 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20 77   even if there w
227f0 61 73 20 6e 6f 20 65 72 72 6f 72 2e 0a 20 20 20  as no error..   
22800 20 2d 20 54 68 65 20 61 72 67 75 6d 65 6e 74 20   - The argument 
22810 70 61 72 73 69 6e 67 20 70 72 6f 63 65 64 75 72  parsing procedur
22820 65 20 75 73 65 64 20 62 79 20 73 65 76 65 72 61  e used by severa
22830 6c 20 63 6f 6d 70 69 6c 65 20 70 72 6f 63 65 64  l compile proced
22840 75 72 65 73 0a 20 20 20 20 20 20 61 6c 77 61 79  ures.      alway
22850 73 20 74 72 65 61 74 65 64 20 22 5d 22 20 61 73  s treated "]" as
22860 20 65 6e 64 20 6f 66 20 61 20 63 6f 6d 6d 61 6e   end of a comman
22870 64 3a 20 65 2e 67 2e 2c 20 22 73 65 74 20 61 20  d: e.g., "set a 
22880 5d 22 20 77 6f 75 6c 64 20 66 61 69 6c 2e 0a 20  ]" would fail.. 
22890 20 20 20 2d 20 43 68 61 6e 67 65 64 20 65 72 72     - Changed err
228a0 6f 72 49 6e 66 6f 20 74 72 61 63 65 62 61 63 6b  orInfo traceback
228b0 20 6d 65 73 73 61 67 65 20 66 6f 72 20 63 6f 6d   message for com
228c0 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 73 20  pilation errors 
228d0 66 72 6f 6d 20 0a 20 20 20 20 20 20 22 69 6e 76  from .      "inv
228e0 6f 6b 65 64 20 66 72 6f 6d 20 77 69 74 68 69 6e  oked from within
228f0 22 20 74 6f 20 22 77 68 69 6c 65 20 63 6f 6d 70  " to "while comp
22900 69 6c 69 6e 67 22 2e 0a 20 20 20 20 2d 20 50 72  iling"..    - Pr
22910 6f 62 6c 65 6d 20 69 6e 69 74 69 61 6c 69 7a 69  oblem initializi
22920 6e 67 20 54 63 6c 20 6f 62 6a 65 63 74 20 6d 61  ng Tcl object ma
22930 6e 61 67 65 72 73 20 64 75 72 69 6e 67 20 69 6e  nagers during in
22940 74 65 72 70 72 65 74 65 72 20 63 72 65 61 74 69  terpreter creati
22950 6f 6e 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20  on..    - Added 
22960 63 68 65 63 6b 20 61 6e 64 20 65 72 72 6f 72 20  check and error 
22970 6d 65 73 73 61 67 65 20 69 66 20 66 6f 72 6d 61  message if forma
22980 6c 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20 61  l parameter to a
22990 20 70 72 6f 63 65 64 75 72 65 20 69 73 0a 20 20   procedure is.  
229a0 20 20 20 20 61 6e 20 61 72 72 61 79 20 65 6c 65      an array ele
229b0 6d 65 6e 74 2e 20 28 42 4c 29 0a 0a 36 2f 32 33  ment. (BL)..6/23
229c0 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65  /97 (new feature
229d0 29 20 41 64 64 65 64 20 22 72 65 67 69 73 74 72  ) Added "registr
229e0 79 22 20 70 61 63 6b 61 67 65 20 74 6f 20 61 6c  y" package to al
229f0 6c 6f 77 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e  low manipulation
22a00 0a 6f 66 20 74 68 65 20 57 69 6e 64 6f 77 73 20  .of the Windows 
22a10 73 79 73 74 65 6d 20 72 65 67 69 73 74 72 79 2e  system registry.
22a20 20 20 53 65 65 20 6d 61 6e 75 61 6c 20 65 6e 74    See manual ent
22a30 72 79 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 20  ry for details. 
22a40 28 53 53 29 0a 0a 36 2f 32 34 2f 39 37 20 28 66  (SS)..6/24/97 (f
22a50 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
22a60 6f 6e 76 65 72 74 65 64 20 68 74 74 70 20 74 6f  onverted http to
22a70 20 61 20 70 61 63 6b 61 67 65 20 61 6e 64 20 61   a package and a
22a80 64 64 65 64 20 74 68 65 0a 68 74 74 70 31 2e 30  dded the.http1.0
22a90 20 73 75 62 64 69 72 65 63 74 6f 72 79 20 6f 66   subdirectory of
22aa0 20 74 68 65 20 54 63 6c 20 73 63 72 69 70 74 20   the Tcl script 
22ab0 6c 69 62 72 61 72 79 2e 20 20 54 68 69 73 20 6d  library.  This m
22ac0 65 61 6e 73 20 79 6f 75 20 68 61 76 65 0a 74 6f  eans you have.to
22ad0 20 64 6f 20 61 20 22 70 61 63 6b 61 67 65 20 72   do a "package r
22ae0 65 71 75 69 72 65 20 68 74 74 70 22 20 74 6f 20  equire http" to 
22af0 75 73 65 20 74 68 69 73 2c 20 61 73 20 61 64 76  use this, as adv
22b00 65 72 74 69 73 65 64 20 69 6e 20 74 68 65 20 6d  ertised in the m
22b10 61 6e 20 70 61 67 65 2e 20 28 42 57 29 0a 2a 2a  an page. (BW).**
22b20 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
22b30 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
22b40 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74 20   Tcl 8.0b1, but 
22b50 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e 36  not with Tcl 7.6
22b60 20 2a 2a 2a 0a 0a 36 2f 32 34 2f 39 37 20 28 62   ***..6/24/97 (b
22b70 75 67 20 66 69 78 29 20 45 6e 73 75 72 65 20 74  ug fix) Ensure t
22b80 68 61 74 20 54 63 6c 5f 53 65 74 2f 47 65 74 56  hat Tcl_Set/GetV
22b90 61 72 20 43 20 41 50 49 73 2c 20 77 68 65 6e 20  ar C APIs, when 
22ba0 63 61 6c 6c 65 64 20 77 69 74 68 6f 75 74 0a 54  called without.T
22bb0 43 4c 5f 4c 45 41 56 45 5f 45 52 52 5f 4d 53 47  CL_LEAVE_ERR_MSG
22bc0 2c 20 64 6f 6e 27 74 20 74 6f 75 63 68 20 74 68  , don't touch th
22bd0 65 20 69 6e 74 65 72 70 20 72 65 73 75 6c 74 2e  e interp result.
22be0 20 28 44 4c 29 0a 0a 36 2f 32 36 2f 39 37 20 28   (DL)..6/26/97 (
22bf0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
22c00 43 68 61 6e 67 65 64 20 6e 61 6d 65 20 6f 66 20  Changed name of 
22c10 54 63 6c 5f 45 78 70 72 53 74 72 69 6e 67 4f 62  Tcl_ExprStringOb
22c20 6a 20 74 6f 0a 54 63 6c 5f 45 78 70 72 4f 62 6a  j to.Tcl_ExprObj
22c30 2e 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (BL).*** POTEN
22c40 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
22c50 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e  LITY with Tcl 8.
22c60 30 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69 74  0b1, but not wit
22c70 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a 2d  h Tcl 7.6 ***..-
22c80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22c90 20 52 65 6c 65 61 73 65 64 20 38 2e 30 62 32 2c   Released 8.0b2,
22ca0 20 36 2f 33 30 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d   6/30/97 -------
22cb0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22cc0 0a 0a 37 2f 31 2f 39 37 20 28 6e 65 77 20 66 65  ..7/1/97 (new fe
22cd0 61 74 75 72 65 29 20 54 43 4c 5f 42 55 49 4c 44  ature) TCL_BUILD
22ce0 5f 53 48 41 52 45 44 20 66 6c 61 67 20 73 65 74  _SHARED flag set
22cf0 20 69 6e 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68   in tclConfig.sh
22d00 0a 77 68 65 6e 20 54 63 6c 20 68 61 73 20 62 65  .when Tcl has be
22d10 65 6e 20 62 75 69 6c 74 20 77 69 74 68 20 2d 2d  en built with --
22d20 65 6e 61 62 6c 65 2d 73 68 61 72 65 64 2e 20 41  enable-shared. A
22d30 20 6e 65 77 20 74 63 6c 4c 69 62 4f 62 6a 73 0a   new tclLibObjs.
22d40 6d 61 6b 65 20 74 61 72 67 65 74 2c 20 65 63 68  make target, ech
22d50 6f 69 6e 67 20 74 68 65 20 6c 69 73 74 20 6f 66  oing the list of
22d60 20 74 68 65 20 2e 6f 27 73 20 6e 65 65 64 65 64   the .o's needed
22d70 20 74 6f 20 62 75 69 6c 64 20 61 20 74 63 6c 0a   to build a tcl.
22d80 6c 69 62 72 61 72 79 2c 20 69 73 20 6e 6f 77 20  library, is now 
22d90 70 72 6f 76 69 64 65 64 2e 20 28 44 4c 29 0a 0a  provided. (DL)..
22da0 37 2f 31 2f 39 37 20 28 66 65 61 74 75 72 65 20  7/1/97 (feature 
22db0 63 68 61 6e 67 65 29 20 63 6f 6d 70 61 74 2f 67  change) compat/g
22dc0 65 74 63 77 64 2e 63 20 72 65 6d 6f 76 65 64 20  etcwd.c removed 
22dd0 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68 65 0a  and changed the.
22de0 6f 6e 6c 79 20 70 6c 61 63 65 20 77 68 65 72 65  only place where
22df0 20 67 65 74 63 77 64 20 69 73 20 75 73 65 64 20   getcwd is used 
22e00 73 6f 20 61 20 6e 65 77 20 55 53 45 47 45 54 57  so a new USEGETW
22e10 44 20 66 6c 61 67 20 73 65 6c 65 63 74 73 0a 74  D flag selects.t
22e20 68 65 20 75 73 65 20 6f 66 20 74 68 65 20 72 65  he use of the re
22e30 70 6c 61 63 65 6d 65 6e 74 20 22 67 65 74 77 64  placement "getwd
22e40 22 2e 20 41 64 64 69 6e 67 20 74 68 69 73 20 66  ". Adding this f
22e50 6c 61 67 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64  lag is recommend
22e60 65 64 0a 66 6f 72 20 53 75 6e 4f 53 20 34 20 28  ed.for SunOS 4 (
22e70 62 65 63 61 75 73 65 20 67 65 74 63 77 64 20 6f  because getcwd o
22e80 6e 20 53 75 6e 4f 53 20 34 20 75 73 65 73 20 61  n SunOS 4 uses a
22e90 20 70 69 70 65 20 74 6f 20 70 77 64 28 31 29 21   pipe to pwd(1)!
22ea0 29 2e 20 28 44 4c 29 0a 0a 37 2f 37 2f 39 37 20  ). (DL)..7/7/97 
22eb0 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
22ec0 20 54 68 65 20 73 70 6c 69 74 20 63 6f 6d 6d 61   The split comma
22ed0 6e 64 20 6e 6f 77 20 73 75 70 70 6f 72 74 73 20  nd now supports 
22ee0 62 69 6e 61 72 79 20 64 61 74 61 20 28 69 2e 65  binary data (i.e
22ef0 2e 2c 0a 6e 75 6c 6c 20 63 68 61 72 61 63 74 65  .,.null characte
22f00 72 73 20 69 6e 20 73 74 72 69 6e 67 73 29 2e 20  rs in strings). 
22f10 28 42 4c 29 0a 0a 37 2f 37 2f 39 37 20 28 62 75  (BL)..7/7/97 (bu
22f20 67 20 66 69 78 29 20 73 74 72 69 6e 67 20 66 69  g fix) string fi
22f30 72 73 74 20 72 65 74 75 72 6e 65 64 20 74 68 65  rst returned the
22f40 20 77 72 6f 6e 67 20 72 65 73 75 6c 74 20 69 66   wrong result if
22f50 20 74 68 65 20 66 69 72 73 74 0a 61 72 67 75 6d   the first.argum
22f60 65 6e 74 20 73 74 72 69 6e 67 20 77 61 73 20 65  ent string was e
22f70 6d 70 74 79 2e 20 28 42 4c 29 0a 0a 37 2f 38 2f  mpty. (BL)..7/8/
22f80 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
22f90 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69 6e 20  ed core dump in 
22fa0 66 63 6f 70 79 20 74 68 61 74 20 63 6f 75 6c 64  fcopy that could
22fb0 20 6f 63 63 75 72 20 77 68 65 6e 20 61 20 63 6f   occur when a co
22fc0 6d 6d 61 6e 64 0a 63 61 6c 6c 62 61 63 6b 20 77  mmand.callback w
22fd0 61 73 20 73 75 70 70 6c 69 65 64 20 61 6e 64 20  as supplied and 
22fe0 61 6e 20 65 72 72 6f 72 20 6f 72 20 65 6f 66 20  an error or eof 
22ff0 63 6f 6e 64 69 74 69 6f 6e 20 63 61 75 73 65 64  condition caused
23000 20 6e 6f 20 62 61 63 6b 67 72 6f 75 6e 64 0a 61   no background.a
23010 63 74 69 76 69 74 79 2e 20 20 41 20 72 65 66 63  ctivity.  A refc
23020 6f 75 6e 74 20 62 75 67 20 74 72 69 67 67 65 72  ount bug trigger
23030 65 64 20 61 20 70 61 6e 69 63 20 69 6e 20 54 63  ed a panic in Tc
23040 6c 5f 4c 69 73 74 4f 62 6a 41 70 70 65 6e 64 45  l_ListObjAppendE
23050 6c 65 6d 65 6e 74 2e 20 28 42 57 29 0a 0a 37 2f  lement. (BW)..7/
23060 38 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 52  8/97 (bug fix) R
23070 65 6c 61 78 65 64 20 74 68 65 20 70 61 74 74 65  elaxed the patte
23080 72 6e 20 6d 61 74 63 68 69 6e 67 20 6f 6e 20 68  rn matching on h
23090 74 74 70 5f 67 65 74 20 73 6f 20 79 6f 75 20 64  ttp_get so you d
230a0 6f 20 6e 6f 74 0a 6e 65 65 64 20 61 20 74 72 61  o not.need a tra
230b0 69 6c 69 6e 67 20 70 61 74 68 20 63 6f 6d 70 6f  iling path compo
230c0 6e 65 6e 74 2e 20 20 59 6f 75 20 63 61 6e 20 6e  nent.  You can n
230d0 6f 77 20 67 65 74 20 61 77 61 79 20 77 69 74 68  ow get away with
230e0 20 6a 75 73 74 0a 68 74 74 70 5f 67 65 74 20 77   just.http_get w
230f0 77 77 2e 73 63 72 69 70 74 69 63 73 2e 63 6f 6d  ww.scriptics.com
23100 09 09 09 09 09 28 42 57 29 0a 0a 37 2f 39 2f 39  .....(BW)..7/9/9
23110 37 20 28 62 75 67 20 66 69 78 29 20 43 72 65 61  7 (bug fix) Crea
23120 74 69 6e 67 20 61 6e 6f 6e 79 6d 6f 75 73 20 69  ting anonymous i
23130 6e 74 65 72 70 72 65 74 65 72 73 20 6e 6f 20 6c  nterpreters no l
23140 6f 6e 67 65 72 20 73 6d 61 73 68 65 73 20 65 78  onger smashes ex
23150 69 73 74 69 6e 67 0a 63 6f 6d 6d 61 6e 64 73 20  isting.commands 
23160 77 69 74 68 20 6e 61 6d 65 73 20 73 69 6d 69 6c  with names simil
23170 61 72 20 74 6f 20 74 68 65 20 67 65 6e 65 72 61  ar to the genera
23180 74 65 64 20 6e 61 6d 65 2e 20 50 72 65 76 69 6f  ted name. Previo
23190 75 73 6c 79 20 63 72 65 61 74 69 6e 67 20 61 6e  usly creating an
231a0 0a 61 6e 6f 6e 79 6d 6f 75 73 20 69 6e 74 65 72  .anonymous inter
231b0 70 72 65 74 65 72 20 63 6f 75 6c 64 20 73 6d 61  preter could sma
231c0 73 68 20 61 6e 20 65 78 69 73 74 69 6e 67 20 63  sh an existing c
231d0 6f 6d 6d 61 6e 64 2c 20 6e 6f 77 20 69 74 20 73  ommand, now it s
231e0 6b 69 70 73 20 75 6e 74 69 6c 0a 69 74 20 66 69  kips until.it fi
231f0 6e 64 73 20 61 20 63 6f 6d 6d 61 6e 64 20 6e 61  nds a command na
23200 6d 65 20 74 68 61 74 20 69 73 6e 27 74 20 62 65  me that isn't be
23210 69 6e 67 20 75 73 65 64 2e 20 28 4a 4c 29 0a 0a  ing used. (JL)..
23220 37 2f 39 2f 39 37 20 28 66 65 61 74 75 72 65 20  7/9/97 (feature 
23230 63 68 61 6e 67 65 29 20 52 65 6d 6f 76 65 64 20  change) Removed 
23240 74 68 65 20 70 6f 6c 69 63 79 20 6d 61 6e 61 67  the policy manag
23250 65 6d 65 6e 74 20 6d 65 63 68 61 6e 69 73 6d 20  ement mechanism 
23260 66 72 6f 6d 20 74 68 65 0a 53 61 66 65 20 42 61  from the.Safe Ba
23270 73 65 3b 20 6c 65 66 74 20 74 68 65 20 61 6c 69  se; left the ali
23280 61 73 65 73 20 74 6f 20 73 6f 75 72 63 65 20 61  ases to source a
23290 6e 64 20 6c 6f 61 64 20 6d 6f 64 75 6c 65 73 2c  nd load modules,
232a0 20 61 6e 64 20 74 6f 20 64 6f 20 61 20 6c 69 6d   and to do a lim
232b0 69 74 65 64 0a 66 6f 72 6d 20 6f 66 20 74 68 65  ited.form of the
232c0 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64 2e   "file" command.
232d0 20 53 65 65 20 65 6e 74 72 79 20 6f 66 20 31 31   See entry of 11
232e0 2f 31 35 2f 39 36 2e 20 28 4a 4c 29 0a 0a 37 2f  /15/96. (JL)..7/
232f0 39 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29  9/97 (bug fixes)
23300 20 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 63   Fixed various c
23310 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61 74  ompilation-relat
23320 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20 4c  ed bugs:.    - L
23330 69 6e 65 20 6e 75 6d 62 65 72 73 20 69 6e 20 65  ine numbers in e
23340 72 72 6f 72 49 6e 66 6f 20 6e 6f 77 20 61 72 65  rrorInfo now are
23350 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 6f   the same as tho
23360 73 65 20 69 6e 20 54 63 6c 37 2e 36 20 75 6e 6c  se in Tcl7.6 unl
23370 65 73 73 0a 74 68 65 72 65 20 61 72 65 20 63 6f  ess.there are co
23380 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 73  mpilation errors
23390 2e 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 65 72  . Compilation er
233a0 72 6f 72 20 6d 65 73 73 61 67 65 73 20 6e 6f 77  ror messages now
233b0 20 69 6e 63 6c 75 64 65 20 74 68 65 0a 65 6e 74   include the.ent
233c0 69 72 65 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 65  ire command in e
233d0 72 72 6f 72 2e 0a 20 20 20 20 2d 20 54 72 61 69  rror..    - Trai
233e0 6c 69 6e 67 20 3a 3a 73 20 61 66 74 65 72 20 6e  ling ::s after n
233f0 61 6d 65 73 70 61 63 65 20 6e 61 6d 65 73 20 77  amespace names w
23400 65 72 65 6e 27 74 20 62 65 69 6e 67 20 69 67 6e  eren't being ign
23410 6f 72 65 64 2e 0a 20 20 20 20 2d 20 43 6f 75 6c  ored..    - Coul
23420 64 20 6e 6f 74 20 72 65 66 65 72 20 74 6f 20 61  d not refer to a
23430 6e 20 6e 61 6d 65 73 70 61 63 65 20 76 61 72 69  n namespace vari
23440 61 62 6c 65 20 77 69 74 68 20 61 6e 20 65 6d 70  able with an emp
23450 74 79 20 6e 61 6d 65 20 75 73 69 6e 67 20 61 0a  ty name using a.
23460 6e 61 6d 65 20 6f 66 20 74 68 65 20 66 6f 72 6d  name of the form
23470 20 22 6e 3a 3a 22 2e 20 28 42 4c 29 0a 0a 37 2f   "n::". (BL)..7/
23480 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  9/97 (bug fix) F
23490 69 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c 5f  ixed bug in Tcl_
234a0 45 78 70 6f 72 74 20 74 68 61 74 20 70 72 65 76  Export that prev
234b0 65 6e 74 65 64 20 79 6f 75 20 66 72 6f 6d 20 65  ented you from e
234c0 78 70 6f 72 74 69 6e 67 0a 66 72 6f 6d 20 6f 74  xporting.from ot
234d0 68 65 72 20 74 68 61 6e 20 74 68 65 20 63 75 72  her than the cur
234e0 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2e 20  rent namespace. 
234f0 28 42 4c 29 0a 0a 37 2f 39 2f 39 37 20 28 62 75  (BL)..7/9/97 (bu
23500 67 20 66 69 78 29 20 65 6e 76 2e 74 65 73 74 20  g fix) env.test 
23510 77 61 73 20 72 65 6d 6f 76 69 6e 67 20 65 6e 76  was removing env
23520 20 76 61 72 20 6e 65 65 64 65 64 20 66 6f 72 20   var needed for 
23530 70 72 6f 70 65 72 20 66 69 6e 64 69 6e 67 0a 6f  proper finding.o
23540 66 20 6c 69 62 72 61 72 69 65 73 20 69 6e 20 63  f libraries in c
23550 68 69 6c 64 20 70 72 6f 63 65 73 73 2e 20 28 44  hild process. (D
23560 4c 29 0a 0a 37 2f 31 30 2f 39 37 20 28 62 75 67  L)..7/10/97 (bug
23570 20 66 69 78 65 73 2f 6e 65 77 20 66 65 61 74 75   fixes/new featu
23580 72 65 29 20 43 6c 65 61 6e 75 70 20 69 6e 20 54  re) Cleanup in T
23590 63 6c 5f 4d 61 6b 65 53 61 66 65 2e 20 4c 65 73  cl_MakeSafe. Les
235a0 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a 69 73  s information.is
235b0 20 6c 65 61 6b 65 64 20 74 6f 20 73 61 66 65 20   leaked to safe 
235c0 69 6e 74 65 72 70 73 2e 20 45 72 72 6f 72 20 6d  interps. Error m
235d0 65 73 73 61 67 65 20 66 69 78 65 73 20 66 6f 72  essage fixes for
235e0 20 69 6e 74 65 72 70 20 73 75 62 20 63 6f 6d 6d   interp sub comm
235f0 61 6e 64 73 2e 0a 4c 69 6b 65 77 69 73 65 20 63  ands..Likewise c
23600 68 61 6e 67 65 73 20 69 6e 20 73 61 66 65 61 6c  hanges in safeal
23610 69 61 73 2e 74 63 6c 3b 20 74 63 6c 5f 73 61 66  ias.tcl; tcl_saf
23620 65 43 72 65 61 74 65 49 6e 74 65 72 70 20 63 61  eCreateInterp ca
23630 6e 20 6e 6f 77 20 62 65 20 63 61 6c 6c 65 64 0a  n now be called.
23640 77 69 74 68 6f 75 74 20 61 72 67 75 6d 65 6e 74  without argument
23650 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68 65   to generate the
23660 20 73 6c 61 76 65 20 6e 61 6d 65 20 28 6c 69 6b   slave name (lik
23670 65 20 69 6e 20 69 6e 74 65 72 70 20 63 72 65 61  e in interp crea
23680 74 65 29 2e 20 28 44 4c 29 0a 0a 37 2f 31 30 2f  te). (DL)..7/10/
23690 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20 42  97 (bug fixes) B
236a0 79 74 65 63 6f 64 65 20 63 6f 6d 70 69 6c 65 72  ytecode compiler
236b0 20 6e 6f 77 20 67 65 6e 65 72 61 74 65 73 20 6d   now generates m
236c0 6f 72 65 20 64 65 74 61 69 6c 65 64 20 0a 63 6f  ore detailed .co
236d0 6d 6d 61 6e 64 20 6c 6f 63 61 74 69 6f 6e 20 69  mmand location i
236e0 6e 66 6f 72 6d 61 74 69 6f 6e 3a 20 73 75 62 63  nformation: subc
236f0 6f 6d 6d 61 6e 64 73 20 61 73 20 77 65 6c 6c 20  ommands as well 
23700 61 73 20 63 6f 6d 6d 61 6e 64 73 20 6e 6f 77 20  as commands now 
23710 68 61 76 65 0a 6c 6f 63 61 74 69 6f 6e 20 69 6e  have.location in
23720 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 69 73 20  formation. This 
23730 6d 65 61 6e 73 20 63 6f 6d 6d 61 6e 64 20 74 72  means command tr
23740 61 63 65 20 70 72 6f 63 65 64 75 72 65 73 20 6e  ace procedures n
23750 6f 77 20 67 65 74 20 74 68 65 0a 63 6f 72 72 65  ow get the.corre
23760 63 74 20 73 6f 75 72 63 65 20 73 74 72 69 6e 67  ct source string
23770 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 6d 61 6e   for each comman
23780 64 20 69 6e 20 74 68 65 69 72 20 63 6f 6d 6d 61  d in their comma
23790 6e 64 20 70 61 72 61 6d 65 74 65 72 2e 20 28 42  nd parameter. (B
237a0 4c 29 0a 0a 37 2f 32 32 2f 39 37 20 28 62 75 67  L)..7/22/97 (bug
237b0 20 66 69 78 65 73 29 20 50 65 72 66 6f 72 6d 61   fixes) Performa
237c0 6e 63 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 20  nce improvement 
237d0 69 6e 20 53 61 66 65 20 69 6e 74 65 72 70 72 65  in Safe interpre
237e0 74 65 72 73 0a 68 61 6e 64 6c 69 6e 67 2e 20 41  ters.handling. A
237f0 64 64 65 64 20 6e 65 77 20 6d 61 73 6b 20 76 61  dded new mask va
23800 6c 75 65 20 74 6f 20 28 74 63 6c 49 6e 74 2e 68  lue to (tclInt.h
23810 29 20 49 6e 74 65 72 70 2e 66 6c 61 67 73 20 72  ) Interp.flags r
23820 65 63 6f 72 64 2e 20 28 44 4c 29 0a 0a 37 2f 32  ecord. (DL)..7/2
23830 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  2/97 (bug fix) F
23840 69 78 65 64 20 70 61 6e 69 63 20 69 6e 20 27 69  ixed panic in 'i
23850 6e 74 65 72 70 20 74 61 72 67 65 74 20 7b 7d 20  nterp target {} 
23860 66 6f 6f 27 2e 20 54 68 69 73 20 62 75 67 0a 77  foo'. This bug.w
23870 61 73 20 70 72 65 73 65 6e 74 20 73 69 6e 63 65  as present since
23880 20 54 63 6c 20 37 2e 36 2e 20 28 4a 4c 29 0a 0a   Tcl 7.6. (JL)..
23890 37 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69 78  7/22/97 (bug fix
238a0 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 63  ) Fixed bug in c
238b0 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 66 20 70 72  ompilation of pr
238c0 6f 63 65 64 75 72 65 73 20 69 6e 20 6e 61 6d 65  ocedures in name
238d0 73 70 61 63 65 73 3a 20 74 68 65 0a 70 72 6f 63  spaces: the.proc
238e0 65 64 75 72 65 27 73 20 6e 61 6d 65 73 70 61 63  edure's namespac
238f0 65 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74  e must be used t
23900 6f 20 6c 6f 6f 6b 20 75 70 20 63 6f 6d 70 69 6c  o look up compil
23910 65 20 70 72 6f 63 65 64 75 72 65 73 2c 20 6e 6f  e procedures, no
23920 74 20 74 68 65 0a 63 75 72 72 65 6e 74 20 6e 61  t the.current na
23930 6d 65 73 70 61 63 65 2e 20 28 42 4c 29 0a 0a 37  mespace. (BL)..7
23940 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29  /22/97 (bug fix)
23950 20 55 73 65 20 6f 66 20 74 68 65 20 2d 63 68 61   Use of the -cha
23960 6e 6e 65 6c 20 6f 70 74 69 6f 6e 20 6f 66 20 68  nnel option of h
23970 74 74 70 5f 67 65 74 20 77 61 73 20 6e 6f 74 20  ttp_get was not 
23980 73 65 74 74 69 6e 67 0a 74 68 65 20 65 6e 64 20  setting.the end 
23990 6f 66 20 6c 69 6e 65 20 74 72 61 6e 73 6c 61 74  of line translat
239a0 69 6f 6e 73 20 6d 6f 64 65 20 6f 6e 20 74 68 65  ions mode on the
239b0 20 63 68 61 6e 6e 65 6c 2c 20 73 6f 20 63 6f 70   channel, so cop
239c0 79 69 6e 67 20 62 69 6e 61 72 79 20 64 61 74 61  ying binary data
239d0 0a 77 69 74 68 20 74 68 65 20 2d 63 68 61 6e 6e  .with the -chann
239e0 65 6c 20 6f 70 74 69 6f 6e 20 77 61 73 20 63 6f  el option was co
239f0 72 72 75 70 74 69 6e 67 20 74 68 65 20 72 65 73  rrupting the res
23a00 75 6c 74 20 6f 6e 20 6e 6f 6e 2d 75 6e 69 78 20  ult on non-unix 
23a10 70 6c 61 74 66 6f 72 6d 73 2e 20 28 42 57 29 0a  platforms. (BW).
23a20 0a 37 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69  .7/22/97 (bug fi
23a30 78 65 73 29 20 66 69 6c 65 20 63 6f 6d 6d 61 6e  xes) file comman
23a40 64 73 20 61 6e 64 20 7e 75 73 65 72 20 28 73 65  ds and ~user (se
23a50 67 20 66 61 75 6c 74 20 61 6e 64 20 6f 74 68 65  g fault and othe
23a60 72 0a 69 6d 70 72 6f 70 65 72 20 72 65 74 75 72  r.improper retur
23a70 6e 73 29 2e 20 28 44 4c 29 0a 0a 37 2f 32 33 2f  ns). (DL)..7/23/
23a80 39 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e  97 (feature chan
23a90 67 65 29 20 52 65 65 6e 61 62 6c 65 64 20 22 76  ge) Reenabled "v
23aa0 77 61 69 74 22 20 69 6e 20 53 61 66 65 20 42 61  wait" in Safe Ba
23ab0 73 65 2e 20 28 4a 4c 29 0a 0a 37 2f 32 33 2f 39  se. (JL)..7/23/9
23ac0 37 20 28 62 75 67 20 66 69 78 65 73 29 20 46 69  7 (bug fixes) Fi
23ad0 78 65 64 20 74 77 6f 20 62 75 67 73 20 69 6e 76  xed two bugs inv
23ae0 6f 6c 76 69 6e 67 20 72 65 61 64 20 74 72 61 63  olving read trac
23af0 65 73 20 6f 6e 20 61 72 72 61 79 20 76 61 72 69  es on array vari
23b00 61 62 6c 65 73 0a 69 6e 20 70 72 6f 63 65 64 75  ables.in procedu
23b10 72 65 73 3a 20 74 72 61 63 65 20 70 72 6f 63 65  res: trace proce
23b20 64 75 72 65 73 20 77 65 72 65 20 73 6f 6d 65 74  dures were somet
23b30 69 6d 65 73 20 6e 6f 74 20 63 61 6c 6c 65 64 2c  imes not called,
23b40 20 61 6e 64 20 72 65 61 64 69 6e 67 0a 6e 6f 6e   and reading.non
23b50 65 78 69 73 74 61 6e 74 20 61 72 72 61 79 20 65  existant array e
23b60 6c 65 6d 65 6e 74 73 20 64 69 64 6e 27 74 20 63  lements didn't c
23b70 72 65 61 74 65 20 75 6e 64 65 66 69 6e 65 64 20  reate undefined 
23b80 65 6c 65 6d 65 6e 74 20 76 61 72 69 61 62 6c 65  element variable
23b90 73 20 74 68 61 74 0a 63 6f 75 6c 64 20 6c 61 74  s that.could lat
23ba0 65 72 20 62 65 20 64 65 66 69 6e 65 64 20 62 79  er be defined by
23bb0 20 74 72 61 63 65 20 70 72 6f 63 65 64 75 72 65   trace procedure
23bc0 73 2e 20 28 42 4c 29 0a 0a 37 2f 32 34 2f 39 37  s. (BL)..7/24/97
23bd0 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64 6f   (bug fix) Windo
23be0 77 73 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61  ws memory alloca
23bf0 74 69 6f 6e 20 70 65 72 66 6f 72 6d 61 6e 63 65  tion performance
23c00 20 77 61 73 0a 73 75 70 65 72 6c 69 6e 65 61 72   was.superlinear
23c10 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 2e 20   in some cases. 
23c20 20 4d 61 64 65 20 74 68 65 20 4d 61 63 20 61 6c   Made the Mac al
23c30 6c 6f 63 61 74 6f 72 20 67 65 6e 65 72 69 63 20  locator generic 
23c40 61 6e 64 20 63 68 61 6e 67 65 64 0a 62 6f 74 68  and changed.both
23c50 20 74 68 65 20 4d 61 63 20 61 6e 64 20 57 69 6e   the Mac and Win
23c60 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 73 20 74  dows platforms t
23c70 6f 20 75 73 65 20 74 68 65 20 6e 65 77 20 61 6c  o use the new al
23c80 6c 6f 63 61 74 6f 72 20 69 6e 73 74 65 61 64 20  locator instead 
23c90 6f 66 0a 6d 61 6c 6c 6f 63 20 61 6e 64 20 66 72  of.malloc and fr
23ca0 65 65 2e 20 28 53 53 29 0a 0a 37 2f 32 34 2f 39  ee. (SS)..7/24/9
23cb0 37 20 2d 20 38 2f 31 32 2f 39 37 20 28 62 75 67  7 - 8/12/97 (bug
23cc0 20 66 69 78 65 73 2f 63 68 61 6e 67 65 20 6f 66   fixes/change of
23cd0 20 66 65 61 74 75 72 65 73 29 20 43 6f 6d 70 6c   features) Compl
23ce0 65 74 65 6c 79 20 72 65 76 61 6d 70 65 64 20 73  etely revamped s
23cf0 61 66 65 0a 73 6f 75 72 63 69 6e 67 2f 6c 6f 61  afe.sourcing/loa
23d00 64 69 6e 67 20 28 73 65 65 20 73 61 66 65 2e 6e  ding (see safe.n
23d10 29 20 74 6f 20 68 69 64 65 20 70 61 74 68 6e 61  ) to hide pathna
23d20 6d 65 73 2c 20 75 73 65 20 76 69 72 74 75 61 6c  mes, use virtual
23d30 0a 70 61 74 68 73 20 74 6f 6b 65 6e 73 20 69 6e  .paths tokens in
23d40 73 74 65 61 64 2c 20 69 6d 70 72 6f 76 65 64 20  stead, improved 
23d50 73 65 63 75 72 69 74 79 20 69 6e 20 73 65 76 65  security in seve
23d60 72 61 6c 20 72 65 73 70 65 63 74 73 20 61 6e 64  ral respects and
23d70 20 6d 61 64 65 20 69 74 0a 6d 6f 72 65 20 74 75   made it.more tu
23d80 6e 61 62 6c 65 2e 20 4d 75 6c 74 69 20 6c 65 76  nable. Multi lev
23d90 65 6c 20 69 6e 74 65 72 70 20 6c 6f 61 64 69 6e  el interp loadin
23da0 67 20 63 61 6e 20 77 6f 72 6b 20 74 6f 6f 20 6e  g can work too n
23db0 6f 77 2e 20 50 61 63 6b 61 67 65 20 61 75 74 6f  ow. Package auto
23dc0 0a 6c 6f 61 64 69 6e 67 20 6e 6f 77 20 77 6f 72  .loading now wor
23dd0 6b 73 20 69 6e 20 73 61 66 65 20 69 6e 74 65 72  ks in safe inter
23de0 70 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68  ps as long as th
23df0 65 20 70 61 63 6b 61 67 65 20 64 69 72 65 63 74  e package direct
23e00 6f 72 79 20 69 73 20 69 6e 20 0a 74 68 65 20 61  ory is in .the a
23e10 75 74 6f 5f 70 61 74 68 20 28 6e 6f 20 64 65 65  uto_path (no dee
23e20 70 20 63 72 61 77 6c 69 6e 67 20 61 6c 6c 6f 77  p crawling allow
23e30 65 64 20 69 6e 20 73 61 66 65 20 69 6e 74 65 72  ed in safe inter
23e40 70 73 29 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50 4f  ps). (DL).*** PO
23e50 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
23e60 49 42 49 4c 49 54 59 20 77 69 74 68 20 70 72 65  IBILITY with pre
23e70 76 69 6f 75 73 20 61 6c 70 68 61 20 61 6e 64 20  vious alpha and 
23e80 62 65 74 61 20 72 65 6c 65 61 73 65 73 20 2a 2a  beta releases **
23e90 2a 0a 0a 37 2f 32 34 2f 39 37 20 28 62 75 67 20  *..7/24/97 (bug 
23ea0 66 69 78 65 73 29 20 4d 61 64 65 20 54 63 6c 5f  fixes) Made Tcl_
23eb0 53 65 74 56 61 72 2a 20 61 6e 64 20 54 63 6c 5f  SetVar* and Tcl_
23ec0 4e 65 77 53 74 72 69 6e 67 2a 20 74 72 65 61 74  NewString* treat
23ed0 20 61 20 4e 55 4c 4c 20 76 61 6c 75 65 0a 61 73   a NULL value.as
23ee0 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67   an empty string
23ef0 2e 20 28 54 68 69 73 20 66 69 78 65 73 20 68 61  . (This fixes ha
23f00 69 72 79 20 63 72 61 73 68 20 63 61 73 65 20 77  iry crash case w
23f10 68 65 72 65 20 79 6f 75 20 77 6f 75 6c 64 20 63  here you would c
23f20 72 61 73 68 0a 62 65 63 61 75 73 65 20 6c 6f 61  rash.because loa
23f30 64 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 6f 74  d command for ot
23f40 68 65 72 20 69 6e 74 65 72 70 73 20 61 73 73 75  her interps assu
23f50 6d 65 64 20 70 72 65 73 65 6e 63 65 20 6f 66 0a  med presence of.
23f60 65 72 72 6f 72 49 6e 66 6f 2e 2e 2e 29 2e 20 28  errorInfo...). (
23f70 44 4c 29 0a 0a 37 2f 32 38 2f 39 37 20 28 62 75  DL)..7/28/97 (bu
23f80 67 20 66 69 78 29 20 46 69 78 65 64 20 70 6b 67  g fix) Fixed pkg
23f90 5f 6d 6b 49 6e 64 65 78 20 74 6f 20 75 6e 64 65  _mkIndex to unde
23fa0 72 73 74 61 6e 64 20 6e 61 6d 65 73 70 61 63 65  rstand namespace
23fb0 73 2e 20 20 49 74 20 77 69 6c 6c 0a 75 73 65 20  s.  It will.use 
23fc0 74 68 65 20 65 78 70 6f 72 74 20 6c 69 73 74 20  the export list 
23fd0 6f 66 20 61 20 6e 61 6d 65 73 70 61 63 65 20 61  of a namespace a
23fe0 6e 64 20 63 72 65 61 74 65 20 61 75 74 6f 5f 69  nd create auto_i
23ff0 6e 64 65 78 20 65 6e 74 72 69 65 73 20 66 6f 72  ndex entries for
24000 0a 61 6c 6c 20 65 78 70 6f 72 74 20 63 6f 6d 6d  .all export comm
24010 61 6e 64 73 2e 20 20 54 68 6f 73 65 20 6e 61 6d  ands.  Those nam
24020 65 73 20 61 72 65 20 69 6e 20 74 68 65 69 72 20  es are in their 
24030 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 64 20  fully qualified 
24040 66 6f 72 6d 20 69 6e 20 74 68 65 0a 61 75 74 6f  form in the.auto
24050 5f 69 6e 64 65 78 2e 20 20 54 68 65 72 65 66 6f  _index.  Therefo
24060 72 65 2c 20 49 20 74 77 65 61 6b 65 64 20 75 6e  re, I tweaked un
24070 6b 6e 6f 77 6e 20 74 6f 20 74 72 79 20 62 6f 74  known to try bot
24080 68 20 24 63 6d 64 20 61 6e 64 20 3a 3a 24 63 6d  h $cmd and ::$cm
24090 64 2e 0a 41 6c 73 6f 20 66 69 78 65 64 20 70 6b  d..Also fixed pk
240a0 67 5f 6d 6b 49 6e 64 65 78 20 73 6f 20 79 6f 75  g_mkIndex so you
240b0 20 63 61 6e 20 68 61 76 65 20 22 70 61 63 6b 61   can have "packa
240c0 67 65 20 72 65 71 75 69 72 65 22 20 63 6f 6d 6d  ge require" comm
240d0 61 6e 64 73 20 69 6e 73 69 64 65 0a 79 6f 75 72  ands inside.your
240e0 20 70 61 63 6b 61 67 65 73 2e 20 20 54 68 65 73   packages.  Thes
240f0 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 69  e commands are i
24100 67 6e 6f 72 65 64 2c 20 77 68 69 63 68 20 69 73  gnored, which is
24110 20 6d 6f 73 74 6c 79 20 6f 6b 20 65 78 63 65 70   mostly ok excep
24120 74 0a 77 68 65 6e 20 79 6f 75 20 6d 75 73 74 20  t.when you must 
24130 6c 6f 61 64 20 61 6e 6f 74 68 65 72 20 70 61 63  load another pac
24140 6b 61 67 65 20 62 65 66 6f 72 65 20 6c 6f 61 64  kage before load
24150 69 6e 67 20 79 6f 75 72 73 20 62 65 63 61 75 73  ing yours becaus
24160 65 20 6f 66 0a 6c 69 6e 6b 69 6e 67 20 64 65 70  e of.linking dep
24170 65 6e 64 65 6e 63 69 65 73 2e 20 28 42 57 29 0a  endencies. (BW).
24180 0a 37 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69  .7/28/97 (bug fi
24190 78 29 20 41 20 76 61 72 69 61 62 6c 65 20 63 72  x) A variable cr
241a0 65 61 74 65 64 20 62 79 20 74 68 65 20 76 61 72  eated by the var
241b0 69 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 20 6e 6f  iable command no
241c0 77 20 70 65 72 73 69 73 74 73 0a 75 6e 74 69 6c  w persists.until
241d0 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20 69   the namespace i
241e0 73 20 64 65 73 74 72 6f 79 65 64 20 6f 72 20 74  s destroyed or t
241f0 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20 75  he variable is u
24200 6e 73 65 74 2e 20 54 68 69 73 20 69 73 20 74 72  nset. This is tr
24210 75 65 20 65 76 65 6e 0a 69 66 20 74 68 65 20 76  ue even.if the v
24220 61 72 69 61 62 6c 65 20 68 61 73 20 6e 6f 74 20  ariable has not 
24230 62 65 65 6e 20 69 6e 69 74 69 61 6c 69 7a 65 64  been initialized
24240 3b 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65  ; these variable
24250 73 20 75 73 65 64 20 74 6f 20 62 65 0a 64 65 73  s used to be.des
24260 74 72 6f 79 65 64 20 69 66 20 61 6e 20 65 72 72  troyed if an err
24270 6f 72 20 6f 63 63 75 72 72 65 64 20 77 68 65 6e  or occurred when
24280 20 61 63 63 65 73 73 69 6e 67 20 74 68 65 6d 2e   accessing them.
24290 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 74 68   In addition, th
242a0 65 20 22 69 6e 66 6f 0a 76 61 72 73 22 20 63 6f  e "info.vars" co
242b0 6d 6d 61 6e 64 20 6c 69 73 74 73 20 75 6e 69 6e  mmand lists unin
242c0 69 74 69 61 6c 69 7a 65 64 20 6e 61 6d 65 73 70  itialized namesp
242d0 61 63 65 20 76 61 72 69 61 62 6c 65 73 2c 20 77  ace variables, w
242e0 68 69 6c 65 20 74 68 65 20 22 69 6e 66 6f 0a 65  hile the "info.e
242f0 78 69 73 74 73 22 20 63 6f 6d 6d 61 6e 64 20 72  xists" command r
24300 65 74 75 72 6e 73 20 30 20 66 6f 72 20 74 68 65  eturns 0 for the
24310 6d 2e 20 28 42 4c 29 0a 0a 37 2f 32 39 2f 39 37  m. (BL)..7/29/97
24320 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
24330 29 20 20 43 68 61 6e 67 65 64 20 74 68 65 20 68  )  Changed the h
24340 74 74 70 20 70 61 63 6b 61 67 65 20 74 6f 20 75  ttp package to u
24350 73 65 20 74 68 65 20 3a 3a 68 74 74 70 0a 6e 61  se the ::http.na
24360 6d 65 73 70 61 63 65 2e 20 68 74 74 70 5f 67 65  mespace. http_ge
24370 74 20 72 65 6e 61 6d 65 64 20 74 6f 20 68 74 74  t renamed to htt
24380 70 3a 3a 67 65 74 75 72 6c 2c 20 68 74 74 70 5f  p::geturl, http_
24390 63 6f 6e 66 69 67 20 72 65 6e 61 6d 65 64 20 74  config renamed t
243a0 6f 0a 68 74 74 70 3a 3a 63 6f 6e 66 69 67 2c 20  o.http::config, 
243b0 68 74 74 70 5f 66 6f 72 6d 61 74 51 75 65 72 79  http_formatQuery
243c0 20 72 65 6e 61 6d 65 64 20 74 6f 20 68 74 74 70   renamed to http
243d0 3a 3a 66 6f 72 6d 61 74 51 75 65 72 79 2e 0a 49  ::formatQuery..I
243e0 74 20 6e 6f 77 20 70 72 6f 76 69 64 65 73 20 74  t now provides t
243f0 68 65 20 32 2e 30 20 76 65 72 73 69 6f 6e 20 6f  he 2.0 version o
24400 66 20 74 68 65 20 70 61 63 6b 61 67 65 2e 20 20  f the package.  
24410 0a 54 68 65 20 31 2e 30 20 76 65 72 73 69 6f 6e  .The 1.0 version
24420 20 69 73 20 73 74 69 6c 6c 20 61 76 61 69 6c 61   is still availa
24430 62 6c 65 20 77 69 74 68 20 74 68 65 20 6f 6c 64  ble with the old
24440 20 6e 61 6d 65 73 2e 0a 2a 2a 2a 20 50 4f 54 45   names..*** POTE
24450 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
24460 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38  ILITY with Tcl 8
24470 2e 30 62 32 20 62 75 74 20 6e 6f 74 20 77 69 74  .0b2 but not wit
24480 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a 37  h Tcl 7.6 ***..7
24490 2f 32 39 2f 39 37 20 28 62 75 67 20 66 69 78 2c  /29/97 (bug fix,
244a0 20 6e 65 77 20 66 65 61 74 75 72 65 29 20 54 63   new feature) Tc
244b0 6c 5f 4d 61 69 6e 20 6e 6f 77 20 75 73 65 73 20  l_Main now uses 
244c0 54 63 6c 20 6f 62 6a 65 63 74 73 20 69 6e 74 65  Tcl objects inte
244d0 72 6e 61 6c 6c 79 20 74 6f 0a 70 72 65 73 65 72  rnally to.preser
244e0 76 65 20 4e 55 4c 4c 73 20 69 6e 20 63 6f 6d 6d  ve NULLs in comm
244f0 61 6e 64 73 20 61 6e 64 20 63 6f 6d 6d 61 6e 64  ands and command
24500 20 6f 75 74 70 75 74 2e 20 41 64 64 65 64 20 6e   output. Added n
24510 65 77 20 41 50 49 20 70 72 6f 63 65 64 75 72 65  ew API procedure
24520 0a 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45 76  .Tcl_RecordAndEv
24530 61 6c 4f 62 6a 20 74 68 61 74 20 72 65 73 65 6d  alObj that resem
24540 62 6c 65 73 20 54 63 6c 5f 52 65 63 6f 72 64 41  bles Tcl_RecordA
24550 6e 64 45 76 61 6c 20 62 75 74 20 74 61 6b 65 73  ndEval but takes
24560 20 61 6e 20 6f 62 6a 65 63 74 0a 63 6f 6e 74 61   an object.conta
24570 69 6e 69 6e 67 20 61 20 63 6f 6d 6d 61 6e 64 2e  ining a command.
24580 20 28 42 4c 29 0a 0a 37 2f 33 30 2f 39 37 20 28   (BL)..7/30/97 (
24590 62 75 67 20 66 69 78 29 20 54 63 6c 20 66 72 65  bug fix) Tcl fre
245a0 65 64 20 73 74 72 69 6e 67 73 20 69 6e 20 74 68  ed strings in th
245b0 65 20 65 6e 76 69 72 6f 6e 20 61 72 72 61 79 20  e environ array 
245c0 65 76 65 6e 20 69 66 20 69 74 0a 64 69 64 20 6e  even if it.did n
245d0 6f 74 20 61 6c 6c 6f 63 61 74 65 20 74 68 65 6d  ot allocate them
245e0 2e 20 28 53 53 29 0a 0a 37 2f 33 30 2f 39 37 20  . (SS)..7/30/97 
245f0 28 62 75 67 20 66 69 78 29 20 49 66 20 61 20 70  (bug fix) If a p
24600 72 6f 63 65 64 75 72 65 20 69 73 20 72 65 6e 61  rocedure is rena
24610 6d 65 64 20 69 6e 74 6f 20 61 20 64 69 66 66 65  med into a diffe
24620 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2c 20  rent namespace, 
24630 69 74 0a 6e 6f 77 20 65 78 65 63 75 74 65 73 20  it.now executes 
24640 69 6e 20 74 68 65 20 63 6f 6e 74 65 78 74 20 6f  in the context o
24650 66 20 74 68 61 74 20 6e 61 6d 65 73 70 61 63 65  f that namespace
24660 2e 20 28 42 4c 29 0a 0a 37 2f 33 30 2f 39 37 20  . (BL)..7/30/97 
24670 28 62 75 67 20 66 69 78 29 20 50 72 65 76 65 6e  (bug fix) Preven
24680 74 20 72 65 6e 61 6d 69 6e 67 20 6f 66 20 63 6f  t renaming of co
24690 6d 6d 61 6e 64 73 20 69 6e 74 6f 20 61 6e 64 20  mmands into and 
246a0 66 72 6f 6d 20 6e 61 6d 65 73 70 61 63 65 73 20  from namespaces 
246b0 61 73 0a 70 61 72 74 20 6f 66 20 68 69 64 69 6e  as.part of hidin
246c0 67 20 74 68 65 6d 2e 20 28 4a 4c 29 0a 0a 37 2f  g them. (JL)..7/
246d0 33 31 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  31/97 (feature c
246e0 68 61 6e 67 65 29 20 4d 6f 76 65 64 20 74 68 65  hange) Moved the
246f0 20 68 69 73 74 6f 72 79 20 63 6f 6d 6d 61 6e 64   history command
24700 20 66 72 6f 6d 20 43 20 74 6f 20 74 63 6c 2e 0a   from C to tcl..
24710 54 68 69 73 20 75 73 65 73 20 74 68 65 20 3a 3a  This uses the ::
24720 68 69 73 74 6f 72 79 20 6e 61 6d 65 73 70 61 63  history namespac
24730 65 2e 20 20 54 68 65 20 22 77 6f 72 64 73 22 20  e.  The "words" 
24740 61 6e 64 20 22 73 75 62 73 74 69 74 75 74 65 22  and "substitute"
24750 20 6f 70 74 69 6f 6e 73 0a 61 72 65 20 6e 6f 20   options.are no 
24760 6c 6f 6e 67 65 72 20 73 75 70 70 6f 72 74 65 64  longer supported
24770 2e 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20  .  In addition, 
24780 74 68 65 20 22 6b 65 65 70 22 20 6f 70 74 69 6f  the "keep" optio
24790 6e 20 77 69 74 68 6f 75 74 20 61 20 76 61 6c 75  n without a valu
247a0 65 0a 72 65 74 75 72 6e 73 20 74 68 65 20 63 75  e.returns the cu
247b0 72 72 65 6e 74 20 6b 65 65 70 20 6c 69 6d 69 74  rrent keep limit
247c0 2e 20 20 54 68 65 72 65 20 69 73 20 61 20 6e 65  .  There is a ne
247d0 77 20 22 63 6c 65 61 72 22 20 6f 70 74 69 6f 6e  w "clear" option
247e0 2e 0a 54 68 65 20 75 6e 6b 6e 6f 77 6e 20 63 6f  ..The unknown co
247f0 6d 6d 61 6e 64 20 6e 6f 77 20 73 75 70 70 6f 72  mmand now suppor
24800 74 73 20 21 21 20 61 67 61 69 6e 2e 20 28 42 57  ts !! again. (BW
24810 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
24820 49 4e 43 4f 4d 50 41 54 49 42 49 4c 54 59 20 20  INCOMPATIBILTY  
24830 2a 2a 2a 0a 0a 37 2f 33 30 2f 39 37 20 28 62 75  ***..7/30/97 (bu
24840 67 20 66 69 78 29 20 4d 61 64 65 20 73 75 72 65  g fix) Made sure
24850 20 74 68 61 74 20 61 20 73 6c 61 76 65 20 63 61   that a slave ca
24860 6e 20 6e 6f 74 20 66 6f 6f 6c 20 74 68 65 20 6d  n not fool the m
24870 61 73 74 65 72 20 69 6e 74 6f 0a 68 69 64 69 6e  aster into.hidin
24880 67 20 74 68 65 20 77 72 6f 6e 67 20 63 6f 6d 6d  g the wrong comm
24890 61 6e 64 2e 20 4d 61 64 65 20 73 75 72 65 20 77  and. Made sure w
248a0 65 20 64 6f 6e 27 74 20 63 72 61 73 68 20 69 6e  e don't crash in
248b0 20 68 69 64 69 6e 67 20 2b 20 6e 61 6d 65 73 70   hiding + namesp
248c0 61 63 65 73 0a 69 73 73 75 65 73 2e 20 28 44 4c  aces.issues. (DL
248d0 29 0a 0a 38 2f 34 2f 39 37 20 28 62 75 67 20 66  )..8/4/97 (bug f
248e0 69 78 29 20 43 6f 6e 63 61 74 2c 20 65 76 61 6c  ix) Concat, eval
248f0 2c 20 75 70 6c 65 76 65 6c 2c 20 61 6e 64 20 73  , uplevel, and s
24900 69 6d 69 6c 61 72 20 63 6f 6d 6d 61 6e 64 73 20  imilar commands 
24910 77 65 72 65 0a 69 6e 63 6f 72 72 65 63 74 6c 79  were.incorrectly
24920 20 74 72 69 6d 6d 69 6e 67 20 74 72 61 69 6c 69   trimming traili
24930 6e 67 20 73 70 61 63 65 20 63 68 61 72 61 63 74  ng space charact
24940 65 72 73 20 66 72 6f 6d 20 74 68 65 69 72 20 61  ers from their a
24950 72 67 75 6d 65 6e 74 73 0a 65 76 65 6e 20 77 68  rguments.even wh
24960 65 6e 20 74 68 65 20 73 70 61 63 65 20 63 68 61  en the space cha
24970 72 61 63 74 65 72 73 20 77 65 72 65 20 70 72 65  racters were pre
24980 63 65 64 65 64 20 62 79 20 61 20 62 61 63 6b 73  ceded by a backs
24990 6c 61 73 68 2e 20 28 4a 4f 29 0a 0a 38 2f 34 2f  lash. (JO)..8/4/
249a0 39 37 20 28 62 75 67 20 66 69 78 29 20 52 65 6d  97 (bug fix) Rem
249b0 6f 76 65 64 20 74 68 65 20 68 61 72 64 20 6c 69  oved the hard li
249c0 6e 6b 20 62 65 74 77 65 65 6e 20 62 67 65 72 72  nk between bgerr
249d0 6f 72 20 61 6e 64 20 74 6b 65 72 72 6f 72 2e 0a  or and tkerror..
249e0 4f 6e 6c 79 20 62 67 65 72 72 6f 72 20 69 73 20  Only bgerror is 
249f0 73 75 70 70 6f 72 74 65 64 20 69 6e 20 74 63 6c  supported in tcl
24a00 20 63 6f 72 65 2e 20 54 6b 20 77 69 6c 6c 20 73   core. Tk will s
24a10 74 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 61 0a  till look for a.
24a20 74 6b 65 72 72 6f 72 20 62 75 74 20 75 73 69 6e  tkerror but usin
24a30 67 20 72 65 67 75 6c 61 72 20 74 63 6c 20 63 6f  g regular tcl co
24a40 64 65 20 66 6f 72 20 74 68 61 74 20 66 65 61 74  de for that feat
24a50 75 72 65 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50 4f  ure. (DL).*** PO
24a60 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
24a70 49 42 49 4c 54 59 20 77 69 74 68 20 63 6f 64 65  IBILTY with code
24a80 20 72 65 6c 79 69 6e 67 20 6f 6e 20 74 68 65 20   relying on the 
24a90 68 61 72 64 20 6c 69 6e 6b 20 2a 2a 2a 0a 0a 38  hard link ***..8
24aa0 2f 36 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /6/97 (bug fix) 
24ab0 52 65 64 75 63 65 64 20 73 69 7a 65 20 72 65 71  Reduced size req
24ac0 75 69 72 65 64 20 66 6f 72 20 63 6f 6d 70 69 6c  uired for compil
24ad0 65 64 20 62 79 74 65 63 6f 64 65 73 20 62 79 20  ed bytecodes by 
24ae0 75 73 69 6e 67 20 61 0a 6d 6f 72 65 20 63 6f 6d  using a.more com
24af0 70 61 63 74 20 65 6e 63 6f 64 69 6e 67 20 66 6f  pact encoding fo
24b00 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 70 63  r the command pc
24b10 2d 74 6f 2d 73 6f 75 72 63 65 20 6d 61 70 2e 20  -to-source map. 
24b20 28 42 4c 29 0a 0a 38 2f 36 2f 39 37 20 28 6e 65  (BL)..8/6/97 (ne
24b30 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
24b40 20 73 75 70 70 6f 72 74 20 66 6f 72 20 61 64 64   support for add
24b50 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 61 74  itional compilat
24b60 69 6f 6e 20 61 6e 64 20 65 78 65 63 75 74 69 6f  ion and executio
24b70 6e 0a 73 74 61 74 69 73 74 69 63 73 20 77 68 65  n.statistics whe
24b80 6e 20 54 63 6c 20 69 73 20 63 6f 6d 70 69 6c 65  n Tcl is compile
24b90 64 20 77 69 74 68 20 74 68 65 20 54 43 4c 5f 43  d with the TCL_C
24ba0 4f 4d 50 49 4c 45 5f 53 54 41 54 53 20 66 6c 61  OMPILE_STATS fla
24bb0 67 2e 20 28 42 4c 29 0a 0a 38 2f 37 2f 39 37 20  g. (BL)..8/7/97 
24bc0 28 62 75 67 20 66 69 78 29 20 45 78 70 72 65 73  (bug fix) Expres
24bd0 73 69 6f 6e 73 20 6e 6f 74 20 69 6e 20 7b 7d 73  sions not in {}s
24be0 20 74 68 61 74 20 68 61 76 65 20 61 20 63 6f 6d   that have a com
24bf0 70 61 72 69 73 6f 6e 20 6f 70 65 72 61 74 6f 72  parison operator
24c00 20 61 73 0a 74 68 65 20 74 6f 70 6d 6f 73 74 20   as.the topmost 
24c10 6f 70 65 72 61 74 6f 72 20 6d 75 73 74 20 62 65  operator must be
24c20 20 63 6f 6d 70 69 6c 65 64 20 6f 75 74 2d 6f 66   compiled out-of
24c30 2d 6c 69 6e 65 20 28 63 61 6c 6c 20 74 68 65 20  -line (call the 
24c40 65 78 70 72 20 63 6d 64 20 61 74 0a 72 75 6e 74  expr cmd at.runt
24c50 69 6d 65 29 20 74 6f 20 70 72 6f 70 65 72 6c 79  ime) to properly
24c60 20 73 75 70 70 6f 72 74 20 65 78 70 72 27 73 20   support expr's 
24c70 74 77 6f 2d 6c 65 76 65 6c 20 73 75 62 73 74 69  two-level substi
24c80 74 75 74 69 6f 6e 20 73 65 6d 61 6e 74 69 63 73  tution semantics
24c90 2e 20 41 6e 0a 65 78 61 6d 70 6c 65 20 69 73 20  . An.example is 
24ca0 22 73 65 74 20 61 20 32 3b 20 73 65 74 20 62 20  "set a 2; set b 
24cb0 7b 24 61 7d 3b 20 70 75 74 73 20 5b 65 78 70 72  {$a}; puts [expr
24cc0 20 24 62 20 3d 3d 20 32 5d 22 2e 20 28 42 4c 29   $b == 2]". (BL)
24cd0 0a 0a 38 2f 31 31 2f 39 37 20 28 62 75 67 20 66  ..8/11/97 (bug f
24ce0 69 78 29 20 54 68 65 20 63 61 74 63 68 20 63 6f  ix) The catch co
24cf0 6d 6d 61 6e 64 20 77 6f 75 6c 64 20 73 6f 6d 65  mmand would some
24d00 74 69 6d 65 73 20 63 72 61 73 68 20 69 66 20 61  times crash if a
24d10 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 0a 77   variable name.w
24d20 61 73 20 67 69 76 65 6e 20 61 6e 64 20 74 68 65  as given and the
24d30 20 62 79 74 65 63 6f 64 65 20 65 76 61 6c 75 61   bytecode evalua
24d40 74 69 6f 6e 20 73 74 61 63 6b 20 77 61 73 20 67  tion stack was g
24d50 72 6f 77 6e 20 77 68 65 6e 20 65 78 65 63 75 74  rown when execut
24d60 69 6e 67 20 74 68 65 0a 61 72 67 75 6d 65 6e 74  ing the.argument
24d70 20 73 63 72 69 70 74 2e 20 28 42 4c 29 0a 0a 38   script. (BL)..8
24d80 2f 31 32 2f 39 37 20 28 66 65 61 74 75 72 65 20  /12/97 (feature 
24d90 63 68 61 6e 67 65 29 20 52 65 69 6e 73 74 61 74  change) Reinstat
24da0 65 64 20 74 68 65 20 76 61 72 69 61 62 6c 65 20  ed the variable 
24db0 74 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20 74 6f  tcl_precision to
24dc0 20 63 6f 6e 74 72 6f 6c 0a 74 68 65 20 6e 75 6d   control.the num
24dd0 62 65 72 20 6f 66 20 64 69 67 69 74 73 20 75 73  ber of digits us
24de0 65 64 20 77 68 65 6e 20 66 6c 6f 61 74 69 6e 67  ed when floating
24df0 2d 70 6f 69 6e 74 20 76 61 6c 75 65 73 20 61 72  -point values ar
24e00 65 20 63 6f 6e 76 65 72 74 65 64 20 74 6f 0a 73  e converted to.s
24e10 74 72 69 6e 67 73 2c 20 77 69 74 68 20 64 65 66  trings, with def
24e20 61 75 6c 74 20 6f 66 20 31 32 20 64 69 67 69 74  ault of 12 digit
24e30 73 2e 20 20 48 6f 77 65 76 65 72 2c 20 68 61 64  s.  However, had
24e40 20 74 6f 20 6d 61 6b 65 20 74 63 6c 5f 70 72 65   to make tcl_pre
24e50 63 69 73 69 6f 6e 0a 73 68 61 72 65 64 20 61 6d  cision.shared am
24e60 6f 6e 67 20 61 6c 6c 20 69 6e 74 65 72 70 72 65  ong all interpre
24e70 74 65 72 73 20 28 65 78 63 65 70 74 20 74 68 61  ters (except tha
24e80 74 20 73 61 66 65 20 69 6e 74 65 72 70 72 65 74  t safe interpret
24e90 65 72 73 20 63 61 6e 27 74 0a 6d 6f 64 69 66 79  ers can't.modify
24ea0 20 69 74 29 2e 20 20 54 68 69 73 20 6d 61 6b 65   it).  This make
24eb0 73 20 74 68 65 20 54 63 6c 20 38 2e 30 20 62 65  s the Tcl 8.0 be
24ec0 68 61 76 69 6f 72 20 61 6c 6d 6f 73 74 20 69 64  havior almost id
24ed0 65 6e 74 69 63 61 6c 20 74 6f 20 37 2e 36 0a 65  entical to 7.6.e
24ee0 78 63 65 70 74 20 74 68 61 74 20 74 68 65 20 64  xcept that the d
24ef0 65 66 61 75 6c 74 20 70 72 65 63 69 73 69 6f 6e  efault precision
24f00 20 69 73 20 31 32 20 69 6e 73 74 65 61 64 20 6f   is 12 instead o
24f10 66 20 36 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f  f 6. (JO).*** PO
24f20 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
24f30 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d 2d  IBILITY ***..---
24f40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
24f50 65 6c 65 61 73 65 64 20 38 2e 30 2c 20 38 2f 31  eleased 8.0, 8/1
24f60 38 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  8/97 -----------
24f70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 38 2f  ------------..8/
24f80 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  19/97 (bug fix) 
24f90 4d 69 6e 69 6d 61 6c 20 66 69 78 20 66 6f 72 20  Minimal fix for 
24fa0 67 6c 6f 62 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e  glob -nocomplain
24fb0 20 62 75 67 73 3a 0a 22 67 6c 6f 62 20 2d 6e 6f   bugs:."glob -no
24fc0 63 6f 6d 70 6c 61 69 6e 20 75 6e 72 65 61 64 61  complain unreada
24fd0 62 6c 65 44 69 72 2f 2a 22 20 77 61 73 20 67 65  bleDir/*" was ge
24fe0 6e 65 72 61 74 69 6e 67 20 61 6e 20 61 6e 6f 6e  nerating an anon
24ff0 79 6d 6f 75 73 20 0a 65 72 72 6f 72 2e 20 4d 6f  ymous .error. Mo
25000 72 65 20 69 6e 20 64 65 70 74 68 20 66 69 78 65  re in depth fixe
25010 73 20 77 69 6c 6c 20 63 6f 6d 65 20 77 69 74 68  s will come with
25020 20 38 2e 31 2e 20 28 44 4c 29 2e 0a 0a 38 2f 32   8.1. (DL)...8/2
25030 30 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 52  0/97 (bug fix) R
25040 65 6d 6f 76 65 64 20 63 68 65 63 6b 20 66 6f 72  emoved check for
25050 20 46 4c 54 5f 4d 49 4e 20 69 6e 20 62 69 6e 61   FLT_MIN in bina
25060 72 79 20 63 6f 6d 6d 61 6e 64 20 73 6f 0a 75 6e  ry command so.un
25070 64 65 72 66 6c 6f 77 20 63 6f 6e 64 69 74 69 6f  derflow conditio
25080 6e 73 20 61 72 65 20 68 61 6e 64 6c 65 64 20 62  ns are handled b
25090 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 61  y the compiler a
250a0 75 74 6f 6d 61 74 69 63 0a 63 6f 6e 76 65 72 73  utomatic.convers
250b0 69 6f 6e 73 2e 20 28 53 53 29 0a 0a 38 2f 32 30  ions. (SS)..8/20
250c0 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20  /97 (bug fixes) 
250d0 46 69 78 65 64 20 73 65 76 65 72 61 6c 20 63 6f  Fixed several co
250e0 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61 74 65  mpilation-relate
250f0 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20 41 72  d bugs:.    - Ar
25100 72 61 79 20 63 6d 64 20 77 61 73 6e 27 74 20 64  ray cmd wasn't d
25110 65 74 65 63 74 69 6e 67 20 61 72 72 61 79 73 20  etecting arrays 
25120 74 68 61 74 2c 20 77 68 69 6c 65 20 63 6f 6d 70  that, while comp
25130 69 6c 65 64 2c 20 64 6f 20 6e 6f 74 20 79 65 74  iled, do not yet
25140 0a 20 20 20 20 20 20 65 78 69 73 74 20 28 65 2e  .      exist (e.
25150 67 2e 2c 20 61 72 65 20 6d 61 72 6b 65 64 20 75  g., are marked u
25160 6e 64 65 66 69 6e 65 64 20 73 69 6e 63 65 20 74  ndefined since t
25170 68 65 79 20 68 61 76 65 6e 27 74 20 62 65 65 6e  hey haven't been
25180 20 61 73 73 69 67 6e 65 64 0a 20 20 20 20 20 20   assigned.      
25190 74 6f 20 79 65 74 29 2e 0a 20 20 20 20 2d 20 54  to yet)..    - T
251a0 68 65 20 47 65 74 54 6f 6b 65 6e 20 70 72 6f 63  he GetToken proc
251b0 65 64 75 72 65 20 69 6e 20 74 63 6c 43 6f 6d 70  edure in tclComp
251c0 45 78 70 72 2e 63 20 77 61 73 6e 27 74 20 72 65  Expr.c wasn't re
251d0 63 6f 67 6e 69 7a 69 6e 67 20 70 72 6f 70 65 72  cognizing proper
251e0 6c 79 0a 20 20 20 20 20 20 77 68 65 74 68 65 72  ly.      whether
251f0 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 6b 65   an integer toke
25200 6e 20 77 61 73 20 69 6e 76 61 6c 69 64 2e 20 46  n was invalid. F
25210 6f 72 20 65 78 61 6d 70 6c 65 2c 20 22 30 78 24  or example, "0x$
25220 22 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20 61  " is not.      a
25230 20 76 61 6c 69 64 20 69 6e 74 65 67 65 72 2e 0a   valid integer..
25240 20 20 20 20 2d 20 50 65 72 66 6f 72 6d 61 6e 63      - Performanc
25250 65 20 62 75 67 20 69 6e 20 54 63 6c 45 78 65 63  e bug in TclExec
25260 75 74 65 42 79 74 65 43 6f 64 65 3a 20 74 68 65  uteByteCode: the
25270 20 73 69 7a 65 20 6f 66 20 69 74 73 20 73 74 61   size of its sta
25280 63 6b 20 66 72 61 6d 65 0a 20 20 20 20 20 20 77  ck frame.      w
25290 61 73 20 72 65 64 75 63 65 64 20 62 79 20 6f 76  as reduced by ov
252a0 65 72 20 32 30 25 20 62 79 20 6d 6f 76 69 6e 67  er 20% by moving
252b0 20 65 72 72 6f 72 49 6e 66 6f 20 63 6f 64 65 20   errorInfo code 
252c0 65 6c 73 65 77 68 65 72 65 2e 0a 20 20 20 20 2d  elsewhere..    -
252d0 20 55 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20 6d   Uninitialized m
252e0 65 6d 6f 72 79 20 72 65 61 64 20 65 72 72 6f 72  emory read error
252f0 20 69 6e 20 74 63 6c 43 6f 6d 70 69 6c 65 2e 63   in tclCompile.c
25300 2e 20 28 42 4c 29 0a 0a 38 2f 32 31 2f 39 37 20  . (BL)..8/21/97 
25310 28 62 75 67 20 66 69 78 29 20 73 61 66 65 3a 3a  (bug fix) safe::
25320 69 6e 74 65 72 70 43 6f 6e 66 69 67 75 72 65 20  interpConfigure 
25330 6e 6f 77 20 62 65 68 61 76 65 20 6c 69 6b 65 20  now behave like 
25340 54 6b 20 77 69 64 67 65 74 27 73 0a 63 6f 6e 66  Tk widget's.conf
25350 69 67 75 72 65 20 3a 20 69 74 20 63 68 61 6e 67  igure : it chang
25360 65 73 20 6f 6e 6c 79 20 74 68 65 20 6f 70 74 69  es only the opti
25370 6f 6e 73 20 79 6f 75 20 70 72 6f 76 69 64 65 20  ons you provide 
25380 61 6e 64 20 79 6f 75 20 63 61 6e 20 67 65 74 0a  and you can get.
25390 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c 75  the current valu
253a0 65 20 6f 66 20 61 6e 79 20 73 69 6e 67 6c 65 20  e of any single 
253b0 6f 70 74 69 6f 6e 2e 20 4e 65 77 20 3f 2d 6e 65  option. New ?-ne
253c0 73 74 65 64 20 62 6f 6f 6c 65 61 6e 3f 20 61 6e  sted boolean? an
253d0 64 0a 3f 2d 73 74 61 74 69 63 73 20 62 6f 6f 6c  d.?-statics bool
253e0 65 61 6e 3f 20 66 6f 72 20 61 6c 6c 20 73 61 66  ean? for all saf
253f0 65 3a 3a 69 6e 74 65 72 70 2a 20 63 6f 6d 6d 61  e::interp* comma
25400 6e 64 73 20 62 75 74 20 77 65 20 73 74 69 6c 6c  nds but we still
25410 0a 61 63 63 65 70 74 20 28 75 70 77 61 72 64 20  .accept (upward 
25420 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 29 20 74  compatibility) t
25430 68 65 20 70 72 65 76 69 6f 75 73 6c 79 20 64 65  he previously de
25440 66 69 6e 65 64 20 6e 6f 6e 20 76 61 6c 75 65 64  fined non valued
25450 0a 66 6c 61 67 73 20 3f 2d 6e 6f 53 74 61 74 69  .flags ?-noStati
25460 63 73 3f 20 61 6e 64 20 3f 2d 6e 65 73 74 65 64  cs? and ?-nested
25470 4c 6f 61 64 4f 6b 3f 2e 20 49 6d 70 72 6f 76 65  LoadOk?. Improve
25480 64 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61 74  d the documentat
25490 69 6f 6e 2e 20 28 44 4c 29 2e 0a 0a 38 2f 32 32  ion. (DL)...8/22
254a0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 55 70  /97 (bug fix) Up
254b0 64 61 74 65 64 20 50 72 69 6e 74 44 62 6c 2e 33  dated PrintDbl.3
254c0 20 74 6f 20 72 65 66 6c 65 63 74 20 74 68 65 20   to reflect the 
254d0 66 61 63 74 20 74 68 61 74 20 74 68 65 0a 74 63  fact that the.tc
254e0 6c 5f 70 72 65 63 69 73 69 6f 6e 20 76 61 72 69  l_precision vari
254f0 61 62 6c 65 20 69 73 20 73 74 69 6c 6c 20 75 73  able is still us
25500 65 64 20 61 6e 64 20 74 68 61 74 20 69 74 20 69  ed and that it i
25510 73 20 6e 6f 77 20 73 68 61 72 65 64 20 62 79 20  s now shared by 
25520 61 6c 6c 0a 69 6e 74 65 72 70 72 65 74 65 72 73  all.interpreters
25530 2e 20 28 42 4c 29 0a 0a 38 2f 32 35 2f 39 37 20  . (BL)..8/25/97 
25540 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
25550 61 72 72 61 79 20 61 63 63 65 73 73 20 62 75 67  array access bug
25560 20 69 6e 20 49 6c 6c 65 67 61 6c 45 78 70 72 4f   in IllegalExprO
25570 70 65 72 61 6e 64 54 79 70 65 0a 70 72 6f 63 65  perandType.proce
25580 64 75 72 65 20 69 6e 20 74 63 6c 45 78 65 63 75  dure in tclExecu
25590 74 65 2e 63 3a 20 69 74 20 77 61 73 20 6e 6f 74  te.c: it was not
255a0 20 70 72 6f 70 65 72 6c 79 20 73 75 70 70 6f 72   properly suppor
255b0 74 69 6e 67 20 74 68 65 20 7c 7c 20 61 6e 64 20  ting the || and 
255c0 26 26 0a 6f 70 65 72 61 74 6f 72 73 2e 20 28 42  &&.operators. (B
255d0 4c 29 0a 0a 38 2f 32 37 2f 39 37 20 28 62 75 67  L)..8/27/97 (bug
255e0 20 66 69 78 29 20 49 6e 20 63 61 73 65 73 20 77   fix) In cases w
255f0 68 65 72 65 20 61 20 63 68 61 6e 6e 65 6c 20 68  here a channel h
25600 61 6e 64 6c 65 72 20 77 61 73 20 63 72 65 61 74  andler was creat
25610 65 64 20 77 69 74 68 20 61 6e 0a 65 6d 70 74 79  ed with an.empty
25620 20 65 76 65 6e 74 20 6d 61 73 6b 20 77 68 69 6c   event mask whil
25630 65 20 64 61 74 61 20 77 61 73 20 73 74 69 6c 6c  e data was still
25640 20 62 75 66 66 65 72 65 64 20 69 6e 20 74 68 65   buffered in the
25650 20 63 68 61 6e 6e 65 6c 2c 20 74 68 65 0a 63 68   channel, the.ch
25660 61 6e 6e 65 6c 20 63 6f 64 65 20 77 6f 75 6c 64  annel code would
25670 20 67 65 74 20 73 74 75 63 6b 20 73 70 69 6e 6e   get stuck spinn
25680 69 6e 67 20 6f 6e 20 61 20 74 69 6d 65 72 20 74  ing on a timer t
25690 68 61 74 20 77 6f 75 6c 64 20 73 74 61 72 76 65  hat would starve
256a0 0a 69 64 6c 65 20 68 61 6e 64 6c 65 72 73 2e 20  .idle handlers. 
256b0 20 54 68 69 73 20 6d 6f 73 74 6c 79 20 68 61 70   This mostly hap
256c0 70 65 6e 65 64 20 69 6e 20 54 6b 20 77 68 65 6e  pened in Tk when
256d0 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 73 74   reading from st
256e0 64 69 6e 2e 20 28 53 53 29 0a 0a 39 2f 34 2f 39  din. (SS)..9/4/9
256f0 37 20 28 62 75 67 20 66 69 78 29 20 53 6c 61 76  7 (bug fix) Slav
25700 65 20 69 6e 74 65 72 70 73 20 6e 6f 77 20 69 6e  e interps now in
25710 68 65 72 69 74 20 74 68 65 20 6d 61 78 69 6d 75  herit the maximu
25720 6d 20 72 65 63 75 72 73 69 6f 6e 20 6c 69 6d 69  m recursion limi
25730 74 0a 6f 66 20 74 68 65 69 72 20 70 61 72 65 6e  t.of their paren
25740 74 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74 61  t instead of sta
25750 72 74 69 6e 67 20 62 61 63 6b 20 61 74 20 74 68  rting back at th
25760 65 20 64 65 66 61 75 6c 74 2e 20 7b 6e 62 3a 20  e default. {nb: 
25770 74 68 69 73 20 73 74 69 6c 6c 0a 64 6f 65 73 20  this still.does 
25780 6e 6f 74 20 70 72 65 76 65 6e 74 20 73 74 61 63  not prevent stac
25790 6b 20 6f 76 65 72 66 6c 6f 77 20 62 79 20 6d 75  k overflow by mu
257a0 6c 74 69 2d 69 6e 74 65 72 70 73 20 72 65 63 75  lti-interps recu
257b0 72 73 69 6f 6e 20 6f 72 20 61 6c 69 61 73 69 6e  rsion or aliasin
257c0 67 7d 20 28 44 4c 29 0a 0a 39 2f 31 31 2f 39 37  g} (DL)..9/11/97
257d0 20 28 62 75 67 20 66 69 78 29 20 41 6e 20 75 6e   (bug fix) An un
257e0 69 6e 69 74 69 61 6c 69 7a 65 64 20 76 61 72 69  initialized vari
257f0 61 62 6c 65 20 69 6e 20 54 63 6c 5f 57 61 69 74  able in Tcl_Wait
25800 50 69 64 20 63 61 75 73 65 64 0a 70 69 70 65 73  Pid caused.pipes
25810 20 74 6f 20 66 61 69 6c 20 74 6f 20 72 65 70 6f   to fail to repo
25820 72 74 20 65 6f 66 20 70 72 6f 70 65 72 6c 79 20  rt eof properly 
25830 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 2e 20 28  under Windows. (
25840 53 53 29 0a 0a 39 2f 31 32 2f 39 37 20 28 62 75  SS)..9/12/97 (bu
25850 67 20 66 69 78 29 20 22 65 78 65 63 22 20 77 61  g fix) "exec" wa
25860 73 20 6d 69 73 69 64 65 6e 74 69 66 79 69 6e 67  s misidentifying
25870 20 73 6f 6d 65 20 44 4f 53 20 65 78 65 63 75 74   some DOS execut
25880 61 62 6c 65 73 20 61 73 20 6e 6f 74 20 0a 65 78  ables as not .ex
25890 65 63 75 74 61 62 6c 65 2e 20 28 43 43 53 29 0a  ecutable. (CCS).
258a0 0a 39 2f 31 34 2f 39 37 20 28 62 75 67 20 66 69  .9/14/97 (bug fi
258b0 78 29 20 57 61 73 20 75 73 69 6e 67 20 74 68 65  x) Was using the
258c0 20 77 72 6f 6e 67 20 73 74 72 75 63 74 75 72 65   wrong structure
258d0 20 69 6e 20 73 69 7a 65 6f 66 20 6f 70 65 72 61   in sizeof opera
258e0 74 69 6f 6e 20 69 6e 0a 74 63 6c 55 6e 69 78 43  tion in.tclUnixC
258f0 68 61 6e 2e 63 2e 20 28 4a 4c 29 0a 0a 39 2f 31  han.c. (JL)..9/1
25900 35 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  5/97 (bug fix) F
25910 69 78 65 64 20 6e 6f 74 69 66 69 65 72 20 74 6f  ixed notifier to
25920 20 62 72 65 61 6b 20 6f 75 74 20 6f 66 20 64 6f   break out of do
25930 2d 6f 6e 65 2d 65 76 65 6e 74 20 6c 6f 6f 70 20  -one-event loop 
25940 69 66 0a 54 63 6c 5f 57 61 69 74 46 6f 72 45 76  if.Tcl_WaitForEv
25950 65 6e 74 20 72 65 74 75 72 6e 73 20 31 2c 20 73  ent returns 1, s
25960 6f 20 74 68 61 74 20 63 61 6c 6c 65 72 73 20 6f  o that callers o
25970 66 20 54 63 6c 5f 44 6f 4f 6e 65 45 76 65 6e 74  f Tcl_DoOneEvent
25980 20 77 69 6c 6c 20 67 65 74 0a 61 20 63 68 61 6e   will get.a chan
25990 63 65 20 74 6f 20 63 68 65 63 6b 20 77 68 65 74  ce to check whet
259a0 68 65 72 20 74 68 65 20 65 76 65 6e 74 20 6a 75  her the event ju
259b0 73 74 20 68 61 6e 64 6c 65 64 20 69 73 20 73 69  st handled is si
259c0 67 6e 69 66 69 63 61 6e 74 2e 20 54 68 69 73 0a  gnificant. This.
259d0 61 66 66 65 63 74 65 64 20 6d 61 69 6e 6c 79 20  affected mainly 
259e0 72 65 63 75 72 73 69 76 65 20 63 61 6c 6c 73 20  recursive calls 
259f0 74 6f 20 54 63 6c 5f 56 57 61 69 74 43 6d 64 3b  to Tcl_VWaitCmd;
25a00 20 74 68 65 73 65 20 64 69 64 20 6e 6f 74 20 67   these did not g
25a10 65 74 20 61 0a 63 68 61 6e 63 65 20 74 6f 20 6e  et a.chance to n
25a20 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 20 76  otice that the v
25a30 61 72 69 61 62 6c 65 20 74 68 65 79 20 77 65 72  ariable they wer
25a40 65 20 77 61 69 74 69 6e 67 20 66 6f 72 20 68 61  e waiting for ha
25a50 73 20 62 65 65 6e 20 73 65 74 0a 61 6e 64 20 74  s been set.and t
25a60 68 75 73 20 74 68 65 79 20 64 69 64 6e 27 74 20  hus they didn't 
25a70 74 65 72 6d 69 6e 61 74 65 20 74 68 65 20 76 77  terminate the vw
25a80 61 69 74 2e 20 28 4a 4c 2c 20 44 4c 2c 20 53 53  ait. (JL, DL, SS
25a90 29 0a 0a 39 2f 31 35 2f 39 37 20 28 62 75 67 20  )..9/15/97 (bug 
25aa0 66 69 78 29 20 41 6c 69 67 6e 6d 65 6e 74 20 70  fix) Alignment p
25ab0 72 6f 62 6c 65 6d 73 20 69 6e 20 22 62 69 6e 61  roblems in "bina
25ac0 72 79 20 66 6f 72 6d 61 74 22 20 77 6f 75 6c 64  ry format" would
25ad0 20 63 61 75 73 65 20 61 0a 63 72 61 73 68 20 6f   cause a.crash o
25ae0 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72 6d 73  n some platforms
25af0 20 77 68 65 6e 20 66 6f 72 6d 61 74 74 69 6e 67   when formatting
25b00 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20   floating point 
25b10 6e 75 6d 62 65 72 73 2e 20 28 53 53 29 0a 0a 39  numbers. (SS)..9
25b20 2f 31 35 2f 39 37 20 28 62 75 67 20 66 69 78 29  /15/97 (bug fix)
25b30 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 4d 61   Fixed bug in Ma
25b40 63 69 6e 74 6f 73 68 20 73 6f 63 6b 65 74 20 63  cintosh socket c
25b50 6f 64 65 2e 20 20 4e 6f 77 20 70 61 73 73 65 73  ode.  Now passes
25b60 20 61 6c 6c 0a 74 65 73 74 73 20 69 6e 20 73 6f   all.tests in so
25b70 63 6b 65 74 2e 74 65 73 74 20 74 68 61 74 20 61  cket.test that a
25b80 72 65 20 6e 6f 74 20 70 6c 61 74 66 6f 72 6d 20  re not platform 
25b90 73 70 65 63 69 66 69 63 2e 20 28 54 68 61 6e 6b  specific. (Thank
25ba0 73 20 74 6f 20 4d 61 72 6b 0a 52 6f 73 65 6d 61  s to Mark.Rosema
25bb0 6e 20 66 6f 72 20 74 68 65 20 70 6f 69 6e 74 65  n for the pointe
25bc0 72 20 6f 6e 20 74 68 65 20 66 69 78 2e 29 20 20  r on the fix.)  
25bd0 28 52 4a 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62  (RJ)..9/18/97 (b
25be0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
25bf0 67 20 2d 64 69 63 74 69 6f 6e 61 72 79 20 6f 70  g -dictionary op
25c00 74 69 6f 6e 20 6f 66 20 6c 73 6f 72 74 20 74 68  tion of lsort th
25c10 61 74 20 63 6f 75 6c 64 0a 63 61 75 73 65 20 74  at could.cause t
25c20 68 65 20 63 6f 6d 70 61 72 65 20 66 75 6e 63 74  he compare funct
25c30 69 6f 6e 20 74 6f 20 72 75 6e 20 6f 66 66 20 74  ion to run off t
25c40 68 65 20 65 6e 64 20 6f 66 20 61 6e 20 61 72 72  he end of an arr
25c50 61 79 20 69 66 20 74 68 65 0a 6e 75 6d 62 65 72  ay if the.number
25c60 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e 65 64 20   only contained 
25c70 30 27 73 2e 20 28 54 68 61 6e 6b 73 20 74 6f 20  0's. (Thanks to 
25c80 47 72 65 67 20 43 6f 75 63 68 20 66 6f 72 20 74  Greg Couch for t
25c90 68 65 20 72 65 70 6f 72 74 2e 29 20 28 52 4a 29  he report.) (RJ)
25ca0 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75 67 20 66  ..9/18/97 (bug f
25cb0 69 78 29 20 54 63 6c 46 69 6e 61 6c 69 7a 65 45  ix) TclFinalizeE
25cc0 6e 76 69 72 6f 6e 6d 65 6e 74 20 77 61 73 20 6e  nvironment was n
25cd0 6f 74 20 63 6c 65 61 6e 69 6e 67 20 75 70 20 0a  ot cleaning up .
25ce0 70 72 6f 70 65 72 6c 79 2e 20 28 44 4c 2c 20 4a  properly. (DL, J
25cf0 49 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75 67  I)..9/18/97 (bug
25d00 20 66 69 78 29 20 46 69 78 65 64 20 6c 6f 6e 67   fix) Fixed long
25d10 2d 73 74 61 6e 64 69 6e 67 20 62 75 67 20 77 68  -standing bug wh
25d20 65 72 65 20 61 6e 20 22 61 72 72 61 79 20 67 65  ere an "array ge
25d30 74 22 20 63 6f 6d 6d 61 6e 64 0a 64 69 64 20 6e  t" command.did n
25d40 6f 74 20 74 72 69 67 67 65 72 20 74 72 61 63 65  ot trigger trace
25d50 73 20 6f 6e 20 74 68 65 20 61 72 72 61 79 20 6f  s on the array o
25d60 72 20 69 74 73 20 65 6c 65 6d 65 6e 74 73 2e 20  r its elements. 
25d70 28 42 4c 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62  (BL)..9/18/97 (b
25d80 75 67 20 66 69 78 65 73 29 20 46 69 78 65 64 20  ug fixes) Fixed 
25d90 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61  compilation-rela
25da0 74 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20  ted bugs:.    - 
25db0 46 69 78 65 64 20 65 72 72 6f 72 49 6e 66 6f 20  Fixed errorInfo 
25dc0 74 72 61 63 65 62 61 63 6b 20 69 6e 66 6f 72 6d  traceback inform
25dd0 61 74 69 6f 6e 20 66 6f 72 20 74 6f 70 6c 65 76  ation for toplev
25de0 65 6c 20 63 6f 6f 6d 61 6e 64 73 20 74 68 61 74  el coomands that
25df0 0a 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 20 6e  .      contain n
25e00 65 73 74 65 64 20 63 6f 6d 6d 61 6e 64 73 2e 0a  ested commands..
25e10 20 20 20 20 2d 20 49 6e 20 74 68 65 20 65 78 70      - In the exp
25e20 72 20 63 6f 6d 6d 61 6e 64 2c 20 26 26 20 61 6e  r command, && an
25e30 64 20 7c 7c 20 6e 6f 77 20 61 63 63 65 70 74 20  d || now accept 
25e40 62 6f 6f 6c 65 61 6e 20 6f 70 65 72 61 6e 64 73  boolean operands
25e50 20 61 73 20 77 65 6c 6c 0a 20 20 20 20 20 20 61   as well.      a
25e60 73 20 6e 75 6d 65 72 69 63 20 6f 6e 65 73 2e 20  s numeric ones. 
25e70 28 42 4c 29 0a 0a 39 2f 32 32 2f 39 37 20 28 62  (BL)..9/22/97 (b
25e80 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
25e90 67 20 74 68 61 74 20 70 72 65 76 65 6e 74 65 64  g that prevented
25ea0 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64   translation mod
25eb0 65 73 20 66 72 6f 6d 20 62 65 69 6e 67 0a 73 65  es from being.se
25ec0 74 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79 20  t independently 
25ed0 66 6f 72 20 69 6e 70 75 74 20 61 6e 64 20 6f 75  for input and ou
25ee0 74 70 75 74 20 6f 6e 20 73 6f 63 6b 65 74 73 20  tput on sockets 
25ef0 69 66 20 69 6e 70 75 74 20 77 61 73 20 22 61 75  if input was "au
25f00 74 6f 22 2e 20 28 4a 4c 29 0a 0a 39 2f 32 34 2f  to". (JL)..9/24/
25f10 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63 6c  97 (bug fix) Tcl
25f20 5f 45 76 61 6c 46 69 6c 65 28 33 29 20 61 6e 64  _EvalFile(3) and
25f30 20 74 68 75 73 20 73 6f 75 72 63 65 28 6e 29 20   thus source(n) 
25f40 6e 6f 77 20 77 6f 72 6b 73 20 66 69 6e 65 20 6f  now works fine o
25f50 6e 0a 66 69 6c 65 73 20 63 6f 6e 74 61 69 6e 69  n.files containi
25f60 6e 67 20 4e 55 4c 20 63 68 61 72 73 2e 20 28 44  ng NUL chars. (D
25f70 4c 29 0a 0a 39 2f 32 36 2f 39 37 20 28 62 75 67  L)..9/26/97 (bug
25f80 20 66 69 78 29 20 46 69 78 65 64 20 75 73 65 20   fix) Fixed use 
25f90 6f 66 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64  of uninitialized
25fa0 20 6d 65 6d 6f 72 79 20 69 6e 20 74 68 65 20 65   memory in the e
25fb0 6e 76 69 72 6f 6e 20 61 72 72 61 79 0a 74 68 61  nviron array.tha
25fc0 74 20 6c 61 74 65 72 20 63 6f 75 6c 64 20 63 61  t later could ca
25fd0 75 73 65 20 72 61 6e 64 6f 6d 20 63 6f 72 65 20  use random core 
25fe0 64 75 6d 70 73 2e 20 41 70 70 6c 69 65 73 20 74  dumps. Applies t
25ff0 6f 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e  o all platforms.
26000 20 28 4a 4c 29 0a 0a 39 2f 32 36 2f 39 37 20 28   (JL)..9/26/97 (
26010 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 75  bug fix) Fixed u
26020 73 65 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c 69  se of uninitiali
26030 7a 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 73 6f  zed memory in so
26040 63 6b 65 74 20 61 64 64 72 65 73 73 20 64 61 74  cket address dat
26050 61 0a 73 74 72 75 63 74 75 72 65 20 75 6e 64 65  a.structure unde
26060 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74 61  r some circumsta
26070 6e 63 65 73 2e 20 54 68 69 73 20 63 6f 75 6c 64  nces. This could
26080 20 63 61 75 73 65 20 72 61 6e 64 6f 6d 20 63 6f   cause random co
26090 72 65 20 64 75 6d 70 73 2e 0a 54 68 69 73 20 61  re dumps..This a
260a0 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 55  pplies only to U
260b0 6e 69 78 2e 20 28 4a 4c 29 0a 0a 39 2f 32 36 2f  nix. (JL)..9/26/
260c0 39 37 20 28 62 75 67 20 66 69 78 29 20 4f 70 65  97 (bug fix) Ope
260d0 6e 69 6e 67 20 66 69 6c 65 73 20 6f 6e 20 50 43  ning files on PC
260e0 2d 4e 46 53 20 76 6f 6c 75 6d 65 73 20 77 6f 75  -NFS volumes wou
260f0 6c 64 20 63 61 75 73 65 20 61 20 68 61 6e 67 0a  ld cause a hang.
26100 75 6e 74 69 6c 20 74 68 65 20 73 79 73 74 65 6d  until the system
26110 20 74 69 6d 65 64 20 61 66 74 65 72 20 74 68 65   timed after the
26120 20 66 69 6c 65 20 77 61 73 20 63 6c 6f 73 65 64   file was closed
26130 2e 20 28 53 53 29 0a 0a 31 30 2f 36 2f 39 37 20  . (SS)..10/6/97 
26140 28 62 75 67 20 66 69 78 29 20 54 68 65 20 6a 6f  (bug fix) The jo
26150 69 6e 28 6e 29 20 63 6f 6d 6d 61 6e 64 2c 20 74  in(n) command, t
26160 68 6f 75 67 68 20 6f 62 6a 65 63 74 69 66 69 65  hough objectifie
26170 64 2c 20 77 61 73 20 6c 6f 6f 73 69 6e 67 0a 4e  d, was loosing.N
26180 55 4c 73 20 69 6e 20 74 68 65 20 6a 6f 69 6e 53  ULs in the joinS
26190 74 72 69 6e 67 20 61 6e 64 20 69 6e 20 6c 69 73  tring and in lis
261a0 74 20 65 6c 65 6d 65 6e 74 73 20 61 66 74 65 72  t elements after
261b0 20 74 68 65 20 32 6e 64 20 6f 6e 65 2e 0a 4e 6f   the 2nd one..No
261c0 77 20 79 6f 75 20 63 61 6e 20 22 6a 6f 69 6e 20  w you can "join 
261d0 24 6c 69 73 74 20 5c 30 22 20 66 6f 72 20 69 6e  $list \0" for in
261e0 73 74 61 6e 63 65 2e 20 28 44 4c 29 0a 0a 31 30  stance. (DL)..10
261f0 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /9/97 (bug fix) 
26200 55 6e 64 65 72 20 77 69 6e 64 6f 77 73 2c 20 69  Under windows, i
26210 66 20 65 6e 76 28 54 4d 50 29 20 6f 72 20 65 6e  f env(TMP) or en
26220 76 28 54 45 4d 50 29 20 72 65 66 65 72 72 65 64  v(TEMP) referred
26230 20 74 6f 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65   to a.non-existe
26240 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 65 78  nt directory, ex
26250 65 63 20 77 6f 75 6c 64 20 66 61 69 6c 20 77 68  ec would fail wh
26260 65 6e 20 74 72 79 69 6e 67 20 74 6f 20 63 72 65  en trying to cre
26270 61 74 65 20 69 74 73 20 74 65 6d 70 6f 72 61 72  ate its temporar
26280 79 0a 66 69 6c 65 73 2e 20 28 43 43 53 29 0a 0a  y.files. (CCS)..
26290 31 30 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78  10/9/97 (bug fix
262a0 29 20 55 6e 64 65 72 20 6d 61 63 20 61 6e 64 20  ) Under mac and 
262b0 77 69 6e 64 6f 77 73 2c 20 22 69 6e 66 6f 20 68  windows, "info h
262c0 6f 73 74 6e 61 6d 65 22 20 77 6f 75 6c 64 20 63  ostname" would c
262d0 72 61 73 68 20 69 66 20 0a 73 6f 63 6b 65 74 73  rash if .sockets
262e0 20 77 65 72 65 20 69 6e 73 74 61 6c 6c 65 64 20   were installed 
262f0 62 75 74 20 74 68 65 20 68 6f 73 74 6e 61 6d 65  but the hostname
26300 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 65   could not be de
26310 74 65 72 6d 69 6e 65 64 20 61 6e 79 68 6f 77 2e  termined anyhow.
26320 0a 54 63 6c 5f 47 65 74 48 6f 73 74 4e 61 6d 65  .Tcl_GetHostName
26330 28 29 20 77 61 73 20 72 65 74 75 72 6e 69 6e 67  () was returning
26340 20 4e 55 4c 4c 20 77 68 65 6e 20 69 74 20 73 68   NULL when it sh
26350 6f 75 6c 64 20 68 61 76 65 20 62 65 65 6e 20 72  ould have been r
26360 65 74 75 72 6e 69 6e 67 20 0a 61 6e 20 65 6d 70  eturning .an emp
26370 74 79 20 73 74 72 69 6e 67 2e 20 28 43 43 53 29  ty string. (CCS)
26380 0a 0a 31 30 2f 31 30 2f 39 37 20 28 62 75 67 20  ..10/10/97 (bug 
26390 66 69 78 29 20 22 66 69 6c 65 20 61 74 74 72 69  fix) "file attri
263a0 62 75 74 65 20 2f 22 20 72 65 74 75 72 6e 65 64  bute /" returned
263b0 20 65 72 72 6f 72 20 6f 6e 20 77 69 6e 64 6f 77   error on window
263c0 73 2e 20 28 43 43 53 29 0a 0a 31 30 2f 31 30 2f  s. (CCS)..10/10/
263d0 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
263e0 65 64 20 74 68 65 20 61 75 74 6f 5f 6c 6f 61 64  ed the auto_load
263f0 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20 68 61   procedure to ha
26400 6e 64 6c 65 20 70 72 6f 63 65 64 75 72 65 73 0a  ndle procedures.
26410 64 65 66 69 6e 65 64 20 69 6e 20 6e 61 6d 65 73  defined in names
26420 70 61 63 65 73 20 62 65 74 74 65 72 2e 20 20 41  paces better.  A
26430 6c 73 6f 20 66 69 78 65 64 20 70 67 6b 5f 6d 6b  lso fixed pgk_mk
26440 49 6e 64 65 78 20 73 6f 20 69 74 20 73 65 65 73  Index so it sees
26450 20 70 72 6f 63 65 64 75 72 65 73 0a 64 65 66 69   procedures.defi
26460 6e 65 64 20 69 6e 20 6e 65 73 74 65 64 20 6e 61  ned in nested na
26470 6d 65 73 70 61 63 65 73 2e 20 20 49 6e 64 65 78  mespaces.  Index
26480 20 65 6e 74 72 69 65 73 20 61 72 65 20 73 74 69   entries are sti
26490 6c 6c 20 6f 6e 6c 79 20 6d 61 64 65 20 66 6f 72  ll only made for
264a0 0a 65 78 70 6f 72 74 65 64 20 70 72 6f 63 65 64  .exported proced
264b0 75 72 65 73 2e 20 28 42 57 29 0a 0a 31 30 2f 31  ures. (BW)..10/1
264c0 33 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4f  3/97 (bug fix) O
264d0 6e 20 75 6e 69 78 2c 20 66 6f 72 20 66 69 6c 65  n unix, for file
264e0 73 20 77 69 74 68 20 75 6e 6b 6e 6f 77 6e 20 67  s with unknown g
264f0 72 6f 75 70 20 6f 72 20 6f 77 6e 65 72 0a 61 74  roup or owner.at
26500 74 72 69 62 75 74 65 73 2c 20 71 75 65 72 79 69  tributes, queryi
26510 6e 67 20 74 68 65 20 22 66 69 6c 65 20 61 74 74  ng the "file att
26520 72 69 62 75 74 65 73 22 20 77 6f 75 6c 64 20 72  ributes" would r
26530 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 72  eturn an error r
26540 61 74 68 65 72 20 74 68 61 6e 0a 72 65 74 75 72  ather than.retur
26550 6e 69 6e 67 20 74 68 65 20 67 72 6f 75 70 27 73  ning the group's
26560 20 6f 72 20 6f 77 6e 65 72 27 73 20 69 64 20 6e   or owner's id n
26570 75 6d 62 65 72 2c 20 61 6c 74 68 6f 75 67 68 20  umber, although 
26580 74 68 61 20 63 6f 6d 6d 61 6e 64 20 61 63 63 65  tha command acce
26590 70 74 73 0a 6e 75 6d 62 65 72 73 20 77 68 65 6e  pts.numbers when
265a0 20 73 65 74 74 69 6e 67 20 74 68 65 20 66 69 6c   setting the fil
265b0 65 27 73 20 67 72 6f 75 70 20 6f 72 20 6f 77 6e  e's group or own
265c0 65 72 2e 20 20 28 43 43 53 29 0a 0a 31 30 2f 32  er.  (CCS)..10/2
265d0 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 22  2/97 (bug fix) "
265e0 66 63 6f 70 79 22 20 64 69 64 20 6e 6f 74 20 65  fcopy" did not e
265f0 76 61 6c 20 74 68 65 20 63 61 6c 6c 62 61 63 6b  val the callback
26600 20 73 63 72 69 70 74 20 61 74 20 74 68 65 0a 67   script at the.g
26610 6c 6f 62 61 6c 20 73 63 6f 70 65 2e 20 28 53 53  lobal scope. (SS
26620 29 0a 0a 31 30 2f 32 32 2f 39 37 20 28 62 75 67  )..10/22/97 (bug
26630 20 66 69 78 29 20 46 69 78 65 64 20 74 68 65 20   fix) Fixed the 
26640 73 69 67 6e 61 74 75 72 65 20 6f 66 20 74 68 65  signature of the
26650 20 43 6f 70 79 44 6f 6e 65 20 63 61 6c 6c 62 61   CopyDone callba
26660 63 6b 20 75 73 65 64 20 69 6e 0a 74 68 65 20 68  ck used in.the h
26670 74 74 70 20 70 61 63 6b 61 67 65 28 73 29 20 73  ttp package(s) s
26680 6f 20 74 68 65 79 20 63 61 6e 20 68 61 6e 64 6c  o they can handl
26690 65 20 65 72 72 6f 72 20 63 61 73 65 73 20 70 72  e error cases pr
266a0 6f 70 65 72 6c 79 2e 20 28 42 57 29 0a 0a 31 30  operly. (BW)..10
266b0 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69 78 65  /28/97 (bug fixe
266c0 73 29 20 46 69 78 65 64 20 61 20 70 72 6f 62 6c  s) Fixed a probl
266d0 65 6d 20 77 68 65 72 65 20 6c 61 70 70 65 6e 64  em where lappend
266e0 20 77 6f 75 6c 64 20 66 72 65 65 20 74 68 65 20   would free the 
266f0 54 63 6c 20 6f 62 6a 65 63 74 0a 69 6e 20 61 20  Tcl object.in a 
26700 76 61 72 69 61 62 6c 65 20 69 66 20 61 20 54 63  variable if a Tc
26710 6c 5f 4f 62 6a 53 65 74 56 61 72 32 20 66 61 69  l_ObjSetVar2 fai
26720 6c 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 61  led because of a
26730 6e 20 65 72 72 6f 72 20 63 61 6c 6c 69 6e 67 20  n error calling 
26740 61 20 74 72 61 63 65 0a 6f 6e 20 74 68 65 20 76  a trace.on the v
26750 61 72 69 61 62 6c 65 2e 20 28 42 4c 29 0a 0a 31  ariable. (BL)..1
26760 30 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69 78  0/28/97 (bug fix
26770 29 20 43 68 61 6e 67 65 64 20 62 69 6e 61 72 79  ) Changed binary
26780 20 73 63 61 6e 20 74 6f 20 70 72 6f 70 65 72 6c   scan to properl
26790 79 20 68 61 6e 64 6c 65 20 73 69 67 6e 0a 65 78  y handle sign.ex
267a0 74 65 6e 73 69 6f 6e 20 6f 66 20 69 6e 74 65 67  tension of integ
267b0 65 72 73 20 6f 6e 20 36 34 2d 62 69 74 20 6f 72  ers on 64-bit or
267c0 20 6c 61 72 67 65 72 20 6d 61 63 68 69 6e 65 73   larger machines
267d0 2e 20 28 53 53 29 0a 0a 31 31 2f 33 2f 39 37 20  . (SS)..11/3/97 
267e0 28 62 75 67 20 66 69 78 65 73 29 20 46 69 78 65  (bug fixes) Fixe
267f0 64 20 73 65 76 65 72 61 6c 20 62 75 67 73 3a 0a  d several bugs:.
26800 20 20 20 20 2d 20 65 78 70 72 65 73 73 69 6f 6e      - expression
26810 73 20 73 75 63 68 20 61 73 20 22 65 78 70 72 20  s such as "expr 
26820 28 24 78 29 22 20 6d 75 73 74 20 62 65 20 63 6f  ($x)" must be co
26830 6d 70 69 6c 65 64 20 6f 75 74 2d 6f 66 2d 6c 69  mpiled out-of-li
26840 6e 65 0a 20 20 20 20 20 20 28 63 61 6c 6c 20 74  ne.      (call t
26850 68 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64 20  he expr command 
26860 70 72 6f 63 65 64 75 72 65 20 61 74 20 72 75 6e  procedure at run
26870 74 69 6d 65 29 20 74 6f 20 65 6e 73 75 72 65 20  time) to ensure 
26880 74 68 65 20 63 6f 72 72 65 63 74 0a 20 20 20 20  the correct.    
26890 20 20 62 65 68 61 76 69 6f 72 20 77 68 65 6e 20    behavior when 
268a0 22 24 78 22 20 69 73 20 61 6e 20 65 78 70 72 65  "$x" is an expre
268b0 73 73 69 6f 6e 20 73 75 63 68 20 61 73 20 22 35  ssion such as "5
268c0 2b 31 30 22 2e 0a 20 20 20 20 2d 20 22 61 72 72  +10"..    - "arr
268d0 61 79 20 73 65 74 20 61 20 7b 7d 22 20 6e 6f 77  ay set a {}" now
268e0 20 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 61   creates a new a
268f0 72 72 61 79 20 76 61 72 20 77 69 74 68 20 61 6e  rray var with an
26900 20 65 6d 70 74 79 20 61 72 72 61 79 0a 20 20 20   empty array.   
26910 20 20 20 76 61 6c 75 65 20 69 66 20 74 68 65 20     value if the 
26920 76 61 72 20 64 69 64 6e 27 74 20 61 6c 72 65 61  var didn't alrea
26930 64 79 20 65 78 69 73 74 2e 0a 20 20 20 20 2d 20  dy exist..    - 
26940 22 6c 72 65 70 6c 61 63 65 20 24 66 6f 6f 20 65  "lreplace $foo e
26950 6e 64 20 65 6e 64 22 20 6e 6f 20 6c 6f 6e 67 65  nd end" no longe
26960 72 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72  r returns an err
26970 6f 72 20 28 6a 75 73 74 20 61 6e 20 65 6d 70 74  or (just an empt
26980 79 0a 20 20 20 20 20 20 6c 69 73 74 29 20 69 66  y.      list) if
26990 20 66 6f 6f 20 69 73 20 65 6d 70 74 79 2e 0a 20   foo is empty.. 
269a0 20 20 20 2d 20 75 70 76 61 72 20 77 69 6c 6c 20     - upvar will 
269b0 6e 6f 20 6c 6f 6e 67 65 72 20 63 72 65 61 74 65  no longer create
269c0 20 61 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61   a variable in a
269d0 20 6e 61 6d 65 73 70 61 63 65 20 74 68 61 74 20   namespace that 
269e0 72 65 66 65 72 73 0a 20 20 20 20 20 20 74 6f 20  refers.      to 
269f0 61 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61 20  a variable in a 
26a00 70 72 6f 63 65 64 75 72 65 2e 0a 20 20 20 20 2d  procedure..    -
26a10 20 64 65 6c 65 74 69 6e 67 20 61 20 63 6f 6d 6d   deleting a comm
26a20 61 6e 64 20 74 72 61 63 65 20 77 69 74 68 69 6e  and trace within
26a30 20 61 20 63 6f 6d 6d 61 6e 64 20 74 72 61 63 65   a command trace
26a40 20 63 61 6c 6c 62 61 63 6b 20 77 6f 75 6c 64 0a   callback would.
26a50 20 20 20 20 20 20 6d 61 6b 65 20 74 68 65 20 63        make the c
26a60 6f 64 65 20 74 68 61 74 20 63 61 6c 6c 73 20 74  ode that calls t
26a70 72 61 63 65 73 20 74 6f 20 72 65 66 65 72 65 6e  races to referen
26a80 63 65 20 66 72 65 65 64 20 6d 65 6d 6f 72 79 2e  ce freed memory.
26a90 0a 20 20 20 20 2d 20 73 69 67 6e 69 66 69 63 61  .    - significa
26aa0 6e 74 6c 79 20 73 70 65 64 20 75 70 20 22 73 74  ntly sped up "st
26ab0 72 69 6e 67 20 66 69 72 73 74 22 20 61 6e 64 20  ring first" and 
26ac0 22 73 74 72 69 6e 67 20 6c 61 73 74 22 20 28 66  "string last" (f
26ad0 69 78 20 66 72 6f 6d 0a 20 20 20 20 20 20 64 61  ix from.      da
26ae0 72 72 65 6c 40 67 65 6d 73 74 6f 6e 65 2e 63 6f  [email protected]
26af0 6d 29 2e 0a 20 20 20 20 2d 20 73 65 67 20 66 61  m)..    - seg fa
26b00 75 6c 74 20 69 6e 20 54 63 6c 5f 4e 65 77 53 74  ult in Tcl_NewSt
26b10 72 69 6e 67 4f 62 6a 28 29 20 77 68 65 6e 20 61  ringObj() when a
26b20 20 4e 55 4c 4c 20 69 73 20 70 61 73 73 65 64 20   NULL is passed 
26b30 61 73 20 74 68 65 20 62 79 74 65 0a 20 20 20 20  as the byte.    
26b40 20 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65    pointer argume
26b50 6e 74 20 61 6e 64 20 54 63 6c 20 69 73 20 63 6f  nt and Tcl is co
26b60 6d 70 69 6c 65 64 20 77 69 74 68 20 2d 44 54 43  mpiled with -DTC
26b70 4c 5f 4d 45 4d 5f 44 45 42 55 47 2e 0a 20 20 20  L_MEM_DEBUG..   
26b80 20 2d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e   - documentation
26b90 20 61 6e 64 20 65 72 72 6f 72 20 6d 73 67 20 66   and error msg f
26ba0 69 78 65 73 2e 20 28 42 4c 29 0a 0a 31 31 2f 33  ixes. (BL)..11/3
26bb0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
26bc0 78 65 64 20 61 20 6e 75 6d 62 65 72 20 6f 66 20  xed a number of 
26bd0 49 2f 4f 20 62 75 67 73 20 72 65 6c 61 74 65 64  I/O bugs related
26be0 20 74 6f 20 77 6f 72 64 20 73 69 7a 65 73 20 6f   to word sizes o
26bf0 6e 0a 36 34 2d 62 69 74 20 6d 61 63 68 69 6e 65  n.64-bit machine
26c00 73 2e 20 28 53 53 29 0a 0a 31 31 2f 36 2f 39 37  s. (SS)..11/6/97
26c10 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 65   (bug fix) The e
26c20 78 69 74 20 63 6f 64 65 20 6f 66 20 74 68 65 20  xit code of the 
26c30 66 69 72 73 74 20 70 72 6f 63 65 73 73 20 63 72  first process cr
26c40 65 61 74 65 64 20 62 79 20 54 63 6c 0a 6f 6e 20  eated by Tcl.on 
26c50 57 69 6e 64 6f 77 73 20 77 61 73 20 6e 6f 74 20  Windows was not 
26c60 70 72 6f 70 65 72 6c 79 20 72 65 70 6f 72 74 65  properly reporte
26c70 64 20 64 75 65 20 74 6f 20 61 6e 20 69 6e 69 74  d due to an init
26c80 69 61 6c 69 7a 61 74 69 6f 6e 0a 70 72 6f 62 6c  ialization.probl
26c90 65 6d 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d  em. (SS)..------
26ca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
26cb0 61 73 65 64 20 38 2e 30 70 31 2c 20 31 31 2f 37  ased 8.0p1, 11/7
26cc0 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /97 ------------
26cd0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 31 2f  -----------..11/
26ce0 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  19/97 (bug fix) 
26cf0 46 69 78 65 64 20 62 75 67 20 69 6e 20 6c 69 6e  Fixed bug in lin
26d00 73 65 72 74 20 77 68 65 72 65 20 69 74 20 73 6f  sert where it so
26d10 6d 65 74 69 6d 65 73 20 61 63 63 69 64 65 6e 74  metimes accident
26d20 6c 79 0a 63 6c 65 61 72 65 64 20 6f 75 74 20 61  ly.cleared out a
26d30 20 73 68 61 72 65 64 20 61 72 67 75 6d 65 6e 74   shared argument
26d40 20 6c 69 73 74 20 6f 62 6a 65 63 74 2e 20 28 42   list object. (B
26d50 4c 29 2e 0a 0a 31 31 2f 31 39 2f 39 37 20 28 62  L)...11/19/97 (b
26d60 75 67 20 66 69 78 29 20 41 75 74 6f 6c 6f 61 64  ug fix) Autoload
26d70 69 6e 67 20 69 6e 20 6e 61 6d 65 73 70 61 63 65  ing in namespace
26d80 73 20 77 61 73 20 6e 6f 74 20 77 6f 72 6b 69 6e  s was not workin
26d90 67 20 70 72 6f 70 65 72 6c 79 2e 0a 61 75 74 6f  g properly..auto
26da0 5f 6d 6b 69 6e 64 65 78 20 69 73 20 73 74 69 6c  _mkindex is stil
26db0 6c 20 6e 6f 74 20 72 65 61 6c 6c 79 20 6e 61 6d  l not really nam
26dc0 65 73 70 61 63 65 20 61 77 61 72 65 20 62 75 74  espace aware but
26dd0 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 0a 63 61 73   most common.cas
26de0 65 73 20 73 68 6f 75 6c 64 20 6e 6f 77 20 62 65  es should now be
26df0 20 68 61 6e 64 6c 65 64 20 70 72 6f 70 65 72 6c   handled properl
26e00 79 20 28 73 65 65 20 69 6e 69 74 2e 74 65 73 74  y (see init.test
26e10 29 2e 20 28 42 57 2c 20 44 4c 29 0a 0a 31 31 2f  ). (BW, DL)..11/
26e20 32 30 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65  20/97 (enhanceme
26e30 6e 74 29 20 4d 61 64 65 20 74 68 65 20 63 68 61  nt) Made the cha
26e40 6e 67 65 73 20 72 65 71 75 69 72 65 64 20 62 79  nges required by
26e50 20 74 68 65 20 6e 65 77 20 41 70 70 6c 65 0a 55   the new Apple.U
26e60 6e 69 76 65 72 73 61 6c 20 48 65 61 64 65 72 73  niversal Headers
26e70 20 56 2e 33 2e 30 2c 20 73 6f 20 74 68 61 74 20   V.3.0, so that 
26e80 54 63 6c 20 77 69 6c 6c 20 63 6f 6d 70 69 6c 65  Tcl will compile
26e90 20 77 69 74 68 20 43 57 20 50 72 6f 20 32 2e 0a   with CW Pro 2..
26ea0 0a 31 31 2f 32 34 2f 39 37 20 28 62 75 67 20 66  .11/24/97 (bug f
26eb0 69 78 29 20 46 69 78 65 64 20 74 65 73 74 73 20  ix) Fixed tests 
26ec0 69 6e 20 63 6c 6f 63 6b 20 74 65 73 74 20 73 75  in clock test su
26ed0 69 74 65 20 74 68 61 74 20 6e 65 65 64 65 64 20  ite that needed 
26ee0 74 68 65 0a 2d 67 6d 74 20 66 6c 61 67 20 73 65  the.-gmt flag se
26ef0 74 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 4a 61  t.  Thanks to Ja
26f00 6e 20 4e 69 6a 74 6d 61 6e 73 20 66 6f 72 20 72  n Nijtmans for r
26f10 65 70 6f 72 74 69 6e 67 20 74 68 65 20 70 72 6f  eporting the pro
26f20 62 6c 65 6d 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d  blem. (RJ)..----
26f30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
26f40 6c 65 61 73 65 64 20 38 2e 30 70 32 2c 20 31 31  leased 8.0p2, 11
26f50 2f 32 35 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /25/97 ---------
26f60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
26f70 31 32 2f 33 2f 39 37 20 28 62 75 67 20 66 69 78  12/3/97 (bug fix
26f80 2f 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20 52  /optimization) R
26f90 65 6d 6f 76 65 64 20 75 6e 65 65 64 65 64 20 61  emoved uneeded a
26fa0 6e 64 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 64  nd potentially d
26fb0 61 6e 67 65 72 6f 75 73 0a 69 6e 73 74 61 6e 63  angerous.instanc
26fc0 65 73 20 6f 66 20 64 6f 75 62 6c 65 20 65 76 61  es of double eva
26fd0 6c 75 61 74 69 6f 6e 73 20 69 66 20 22 69 66 22  luations if "if"
26fe0 20 61 6e 64 20 22 65 78 70 72 22 20 73 74 61 74   and "expr" stat
26ff0 65 6d 65 6e 74 73 20 66 72 6f 6d 0a 74 68 65 20  ements from.the 
27000 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 49  library files. I
27010 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64  t is recommended
27020 20 74 68 61 74 20 75 6e 6c 65 73 73 20 79 6f 75   that unless you
27030 20 6e 65 65 64 20 61 20 64 6f 75 62 6c 65 0a 65   need a double.e
27040 76 61 6c 75 61 74 69 6f 6e 20 79 6f 75 20 61 6c  valuation you al
27050 77 61 79 73 20 75 73 65 20 22 65 78 70 72 20 7b  ways use "expr {
27060 2e 2e 2e 7d 22 20 69 6e 73 74 65 61 64 20 6f 66  ...}" instead of
27070 20 22 65 78 70 72 20 2e 2e 2e 22 20 61 6e 64 0a   "expr ..." and.
27080 22 69 66 20 7b 2e 2e 2e 7d 20 2e 2e 2e 22 20 69  "if {...} ..." i
27090 6e 73 74 65 61 64 20 6f 66 20 22 69 66 20 2e 2e  nstead of "if ..
270a0 2e 20 2e 2e 2e 22 2e 20 49 74 20 77 69 6c 6c 20  . ...". It will 
270b0 61 6c 73 6f 20 62 65 20 66 61 73 74 65 72 0a 74  also be faster.t
270c0 68 61 6e 6b 73 20 74 6f 20 74 68 65 20 62 79 74  hanks to the byt
270d0 65 20 63 6f 6d 70 69 6c 65 72 2e 20 28 44 4c 29  e compiler. (DL)
270e0 0a 0a 2d 2d 2d 2d 20 53 68 69 70 70 65 64 20 61  ..---- Shipped a
270f0 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 70 6c  s part of the pl
27100 75 67 69 6e 32 2e 30 62 35 20 61 73 20 38 2e 30  ugin2.0b5 as 8.0
27110 70 32 50 6c 75 67 69 6e 31 2c 20 44 65 63 20 38  p2Plugin1, Dec 8
27120 74 68 20 39 37 20 2d 2d 2d 2d 0a 0a 31 32 2f 38  th 97 ----..12/8
27130 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4e 65  /97 (bug fix) Ne
27140 65 64 20 74 6f 20 70 72 6f 74 65 63 74 20 74 68  ed to protect th
27150 65 20 6e 65 77 6c 79 20 61 63 63 65 70 74 65 64  e newly accepted
27160 20 63 68 61 6e 6e 65 6c 20 69 6e 20 61 6e 0a 61   channel in an.a
27170 63 63 65 70 74 20 63 61 6c 6c 62 61 63 6b 20 6f  ccept callback o
27180 6e 20 61 20 73 6f 63 6b 65 74 2c 20 6f 74 68 65  n a socket, othe
27190 72 77 69 73 65 20 74 68 65 20 63 61 6c 6c 62 61  rwise the callba
271a0 63 6b 20 6d 61 79 20 63 6c 6f 73 65 20 69 74 20  ck may close it 
271b0 61 6e 64 0a 63 61 75 73 65 20 61 6e 20 65 72 72  and.cause an err
271c0 6f 72 2c 20 77 68 69 63 68 20 77 6f 75 6c 64 20  or, which would 
271d0 63 61 75 73 65 20 74 68 65 20 43 20 63 6f 64 65  cause the C code
271e0 20 74 6f 20 61 74 74 65 6d 70 74 20 74 6f 20 63   to attempt to c
271f0 6c 6f 73 65 20 74 68 65 0a 6e 6f 77 20 64 65 6c  lose the.now del
27200 65 74 65 64 20 63 68 61 6e 6e 65 6c 2e 20 42 75  eted channel. Bu
27210 6d 70 69 6e 67 20 74 68 65 20 72 65 66 63 6f 75  mping the refcou
27220 6e 74 20 61 73 73 75 72 65 73 20 74 68 61 74 20  nt assures that 
27230 74 68 65 20 63 68 61 6e 6e 65 6c 20 73 74 69 63  the channel stic
27240 6b 73 0a 61 72 6f 75 6e 64 20 74 6f 20 62 65 20  ks.around to be 
27250 72 65 61 6c 6c 79 20 63 6c 6f 73 65 64 20 69 6e  really closed in
27260 20 74 68 69 73 20 63 61 73 65 2e 20 28 4a 4c 29   this case. (JL)
27270 0a 0a 31 32 2f 38 2f 39 37 20 28 62 75 67 20 66  ..12/8/97 (bug f
27280 69 78 29 20 4e 65 65 64 20 74 6f 20 70 72 6f 74  ix) Need to prot
27290 65 63 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20  ect the channel 
272a0 69 6e 20 61 20 66 69 6c 65 65 76 65 6e 74 20 73  in a fileevent s
272b0 6f 20 74 68 61 74 20 69 74 0a 69 73 20 6e 6f 74  o that it.is not
272c0 20 64 65 6c 65 74 65 64 20 62 65 66 6f 72 65 20   deleted before 
272d0 74 68 65 20 66 69 6c 65 65 76 65 6e 74 20 68 61  the fileevent ha
272e0 6e 64 6c 65 72 20 72 65 74 75 72 6e 73 2e 20 28  ndler returns. (
272f0 43 53 2c 20 4a 4c 29 0a 0a 31 32 2f 31 38 2f 39  CS, JL)..12/18/9
27300 37 20 28 62 75 67 20 66 69 78 29 20 49 6e 20 74  7 (bug fix) In t
27310 68 65 20 6f 70 74 20 61 72 67 75 6d 65 6e 74 20  he opt argument 
27320 70 61 72 73 69 6e 67 20 70 61 63 6b 61 67 65 3a  parsing package:
27330 20 69 66 20 74 68 65 20 64 65 73 63 72 69 70 74   if the descript
27340 69 6f 6e 20 0a 68 61 64 20 6f 6e 6c 79 20 66 6c  ion .had only fl
27350 61 67 73 2c 20 74 68 65 20 22 74 6f 6f 20 6d 61  ags, the "too ma
27360 6e 79 20 61 72 67 75 6d 65 6e 74 73 22 20 63 61  ny arguments" ca
27370 73 65 20 77 61 73 20 6e 6f 74 20 64 65 74 65 63  se was not detec
27380 74 65 64 2e 20 54 68 65 20 64 65 66 61 75 6c 74  ted. The default
27390 0a 76 61 6c 75 65 20 77 61 73 20 6e 6f 74 20 75  .value was not u
273a0 73 65 64 20 66 6f 72 20 74 68 65 20 73 70 65 63  sed for the spec
273b0 69 61 6c 20 22 61 72 67 73 22 20 65 6e 64 69 6e  ial "args" endin
273c0 67 20 61 72 67 75 6d 65 6e 74 2e 20 28 44 4c 29  g argument. (DL)
273d0 0a 0a 31 2f 31 35 2f 39 38 20 28 69 6d 70 72 6f  ..1/15/98 (impro
273e0 76 65 6d 65 6e 74 29 20 4d 6f 76 65 64 20 63 6f  vement) Moved co
273f0 6d 6d 6f 6e 20 70 61 72 74 20 6f 66 20 69 6e 69  mmon part of ini
27400 74 53 63 72 69 70 74 20 69 6e 20 63 6f 6d 6d 6f  tScript in commo
27410 6e 20 66 69 6c 65 2e 0a 4d 6f 76 65 64 20 77 69  n file..Moved wi
27420 6e 64 6f 77 73 20 73 70 65 63 69 66 69 63 20 69  ndows specific i
27430 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 74 6f  nitialization to
27440 20 69 6e 69 74 2e 74 63 6c 20 73 6f 20 79 6f 75   init.tcl so you
27450 20 63 61 6e 20 69 6e 69 74 69 61 6c 69 7a 65 0a   can initialize.
27460 54 63 6c 20 69 6e 20 77 69 6e 64 6f 77 73 20 77  Tcl in windows w
27470 69 74 68 6f 75 74 20 68 61 76 69 6e 67 20 74 6f  ithout having to
27480 20 63 61 6c 6c 20 54 63 6c 5f 49 6e 69 74 20 77   call Tcl_Init w
27490 68 69 63 68 20 69 73 20 6e 6f 77 20 6f 6e 6c 79  hich is now only
274a0 0a 73 65 61 72 63 68 69 6e 67 20 66 6f 72 20 69  .searching for i
274b0 6e 69 74 2e 74 63 6c 20 7b 62 61 63 6b 20 70 6f  nit.tcl {back po
274c0 72 74 65 64 20 66 72 6f 6d 20 38 2e 31 7d 2e 20  rted from 8.1}. 
274d0 28 44 4c 29 0a 0a 2d 2d 2d 2d 20 53 68 69 70 70  (DL)..---- Shipp
274e0 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74 68  ed as part of th
274f0 65 20 70 6c 75 67 69 6e 20 61 73 20 38 2e 30 70  e plugin as 8.0p
27500 32 50 6c 75 67 69 6e 32 2c 20 4a 61 6e 20 31 35  2Plugin2, Jan 15
27510 74 68 20 39 38 20 2d 2d 2d 2d 0a 0a 35 2f 32 37  th 98 ----..5/27
27520 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 57 69  /98 (bug fix) Wi
27530 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64 72 69  ndows socket dri
27540 76 65 72 20 64 69 64 20 6e 6f 74 20 6e 6f 74 69  ver did not noti
27550 63 65 20 6e 65 77 20 64 61 74 61 20 61 72 72 69  ce new data arri
27560 76 69 6e 67 0a 6f 6e 20 6e 6f 6e 62 6c 6f 63 6b  ving.on nonblock
27570 69 6e 67 20 73 6f 63 6b 65 74 73 20 75 6e 74 69  ing sockets unti
27580 6c 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70  l the event loop
27590 20 77 61 73 20 65 6e 74 65 72 65 64 2e 20 28 53   was entered. (S
275a0 53 29 0a 0a 35 2f 32 37 2f 39 38 20 28 62 75 67  S)..5/27/98 (bug
275b0 20 66 69 78 29 20 57 69 6e 64 6f 77 73 20 73 6f   fix) Windows so
275c0 63 6b 65 74 20 64 72 69 76 65 72 20 75 73 65 64  cket driver used
275d0 20 46 49 4f 4e 52 45 41 44 2c 20 77 68 69 63 68   FIONREAD, which
275e0 20 69 73 20 6e 6f 74 0a 73 75 70 70 6f 72 74 65   is not.supporte
275f0 64 20 63 6f 72 72 65 63 74 6c 79 20 62 79 20 57  d correctly by W
27600 69 6e 53 6f 63 6b 2e 20 28 53 53 29 0a 0a 36 2f  inSock. (SS)..6/
27610 39 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 47  9/98 (bug fix) G
27620 65 6e 65 72 69 63 20 63 68 61 6e 6e 65 6c 20 63  eneric channel c
27630 6f 64 65 20 66 61 69 6c 65 64 20 74 6f 20 72 65  ode failed to re
27640 70 6f 72 74 20 72 65 61 64 61 62 6c 65 20 66 69  port readable fi
27650 6c 65 0a 65 76 65 6e 74 73 20 6f 6e 20 62 75 66  le.events on buf
27660 66 65 72 65 64 20 64 61 74 61 20 74 68 61 74 20  fered data that 
27670 77 61 73 20 6c 65 66 74 20 62 65 68 69 6e 64 20  was left behind 
27680 62 79 20 61 20 67 65 74 73 20 6f 72 20 72 65 61  by a gets or rea
27690 64 20 74 68 61 74 0a 64 69 64 20 6e 6f 74 20 63  d that.did not c
276a0 6f 6e 73 75 6d 65 20 61 6c 6c 20 61 76 61 69 6c  onsume all avail
276b0 61 62 6c 65 20 64 61 74 61 2e 20 28 53 53 29 0a  able data. (SS).
276c0 0a 36 2f 31 38 2f 39 38 20 28 62 75 67 20 66 69  .6/18/98 (bug fi
276d0 78 29 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f  x) Compilation o
276e0 66 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 6f  f loop expressio
276f0 6e 73 20 77 61 73 20 74 6f 6f 20 61 67 67 72 65  ns was too aggre
27700 73 73 69 76 65 0a 61 6e 64 20 69 6e 63 6f 72 72  ssive.and incorr
27710 65 63 74 6c 79 20 69 6e 6c 69 6e 65 64 20 6e 6f  ectly inlined no
27720 6e 2d 6c 69 74 65 72 61 6c 20 65 78 70 72 65 73  n-literal expres
27730 73 69 6f 6e 73 2e 20 28 53 53 29 0a 0a 36 2f 31  sions. (SS)..6/1
27740 38 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 22  8/98 (bug fix) "
27750 69 6e 66 6f 20 76 61 72 22 20 61 6e 64 20 22 69  info var" and "i
27760 6e 66 6f 20 6c 6f 63 61 6c 73 22 20 69 6e 63 6f  nfo locals" inco
27770 72 72 65 63 74 6c 79 20 72 65 70 6f 72 74 65 64  rrectly reported
27780 0a 74 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f  .the existence o
27790 66 20 63 6f 6d 70 69 6c 65 72 20 74 65 6d 70 6f  f compiler tempo
277a0 72 61 72 79 20 76 61 72 69 61 62 6c 65 73 2e 20  rary variables. 
277b0 28 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62  (SS)..6/18/98 (b
277c0 75 67 20 66 69 78 29 20 44 69 63 74 69 6f 6e 61  ug fix) Dictiona
277d0 72 79 20 73 6f 72 74 69 6e 67 20 75 73 65 64 20  ry sorting used 
277e0 73 69 67 6e 65 64 20 63 68 61 72 61 63 74 65 72  signed character
277f0 0a 63 6f 6d 70 61 72 69 73 6f 6e 73 2e 20 28 53  .comparisons. (S
27800 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75 67  S)..6/18/98 (bug
27810 20 66 69 78 29 20 43 6f 6d 70 69 6c 65 20 70 72   fix) Compile pr
27820 6f 63 73 20 63 6f 72 72 75 70 74 65 64 20 74 68  ocs corrupted th
27830 65 20 65 78 63 65 70 74 69 6f 6e 20 73 74 61 63  e exception stac
27840 6b 20 69 6e 20 73 6f 6d 65 0a 63 61 73 65 73 2e  k in some.cases.
27850 20 28 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28   (SS)..6/18/98 (
27860 62 75 67 20 66 69 78 29 20 41 72 72 61 79 20 73  bug fix) Array s
27870 65 74 20 68 61 64 20 65 72 72 61 74 69 63 20 62  et had erratic b
27880 65 68 61 76 69 6f 72 20 77 68 65 6e 20 69 6e 69  ehavior when ini
27890 74 69 61 6c 69 7a 69 6e 67 20 61 0a 76 61 72 69  tializing a.vari
278a0 61 62 6c 65 20 66 72 6f 6d 20 61 6e 20 65 6d 70  able from an emp
278b0 74 79 20 76 61 6c 75 65 20 6c 69 73 74 2e 20 28  ty value list. (
278c0 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75  SS)..6/18/98 (bu
278d0 67 20 66 69 78 29 20 54 68 65 20 57 69 6e 64 6f  g fix) The Windo
278e0 77 73 20 72 65 67 69 73 74 72 79 20 70 61 63 6b  ws registry pack
278f0 61 67 65 20 68 61 64 20 61 20 62 61 64 20 62 6f  age had a bad bo
27900 75 6e 64 73 20 63 68 65 63 6b 0a 74 68 61 74 20  unds check.that 
27910 63 6f 75 6c 64 20 6c 65 61 64 20 74 6f 20 61 20  could lead to a 
27920 63 72 61 73 68 2e 20 28 53 53 29 0a 0a 36 2f 31  crash. (SS)..6/1
27930 38 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54  8/98 (bug fix) T
27940 68 65 20 66 6f 72 65 61 63 68 20 63 6f 6d 70 69  he foreach compi
27950 6c 65 20 70 72 6f 63 20 64 69 64 20 6e 6f 74 20  le proc did not 
27960 63 6f 72 72 65 63 74 6c 79 20 68 61 6e 64 6c 65  correctly handle
27970 0a 6e 6f 6e 2d 6c 6f 63 61 6c 20 76 61 72 69 61  .non-local varia
27980 62 6c 65 20 72 65 66 65 72 65 6e 63 65 73 2e 20  ble references. 
27990 28 53 53 29 0a 0a 36 2f 32 35 2f 39 38 20 28 6e  (SS)..6/25/98 (n
279a0 65 77 20 66 65 61 74 75 72 65 73 29 20 41 64 64  ew features) Add
279b0 65 64 20 6e 61 6d 65 20 72 65 73 6f 6c 75 74 69  ed name resoluti
279c0 6f 6e 20 68 6f 6f 6b 73 20 74 6f 20 73 75 70 70  on hooks to supp
279d0 6f 72 74 20 5b 69 6e 63 72 20 54 63 6c 5d 2e 0a  ort [incr Tcl]..
279e0 54 68 65 72 65 20 61 72 65 20 6e 65 77 20 69 6e  There are new in
279f0 74 65 72 6e 61 6c 20 54 63 6c 5f 2a 52 65 73 6f  ternal Tcl_*Reso
27a00 6c 76 65 72 2a 20 41 50 49 73 20 74 6f 20 61 64  lver* APIs to ad
27a10 64 2c 20 71 75 65 72 79 20 61 6e 64 20 72 65 6d  d, query and rem
27a20 6f 76 65 20 74 68 65 20 68 6f 6f 6b 73 2e 20 0a  ove the hooks. .
27a30 57 69 74 68 20 74 68 69 73 20 63 68 61 6e 67 65  With this change
27a40 73 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 70  s it should be p
27a50 6f 73 73 69 62 6c 65 20 74 6f 20 64 79 6e 61 6d  ossible to dynam
27a60 69 63 61 6c 6c 79 20 6c 6f 61 64 20 5b 69 6e 63  ically load [inc
27a70 72 20 54 63 6c 5d 0a 61 73 20 61 6e 20 65 78 74  r Tcl].as an ext
27a80 65 6e 73 69 6f 6e 2e 20 28 4d 4d 29 0a 0a 37 2f  ension. (MM)..7/
27a90 31 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 54  1/97 (bug fix) T
27aa0 68 65 20 63 6f 6d 6d 61 6e 64 73 20 22 69 6e 66  he commands "inf
27ab0 6f 20 61 72 67 73 2c 20 62 6f 64 79 2c 20 64 65  o args, body, de
27ac0 66 61 75 6c 74 2c 20 70 72 6f 63 73 22 20 64 69  fault, procs" di
27ad0 64 0a 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20  d.not correctly 
27ae0 68 61 6e 64 6c 65 20 69 6d 70 6f 72 74 65 64 20  handle imported 
27af0 70 72 6f 63 65 64 75 72 65 73 2e 20 28 52 4a 29  procedures. (RJ)
27b00 0a 0a 37 2f 36 2f 39 38 20 28 69 6d 70 72 6f 76  ..7/6/98 (improv
27b10 65 6d 65 6e 74 29 20 70 6b 67 5f 6d 6b 49 6e 64  ement) pkg_mkInd
27b20 65 78 20 6e 6f 77 20 69 6d 70 6c 65 6d 65 6e 74  ex now implement
27b30 73 20 74 68 65 20 22 70 61 63 6b 61 67 65 20 72  s the "package r
27b40 65 71 75 69 72 65 22 0a 63 6f 6d 6d 61 6e 64 2e  equire".command.
27b50 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20    This makes it 
27b60 70 6f 73 73 69 62 6c 65 20 74 6f 20 63 72 65 61  possible to crea
27b70 74 65 20 69 6e 64 65 78 20 66 69 6c 65 73 20 66  te index files f
27b80 6f 72 20 70 61 63 6b 61 67 65 73 0a 74 68 61 74  or packages.that
27b90 20 72 65 71 75 69 72 65 20 61 6e 6f 74 68 65 72   require another
27ba0 20 70 61 63 6b 61 67 65 20 61 6e 64 20 74 68 65   package and the
27bb0 6e 20 65 78 65 63 75 74 65 20 63 6f 64 65 20 66  n execute code f
27bc0 72 6f 6d 20 74 68 61 74 20 70 61 63 6b 61 67 65  rom that package
27bd0 20 69 6e 0a 74 68 65 69 72 20 66 69 6c 65 2e 20   in.their file. 
27be0 50 72 65 76 69 6f 75 73 6c 79 2c 20 74 68 69 73  Previously, this
27bf0 20 77 6f 75 6c 64 20 74 68 72 6f 77 20 61 6e 20   would throw an 
27c00 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74 68  error because th
27c10 65 20 72 65 71 75 69 72 65 64 0a 70 61 63 6b 61  e required.packa
27c20 67 65 20 68 61 64 20 6e 6f 74 20 62 65 65 6e 20  ge had not been 
27c30 6c 6f 61 64 65 64 2e 20 20 54 68 65 20 2d 6e 6f  loaded.  The -no
27c40 70 6b 67 72 65 71 75 69 65 64 20 66 6c 61 67 20  pkgrequied flag 
27c50 69 73 20 70 72 6f 76 69 64 65 64 20 74 6f 0a 72  is provided to.r
27c60 65 76 65 72 74 20 62 61 63 6b 20 74 6f 20 74 68  evert back to th
27c70 65 20 6f 6c 64 20 66 75 6e 63 74 69 6f 6e 61 6c  e old functional
27c80 69 74 79 2e 20 28 45 4d 53 29 0a 0a 37 2f 36 2f  ity. (EMS)..7/6/
27c90 39 38 20 28 69 6d 70 72 6f 76 65 6d 65 6e 74 29  98 (improvement)
27ca0 20 62 61 63 6b 2d 70 6f 72 74 65 64 20 74 68 65   back-ported the
27cb0 20 2d 64 69 72 65 63 74 20 66 6c 61 67 20 66 72   -direct flag fr
27cc0 6f 6d 20 38 2e 31 20 69 6e 74 6f 0a 70 6b 67 5f  om 8.1 into.pkg_
27cd0 6d 6b 49 6e 64 65 78 2e 20 20 54 68 69 73 20 72  mkIndex.  This r
27ce0 65 73 75 6c 74 73 20 69 6e 20 70 6b 67 49 6e 64  esults in pkgInd
27cf0 65 78 2e 74 63 6c 20 66 69 6c 65 73 20 74 68 61  ex.tcl files tha
27d00 74 20 63 6f 6e 74 61 69 6e 20 64 69 72 65 63 74  t contain direct
27d10 0a 73 6f 75 72 63 65 20 6f 72 20 6c 6f 61 64 20  .source or load 
27d20 63 6f 6d 6d 61 6e 64 73 20 69 6e 73 74 65 61 64  commands instead
27d30 20 6f 66 20 74 63 6c 50 6b 67 53 65 74 75 70 20   of tclPkgSetup 
27d40 63 6f 6d 6d 61 6e 64 73 2e 20 28 45 4d 53 29 0a  commands. (EMS).
27d50 0a 37 2f 36 2f 39 38 20 28 69 6d 70 72 6f 76 65  .7/6/98 (improve
27d60 6d 65 6e 74 29 20 6d 61 64 65 20 63 68 61 6e 67  ment) made chang
27d70 65 73 20 74 6f 20 74 68 65 20 41 75 78 44 61 74  es to the AuxDat
27d80 61 20 69 74 65 6d 73 20 73 74 72 75 63 74 75 72  a items structur
27d90 65 73 20 74 6f 20 73 75 70 70 6f 72 74 0a 73 74  es to support.st
27da0 6f 72 61 67 65 20 6f 66 20 63 6f 6d 70 69 6c 65  orage of compile
27db0 64 20 73 63 72 69 70 74 73 20 6f 6e 20 64 69 73  d scripts on dis
27dc0 6b 2e 20 41 6c 73 6f 20 73 6f 6d 65 20 72 65 6c  k. Also some rel
27dd0 61 74 65 64 20 6d 69 6e 6f 72 20 63 68 61 6e 67  ated minor chang
27de0 65 73 20 69 6e 0a 74 68 65 20 63 6f 6d 70 69 6c  es in.the compil
27df0 61 74 69 6f 6e 20 61 6e 64 20 65 78 65 63 75 74  ation and execut
27e00 69 6f 6e 20 65 6e 67 69 6e 65 2e 20 28 45 4d 53  ion engine. (EMS
27e10 29 0a 0a 36 2f 34 2f 39 38 20 28 65 6e 68 61 6e  )..6/4/98 (enhan
27e20 63 65 6d 65 6e 74 29 20 41 64 64 65 64 20 6e 65  cement) Added ne
27e30 77 20 69 6e 74 65 72 6e 61 6c 20 72 6f 75 74 69  w internal routi
27e40 6e 65 73 20 74 6f 20 73 75 70 70 6f 72 74 20 69  nes to support i
27e50 6e 73 65 72 74 69 6e 67 0a 61 6e 64 20 64 65 6c  nserting.and del
27e60 65 74 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 73  eting from the s
27e70 74 61 74 2c 20 61 63 63 65 73 73 2c 20 61 6e 64  tat, access, and
27e80 20 6f 70 65 6e 2d 66 69 6c 65 2d 63 68 61 6e 6e   open-file-chann
27e90 65 6c 20 6d 65 63 68 61 6e 69 73 6d 73 2e 0a 54  el mechanisms..T
27ea0 63 6c 41 63 63 65 73 73 49 6e 73 65 72 74 50 72  clAccessInsertPr
27eb0 6f 63 2c 20 54 63 6c 53 74 61 74 49 6e 73 65 72  oc, TclStatInser
27ec0 74 50 72 6f 63 2c 20 26 20 54 63 6c 4f 70 65 6e  tProc, & TclOpen
27ed0 46 69 6c 65 43 68 61 6e 6e 65 6c 49 6e 73 65 72  FileChannelInser
27ee0 74 50 72 6f 63 0a 69 6e 73 65 72 74 20 70 6f 69  tProc.insert poi
27ef0 6e 74 65 72 73 20 74 6f 20 73 75 63 68 20 72 6f  nters to such ro
27f00 75 74 69 6e 65 73 3b 20 54 63 6c 41 63 63 65 73  utines; TclAcces
27f10 73 44 65 6c 65 74 65 50 72 6f 63 2c 20 54 63 6c  sDeleteProc, Tcl
27f20 53 74 61 74 44 65 6c 65 74 65 50 72 6f 63 2c 0a  StatDeleteProc,.
27f30 26 20 54 63 6c 4f 70 65 6e 46 69 6c 65 43 68 61  & TclOpenFileCha
27f40 6e 6e 65 6c 44 65 6c 65 74 65 50 72 6f 63 20 64  nnelDeleteProc d
27f50 65 6c 65 74 65 20 70 6f 69 6e 74 65 72 73 20 74  elete pointers t
27f60 6f 20 73 75 63 68 20 72 6f 75 74 69 6e 65 73 2e  o such routines.
27f70 20 20 53 65 65 0a 74 68 65 20 66 69 6c 65 20 67    See.the file g
27f80 65 6e 65 72 69 63 2f 74 63 6c 49 4f 55 74 69 6c  eneric/tclIOUtil
27f90 73 2e 63 20 66 6f 72 20 6d 6f 72 65 20 64 65 74  s.c for more det
27fa0 61 69 6c 73 2e 20 28 53 4b 53 29 0a 20 0a 37 2f  ails. (SKS). .7/
27fb0 31 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e  1/98 (enhancemen
27fc0 74 29 20 41 64 64 65 64 20 61 20 6e 65 77 20 69  t) Added a new i
27fd0 6e 74 65 72 6e 61 6c 20 43 20 76 61 72 69 61 62  nternal C variab
27fe0 6c 65 0a 74 63 6c 50 72 65 49 6e 69 74 53 63 72  le.tclPreInitScr
27ff0 69 70 74 2e 20 20 54 68 69 73 20 69 73 20 61 20  ipt.  This is a 
28000 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74 72  pointer to a str
28010 69 6e 67 20 74 68 61 74 20 6d 61 79 20 68 6f 6c  ing that may hol
28020 64 20 61 6e 0a 69 6e 69 74 69 61 6c 69 7a 61 74  d an.initializat
28030 69 6f 6e 20 73 63 72 69 70 74 3b 20 49 66 20 74  ion script; If t
28040 68 69 73 20 70 6f 69 6e 74 65 72 20 69 73 20 6e  his pointer is n
28050 6f 6e 2d 4e 55 4c 4c 20 69 74 20 69 73 20 65 76  on-NULL it is ev
28060 61 6c 75 61 74 65 64 20 69 6e 0a 54 63 6c 5f 49  aluated in.Tcl_I
28070 6e 69 74 28 29 20 70 72 69 6f 72 20 74 6f 20 74  nit() prior to t
28080 68 65 20 62 75 69 6c 74 2d 69 6e 20 69 6e 69 74  he built-in init
28090 69 61 6c 69 7a 61 74 69 6f 6e 20 73 63 72 69 70  ialization scrip
280a0 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65  t defined in the
280b0 0a 66 69 6c 65 20 67 65 6e 65 72 69 63 2f 74 63  .file generic/tc
280c0 6c 49 6e 69 74 53 63 72 69 70 74 2e 68 2e 20 20  lInitScript.h.  
280d0 28 53 4b 53 29 0a 0a 37 2f 36 2f 39 38 20 28 62  (SKS)..7/6/98 (b
280e0 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20  ug fix) Removed 
280f0 64 65 61 64 20 63 6f 64 65 20 69 6e 20 50 6c 61  dead code in Pla
28100 74 66 6f 72 6d 49 6e 69 74 45 78 69 74 48 61 6e  tformInitExitHan
28110 64 6c 65 72 20 73 6f 20 74 68 61 74 0a 74 68 65  dler so that.the
28120 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 76 61 6c   TCL_LIBRARY val
28130 75 65 20 63 61 6e 20 62 65 20 73 61 66 65 6c 79  ue can be safely
28140 20 70 61 74 63 68 65 64 20 69 6e 20 62 69 6e 61   patched in bina
28150 72 69 65 73 2e 20 28 42 57 29 0a 0a 37 2f 32 34  ries. (BW)..7/24
28160 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /98 (enhancement
28170 29 20 49 6e 63 6f 72 70 6f 72 61 74 65 64 20 61  ) Incorporated a
28180 20 6e 65 77 20 76 65 72 73 69 6f 6e 20 6f 66 20   new version of 
28190 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 74 68 61  auto_mkindex tha
281a0 74 0a 63 61 6e 20 73 75 70 70 6f 72 74 20 74 68  t.can support th
281b0 65 20 5b 69 6e 63 72 20 54 63 6c 5d 20 63 6c 61  e [incr Tcl] cla
281c0 73 73 20 73 74 72 75 63 74 75 72 65 73 2e 20 20  ss structures.  
281d0 54 68 69 73 20 76 65 72 73 69 6f 6e 20 77 69 6c  This version wil
281e0 6c 20 69 6e 64 65 78 0a 61 6c 6c 20 70 72 6f 63  l index.all proc
281f0 65 64 75 72 65 73 20 69 6e 20 61 20 73 6f 75 72  edures in a sour
28200 63 65 20 66 69 6c 65 2c 20 6e 6f 74 20 6a 75 73  ce file, not jus
28210 74 20 74 68 6f 73 65 20 77 68 65 72 65 20 22 70  t those where "p
28220 72 6f 63 22 20 73 74 61 72 74 73 0a 61 74 20 74  roc" starts.at t
28230 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20  he beginning of 
28240 74 68 65 20 6c 69 6e 65 2e 20 20 49 66 20 79 6f  the line.  If yo
28250 75 20 77 61 6e 74 20 74 68 65 20 6f 6c 64 20 62  u want the old b
28260 65 68 61 76 69 6f 72 2c 20 75 73 65 20 74 68 65  ehavior, use the
28270 0a 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 6f 6c  .auto_mkindex_ol
28280 64 20 70 72 6f 63 65 64 75 72 65 2e 20 28 4d 4d  d procedure. (MM
28290 29 0a 0a 37 2f 32 34 2f 39 38 20 28 66 65 61 74  )..7/24/98 (feat
282a0 75 72 65 20 63 68 61 6e 67 65 29 20 43 68 61 6e  ure change) Chan
282b0 67 65 64 20 74 68 65 20 57 69 6e 64 6f 77 73 20  ged the Windows 
282c0 72 65 67 69 73 74 72 79 20 6b 65 79 20 74 6f 20  registry key to 
282d0 62 65 0a 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  be.HKEY_LOCAL_MA
282e0 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 5c 53  CHINE\Software\S
282f0 63 72 69 70 74 69 63 73 5c 54 63 6c 5c 38 2e 30  criptics\Tcl\8.0
28300 2c 20 61 6e 64 20 74 6f 20 73 74 6f 72 65 20 74  , and to store t
28310 68 65 20 70 61 74 68 0a 69 6e 20 74 68 65 20 64  he path.in the d
28320 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 6e 73  efault value ins
28330 74 65 61 64 20 6f 66 20 22 52 6f 6f 74 22 2e 20  tead of "Root". 
28340 20 41 6c 73 6f 2c 20 74 68 69 73 20 6b 65 79 20   Also, this key 
28350 63 61 6e 20 62 65 0a 73 70 65 63 69 66 69 65 64  can be.specified
28360 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d 65   at compile time
28370 20 69 6e 20 63 61 73 65 20 54 63 6c 20 69 73 20   in case Tcl is 
28380 62 65 69 6e 67 20 75 73 65 64 20 69 6e 20 61 20  being used in a 
28390 64 69 66 66 65 72 65 6e 74 0a 63 6f 6e 74 65 78  different.contex
283a0 74 20 77 68 65 72 65 20 69 74 20 6e 65 65 64 73  t where it needs
283b0 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 6c 69   an alternate li
283c0 62 72 61 72 79 20 70 61 74 68 20 66 72 6f 6d 20  brary path from 
283d0 74 68 65 20 73 74 61 6e 64 61 72 64 20 54 63 6c  the standard Tcl
283e0 0a 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 20 28  .installation. (
283f0 53 53 29 0a 0a 37 2f 32 34 2f 39 38 20 28 66 65  SS)..7/24/98 (fe
28400 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43 68  ature change) Ch
28410 61 6e 67 65 64 20 74 68 65 20 73 65 61 72 63 68  anged the search
28420 20 6f 72 64 65 72 20 66 6f 72 20 69 6e 69 74 2e   order for init.
28430 74 63 6c 2e 20 20 54 68 65 0a 74 63 6c 5f 6c 69  tcl.  The.tcl_li
28440 62 72 61 72 79 20 76 61 72 69 61 62 6c 65 20 63  brary variable c
28450 61 6e 20 6e 6f 77 20 62 65 20 73 65 74 20 62 65  an now be set be
28460 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 54 63 6c  fore calling Tcl
28470 5f 49 6e 69 74 20 74 6f 20 61 76 6f 69 64 0a 64  _Init to avoid.d
28480 6f 69 6e 67 20 61 6e 79 20 73 65 61 72 63 68 65  oing any searche
28490 73 2e 20 20 49 66 20 69 74 20 69 73 6e 27 74 20  s.  If it isn't 
284a0 73 65 74 2c 20 74 68 65 6e 20 54 63 6c 20 63 68  set, then Tcl ch
284b0 65 63 6b 73 0a 65 6e 76 28 54 43 4c 5f 4c 49 42  ecks.env(TCL_LIB
284c0 52 41 52 59 29 2c 20 74 68 65 20 73 74 61 74 69  RARY), the stati
284d0 63 20 76 61 6c 75 65 20 73 65 74 20 61 74 20 63  c value set at c
284e0 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 20 61 6e 20  ompile time, an 
284f0 69 6e 73 74 61 6c 6c 0a 64 69 72 65 63 74 6f 72  install.director
28500 79 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68  y relative to th
28510 65 20 65 78 65 63 75 74 61 62 6c 65 2c 20 61 20  e executable, a 
28520 73 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72 79  source directory
28530 20 72 65 6c 61 74 69 76 65 20 74 6f 0a 74 68 65   relative to.the
28540 20 65 78 65 63 75 74 61 62 6c 65 2c 20 61 6e 64   executable, and
28550 20 61 20 74 63 6c 20 64 69 72 65 63 74 6f 72 79   a tcl directory
28560 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65   relative to the
28570 20 73 6f 75 72 63 65 20 68 65 69 72 61 72 63 68   source heirarch
28580 79 0a 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65  y.containing the
28590 20 65 78 65 63 75 74 61 62 6c 65 2e 20 20 53 65   executable.  Se
285a0 65 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 61 74  e the comment at
285b0 20 74 68 65 20 74 6f 70 20 6f 66 0a 67 65 6e 65   the top of.gene
285c0 72 69 63 2f 74 63 6c 49 6e 69 74 53 63 72 69 70  ric/tclInitScrip
285d0 74 2e 68 20 66 6f 72 20 6d 6f 72 65 20 64 65 74  t.h for more det
285e0 61 69 6c 73 2e 20 28 53 53 29 0a 0a 37 2f 32 37  ails. (SS)..7/27
285f0 2f 39 38 20 28 63 6f 6e 66 69 67 20 63 68 61 6e  /98 (config chan
28600 67 65 29 20 43 68 61 6e 67 65 64 20 74 68 65 20  ge) Changed the 
28610 75 73 65 20 6f 66 20 74 68 65 20 44 42 47 58 20  use of the DBGX 
28620 66 6c 61 67 20 69 6e 20 63 6f 6e 66 69 67 75 72  flag in configur
28630 65 2e 69 6e 0a 61 6e 64 20 74 68 65 20 6d 61 6b  e.in.and the mak
28640 65 66 69 6c 65 20 74 6f 20 62 65 20 54 43 4c 5f  efile to be TCL_
28650 44 42 47 58 2e 20 20 55 73 65 72 73 20 6f 66 20  DBGX.  Users of 
28660 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 6d 61 79  tclConfig.sh may
28670 20 6e 65 65 64 20 74 6f 20 70 61 73 73 0a 74 68   need to pass.th
28680 69 73 20 74 68 72 6f 75 67 68 20 74 68 65 69 72  is through their
28690 20 63 6f 6e 66 69 67 75 72 65 20 66 69 6c 65 73   configure files
286a0 20 77 69 74 68 20 41 43 5f 53 55 42 53 54 2e 20   with AC_SUBST. 
286b0 28 42 57 29 0a 0a 37 32 39 2f 39 38 20 28 62 75  (BW)..729/98 (bu
286c0 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 5b  g fix) Changed [
286d0 69 6e 66 6f 20 62 6f 64 79 5d 20 74 6f 20 72 65  info body] to re
286e0 74 75 72 6e 20 61 20 63 6f 70 79 20 6f 66 20 74  turn a copy of t
286f0 68 65 20 62 6f 64 79 20 6f 66 20 61 0a 63 6f 6d  he body of a.com
28700 70 69 6c 65 64 20 70 72 6f 63 65 64 75 72 65 20  piled procedure 
28710 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 62  instead of the b
28720 6f 64 79 20 69 74 73 65 6c 66 2c 20 74 6f 20 61  ody itself, to a
28730 76 6f 69 64 20 69 6e 76 61 6c 69 64 61 74 69 6f  void invalidatio
28740 6e 0a 6f 66 20 74 68 65 20 69 6e 74 65 72 6e 61  n.of the interna
28750 6c 20 72 65 70 20 61 6e 64 20 6c 6f 73 73 20 6f  l rep and loss o
28760 66 20 74 68 65 20 62 79 74 65 2d 63 6f 64 65 73  f the byte-codes
28770 2e 20 28 45 4d 53 29 0a 0a 38 2f 35 2f 39 38 20  . (EMS)..8/5/98 
28780 28 62 75 67 20 66 69 78 29 20 54 68 65 20 70 6c  (bug fix) The pl
28790 61 74 66 6f 72 6d 20 69 6e 69 74 20 63 6f 64 65  atform init code
287a0 20 63 6f 75 6c 64 20 77 61 6c 6b 20 6f 66 66 20   could walk off 
287b0 74 68 65 20 65 6e 64 20 6f 66 20 61 0a 62 75 66  the end of a.buf
287c0 66 65 72 20 77 68 65 6e 20 72 65 61 64 69 6e 67  fer when reading
287d0 20 74 68 65 20 50 6b 67 50 61 74 68 20 72 65 67   the PkgPath reg
287e0 69 73 74 72 79 20 76 61 6c 75 65 20 6f 6e 20 57  istry value on W
287f0 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a 38 2f  indows. (SS)..8/
28800 35 2f 39 38 20 28 57 69 6e 64 6f 77 73 20 6d 61  5/98 (Windows ma
28810 6b 65 66 69 6c 65 20 63 68 61 6e 67 65 29 20 49  kefile change) I
28820 6e 74 72 6f 64 75 63 65 64 20 61 20 73 65 74 20  ntroduced a set 
28830 6f 66 20 6d 61 63 72 6f 73 20 74 6f 20 64 65 61  of macros to dea
28840 6c 20 77 69 74 68 0a 65 78 70 6f 72 74 69 6e 67  l with.exporting
28850 20 73 79 6d 62 6f 6c 73 20 77 68 65 6e 20 63 6f   symbols when co
28860 6d 70 69 6c 69 6e 67 20 44 4c 4c 53 20 6f 6e 20  mpiling DLLS on 
28870 57 69 6e 64 6f 77 73 2e 20 53 65 65 20 77 69 6e  Windows. See win
28880 2f 52 45 41 44 4d 45 20 66 6f 72 0a 64 65 74 61  /README for.deta
28890 69 6c 73 2e 20 28 45 4d 53 29 0a 0a 38 2f 35 2f  ils. (EMS)..8/5/
288a0 39 38 20 28 61 64 64 65 6e 64 75 6d 29 20 41 64  98 (addendum) Ad
288b0 64 65 64 20 61 20 73 65 63 6f 6e 64 20 57 69 6e  ded a second Win
288c0 64 6f 77 73 20 72 65 67 69 73 74 72 79 20 6b 65  dows registry ke
288d0 79 20 75 6e 64 65 72 0a 48 4b 45 59 5f 4c 4f 43  y under.HKEY_LOC
288e0 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77  AL_MACHINE\Softw
288f0 61 72 65 5c 53 63 72 69 70 74 69 63 73 5c 54 63  are\Scriptics\Tc
28900 6c 5c 38 2e 30 2c 20 6e 61 6d 65 64 20 22 70 6b  l\8.0, named "pk
28910 67 50 61 74 68 22 2e 0a 54 68 69 73 20 69 73 20  gPath"..This is 
28920 61 20 6d 75 6c 74 69 2d 73 74 72 69 6e 67 20 76  a multi-string v
28930 61 6c 75 65 20 75 73 65 64 20 74 6f 20 69 6e 69  alue used to ini
28940 74 69 61 6c 69 7a 65 20 74 68 65 20 74 63 6c 5f  tialize the tcl_
28950 70 6b 67 50 61 74 68 0a 76 61 72 69 61 62 6c 65  pkgPath.variable
28960 2e 20 54 68 69 73 20 69 73 20 72 65 71 75 69 72  . This is requir
28970 65 64 20 69 66 20 65 78 74 65 6e 73 69 6f 6e 20  ed if extension 
28980 44 4c 4c 73 20 61 72 65 20 69 6e 20 61 72 63 68  DLLs are in arch
28990 69 74 65 63 74 75 72 65 20 73 70 65 63 69 66 69  itecture specifi
289a0 63 0a 73 75 62 64 69 72 65 63 74 6f 72 69 65 73  c.subdirectories
289b0 2e 20 28 53 53 29 0a 0a 38 2f 36 2f 39 38 20 28  . (SS)..8/6/98 (
289c0 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
289d0 65 64 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72 61  ed tcl_findLibra
289e0 72 79 20 74 6f 20 69 6e 69 74 2e 74 63 6c 20 66  ry to init.tcl f
289f0 6f 72 20 75 73 65 20 62 79 0a 65 78 74 65 6e 73  or use by.extens
28a00 69 6f 6e 73 2c 20 69 6e 63 6c 75 64 69 6e 67 20  ions, including 
28a10 54 6b 2e 20 20 54 68 69 73 20 73 65 61 72 63 68  Tk.  This search
28a20 65 73 20 69 6e 20 61 20 63 61 6e 6f 6e 69 63 61  es in a canonica
28a30 6c 20 77 61 79 20 66 6f 72 0a 61 6e 20 65 78 74  l way for.an ext
28a40 65 6e 73 69 6f 6e 73 20 6c 69 62 72 61 72 79 20  ensions library 
28a50 64 69 72 65 63 74 6f 72 79 20 61 6e 64 20 69 6e  directory and in
28a60 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 6c  itialization fil
28a70 65 2e 20 28 42 57 29 0a 0a 38 2f 31 30 2f 39 38  e. (BW)..8/10/98
28a80 20 28 62 75 67 20 66 69 78 29 20 49 6d 70 6f 72   (bug fix) Impor
28a90 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 75 73 65  ted commands use
28aa0 64 20 74 6f 20 67 65 74 20 6c 6f 73 74 20 69 66  d to get lost if
28ab0 20 74 68 65 20 74 61 72 67 65 74 0a 6f 66 20 74   the target.of t
28ac0 68 65 20 69 6d 70 6f 72 74 20 77 61 73 20 72 65  he import was re
28ad0 64 65 66 69 6e 65 64 2e 20 20 54 63 6c 5f 43 72  defined.  Tcl_Cr
28ae0 65 61 74 65 43 6f 6d 6d 61 6e 64 20 61 6e 64 20  eateCommand and 
28af0 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a 43 6f 6d  Tcl_CreateObjCom
28b00 6d 61 6e 64 0a 77 65 72 65 20 75 70 64 61 74 65  mand.were update
28b10 64 20 74 6f 20 72 65 73 74 6f 72 65 20 69 6d 70  d to restore imp
28b20 6f 72 74 20 6c 69 6e 6b 73 2e 20 28 4e 6f 74 65  ort links. (Note
28b30 20 74 68 61 74 20 69 66 20 79 6f 75 20 72 65 6e   that if you ren
28b40 61 6d 65 20 61 20 63 6f 6d 6d 61 6e 64 2c 0a 74  ame a command,.t
28b50 68 65 20 69 6d 70 6f 72 74 20 6c 69 6e 6b 73 20  he import links 
28b60 6d 6f 76 65 20 74 6f 20 74 68 65 20 6e 65 77 20  move to the new 
28b70 6e 61 6d 65 2c 20 61 6e 64 20 69 66 20 79 6f 75  name, and if you
28b80 20 64 65 6c 65 74 65 20 61 20 63 6f 6d 6d 61 6e   delete a comman
28b90 64 20 74 68 65 6e 0a 74 68 65 20 69 6d 70 6f 72  d then.the impor
28ba0 74 20 6c 69 6e 6b 73 20 67 65 74 20 6c 6f 73 74  t links get lost
28bb0 2e 20 54 68 65 73 65 20 73 65 6d 61 6e 74 69 63  . These semantic
28bc0 73 20 68 61 76 65 20 6e 6f 74 20 63 68 61 6e 67  s have not chang
28bd0 65 64 2e 29 20 28 4d 43 29 0a 0a 2d 2d 2d 2d 2d  ed.) (MC)..-----
28be0 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 30  --- Released 8.0
28bf0 2e 33 20 74 6f 20 74 68 65 20 54 63 6c 20 43 6f  .3 to the Tcl Co
28c00 6e 73 6f 72 74 69 75 6d 20 43 44 2d 52 4f 4d 20  nsortium CD-ROM 
28c10 70 72 6f 6a 65 63 74 2c 20 38 2f 31 30 2f 39 38  project, 8/10/98
28c20 20 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 33 2f 39 38 20   ------..9/3/98 
28c30 28 62 75 67 20 66 69 78 29 20 54 63 6c 5f 52 65  (bug fix) Tcl_Re
28c40 61 6c 6c 6f 63 20 77 61 73 20 66 61 69 6c 69 6e  alloc was failin
28c50 67 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20  g under Windows 
28c60 62 65 63 61 75 73 65 20 74 68 65 0a 47 6c 6f 62  because the.Glob
28c70 61 6c 52 65 41 6c 6c 6f 63 20 41 50 49 20 77 61  alReAlloc API wa
28c80 73 20 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20  s not correctly 
28c90 72 65 2d 61 6c 6c 6f 63 61 74 69 6e 67 20 62 6c  re-allocating bl
28ca0 6f 63 6b 73 20 74 68 61 74 20 77 65 72 65 0a 33  ocks that were.3
28cb0 32 6b 2b 2e 20 20 54 68 65 20 66 69 78 20 77 61  2k+.  The fix wa
28cc0 73 20 74 6f 20 75 73 65 20 6e 65 77 65 72 20 57  s to use newer W
28cd0 69 6e 33 32 20 41 50 49 73 20 28 48 65 61 70 41  in32 APIs (HeapA
28ce0 6c 6c 6f 63 2c 20 48 65 61 70 46 72 65 65 2c 20  lloc, HeapFree, 
28cf0 61 6e 64 0a 48 65 61 70 52 65 41 6c 6c 6f 63 2e  and.HeapReAlloc.
28d00 29 20 28 42 53 29 0a 0a 31 30 2f 35 2f 39 38 20  ) (BS)..10/5/98 
28d10 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
28d20 62 75 67 20 69 6e 20 70 6b 67 5f 6d 6b 49 6e 64  bug in pkg_mkInd
28d30 65 78 20 74 68 61 74 20 63 61 75 73 65 64 20 73  ex that caused s
28d40 6f 6d 65 20 66 69 6c 65 73 20 74 68 61 74 20 64  ome files that d
28d50 6f 0a 61 20 22 70 61 63 6b 61 67 65 20 72 65 71  o.a "package req
28d60 75 69 72 65 22 20 6f 66 20 70 61 63 6b 61 67 65  uire" of package
28d70 73 20 69 6e 20 74 68 65 20 54 63 6c 20 6c 69 62  s in the Tcl lib
28d80 72 61 72 69 65 73 20 74 6f 20 67 69 76 65 20 61  raries to give a
28d90 20 77 61 72 6e 69 6e 67 20 6c 69 6b 65 0a 09 77   warning like..w
28da0 61 72 6e 69 6e 67 3a 20 22 78 78 2e 74 63 6c 22  arning: "xx.tcl"
28db0 20 70 72 6f 76 69 64 65 73 20 6d 6f 72 65 20 74   provides more t
28dc0 68 61 6e 20 6f 6e 65 20 70 61 63 6b 61 67 65 20  han one package 
28dd0 28 7b 78 78 20 32 2e 30 7d 20 7b 79 79 20 30 2e  ({xx 2.0} {yy 0.
28de0 33 7d 29 0a 61 6e 64 20 67 65 6e 65 72 61 74 65  3}).and generate
28df0 20 61 20 62 72 6f 6b 65 6e 20 70 6b 67 49 6e 64   a broken pkgInd
28e00 65 78 2e 74 63 6c 20 66 69 6c 65 2e 20 28 45 4d  ex.tcl file. (EM
28e10 53 29 0a 0a 31 30 2f 35 2f 39 38 20 28 62 75 67  S)..10/5/98 (bug
28e20 20 66 69 78 29 20 50 6b 67 5f 6d 6b 49 6e 64 65   fix) Pkg_mkInde
28e30 78 20 77 61 73 20 6e 6f 74 20 64 6f 69 6e 67 20  x was not doing 
28e40 61 20 63 61 73 65 2d 69 6e 73 65 6e 73 69 74 69  a case-insensiti
28e50 76 65 20 63 6f 6d 70 61 72 69 73 6f 6e 0a 6f 66  ve comparison.of
28e60 20 65 78 74 65 6e 73 69 6f 6e 73 20 74 6f 20 64   extensions to d
28e70 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 65 72  etermine whether
28e80 20 74 6f 20 6c 6f 61 64 20 6f 72 20 73 6f 75 72   to load or sour
28e90 63 65 20 61 20 66 69 6c 65 2e 20 54 68 75 73 2c  ce a file. Thus,
28ea0 20 75 6e 64 65 72 0a 57 69 6e 64 6f 77 73 2c 20   under.Windows, 
28eb0 4d 59 44 4c 4c 4e 41 4d 45 2e 44 4c 4c 20 77 61  MYDLLNAME.DLL wa
28ec0 73 20 73 6f 75 72 63 65 64 2c 20 61 6e 64 20 6d  s sourced, and m
28ed0 79 64 6c 6c 6e 61 6d 65 2e 64 6c 6c 20 6c 6f 61  ydllname.dll loa
28ee0 64 65 64 2e 20 28 45 4d 53 29 0a 0a 31 30 2f 35  ded. (EMS)..10/5
28ef0 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75 72 65  /98 (new feature
28f00 29 20 43 72 65 61 74 65 64 20 61 20 6e 65 77 20  ) Created a new 
28f10 54 63 6c 5f 4f 62 6a 20 74 79 70 65 2c 20 22 70  Tcl_Obj type, "p
28f20 72 6f 63 62 6f 64 79 22 2e 20 54 68 69 73 20 6f  rocbody". This o
28f30 62 6a 65 63 74 27 73 0a 69 6e 74 65 72 6e 61 6c  bject's.internal
28f40 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20   representation 
28f50 68 6f 6c 64 73 20 61 20 70 6f 69 6e 74 65 72 20  holds a pointer 
28f60 74 6f 20 61 20 50 72 6f 63 20 73 74 72 75 63 74  to a Proc struct
28f70 75 72 65 2e 20 45 78 74 65 6e 64 65 64 0a 54 63  ure. Extended.Tc
28f80 6c 43 72 65 61 74 65 50 72 6f 63 20 74 6f 20 74  lCreateProc to t
28f90 61 6b 65 20 62 6f 74 68 20 73 74 72 69 6e 67 73  ake both strings
28fa0 20 61 6e 64 20 22 70 72 6f 63 62 6f 64 79 22 2e   and "procbody".
28fb0 20 28 45 4d 53 29 0a 0a 31 30 2f 31 33 2f 39 38   (EMS)..10/13/98
28fc0 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 22   (bug fix) The "
28fd0 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 22 20 63  info complete" c
28fe0 6f 6d 6d 61 6e 64 20 63 61 6e 20 6e 6f 77 20 68  ommand can now h
28ff0 61 6e 64 6c 65 20 73 74 72 69 6e 67 73 0a 77 69  andle strings.wi
29000 74 68 20 4e 55 4c 4c 73 20 65 6d 62 65 64 64 65  th NULLs embedde
29010 64 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 63 6f  d.  Thanks to co
29020 6c 69 6e 40 66 69 65 6c 64 2e 6d 65 64 69 63 69  [email protected]
29030 6e 65 2e 61 64 65 6c 61 69 64 65 2e 65 64 75 2e  ne.adelaide.edu.
29040 61 75 20 0a 66 6f 72 20 70 72 6f 76 69 64 69 6e  au .for providin
29050 67 20 74 68 69 73 20 66 69 78 2e 20 28 52 4a 29  g this fix. (RJ)
29060 0a 0a 31 30 2f 31 33 2f 39 38 20 28 62 75 67 20  ..10/13/98 (bug 
29070 66 69 78 29 20 54 68 65 20 22 6c 73 6f 72 74 20  fix) The "lsort 
29080 2d 64 69 63 74 69 6f 6e 61 72 79 22 20 63 6f 6d  -dictionary" com
29090 6d 61 6e 64 20 64 69 64 20 6e 6f 74 20 70 72 6f  mand did not pro
290a0 70 65 72 6c 79 0a 68 61 6e 64 6c 65 20 73 6f 6d  perly.handle som
290b0 65 20 6e 75 6d 62 65 72 73 20 73 74 61 72 74 69  e numbers starti
290c0 6e 67 20 77 69 74 68 20 30 2e 20 20 54 68 61 6e  ng with 0.  Than
290d0 6b 73 20 74 6f 20 52 69 63 68 61 72 64 20 48 69  ks to Richard Hi
290e0 70 70 0a 3c 64 72 68 40 61 63 6d 2e 6f 72 67 3e  pp.<[email protected]>
290f0 20 66 6f 72 20 73 75 62 6d 69 74 74 69 6e 67 20   for submitting 
29100 74 68 65 20 66 69 78 20 74 6f 20 53 63 72 69 70  the fix to Scrip
29110 74 69 63 73 2e 20 28 52 4a 29 0a 0a 31 30 2f 31  tics. (RJ)..10/1
29120 33 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54  3/98 (bug fix) T
29130 68 65 20 66 75 6e 63 74 69 6f 6e 20 54 63 6c 5f  he function Tcl_
29140 53 65 74 4c 69 73 74 4f 62 6a 20 77 61 73 20 63  SetListObj was c
29150 72 65 61 74 69 6e 67 20 61 6e 20 69 6e 76 61 6c  reating an inval
29160 69 64 0a 54 63 6c 5f 4f 62 6a 20 69 66 20 74 68  id.Tcl_Obj if th
29170 65 20 6c 69 73 74 20 68 61 64 20 7a 65 72 6f 20  e list had zero 
29180 65 6c 65 6d 65 6e 74 73 20 28 64 65 73 70 69 74  elements (despit
29190 65 20 77 68 61 74 20 74 68 65 20 63 6f 6d 6d 65  e what the comme
291a0 6e 74 73 20 73 61 69 64 0a 69 74 20 77 6f 75 6c  nts said.it woul
291b0 64 20 64 6f 29 2e 20 20 54 68 61 6e 6b 73 20 74  d do).  Thanks t
291c0 6f 20 53 65 62 61 73 74 69 61 6e 20 57 61 6e 67  o Sebastian Wang
291d0 6e 69 63 6b 20 66 6f 72 20 72 65 70 6f 72 74 69  nick for reporti
291e0 6e 67 20 74 68 65 0a 70 72 6f 62 6c 65 6d 2e 20  ng the.problem. 
291f0 28 52 4a 29 0a 0a 31 30 2f 32 30 2f 39 38 20 28  (RJ)..10/20/98 (
29200 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
29210 65 64 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28  ed tcl_platform(
29220 64 65 62 75 67 29 20 65 6c 65 6d 65 6e 74 20 74  debug) element t
29230 6f 20 74 68 65 0a 74 63 6c 5f 70 6c 61 74 66 6f  o the.tcl_platfo
29240 72 6d 20 61 72 72 61 79 20 6f 6e 20 57 69 6e 64  rm array on Wind
29250 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 20 20 54  ows platform.  T
29260 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66 20  he existence of 
29270 74 68 65 20 64 65 62 75 67 0a 65 6c 65 6d 65 6e  the debug.elemen
29280 74 20 6f 66 20 74 68 65 20 74 63 6c 5f 70 6c 61  t of the tcl_pla
29290 74 66 6f 72 6d 20 61 72 72 61 79 20 69 6e 64 69  tform array indi
292a0 63 61 74 65 73 20 74 68 61 74 20 74 68 65 20 70  cates that the p
292b0 61 72 74 69 63 75 6c 61 72 20 54 63 6c 0a 73 68  articular Tcl.sh
292c0 65 6c 6c 20 68 61 73 20 62 65 65 6e 20 63 6f 6d  ell has been com
292d0 70 69 6c 65 64 20 77 69 74 68 20 64 65 62 75 67  piled with debug
292e0 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 20 55   information.  U
292f0 73 69 6e 67 0a 22 69 6e 66 6f 20 65 78 69 73 74  sing."info exist
29300 73 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 64  s tcl_platform(d
29310 65 62 75 67 29 22 20 61 20 54 63 6c 20 73 63 72  ebug)" a Tcl scr
29320 69 70 74 20 63 61 6e 20 64 69 72 65 63 74 20 74  ipt can direct t
29330 68 65 0a 69 6e 74 65 72 70 72 65 74 65 72 20 74  he.interpreter t
29340 6f 20 6c 6f 61 64 20 64 65 62 75 67 20 76 65 72  o load debug ver
29350 73 69 6f 6e 73 20 6f 66 20 44 4c 4c 73 20 77 69  sions of DLLs wi
29360 74 68 20 74 68 65 20 6c 6f 61 64 0a 63 6f 6d 6d  th the load.comm
29370 61 6e 64 2e 20 28 53 4b 53 29 0a 0a 31 30 2f 32  and. (SKS)..10/2
29380 30 2f 39 38 20 28 66 65 61 74 75 72 65 20 63 68  0/98 (feature ch
29390 61 6e 67 65 29 20 54 68 65 20 4d 61 6b 65 66 69  ange) The Makefi
293a0 6c 65 20 61 6e 64 20 63 6f 6e 66 69 67 75 72 65  le and configure
293b0 20 73 63 72 69 70 74 73 20 68 61 76 65 20 62 65   scripts have be
293c0 65 6e 0a 63 68 61 6e 67 65 64 20 66 6f 72 20 49  en.changed for I
293d0 52 49 58 20 74 6f 20 62 75 69 6c 64 20 6e 33 32  RIX to build n32
293e0 20 62 69 6e 61 72 69 65 73 20 69 6e 73 74 65 61   binaries instea
293f0 64 20 6f 66 20 74 68 65 20 6f 6c 64 20 33 32 20  d of the old 32 
29400 61 62 69 0a 66 6f 72 6d 61 74 2e 20 20 49 66 20  abi.format.  If 
29410 79 6f 75 20 68 61 76 65 20 65 78 74 65 6e 73 69  you have extensi
29420 6f 6e 73 20 62 75 69 6c 74 20 77 69 74 68 20 74  ons built with t
29430 68 65 20 6f 33 32 20 61 62 69 27 73 20 79 6f 75  he o32 abi's you
29440 20 77 69 6c 6c 20 6e 65 65 64 0a 74 6f 20 75 70   will need.to up
29450 64 61 74 65 20 74 68 65 6d 20 74 6f 20 6e 33 32  date them to n32
29460 20 66 6f 72 20 74 68 65 6d 20 74 6f 20 77 6f 72   for them to wor
29470 6b 20 77 69 74 68 20 54 63 6c 2e 20 20 28 52 4a  k with Tcl.  (RJ
29480 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
29490 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
294a0 2a 2a 2a 0a 0a 31 30 2f 32 33 2f 39 38 20 28 62  ***..10/23/98 (b
294b0 75 67 20 66 69 78 29 20 74 63 6c 5f 66 69 6e 64  ug fix) tcl_find
294c0 4c 69 62 72 61 72 79 20 68 61 64 20 61 20 73 74  Library had a st
294d0 72 61 79 20 5d 20 69 6e 20 6f 6e 65 20 6f 66 20  ray ] in one of 
294e0 74 68 65 0a 70 61 74 68 6e 61 6d 65 73 20 69 74  the.pathnames it
294f0 20 73 65 61 72 63 68 65 64 20 66 6f 72 20 74 68   searched for th
29500 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  e initialization
29510 20 73 63 72 69 70 74 2e 20 20 74 63 6c 49 6e 69   script.  tclIni
29520 74 53 63 72 69 70 74 2e 68 0a 77 61 73 20 69 6e  tScript.h.was in
29530 63 6f 72 72 65 63 74 6c 79 20 61 64 64 69 6e 67  correctly adding
29540 20 74 68 65 20 70 61 72 65 6e 74 20 6f 66 20 74   the parent of t
29550 63 6c 5f 6c 69 62 72 61 72 79 20 74 6f 20 74 63  cl_library to tc
29560 6c 5f 70 6b 67 50 61 74 68 2e 20 20 54 68 69 73  l_pkgPath.  This
29570 0a 6c 6f 67 69 63 20 77 61 73 20 6d 6f 76 65 64  .logic was moved
29580 20 69 6e 74 6f 20 69 6e 69 74 2e 74 63 6c 2c 20   into init.tcl, 
29590 61 6e 64 20 74 68 65 20 69 6e 69 74 69 61 6c 69  and the initiali
295a0 7a 61 74 69 6f 6e 20 6f 66 20 61 75 74 6f 5f 70  zation of auto_p
295b0 61 74 68 20 77 61 73 0a 64 6f 63 75 6d 65 6e 74  ath was.document
295c0 65 64 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 44  ed.  Thanks to D
295d0 6f 6e 61 6c 64 20 50 6f 72 74 65 72 20 61 6e 64  onald Porter and
295e0 20 54 6f 6d 20 53 69 6c 76 61 20 66 6f 72 20 72   Tom Silva for r
295f0 65 6c 61 74 65 64 0a 70 61 74 63 68 65 73 2e 20  elated.patches. 
29600 28 42 57 29 0a 0a 31 30 2f 32 39 2f 39 38 20 28  (BW)..10/29/98 (
29610 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 54  bug fix) Fixed T
29620 63 6c 5f 4e 6f 74 69 66 79 43 68 61 6e 6e 65 6c  cl_NotifyChannel
29630 20 74 6f 20 75 73 65 20 54 63 6c 5f 50 72 65 73   to use Tcl_Pres
29640 65 72 76 65 20 69 6e 73 74 65 61 64 0a 6f 66 20  erve instead.of 
29650 54 63 6c 5f 52 65 67 69 73 74 65 72 43 68 61 6e  Tcl_RegisterChan
29660 6e 65 6c 20 73 6f 20 74 68 61 74 20 31 29 20 75  nel so that 1) u
29670 6e 72 65 67 69 73 74 65 72 65 64 20 63 68 61 6e  nregistered chan
29680 6e 65 6c 73 20 64 6f 20 6e 6f 74 20 67 65 74 0a  nels do not get.
29690 63 6c 6f 73 65 64 20 61 66 74 65 72 20 74 68 65  closed after the
296a0 69 72 20 66 69 72 73 74 20 66 69 6c 65 65 76 65  ir first fileeve
296b0 6e 74 2c 20 61 6e 64 20 32 29 20 65 72 72 6f 72  nt, and 2) error
296c0 73 20 74 68 61 74 20 6f 63 63 75 72 20 64 75 72  s that occur dur
296d0 69 6e 67 0a 63 6c 6f 73 65 20 69 6e 20 61 20 66  ing.close in a f
296e0 69 6c 65 65 76 65 6e 74 20 73 63 72 69 70 74 20  ileevent script 
296f0 61 72 65 20 61 63 74 75 61 6c 6c 79 20 72 65 66  are actually ref
29700 6c 65 63 74 65 64 20 62 79 20 74 68 65 20 63 6c  lected by the cl
29710 6f 73 65 0a 63 6f 6d 6d 61 6e 64 2e 20 28 42 57  ose.command. (BW
29720 29 0a 0a 31 30 2f 33 30 2f 39 38 20 28 62 75 67  )..10/30/98 (bug
29730 20 66 69 78 29 20 4f 76 65 72 68 61 75 6c 20 6f   fix) Overhaul o
29740 66 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f  f pkg_mkIndex to
29750 20 64 65 61 6c 20 77 69 74 68 20 74 72 61 6e 73   deal with trans
29760 69 74 69 76 65 0a 70 61 63 6b 61 67 65 20 72 65  itive.package re
29770 71 75 69 72 65 73 20 61 6e 64 20 70 61 63 6b 61  quires and packa
29780 67 65 73 20 73 70 6c 69 74 20 61 6d 6f 6e 67 20  ges split among 
29790 73 63 72 69 70 74 73 20 61 6e 64 20 62 69 6e 61  scripts and bina
297a0 72 79 20 66 69 6c 65 73 2e 0a 41 6c 73 6f 20 66  ry files..Also f
297b0 69 78 65 64 20 6f 6d 6d 69 73 69 6f 6e 20 6f 66  ixed ommision of
297c0 20 67 6c 6f 62 61 6c 20 66 6f 72 20 65 72 72 6f   global for erro
297d0 72 49 6e 66 6f 20 69 6e 20 74 63 6c 5f 66 69 6e  rInfo in tcl_fin
297e0 64 4c 69 62 72 61 72 79 2e 20 28 42 57 29 0a 0a  dLibrary. (BW)..
297f0 31 31 2f 30 38 2f 39 38 20 28 62 75 67 20 66 69  11/08/98 (bug fi
29800 78 29 20 46 69 78 65 64 20 74 68 65 20 72 65 73  x) Fixed the res
29810 6f 75 72 63 65 20 63 6f 6d 6d 61 6e 64 20 74 6f  ource command to
29820 20 61 6c 77 61 79 73 20 64 65 74 65 63 74 0a 74   always detect.t
29830 68 65 20 63 61 73 65 20 77 68 65 72 65 20 61 20  he case where a 
29840 66 69 6c 65 20 69 73 20 6f 70 65 6e 65 64 20 61  file is opened a
29850 20 73 65 63 6f 6e 64 20 74 69 6d 65 20 77 69 74   second time wit
29860 68 20 74 68 65 20 73 61 6d 65 0a 70 65 72 6d 69  h the same.permi
29870 73 73 69 6f 6e 73 2e 20 20 49 4d 20 63 6c 61 69  ssions.  IM clai
29880 6d 73 20 74 68 61 74 20 74 68 69 73 20 77 69 6c  ms that this wil
29890 6c 20 61 6c 77 61 79 73 20 63 61 75 73 65 20 74  l always cause t
298a0 68 65 20 73 61 6d 65 0a 46 69 6c 65 52 65 66 20  he same.FileRef 
298b0 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64 2c 20  to be returned, 
298c0 62 75 74 20 69 6e 20 4d 61 63 4f 53 20 38 2e 31  but in MacOS 8.1
298d0 2b 2c 20 74 68 69 73 20 69 73 20 6e 6f 20 6c 6f  +, this is no lo
298e0 6e 67 65 72 20 74 68 65 20 63 61 73 65 2c 0a 73  nger the case,.s
298f0 6f 20 77 65 20 68 61 76 65 20 74 6f 20 74 65 73  o we have to tes
29900 74 20 66 6f 72 20 74 68 69 73 20 65 78 70 6c 69  t for this expli
29910 63 69 74 6c 79 2e 20 28 4a 49 29 0a 0a 31 31 2f  citly. (JI)..11/
29920 31 30 2f 39 38 20 28 66 65 61 74 75 72 65 20 63  10/98 (feature c
29930 68 61 6e 67 65 29 20 57 68 65 6e 20 63 6f 6d 70  hange) When comp
29940 69 6c 69 6e 67 20 77 69 74 68 20 4d 65 74 72 6f  iling with Metro
29950 77 65 72 6b 27 73 20 4d 53 4c 2c 20 75 73 65 20  werk's MSL, use 
29960 74 68 65 0a 65 78 69 74 20 66 75 6e 63 74 69 6f  the.exit functio
29970 6e 20 66 72 6f 6d 20 4d 53 4c 20 72 61 74 68 65  n from MSL rathe
29980 72 20 74 68 61 6e 20 45 78 69 74 54 6f 53 68 65  r than ExitToShe
29990 6c 6c 2e 20 20 54 68 69 73 20 61 6c 6c 6f 77 73  ll.  This allows
299a0 20 4d 53 4c 20 74 6f 0a 63 6c 65 61 6e 20 75 70   MSL to.clean up
299b0 20 69 74 73 20 74 65 6d 70 6f 72 61 72 79 20 66   its temporary f
299c0 69 6c 65 73 2e 20 54 68 61 6e 6b 73 20 74 6f 20  iles. Thanks to 
299d0 56 69 6e 63 65 20 44 61 72 6c 65 79 20 66 6f 72  Vince Darley for
299e0 20 74 68 69 73 0a 69 6d 70 72 6f 76 65 6d 65 6e   this.improvemen
299f0 74 2e 20 28 4a 49 29 0a 0a 2d 2d 2d 2d 2d 2d 2d  t. (JI)..-------
29a00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
29a10 73 65 64 20 38 2e 30 2e 34 2c 20 31 31 2f 31 39  sed 8.0.4, 11/19
29a20 2f 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /98 ------------
29a30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31  -------------..1
29a40 31 2f 32 30 2f 39 38 20 28 62 75 67 20 66 69 78  1/20/98 (bug fix
29a50 29 20 48 61 6e 64 6c 65 20 70 6f 73 73 69 62 6c  ) Handle possibl
29a60 65 20 4e 55 4c 4c 20 72 65 74 75 72 6e 20 69 6e  e NULL return in
29a70 20 54 63 6c 47 65 74 53 74 64 46 69 6c 65 73 2e   TclGetStdFiles.
29a80 20 28 52 4a 29 0a 0a 31 31 2f 32 30 2f 39 38 20   (RJ)..11/20/98 
29a90 28 62 75 67 20 66 69 78 29 20 54 68 65 20 64 6c  (bug fix) The dl
29aa0 74 65 73 74 73 20 77 6f 75 6c 64 20 6e 6f 74 20  tests would not 
29ab0 62 75 69 6c 64 20 6f 6e 20 53 47 49 2e 20 20 54  build on SGI.  T
29ac0 68 65 79 20 72 65 70 6f 72 74 65 64 0a 74 68 61  hey reported.tha
29ad0 74 20 79 6f 75 20 63 6f 75 6c 64 20 6e 6f 74 20  t you could not 
29ae0 6d 69 78 20 6e 33 32 20 77 69 74 68 20 30 33 32  mix n32 with 032
29af0 20 62 69 6e 61 72 69 65 73 2e 20 20 54 68 65 20   binaries.  The 
29b00 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74  configure script
29b10 0a 68 61 73 20 62 65 65 6e 20 6d 6f 64 69 66 69  .has been modifi
29b20 65 64 20 74 6f 20 67 65 74 20 74 68 65 20 45 58  ed to get the EX
29b30 54 52 41 5f 43 46 4c 41 47 53 20 66 72 6f 6d 20  TRA_CFLAGS from 
29b40 74 68 65 20 74 63 6c 20 63 6f 6e 66 69 67 75 72  the tcl configur
29b50 65 0a 73 63 72 69 70 74 2e 20 20 5b 42 75 67 20  e.script.  [Bug 
29b60 69 64 3a 20 38 34 30 5d 20 28 52 4a 29 0a 0a 31  id: 840] (RJ)..1
29b70 32 2f 33 2f 39 38 20 28 62 75 67 20 66 69 78 29  2/3/98 (bug fix)
29b80 20 57 69 6e 64 6f 77 73 20 4e 54 20 63 72 65 61   Windows NT crea
29b90 74 65 73 20 73 6f 63 6b 65 74 73 20 73 6f 20 74  tes sockets so t
29ba0 68 65 79 20 61 72 65 20 69 6e 68 65 72 69 74 61  hey are inherita
29bb0 62 6c 65 0a 62 79 20 64 65 66 61 75 6c 74 2e 20  ble.by default. 
29bc0 20 46 69 78 65 64 20 73 6f 63 6b 65 74 20 63 6f   Fixed socket co
29bd0 64 65 20 73 6f 20 69 74 20 74 75 72 6e 73 20 6f  de so it turns o
29be0 66 66 20 74 68 69 73 20 62 69 74 20 72 69 67 68  ff this bit righ
29bf0 74 20 61 66 74 65 72 0a 63 72 65 61 74 69 6f 6e  t after.creation
29c00 20 73 6f 20 73 6f 63 6b 65 74 73 20 61 72 65 6e   so sockets aren
29c10 27 74 20 6b 65 70 74 20 6f 70 65 6e 20 62 79 20  't kept open by 
29c20 65 78 65 63 27 65 64 20 70 72 6f 63 65 73 73 65  exec'ed processe
29c30 73 2e 20 5b 42 75 67 3a 20 38 39 32 5d 0a 54 68  s. [Bug: 892].Th
29c40 61 6e 6b 73 20 74 6f 20 4b 65 76 69 6e 20 4b 65  anks to Kevin Ke
29c50 6e 6e 79 20 66 6f 72 20 74 68 69 73 20 66 69 78  nny for this fix
29c60 2e 20 20 28 53 53 29 0a 0a 31 2f 31 31 2f 39 38  .  (SS)..1/11/98
29c70 20 28 62 75 67 20 66 69 78 29 20 20 4f 6e 20 48   (bug fix)  On H
29c80 50 2c 20 22 69 6e 66 6f 20 73 68 61 72 65 64 6c  P, "info sharedl
29c90 69 62 65 78 74 65 6e 73 69 6f 6e 22 20 77 61 73  ibextension" was
29ca0 20 72 65 74 75 72 6e 69 6e 67 20 0a 65 6d 70 74   returning .empt
29cb0 79 20 73 74 72 69 6e 67 20 6f 6e 20 73 74 61 74  y string on stat
29cc0 69 63 20 61 70 70 73 2e 20 20 49 74 20 6e 6f 77  ic apps.  It now
29cd0 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 20   always returns 
29ce0 22 2e 73 6c 22 2e 20 20 28 52 4a 29 0a 0a 31 2f  ".sl".  (RJ)..1/
29cf0 32 38 2f 39 39 20 28 63 6f 6e 66 69 67 75 72 65  28/99 (configure
29d00 20 63 68 61 6e 67 65 29 20 4e 6f 77 20 73 75 70   change) Now sup
29d10 70 6f 72 74 20 2d 70 69 70 65 20 6f 70 74 69 6f  port -pipe optio
29d20 6e 20 6f 6e 20 67 63 63 2e 20 20 28 52 4a 29 0a  n on gcc.  (RJ).
29d30 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66 69 78  .2/2/99 (bug fix
29d40 29 20 46 69 78 65 64 20 69 6e 69 74 69 61 6c 69  ) Fixed initiali
29d50 7a 61 74 69 6f 6e 20 70 72 6f 62 6c 65 6d 20 6f  zation problem o
29d60 6e 20 57 69 6e 64 6f 77 73 20 77 68 65 72 65 20  n Windows where 
29d70 6e 6f 0a 73 65 61 72 63 68 69 6e 67 20 66 6f 72  no.searching for
29d80 20 69 6e 69 74 2e 74 63 6c 20 77 6f 75 6c 64 20   init.tcl would 
29d90 62 65 20 70 65 72 66 6f 72 6d 65 64 20 69 66 20  be performed if 
29da0 74 68 65 20 72 65 67 69 73 74 72 79 20 6b 65 79  the registry key
29db0 73 20 77 65 72 65 0a 6d 69 73 73 69 6e 67 2e 20  s were.missing. 
29dc0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f   (stanton)..2/2/
29dd0 39 39 20 28 62 75 67 20 66 69 78 29 20 41 64 64  99 (bug fix) Add
29de0 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 48  ed support for H
29df0 4b 45 59 5f 50 45 52 46 4f 52 4d 41 4e 43 45 5f  KEY_PERFORMANCE_
29e00 44 41 54 41 20 61 6e 64 0a 48 4b 45 59 5f 44 59  DATA and.HKEY_DY
29e10 4e 5f 44 41 54 41 20 6b 65 79 73 20 69 6e 20 74  N_DATA keys in t
29e20 68 65 20 22 72 65 67 69 73 74 72 79 22 20 63 6f  he "registry" co
29e30 6d 6d 61 6e 64 2e 20 28 73 74 61 6e 74 6f 6e 29  mmand. (stanton)
29e40 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66 69  ..2/2/99 (bug fi
29e50 78 29 20 45 4e 4f 54 53 55 50 20 61 6e 64 20 45  x) ENOTSUP and E
29e60 4f 50 4e 4f 54 53 55 50 50 20 63 6c 61 73 68 65  OPNOTSUPP clashe
29e70 64 20 6f 6e 20 73 6f 6d 65 20 4c 69 6e 75 78 0a  d on some Linux.
29e80 76 61 72 69 61 6e 74 73 2e 20 28 73 74 61 6e 74  variants. (stant
29e90 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 65 6e 68  on)..2/2/99 (enh
29ea0 61 6e 63 65 6d 65 6e 74 29 20 54 68 65 20 22 6f  ancement) The "o
29eb0 70 65 6e 22 20 63 6f 6d 6d 61 6e 64 20 68 61 73  pen" command has
29ec0 20 62 65 65 6e 20 63 68 61 6e 67 65 64 20 74 6f   been changed to
29ed0 20 75 73 65 20 74 68 65 0a 6f 62 6a 65 63 74 20   use the.object 
29ee0 69 6e 74 65 72 66 61 63 65 73 2e 20 28 73 74 61  interfaces. (sta
29ef0 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62  nton)..2/2/99 (b
29f00 75 67 20 66 69 78 29 20 49 6e 20 73 6f 6d 65 20  ug fix) In some 
29f10 63 61 73 65 73 20 54 63 6c 20 77 6f 75 6c 64 20  cases Tcl would 
29f20 63 72 61 73 68 20 64 75 65 20 74 6f 20 61 6e 20  crash due to an 
29f30 6f 76 65 72 66 6c 6f 77 20 6f 66 0a 74 68 65 20  overflow of.the 
29f40 65 78 63 65 70 74 69 6f 6e 20 73 74 61 63 6b 20  exception stack 
29f50 72 65 73 75 6c 74 69 6e 67 20 66 72 6f 6d 20 61  resulting from a
29f60 20 6d 69 73 73 69 6e 67 20 62 79 74 65 20 63 6f   missing byte co
29f70 64 65 20 69 6e 20 73 6f 6d 65 0a 65 78 70 72 65  de in some.expre
29f80 73 73 69 6f 6e 73 2e 20 28 73 74 61 6e 74 6f 6e  ssions. (stanton
29f90 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66  )..2/2/99 (bug f
29fa0 69 78 29 20 43 68 61 6e 67 65 64 20 63 6f 6e 66  ix) Changed conf
29fb0 69 67 75 72 65 20 73 6f 20 4c 69 6e 75 78 20 61  igure so Linux a
29fc0 6e 64 20 49 52 49 58 20 73 68 61 72 65 64 20 6c  nd IRIX shared l
29fd0 69 62 72 61 72 69 65 73 0a 61 72 65 20 6c 69 6e  ibraries.are lin
29fe0 6b 65 64 20 77 69 74 68 20 74 68 65 20 73 79 73  ked with the sys
29ff0 74 65 6d 20 6c 69 62 72 61 72 69 65 73 2e 20 28  tem libraries. (
2a000 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39  stanton)..2/2/99
2a010 20 28 62 75 67 20 66 69 78 29 20 41 64 64 65 64   (bug fix) Added
2a020 20 73 75 70 70 6f 72 74 20 66 6f 72 20 42 53 44   support for BSD
2a030 49 20 34 2e 78 20 28 42 53 44 2f 4f 53 2d 34 2a  I 4.x (BSD/OS-4*
2a040 29 20 74 6f 20 74 68 65 0a 63 6f 6e 66 69 67 75  ) to the.configu
2a050 72 65 20 73 63 72 69 70 74 2e 20 28 73 74 61 6e  re script. (stan
2a060 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75  ton)..2/2/99 (bu
2a070 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
2a080 20 77 68 65 72 65 20 75 70 76 61 72 20 63 6f 75   where upvar cou
2a090 6c 64 20 72 65 73 75 72 72 65 63 74 20 61 20 6e  ld resurrect a n
2a0a0 61 6d 65 73 70 61 63 65 0a 76 61 72 69 61 62 6c  amespace.variabl
2a0b0 65 20 61 66 74 65 72 20 74 68 65 20 6e 61 6d 65  e after the name
2a0c0 73 70 61 63 65 20 68 61 64 20 62 65 65 6e 20 64  space had been d
2a0d0 65 6c 65 74 65 64 2e 20 28 73 74 61 6e 74 6f 6e  eleted. (stanton
2a0e0 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66  )..2/2/99 (bug f
2a0f0 69 78 29 20 49 6e 20 73 6f 6d 65 20 63 61 73 65  ix) In some case
2a100 73 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67 20  s when creating 
2a110 76 61 72 69 61 62 6c 65 73 2c 20 74 68 65 0a 69  variables, the.i
2a120 6e 74 65 72 70 72 65 74 65 72 20 72 65 73 75 6c  nterpreter resul
2a130 74 20 77 61 73 20 62 65 69 6e 67 20 6d 6f 64 69  t was being modi
2a140 66 69 65 64 20 65 76 65 6e 20 69 66 20 74 68 65  fied even if the
2a150 20 54 43 4c 5f 4c 45 41 56 45 5f 45 52 52 5f 4d   TCL_LEAVE_ERR_M
2a160 53 47 0a 66 6c 61 67 20 77 61 73 20 73 65 74 2e  SG.flag was set.
2a170 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f   (stanton)..2/2/
2a180 39 39 20 28 62 75 67 20 66 69 78 20 26 20 6e 65  99 (bug fix & ne
2a190 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e 67  w feature) Chang
2a1a0 65 64 20 74 68 65 20 73 6f 63 6b 65 74 20 64 72  ed the socket dr
2a1b0 69 76 65 72 73 20 74 6f 20 70 72 6f 70 65 72 6c  ivers to properl
2a1c0 79 0a 68 61 6e 64 6c 65 20 66 61 69 6c 75 72 65  y.handle failure
2a1d0 73 20 64 75 72 69 6e 67 20 61 6e 20 61 73 79 6e  s during an asyn
2a1e0 63 20 73 6f 63 6b 65 74 20 63 6f 6e 6e 65 63 74  c socket connect
2a1f0 69 6f 6e 2e 20 20 41 64 64 65 64 20 61 20 6e 65  ion.  Added a ne
2a200 77 0a 66 63 6f 6e 66 69 67 75 72 65 20 6f 70 74  w.fconfigure opt
2a210 69 6f 6e 20 22 2d 65 72 72 6f 72 22 20 74 6f 20  ion "-error" to 
2a220 72 65 74 72 69 65 76 65 20 74 68 65 20 66 61 69  retrieve the fai
2a230 6c 75 72 65 20 6d 65 73 73 61 67 65 2e 20 20 53  lure message.  S
2a240 65 65 20 74 68 65 0a 73 6f 63 6b 65 74 2e 6e 20  ee the.socket.n 
2a250 6d 61 6e 75 61 6c 20 65 6e 74 72 79 20 66 6f 72  manual entry for
2a260 20 64 65 74 61 69 6c 73 2e 20 28 73 74 61 6e 74   details. (stant
2a270 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67  on)..2/2/99 (bug
2a280 20 66 69 78 29 20 44 65 6c 65 74 69 6e 67 20 61   fix) Deleting a
2a290 20 72 65 6e 61 6d 65 64 20 69 6e 74 65 72 70 20   renamed interp 
2a2a0 61 6c 69 61 73 20 63 6f 75 6c 64 20 72 65 73 75  alias could resu
2a2b0 6c 74 20 69 6e 20 61 0a 70 61 6e 69 63 2e 20 28  lt in a.panic. (
2a2c0 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39  stanton)..2/2/99
2a2d0 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
2a2e0 2f 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  /bug fix) Change
2a2f0 64 20 74 68 65 20 62 65 68 61 76 69 6f 72 20 6f  d the behavior o
2a300 66 20 22 66 69 6c 65 0a 65 78 74 65 6e 73 69 6f  f "file.extensio
2a310 6e 22 20 73 6f 20 74 68 61 74 20 69 74 20 73 70  n" so that it sp
2a320 6c 69 74 73 20 61 74 20 74 68 65 20 6c 61 73 74  lits at the last
2a330 20 70 65 72 69 6f 64 2e 20 20 4e 6f 77 20 74 68   period.  Now th
2a340 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 66 0a 61  e extension of.a
2a350 20 66 69 6c 65 20 6c 69 6b 65 20 22 66 6f 6f 2e   file like "foo.
2a360 2e 6f 22 20 69 73 20 22 2e 6f 22 20 69 6e 73 74  .o" is ".o" inst
2a370 65 61 64 20 6f 66 20 22 2e 2e 6f 22 20 61 73 20  ead of "..o" as 
2a380 69 6e 20 70 72 65 76 69 6f 75 73 20 76 65 72 73  in previous vers
2a390 69 6f 6e 73 2e 20 0a 2a 2a 2a 20 50 4f 54 45 4e  ions. .*** POTEN
2a3a0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
2a3b0 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d  LITY ***..------
2a3c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
2a3d0 61 73 65 64 20 38 2e 30 2e 35 2c 20 33 2f 39 2f  ased 8.0.5, 3/9/
2a3e0 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  99 -------------
2a3f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 3d 3d  ------------..==
2a400 3d 3d 3d 3d 3d 3d 20 43 68 61 6e 67 65 73 20 66  ====== Changes f
2a410 6f 72 20 38 2e 30 20 67 6f 20 61 62 6f 76 65 20  or 8.0 go above 
2a420 74 68 69 73 20 6c 69 6e 65 20 3d 3d 3d 3d 3d 3d  this line ======
2a430 3d 3d 0a 3d 3d 3d 3d 3d 3d 3d 3d 20 43 68 61 6e  ==.======== Chan
2a440 67 65 73 20 66 6f 72 20 38 2e 31 20 67 6f 20 62  ges for 8.1 go b
2a450 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 20 3d  elow this line =
2a460 3d 3d 3d 3d 3d 3d 3d 0a 0a 36 2f 31 38 2f 39 37  =======..6/18/97
2a470 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 54   (new feature) T
2a480 63 6c 20 6e 6f 77 20 73 75 70 70 6f 72 74 73 20  cl now supports 
2a490 69 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 20 63 68  international ch
2a4a0 61 72 61 63 74 65 72 20 73 65 74 73 3a 0a 20 20  aracter sets:.  
2a4b0 20 20 2d 20 41 6c 6c 20 43 20 41 50 49 73 20 6e    - All C APIs n
2a4c0 6f 77 20 61 63 63 65 70 74 20 55 54 46 2d 38 20  ow accept UTF-8 
2a4d0 73 74 72 69 6e 67 73 20 69 6e 73 74 65 61 64 20  strings instead 
2a4e0 6f 66 20 69 73 6f 38 38 35 39 2d 31 20 73 74 72  of iso8859-1 str
2a4f0 69 6e 67 73 2c 0a 20 20 20 20 20 20 77 68 65 72  ings,.      wher
2a500 65 76 65 72 20 79 6f 75 20 73 65 65 20 22 63 68  ever you see "ch
2a510 61 72 20 2a 22 2c 20 75 6e 6c 65 73 73 20 65 78  ar *", unless ex
2a520 70 6c 69 63 69 74 6c 79 20 6e 6f 74 65 64 20 6f  plicitly noted o
2a530 74 68 65 72 77 69 73 65 2e 0a 20 20 20 20 2d 20  therwise..    - 
2a540 41 6c 6c 20 54 63 6c 20 73 74 72 69 6e 67 73 20  All Tcl strings 
2a550 72 65 70 72 65 73 65 6e 74 65 64 20 69 6e 20 55  represented in U
2a560 54 46 2d 38 2c 20 77 68 69 63 68 20 69 73 20 61  TF-8, which is a
2a570 20 63 6f 6e 76 65 6e 69 65 6e 74 0a 20 20 20 20   convenient.    
2a580 20 20 6d 75 6c 74 69 2d 62 79 74 65 20 65 6e 63    multi-byte enc
2a590 6f 64 69 6e 67 20 6f 66 20 55 6e 69 63 6f 64 65  oding of Unicode
2a5a0 2e 20 20 56 61 72 69 61 62 6c 65 20 6e 61 6d 65  .  Variable name
2a5b0 73 2c 20 70 72 6f 63 65 64 75 72 65 20 6e 61 6d  s, procedure nam
2a5c0 65 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 61 6c  es,.      and al
2a5d0 6c 20 6f 74 68 65 72 20 76 61 6c 75 65 73 20 69  l other values i
2a5e0 6e 20 54 63 6c 20 6d 61 79 20 69 6e 63 6c 75 64  n Tcl may includ
2a5f0 65 20 61 72 62 69 74 72 61 72 79 20 55 6e 69 63  e arbitrary Unic
2a600 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 2e 0a  ode characters..
2a610 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c        For exampl
2a620 65 2c 20 74 68 65 20 54 63 6c 20 63 6f 6d 6d 61  e, the Tcl comma
2a630 6e 64 20 22 73 74 72 69 6e 67 20 6c 65 6e 67 74  nd "string lengt
2a640 68 22 20 72 65 74 75 72 6e 73 20 68 6f 77 20 6d  h" returns how m
2a650 61 6e 79 0a 20 20 20 20 20 20 55 6e 69 63 6f 64  any.      Unicod
2a660 65 20 63 68 61 72 61 63 74 65 72 73 20 61 72 65  e characters are
2a670 20 69 6e 20 74 68 65 20 61 72 67 75 6d 65 6e 74   in the argument
2a680 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 2d 20 46   string..    - F
2a690 6f 72 20 4a 61 76 61 20 63 6f 6d 70 61 74 69 62  or Java compatib
2a6a0 69 6c 69 74 79 2c 20 65 6d 62 65 64 64 65 64 20  ility, embedded 
2a6b0 6e 75 6c 6c 20 62 79 74 65 73 20 69 6e 20 43 20  null bytes in C 
2a6c0 73 74 72 69 6e 67 73 20 61 72 65 0a 20 20 20 20  strings are.    
2a6d0 20 20 72 65 70 72 65 73 65 6e 74 65 64 20 61 73    represented as
2a6e0 20 5c 78 43 30 38 30 20 69 6e 20 55 54 46 2d 38   \xC080 in UTF-8
2a6f0 20 73 74 72 69 6e 67 73 2c 20 62 75 74 20 74 68   strings, but th
2a700 65 20 6e 75 6c 6c 20 62 79 74 65 20 61 74 20 74  e null byte at t
2a710 68 65 20 65 6e 64 0a 20 20 20 20 20 20 6f 66 20  he end.      of 
2a720 61 20 55 54 46 2d 38 20 73 74 72 69 6e 67 20 72  a UTF-8 string r
2a730 65 6d 61 69 6e 73 20 5c 30 2e 20 20 54 68 75 73  emains \0.  Thus
2a740 20 54 63 6c 20 73 74 72 69 6e 67 73 20 6f 6e 63   Tcl strings onc
2a750 65 20 61 67 61 69 6e 20 64 6f 20 6e 6f 74 0a 20  e again do not. 
2a760 20 20 20 20 20 63 6f 6e 74 61 69 6e 20 6e 75 6c       contain nul
2a770 6c 20 62 79 74 65 73 2c 20 65 78 63 65 70 74 20  l bytes, except 
2a780 66 6f 72 20 74 65 72 6d 69 6e 61 74 69 6f 6e 20  for termination 
2a790 62 79 74 65 73 2e 0a 20 20 20 20 2d 20 46 6f 72  bytes..    - For
2a7a0 20 4a 61 76 61 20 63 6f 6d 70 61 74 69 62 69 6c   Java compatibil
2a7b0 69 74 79 2c 20 22 5c 75 58 58 58 58 22 20 69 73  ity, "\uXXXX" is
2a7c0 20 75 73 65 64 20 69 6e 20 54 63 6c 20 74 6f 20   used in Tcl to 
2a7d0 65 6e 74 65 72 20 61 20 55 6e 69 63 6f 64 65 0a  enter a Unicode.
2a7e0 20 20 20 20 20 20 63 68 61 72 61 63 74 65 72 2e        character.
2a7f0 20 20 22 5c 75 30 30 30 30 22 20 74 68 72 6f 75    "\u0000" throu
2a800 67 68 20 22 5c 75 66 66 66 66 22 20 61 72 65 20  gh "\uffff" are 
2a810 61 63 63 65 70 74 61 62 6c 65 20 55 6e 69 63 6f  acceptable Unico
2a820 64 65 20 0a 20 20 20 20 20 20 63 68 61 72 61 63  de .      charac
2a830 74 65 72 73 2e 20 20 0a 20 20 20 20 2d 20 22 5c  ters.  .    - "\
2a840 78 58 58 22 20 69 73 20 75 73 65 64 20 74 6f 20  xXX" is used to 
2a850 65 6e 74 65 72 20 61 20 73 6d 61 6c 6c 20 55 6e  enter a small Un
2a860 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 20  icode character 
2a870 28 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 32  (between 0 and 2
2a880 35 35 29 0a 20 20 20 20 20 20 69 6e 20 54 63 6c  55).      in Tcl
2a890 2e 0a 20 20 20 20 2d 20 54 63 6c 20 61 75 74 6f  ..    - Tcl auto
2a8a0 6d 61 74 69 63 61 6c 6c 79 20 74 72 61 6e 73 6c  matically transl
2a8b0 61 74 65 73 20 62 65 74 77 65 65 6e 20 55 54 46  ates between UTF
2a8c0 2d 38 20 61 6e 64 20 74 68 65 20 6e 6f 72 6d 61  -8 and the norma
2a8d0 6c 20 65 6e 63 6f 64 69 6e 67 20 66 6f 72 0a 20  l encoding for. 
2a8e0 20 20 20 20 20 74 68 65 20 70 6c 61 74 66 6f 72       the platfor
2a8f0 6d 20 64 75 72 69 6e 67 20 69 6e 74 65 72 61 63  m during interac
2a900 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 20 73  tions with the s
2a910 79 73 74 65 6d 2e 0a 20 20 20 20 2d 20 54 68 65  ystem..    - The
2a920 20 66 63 6f 6e 66 69 67 75 72 65 20 63 6f 6d 6d   fconfigure comm
2a930 61 6e 64 20 6e 6f 77 20 73 75 70 70 6f 72 74 73  and now supports
2a940 20 61 20 2d 65 6e 63 6f 64 69 6e 67 20 6f 70 74   a -encoding opt
2a950 69 6f 6e 20 66 6f 72 20 73 70 65 63 69 66 79 69  ion for specifyi
2a960 6e 67 0a 20 20 20 20 20 20 74 68 65 20 65 6e 63  ng.      the enc
2a970 6f 64 69 6e 67 20 6f 66 20 61 6e 20 6f 70 65 6e  oding of an open
2a980 20 66 69 6c 65 20 6f 72 20 73 6f 63 6b 65 74 2e   file or socket.
2a990 20 20 54 63 6c 20 77 69 6c 6c 20 61 75 74 6f 6d    Tcl will autom
2a9a0 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 74  atically.      t
2a9b0 72 61 6e 73 6c 61 74 65 20 62 65 74 77 65 65 6e  ranslate between
2a9c0 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 65   the specified e
2a9d0 6e 63 6f 64 69 6e 67 20 61 6e 64 20 55 54 46 2d  ncoding and UTF-
2a9e0 38 20 64 75 72 69 6e 67 20 49 2f 4f 2e 20 0a 20  8 during I/O. . 
2a9f0 20 20 20 20 20 53 65 65 20 74 68 65 20 64 69 72       See the dir
2aa00 65 63 74 6f 72 79 20 6c 69 62 72 61 72 79 2f 65  ectory library/e
2aa10 6e 63 6f 64 69 6e 67 20 74 6f 20 66 69 6e 64 20  ncoding to find 
2aa20 6f 75 74 20 77 68 61 74 20 65 6e 63 6f 64 69 6e  out what encodin
2aa30 67 73 20 61 72 65 0a 20 20 20 20 20 20 73 75 70  gs are.      sup
2aa40 70 6f 72 74 65 64 20 28 65 76 65 6e 74 75 61 6c  ported (eventual
2aa50 6c 79 20 74 68 65 72 65 20 77 69 6c 6c 20 62 65  ly there will be
2aa60 20 61 6e 20 22 65 6e 63 6f 64 69 6e 67 22 20 63   an "encoding" c
2aa70 6f 6d 6d 61 6e 64 20 74 68 61 74 0a 20 20 20 20  ommand that.    
2aa80 20 20 6d 61 6b 65 73 20 74 68 69 73 20 69 6e 66    makes this inf
2aa90 6f 72 6d 61 74 69 6f 6e 20 6d 6f 72 65 20 61 63  ormation more ac
2aaa0 63 65 73 73 69 62 6c 65 29 2e 0a 20 20 20 20 2d  cessible)..    -
2aab0 20 54 68 65 72 65 20 61 72 65 20 73 65 76 65 72   There are sever
2aac0 61 6c 20 6e 65 77 20 43 20 41 50 49 73 20 74 68  al new C APIs th
2aad0 61 74 20 73 75 70 70 6f 72 74 20 55 54 46 2d 38  at support UTF-8
2aae0 20 61 6e 64 20 76 61 72 69 6f 75 73 20 65 6e 63   and various enc
2aaf0 6f 64 69 6e 67 73 2e 0a 20 20 20 20 20 20 53 65  odings..      Se
2ab00 65 20 55 74 66 2e 33 20 66 6f 72 20 70 72 6f 63  e Utf.3 for proc
2ab10 65 64 75 72 65 73 20 74 68 61 74 20 74 72 61 6e  edures that tran
2ab20 73 6c 61 74 65 20 62 65 74 77 65 65 6e 20 55 6e  slate between Un
2ab30 69 63 6f 64 65 20 61 6e 64 20 55 54 46 2d 38 0a  icode and UTF-8.
2ab40 20 20 20 20 20 20 61 6e 64 20 6d 61 6e 69 70 75        and manipu
2ab50 6c 61 74 65 20 55 54 46 2d 38 20 73 74 72 69 6e  late UTF-8 strin
2ab60 67 73 2e 20 53 65 65 20 45 6e 63 6f 64 69 6e 67  gs. See Encoding
2ab70 2e 33 20 66 6f 72 20 70 72 6f 63 65 64 75 72 65  .3 for procedure
2ab80 73 20 74 68 61 74 0a 20 20 20 20 20 20 63 72 65  s that.      cre
2ab90 61 74 65 20 6e 65 77 20 65 6e 63 6f 64 69 6e 67  ate new encoding
2aba0 73 20 61 6e 64 20 74 72 61 6e 73 6c 61 74 65 20  s and translate 
2abb0 62 65 74 77 65 65 6e 20 65 6e 63 6f 64 69 6e 67  between encoding
2abc0 73 2e 20 20 53 65 65 0a 20 20 20 20 20 20 54 6f  s.  See.      To
2abd0 55 70 70 65 72 2e 33 20 66 6f 72 20 70 72 6f 63  Upper.3 for proc
2abe0 65 64 75 72 65 73 20 74 68 61 74 20 70 65 72 66  edures that perf
2abf0 6f 72 6d 20 63 61 73 65 20 63 6f 6e 76 65 72 73  orm case convers
2ac00 69 6f 6e 73 20 6f 6e 20 55 54 46 2d 38 0a 20 20  ions on UTF-8.  
2ac10 20 20 20 20 73 74 72 69 6e 67 73 2e 0a 0a 39 2f      strings...9/
2ac20 31 38 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65  18/97 (enhanceme
2ac30 6e 74 29 20 4c 69 74 65 72 61 6c 20 6f 62 6a 65  nt) Literal obje
2ac40 63 74 73 20 61 72 65 20 6e 6f 77 20 73 68 61 72  cts are now shar
2ac50 65 64 20 62 79 20 74 68 65 20 42 79 74 65 43 6f  ed by the ByteCo
2ac60 64 65 0a 73 74 72 75 63 74 75 72 65 73 20 63 72  de.structures cr
2ac70 65 61 74 65 64 20 77 68 65 6e 20 63 6f 6d 70 69  eated when compi
2ac80 6c 65 64 20 64 69 66 66 65 72 65 6e 74 20 73 63  led different sc
2ac90 72 69 70 74 73 2e 20 54 68 69 73 20 73 61 76 65  ripts. This save
2aca0 73 20 75 70 20 74 6f 20 34 35 25 0a 6f 66 20 74  s up to 45%.of t
2acb0 68 65 20 74 6f 74 61 6c 20 6d 65 6d 6f 72 79 20  he total memory 
2acc0 6e 65 65 64 65 64 20 66 6f 72 20 61 6c 6c 20 6c  needed for all l
2acd0 69 74 65 72 61 6c 73 2e 20 28 42 4c 29 0a 0a 39  iterals. (BL)..9
2ace0 2f 32 34 2f 39 37 20 28 62 75 67 20 66 69 78 65  /24/97 (bug fixe
2acf0 73 29 20 46 69 78 65 64 20 54 63 6c 5f 50 61 72  s) Fixed Tcl_Par
2ad00 73 65 43 6f 6d 6d 61 6e 64 20 70 61 72 73 69 6e  seCommand parsin
2ad10 67 20 6f 66 20 62 61 63 6b 73 6c 61 73 68 2d 6e  g of backslash-n
2ad20 65 77 6c 69 6e 65 0a 73 65 71 75 65 6e 63 65 73  ewline.sequences
2ad30 20 61 74 20 73 74 61 72 74 20 6f 66 20 63 6f 6d   at start of com
2ad40 6d 61 6e 64 20 77 6f 72 64 73 2e 20 53 75 70 70  mand words. Supp
2ad50 72 65 73 73 65 64 20 54 63 6c 5f 45 76 61 6c 44  ressed Tcl_EvalD
2ad60 69 72 65 63 74 20 65 72 72 6f 72 20 6c 6f 67 67  irect error logg
2ad70 69 6e 67 0a 69 66 20 6e 6f 6e 2d 54 43 4c 5f 4f  ing.if non-TCL_O
2ad80 4b 20 72 65 73 75 6c 74 20 77 61 73 6e 27 74 20  K result wasn't 
2ad90 61 6e 20 65 72 72 6f 72 2e 20 28 42 4c 29 0a 0a  an error. (BL)..
2ada0 31 30 2f 31 37 2f 39 37 20 28 66 65 61 74 75 72  10/17/97 (featur
2adb0 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 22  e enhancement) "
2adc0 7e 75 73 65 72 6e 61 6d 65 22 20 6e 6f 77 20 72  ~username" now r
2add0 65 66 65 72 73 20 74 6f 20 74 68 65 20 75 73 65  efers to the use
2ade0 72 73 27 20 68 6f 6d 65 0a 64 69 72 65 63 74 6f  rs' home.directo
2adf0 72 79 20 6f 6e 20 57 69 6e 64 6f 77 73 20 28 70  ry on Windows (p
2ae00 72 65 76 69 6f 75 73 6c 79 20 61 6c 77 61 79 73  reviously always
2ae10 20 72 65 74 75 72 6e 65 64 20 66 61 69 6c 75 72   returned failur
2ae20 65 29 2e 20 28 43 43 53 29 0a 0a 31 30 2f 32 30  e). (CCS)..10/20
2ae30 2f 39 37 20 28 69 6d 70 6c 65 6d 65 6e 74 61 74  /97 (implementat
2ae40 69 6f 6e 20 63 68 61 6e 67 65 29 20 54 68 65 20  ion change) The 
2ae50 54 63 6c 20 70 61 72 73 65 72 20 68 61 73 20 62  Tcl parser has b
2ae60 65 65 6e 20 63 6f 6d 70 6c 65 74 65 6c 79 20 72  een completely r
2ae70 65 77 72 69 74 74 65 6e 0a 74 6f 20 6d 61 6b 65  ewritten.to make
2ae80 20 69 74 20 6d 6f 72 65 20 6d 6f 64 75 6c 61 72   it more modular
2ae90 2e 20 20 49 74 20 63 61 6e 20 6e 6f 77 20 62 65  .  It can now be
2aea0 20 75 73 65 64 20 74 6f 20 70 61 72 73 65 20 61   used to parse a
2aeb0 20 73 63 72 69 70 74 20 77 69 74 68 6f 75 74 20   script without 
2aec0 61 63 74 75 61 6c 6c 79 0a 65 78 65 63 75 74 69  actually.executi
2aed0 6e 67 20 69 74 2e 20 20 54 68 65 20 41 50 49 73  ng it.  The APIs
2aee0 20 66 6f 72 20 74 68 65 20 6e 65 77 20 70 61 72   for the new par
2aef0 73 65 72 20 61 72 65 20 6e 6f 74 20 63 6f 72 72  ser are not corr
2af00 65 63 74 6c 79 20 65 78 70 6f 72 74 65 64 2c 20  ectly exported, 
2af10 62 75 74 0a 74 68 65 79 20 77 69 6c 6c 20 65 76  but.they will ev
2af20 65 6e 74 75 61 6c 6c 79 20 62 65 20 65 78 70 6f  entually be expo
2af30 72 74 65 64 20 61 6e 64 20 61 75 67 6d 65 6e 74  rted and augment
2af40 65 64 20 77 69 74 68 20 54 63 6c 20 63 6f 6d 6d  ed with Tcl comm
2af50 61 6e 64 73 20 73 6f 20 74 68 61 74 0a 54 63 6c  ands so that.Tcl
2af60 20 73 63 72 69 70 74 73 20 63 61 6e 20 70 61 72   scripts can par
2af70 73 65 20 6f 74 68 65 72 20 54 63 6c 20 73 63 72  se other Tcl scr
2af80 69 70 74 73 2e 20 28 4a 4f 29 0a 0a 31 30 2f 32  ipts. (JO)..10/2
2af90 31 2f 39 37 20 28 41 50 49 20 63 68 61 6e 67 65  1/97 (API change
2afa0 29 20 41 64 64 65 64 20 22 66 6c 61 67 73 22 20  ) Added "flags" 
2afb0 61 72 67 75 6d 65 6e 74 20 74 6f 20 54 63 6c 5f  argument to Tcl_
2afc0 45 76 61 6c 4f 62 6a 2c 20 72 65 6d 6f 76 65 64  EvalObj, removed
2afd0 0a 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c 4f  .Tcl_GlobalEvalO
2afe0 62 6a 20 70 72 6f 63 65 64 75 72 65 2e 20 20 41  bj procedure.  A
2aff0 64 64 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75  dded new procedu
2b000 72 65 73 20 54 63 6c 5f 45 76 61 6c 32 20 61 6e  res Tcl_Eval2 an
2b010 64 0a 54 63 6c 5f 45 76 61 6c 4f 62 6a 76 2e 20  d.Tcl_EvalObjv. 
2b020 28 4a 4f 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  (JO).*** POTENTI
2b030 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
2b040 54 59 20 2a 2a 2a 0a 0a 31 30 2f 32 32 2f 39 37  TY ***..10/22/97
2b050 20 28 41 50 49 20 63 68 61 6e 67 65 29 20 52 65   (API change) Re
2b060 6e 61 6d 65 64 20 54 63 6c 5f 4f 62 6a 53 65 74  named Tcl_ObjSet
2b070 56 61 72 32 20 61 6e 64 20 54 63 6c 5f 4f 62 6a  Var2 and Tcl_Obj
2b080 47 65 74 56 61 72 32 20 74 6f 0a 54 63 6c 5f 53  GetVar2 to.Tcl_S
2b090 65 74 4f 62 6a 56 61 72 32 20 61 6e 64 20 54 63  etObjVar2 and Tc
2b0a0 6c 5f 47 65 74 4f 62 6a 56 61 72 32 20 28 66 6f  l_GetObjVar2 (fo
2b0b0 72 20 63 6f 6e 73 69 73 74 65 6e 63 79 20 77 69  r consistency wi
2b0c0 74 68 20 6f 74 68 65 72 20 43 20 41 50 49 73 29  th other C APIs)
2b0d0 0a 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68 65  .and changed the
2b0e0 20 6e 61 6d 65 20 61 72 67 75 6d 65 6e 74 73 20   name arguments 
2b0f0 74 6f 20 62 65 20 73 74 72 69 6e 67 73 20 69 6e  to be strings in
2b100 73 74 65 61 64 20 6f 66 20 6f 62 6a 65 63 74 73  stead of objects
2b110 2e 20 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f 54 45  .  (JO).*** POTE
2b120 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
2b130 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 30 2f 32 37  ILITY ***..10/27
2b140 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /97 (enhancement
2b150 29 20 42 79 74 65 63 6f 64 65 20 63 6f 6d 70 69  ) Bytecode compi
2b160 6c 65 72 20 72 65 77 72 69 74 74 65 6e 20 74 6f  ler rewritten to
2b170 20 75 73 65 20 74 68 65 20 6e 65 77 20 54 63 6c   use the new Tcl
2b180 0a 70 61 72 73 65 72 2e 20 28 42 4c 29 0a 0a 31  .parser. (BL)..1
2b190 31 2f 33 2f 39 37 20 28 4e 65 77 20 72 6f 75 74  1/3/97 (New rout
2b1a0 69 6e 65 73 29 20 41 64 64 65 64 20 54 63 6c 5f  ines) Added Tcl_
2b1b0 41 70 70 65 6e 64 4f 62 6a 54 6f 4f 62 6a 2c 20  AppendObjToObj, 
2b1c0 77 68 69 63 68 20 61 70 70 65 6e 64 73 20 74 68  which appends th
2b1d0 65 0a 73 74 72 69 6e 67 20 72 65 70 20 6f 66 20  e.string rep of 
2b1e0 6f 6e 65 20 54 63 6c 5f 4f 62 6a 20 74 6f 20 61  one Tcl_Obj to a
2b1f0 6e 6f 74 68 65 72 2e 20 41 64 64 65 64 20 54 63  nother. Added Tc
2b200 6c 5f 47 65 74 49 6e 64 65 78 46 72 6f 6d 4f 62  l_GetIndexFromOb
2b210 6a 53 74 72 75 63 74 2c 0a 77 68 69 63 68 20 69  jStruct,.which i
2b220 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 54 63 6c  s similar to Tcl
2b230 5f 47 65 74 49 6e 64 65 78 46 72 6f 6d 4f 62 6a  _GetIndexFromObj
2b240 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 79 6f  , except that yo
2b250 75 20 63 61 6e 20 67 69 76 65 20 61 6e 0a 6f 66  u can give an.of
2b260 66 73 65 74 20 62 65 74 77 65 65 6e 20 73 74 72  fset between str
2b270 69 6e 67 73 2e 20 54 68 69 73 20 61 6c 6c 6f 77  ings. This allow
2b280 73 20 54 63 6c 5f 47 65 74 49 6e 64 65 78 46 72  s Tcl_GetIndexFr
2b290 6f 6d 4f 62 6a 53 74 72 75 63 74 20 74 6f 20 62  omObjStruct to b
2b2a0 65 0a 63 61 6c 6c 65 64 20 77 69 74 68 20 61 20  e.called with a 
2b2b0 74 61 62 6c 65 20 6f 66 20 72 65 63 6f 72 64 73  table of records
2b2c0 20 77 68 69 63 68 20 68 61 76 65 20 73 74 72 69   which have stri
2b2d0 6e 67 73 20 69 6e 20 74 68 65 6d 2e 20 28 53 52  ngs in them. (SR
2b2e0 50 29 0a 0a 31 32 2f 34 2f 39 37 20 28 65 6e 68  P)..12/4/97 (enh
2b2f0 61 6e 63 65 6d 65 6e 74 29 20 4e 65 77 20 54 63  ancement) New Tc
2b300 6c 20 65 78 70 72 65 73 73 69 6f 6e 20 70 61 72  l expression par
2b310 73 65 72 20 61 64 64 65 64 2e 20 41 64 64 65 64  ser added. Added
2b320 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65 0a 54   new procedure.T
2b330 63 6c 5f 50 61 72 73 65 45 78 70 72 20 61 6e 64  cl_ParseExpr and
2b340 20 6e 65 77 20 74 6f 6b 65 6e 20 74 79 70 65 73   new token types
2b350 20 54 43 4c 5f 54 4f 4b 45 4e 5f 53 55 42 5f 45   TCL_TOKEN_SUB_E
2b360 58 50 52 20 61 6e 64 0a 54 43 4c 5f 54 4f 4b 45  XPR and.TCL_TOKE
2b370 4e 5f 4f 50 45 52 41 54 4f 52 2e 20 45 78 70 72  N_OPERATOR. Expr
2b380 65 73 73 69 6f 6e 20 63 6f 6d 70 69 6c 65 72 20  ession compiler 
2b390 69 73 20 72 65 69 6d 70 6c 65 6d 65 6e 74 65 64  is reimplemented
2b3a0 20 74 6f 20 75 73 65 20 74 68 69 73 0a 70 61 72   to use this.par
2b3b0 73 65 72 2e 20 28 42 4c 29 0a 0a 31 32 2f 39 2f  ser. (BL)..12/9/
2b3c0 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63 6c  97 (bug fix) Tcl
2b3d0 5f 45 76 61 6c 4f 62 6a 28 29 20 69 6e 63 72 65  _EvalObj() incre
2b3e0 6d 65 6e 74 73 2f 64 65 63 72 65 6d 65 6e 74 73  ments/decrements
2b3f0 20 74 68 65 20 72 65 66 63 6f 75 6e 74 20 6f 66   the refcount of
2b400 20 74 68 65 0a 73 63 72 69 70 74 20 6f 62 6a 65   the.script obje
2b410 63 74 20 74 6f 20 70 72 65 76 65 6e 74 20 74 68  ct to prevent th
2b420 65 20 6f 62 6a 65 63 74 20 66 72 6f 6d 20 64 65  e object from de
2b430 6c 65 74 69 6e 67 20 69 74 73 65 6c 66 20 77 68  leting itself wh
2b440 69 6c 65 20 69 6e 20 74 68 65 0a 6d 69 64 64 6c  ile in the.middl
2b450 65 20 6f 66 20 62 65 69 6e 67 20 65 76 61 6c 75  e of being evalu
2b460 61 74 65 64 2e 20 28 43 43 53 29 0a 0a 31 32 2f  ated. (CCS)..12/
2b470 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4d  9/97 (bug fix) M
2b480 65 6d 6f 72 79 20 6c 65 61 6b 20 69 6e 20 54 63  emory leak in Tc
2b490 6c 5f 47 65 74 73 4f 62 6a 43 6d 64 28 29 2e 20  l_GetsObjCmd(). 
2b4a0 28 43 43 53 29 0a 0a 31 32 2f 31 31 2f 39 37 20  (CCS)..12/11/97 
2b4b0 28 62 75 67 20 66 69 78 29 20 45 6e 76 69 72 6f  (bug fix) Enviro
2b4c0 6e 6d 65 6e 74 20 61 72 72 61 79 20 6c 65 61 6b  nment array leak
2b4d0 65 64 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20 63  ed memory when c
2b4e0 6f 6d 70 69 6c 65 64 20 77 69 74 68 0a 56 69 73  ompiled with.Vis
2b4f0 75 61 6c 20 43 2b 2b 2e 20 28 53 53 29 0a 0a 31  ual C++. (SS)..1
2b500 32 2f 31 31 2f 39 37 20 28 62 75 67 20 66 69 78  2/11/97 (bug fix
2b510 29 20 46 69 6c 65 20 65 76 65 6e 74 73 20 61 6e  ) File events an
2b520 64 20 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 20 49  d non-blocking I
2b530 2f 4f 20 64 69 64 20 6e 6f 74 20 77 6f 72 6b 20  /O did not work 
2b540 6f 6e 0a 70 69 70 65 73 20 75 6e 64 65 72 20 57  on.pipes under W
2b550 69 6e 64 6f 77 73 2e 20 20 43 68 61 6e 67 65 64  indows.  Changed
2b560 20 74 6f 20 75 73 65 20 74 68 72 65 61 64 73 20   to use threads 
2b570 74 6f 20 61 63 68 69 65 76 65 20 6e 6f 6e 2d 62  to achieve non-b
2b580 6c 6f 63 6b 69 6e 67 0a 62 65 68 61 76 69 6f 72  locking.behavior
2b590 2e 20 28 53 53 29 0a 0a 31 32 2f 31 38 2f 39 37  . (SS)..12/18/97
2b5a0 20 28 62 75 67 20 66 69 78 65 73 29 20 46 69 78   (bug fixes) Fix
2b5b0 65 64 20 73 65 67 66 61 75 6c 74 20 69 6e 20 22  ed segfault in "
2b5c0 6e 61 6d 65 73 70 61 63 65 20 69 6d 70 6f 72 74  namespace import
2b5d0 22 3b 20 69 6d 70 6f 72 74 69 6e 67 20 61 0a 70  "; importing a.p
2b5e0 72 6f 63 65 64 75 72 65 20 74 68 61 74 20 63 61  rocedure that ca
2b5f0 75 73 65 73 20 61 20 63 79 63 6c 65 20 6e 6f 77  uses a cycle now
2b600 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f   returns an erro
2b610 72 2e 20 4d 6f 64 69 66 69 65 64 20 22 69 6e 66  r. Modified "inf
2b620 6f 20 70 72 6f 63 73 22 2c 0a 22 69 6e 66 6f 20  o procs",."info 
2b630 61 72 67 73 22 2c 20 22 69 6e 66 6f 20 62 6f 64  args", "info bod
2b640 79 22 2c 20 61 6e 64 20 22 69 6e 66 6f 20 64 65  y", and "info de
2b650 66 61 75 6c 74 22 20 74 6f 20 72 65 74 75 72 6e  fault" to return
2b660 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f   information abo
2b670 75 74 0a 69 6d 70 6f 72 74 65 64 20 70 72 6f 63  ut.imported proc
2b680 65 64 75 72 65 73 20 61 73 20 77 65 6c 6c 20 61  edures as well a
2b690 73 20 70 72 6f 63 65 64 75 72 65 73 20 64 65 66  s procedures def
2b6a0 69 6e 65 64 20 69 6e 20 61 20 6e 61 6d 65 73 70  ined in a namesp
2b6b0 61 63 65 2e 20 28 42 4c 29 0a 0a 31 32 2f 31 39  ace. (BL)..12/19
2b6c0 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /97 (enhancement
2b6d0 29 20 41 64 64 65 64 20 6e 65 77 20 54 63 6c 5f  ) Added new Tcl_
2b6e0 47 65 74 53 74 72 69 6e 67 28 29 20 70 72 6f 63  GetString() proc
2b6f0 65 64 75 72 65 20 74 68 61 74 20 63 61 6e 20 62  edure that can b
2b700 65 20 75 73 65 64 0a 69 6e 20 70 6c 61 63 65 20  e used.in place 
2b710 6f 66 20 54 63 6c 5f 47 65 74 53 74 72 69 6e 67  of Tcl_GetString
2b720 46 72 6f 6d 4f 62 6a 28 29 20 69 66 20 74 68 65  FromObj() if the
2b730 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e   string represen
2b740 74 61 74 69 6f 6e 27 73 20 6c 65 6e 67 74 68 0a  tation's length.
2b750 69 73 6e 27 74 20 6e 65 65 64 65 64 2e 20 28 42  isn't needed. (B
2b760 4c 29 0a 0a 31 32 2f 31 38 2f 39 37 20 28 62 75  L)..12/18/97 (bu
2b770 67 20 66 69 78 29 20 49 6e 20 74 68 65 20 6f 70  g fix) In the op
2b780 74 20 61 72 67 75 6d 65 6e 74 20 70 61 72 73 69  t argument parsi
2b790 6e 67 20 70 61 63 6b 61 67 65 3a 20 69 66 20 74  ng package: if t
2b7a0 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 0a  he description .
2b7b0 68 61 64 20 6f 6e 6c 79 20 66 6c 61 67 73 2c 20  had only flags, 
2b7c0 74 68 65 20 22 74 6f 6f 20 6d 61 6e 79 20 61 72  the "too many ar
2b7d0 67 75 6d 65 6e 74 73 22 20 63 61 73 65 20 77 61  guments" case wa
2b7e0 73 20 6e 6f 74 20 64 65 74 65 63 74 65 64 2e 20  s not detected. 
2b7f0 54 68 65 20 64 65 66 61 75 6c 74 0a 76 61 6c 75  The default.valu
2b800 65 20 77 61 73 20 6e 6f 74 20 75 73 65 64 20 66  e was not used f
2b810 6f 72 20 74 68 65 20 73 70 65 63 69 61 6c 20 22  or the special "
2b820 61 72 67 73 22 20 65 6e 64 69 6e 67 20 61 72 67  args" ending arg
2b830 75 6d 65 6e 74 2e 20 28 44 4c 29 0a 0a 31 2f 37  ument. (DL)..1/7
2b840 2f 39 38 20 28 63 6c 65 61 6e 20 75 70 29 20 4d  /98 (clean up) M
2b850 6f 76 65 64 20 65 76 65 72 79 74 68 69 6e 67 20  oved everything 
2b860 6e 6f 74 20 61 62 73 6f 6c 75 74 6c 79 20 6e 65  not absolutly ne
2b870 63 65 73 73 61 72 79 20 6f 75 74 20 6f 66 20 69  cessary out of i
2b880 6e 69 74 2e 74 63 6c 0a 70 72 6f 63 73 20 6e 6f  nit.tcl.procs no
2b890 77 20 69 6e 20 61 75 74 6f 2e 74 63 6c 20 61 6e  w in auto.tcl an
2b8a0 64 20 70 61 63 6b 61 67 65 2e 74 63 6c 20 63 61  d package.tcl ca
2b8b0 6e 20 62 65 20 61 75 74 6f 6c 6f 61 64 65 64 20  n be autoloaded 
2b8c0 69 66 20 6e 65 65 64 65 64 2e 20 28 44 4c 29 0a  if needed. (DL).
2b8d0 0a 31 2f 37 2f 39 38 20 28 65 6e 68 61 6e 63 65  .1/7/98 (enhance
2b8e0 6d 65 6e 74 29 20 74 63 6c 74 65 73 74 20 6d 61  ment) tcltest ma
2b8f0 64 65 20 61 74 20 69 6e 73 74 61 6c 6c 20 74 69  de at install ti
2b900 6d 65 20 77 69 6c 6c 20 73 65 61 72 63 68 20 66  me will search f
2b910 6f 72 20 69 74 27 73 0a 69 6e 69 74 2e 74 63 6c  or it's.init.tcl
2b920 20 77 68 65 72 65 20 69 74 20 69 73 2c 20 65 76   where it is, ev
2b930 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 76 69  en when using vi
2b940 72 74 75 61 6c 20 70 61 74 68 20 63 6f 6d 70 69  rtual path compi
2b950 6c 61 74 69 6f 6e 2e 20 28 44 4c 29 0a 0a 31 2f  lation. (DL)..1/
2b960 38 2f 39 38 20 28 6f 73 20 62 75 67 20 77 6f 72  8/98 (os bug wor
2b970 6b 61 72 6f 75 6e 64 29 20 77 68 65 6e 20 6e 65  karound) when ne
2b980 65 64 65 64 2c 20 75 73 69 6e 67 20 61 20 72 65  eded, using a re
2b990 70 6c 61 63 65 6d 65 6e 74 20 66 6f 72 20 6d 65  placement for me
2b9a0 6d 63 6d 70 20 73 6f 20 0a 73 74 72 69 6e 67 20  mcmp so .string 
2b9b0 63 6f 6d 70 61 72 65 20 22 63 68 61 72 20 77 69  compare "char wi
2b9c0 74 68 20 68 69 67 68 20 62 69 74 20 73 65 74 22  th high bit set"
2b9d0 20 22 63 68 61 72 20 77 2f 6f 20 68 69 67 68 20   "char w/o high 
2b9e0 62 69 74 20 73 65 74 22 20 72 65 74 75 72 6e 73  bit set" returns
2b9f0 0a 74 68 65 20 65 78 70 65 63 74 65 64 20 76 61  .the expected va
2ba00 6c 75 65 20 6f 6e 20 61 6c 6c 20 70 6c 61 74 66  lue on all platf
2ba10 6f 72 6d 73 2e 20 28 44 4c 29 0a 0a 31 2f 38 2f  orms. (DL)..1/8/
2ba20 39 38 20 28 75 6e 69 78 20 70 6f 72 74 61 62 69  98 (unix portabi
2ba30 6c 69 74 79 2f 63 6f 6e 66 69 67 75 72 65 29 20  lity/configure) 
2ba40 62 75 69 6c 64 69 6e 67 20 66 72 6f 6d 20 2e 2e  building from ..
2ba50 2e 2f 75 6e 69 78 2f 74 61 72 67 65 74 4e 61 6d  ./unix/targetNam
2ba60 65 2f 20 0a 73 75 62 64 69 72 65 63 74 6f 72 69  e/ .subdirectori
2ba70 65 73 20 61 6e 64 20 73 69 6d 70 6c 79 20 75 73  es and simply us
2ba80 69 6e 67 20 22 2e 2e 2f 63 6f 6e 66 69 67 75 72  ing "../configur
2ba90 65 22 20 73 68 6f 75 6c 64 20 6e 6f 77 20 77 6f  e" should now wo
2baa0 72 6b 20 66 69 6e 65 2e 20 28 44 4c 29 0a 0a 31  rk fine. (DL)..1
2bab0 2f 31 34 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d  /14/98 (enhancem
2bac0 65 6e 74 29 20 41 64 64 65 64 20 6e 65 77 20 72  ent) Added new r
2bad0 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f  egular expressio
2bae0 6e 20 70 61 63 6b 61 67 65 20 74 68 61 74 0a 73  n package that.s
2baf0 75 70 70 6f 72 74 73 20 41 52 45 73 2c 20 45 52  upports AREs, ER
2bb00 45 73 2c 20 61 6e 64 20 42 52 45 73 2e 20 20 54  Es, and BREs.  T
2bb10 68 65 20 6e 65 77 20 70 61 63 6b 61 67 65 20 69  he new package i
2bb20 6e 63 6c 75 64 65 73 20 6e 65 77 20 65 73 63 61  ncludes new esca
2bb30 70 65 0a 63 68 61 72 61 63 74 65 72 73 2c 20 6d  pe.characters, m
2bb40 65 74 61 2d 73 79 6e 74 61 78 2c 20 61 6e 64 20  eta-syntax, and 
2bb50 63 68 61 72 61 63 74 65 72 20 63 6c 61 73 73 65  character classe
2bb60 73 20 69 6e 73 69 64 65 20 62 72 61 63 6b 65 74  s inside bracket
2bb70 73 2e 0a 52 65 67 65 78 70 73 20 69 6e 76 6f 6c  s..Regexps invol
2bb80 76 69 6e 67 20 62 61 63 6b 73 6c 61 73 68 65 73  ving backslashes
2bb90 20 6d 61 79 20 62 65 68 61 76 65 20 64 69 66 66   may behave diff
2bba0 65 72 65 6e 74 6c 79 2e 20 20 28 4d 48 29 0a 2a  erently.  (MH).*
2bbb0 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
2bbc0 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
2bbd0 0a 0a 31 2f 31 36 2f 39 38 20 28 6f 73 20 77 6f  ..1/16/98 (os wo
2bbe0 72 6b 61 72 6f 75 6e 64 29 20 55 6e 64 65 72 20  rkaround) Under 
2bbf0 77 69 6e 64 6f 77 73 2c 20 22 66 69 6c 65 20 76  windows, "file v
2bc00 6f 6c 75 6d 65 22 20 77 61 73 20 63 61 75 73 69  olume" was causi
2bc10 6e 67 20 63 68 61 74 74 65 72 0a 61 6e 64 2f 6f  ng chatter.and/o
2bc20 72 20 73 65 76 65 72 61 6c 20 73 65 63 6f 6e 64  r several second
2bc30 73 20 6f 66 20 68 61 6e 67 69 6e 67 20 77 68 65  s of hanging whe
2bc40 6e 20 71 75 65 72 79 69 6e 67 20 65 6d 70 74 79  n querying empty
2bc50 20 66 6c 6f 70 70 79 20 64 72 69 76 65 73 2e 0a   floppy drives..
2bc60 43 68 61 6e 67 65 64 20 69 6d 70 6c 65 6d 65 6e  Changed implemen
2bc70 74 61 74 69 6f 6e 20 74 6f 20 63 61 6c 6c 20 61  tation to call a
2bc80 6e 20 65 6d 70 69 72 69 63 61 6c 6c 79 2d 64 65  n empirically-de
2bc90 72 69 76 65 64 20 66 75 6e 63 74 69 6f 6e 20 74  rived function t
2bca0 68 61 74 20 64 6f 65 73 6e 27 74 0a 63 61 75 73  hat doesn't.caus
2bcb0 65 20 74 68 69 73 2e 20 28 43 43 53 29 0a 0a 31  e this. (CCS)..1
2bcc0 2f 31 36 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d  /16/98 (enhancem
2bcd0 65 6e 74 29 20 43 6f 6e 76 65 72 74 65 64 20 72  ent) Converted r
2bce0 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f  egular expressio
2bcf0 6e 73 20 74 6f 20 61 20 54 63 6c 5f 4f 62 6a 20  ns to a Tcl_Obj 
2bd00 74 79 70 65 20 73 6f 0a 74 68 65 69 72 20 63 6f  type so.their co
2bd10 6d 70 69 6c 65 64 20 66 6f 72 6d 20 67 65 74 73  mpiled form gets
2bd20 20 63 61 63 68 65 64 20 61 75 74 6f 6d 61 74 69   cached automati
2bd30 63 61 6c 6c 79 2e 20 20 52 65 64 75 63 65 64 20  cally.  Reduced 
2bd40 4e 53 55 42 45 58 50 20 66 72 6f 6d 20 31 30 30  NSUBEXP from 100
2bd50 0a 74 6f 20 32 30 2e 20 28 42 57 29 0a 0a 31 2f  .to 20. (BW)..1/
2bd60 31 36 2f 39 38 20 28 64 6f 63 75 6d 65 6e 74 61  16/98 (documenta
2bd70 74 69 6f 6e 29 20 43 68 61 6e 67 65 20 75 6e 63  tion) Change unc
2bd80 6c 65 61 72 20 64 6f 63 75 6d 65 6e 74 61 74 69  lear documentati
2bd90 6f 6e 20 61 6e 64 20 63 6f 6d 6d 65 6e 74 73 20  on and comments 
2bda0 66 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 20 6c 69  for.functions li
2bdb0 6b 65 20 54 63 6c 5f 54 72 61 6e 73 6c 61 74 65  ke Tcl_Translate
2bdc0 46 69 6c 65 4e 61 6d 65 28 29 20 61 6e 64 20 54  FileName() and T
2bdd0 63 6c 5f 45 78 74 65 72 6e 61 6c 54 6f 55 74 66  cl_ExternalToUtf
2bde0 44 53 74 72 69 6e 67 28 29 2e 20 20 4e 6f 77 0a  DString().  Now.
2bdf0 69 74 20 65 78 70 6c 69 63 69 74 6c 79 20 73 61  it explicitly sa
2be00 79 73 20 74 68 65 79 20 74 61 6b 65 20 61 6e 20  ys they take an 
2be10 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20 6f 72  uninitialized or
2be20 20 66 72 65 65 20 44 53 74 72 69 6e 67 2e 20 20   free DString.  
2be30 41 20 44 53 74 72 69 6e 67 0a 74 68 61 74 20 69  A DString.that i
2be40 73 20 22 65 6d 70 74 79 22 20 6f 72 20 22 6e 6f  s "empty" or "no
2be50 74 20 68 6f 6c 64 69 6e 67 20 61 6e 79 74 68 69  t holding anythi
2be60 6e 67 22 20 63 6f 75 6c 64 20 68 61 76 65 20 62  ng" could have b
2be70 65 65 6e 20 69 6e 74 65 72 70 72 65 74 65 64 20  een interpreted 
2be80 61 73 20 6f 6e 65 0a 63 75 72 72 65 6e 74 6c 79  as one.currently
2be90 20 77 69 74 68 20 61 20 7a 65 72 6f 20 6c 65 6e   with a zero len
2bea0 67 74 68 2c 20 62 75 74 20 77 69 74 68 20 61 20  gth, but with a 
2beb0 6c 61 72 67 65 20 64 79 6e 61 6d 69 63 61 6c 6c  large dynamicall
2bec0 79 20 61 6c 6c 6f 63 61 74 65 64 20 62 75 66 66  y allocated buff
2bed0 65 72 2e 0a 28 43 43 53 29 0a 0a 2d 2d 2d 2d 2d  er..(CCS)..-----
2bee0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
2bef0 65 61 73 65 64 20 38 2e 31 61 31 2c 20 31 2f 32  eased 8.1a1, 1/2
2bf00 32 2f 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  2/98 -----------
2bf10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 2f  ------------..1/
2bf20 32 38 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75  28/98 (new featu
2bf30 72 65 29 20 41 64 64 65 64 20 61 20 22 2d 64 69  re) Added a "-di
2bf40 72 65 63 74 22 20 6f 70 74 69 6f 6e 61 6c 20 66  rect" optional f
2bf50 6c 61 67 20 74 6f 20 70 6b 67 5f 6d 6b 49 6e 64  lag to pkg_mkInd
2bf60 65 78 0a 74 6f 20 67 65 6e 65 72 61 74 65 20 64  ex.to generate d
2bf70 69 72 65 63 74 20 6c 6f 61 64 69 6e 67 20 70 61  irect loading pa
2bf80 63 6b 61 67 65 20 69 6e 64 65 78 65 73 20 28 73  ckage indexes (s
2bf90 75 63 68 20 74 68 6f 73 65 20 79 6f 75 20 6e 65  uch those you ne
2bfa0 65 64 0a 69 66 20 79 6f 75 20 75 73 65 20 6e 61  ed.if you use na
2bfb0 6d 65 73 70 61 63 65 73 20 61 6e 64 20 70 6c 61  mespaces and pla
2bfc0 6e 20 6f 6e 20 75 73 69 6e 67 20 6e 61 6d 65 73  n on using names
2bfd0 70 61 63 65 20 69 6d 70 6f 72 74 20 6a 75 73 74  pace import just
2bfe0 20 61 66 74 65 72 0a 70 61 63 6b 61 67 65 20 72   after.package r
2bff0 65 71 75 69 72 65 29 2e 20 70 6b 67 5f 6d 6b 49  equire). pkg_mkI
2c000 6e 64 65 78 20 73 74 69 6c 6c 20 68 61 73 20 6c  ndex still has l
2c010 69 6d 69 74 61 74 69 6f 6e 73 20 72 65 67 61 72  imitations regar
2c020 64 69 6e 67 0a 70 61 63 6b 61 67 65 20 64 65 70  ding.package dep
2c030 65 6e 64 65 6e 63 69 65 73 20 62 75 74 20 65 72  endencies but er
2c040 72 6f 72 73 20 61 72 65 20 6e 6f 77 20 69 67 6e  rors are now ign
2c050 6f 72 65 64 20 61 6e 64 20 77 69 74 68 20 2d 64  ored and with -d
2c060 69 72 65 63 74 2c 20 63 6f 72 72 65 63 74 0a 70  irect, correct.p
2c070 61 63 6b 61 67 65 20 69 6e 64 65 78 65 73 20 63  ackage indexes c
2c080 61 6e 20 62 65 20 67 65 6e 65 72 61 74 65 64 20  an be generated 
2c090 65 76 65 6e 20 69 66 20 74 68 65 72 65 20 61 72  even if there ar
2c0a0 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 61  e dependencies a
2c0b0 73 20 6c 6f 6e 67 20 0a 61 73 20 74 68 65 20 22  s long .as the "
2c0c0 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 22  package provide"
2c0d0 20 61 72 65 20 64 6f 6e 65 20 65 61 72 6c 79 20   are done early 
2c0e0 65 6e 6f 75 67 68 20 69 6e 20 74 68 65 20 66 69  enough in the fi
2c0f0 6c 65 73 2e 20 28 44 4c 29 0a 0a 31 2f 32 38 2f  les. (DL)..1/28/
2c100 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29  98 (enhancement)
2c110 20 50 65 72 66 6f 72 6d 61 6e 63 65 20 74 75 6e   Performance tun
2c120 69 6e 67 20 6f 66 20 72 65 67 65 78 70 20 61 6e  ing of regexp an
2c130 64 20 72 65 67 73 75 62 2e 20 28 43 43 53 29 0a  d regsub. (CCS).
2c140 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66 69  .1/28/98 (bug fi
2c150 78 29 20 72 65 67 65 78 70 20 61 6e 64 20 72 65  x) regexp and re
2c160 67 73 75 62 20 77 69 74 68 20 22 2d 69 6e 64 69  gsub with "-indi
2c170 63 65 73 22 20 72 65 74 75 72 6e 65 64 20 74 68  ces" returned th
2c180 65 20 62 79 74 65 2d 6f 66 66 73 65 74 73 0a 6f  e byte-offsets.o
2c190 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 73  f the characters
2c1a0 20 69 6e 20 74 68 65 20 55 54 46 2d 38 20 72 65   in the UTF-8 re
2c1b0 70 72 65 73 65 6e 74 61 74 69 6f 6e 2c 20 6e 6f  presentation, no
2c1c0 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20  t the character 
2c1d0 6f 66 66 73 65 74 73 0a 74 68 65 6d 73 65 6c 76  offsets.themselv
2c1e0 65 73 2e 20 28 43 43 53 29 0a 0a 31 2f 32 38 2f  es. (CCS)..1/28/
2c1f0 39 38 20 28 62 75 67 20 66 69 78 29 20 22 63 6c  98 (bug fix) "cl
2c200 6f 63 6b 20 66 6f 72 6d 61 74 20 30 20 2d 66 6f  ock format 0 -fo
2c210 72 6d 61 74 20 25 5a 20 2d 67 6d 74 20 31 22 20  rmat %Z -gmt 1" 
2c220 77 6f 75 6c 64 20 72 65 74 75 72 6e 20 74 68 65  would return the
2c230 20 6c 6f 63 61 6c 0a 74 69 6d 65 7a 6f 6e 65 20   local.timezone 
2c240 73 74 72 69 6e 67 20 69 6e 73 74 65 61 64 20 6f  string instead o
2c250 66 20 22 47 4d 54 22 20 6f 6e 20 53 6f 6c 61 72  f "GMT" on Solar
2c260 69 73 20 61 6e 64 20 57 69 6e 64 6f 77 73 2e 0a  is and Windows..
2c270 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66 69  .1/28/98 (bug fi
2c280 78 29 20 52 65 73 74 6f 72 65 20 74 74 79 20 73  x) Restore tty s
2c290 65 74 74 69 6e 67 73 20 77 68 65 6e 20 63 6c 6f  ettings when clo
2c2a0 73 69 6e 67 20 73 65 72 69 61 6c 20 64 65 76 69  sing serial devi
2c2b0 63 65 20 6f 6e 20 55 6e 69 78 2e 0a 54 68 69 73  ce on Unix..This
2c2c0 20 69 73 20 67 6f 6f 64 20 62 65 68 61 76 69 6f   is good behavio
2c2d0 72 20 77 68 65 6e 20 63 6c 6f 73 69 6e 67 20 72  r when closing r
2c2e0 65 61 6c 20 73 65 72 69 61 6c 20 64 65 76 69 63  eal serial devic
2c2f0 65 73 2c 20 65 73 73 65 6e 74 69 61 6c 20 77 68  es, essential wh
2c300 65 6e 0a 63 6c 6f 73 69 6e 67 20 74 68 65 20 70  en.closing the p
2c310 73 65 75 64 6f 2d 64 65 76 69 63 65 20 2f 64 65  seudo-device /de
2c320 76 2f 74 74 79 20 62 65 63 61 75 73 65 20 74 68  v/tty because th
2c330 65 20 75 73 65 72 27 73 20 74 65 72 6d 69 6e 61  e user's termina
2c340 6c 20 73 65 74 74 69 6e 67 73 0a 77 6f 75 6c 64  l settings.would
2c350 20 62 65 20 6c 65 66 74 20 75 73 65 6c 65 73 73   be left useless
2c360 2c 20 69 6e 20 72 61 77 20 6d 6f 64 65 2c 20 77  , in raw mode, w
2c370 68 65 6e 20 74 63 6c 20 71 75 69 74 2e 20 28 43  hen tcl quit. (C
2c380 43 53 29 0a 0a 31 2f 32 38 2f 39 38 20 28 62 75  CS)..1/28/98 (bu
2c390 67 20 66 69 78 29 20 54 63 6c 5f 4f 70 65 6e 43  g fix) Tcl_OpenC
2c3a0 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29 20  ommandChannel() 
2c3b0 77 61 73 20 6d 6f 64 69 66 79 69 6e 67 20 74 68  was modifying th
2c3c0 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68  e contents of th
2c3d0 65 0a 61 72 67 76 20 61 72 72 61 79 20 70 61 73  e.argv array pas
2c3e0 73 65 64 20 74 6f 20 69 74 2c 20 63 61 75 73 69  sed to it, causi
2c3f0 6e 67 20 70 72 6f 62 6c 65 6d 73 20 66 6f 72 20  ng problems for 
2c400 61 6e 79 20 63 61 6c 6c 65 72 20 74 68 61 74 20  any caller that 
2c410 77 61 6e 74 65 64 20 74 6f 0a 63 6f 6e 74 69 6e  wanted to.contin
2c420 75 65 20 74 6f 20 75 73 65 20 74 68 65 20 61 72  ue to use the ar
2c430 67 76 20 61 72 72 61 79 20 61 66 74 65 72 20 63  gv array after c
2c440 61 6c 6c 69 6e 67 20 54 63 6c 5f 4f 70 65 6e 43  alling Tcl_OpenC
2c450 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29 2e  ommandChannel().
2c460 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20 28   (CCS)..2/1/98 (
2c470 62 75 67 20 66 69 78 29 20 4d 6f 72 65 20 62 75  bug fix) More bu
2c480 67 73 20 77 69 74 68 20 25 5a 20 69 6e 20 66 6f  gs with %Z in fo
2c490 72 6d 61 74 20 73 74 72 69 6e 67 20 61 72 67 75  rmat string argu
2c4a0 6d 65 6e 74 20 74 6f 20 73 74 72 66 74 69 6d 65  ment to strftime
2c4b0 28 29 3a 0a 31 2e 20 42 6f 72 6c 61 6e 64 20 61  ():.1. Borland a
2c4c0 6c 77 61 79 73 20 72 65 74 75 72 6e 65 64 20 65  lways returned e
2c4d0 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 32 2e 20  mpty string..2. 
2c4e0 4d 53 56 43 20 61 6c 77 61 79 73 20 72 65 74 75  MSVC always retu
2c4f0 72 6e 65 64 20 74 68 65 20 74 69 6d 65 7a 6f 6e  rned the timezon
2c500 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68 65  e string for the
2c510 20 63 75 72 72 65 6e 74 20 74 69 6d 65 2c 20 6e   current time, n
2c520 6f 74 20 74 68 65 0a 20 20 20 74 69 6d 65 7a 6f  ot the.   timezo
2c530 6e 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68  ne string for th
2c540 65 20 73 70 65 63 69 66 69 65 64 20 74 69 6d 65  e specified time
2c550 2e 20 20 0a 33 2e 20 57 69 74 68 20 4d 53 56 43  .  .3. With MSVC
2c560 2c 20 22 63 6c 6f 63 6b 20 66 6f 72 6d 61 74 20  , "clock format 
2c570 30 20 2d 66 6f 72 6d 61 74 20 25 5a 20 2d 67 6d  0 -format %Z -gm
2c580 74 20 31 22 20 77 6f 75 6c 64 20 72 65 74 75 72  t 1" would retur
2c590 6e 20 22 47 4d 54 22 20 74 68 65 20 66 69 72 73  n "GMT" the firs
2c5a0 74 0a 20 20 20 74 69 6d 65 20 69 74 20 77 61 73  t.   time it was
2c5b0 20 63 61 6c 6c 65 64 2c 20 62 75 74 20 77 6f 75   called, but wou
2c5c0 6c 64 20 72 65 74 75 72 6e 20 74 68 65 20 63 75  ld return the cu
2c5d0 72 72 65 6e 74 20 74 69 6d 65 7a 6f 6e 65 20 73  rrent timezone s
2c5e0 74 72 69 6e 67 20 6f 6e 20 61 6c 6c 0a 20 20 20  tring on all.   
2c5f0 73 75 62 73 65 71 75 65 6e 74 20 63 61 6c 6c 73  subsequent calls
2c600 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20  . (CCS)..2/1/98 
2c610 28 62 75 67 20 66 69 78 29 20 22 66 69 6c 65 20  (bug fix) "file 
2c620 73 74 61 74 22 20 77 61 73 20 62 72 6f 6b 65 6e  stat" was broken
2c630 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 0a 31 2e 20   on Windows..1. 
2c640 22 66 69 6c 65 20 73 74 61 74 22 20 6f 66 20 61  "file stat" of a
2c650 20 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 20   root directory 
2c660 28 6c 6f 63 61 6c 20 6f 72 20 6e 65 74 77 6f 72  (local or networ
2c670 6b 29 20 6f 72 20 61 20 72 65 6c 61 74 69 76 65  k) or a relative
2c680 20 70 61 74 68 20 74 68 61 74 0a 20 20 20 72 65   path that.   re
2c690 73 6f 6c 76 65 64 20 74 6f 20 61 20 72 6f 6f 74  solved to a root
2c6a0 20 64 69 72 65 63 74 6f 72 79 20 28 63 3a 2e 20   directory (c:. 
2c6b0 77 68 65 6e 20 69 6e 20 70 77 64 20 77 61 73 20  when in pwd was 
2c6c0 63 3a 2f 29 20 77 61 73 20 72 65 74 75 72 6e 69  c:/) was returni
2c6d0 6e 67 20 65 72 72 6f 72 2e 0a 32 2e 20 22 66 69  ng error..2. "fi
2c6e0 6c 65 20 73 74 61 74 22 20 6f 6e 20 61 20 72 65  le stat" on a re
2c6f0 67 75 6c 61 72 20 66 69 6c 65 20 28 53 5f 49 46  gular file (S_IF
2c700 52 45 47 29 2c 20 74 68 65 20 73 74 5f 6d 6f 64  REG), the st_mod
2c710 65 20 77 61 73 20 73 69 67 6e 20 65 78 74 65 6e  e was sign exten
2c720 64 65 64 20 74 6f 0a 20 20 20 61 20 6e 65 67 61  ded to.   a nega
2c730 74 69 76 65 20 69 6e 74 20 69 66 20 74 68 65 20  tive int if the 
2c740 70 6c 61 74 66 6f 72 6d 2d 64 65 70 65 6e 64 61  platform-dependa
2c750 6e 74 20 74 79 70 65 20 22 6d 6f 64 65 5f 74 22  nt type "mode_t"
2c760 20 77 61 73 20 64 65 63 6c 61 72 65 64 20 61 73   was declared as
2c770 20 61 0a 20 20 20 73 68 6f 72 74 20 69 6e 73 74   a.   short inst
2c780 65 61 64 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e  ead of an unsign
2c790 65 64 20 73 68 6f 72 74 2e 0a 33 2e 20 22 66 69  ed short..3. "fi
2c7a0 6c 65 20 73 74 61 74 22 20 6f 66 20 61 20 6e 65  le stat" of a ne
2c7b0 74 77 6f 72 6b 20 64 69 72 65 63 74 6f 72 79 2c  twork directory,
2c7c0 20 74 68 65 20 73 74 5f 64 65 76 20 77 61 73 20   the st_dev was 
2c7d0 69 6e 63 6f 72 72 65 63 74 6c 79 20 72 65 70 6f  incorrectly repo
2c7e0 72 74 65 64 0a 20 20 20 61 73 20 74 68 65 20 69  rted.   as the i
2c7f0 64 20 6f 66 20 74 68 65 20 6c 61 73 74 20 61 63  d of the last ac
2c800 63 65 73 73 65 64 20 6c 6f 63 61 6c 20 64 72 69  cessed local dri
2c810 76 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 74  ve rather than t
2c820 68 65 20 69 64 20 6f 66 20 74 68 65 0a 20 20 20  he id of the.   
2c830 6e 65 74 77 6f 72 6b 20 64 72 69 76 65 2e 20 28  network drive. (
2c840 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20 28 62 75  CCS)..2/1/98 (bu
2c850 67 20 66 69 78 29 20 22 66 69 6c 65 20 61 74 74  g fix) "file att
2c860 72 69 62 75 74 65 73 22 20 6f 66 20 61 20 72 65  ributes" of a re
2c870 6c 61 74 69 76 65 20 70 61 74 68 20 74 68 61 74  lative path that
2c880 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 61 0a 72   resolved to a.r
2c890 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 20 77 61  oot directory wa
2c8a0 73 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f  s returning erro
2c8b0 72 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38  r. (CCS)..2/1/98
2c8c0 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67   (bug fix) Chang
2c8d0 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20  e error message 
2c8e0 77 68 65 6e 20 22 66 69 6c 65 20 61 74 74 72 69  when "file attri
2c8f0 62 75 74 65 22 20 63 6f 75 6c 64 20 6e 6f 74 0a  bute" could not.
2c900 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 61 74  determine the at
2c910 74 72 69 62 75 74 65 73 20 66 6f 72 20 61 20 66  tributes for a f
2c920 69 6c 65 2e 20 20 50 72 65 76 69 6f 75 73 6c 79  ile.  Previously
2c930 20 69 74 20 77 6f 75 6c 64 20 72 65 74 75 72 6e   it would return
2c940 20 64 69 66 66 65 72 65 6e 74 0a 65 72 72 6f 72   different.error
2c950 20 6d 65 73 73 61 67 65 73 20 6f 6e 20 55 6e 69   messages on Uni
2c960 78 20 76 73 2e 20 20 57 69 6e 64 6f 77 73 20 76  x vs.  Windows v
2c970 73 2e 20 4d 61 63 2e 20 28 43 43 53 29 0a 0a 32  s. Mac. (CCS)..2
2c980 2f 34 2f 39 38 20 28 62 75 67 20 66 69 78 65 73  /4/98 (bug fixes
2c990 29 20 46 69 78 65 64 20 73 65 76 65 72 61 6c 20  ) Fixed several 
2c9a0 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 62 75 67  instances of bug
2c9b0 73 20 77 68 65 72 65 20 74 68 65 20 70 61 72 73  s where the pars
2c9c0 65 72 2f 63 6f 6d 70 69 6c 65 72 20 0a 77 6f 75  er/compiler .wou
2c9d0 6c 64 20 72 65 61 63 68 20 6f 75 74 73 69 64 65  ld reach outside
2c9e0 20 74 68 65 20 72 61 6e 67 65 20 6f 66 20 61 6c   the range of al
2c9f0 6c 6f 63 61 74 65 64 20 6d 65 6d 6f 72 79 2e 20  located memory. 
2ca00 49 6d 70 72 6f 76 65 64 20 74 68 65 20 61 72 72  Improved the arr
2ca10 61 79 0a 6c 6f 6f 6b 75 70 20 61 6c 67 6f 72 69  ay.lookup algori
2ca20 74 68 6d 20 69 6e 20 73 65 74 20 63 6f 6d 70 69  thm in set compi
2ca30 6c 61 74 69 6f 6e 2e 20 28 44 4c 29 0a 0a 32 2f  lation. (DL)..2/
2ca40 35 2f 39 38 20 28 63 68 61 6e 67 65 29 20 54 68  5/98 (change) Th
2ca50 65 20 54 43 4c 5f 50 41 52 53 45 5f 50 41 52 54  e TCL_PARSE_PART
2ca60 31 20 66 6c 61 67 20 66 6f 72 20 53 65 74 2f 47  1 flag for Set/G
2ca70 65 74 28 4f 62 6a 29 56 61 72 32 20 43 20 41 50  et(Obj)Var2 C AP
2ca80 49 73 20 69 73 20 6e 6f 77 0a 64 65 70 72 65 63  Is is now.deprec
2ca90 61 74 65 64 20 61 6e 64 20 69 67 6e 6f 72 65 64  ated and ignored
2caa0 2e 20 54 68 65 20 70 61 72 74 31 20 69 73 20 61  . The part1 is a
2cab0 6c 77 61 79 73 20 70 61 72 73 65 64 20 77 68 65  lways parsed whe
2cac0 6e 20 74 68 65 20 70 61 72 74 32 20 61 72 67 75  n the part2 argu
2cad0 6d 65 6e 74 0a 69 73 20 4e 55 4c 4c 2e 20 54 68  ment.is NULL. Th
2cae0 69 73 20 69 73 20 74 6f 20 61 76 6f 69 64 20 61  is is to avoid a
2caf0 20 70 61 74 74 65 72 6e 20 6f 66 20 65 72 72 6f   pattern of erro
2cb00 72 73 20 66 6f 72 20 65 78 74 65 6e 73 69 6f 6e  rs for extension
2cb10 20 77 72 69 74 65 72 73 20 63 6f 6e 76 65 72 74   writers convert
2cb20 69 6e 67 0a 66 72 6f 6d 20 73 74 72 69 6e 67 20  ing.from string 
2cb30 62 61 73 65 64 20 54 63 6c 5f 53 65 74 56 61 72  based Tcl_SetVar
2cb40 28 29 20 74 6f 20 6e 65 77 20 54 63 6c 5f 53 65  () to new Tcl_Se
2cb50 74 4f 62 6a 56 61 72 32 28 29 20 61 6e 64 20 77  tObjVar2() and w
2cb60 68 6f 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 0a  ho could easily.
2cb70 66 6f 72 67 65 74 20 74 6f 20 70 72 6f 76 69 64  forget to provid
2cb80 65 20 74 68 65 20 66 6c 61 67 20 61 6e 64 20 74  e the flag and t
2cb90 68 75 73 20 67 65 74 20 63 6f 64 65 20 77 6f 72  hus get code wor
2cba0 6b 69 6e 67 20 66 6f 72 20 6e 6f 72 6d 61 6c 20  king for normal 
2cbb0 76 61 72 69 61 62 6c 65 73 20 0a 62 75 74 20 6e  variables .but n
2cbc0 6f 74 20 66 6f 72 20 61 72 72 61 79 20 65 6c 65  ot for array ele
2cbd0 6d 65 6e 74 73 2e 20 54 68 65 20 70 65 72 66 6f  ments. The perfo
2cbe0 72 6d 61 6e 63 65 20 68 69 74 20 69 73 20 6d 69  rmance hit is mi
2cbf0 6e 69 6d 61 6c 2e 20 41 20 73 69 64 65 20 65 66  nimal. A side ef
2cc00 66 65 63 74 0a 6f 66 20 74 68 61 74 20 63 68 61  fect.of that cha
2cc10 6e 67 65 20 69 73 20 74 68 61 74 20 69 73 20 69  nge is that is i
2cc20 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 70 6f 73 73  s no longer poss
2cc30 69 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20 73  ible to create s
2cc40 63 61 6c 61 72 20 76 61 72 69 61 62 6c 65 73 0a  calar variables.
2cc50 74 68 61 74 20 63 61 6e 27 74 20 62 65 20 61 63  that can't be ac
2cc60 63 65 73 73 65 64 20 62 79 20 74 63 6c 20 73 63  cessed by tcl sc
2cc70 72 69 70 74 73 20 62 65 63 61 75 73 65 20 6f 66  ripts because of
2cc80 20 74 68 65 69 72 20 69 6e 76 61 6c 69 64 20 6e   their invalid n
2cc90 61 6d 65 20 0a 28 65 6e 64 69 6e 67 20 77 69 74  ame .(ending wit
2cca0 68 20 70 61 72 65 6e 74 68 65 73 69 73 29 2e 20  h parenthesis). 
2ccb0 4c 69 6b 65 77 69 73 65 20 69 74 20 69 73 20 61  Likewise it is a
2ccc0 6c 73 6f 20 70 61 72 73 65 64 20 61 6e 64 20 63  lso parsed and c
2ccd0 68 65 63 6b 65 64 20 74 6f 20 0a 65 6e 73 75 72  hecked to .ensur
2cce0 65 20 74 68 61 74 20 79 6f 75 20 64 6f 6e 27 74  e that you don't
2ccf0 20 63 72 65 61 74 65 20 61 72 72 61 79 20 65 6c   create array el
2cd00 65 6d 65 6e 74 73 20 6f 66 20 61 72 72 61 79 20  ements of array 
2cd10 77 68 6f 73 65 20 6e 61 6d 65 20 69 73 20 61 20  whose name is a 
2cd20 76 61 6c 69 64 20 0a 61 72 72 61 79 20 65 6c 65  valid .array ele
2cd30 6d 65 6e 74 20 62 65 63 61 75 73 65 20 74 68 65  ment because the
2cd40 79 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20 61  y would not be a
2cd50 63 63 65 73 73 69 62 6c 65 20 66 72 6f 6d 20 73  ccessible from s
2cd60 63 72 69 70 74 73 20 61 6e 79 77 61 79 2e 20 0a  cripts anyway. .
2cd70 4e 6f 74 65 3a 20 54 68 65 72 65 20 69 73 20 73  Note: There is s
2cd80 74 69 6c 6c 20 64 75 70 6c 69 63 61 74 65 20 61  till duplicate a
2cd90 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 70 61  rray elements pa
2cda0 72 73 69 6e 67 20 63 6f 64 65 2e 20 28 44 4c 29  rsing code. (DL)
2cdb0 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
2cdc0 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
2cdd0 2a 2a 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75 67  **..2/11/98 (bug
2cde0 20 66 69 78 29 20 53 68 61 72 69 6e 67 20 6f 62   fix) Sharing ob
2cdf0 6a 65 63 74 73 20 62 65 74 77 65 65 6e 20 69 6e  jects between in
2ce00 74 65 72 70 73 2c 20 73 75 63 68 20 61 73 20 62  terps, such as b
2ce10 79 20 22 69 6e 74 65 72 70 0a 65 76 61 6c 22 20  y "interp.eval" 
2ce20 6f 72 20 22 73 65 6e 64 22 20 63 6f 75 6c 64 20  or "send" could 
2ce30 63 61 75 73 65 20 61 20 63 72 61 73 68 20 6c 61  cause a crash la
2ce40 74 65 72 20 77 68 65 6e 20 64 65 72 65 66 65 72  ter when derefer
2ce50 65 6e 63 69 6e 67 20 61 6e 20 69 6e 74 65 72 70  encing an interp
2ce60 0a 74 68 61 74 20 68 61 64 20 62 65 65 6e 20 64  .that had been d
2ce70 65 6c 65 74 65 64 2c 20 67 69 76 65 6e 20 63 6f  eleted, given co
2ce80 64 65 20 73 75 63 68 20 61 73 3a 0a 09 73 65 74  de such as:..set
2ce90 20 61 20 7b 73 65 74 20 78 20 79 7d 0a 09 69 6e   a {set x y}..in
2cea0 74 65 72 70 20 63 72 65 61 74 65 20 66 6f 6f 0a  terp create foo.
2ceb0 09 69 6e 74 65 72 70 20 65 76 61 6c 20 66 6f 6f  .interp eval foo
2cec0 20 24 61 0a 09 69 6e 74 65 72 70 20 64 65 6c 65   $a..interp dele
2ced0 74 65 20 66 6f 6f 0a 09 75 6e 73 65 74 20 61 0a  te foo..unset a.
2cee0 49 6e 74 65 72 70 20 22 66 6f 6f 22 20 77 61 73  Interp "foo" was
2cef0 20 67 6f 6e 65 2c 20 62 75 74 20 22 61 22 20 68   gone, but "a" h
2cf00 61 64 20 61 20 69 6e 74 65 72 6e 61 6c 20 72 65  ad a internal re
2cf10 70 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20  p consisting of 
2cf20 62 79 74 65 63 6f 64 65 73 0a 63 6f 6e 74 61 69  bytecodes.contai
2cf30 6e 69 6e 67 20 61 20 64 61 6e 67 6c 69 6e 67 20  ning a dangling 
2cf40 70 6f 69 6e 74 65 72 20 74 6f 20 22 66 6f 6f 22  pointer to "foo"
2cf50 2e 20 20 55 6e 73 65 74 74 69 6e 67 20 22 61 22  .  Unsetting "a"
2cf60 20 77 6f 75 6c 64 20 61 74 74 65 6d 70 74 20 74   would attempt t
2cf70 6f 0a 72 65 74 75 72 6e 20 72 65 73 6f 75 72 63  o.return resourc
2cf80 65 73 20 62 61 63 6b 20 74 6f 20 22 66 6f 6f 22  es back to "foo"
2cf90 2c 20 63 61 75 73 69 6e 67 20 61 20 63 72 61 73  , causing a cras
2cfa0 68 20 61 73 20 72 61 6e 64 6f 6d 20 6d 65 6d 6f  h as random memo
2cfb0 72 79 20 77 61 73 0a 61 63 63 65 73 73 65 64 2e  ry was.accessed.
2cfc0 20 20 54 68 65 20 6c 65 73 73 6f 6e 20 69 73 20    The lesson is 
2cfd0 74 68 61 74 20 74 68 61 74 20 69 66 20 61 6e 20  that that if an 
2cfe0 6f 62 6a 65 63 74 27 73 20 69 6e 74 65 72 6e 61  object's interna
2cff0 6c 20 72 65 70 20 64 65 70 65 6e 64 73 20 6f 6e  l rep depends on
2d000 0a 61 6e 20 69 6e 74 65 72 70 20 28 6f 72 20 61  .an interp (or a
2d010 6e 79 20 6f 74 68 65 72 20 64 61 74 61 20 73 74  ny other data st
2d020 72 75 63 74 75 72 65 29 20 69 74 20 6d 75 73 74  ructure) it must
2d030 20 70 72 65 73 65 72 76 65 20 74 68 61 74 20 64   preserve that d
2d040 61 74 61 20 69 6e 0a 73 6f 6d 65 20 66 61 73 68  ata in.some fash
2d050 69 6f 6e 2e 20 28 43 43 53 29 0a 0a 32 2f 31 31  ion. (CCS)..2/11
2d060 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /98 (enhancement
2d070 29 20 54 68 65 20 22 69 6e 74 65 72 70 22 20 63  ) The "interp" c
2d080 6f 6d 6d 61 6e 64 20 77 61 73 20 72 65 74 75 72  ommand was retur
2d090 6e 69 6e 67 20 69 6e 63 6f 6e 73 69 73 74 65 6e  ning inconsisten
2d0a0 74 20 65 72 72 6f 72 0a 6d 65 73 73 61 67 65 73  t error.messages
2d0b0 20 77 68 65 6e 20 74 68 65 20 73 70 65 63 69 66   when the specif
2d0c0 69 65 64 20 73 6c 61 76 65 20 69 6e 74 65 72 70  ied slave interp
2d0d0 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f   could not be fo
2d0e0 75 6e 64 2e 20 28 43 43 53 29 0a 0a 32 2f 31 31  und. (CCS)..2/11
2d0f0 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 52 65  /98 (bug fix) Re
2d100 73 75 6c 74 20 63 6f 64 65 73 20 6c 69 6b 65 20  sult codes like 
2d110 54 43 4c 5f 42 52 45 41 4b 20 61 6e 64 20 54 43  TCL_BREAK and TC
2d120 4c 5f 43 4f 4e 54 49 4e 55 45 20 77 65 72 65 20  L_CONTINUE were 
2d130 6e 6f 74 0a 70 72 6f 70 61 67 61 74 69 6e 67 20  not.propagating 
2d140 74 68 72 6f 75 67 68 20 74 68 65 20 6d 61 73 74  through the mast
2d150 65 72 2f 73 6c 61 76 65 20 69 6e 74 65 72 70 20  er/slave interp 
2d160 62 6f 75 6e 64 61 72 69 65 73 2c 20 73 75 63 68  boundaries, such
2d170 20 61 73 20 22 69 6e 74 65 72 70 0a 65 76 61 6c   as "interp.eval
2d180 22 20 61 6e 64 20 22 69 6e 74 65 72 70 20 61 6c  " and "interp al
2d190 69 61 73 22 2e 20 20 54 43 4c 5f 4f 4b 2c 20 54  ias".  TCL_OK, T
2d1a0 43 4c 5f 45 52 52 4f 52 2c 20 61 6e 64 20 6e 6f  CL_ERROR, and no
2d1b0 6e 2d 73 74 61 6e 64 61 72 64 20 63 6f 64 65 73  n-standard codes
2d1c0 20 6c 69 6b 65 0a 74 65 68 20 69 6e 74 65 67 65   like.teh intege
2d1d0 72 20 35 37 20 77 6f 72 6b 2e 20 20 54 68 65 72  r 57 work.  Ther
2d1e0 65 20 69 73 20 73 74 69 6c 6c 20 61 20 71 75 65  e is still a que
2d1f0 73 74 69 6f 6e 20 61 73 20 74 6f 20 77 68 65 74  stion as to whet
2d200 68 65 72 20 54 43 4c 5f 52 45 54 55 52 4e 0a 63  her TCL_RETURN.c
2d210 61 6e 2f 73 68 6f 75 6c 64 20 70 72 6f 70 61 67  an/should propag
2d220 61 74 65 2e 20 28 43 43 53 29 0a 0a 32 2f 31 31  ate. (CCS)..2/11
2d230 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54 63  /98 (bug fix) Tc
2d240 6c 43 6f 6d 70 69 6c 65 53 63 72 69 70 74 28 29  lCompileScript()
2d250 20 77 61 73 20 64 65 72 65 66 65 72 69 6e 67 20   was derefering 
2d260 6d 65 6d 6f 72 79 20 31 20 62 79 74 65 20 62 65  memory 1 byte be
2d270 66 6f 72 65 0a 73 74 61 72 74 20 6f 66 20 74 68  fore.start of th
2d280 65 20 73 74 72 69 6e 67 20 74 6f 20 63 6f 6d 70  e string to comp
2d290 69 6c 65 2c 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72  ile, looking for
2d2a0 20 27 5d 27 2e 20 28 43 43 53 2c 44 4c 29 0a 0a   ']'. (CCS,DL)..
2d2b0 32 2f 31 31 2f 39 38 20 28 62 75 67 20 66 69 78  2/11/98 (bug fix
2d2c0 29 20 54 63 6c 5f 45 76 61 6c 32 28 29 20 77 61  ) Tcl_Eval2() wa
2d2d0 73 20 64 65 72 65 66 65 72 69 6e 67 20 6d 65 6d  s derefering mem
2d2e0 6f 72 79 20 31 20 62 79 74 65 20 62 65 66 6f 72  ory 1 byte befor
2d2f0 65 20 73 74 61 72 74 0a 6f 66 20 74 68 65 20 73  e start.of the s
2d300 74 72 69 6e 67 20 74 6f 20 65 76 61 6c 2c 20 6c  tring to eval, l
2d310 6f 6f 6b 69 6e 67 20 66 6f 72 20 27 5d 27 2e 20  ooking for ']'. 
2d320 28 43 43 53 2c 44 4c 29 0a 0a 32 2f 31 31 2f 39  (CCS,DL)..2/11/9
2d330 38 20 28 62 75 67 20 66 69 78 29 20 43 6f 6d 70  8 (bug fix) Comp
2d340 69 6c 69 6e 67 20 22 73 65 74 20 61 28 62 22 20  iling "set a(b" 
2d350 77 61 73 20 72 75 6e 6e 69 6e 67 20 6f 66 66 20  was running off 
2d360 65 6e 64 20 6f 66 20 73 74 72 69 6e 67 2e 20 28  end of string. (
2d370 43 43 53 2c 44 4c 29 0a 0a 32 2f 31 31 2f 39 38  CCS,DL)..2/11/98
2d380 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64 6f   (bug fix) Windo
2d390 77 73 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  ws initializatio
2d3a0 6e 20 63 6f 64 65 20 77 61 73 20 64 65 72 65 66  n code was deref
2d3b0 65 72 65 6e 63 69 6e 67 0a 75 6e 69 6e 69 74 69  erencing.uniniti
2d3c0 61 6c 69 7a 65 64 20 6d 65 6d 6f 72 79 20 69 66  alized memory if
2d3d0 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 65 6e 76   TCL_LIBRARY env
2d3e0 69 72 6f 6e 6d 65 6e 74 20 64 69 64 6e 27 74 20  ironment didn't 
2d3f0 65 78 69 73 74 2e 20 28 43 43 53 29 0a 0a 32 2f  exist. (CCS)..2/
2d400 31 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  11/98 (bug fix) 
2d410 57 69 6e 64 6f 77 73 20 22 72 65 67 69 73 74 72  Windows "registr
2d420 79 22 20 63 6f 6d 6d 61 6e 64 20 77 61 73 20 64  y" command was d
2d430 65 72 65 66 65 72 65 6e 63 69 6e 67 0a 75 6e 69  ereferencing.uni
2d440 6e 69 74 69 61 6c 69 7a 65 64 20 6d 65 6d 6f 72  nitialized memor
2d450 79 20 77 68 65 6e 20 63 6f 6e 73 74 72 75 63 74  y when construct
2d460 69 6e 67 20 74 68 65 20 24 65 72 72 6f 72 43 6f  ing the $errorCo
2d470 64 65 20 66 6f 72 20 61 20 66 61 69 6c 65 64 0a  de for a failed.
2d480 72 65 67 69 73 74 72 79 20 63 61 6c 6c 2e 20 28  registry call. (
2d490 43 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28 65  CCS)..2/11/98 (e
2d4a0 6e 68 61 6e 63 65 6d 65 6e 74 29 20 45 6c 69 6d  nhancement) Elim
2d4b0 69 6e 61 74 65 20 74 68 65 20 54 43 4c 5f 55 53  inate the TCL_US
2d4c0 45 5f 54 49 4d 45 5a 4f 4e 45 5f 56 41 52 20 64  E_TIMEZONE_VAR d
2d4d0 65 66 69 6e 69 74 69 6f 6e 20 66 72 6f 6d 0a 63  efinition from.c
2d4e0 6f 6e 66 69 67 75 72 65 2e 69 6e 2c 20 62 65 63  onfigure.in, bec
2d4f0 61 75 73 65 20 69 74 20 77 61 73 20 74 68 65 20  ause it was the 
2d500 73 61 6d 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  same information
2d510 20 61 73 20 74 68 65 20 61 6c 72 65 61 64 79 20   as the already 
2d520 65 78 69 73 74 69 6e 67 0a 48 41 56 45 5f 54 4d  existing.HAVE_TM
2d530 5f 5a 4f 4e 45 20 64 65 66 69 6e 69 74 69 6f 6e  _ZONE definition
2d540 2e 20 20 54 68 65 20 6c 61 63 6b 20 6f 66 20 48  .  The lack of H
2d550 41 56 45 5f 54 4d 5f 5a 4f 4e 45 20 69 73 20 75  AVE_TM_ZONE is u
2d560 73 65 64 20 74 6f 20 77 6f 72 6b 20 61 72 6f 75  sed to work arou
2d570 6e 64 20 61 0a 53 6f 6c 61 72 69 73 20 61 6e 64  nd a.Solaris and
2d580 20 57 69 6e 64 6f 77 73 20 62 75 67 20 77 68 65   Windows bug whe
2d590 72 65 20 22 63 6c 6f 63 6b 20 66 6f 72 6d 61 74  re "clock format
2d5a0 20 5b 63 6c 6f 63 6b 20 73 65 63 5d 20 2d 66 6f   [clock sec] -fo
2d5b0 72 6d 61 74 20 25 5a 20 2d 67 6d 74 20 31 22 20  rmat %Z -gmt 1" 
2d5c0 0a 70 72 6f 64 75 63 65 73 20 74 68 65 20 6c 6f  .produces the lo
2d5d0 63 61 6c 20 74 69 6d 65 7a 6f 6e 65 20 73 74 72  cal timezone str
2d5e0 69 6e 67 20 69 6e 73 74 65 61 64 20 6f 66 20 22  ing instead of "
2d5f0 47 4d 54 22 2e 20 28 43 43 53 29 0a 0a 32 2f 31  GMT". (CCS)..2/1
2d600 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 4d  1/98 (bug fix) M
2d610 65 6d 6c 65 61 6b 73 20 61 6e 64 20 64 65 72 65  emleaks and dere
2d620 66 65 72 65 6e 63 69 6e 67 20 6f 66 20 75 6e 69  ferencing of uni
2d630 6e 69 74 69 61 6c 69 7a 65 64 20 6d 65 6d 6f 72  nitialized memor
2d640 79 20 69 6e 0a 72 65 67 65 78 70 20 69 66 20 61  y in.regexp if a
2d650 6e 20 65 72 72 6f 72 20 6f 63 63 75 72 72 65 64  n error occurred
2d660 20 77 68 69 6c 65 20 63 6f 6d 70 69 6c 69 6e 67   while compiling
2d670 20 61 20 72 65 67 75 6c 61 72 20 65 78 70 72 65   a regular expre
2d680 73 73 69 6f 6e 2e 20 28 43 43 53 29 2e 0a 0a 32  ssion. (CCS)...2
2d690 2f 31 38 2f 39 38 20 28 6e 65 77 20 66 65 61 74  /18/98 (new feat
2d6a0 75 72 65 29 20 41 64 64 65 64 20 6d 75 74 65 78  ure) Added mutex
2d6b0 65 73 20 61 6e 64 20 74 68 72 65 61 64 20 6c 6f  es and thread lo
2d6c0 63 61 6c 20 73 74 6f 72 61 67 65 20 69 6e 20 6f  cal storage in o
2d6d0 72 64 65 72 0a 74 6f 20 6d 61 6b 65 20 54 63 6c  rder.to make Tcl
2d6e0 20 74 68 72 65 61 64 20 73 61 66 65 2e 20 20 46   thread safe.  F
2d6f0 6f 72 20 74 65 73 74 69 6e 67 20 70 75 72 70 6f  or testing purpo
2d700 73 65 73 2c 20 74 68 65 72 65 20 69 73 20 61 20  ses, there is a 
2d710 74 65 73 74 74 68 72 65 61 64 0a 63 6f 6d 6d 61  testthread.comma
2d720 6e 64 20 74 68 61 74 20 63 72 65 61 74 65 73 20  nd that creates 
2d730 61 20 6e 65 77 20 74 68 72 65 61 64 20 61 6e 64  a new thread and
2d740 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20   an interpreter 
2d750 69 6e 73 69 64 65 20 69 74 2e 20 20 53 65 65 0a  inside it.  See.
2d760 74 68 72 65 61 64 2e 74 65 73 74 20 66 6f 72 20  thread.test for 
2d770 65 78 61 6d 70 6c 65 73 2c 20 62 75 74 20 74 68  examples, but th
2d780 69 73 20 73 63 72 69 70 74 2d 6c 65 76 65 6c 20  is script-level 
2d790 69 6e 74 65 72 66 61 63 65 20 69 73 20 6e 6f 74  interface is not
2d7a0 20 66 69 78 65 64 2e 0a 45 61 63 68 20 74 68 72   fixed..Each thr
2d7b0 65 61 64 20 68 61 73 20 69 74 73 20 6f 77 6e 20  ead has its own 
2d7c0 6e 6f 74 69 66 69 65 72 20 69 6e 73 74 61 6e 63  notifier instanc
2d7d0 65 20 74 6f 20 6d 61 6e 61 67 65 20 69 74 73 20  e to manage its 
2d7e0 6f 77 6e 20 65 76 65 6e 74 73 2c 0a 61 6e 64 20  own events,.and 
2d7f0 74 68 72 65 61 64 73 20 63 61 6e 20 70 6f 73 74  threads can post
2d800 20 6d 65 73 73 61 67 65 73 20 74 6f 20 65 61 63   messages to eac
2d810 68 20 6f 74 68 65 72 27 73 20 6d 65 73 73 61 67  h other's messag
2d820 65 20 71 75 65 75 65 2e 0a 54 68 69 73 20 75 73  e queue..This us
2d830 65 73 20 70 74 68 72 65 61 64 73 20 6f 6e 20 55  es pthreads on U
2d840 4e 49 58 2c 20 61 6e 64 20 6e 61 74 69 76 65 20  NIX, and native 
2d850 74 68 72 65 61 64 20 73 75 70 70 6f 72 74 20 6f  thread support o
2d860 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72 6d  n other platform
2d870 73 2e 0a 59 6f 75 20 65 6e 61 62 6c 65 20 74 68  s..You enable th
2d880 69 73 20 62 79 20 63 6f 6e 66 69 67 75 72 69 6e  is by configurin
2d890 67 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d  g with --enable-
2d8a0 74 68 72 65 61 64 73 2e 20 20 4e 6f 74 65 20 74  threads.  Note t
2d8b0 68 61 74 20 61 74 0a 74 68 69 73 20 74 69 6d 65  hat at.this time
2d8c0 20 2a 54 6b 2a 20 69 73 20 73 74 69 6c 6c 20 6e   *Tk* is still n
2d8d0 6f 74 20 74 68 72 65 61 64 20 73 61 66 65 2e 20  ot thread safe. 
2d8e0 53 70 65 63 69 61 6c 20 74 68 61 6e 6b 73 20 74  Special thanks t
2d8f0 6f 0a 52 69 63 68 61 72 64 20 48 69 70 70 3a 20  o.Richard Hipp: 
2d900 68 69 73 20 65 61 72 6c 69 65 72 20 69 6d 70 6c  his earlier impl
2d910 65 6d 65 6e 74 61 74 69 6f 6e 20 69 6e 73 70 69  ementation inspi
2d920 72 65 64 20 74 68 69 73 20 77 6f 72 6b 2e 20 28  red this work. (
2d930 42 57 2c 20 53 53 2c 20 4a 49 29 0a 0a 32 2f 31  BW, SS, JI)..2/1
2d940 38 2f 39 38 20 28 68 69 64 64 65 6e 20 66 65 61  8/98 (hidden fea
2d950 74 75 72 65 20 63 68 61 6e 67 65 29 20 54 68 65  ture change) The
2d960 20 77 61 79 20 74 68 65 20 65 6e 76 28 29 20 61   way the env() a
2d970 72 72 61 79 20 69 73 20 73 68 61 72 65 64 20 61  rray is shared a
2d980 6d 6f 6e 67 0a 69 6e 74 65 72 70 72 65 74 65 72  mong.interpreter
2d990 73 20 63 68 61 6e 67 65 64 2e 20 20 55 70 64 61  s changed.  Upda
2d9a0 74 65 73 20 74 6f 20 65 6e 76 20 75 73 65 64 20  tes to env used 
2d9b0 74 6f 20 74 72 69 67 67 65 72 20 77 72 69 74 65  to trigger write
2d9c0 20 74 72 61 63 65 73 20 69 6e 0a 6f 74 68 65 72   traces in.other
2d9d0 20 69 6e 74 65 72 70 72 65 74 65 72 73 2e 20 20   interpreters.  
2d9e0 54 68 69 73 20 75 6e 64 6f 63 75 6d 65 6e 74 65  This undocumente
2d9f0 64 20 66 65 61 74 75 72 65 20 69 73 20 6e 6f 20  d feature is no 
2da00 6c 6f 6e 67 65 72 20 69 6d 70 6c 65 6d 65 6e 74  longer implement
2da10 65 64 2e 0a 49 6e 73 74 65 61 64 2c 20 76 61 72  ed..Instead, var
2da20 69 61 62 6c 65 20 74 72 61 63 69 6e 67 20 69 73  iable tracing is
2da30 20 75 73 65 64 20 74 6f 20 6b 65 65 70 20 74 68   used to keep th
2da40 65 20 43 2d 6c 65 76 65 6c 20 65 6e 76 69 72 6f  e C-level enviro
2da50 6e 20 61 72 72 61 79 20 69 6e 20 73 79 6e 63 0a  n array in sync.
2da60 77 69 74 68 20 74 68 65 20 54 63 6c 2d 6c 65 76  with the Tcl-lev
2da70 65 6c 20 65 6e 76 20 61 72 72 61 79 2e 20 54 68  el env array. Th
2da80 69 73 20 72 65 71 75 69 72 65 64 20 61 64 64 69  is required addi
2da90 6e 67 20 54 43 4c 5f 54 52 41 43 45 5f 41 52 52  ng TCL_TRACE_ARR
2daa0 41 59 20 73 75 70 70 6f 72 74 0a 74 6f 20 54 63  AY support.to Tc
2dab0 6c 5f 54 72 61 63 65 56 61 72 32 20 73 6f 20 74  l_TraceVar2 so t
2dac0 68 61 74 20 61 72 72 61 79 20 6e 61 6d 65 73 20  hat array names 
2dad0 77 6f 72 6b 73 20 70 72 6f 70 65 72 6c 79 2e 20  works properly. 
2dae0 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  (BW).*** POTENTI
2daf0 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
2db00 54 59 20 2a 2a 2a 0a 0a 32 2f 31 38 2f 39 38 20  TY ***..2/18/98 
2db10 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 43 6f  (enhancement) Co
2db20 6e 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c  nditional compil
2db30 61 74 69 6f 6e 20 66 6f 72 20 75 6e 69 78 20 73  ation for unix s
2db40 79 73 74 65 6d 73 20 28 65 2e 67 2e 2c 0a 49 52  ystems (e.g.,.IR
2db50 49 58 2c 20 53 43 4f 29 20 74 68 61 74 20 75 73  IX, SCO) that us
2db60 65 20 66 5f 62 73 69 7a 65 20 69 6e 73 74 65 61  e f_bsize instea
2db70 64 20 6f 66 20 73 74 5f 62 6c 6b 73 69 7a 65 20  d of st_blksize 
2db80 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 64 69 73  to determine dis
2db90 6b 20 62 6c 6f 63 6b 0a 73 69 7a 65 2e 20 28 43  k block.size. (C
2dba0 43 53 29 0a 0a 32 2f 32 33 2f 39 38 20 28 62 75  CS)..2/23/98 (bu
2dbb0 67 20 66 69 78 29 20 46 69 78 65 64 20 74 68 65  g fix) Fixed the
2dbc0 20 65 6d 75 6c 61 74 69 6f 6e 20 6f 66 20 70 6f   emulation of po
2dbd0 6c 6c 69 6e 67 20 73 65 6c 65 63 74 73 20 69 6e  lling selects in
2dbe0 20 74 68 65 20 74 68 72 65 61 64 65 64 0a 76 65   the threaded.ve
2dbf0 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 55 6e 69  rsion of the Uni
2dc00 78 20 6e 6f 74 69 66 69 65 72 2e 20 20 54 68 65  x notifier.  The
2dc10 20 62 75 67 20 77 61 73 20 73 68 6f 77 69 6e 67   bug was showing
2dc20 20 75 70 20 6f 6e 20 61 20 6d 75 6c 74 69 70 72   up on a multipr
2dc30 6f 63 65 73 73 6f 72 0a 61 73 20 73 74 61 72 76  ocessor.as starv
2dc40 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 6e 6f 74  ation of the not
2dc50 69 66 69 65 72 20 74 68 72 65 61 64 2e 20 28 42  ifier thread. (B
2dc60 57 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  W)..------------
2dc70 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38  ----- Released 8
2dc80 2e 31 61 32 2c 20 46 65 62 20 32 33 20 31 39 39  .1a2, Feb 23 199
2dc90 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  8 --------------
2dca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32 32 2f  ---------..9/22/
2dcb0 39 38 20 28 62 75 67 20 66 69 78 29 20 43 68 61  98 (bug fix) Cha
2dcc0 6e 67 65 64 20 74 68 65 20 76 61 6c 75 65 20 6f  nged the value o
2dcd0 66 20 54 43 4c 5f 54 52 41 43 45 5f 41 52 52 41  f TCL_TRACE_ARRA
2dce0 59 20 73 6f 20 69 74 20 6e 6f 20 6c 6f 6e 67 65  Y so it no longe
2dcf0 72 0a 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68  r.conflicts with
2dd00 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64 20   the deprecated 
2dd10 54 43 4c 5f 50 41 52 53 45 5f 50 41 52 54 31 20  TCL_PARSE_PART1 
2dd20 66 6c 61 67 2e 20 20 54 68 69 73 20 73 68 6f 75  flag.  This shou
2dd30 6c 64 0a 69 6d 70 72 6f 76 65 20 70 6f 72 74 61  ld.improve porta
2dd40 62 69 6c 69 74 79 20 6f 66 20 43 20 63 6f 64 65  bility of C code
2dd50 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 30 2f  . (stanton)..10/
2dd60 36 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54  6/98 (bug fix) T
2dd70 68 65 20 63 6f 6d 70 69 6c 65 20 70 72 6f 63 65  he compile proce
2dd80 64 75 72 65 20 66 6f 72 20 22 69 66 22 20 69 6e  dure for "if" in
2dd90 63 6f 72 72 65 63 74 6c 79 20 61 74 74 65 6d 70  correctly attemp
2dda0 74 65 64 0a 74 6f 20 6d 61 74 63 68 20 61 67 61  ted.to match aga
2ddb0 69 6e 73 74 20 74 68 65 20 6c 69 74 65 72 61 6c  inst the literal
2ddc0 20 73 74 72 69 6e 67 20 22 69 66 22 2c 20 72 65   string "if", re
2ddd0 73 75 6c 74 69 6e 67 20 69 6e 20 61 20 73 74 61  sulting in a sta
2dde0 63 6b 0a 6f 76 65 72 66 6c 6f 77 20 77 68 65 6e  ck.overflow when
2ddf0 20 22 3a 3a 69 66 22 20 77 61 73 20 63 6f 6d 70   "::if" was comp
2de00 69 6c 65 64 2e 20 20 49 74 20 61 6c 73 6f 20 77  iled.  It also w
2de10 6f 75 6c 64 20 69 6e 63 6f 72 72 65 63 74 6c 79  ould incorrectly
2de20 20 61 63 63 65 70 74 0a 22 69 66 22 20 69 6e 73   accept."if" ins
2de30 74 65 61 64 20 6f 66 20 22 65 6c 73 69 66 22 20  tead of "elsif" 
2de40 69 6e 20 6c 61 74 65 72 20 63 6c 61 75 73 65 73  in later clauses
2de50 2e 20 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 30  .  (stanton)..10
2de60 2f 31 35 2f 39 38 20 28 6e 65 77 20 66 65 61 74  /15/98 (new feat
2de70 75 72 65 29 20 41 64 64 65 64 20 61 20 22 74 6f  ure) Added a "to
2de80 74 69 74 6c 65 22 20 73 75 62 63 6f 6d 6d 61 6e  title" subcomman
2de90 64 20 74 6f 20 74 68 65 20 22 73 74 72 69 6e 67  d to the "string
2dea0 22 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 63 6f 6e  ".command to con
2deb0 76 65 72 74 20 73 74 72 69 6e 67 73 20 74 6f 20  vert strings to 
2dec0 63 61 70 69 74 61 6c 69 7a 65 20 74 68 65 20 66  capitalize the f
2ded0 69 72 73 74 20 63 68 61 72 61 63 74 65 72 20 6f  irst character o
2dee0 66 20 61 20 73 74 72 69 6e 67 0a 61 6e 64 20 6c  f a string.and l
2def0 6f 77 65 72 63 61 73 65 20 61 6c 6c 20 6f 66 20  owercase all of 
2df00 74 68 65 20 6f 74 68 65 72 20 63 68 61 72 61 63  the other charac
2df10 74 65 72 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  ters. (stanton).
2df20 0a 31 30 2f 31 35 2f 39 38 20 28 62 75 67 20 66  .10/15/98 (bug f
2df30 69 78 29 20 43 68 61 6e 67 65 64 20 72 65 67 65  ix) Changed rege
2df40 78 70 20 61 6e 64 20 73 74 72 69 6e 67 20 63 6f  xp and string co
2df50 6d 6d 61 6e 64 73 20 74 6f 20 70 72 6f 70 65 72  mmands to proper
2df60 6c 79 0a 68 61 6e 64 6c 65 20 63 61 73 65 20 66  ly.handle case f
2df70 6f 6c 64 69 6e 67 20 61 63 63 6f 72 64 69 6e 67  olding according
2df80 20 74 6f 20 74 68 65 20 55 6e 69 63 6f 64 65 20   to the Unicode 
2df90 63 68 61 72 61 63 74 65 72 0a 74 61 62 6c 65 73  character.tables
2dfa0 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 30 2f  . (stanton)..10/
2dfb0 32 31 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75  21/98 (new featu
2dfc0 72 65 29 20 41 64 64 65 64 20 61 6e 20 22 65 6e  re) Added an "en
2dfd0 63 6f 64 69 6e 67 22 20 63 6f 6d 6d 61 6e 64 20  coding" command 
2dfe0 74 6f 20 66 61 63 69 6c 69 74 61 74 65 0a 74 72  to facilitate.tr
2dff0 61 6e 73 6c 61 74 69 6f 6e 73 20 6f 66 20 73 74  anslations of st
2e000 72 69 6e 67 73 20 62 65 74 77 65 65 6e 20 64 69  rings between di
2e010 66 66 65 72 65 6e 74 20 63 68 61 72 61 63 74 65  fferent characte
2e020 72 20 65 6e 63 6f 64 69 6e 67 73 2e 20 20 53 65  r encodings.  Se
2e030 65 0a 74 68 65 20 65 6e 63 6f 64 69 6e 67 2e 6e  e.the encoding.n
2e040 20 6d 61 6e 75 61 6c 20 65 6e 74 72 79 20 66 6f   manual entry fo
2e050 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 20  r more details. 
2e060 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 33 2f  (stanton)..11/3/
2e070 39 38 20 28 62 75 67 20 66 69 78 29 20 54 68 65  98 (bug fix) The
2e080 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
2e090 69 6f 6e 20 63 68 61 72 61 63 74 65 72 20 63 6c  ion character cl
2e0a0 61 73 73 69 66 69 63 61 74 69 6f 6e 0a 73 79 6e  assification.syn
2e0b0 74 61 78 20 6e 6f 77 20 69 6e 63 6c 75 64 65 73  tax now includes
2e0c0 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74   Unicode charact
2e0d0 65 72 73 20 69 6e 20 74 68 65 20 73 75 70 70 6f  ers in the suppo
2e0e0 72 74 65 64 0a 63 6c 61 73 73 65 73 2e 20 28 73  rted.classes. (s
2e0f0 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 36 2f 39 38  tanton)..11/6/98
2e100 20 28 62 75 67 20 66 69 78 29 20 56 61 72 69 61   (bug fix) Varia
2e110 62 6c 65 20 74 72 61 63 65 73 20 77 65 72 65 20  ble traces were 
2e120 63 61 75 73 69 6e 67 20 63 72 61 73 68 65 73 20  causing crashes 
2e130 77 68 65 6e 20 75 70 76 61 72 0a 76 61 72 69 61  when upvar.varia
2e140 62 6c 65 73 20 77 65 6e 74 20 6f 75 74 20 6f 66  bles went out of
2e150 20 73 63 6f 70 65 2e 20 5b 42 75 67 3a 20 37 39   scope. [Bug: 79
2e160 36 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31  6] (stanton)..11
2e170 2f 39 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  /9/98 (bug fix) 
2e180 22 66 6f 72 6d 61 74 22 20 6e 6f 77 20 63 6f 72  "format" now cor
2e190 72 65 63 74 6c 79 20 68 61 6e 64 6c 65 73 20 6d  rectly handles m
2e1a0 75 6c 74 69 62 79 74 65 20 63 68 61 72 61 63 74  ultibyte charact
2e1b0 65 72 73 0a 69 6e 20 25 73 20 66 6f 72 6d 61 74  ers.in %s format
2e1c0 20 73 74 72 69 6e 67 73 2e 20 28 73 74 61 6e 74   strings. (stant
2e1d0 6f 6e 29 0a 0a 31 31 2f 31 30 2f 39 38 20 28 6e  on)..11/10/98 (n
2e1e0 65 77 20 66 65 61 74 75 72 65 29 20 22 72 65 67  ew feature) "reg
2e1f0 65 78 70 22 20 6e 6f 77 20 61 63 63 65 70 74 73  exp" now accepts
2e200 20 74 68 72 65 65 20 6e 65 77 20 73 77 69 74 63   three new switc
2e210 68 65 73 0a 28 22 2d 6c 69 6e 65 22 2c 20 22 2d  hes.("-line", "-
2e220 6c 69 6e 65 61 6e 63 68 6f 72 22 2c 20 61 6e 64  lineanchor", and
2e230 20 22 2d 6c 69 6e 65 73 74 6f 70 22 29 20 74 68   "-linestop") th
2e240 61 74 20 63 6f 6e 74 72 6f 6c 20 68 6f 77 20 72  at control how r
2e250 65 67 75 6c 61 72 0a 65 78 70 72 65 73 73 69 6f  egular.expressio
2e260 6e 73 20 74 72 65 61 74 20 6c 69 6e 65 20 62 72  ns treat line br
2e270 65 61 6b 73 2e 20 53 65 65 20 74 68 65 20 72 65  eaks. See the re
2e280 67 65 78 70 20 6d 61 6e 75 61 6c 20 65 6e 74 72  gexp manual entr
2e290 79 20 66 6f 72 20 6d 6f 72 65 0a 64 65 74 61 69  y for more.detai
2e2a0 6c 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  ls. (stanton)..1
2e2b0 31 2f 31 37 2f 39 38 20 28 62 75 67 20 66 69 78  1/17/98 (bug fix
2e2c0 29 20 22 73 63 61 6e 22 20 6e 6f 77 20 63 6f 72  ) "scan" now cor
2e2d0 72 65 63 74 6c 79 20 68 61 6e 64 6c 65 73 20 55  rectly handles U
2e2e0 6e 69 63 6f 64 65 0a 63 68 61 72 61 63 74 65 72  nicode.character
2e2f0 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31  s. (stanton)..11
2e300 2f 31 37 2f 39 38 20 28 6e 65 77 20 66 65 61 74  /17/98 (new feat
2e310 75 72 65 29 20 22 73 63 61 6e 22 20 6e 6f 77 20  ure) "scan" now 
2e320 73 75 70 70 6f 72 74 73 20 58 50 47 33 20 70 6f  supports XPG3 po
2e330 73 69 74 69 6f 6e 20 73 70 65 63 69 66 69 65 72  sition specifier
2e340 73 0a 61 6e 64 20 74 68 65 20 22 25 6e 22 20 63  s.and the "%n" c
2e350 6f 6e 76 65 72 73 69 6f 6e 20 63 68 61 72 61 63  onversion charac
2e360 74 65 72 2e 20 20 53 65 65 20 74 68 65 20 22 73  ter.  See the "s
2e370 63 61 6e 22 20 6d 61 6e 75 61 6c 20 65 6e 74 72  can" manual entr
2e380 79 20 66 6f 72 0a 6d 6f 72 65 20 64 65 74 61 69  y for.more detai
2e390 6c 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  ls. (stanton)..1
2e3a0 31 2f 31 37 2f 39 38 20 28 62 75 67 20 66 69 78  1/17/98 (bug fix
2e3b0 29 20 54 68 65 20 54 63 6c 20 6d 65 6d 6f 72 79  ) The Tcl memory
2e3c0 20 61 6c 6c 6f 63 61 74 6f 72 20 6e 6f 77 20 72   allocator now r
2e3d0 65 74 75 72 6e 73 20 38 2d 62 79 74 65 20 61 6c  eturns 8-byte al
2e3e0 69 67 6e 65 64 0a 63 68 75 6e 6b 73 20 6f 66 20  igned.chunks of 
2e3f0 6d 65 6d 6f 72 79 20 77 68 69 63 68 20 69 6d 70  memory which imp
2e400 72 6f 76 65 73 20 70 65 72 66 6f 72 6d 61 6e 63  roves performanc
2e410 65 20 6f 6e 20 57 69 6e 64 6f 77 73 20 61 6e 64  e on Windows and
2e420 20 61 76 6f 69 64 73 0a 63 72 61 73 68 65 73 20   avoids.crashes 
2e430 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72  on other platfor
2e440 6d 73 2e 20 5b 42 75 67 3a 20 38 33 34 5d 20 28  ms. [Bug: 834] (
2e450 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 32 33 2f  stanton)..11/23/
2e460 39 38 20 28 62 75 67 20 66 69 78 29 20 41 70 70  98 (bug fix) App
2e470 6c 69 65 64 20 76 61 72 69 6f 75 73 20 72 65 67  lied various reg
2e480 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e 20  ular expression 
2e490 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 75 67 0a  performance bug.
2e4a0 66 69 78 65 73 20 73 75 70 70 6c 69 65 64 20 62  fixes supplied b
2e4b0 79 20 48 65 6e 72 79 20 53 70 65 6e 63 65 72 2e  y Henry Spencer.
2e4c0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 33   (stanton)..11/3
2e4d0 30 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 46  0/98 (bug fix) F
2e4e0 69 78 65 64 20 76 61 72 69 6f 75 73 20 74 68 72  ixed various thr
2e4f0 65 61 64 20 72 65 6c 61 74 65 64 20 72 61 63 65  ead related race
2e500 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 5b 42 75   conditions. [Bu
2e510 67 3a 0a 38 38 30 20 26 20 36 30 37 5d 20 28 73  g:.880 & 607] (s
2e520 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 33 30 2f 39  tanton)..11/30/9
2e530 38 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  8 (bug fix) Fixe
2e540 64 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 6d 65  d a number of me
2e550 6d 6f 72 79 20 6f 76 65 72 66 6c 6f 77 20 61 6e  mory overflow an
2e560 64 20 6c 65 61 6b 0a 62 75 67 73 2e 20 5b 42 75  d leak.bugs. [Bu
2e570 67 3a 20 35 38 34 5d 20 28 73 74 61 6e 74 6f 6e  g: 584] (stanton
2e580 29 0a 0a 31 32 2f 31 2f 39 38 20 28 6e 65 77 20  )..12/1/98 (new 
2e590 66 65 61 75 72 65 29 20 41 64 64 65 64 20 73 75  feaure) Added su
2e5a0 70 70 6f 72 74 20 66 6f 72 20 4b 6f 72 65 61 6e  pport for Korean
2e5b0 20 65 6e 63 6f 64 69 6e 67 73 2e 20 28 73 74 61   encodings. (sta
2e5c0 6e 74 6f 6e 29 0a 0a 31 32 2f 31 2f 39 38 20 28  nton)..12/1/98 (
2e5d0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
2e5e0 43 68 61 6e 67 65 64 20 74 68 65 20 54 63 6c 5f  Changed the Tcl_
2e5f0 45 76 61 6c 4f 62 6a 76 20 69 6e 74 65 72 66 61  EvalObjv interfa
2e600 63 65 20 74 6f 20 72 65 6d 6f 76 65 0a 74 68 65  ce to remove.the
2e610 20 73 74 72 69 6e 67 20 61 6e 64 20 6c 65 6e 67   string and leng
2e620 74 68 20 61 72 67 75 6d 65 6e 74 73 2e 0a 2a 2a  th arguments..**
2e630 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
2e640 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
2e650 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68 61 20   previous alpha 
2e660 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a 31 32  releases ***..12
2e670 2f 32 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  /2/98 (bug fix) 
2e680 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 62 75  Fixed various bu
2e690 67 73 20 72 65 6c 61 74 65 64 20 74 6f 20 6c 69  gs related to li
2e6a0 6e 65 20 66 65 65 64 0a 74 72 61 6e 73 6c 61 74  ne feed.translat
2e6b0 69 6f 6e 2e 20 5b 42 75 67 3a 20 38 38 37 5d 20  ion. [Bug: 887] 
2e6c0 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 32 2f 34 2f  (stanton)..12/4/
2e6d0 39 38 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  98 (new feature)
2e6e0 20 41 64 64 65 64 20 61 20 6d 65 73 73 61 67 65   Added a message
2e6f0 20 63 61 74 61 6c 6f 67 20 66 61 63 69 6c 69 74   catalog facilit
2e700 79 20 74 6f 20 68 65 6c 70 20 77 69 74 68 0a 6c  y to help with.l
2e710 6f 63 61 6c 69 7a 69 6e 67 20 54 63 6c 20 73 63  ocalizing Tcl sc
2e720 72 69 70 74 73 2e 20 20 54 68 61 6e 6b 73 20 74  ripts.  Thanks t
2e730 6f 20 4d 61 72 6b 20 48 61 72 72 69 73 6f 6e 20  o Mark Harrison 
2e740 66 6f 72 20 63 6f 6e 74 72 69 62 75 74 69 6e 67  for contributing
2e750 20 74 68 65 0a 69 6e 69 74 69 61 6c 20 69 6d 70   the.initial imp
2e760 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74  lementation of t
2e770 68 65 20 22 6d 73 67 63 61 74 22 20 70 61 63 6b  he "msgcat" pack
2e780 61 67 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  age. (stanton)..
2e790 31 32 2f 37 2f 39 38 20 28 62 75 67 20 66 69 78  12/7/98 (bug fix
2e7a0 29 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 6c 6c  ) The memory all
2e7b0 6f 63 61 74 6f 72 20 77 61 73 20 66 61 69 6c 69  ocator was faili
2e7c0 6e 67 20 74 6f 20 75 70 64 61 74 65 20 74 68 65  ng to update the
2e7d0 0a 62 6c 6f 63 6b 20 6c 69 73 74 20 66 6f 72 20  .block list for 
2e7e0 6c 61 72 67 65 20 6d 65 6d 6f 72 79 20 62 6c 6f  large memory blo
2e7f0 63 6b 73 20 74 68 61 74 20 77 65 72 65 20 72 65  cks that were re
2e800 61 6c 6c 6f 63 61 74 65 64 20 69 6e 74 6f 20 61  allocated into a
2e810 0a 64 69 66 66 65 72 65 6e 74 20 61 64 64 72 65  .different addre
2e820 73 73 2e 20 5b 42 75 67 3a 20 39 33 33 5d 20 28  ss. [Bug: 933] (
2e830 73 74 61 6e 74 6f 6e 29 0a 0a 2d 2d 2d 2d 2d 2d  stanton)..------
2e840 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
2e850 61 73 65 64 20 38 2e 31 62 31 2c 20 44 65 63 20  ased 8.1b1, Dec 
2e860 31 30 20 31 39 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d  10 1998 --------
2e870 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
2e880 0a 31 32 2f 32 32 2f 39 38 20 28 70 65 72 66 6f  .12/22/98 (perfo
2e890 72 6d 61 6e 63 65 20 69 6d 70 72 6f 76 65 6d 65  rmance improveme
2e8a0 6e 74 29 20 49 6d 70 72 6f 76 65 64 20 74 68 65  nt) Improved the
2e8b0 20 2d 63 6f 6d 6d 61 6e 64 20 6f 70 74 69 6f 6e   -command option
2e8c0 20 6f 66 20 74 68 65 0a 6c 73 6f 72 74 20 63 6f   of the.lsort co
2e8d0 6d 6d 61 6e 64 20 74 6f 20 62 65 74 74 65 72 20  mmand to better 
2e8e0 75 73 65 20 74 68 65 20 6f 62 6a 65 63 74 20 73  use the object s
2e8f0 79 73 74 65 6d 20 66 6f 72 20 69 6d 70 72 6f 76  ystem for improv
2e900 65 64 0a 70 65 72 66 6f 72 6d 61 6e 63 65 20 28  ed.performance (
2e910 61 62 6f 75 74 20 35 78 20 73 70 65 65 64 20 75  about 5x speed u
2e920 70 29 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 53  p).  Thanks to S
2e930 79 64 20 50 6f 6c 6b 20 66 6f 72 20 73 75 70 70  yd Polk for supp
2e940 6c 69 6e 67 20 74 68 65 0a 70 61 74 63 68 2e 20  ling the.patch. 
2e950 5b 52 46 45 3a 20 37 32 36 5d 20 28 72 6a 6f 68  [RFE: 726] (rjoh
2e960 6e 73 6f 6e 29 0a 0a 32 2f 31 30 2f 39 39 20 28  nson)..2/10/99 (
2e970 62 75 67 20 66 69 78 29 20 52 65 73 74 6f 72 65  bug fix) Restore
2e980 64 20 74 68 65 20 54 63 6c 5f 4f 62 6a 53 65 74  d the Tcl_ObjSet
2e990 56 61 72 32 2f 54 63 6c 5f 4f 62 6a 47 65 74 56  Var2/Tcl_ObjGetV
2e9a0 61 72 32 0a 69 6e 74 65 72 66 61 63 65 73 20 66  ar2.interfaces f
2e9b0 72 6f 6d 20 38 2e 30 20 61 6e 64 20 72 65 6e 61  rom 8.0 and rena
2e9c0 6d 65 64 20 74 68 65 20 54 63 6c 5f 47 65 74 4f  med the Tcl_GetO
2e9d0 62 6a 56 61 72 32 2f 54 63 6c 5f 53 65 74 4f 62  bjVar2/Tcl_SetOb
2e9e0 6a 56 61 72 32 0a 69 6e 74 65 72 66 61 63 65 73  jVar2.interfaces
2e9f0 20 74 6f 20 54 63 6c 5f 47 65 74 56 61 72 32 45   to Tcl_GetVar2E
2ea00 78 20 61 6e 64 20 54 63 6c 5f 53 65 74 56 61 72  x and Tcl_SetVar
2ea10 32 45 78 2e 20 20 54 68 69 73 20 73 68 6f 75 6c  2Ex.  This shoul
2ea20 64 20 70 72 6f 76 69 64 65 0a 62 65 74 74 65 72  d provide.better
2ea30 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77   compatibility w
2ea40 69 74 68 20 38 2e 30 2e 20 28 73 74 61 6e 74 6f  ith 8.0. (stanto
2ea50 6e 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  n).*** POTENTIAL
2ea60 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
2ea70 20 77 69 74 68 20 70 72 65 76 69 6f 75 73 20 61   with previous a
2ea80 6c 70 68 61 2f 62 65 74 61 20 72 65 6c 65 61 73  lpha/beta releas
2ea90 65 73 20 2a 2a 2a 0a 0a 32 2f 31 30 2f 39 39 20  es ***..2/10/99 
2eaa0 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20 74  (bug fix) Made t
2eab0 68 65 20 65 76 61 6c 20 69 6e 74 65 72 66 61 63  he eval interfac
2eac0 65 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77 69  es compatible wi
2ead0 74 68 20 38 2e 30 20 62 79 0a 72 65 6e 61 6d 69  th 8.0 by.renami
2eae0 6e 67 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 20 74  ng Tcl_EvalObj t
2eaf0 6f 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 45 78 2c  o Tcl_EvalObjEx,
2eb00 20 72 65 6e 61 6d 69 6e 67 20 54 63 6c 5f 45 76   renaming Tcl_Ev
2eb10 61 6c 32 20 74 6f 0a 54 63 6c 5f 45 76 61 6c 45  al2 to.Tcl_EvalE
2eb20 78 20 61 6e 64 20 72 65 73 74 6f 72 69 6e 67 20  x and restoring 
2eb30 54 63 6c 5f 45 76 61 6c 4f 62 6a 20 61 6e 64 20  Tcl_EvalObj and 
2eb40 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c 4f 62  Tcl_GlobalEvalOb
2eb50 6a 20 69 6e 74 65 72 66 61 63 65 73 0a 73 6f 20  j interfaces.so 
2eb60 74 68 65 79 20 6d 61 74 63 68 20 54 63 6c 20 38  they match Tcl 8
2eb70 2e 30 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 2a 2a  .0. (stanton).**
2eb80 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
2eb90 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
2eba0 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68 61 2f   previous alpha/
2ebb0 62 65 74 61 20 72 65 6c 65 61 73 65 73 20 2a 2a  beta releases **
2ebc0 2a 0a 0a 32 2f 32 35 2f 39 39 20 28 62 75 67 20  *..2/25/99 (bug 
2ebd0 66 69 78 2f 6e 65 77 20 66 65 61 74 75 72 65 29  fix/new feature)
2ebe0 20 4f 6e 20 57 69 6e 64 6f 77 73 2c 20 74 68 65   On Windows, the
2ebf0 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73   channel drivers
2ec00 20 66 6f 72 0a 63 6f 6e 73 6f 6c 65 73 20 61 6e   for.consoles an
2ec10 64 20 73 65 72 69 61 6c 20 70 6f 72 74 73 20 6e  d serial ports n
2ec20 6f 77 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73 75  ow completely su
2ec30 70 70 6f 72 74 20 66 69 6c 65 20 65 76 65 6e 74  pport file event
2ec40 73 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f 35  s. (redman)..3/5
2ec50 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 49 6e  /99 (bug fix) In
2ec60 74 65 67 72 61 74 65 64 20 70 61 74 63 68 65 73  tegrated patches
2ec70 20 74 6f 20 66 69 78 20 76 61 72 69 6f 75 73 20   to fix various 
2ec80 63 6f 6e 66 69 67 75 72 65 20 70 72 6f 62 6c 65  configure proble
2ec90 6d 73 0a 74 68 61 74 20 61 66 66 65 63 74 65 64  ms.that affected
2eca0 20 48 50 2d 55 58 2d 31 31 2c 20 36 34 2d 62 69   HP-UX-11, 64-bi
2ecb0 74 20 49 52 49 58 2c 20 4c 69 6e 75 78 2c 20 61  t IRIX, Linux, a
2ecc0 6e 64 20 53 6f 6c 61 72 69 73 2e 20 28 73 74 61  nd Solaris. (sta
2ecd0 6e 74 6f 6e 29 0a 0a 33 2f 39 2f 39 39 20 28 62  nton)..3/9/99 (b
2ece0 75 67 20 66 69 78 29 20 49 6e 74 65 67 72 61 74  ug fix) Integrat
2ecf0 65 64 20 76 61 72 69 6f 75 73 20 41 49 58 20 72  ed various AIX r
2ed00 65 6c 61 74 65 64 20 70 61 74 63 68 65 73 20 74  elated patches t
2ed10 6f 20 69 6d 70 72 6f 76 65 0a 73 75 70 70 6f 72  o improve.suppor
2ed20 74 20 66 6f 72 20 73 68 61 72 65 64 20 6c 69 62  t for shared lib
2ed30 72 61 72 69 65 73 2e 20 28 73 74 61 6e 74 6f 6e  raries. (stanton
2ed40 29 0a 0a 33 2f 39 2f 39 39 20 28 6e 65 77 20 66  )..3/9/99 (new f
2ed50 65 61 74 75 72 65 29 20 41 64 64 65 64 20 74 63  eature) Added tc
2ed60 6c 5f 70 6c 61 74 66 6f 72 6d 28 75 73 65 72 29  l_platform(user)
2ed70 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70 6f   to provide a po
2ed80 72 74 61 62 6c 65 0a 77 61 79 20 74 6f 20 67 65  rtable.way to ge
2ed90 74 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68  t the name of th
2eda0 65 20 63 75 72 72 65 6e 74 20 75 73 65 72 2e 20  e current user. 
2edb0 28 77 65 6c 63 68 29 0a 0a 33 2f 39 2f 39 39 20  (welch)..3/9/99 
2edc0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 49 6e  (new feature) In
2edd0 74 65 67 72 61 74 65 64 20 74 68 65 20 73 74 75  tegrated the stu
2ede0 62 20 6c 69 62 72 61 72 79 20 6d 65 63 68 61 6e  b library mechan
2edf0 69 73 6d 20 63 6f 6e 74 72 69 62 75 74 65 64 0a  ism contributed.
2ee00 62 79 20 4a 61 6e 20 4e 69 6a 74 6d 61 6e 73 2c  by Jan Nijtmans,
2ee10 20 50 61 75 6c 20 44 75 66 66 69 6e 2c 20 61 6e   Paul Duffin, an
2ee20 64 20 4a 65 61 6e 2d 43 6c 61 75 64 65 20 57 69  d Jean-Claude Wi
2ee30 70 70 6c 65 72 2e 20 20 54 68 69 73 20 66 65 61  ppler.  This fea
2ee40 74 75 72 65 0a 73 68 6f 75 6c 64 20 6d 61 6b 65  ture.should make
2ee50 20 69 74 20 70 6f 73 73 69 62 6c 65 20 74 6f 20   it possible to 
2ee60 77 72 69 74 65 20 65 78 74 65 6e 73 69 6f 6e 73  write extensions
2ee70 20 74 68 61 74 20 73 75 70 70 6f 72 74 20 6d 75   that support mu
2ee80 6c 74 69 70 6c 65 0a 76 65 72 73 69 6f 6e 73 20  ltiple.versions 
2ee90 6f 66 20 54 63 6c 20 73 69 6d 75 6c 74 61 6e 65  of Tcl simultane
2eea0 6f 75 73 6c 79 2e 20 20 49 74 20 61 6c 73 6f 20  ously.  It also 
2eeb0 6d 61 6b 65 73 20 69 74 20 70 6f 73 73 69 62 6c  makes it possibl
2eec0 65 20 74 6f 0a 64 79 6e 61 6d 69 63 61 6c 6c 79  e to.dynamically
2eed0 20 6c 6f 61 64 20 65 78 74 65 6e 73 69 6f 6e 73   load extensions
2eee0 20 69 6e 74 6f 20 73 74 61 74 69 63 61 6c 6c 79   into statically
2eef0 20 6c 69 6e 6b 65 64 20 69 6e 74 65 72 70 72 65   linked interpre
2ef00 74 65 72 73 2e 20 20 54 68 69 73 0a 70 61 74 63  ters.  This.patc
2ef10 68 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20 66  h includes the f
2ef20 6f 6c 6c 6f 77 69 6e 67 20 63 68 61 6e 67 65 73  ollowing changes
2ef30 3a 0a 20 20 20 20 20 20 2d 09 41 64 64 65 64 20  :.      -.Added 
2ef40 61 20 54 63 6c 5f 49 6e 69 74 53 74 75 62 73 28  a Tcl_InitStubs(
2ef50 29 20 69 6e 74 65 72 66 61 63 65 0a 20 20 20 20  ) interface.    
2ef60 20 20 2d 09 41 64 64 65 64 20 54 63 6c 5f 50 6b    -.Added Tcl_Pk
2ef70 67 50 72 6f 76 69 64 65 45 78 2c 20 54 63 6c 5f  gProvideEx, Tcl_
2ef80 50 6b 67 52 65 71 75 69 72 65 45 78 2c 20 54 63  PkgRequireEx, Tc
2ef90 6c 5f 50 6b 67 50 72 65 73 65 6e 74 45 78 2c 0a  l_PkgPresentEx,.
2efa0 20 20 20 20 20 20 09 61 6e 64 20 54 63 6c 5f 50        .and Tcl_P
2efb0 6b 67 50 72 65 73 65 6e 74 2e 0a 20 20 20 20 20  kgPresent..     
2efc0 20 2d 20 41 64 64 65 64 20 76 61 5f 6c 69 73 74   - Added va_list
2efd0 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 61 6c 6c   versions of all
2efe0 20 56 41 52 41 52 47 53 20 66 75 6e 63 74 69 6f   VARARGS functio
2eff0 6e 73 20 73 6f 20 74 68 65 79 20 63 61 6e 20 62  ns so they can b
2f000 65 0a 09 69 6e 76 6f 6b 65 64 20 66 72 6f 6d 20  e..invoked from 
2f010 77 72 61 70 70 65 72 20 66 75 6e 63 74 69 6f 6e  wrapper function
2f020 73 2e 0a 53 65 65 20 74 68 65 20 6d 61 6e 75 61  s..See the manua
2f030 6c 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72  l for more infor
2f040 6d 61 74 69 6f 6e 2e 20 28 73 74 61 6e 74 6f 6e  mation. (stanton
2f050 29 0a 0a 0a 33 2f 31 30 2f 39 39 20 28 66 65 61  )...3/10/99 (fea
2f060 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65 70  ture change) Rep
2f070 6c 61 63 65 64 20 54 63 6c 5f 41 6c 65 72 74 4e  laced Tcl_AlertN
2f080 6f 74 69 66 69 65 72 20 77 69 74 68 0a 54 63 6c  otifier with.Tcl
2f090 5f 54 68 72 65 61 64 41 6c 65 72 74 20 73 69 6e  _ThreadAlert sin
2f0a0 63 65 20 74 68 65 20 54 63 6c 5f 41 6c 65 72 74  ce the Tcl_Alert
2f0b0 4e 6f 74 69 66 69 65 72 20 66 75 6e 63 74 69 6f  Notifier functio
2f0c0 6e 20 72 65 6c 69 65 64 20 6f 6e 20 70 61 73 73  n relied on pass
2f0d0 69 6e 67 0a 69 6e 74 65 72 6e 61 6c 20 64 61 74  ing.internal dat
2f0e0 61 20 73 74 72 75 63 74 75 72 65 73 2e 20 28 73  a structures. (s
2f0f0 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45  tanton).*** POTE
2f100 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
2f110 49 4c 49 54 59 20 77 69 74 68 20 70 72 65 76 69  ILITY with previ
2f120 6f 75 73 20 61 6c 70 68 61 2f 62 65 74 61 20 72  ous alpha/beta r
2f130 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a 33 2f 31  eleases ***..3/1
2f140 30 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72  0/99 (new featur
2f150 65 29 20 41 64 64 65 64 20 61 20 54 63 6c 5f 47  e) Added a Tcl_G
2f160 65 74 56 65 72 73 69 6f 6e 20 41 50 49 20 74 6f  etVersion API to
2f170 20 6d 61 6b 65 20 69 74 20 65 61 73 69 65 72 20   make it easier 
2f180 74 6f 0a 63 68 65 63 6b 20 74 68 65 20 54 63 6c  to.check the Tcl
2f190 20 76 65 72 73 69 6f 6e 20 61 6e 64 20 70 61 74   version and pat
2f1a0 63 68 20 6c 65 76 65 6c 20 66 72 6f 6d 20 43 2e  ch level from C.
2f1b0 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f 31 34 2f   (redman)..3/14/
2f1c0 39 39 20 28 66 65 61 74 75 72 65 20 63 68 61 6e  99 (feature chan
2f1d0 67 65 29 20 54 72 69 65 64 20 74 6f 20 75 6e 69  ge) Tried to uni
2f1e0 66 79 20 74 68 65 20 54 63 6c 70 49 6e 69 74 4c  fy the TclpInitL
2f1f0 69 62 72 61 72 79 20 70 61 74 68 0a 72 6f 75 74  ibrary path.rout
2f200 69 6e 65 73 20 74 6f 20 6c 6f 6f 6b 20 69 6e 20  ines to look in 
2f210 73 69 6d 69 6c 61 72 20 70 6c 61 63 65 73 20 66  similar places f
2f220 72 6f 6d 20 57 69 6e 64 6f 77 73 20 74 6f 20 55  rom Windows to U
2f230 4e 49 58 2e 20 20 54 68 65 20 6e 65 77 0a 6c 69  NIX.  The new.li
2f240 62 72 61 72 79 20 73 65 61 72 63 68 20 70 61 74  brary search pat
2f250 68 20 69 73 3a 20 54 43 4c 5f 4c 49 42 52 41 52  h is: TCL_LIBRAR
2f260 59 2c 20 54 43 4c 5f 4c 49 42 52 41 52 59 2f 2e  Y, TCL_LIBRARY/.
2f270 2e 2f 74 63 6c 38 2e 31 2c 20 72 65 6c 61 74 69  ./tcl8.1, relati
2f280 76 65 0a 74 6f 20 44 4c 4c 20 28 57 69 6e 64 6f  ve.to DLL (Windo
2f290 77 73 20 4f 6e 6c 79 29 20 72 65 6c 61 74 69 76  ws Only) relativ
2f2a0 65 20 74 6f 20 69 6e 73 74 61 6c 6c 65 64 20 65  e to installed e
2f2b0 78 65 63 75 74 61 62 6c 65 2c 20 72 65 6c 61 74  xecutable, relat
2f2c0 69 76 65 20 74 6f 0a 64 65 76 65 6c 6f 70 20 65  ive to.develop e
2f2d0 78 65 63 75 74 61 62 6c 65 2c 20 61 6e 64 20 72  xecutable, and r
2f2e0 65 6c 61 74 69 76 65 20 74 6f 20 63 6f 6d 70 69  elative to compi
2f2f0 6c 65 64 2d 69 6e 20 69 6e 20 6c 6f 63 61 74 69  led-in in locati
2f300 6f 6e 20 28 55 4e 49 58 0a 4f 6e 6c 79 2e 29 20  on (UNIX.Only.) 
2f310 20 54 68 69 73 20 66 69 78 20 69 6e 63 6c 75 64   This fix includ
2f320 65 64 3a 0a 20 20 20 20 2d 20 44 65 66 69 6e 69  ed:.    - Defini
2f330 6e 67 20 61 20 54 63 6c 70 46 69 6e 64 45 78 65  ng a TclpFindExe
2f340 63 75 74 61 62 6c 65 0a 20 20 20 20 2d 20 4d 6f  cutable.    - Mo
2f350 76 69 6e 67 20 54 63 6c 5f 46 69 6e 64 45 78 65  ving Tcl_FindExe
2f360 63 75 74 61 62 6c 65 20 74 6f 20 61 20 63 6f 6d  cutable to a com
2f370 6d 6f 6e 20 61 72 65 61 20 69 6e 20 74 63 6c 45  mon area in tclE
2f380 6e 63 6f 64 69 6e 67 2e 63 0a 20 20 20 20 2d 20  ncoding.c.    - 
2f390 4d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 54 63  Modifying the Tc
2f3a0 6c 70 49 6e 69 74 4c 69 62 72 61 72 79 50 61 74  lpInitLibraryPat
2f3b0 68 20 72 6f 75 74 69 6e 65 73 2e 0a 28 73 75 72  h routines..(sur
2f3c0 6c 65 73 29 0a 0a 33 2f 31 34 2f 39 39 20 28 66  les)..3/14/99 (f
2f3d0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
2f3e0 64 64 65 64 20 68 6f 6f 6b 73 20 66 6f 72 20 54  dded hooks for T
2f3f0 63 6c 50 72 6f 20 57 72 61 70 70 65 72 20 74 6f  clPro Wrapper to
2f400 20 69 6e 69 74 69 61 6c 69 7a 65 0a 74 68 65 20   initialize.the 
2f410 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20  location of the 
2f420 65 6e 63 6f 64 69 6e 67 20 66 69 6c 65 73 20 61  encoding files a
2f430 6e 64 20 6c 69 62 72 61 72 69 65 73 2e 20 20 54  nd libraries.  T
2f440 68 69 73 20 66 69 78 20 69 6e 63 6c 75 64 65 64  his fix included
2f450 3a 0a 20 20 20 20 2d 20 41 64 64 69 6e 67 20 74  :.    - Adding t
2f460 68 65 20 54 63 6c 53 65 74 50 65 72 49 6e 69 74  he TclSetPerInit
2f470 53 63 72 69 70 74 20 72 6f 75 74 69 6e 65 2e 0a  Script routine..
2f480 20 20 20 20 2d 20 4d 6f 64 69 66 79 69 6e 67 20      - Modifying 
2f490 74 68 65 20 54 63 6c 5f 49 6e 69 74 20 72 6f 75  the Tcl_Init rou
2f4a0 74 69 6e 65 73 20 74 6f 20 65 76 61 6c 75 61 74  tines to evaluat
2f4b0 65 20 74 68 65 20 6e 6f 6e 2d 4e 55 4c 4c 0a 20  e the non-NULL. 
2f4c0 20 20 20 20 20 70 72 65 2d 69 6e 69 74 20 73 63       pre-init sc
2f4d0 72 69 70 74 2e 0a 20 20 20 20 2d 20 41 64 64 69  ript..    - Addi
2f4e0 6e 67 20 74 68 65 20 54 63 6c 5f 53 65 74 64 65  ng the Tcl_Setde
2f4f0 66 61 75 6c 74 45 6e 63 6f 64 69 6e 67 44 69 72  faultEncodingDir
2f500 20 61 6e 64 20 54 63 6c 5f 47 65 74 44 65 66 61   and Tcl_GetDefa
2f510 75 6c 74 45 6e 63 6f 64 69 6e 67 44 69 72 0a 20  ultEncodingDir. 
2f520 20 20 20 20 20 72 6f 75 74 69 6e 65 73 2e 0a 20       routines.. 
2f530 20 20 20 2d 20 4d 6f 64 69 66 79 69 6e 67 20 74     - Modifying t
2f540 68 65 20 54 63 6c 70 49 6e 69 74 4c 69 62 72 61  he TclpInitLibra
2f550 72 79 20 72 6f 75 74 69 6e 65 73 20 74 6f 20 61  ry routines to a
2f560 70 70 65 6e 64 20 74 68 65 20 64 65 66 61 75 6c  ppend the defaul
2f570 74 0a 20 20 20 20 20 20 65 6e 63 6f 64 69 6e 67  t.      encoding
2f580 20 64 69 72 2e 0a 28 73 75 72 6c 65 73 29 0a 0a   dir..(surles)..
2f590 33 2f 31 34 2f 39 39 20 28 66 65 61 74 75 72 65  3/14/99 (feature
2f5a0 20 63 68 61 6e 67 65 29 20 54 65 73 74 20 73 75   change) Test su
2f5b0 69 74 65 20 6e 6f 77 20 75 73 65 73 20 22 74 65  ite now uses "te
2f5c0 73 74 22 20 6e 61 6d 65 73 70 61 63 65 20 74 6f  st" namespace to
2f5d0 0a 64 65 66 69 6e 65 20 74 68 65 20 74 65 73 74  .define the test
2f5e0 20 70 72 6f 63 65 64 75 72 65 20 61 6e 64 20 6f   procedure and o
2f5f0 74 68 65 72 20 61 75 78 69 6c 69 61 72 79 20 70  ther auxiliary p
2f600 72 6f 63 65 64 75 72 65 73 20 61 73 20 77 65 6c  rocedures as wel
2f610 6c 20 61 73 0a 67 6c 6f 62 61 6c 20 76 61 72 69  l as.global vari
2f620 61 62 6c 65 73 2e 0a 20 20 20 20 2d 20 47 6c 6f  ables..    - Glo
2f630 62 61 6c 20 61 72 72 61 79 20 74 65 73 74 43 6f  bal array testCo
2f640 6e 66 69 67 65 20 69 73 20 6e 6f 77 20 63 61 6c  nfige is now cal
2f650 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 74 65 73 74  led ::test::test
2f660 43 6f 6e 66 69 67 2e 0a 20 20 20 20 2d 20 47 6c  Config..    - Gl
2f670 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 56 45  obal variable VE
2f680 52 42 4f 53 45 20 69 73 20 6e 6f 77 20 63 61 6c  RBOSE is now cal
2f690 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 76 65 72 62  led ::test::verb
2f6a0 6f 73 65 2c 20 61 6e 64 0a 20 20 20 20 20 20 3a  ose, and.      :
2f6b0 3a 74 65 73 74 3a 3a 76 65 72 62 6f 73 65 20 6e  :test::verbose n
2f6c0 6f 20 6c 6f 6e 67 65 72 20 77 6f 72 6b 73 20 77  o longer works w
2f6d0 69 74 68 20 6e 75 6d 65 72 69 63 61 6c 20 76 61  ith numerical va
2f6e0 6c 75 65 73 2e 20 20 57 65 27 76 65 0a 20 20 20  lues.  We've.   
2f6f0 20 20 20 73 77 69 74 63 68 65 64 20 74 6f 20 61     switched to a
2f700 20 62 69 74 77 69 73 65 20 63 68 61 72 61 63 74   bitwise charact
2f710 65 72 20 73 74 72 69 6e 67 2e 20 20 59 6f 75 20  er string.  You 
2f720 63 61 6e 20 73 65 74 0a 20 20 20 20 20 20 3a 3a  can set.      ::
2f730 74 65 73 74 3a 3a 76 65 72 62 6f 73 65 20 62 79  test::verbose by
2f740 20 75 73 69 6e 67 20 74 68 65 20 2d 76 65 72 62   using the -verb
2f750 6f 73 65 20 6f 70 74 69 6f 6e 20 6f 6e 20 74 68  ose option on th
2f760 65 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 0a 20 20  e Tcl command.  
2f770 20 20 20 20 6c 69 6e 65 2e 0a 20 20 20 20 2d 20      line..    - 
2f780 47 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20  Global variable 
2f790 54 45 53 54 53 20 69 73 20 6e 6f 77 20 63 61 6c  TESTS is now cal
2f7a0 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 6d 61 74 63  led ::test::matc
2f7b0 68 69 6e 67 54 65 73 74 73 2c 20 61 6e 64 0a 20  hingTests, and. 
2f7c0 20 20 20 20 20 63 61 6e 20 62 65 20 73 65 74 20       can be set 
2f7d0 6f 6e 20 74 68 65 20 54 63 6c 20 63 6f 6d 6d 61  on the Tcl comma
2f7e0 6e 64 20 6c 69 6e 65 20 76 69 61 20 74 68 65 20  nd line via the 
2f7f0 2d 6d 61 74 63 68 20 6f 70 74 69 6f 6e 2e 0a 20  -match option.. 
2f800 20 20 20 2d 20 54 68 65 72 65 20 69 73 20 6e 6f     - There is no
2f810 77 20 61 20 3a 3a 74 65 73 74 3a 3a 73 6b 69 70  w a ::test::skip
2f820 54 65 73 74 73 20 76 61 72 69 61 62 6c 65 20 28  Tests variable (
2f830 77 6f 72 6b 73 20 73 69 6d 69 6c 61 72 6c 79 20  works similarly 
2f840 74 6f 0a 20 20 20 20 20 20 3a 3a 74 65 73 74 3a  to.      ::test:
2f850 3a 6d 61 74 63 68 54 65 73 74 73 29 20 74 68 61  :matchTests) tha
2f860 74 20 63 61 6e 20 62 65 20 73 65 74 20 6f 6e 20  t can be set on 
2f870 74 68 65 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 20  the Tcl command 
2f880 6c 69 6e 65 20 76 69 61 0a 20 20 20 20 20 20 74  line via.      t
2f890 68 65 20 2d 6d 61 74 63 68 20 6f 70 74 69 6f 6e  he -match option
2f8a0 2e 0a 20 20 20 20 2d 20 54 68 65 20 74 65 73 74  ..    - The test
2f8b0 20 73 75 69 74 65 20 63 61 6e 20 6e 6f 77 20 62   suite can now b
2f8c0 65 20 72 75 6e 20 69 6e 20 61 6e 79 20 77 6f 72  e run in any wor
2f8d0 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 2e 20  king directory. 
2f8e0 20 57 68 65 6e 0a 20 20 20 20 20 20 79 6f 75 20   When.      you 
2f8f0 72 75 6e 20 22 6d 61 6b 65 20 74 65 73 74 22 2c  run "make test",
2f900 20 74 68 65 20 77 6f 72 6b 69 6e 67 20 64 69 72   the working dir
2f910 65 63 74 6f 72 79 20 69 73 20 6e 6f 6c 6f 6e 67  ectory is nolong
2f920 65 72 20 73 77 69 74 63 68 65 64 0a 20 20 20 20  er switched.    
2f930 20 20 74 6f 20 2e 2e 2f 74 65 73 74 73 2e 0a 28    to ../tests..(
2f940 68 69 72 73 63 68 6c 29 0a 2a 2a 2a 20 50 4f 54  hirschl).*** POT
2f950 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
2f960 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d 2d 2d  BILITY ***..----
2f970 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
2f980 61 73 65 64 20 38 2e 31 62 32 2c 20 4d 61 72 63  ased 8.1b2, Marc
2f990 68 20 31 36 2c 20 31 39 39 39 20 2d 2d 2d 2d 2d  h 16, 1999 -----
2f9a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2f9b0 2d 0a 0a 33 2f 31 38 2f 39 39 20 28 62 75 67 20  -..3/18/99 (bug 
2f9c0 66 69 78 29 20 46 69 78 65 64 20 6d 69 73 73 69  fix) Fixed missi
2f9d0 6e 67 2f 69 6e 63 6f 72 72 65 63 74 20 63 68 61  ng/incorrect cha
2f9e0 72 61 63 74 65 72 73 20 69 6e 20 73 68 69 66 74  racters in shift
2f9f0 2d 6a 69 73 20 74 61 62 6c 65 0a 28 73 74 61 6e  -jis table.(stan
2fa00 74 6f 6e 29 0a 0a 33 2f 31 38 2f 39 39 20 28 66  ton)..3/18/99 (f
2fa10 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 54  eature change) T
2fa20 68 65 20 67 6c 6f 62 20 63 6f 6d 6d 61 6e 64 20  he glob command 
2fa30 69 67 6e 6f 72 65 73 20 74 68 65 0a 46 53 5f 43  ignores the.FS_C
2fa40 41 53 45 5f 49 53 5f 50 52 45 53 45 52 56 45 44  ASE_IS_PRESERVED
2fa50 20 62 69 74 20 6f 6e 20 66 69 6c 65 20 73 79 73   bit on file sys
2fa60 74 65 73 6d 20 61 6e 64 20 61 6c 77 61 79 73 20  tesm and always 
2fa70 72 65 74 75 72 6e 73 0a 65 78 61 63 74 6c 79 20  returns.exactly 
2fa80 77 68 61 74 20 69 74 20 67 65 74 73 20 66 72 6f  what it gets fro
2fa90 6d 20 74 68 65 20 73 79 73 74 65 6d 2e 20 28 73  m the system. (s
2faa0 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45  tanton).*** POTE
2fab0 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
2fac0 49 4c 49 54 59 20 2a 2a 2a 0a 0a 33 2f 31 39 2f  ILITY ***..3/19/
2fad0 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  99 (new feature)
2fae0 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   Added support f
2faf0 6f 72 20 2d 2d 65 6e 61 62 6c 65 2d 36 34 62 69  or --enable-64bi
2fb00 74 2e 20 20 46 6f 72 20 6e 6f 77 2c 0a 74 68 69  t.  For now,.thi
2fb10 73 20 69 73 20 6f 6e 6c 79 20 73 75 70 70 6f 72  s is only suppor
2fb20 74 65 64 20 6f 6e 20 53 6f 6c 61 72 69 73 20 37  ted on Solaris 7
2fb30 20 36 34 62 69 74 20 28 53 75 6e 4f 53 20 35 2e   64bit (SunOS 5.
2fb40 37 29 20 75 73 69 6e 67 20 74 68 65 20 53 75 6e  7) using the Sun
2fb50 0a 63 6f 6d 70 69 6c 65 72 2e 20 28 72 65 64 6d  .compiler. (redm
2fb60 61 6e 29 0a 0a 33 2f 32 33 2f 39 39 20 28 62 75  an)..3/23/99 (bu
2fb70 67 20 66 69 78 29 20 46 69 78 65 64 20 66 69 6c  g fix) Fixed fil
2fb80 65 65 76 65 6e 74 73 20 61 6e 64 20 67 65 74 73  eevents and gets
2fb90 20 6f 6e 20 57 69 6e 64 6f 77 73 20 63 6f 6e 73   on Windows cons
2fba0 6f 6c 65 73 20 61 6e 64 0a 73 65 72 69 61 6c 20  oles and.serial 
2fbb0 64 65 76 69 63 65 73 20 73 6f 20 74 68 61 74 20  devices so that 
2fbc0 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 20 63 68 61  non-blocking cha
2fbd0 6e 6e 65 6c 73 20 64 6f 20 6e 6f 74 20 62 6c 6f  nnels do not blo
2fbe0 63 6b 20 6f 6e 20 70 61 72 74 69 61 6c 0a 69 6e  ck on partial.in
2fbf0 70 75 74 20 6c 69 6e 65 73 2e 20 20 28 72 65 64  put lines.  (red
2fc00 6d 61 6e 29 0a 0a 33 2f 32 33 2f 39 39 20 28 62  man)..3/23/99 (b
2fc10 75 67 20 66 69 78 29 20 41 64 64 65 64 20 61 20  ug fix) Added a 
2fc20 6e 65 77 20 54 63 6c 5f 53 65 72 76 69 63 65 4d  new Tcl_ServiceM
2fc30 6f 64 65 48 6f 6f 6b 20 69 6e 74 65 72 66 61 63  odeHook interfac
2fc40 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20  e..This is used 
2fc50 6f 6e 20 57 69 6e 64 6f 77 73 20 74 6f 20 61 76  on Windows to av
2fc60 6f 69 64 20 74 68 65 20 76 61 72 69 6f 75 73 20  oid the various 
2fc70 70 72 6f 62 6c 65 6d 73 20 74 68 61 74 20 70 65  problems that pe
2fc80 6f 70 6c 65 0a 68 61 76 65 20 62 65 65 6e 20 73  ople.have been s
2fc90 65 65 69 6e 67 20 77 68 65 72 65 20 74 68 65 20  eeing where the 
2fca0 73 79 73 74 65 6d 20 68 61 6e 67 73 20 77 68 65  system hangs whe
2fcb0 6e 20 74 63 6c 73 68 20 69 73 20 72 75 6e 6e 69  n tclsh is runni
2fcc0 6e 67 0a 6f 75 74 73 69 64 65 20 6f 66 20 74 68  ng.outside of th
2fcd0 65 20 65 76 65 6e 74 20 6c 6f 6f 70 2e 20 41 73  e event loop. As
2fce0 20 70 61 72 74 20 6f 66 20 74 68 69 73 2c 20 72   part of this, r
2fcf0 65 6e 61 6d 65 64 0a 54 63 6c 70 41 6c 65 72 74  enamed.TclpAlert
2fd00 4e 6f 74 69 66 69 65 72 20 62 61 63 6b 20 74 6f  Notifier back to
2fd10 20 54 63 6c 5f 41 6c 65 72 74 4e 6f 74 69 66 69   Tcl_AlertNotifi
2fd20 65 72 20 73 69 6e 63 65 20 69 74 20 69 73 20 70  er since it is p
2fd30 75 62 6c 69 63 2e 0a 28 73 74 61 6e 74 6f 6e 29  ublic..(stanton)
2fd40 0a 0a 33 2f 32 33 2f 39 39 20 28 66 65 61 74 75  ..3/23/99 (featu
2fd50 72 65 20 63 68 61 6e 67 65 29 20 54 65 73 74 20  re change) Test 
2fd60 73 75 69 74 65 20 6e 6f 77 20 75 73 65 73 20 22  suite now uses "
2fd70 74 63 6c 74 65 73 74 22 20 6e 61 6d 65 73 70 61  tcltest" namespa
2fd80 63 65 20 74 6f 0a 64 65 66 69 6e 65 20 74 68 65  ce to.define the
2fd90 20 74 65 73 74 20 70 72 6f 63 65 64 75 72 65 20   test procedure 
2fda0 61 6e 64 20 6f 74 68 65 72 20 61 75 78 69 6c 69  and other auxili
2fdb0 61 72 79 20 70 72 6f 63 65 64 75 72 65 73 20 61  ary procedures a
2fdc0 73 20 77 65 6c 6c 20 61 73 0a 67 6c 6f 62 61 6c  s well as.global
2fdd0 20 76 61 72 69 61 62 6c 65 73 2e 20 20 54 68 65   variables.  The
2fde0 20 70 72 65 76 69 6f 75 73 6c 79 20 63 68 6f 73   previously chos
2fdf0 65 6e 20 22 74 65 73 74 22 20 6e 61 6d 65 73 70  en "test" namesp
2fe00 61 63 65 20 77 61 73 20 74 68 6f 75 67 68 74 0a  ace was thought.
2fe10 74 6f 20 62 65 20 74 6f 6f 20 67 65 6e 65 72 69  to be too generi
2fe20 63 20 61 6e 64 20 6c 69 6b 65 6c 79 20 74 6f 20  c and likely to 
2fe30 63 72 65 61 74 65 20 63 6f 6e 66 6c 69 74 73 2e  create conflits.
2fe40 0a 28 68 69 72 73 63 68 6c 29 0a 2a 2a 2a 20 50  .(hirschl).*** P
2fe50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
2fe60 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 33 2f  TIBILITY ***..3/
2fe70 32 34 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  24/99 (bug fix) 
2fe80 4d 61 6b 65 20 73 6f 63 6b 65 74 73 20 74 68 72  Make sockets thr
2fe90 65 61 64 20 73 61 66 65 20 6f 6e 20 57 69 6e 64  ead safe on Wind
2fea0 6f 77 73 2e 0a 28 72 65 64 6d 61 6e 29 0a 0a 33  ows..(redman)..3
2feb0 2f 32 34 2f 39 39 20 28 62 75 67 20 66 69 78 29  /24/99 (bug fix)
2fec0 20 46 69 78 20 63 61 73 65 73 20 77 68 65 72 65   Fix cases where
2fed0 20 65 78 70 72 20 77 6f 75 6c 64 20 69 6e 63 6f   expr would inco
2fee0 72 72 65 63 74 20 72 65 74 75 72 6e 0a 61 20 66  rrect return.a f
2fef0 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 76 61  loating point va
2ff00 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20 61  lue instead of a
2ff10 6e 20 69 6e 74 65 67 65 72 2e 20 28 73 74 61 6e  n integer. (stan
2ff20 74 6f 6e 29 0a 0a 33 2f 32 35 2f 39 39 20 28 62  ton)..3/25/99 (b
2ff30 75 67 20 66 69 78 29 20 41 64 64 65 64 20 41 53  ug fix) Added AS
2ff40 43 49 49 20 74 6f 20 62 69 67 35 20 61 6e 64 20  CII to big5 and 
2ff50 67 62 32 33 31 32 20 65 6e 63 6f 64 69 6e 67 73  gb2312 encodings
2ff60 2e 0a 28 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f 32  ..(stanton)..3/2
2ff70 35 2f 39 39 20 28 66 65 61 74 75 72 65 20 63 68  5/99 (feature ch
2ff80 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 73 6f  ange) Changed so
2ff90 20 61 6c 69 61 73 65 73 20 61 72 65 20 69 6e 76   aliases are inv
2ffa0 6f 6b 65 64 20 61 74 20 63 75 72 72 65 6e 74 0a  oked at current.
2ffb0 73 63 6f 70 65 20 69 6e 20 74 68 65 20 74 61 72  scope in the tar
2ffc0 67 65 74 20 69 6e 74 65 72 70 72 65 74 65 72 20  get interpreter 
2ffd0 69 6e 73 74 65 61 64 20 6f 66 20 61 74 20 74 68  instead of at th
2ffe0 65 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 2e 20  e global scope. 
2fff0 20 54 68 69 73 0a 77 61 73 20 61 6e 20 69 6e 63   This.was an inc
30000 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 69 6e 74  ompatibility int
30010 72 6f 64 75 63 65 64 20 69 6e 20 38 2e 31 20 74  roduced in 8.1 t
30020 68 61 74 20 69 73 20 62 65 69 6e 67 20 72 65 6d  hat is being rem
30030 6f 76 65 64 2e 0a 28 73 74 61 6e 74 6f 6e 29 0a  oved..(stanton).
30040 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
30050 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
30060 74 68 20 70 72 65 76 69 6f 75 73 20 62 65 74 61  th previous beta
30070 20 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a 33   releases ***..3
30080 2f 32 36 2f 39 39 20 28 66 65 61 74 75 72 65 20  /26/99 (feature 
30090 63 68 61 6e 67 65 29 20 2d 2d 65 6e 61 62 6c 65  change) --enable
300a0 2d 73 68 61 72 65 64 20 69 73 20 6e 6f 77 20 74  -shared is now t
300b0 68 65 20 64 65 66 61 75 6c 74 20 61 6e 64 20 62  he default and b
300c0 75 69 6c 64 0a 54 63 6c 20 61 73 20 61 20 73 68  uild.Tcl as a sh
300d0 61 72 65 64 20 6c 69 62 72 61 72 79 3b 20 73 70  ared library; sp
300e0 65 63 69 66 79 20 2d 2d 64 69 73 61 62 6c 65 2d  ecify --disable-
300f0 73 68 61 72 65 64 20 74 6f 20 62 75 69 6c 64 20  shared to build 
30100 61 20 73 74 61 74 69 63 20 54 63 6c 0a 6c 69 62  a static Tcl.lib
30110 72 61 72 79 20 61 6e 64 20 73 68 65 6c 6c 2e 0a  rary and shell..
30120 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
30130 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
30140 2a 0a 0a 33 2f 32 39 2f 39 39 20 28 62 75 67 20  *..3/29/99 (bug 
30150 66 69 78 29 20 20 52 65 6d 6f 76 65 64 20 74 68  fix)  Removed th
30160 65 20 73 74 75 62 20 66 75 6e 63 74 69 6f 6e 73  e stub functions
30170 20 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68 65   and changed the
30180 20 73 74 75 62 0a 6d 61 63 72 6f 73 20 74 6f 20   stub.macros to 
30190 6a 75 73 74 20 75 73 65 20 74 68 65 20 6e 61 6d  just use the nam
301a0 65 20 77 69 74 68 6f 75 74 20 70 61 72 61 6d 73  e without params
301b0 2e 20 50 61 73 73 20 26 74 63 6c 53 74 75 62 73  . Pass &tclStubs
301c0 20 69 6e 74 6f 20 74 68 65 0a 69 6e 74 65 72 70   into the.interp
301d0 20 28 64 6f 6e 27 74 20 75 73 65 20 74 63 6c 53   (don't use tclS
301e0 74 75 62 73 50 74 72 20 62 65 63 61 75 73 65 20  tubsPtr because 
301f0 6f 66 20 63 6f 6c 6c 69 73 69 6f 6e 73 20 77 69  of collisions wi
30200 74 68 20 74 68 65 20 73 74 75 62 73 20 6f 6e 0a  th the stubs on.
30210 53 6f 6c 61 72 69 73 29 2e 20 28 72 65 64 6d 61  Solaris). (redma
30220 6e 29 0a 0a 33 2f 33 30 2f 39 39 20 28 62 75 67  n)..3/30/99 (bug
30230 20 66 69 78 29 20 4c 6f 61 64 61 62 6c 65 20 6d   fix) Loadable m
30240 6f 64 75 6c 65 73 20 61 72 65 20 6e 6f 77 20 75  odules are now u
30250 6e 6c 6f 61 64 65 64 20 61 74 20 74 68 65 20 6c  nloaded at the l
30260 61 73 74 0a 70 6f 73 73 69 62 6c 65 20 6d 6f 6d  ast.possible mom
30270 65 6e 74 20 64 75 72 69 6e 67 20 54 63 6c 5f 46  ent during Tcl_F
30280 69 6e 61 6c 69 7a 65 20 74 6f 20 66 69 78 20 76  inalize to fix v
30290 61 72 69 6f 75 73 20 65 78 69 74 2d 74 69 6d 65  arious exit-time
302a0 20 63 72 61 73 68 65 73 2e 0a 28 77 65 6c 63 68   crashes..(welch
302b0 29 0a 0a 33 2f 33 30 2f 39 39 20 28 62 75 67 20  )..3/30/99 (bug 
302c0 66 69 78 29 20 54 63 6c 20 6e 6f 20 6c 6f 6e 67  fix) Tcl no long
302d0 65 72 20 63 61 6c 6c 73 20 73 65 74 6c 6f 63 61  er calls setloca
302e0 6c 65 28 29 2e 20 20 49 74 20 6c 6f 6f 6b 73 20  le().  It looks 
302f0 61 74 0a 65 6e 76 28 4c 41 4e 47 29 20 61 6e 64  at.env(LANG) and
30300 20 65 6e 76 28 4c 43 5f 54 59 50 45 29 20 69 6e   env(LC_TYPE) in
30310 73 74 65 61 64 2e 20 20 28 73 74 61 6e 74 6f 6e  stead.  (stanton
30320 29 0a 0a 34 2f 31 2f 39 39 20 28 62 75 67 20 66  )..4/1/99 (bug f
30330 69 78 29 20 46 69 78 65 64 20 74 68 65 20 55 6c  ix) Fixed the Ul
30340 74 72 69 78 20 6d 75 6c 74 69 70 6c 65 20 73 79  trix multiple sy
30350 6d 62 6f 6c 20 64 65 66 69 6e 69 74 69 6f 6e 20  mbol definition 
30360 70 72 6f 62 6c 65 6d 2e 0a 4e 6f 77 2c 20 65 76  problem..Now, ev
30370 65 6e 20 54 63 6c 20 69 6e 63 6c 75 64 65 73 20  en Tcl includes 
30380 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 54 63  a copy of the Tc
30390 6c 20 73 74 75 62 20 6c 69 62 72 61 72 79 2e 20  l stub library. 
303a0 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 31 2f 39 39  (redman)..4/1/99
303b0 20 28 62 75 67 20 66 69 78 29 20 49 6e 74 65 72   (bug fix) Inter
303c0 6e 61 74 69 6f 6e 61 6c 69 7a 65 64 20 74 68 65  nationalized the
303d0 20 72 65 67 69 73 74 72 79 20 70 61 63 6b 61 67   registry packag
303e0 65 2e 0a 0a 34 2f 31 2f 39 39 20 28 62 75 67 20  e...4/1/99 (bug 
303f0 66 69 78 29 20 43 68 61 6e 67 65 64 20 74 68 65  fix) Changed the
30400 20 69 6d 70 6c 65 6d 65 6e 61 74 69 6f 6e 20 6f   implemenation o
30410 66 20 54 63 6c 5f 43 6f 6e 64 69 74 69 6f 6e 57  f Tcl_ConditionW
30420 61 69 74 20 61 6e 64 0a 54 63 6c 5f 43 6f 6e 64  ait and.Tcl_Cond
30430 69 74 69 6f 6e 4e 6f 74 69 66 79 20 6f 6e 20 57  itionNotify on W
30440 69 6e 64 6f 77 73 2e 20 20 54 68 65 20 6e 65 77  indows.  The new
30450 20 61 6c 67 6f 72 69 74 68 6d 20 65 6c 69 6d 69   algorithm elimi
30460 6e 61 74 65 73 20 61 20 72 61 63 65 0a 63 6f 6e  nates a race.con
30470 64 69 74 69 6f 6e 20 61 6e 64 20 77 61 73 20 73  dition and was s
30480 75 67 67 65 73 74 65 64 20 62 79 20 4a 69 6d 20  uggested by Jim 
30490 44 61 76 69 64 73 6f 6e 2e 20 28 77 65 6c 63 68  Davidson. (welch
304a0 29 0a 0a 34 2f 32 2f 39 39 20 28 6e 65 77 20 61  )..4/2/99 (new a
304b0 70 69 73 29 20 20 4d 61 64 65 20 76 61 72 69 6f  pis)  Made vario
304c0 75 73 20 55 6e 69 63 6f 64 65 20 75 74 69 6c 69  us Unicode utili
304d0 74 79 20 66 75 6e 63 74 69 6f 6e 73 20 70 75 62  ty functions pub
304e0 6c 69 63 2e 0a 54 63 6c 5f 55 74 66 54 6f 55 6e  lic..Tcl_UtfToUn
304f0 69 43 68 61 72 44 53 74 72 69 6e 67 2c 20 54 63  iCharDString, Tc
30500 6c 5f 55 6e 69 43 68 61 72 54 6f 55 74 66 44 53  l_UniCharToUtfDS
30510 74 72 69 6e 67 2c 20 54 63 6c 5f 55 6e 69 43 68  tring, Tcl_UniCh
30520 61 72 4c 65 6e 2c 0a 54 63 6c 5f 55 6e 69 43 68  arLen,.Tcl_UniCh
30530 61 72 4e 63 6d 70 2c 20 54 63 6c 5f 55 6e 69 43  arNcmp, Tcl_UniC
30540 68 61 72 49 73 41 6c 6e 75 6d 2c 20 54 63 6c 5f  harIsAlnum, Tcl_
30550 55 6e 69 43 68 61 72 49 73 41 6c 70 68 61 2c 0a  UniCharIsAlpha,.
30560 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 44 69 67  Tcl_UniCharIsDig
30570 69 74 2c 20 54 63 6c 5f 55 6e 69 43 68 61 72 49  it, Tcl_UniCharI
30580 73 4c 6f 77 65 72 2c 20 54 63 6c 5f 55 6e 69 43  sLower, Tcl_UniC
30590 68 61 72 49 73 53 70 61 63 65 2c 0a 54 63 6c 5f  harIsSpace,.Tcl_
305a0 55 6e 69 43 68 61 72 49 73 55 70 70 65 72 2c 20  UniCharIsUpper, 
305b0 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 57 6f 72  Tcl_UniCharIsWor
305c0 64 43 68 61 72 2c 20 54 63 6c 5f 57 69 6e 55 74  dChar, Tcl_WinUt
305d0 66 54 6f 54 43 68 61 72 2c 0a 54 63 6c 5f 57 69  fToTChar,.Tcl_Wi
305e0 6e 54 43 68 61 72 54 6f 55 74 66 20 28 73 74 61  nTCharToUtf (sta
305f0 6e 74 6f 6e 29 0a 0a 34 2f 32 2f 39 39 20 28 66  nton)..4/2/99 (f
30600 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
30610 64 64 20 6e 65 77 20 44 44 45 20 70 61 63 6b 61  dd new DDE packa
30620 67 65 20 61 6e 64 20 72 65 6d 6f 76 65 64 20 74  ge and removed t
30630 68 65 20 54 6b 0a 73 65 6e 64 20 63 6f 6d 6d 61  he Tk.send comma
30640 6e 64 20 66 72 6f 6d 20 74 68 65 20 57 69 6e 64  nd from the Wind
30650 6f 77 73 20 76 65 72 73 69 6f 6e 2e 20 20 43 68  ows version.  Ch
30660 61 6e 67 65 64 20 44 44 45 2d 62 61 73 65 64 20  anged DDE-based 
30670 73 65 6e 64 0a 63 6f 64 65 20 69 6e 74 6f 20 22  send.code into "
30680 64 64 65 20 65 76 61 6c 22 20 63 6f 6d 6d 61 6e  dde eval" comman
30690 64 2e 20 20 54 68 65 20 44 44 45 20 70 61 63 6b  d.  The DDE pack
306a0 61 67 65 20 63 61 6e 20 62 65 20 6c 6f 61 64 65  age can be loade
306b0 64 0a 69 6e 74 6f 20 74 63 6c 73 68 2c 20 6e 6f  d.into tclsh, no
306c0 74 20 6a 75 73 74 20 77 69 73 68 2e 20 20 57 69  t just wish.  Wi
306d0 6e 64 6f 77 73 20 6f 6e 6c 79 2e 20 28 72 65 64  ndows only. (red
306e0 6d 61 6e 29 0a 0a 34 2f 35 2f 39 39 20 28 62 75  man)..4/5/99 (bu
306f0 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 73  g fix) Changed s
30700 61 66 65 2d 74 63 6c 20 73 6f 20 74 68 61 74 20  afe-tcl so that 
30710 74 68 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f 6d  the encoding com
30720 6d 61 6e 64 0a 69 73 20 61 6e 20 61 6c 69 61 73  mand.is an alias
30730 20 74 68 61 74 20 6d 61 73 6b 73 20 6f 75 74 20   that masks out 
30740 74 68 65 20 22 65 6e 63 6f 64 69 6e 67 20 73 79  the "encoding sy
30750 73 74 65 6d 22 20 73 75 62 63 6f 6d 6d 61 6e 64  stem" subcommand
30760 2e 0a 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 35 2f  ..(redman)..4/5/
30770 39 39 20 28 62 75 67 20 66 69 78 29 20 43 6f 6e  99 (bug fix) Con
30780 66 69 67 75 72 65 20 70 61 74 63 68 65 73 20 74  figure patches t
30790 6f 20 69 6d 70 72 6f 76 65 20 73 75 70 70 6f 72  o improve suppor
307a0 74 20 66 6f 72 0a 4f 53 2f 33 39 30 20 61 6e 64  t for.OS/390 and
307b0 20 42 53 44 2f 4f 53 20 34 2e 2a 2e 20 28 73 74   BSD/OS 4.*. (st
307c0 61 6e 74 6f 6e 29 0a 0a 34 2f 35 2f 39 39 20 28  anton)..4/5/99 (
307d0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63  bug fix) Fixed c
307e0 72 61 73 68 20 69 6e 20 74 68 65 20 63 6c 6f 63  rash in the cloc
307f0 6b 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20 6f  k command that o
30800 63 63 75 72 72 65 64 0a 77 69 74 68 20 6e 65 67  ccurred.with neg
30810 61 74 69 76 65 20 74 69 6d 65 20 76 61 6c 75 65  ative time value
30820 73 20 69 6e 20 74 69 6d 65 7a 6f 6e 65 73 20 65  s in timezones e
30830 61 73 74 20 6f 66 20 47 4d 54 2e 20 28 73 74 61  ast of GMT. (sta
30840 6e 74 6f 6e 29 0a 0a 34 2f 36 2f 39 39 20 28 62  nton)..4/6/99 (b
30850 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 74 68  ug fix) Moved th
30860 65 20 22 61 72 72 61 79 20 73 65 74 22 20 43 20  e "array set" C 
30870 6c 65 76 65 6c 20 63 6f 64 65 20 69 6e 74 6f 20  level code into 
30880 61 20 63 6f 6d 6d 6f 6e 0a 72 6f 75 74 69 6e 65  a common.routine
30890 20 28 54 63 6c 41 72 72 61 79 53 65 74 29 2e 20   (TclArraySet). 
308a0 20 54 68 65 20 54 63 6c 53 65 74 75 70 45 6e 76   The TclSetupEnv
308b0 20 72 6f 75 74 69 6e 65 20 6e 6f 77 20 75 73 65   routine now use
308c0 73 20 74 68 69 73 20 41 50 49 20 74 6f 0a 63 72  s this API to.cr
308d0 65 61 74 65 20 61 6e 20 65 6e 76 20 61 72 72 61  eate an env arra
308e0 79 20 77 2f 20 6e 6f 20 65 6c 65 6d 65 6e 74 73  y w/ no elements
308f0 2e 20 20 54 68 69 73 20 66 69 78 65 73 20 74 68  .  This fixes th
30900 65 20 62 75 67 20 63 61 75 73 65 64 20 77 68 65  e bug caused whe
30910 6e 0a 65 76 65 72 79 20 65 6e 76 69 72 6f 6e 20  n.every environ 
30920 76 61 72 61 69 62 6c 65 20 69 73 20 72 65 6d 6f  varaible is remo
30930 76 65 64 2c 20 61 6e 64 20 74 68 65 20 54 63 6c  ved, and the Tcl
30940 20 65 6e 76 20 76 61 72 69 61 62 6c 65 20 69 73   env variable is
30950 0a 73 79 6e 63 68 65 64 2e 20 20 49 66 20 6e 6f  .synched.  If no
30960 20 65 6e 76 69 72 6f 6e 20 76 61 72 73 20 65 78   environ vars ex
30970 69 73 74 65 64 2c 20 74 68 65 20 54 63 6c 20 65  isted, the Tcl e
30980 6e 76 20 76 61 72 20 77 6f 75 6c 64 20 6e 65 76  nv var would nev
30990 65 72 20 62 65 0a 63 72 65 61 74 65 64 2e 20 28  er be.created. (
309a0 73 75 72 6c 65 73 29 0a 0a 34 2f 36 2f 39 39 20  surles)..4/6/99 
309b0 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20 74  (bug fix) Made t
309c0 68 65 20 45 6e 76 20 6d 6f 64 75 6c 65 20 49 31  he Env module I1
309d0 38 4e 20 63 6f 6d 70 6c 69 61 6e 74 2e 20 28 73  8N compliant. (s
309e0 75 72 6c 65 73 29 0a 0a 34 2f 36 2f 39 39 20 28  urles)..4/6/99 (
309f0 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
30a00 20 74 68 65 20 46 69 6e 64 56 61 72 69 61 62 6c   the FindVariabl
30a10 65 20 72 6f 75 74 69 6e 65 20 74 6f 20 54 63 6c  e routine to Tcl
30a20 70 46 69 6e 64 56 61 72 69 61 62 6c 65 2c 0a 74  pFindVariable,.t
30a30 68 61 74 20 6e 6f 77 20 64 6f 65 73 20 61 20 63  hat now does a c
30a40 61 73 65 20 69 6e 73 65 6e 73 69 74 69 76 65 20  ase insensitive 
30a50 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 69 73 6f  string compariso
30a60 6e 20 6f 6e 20 57 69 6e 64 6f 77 73 2c 20 61 6e  n on Windows, an
30a70 64 20 6e 6f 74 0a 6f 6e 20 55 4e 49 58 2e 20 28  d not.on UNIX. (
30a80 73 75 72 6c 65 73 29 0a 0a 2d 2d 2d 2d 2d 2d 2d  surles)..-------
30a90 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
30aa0 64 20 38 2e 31 62 33 2c 20 41 70 72 69 6c 20 36  d 8.1b3, April 6
30ab0 2c 20 31 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  , 1999 ---------
30ac0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 34  -------------..4
30ad0 2f 39 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /9/99 (bug fix) 
30ae0 20 46 69 78 65 64 20 6e 6f 74 69 66 69 65 72 20   Fixed notifier 
30af0 64 65 61 64 6c 6f 63 6b 20 73 69 74 75 61 74 69  deadlock situati
30b00 6f 6e 20 77 68 65 6e 20 74 68 65 20 70 69 70 65  on when the pipe
30b10 20 75 73 65 64 0a 74 6f 20 74 61 6c 6b 20 62 61   used.to talk ba
30b20 63 6b 20 6e 6f 74 69 66 69 65 72 20 74 68 72 65  ck notifier thre
30b30 61 64 20 69 73 20 66 69 6c 6c 65 64 20 77 69 74  ad is filled wit
30b40 68 20 64 61 74 61 2e 20 20 46 6f 75 6e 64 20 61  h data.  Found a
30b50 73 20 61 20 72 65 73 75 6c 74 20 6f 66 20 74 68  s a result of th
30b60 65 0a 66 6f 63 75 73 2e 74 65 73 74 20 66 6f 72  e.focus.test for
30b70 20 54 6b 20 68 61 6e 67 69 6e 67 2e 20 28 72 65   Tk hanging. (re
30b80 64 6d 61 6e 29 0a 0a 34 2f 31 33 2f 39 39 20 28  dman)..4/13/99 (
30b90 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
30ba0 75 67 20 77 68 65 72 65 20 73 6f 63 6b 65 74 20  ug where socket 
30bb0 2d 61 73 79 6e 63 20 63 6f 6d 62 69 6e 65 64 20  -async combined 
30bc0 77 69 74 68 0a 66 69 6c 65 65 76 65 6e 74 20 66  with.fileevent f
30bd0 6f 72 20 77 72 69 74 69 6e 67 20 64 69 64 20 6e  or writing did n
30be0 6f 74 20 77 6f 72 6b 20 75 6e 64 65 72 20 57 69  ot work under Wi
30bf0 6e 64 6f 77 73 20 4e 54 2e 20 28 72 65 64 6d 61  ndows NT. (redma
30c00 6e 29 0a 0a 34 2f 31 33 2f 39 39 20 28 65 6e 63  n)..4/13/99 (enc
30c10 6f 64 69 6e 67 20 66 69 78 29 20 52 65 73 74 6f  oding fix) Resto
30c20 72 65 64 20 74 68 65 20 64 6f 75 62 6c 65 20 62  red the double b
30c30 79 74 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f  yte definition o
30c40 66 20 47 42 32 33 31 32 0a 61 6e 64 20 61 64 64  f GB2312.and add
30c50 65 64 20 74 68 65 20 45 55 43 2d 43 4e 20 65 6e  ed the EUC-CN en
30c60 63 6f 64 69 6e 67 2e 20 20 45 55 43 2d 43 4e 20  coding.  EUC-CN 
30c70 69 73 20 61 20 76 61 72 69 61 6e 74 20 6f 66 20  is a variant of 
30c80 47 42 32 33 31 32 20 74 68 61 74 0a 73 68 69 66  GB2312 that.shif
30c90 74 73 20 74 68 65 20 63 68 61 72 61 63 74 65 72  ts the character
30ca0 73 20 69 6e 74 6f 20 62 79 74 65 73 20 77 69 74  s into bytes wit
30cb0 68 20 74 68 65 20 68 69 67 68 20 62 69 74 20 73  h the high bit s
30cc0 65 74 20 61 6e 64 20 69 6e 63 6c 75 64 65 73 0a  et and includes.
30cd0 41 53 43 49 49 20 61 73 20 61 20 73 75 62 73 65  ASCII as a subse
30ce0 74 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34 2f  t. (stanton)..4/
30cf0 32 37 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  27/99 (bug fix) 
30d00 41 64 64 65 64 20 27 65 78 74 65 72 6e 20 22 43  Added 'extern "C
30d10 22 20 7b 7d 27 20 62 6c 6f 63 6b 20 61 72 6f 75  " {}' block arou
30d20 6e 64 20 74 68 65 20 73 74 75 62 20 74 61 62 6c  nd the stub tabl
30d30 65 0a 70 6f 69 6e 74 65 72 20 64 65 63 6c 61 72  e.pointer declar
30d40 61 74 69 6f 6e 20 73 6f 20 74 68 65 20 73 74 75  ation so the stu
30d50 62 20 6c 69 62 72 61 72 79 20 63 61 6e 20 62 65  b library can be
30d60 20 75 73 65 64 20 66 72 6f 6d 20 43 2b 2b 2e 20   used from C++. 
30d70 28 73 74 61 6e 74 6f 6e 29 0a 0a 2d 2d 2d 2d 2d  (stanton)..-----
30d80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
30d90 73 65 64 20 38 2e 31 20 66 69 6e 61 6c 2c 20 41  sed 8.1 final, A
30da0 70 72 69 6c 20 32 39 2c 20 31 39 39 39 20 2d 2d  pril 29, 1999 --
30db0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
30dc0 2d 2d 2d 2d 0a 0a 34 2f 32 32 2f 39 39 20 28 62  ----..4/22/99 (b
30dd0 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
30de0 57 69 6e 64 6f 77 73 20 4e 54 20 73 6f 63 6b 65  Windows NT socke
30df0 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e  t implementation
30e00 20 74 6f 20 61 76 6f 69 64 0a 63 72 65 61 74 69   to avoid.creati
30e10 6e 67 20 61 20 63 6f 6d 6d 75 6e 69 63 61 74 69  ng a communicati
30e20 6f 6e 20 77 69 6e 64 6f 77 2e 20 20 54 68 69 73  on window.  This
30e30 20 61 76 6f 69 64 73 20 74 68 65 20 70 72 6f 62   avoids the prob
30e40 6c 65 6d 20 77 68 65 72 65 20 74 68 65 0a 73 79  lem where the.sy
30e50 73 74 65 6d 20 68 61 6e 67 73 20 77 61 69 74 69  stem hangs waiti
30e60 6e 67 20 66 6f 72 20 74 63 6c 73 68 20 74 6f 20  ng for tclsh to 
30e70 72 65 73 70 6f 6e 64 20 74 6f 20 61 20 73 79 73  respond to a sys
30e80 74 65 6d 2d 77 69 64 65 20 73 79 6e 63 68 72 6f  tem-wide synchro
30e90 6e 6f 75 73 0a 62 72 6f 61 64 63 61 73 74 20 28  nous.broadcast (
30ea0 65 2e 67 2e 20 69 66 20 79 6f 75 20 63 68 61 6e  e.g. if you chan
30eb0 67 65 20 73 79 73 74 65 6d 20 63 6f 6c 6f 72 73  ge system colors
30ec0 29 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 32  ). (redman)..4/2
30ed0 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41  2/99 (bug fix) A
30ee0 64 64 65 64 20 63 61 6c 6c 20 74 6f 20 54 63 6c  dded call to Tcl
30ef0 57 69 6e 49 6e 69 74 20 66 72 6f 6d 20 54 63 6c  WinInit from Tcl
30f00 70 49 6e 69 74 50 6c 61 74 66 6f 72 6d 20 77 68  pInitPlatform wh
30f10 65 6e 0a 62 75 69 6c 64 69 6e 67 20 61 20 73 74  en.building a st
30f20 61 74 69 63 20 6c 69 62 72 61 72 79 20 73 69 6e  atic library sin
30f30 63 65 20 44 6c 6c 4d 61 69 6e 20 77 69 6c 6c 20  ce DllMain will 
30f40 6e 6f 74 20 62 65 20 69 6e 76 6f 6b 65 64 2e 20  not be invoked. 
30f50 20 54 68 69 73 0a 63 6f 75 6c 64 20 62 72 65 61   This.could brea
30f60 6b 20 6f 6c 64 20 63 6f 64 65 20 74 68 61 74 20  k old code that 
30f70 65 78 70 6c 69 63 69 74 6c 79 20 63 61 6c 6c 65  explicitly calle
30f80 64 20 54 63 6c 57 69 6e 49 6e 69 74 2c 20 62 75  d TclWinInit, bu
30f90 74 20 73 68 6f 75 6c 64 20 62 65 0a 73 69 6d 70  t should be.simp
30fa0 6c 65 72 20 69 6e 20 74 68 65 20 6c 6f 6e 67 20  ler in the long 
30fb0 72 75 6e 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 2a  run. (stanton).*
30fc0 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
30fd0 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
30fe0 0a 0a 34 2f 32 33 2f 39 39 20 28 62 75 67 20 66  ..4/23/99 (bug f
30ff0 69 78 29 20 41 64 64 65 64 20 73 75 70 70 6f 72  ix) Added suppor
31000 74 20 66 6f 72 20 74 68 65 20 6b 6f 69 38 2d 72  t for the koi8-r
31010 20 43 79 72 69 6c 6c 69 63 0a 65 6e 63 6f 64 69   Cyrillic.encodi
31020 6e 67 2e 20 5b 42 75 67 3a 20 31 37 37 31 5d 20  ng. [Bug: 1771] 
31030 28 73 74 61 6e 74 6f 6e 29 0a 0a 34 2f 32 38 2f  (stanton)..4/28/
31040 39 39 20 28 62 75 67 20 66 69 78 29 20 43 68 61  99 (bug fix) Cha
31050 6e 67 65 64 20 69 6e 74 65 72 6e 61 6c 20 54 63  nged internal Tc
31060 6c 5f 4f 62 6a 20 75 73 61 67 65 20 74 6f 20 61  l_Obj usage to a
31070 76 6f 69 64 20 66 72 65 65 69 6e 67 20 74 68 65  void freeing the
31080 0a 69 6e 74 65 72 6e 61 6c 20 72 65 70 72 65 73  .internal repres
31090 65 6e 74 61 74 69 6f 6e 20 61 66 74 65 72 20 74  entation after t
310a0 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73  he string repres
310b0 65 6e 74 61 74 69 6f 6e 20 68 61 73 20 62 65 65  entation has bee
310c0 6e 0a 66 72 65 65 64 2e 20 20 54 68 69 73 20 6d  n.freed.  This m
310d0 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74  akes it easier t
310e0 6f 20 64 65 62 75 67 20 65 78 74 65 6e 73 69 6f  o debug extensio
310f0 6e 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34  ns. (stanton)..4
31100 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /30/99 (bug fix)
31110 20 46 69 78 65 64 20 61 20 6d 65 6d 6f 72 79 20   Fixed a memory 
31120 6c 65 61 6b 20 69 6e 20 43 6f 6d 6d 61 6e 64 43  leak in CommandC
31130 6f 6d 70 6c 65 74 65 2e 20 28 73 74 61 6e 74 6f  omplete. (stanto
31140 6e 29 0a 0a 35 2f 33 2f 39 39 20 28 62 75 67 20  n)..5/3/99 (bug 
31150 66 69 78 29 20 46 69 78 65 64 20 61 20 62 75 67  fix) Fixed a bug
31160 20 77 68 65 72 65 20 74 68 65 20 54 63 6c 5f 4f   where the Tcl_O
31170 62 6a 54 79 70 65 20 77 61 73 20 6e 6f 74 20 62  bjType was not b
31180 65 69 6e 67 20 73 65 74 0a 69 6e 20 61 20 64 75  eing set.in a du
31190 70 6c 69 63 61 74 65 64 20 54 63 6c 5f 4f 62 6a  plicated Tcl_Obj
311a0 2e 20 5b 42 75 67 3a 20 31 39 37 35 2c 20 32 30  . [Bug: 1975, 20
311b0 34 37 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35  47] (stanton)..5
311c0 2f 33 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /3/99 (bug fix) 
311d0 43 68 61 6e 67 65 64 20 54 63 6c 5f 50 61 72 73  Changed Tcl_Pars
311e0 65 43 6f 6d 6d 61 6e 64 20 74 6f 20 61 76 6f 69  eCommand to avoi
311f0 64 20 6d 6f 64 69 66 79 69 6e 67 20 65 76 61 6c  d modifying eval
31200 27 65 64 0a 73 74 72 69 6e 67 73 20 74 68 61 74  'ed.strings that
31210 20 61 72 65 20 61 6c 72 65 61 64 79 20 6e 75 6c   are already nul
31220 6c 20 74 65 72 6d 69 6e 61 74 65 64 2e 20 20 5b  l terminated.  [
31230 42 75 67 3a 20 31 37 39 33 5d 20 28 73 74 61 6e  Bug: 1793] (stan
31240 74 6f 6e 29 0a 0a 35 2f 33 2f 39 39 20 28 6e 65  ton)..5/3/99 (ne
31250 77 20 66 65 61 74 75 72 65 29 20 41 70 70 6c 69  w feature) Appli
31260 65 64 20 4a 65 66 66 20 48 6f 62 62 73 27 73 20  ed Jeff Hobbs's 
31270 73 74 72 69 6e 67 20 70 61 74 63 68 20 77 68 69  string patch whi
31280 63 68 20 69 6e 63 6c 75 64 65 73 0a 74 68 65 20  ch includes.the 
31290 66 6f 6c 6c 6f 77 69 6e 67 20 63 68 61 6e 67 65  following change
312a0 73 3a 0a 20 20 20 20 2d 20 61 64 64 65 64 20 6e  s:.    - added n
312b0 65 77 20 73 75 62 63 6f 6d 6d 61 6e 64 73 3a 20  ew subcommands: 
312c0 65 71 75 61 6c 2c 20 72 65 70 65 61 74 2c 20 6d  equal, repeat, m
312d0 61 70 2c 20 69 73 2c 20 72 65 70 6c 61 63 65 20  ap, is, replace 
312e0 0a 20 20 20 20 2d 20 61 64 64 65 64 20 2d 6c 65  .    - added -le
312f0 6e 67 74 68 20 6f 70 74 69 6f 6e 20 74 6f 20 22  ngth option to "
31300 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 7c 65  string compare|e
31310 71 75 61 6c 22 0a 20 20 20 20 2d 20 61 64 64 65  qual".    - adde
31320 64 20 2d 6e 6f 63 61 73 65 20 6f 70 74 69 6f 6e  d -nocase option
31330 20 74 6f 20 22 73 74 72 69 6e 67 20 63 6f 6d 70   to "string comp
31340 61 72 65 7c 65 71 75 61 6c 7c 6d 61 74 63 68 22  are|equal|match"
31350 0a 20 20 20 20 2d 20 73 74 72 69 6e 67 20 61 6e  .    - string an
31360 64 20 6c 69 73 74 20 69 6e 64 69 63 65 73 20 63  d list indices c
31370 61 6e 20 62 65 20 61 6e 20 69 6e 74 65 67 65 72  an be an integer
31380 20 6f 72 20 65 6e 64 3f 2d 69 6e 74 65 67 65 72   or end?-integer
31390 3f 2e 0a 20 20 20 20 2d 20 61 64 64 65 64 20 6f  ?..    - added o
313a0 70 74 69 6f 6e 61 6c 20 66 69 72 73 74 20 61 6e  ptional first an
313b0 64 20 6c 61 73 74 20 69 6e 64 65 78 20 61 72 67  d last index arg
313c0 73 20 74 6f 20 73 74 72 69 6e 67 20 74 6f 75 70  s to string toup
313d0 70 65 72 2c 20 65 74 20 61 6c 2e 0a 53 65 65 20  per, et al..See 
313e0 74 68 65 20 73 74 72 69 6e 67 2e 6e 20 6d 61 6e  the string.n man
313f0 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 6d 6f  ual entry for mo
31400 72 65 20 64 65 74 61 69 6c 73 20 61 62 6f 75 74  re details about
31410 20 74 68 65 20 6e 65 77 20 73 74 72 69 6e 67 0a   the new string.
31420 66 65 61 74 75 72 65 73 2e 20 20 5b 42 75 67 3a  features.  [Bug:
31430 20 31 38 34 35 5d 20 28 73 74 61 6e 74 6f 6e 29   1845] (stanton)
31440 0a 0a 35 2f 36 2f 39 39 20 28 6e 65 77 20 66 65  ..5/6/99 (new fe
31450 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c  ature) Added Tcl
31460 5f 55 74 66 4e 63 6d 70 20 61 6e 64 20 54 63 6c  _UtfNcmp and Tcl
31470 5f 55 74 66 4e 63 61 73 65 63 6d 70 20 74 6f 20  _UtfNcasecmp to 
31480 6d 61 6b 65 20 55 74 66 0a 73 74 72 69 6e 67 20  make Utf.string 
31490 63 6f 6d 70 61 72 69 73 69 6f 6e 20 65 61 73 69  comparision easi
314a0 65 72 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35  er. (stanton)..5
314b0 2f 37 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /7/99 (bug fix) 
314c0 49 6d 70 72 6f 76 65 64 20 4f 53 2f 33 39 30 20  Improved OS/390 
314d0 73 75 70 70 6f 72 74 2e 20 5b 42 75 67 3a 20 31  support. [Bug: 1
314e0 39 37 36 2c 20 31 39 39 37 5d 20 28 73 74 61 6e  976, 1997] (stan
314f0 74 6f 6e 29 0a 0a 35 2f 31 32 2f 39 39 20 28 62  ton)..5/12/99 (b
31500 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
31510 57 69 6e 64 6f 77 73 20 69 6e 69 74 69 61 6c 69  Windows initiali
31520 7a 61 74 69 6f 6e 20 63 6f 64 65 20 74 6f 20 61  zation code to a
31530 76 6f 69 64 20 75 73 69 6e 67 0a 47 65 74 55 73  void using.GetUs
31540 65 72 4e 61 6d 65 20 73 79 73 74 65 6d 20 63 61  erName system ca
31550 6c 6c 20 69 6e 20 66 61 76 6f 72 20 6f 66 20 74  ll in favor of t
31560 68 65 20 65 6e 76 28 55 53 45 52 4e 41 4d 45 29  he env(USERNAME)
31570 20 76 61 72 69 61 62 6c 65 2e 20 20 54 68 69 73   variable.  This
31580 0a 70 72 6f 76 69 64 65 73 20 61 20 73 69 67 6e  .provides a sign
31590 69 66 69 63 61 6e 74 20 73 74 61 72 74 75 70 20  ificant startup 
315a0 73 70 65 65 64 20 69 6d 70 72 6f 76 65 6d 65 6e  speed improvemen
315b0 74 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f  t. (stanton)..5/
315c0 31 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  12/99 (bug fix) 
315d0 52 65 70 6c 61 63 65 64 20 74 68 65 20 70 65 72  Replaced the per
315e0 2d 69 6e 74 65 72 70 72 65 74 65 72 20 72 65 67  -interpreter reg
315f0 65 78 70 20 63 61 63 68 65 20 77 69 74 68 20 61  exp cache with a
31600 0a 70 65 72 2d 74 68 72 65 61 64 20 63 61 63 68  .per-thread cach
31610 65 2e 20 20 43 68 61 6e 67 65 64 20 74 68 65 20  e.  Changed the 
31620 52 65 67 65 78 70 20 6f 62 6a 65 63 74 20 74 6f  Regexp object to
31630 20 74 61 6b 65 20 61 64 76 61 6e 74 61 67 65 20   take advantage 
31640 6f 66 20 74 68 69 73 0a 65 78 74 72 61 20 63 61  of this.extra ca
31650 63 68 65 2e 20 20 41 64 64 65 64 20 61 20 72 65  che.  Added a re
31660 66 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 74 6f  ference count to
31670 20 74 68 65 20 54 63 6c 52 65 67 65 78 70 20 74   the TclRegexp t
31680 79 70 65 20 73 6f 20 72 65 67 65 78 70 73 0a 63  ype so regexps.c
31690 61 6e 20 62 65 20 73 68 61 72 65 64 20 62 79 20  an be shared by 
316a0 6d 75 6c 74 69 70 6c 65 20 6f 62 6a 65 63 74 73  multiple objects
316b0 2e 20 20 52 65 6d 6f 76 65 64 20 74 68 65 20 70  .  Removed the p
316c0 65 72 2d 69 6e 74 65 72 70 20 72 65 67 65 78 70  er-interp regexp
316d0 20 63 61 63 68 65 0a 66 72 6f 6d 20 74 68 65 20   cache.from the 
316e0 69 6e 74 65 72 70 72 65 74 65 72 2e 20 20 4e 6f  interpreter.  No
316f0 77 20 72 65 67 65 78 70 73 20 63 61 6e 20 62 65  w regexps can be
31700 20 75 73 65 64 20 77 69 74 68 20 6e 6f 20 6e 65   used with no ne
31710 65 64 20 66 6f 72 20 61 6e 0a 69 6e 74 65 72 70  ed for an.interp
31720 72 65 74 65 72 2e 20 54 68 69 73 20 73 65 74 20  reter. This set 
31730 6f 66 20 63 68 61 6e 67 65 73 20 73 68 6f 75 6c  of changes shoul
31740 64 20 70 72 6f 76 69 64 65 20 73 69 67 6e 69 66  d provide signif
31750 69 63 61 6e 74 20 73 70 65 65 64 0a 69 6d 70 72  icant speed.impr
31760 6f 76 65 6d 65 6e 74 73 20 66 6f 72 20 6d 61 6e  ovements for man
31770 79 20 54 63 6c 20 73 63 72 69 70 74 73 2e 20 20  y Tcl scripts.  
31780 5b 42 75 67 3a 20 31 30 36 33 5d 20 28 73 74 61  [Bug: 1063] (sta
31790 6e 74 6f 6e 29 0a 0a 35 2f 31 34 2f 39 39 20 28  nton)..5/14/99 (
317a0 62 75 67 20 66 69 78 29 20 44 75 72 69 6e 69 6e  bug fix) Durinin
317b0 67 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  g initialization
317c0 20 6f 6e 20 55 6e 69 78 2c 20 54 63 6c 20 6e 6f   on Unix, Tcl no
317d0 77 20 65 78 74 72 61 63 74 73 20 74 68 65 0a 65  w extracts the.e
317e0 6e 63 6f 64 69 6e 67 20 73 75 62 66 69 65 6c 64  ncoding subfield
317f0 20 66 72 6f 6d 20 74 68 65 20 4c 41 4e 47 2f 4c   from the LANG/L
31800 43 5f 41 4c 4c 20 65 6e 76 69 72 6f 6e 6d 65 6e  C_ALL environmen
31810 74 20 76 61 72 69 61 62 6c 65 73 20 69 6e 20 63  t variables in c
31820 61 73 65 73 0a 77 68 65 72 65 20 74 68 65 20 6c  ases.where the l
31830 6f 63 61 6c 65 20 69 73 20 6e 6f 74 20 66 6f 75  ocale is not fou
31840 6e 64 20 69 6e 20 74 68 65 20 62 75 69 6c 74 2d  nd in the built-
31850 69 6e 20 6c 6f 63 61 6c 65 20 74 61 62 6c 65 2e  in locale table.
31860 20 20 49 74 20 61 6c 73 6f 0a 61 74 74 65 6d 70    It also.attemp
31870 74 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a 65  ts to initialize
31880 20 74 68 65 20 6c 6f 63 61 6c 65 20 73 75 62 73   the locale subs
31890 79 73 74 65 6d 20 73 6f 20 58 31 31 20 69 73 20  ystem so X11 is 
318a0 68 61 70 70 79 2e 20 5b 42 75 67 3a 20 31 39 38  happy. [Bug: 198
318b0 39 5d 0a 28 73 74 61 6e 74 6f 6e 29 20 0a 0a 35  9].(stanton) ..5
318c0 2f 31 34 2f 39 39 20 28 62 75 67 20 66 69 78 29  /14/99 (bug fix)
318d0 20 41 70 70 6c 69 65 64 20 74 68 65 20 70 61 74   Applied the pat
318e0 63 68 20 74 6f 20 66 69 78 20 31 30 30 2d 79 65  ch to fix 100-ye
318f0 61 72 20 61 6e 64 20 34 30 30 2d 79 65 61 72 0a  ar and 400-year.
31900 62 6f 75 6e 64 61 72 69 65 73 20 69 6e 20 6c 65  boundaries in le
31910 61 70 20 79 65 61 72 20 63 6f 64 65 2c 20 66 72  ap year code, fr
31920 6f 6d 20 49 73 61 61 63 20 48 6f 6c 6c 61 6e 64  om Isaac Holland
31930 65 72 2e 20 20 5b 42 75 67 3a 20 32 30 36 36 5d  er.  [Bug: 2066]
31940 20 28 72 65 64 6d 61 6e 29 0a 0a 35 2f 31 34 2f   (redman)..5/14/
31950 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
31960 65 64 20 61 20 63 72 61 73 68 20 63 61 75 73 65  ed a crash cause
31970 64 20 62 79 20 61 20 66 61 69 6c 75 72 65 20 74  d by a failure t
31980 6f 20 72 65 73 65 74 20 74 68 65 20 72 65 73 75  o reset the resu
31990 6c 74 0a 62 65 66 6f 72 65 20 65 76 61 6c 75 61  lt.before evalua
319a0 74 69 6e 67 20 74 68 65 20 74 65 73 74 20 65 78  ting the test ex
319b0 70 72 65 73 73 69 6f 6e 20 69 6e 20 61 6e 20 75  pression in an u
319c0 6e 63 6f 6d 70 69 6c 65 64 20 66 6f 72 0a 73 74  ncompiled for.st
319d0 61 74 65 6d 65 6e 74 2e 20 28 73 74 61 6e 74 6f  atement. (stanto
319e0 6e 29 0a 0a 35 2f 31 38 2f 39 39 20 28 62 75 67  n)..5/18/99 (bug
319f0 20 66 69 78 29 20 4d 6f 64 69 66 69 65 64 20 69   fix) Modified i
31a00 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 63 6f  nitialization co
31a10 64 65 20 6f 6e 20 57 69 6e 64 6f 77 73 20 74 6f  de on Windows to
31a20 20 61 76 6f 69 64 0a 69 6e 68 65 72 65 6e 74 69   avoid.inherenti
31a30 6e 67 20 63 6c 6f 73 65 64 20 6f 72 20 69 6e 76  ng closed or inv
31a40 61 6c 69 64 20 63 68 61 6e 6e 65 6c 73 2e 20 20  alid channels.  
31a50 49 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20  If the standard 
31a60 69 6e 70 75 74 20 69 73 0a 61 6e 79 74 68 69 6e  input is.anythin
31a70 67 20 6f 74 68 65 72 20 74 68 61 6e 20 61 20 63  g other than a c
31a80 6f 6e 73 6f 6c 65 2c 20 66 69 6c 65 2c 20 73 65  onsole, file, se
31a90 72 69 61 6c 20 70 6f 72 74 2c 20 6f 72 20 70 69  rial port, or pi
31aa0 70 65 2c 20 74 68 65 6e 20 77 65 20 66 61 6c 6c  pe, then we fall
31ab0 0a 62 61 63 6b 20 74 6f 20 74 68 65 20 73 74 61  .back to the sta
31ac0 6e 64 61 72 64 20 54 6b 20 77 69 6e 64 6f 77 20  ndard Tk window 
31ad0 63 6f 6e 73 6f 6c 65 2e 20 28 73 74 61 6e 74 6f  console. (stanto
31ae0 6e 29 0a 0a 35 2f 31 39 2f 39 39 20 28 62 75 67  n)..5/19/99 (bug
31af0 20 66 69 78 29 20 41 64 64 65 64 20 61 6e 20 65   fix) Added an e
31b00 78 74 65 72 6e 20 22 43 22 20 62 6c 6f 63 6b 20  xtern "C" block 
31b10 61 72 6f 75 6e 64 20 74 68 65 20 65 6e 74 69 72  around the entir
31b20 65 20 74 63 6c 2e 68 0a 68 65 61 64 65 72 20 66  e tcl.h.header f
31b30 69 6c 65 20 74 6f 20 61 76 6f 69 64 20 43 2b 2b  ile to avoid C++
31b40 20 6c 69 6e 6b 61 67 65 20 69 73 73 75 65 73 2e   linkage issues.
31b50 20 28 72 65 64 6d 61 6e 29 0a 0a 35 2f 31 39 2f   (redman)..5/19/
31b60 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  99 (new feature)
31b70 20 41 70 70 6c 69 65 64 20 4a 65 66 66 20 48 6f   Applied Jeff Ho
31b80 62 62 27 73 20 70 61 74 63 68 20 74 6f 20 61 64  bb's patch to ad
31b90 64 0a 54 63 6c 5f 53 74 72 69 6e 67 43 61 73 65  d.Tcl_StringCase
31ba0 4d 61 74 63 68 20 74 6f 20 73 75 70 70 6f 72 74  Match to support
31bb0 20 63 61 73 65 20 69 6e 73 65 6e 73 69 74 69 76   case insensitiv
31bc0 65 20 67 6c 6f 62 20 73 74 79 6c 65 20 6d 61 74  e glob style mat
31bd0 63 68 69 6e 67 20 61 6e 64 0a 54 63 6c 5f 55 6e  ching and.Tcl_Un
31be0 69 43 68 61 72 49 73 2a 20 63 68 61 72 61 63 74  iCharIs* charact
31bf0 65 72 20 63 6c 61 73 73 69 66 69 63 61 74 69 6f  er classificatio
31c00 6e 20 66 75 6e 63 74 69 6f 6e 73 2e 20 28 73 74  n functions. (st
31c10 61 6e 74 6f 6e 29 0a 0a 35 2f 32 30 2f 39 39 20  anton)..5/20/99 
31c20 28 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20  (bug fix) Added 
31c30 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 63 6f  the directory co
31c40 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 65 78 65  ntaining the exe
31c50 63 75 74 75 62 6c 65 20 61 6e 64 20 74 68 65 0a  cutuble and the.
31c60 2e 2e 2f 6c 69 62 20 64 69 72 65 63 74 6f 72 79  ../lib directory
31c70 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 61   relative to tha
31c80 74 20 74 6f 20 74 68 65 20 61 75 74 6f 5f 70 61  t to the auto_pa
31c90 74 68 20 76 61 72 69 61 62 6c 65 2e 20 28 72 65  th variable. (re
31ca0 64 6d 61 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  dman)..---------
31cb0 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
31cc0 38 2e 31 2e 31 2c 20 4d 61 79 20 32 35 2c 20 31  8.1.1, May 25, 1
31cd0 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  999 ------------
31ce0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 32 31  ----------..5/21
31cf0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69  /99 (bug fix) Fi
31d00 78 65 64 20 6c 61 75 6e 63 68 69 6e 67 20 63 6f  xed launching co
31d10 6d 6d 61 6e 64 2e 63 6f 6d 20 6f 6e 20 57 69 6e  mmand.com on Win
31d20 39 35 2f 39 38 2c 20 6e 6f 20 6c 6f 6e 67 65 72  95/98, no longer
31d30 0a 68 61 6e 67 73 2e 20 5b 42 75 67 3a 20 32 31  .hangs. [Bug: 21
31d40 30 35 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 35 2f  05] (redman)..5/
31d50 32 38 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  28/99 (bug fix) 
31d60 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65 20  Fixed bug where 
31d70 64 64 65 20 63 61 6c 6c 73 20 77 65 72 65 20 62  dde calls were b
31d80 65 69 6e 67 20 70 61 73 73 65 64 20 61 6e 0a 69  eing passed an.i
31d90 6e 76 61 6c 69 64 20 64 64 65 20 68 61 6e 64 6c  nvalid dde handl
31da0 65 2e 20 5b 42 75 67 3a 20 32 31 32 34 5d 20 28  e. [Bug: 2124] (
31db0 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 31 2f 39 39  stanton)..6/1/99
31dc0 20 20 28 62 75 67 20 66 69 78 29 20 53 6d 61 6c    (bug fix) Smal
31dd0 6c 20 63 6f 6e 66 69 67 75 72 65 2e 69 6e 20 70  l configure.in p
31de0 61 74 63 68 65 73 2e 20 5b 42 75 67 3a 20 32 31  atches. [Bug: 21
31df0 32 31 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36  21] (stanton)..6
31e00 2f 31 2f 39 39 20 20 28 62 75 67 20 66 69 78 29  /1/99  (bug fix)
31e10 20 41 70 70 6c 69 65 64 20 6c 61 74 65 73 74 20   Applied latest 
31e20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69  regular expressi
31e30 6f 6e 20 70 61 74 63 68 65 73 20 74 6f 20 66 69  on patches to fi
31e40 78 20 61 6e 0a 69 6e 66 69 6e 69 74 65 20 6c 6f  x an.infinite lo
31e50 6f 70 20 62 75 67 20 61 6e 64 20 61 64 64 20 73  op bug and add s
31e60 75 70 70 6f 72 74 20 66 6f 72 20 74 65 73 74 69  upport for testi
31e70 6e 67 20 77 68 65 74 68 65 72 20 61 20 73 74 72  ng whether a str
31e80 69 6e 67 20 63 6f 75 6c 64 0a 6d 61 74 63 68 20  ing could.match 
31e90 77 69 74 68 20 61 64 64 69 74 69 6f 6e 61 6c 20  with additional 
31ea0 69 6e 70 75 74 2e 20 5b 42 75 67 3a 20 32 31 31  input. [Bug: 211
31eb0 37 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f  7] (stanton)..6/
31ec0 32 2f 39 39 20 20 28 62 75 67 20 66 69 78 29 20  2/99  (bug fix) 
31ed0 46 69 78 65 64 20 69 6e 63 6f 72 72 65 63 74 20  Fixed incorrect 
31ee0 63 6f 6d 70 75 74 61 74 69 6f 6e 20 6f 66 20 72  computation of r
31ef0 65 6c 61 74 69 76 65 20 6f 72 64 65 72 69 6e 67  elative ordering
31f00 20 69 6e 0a 55 74 66 20 63 61 73 65 2d 69 6e 73   in.Utf case-ins
31f10 65 6e 73 69 74 69 76 65 20 63 6f 6d 70 61 72 69  ensitive compari
31f20 73 6f 6e 2e 20 5b 42 75 67 3a 20 32 31 33 35 5d  son. [Bug: 2135]
31f30 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 33 2f   (stanton)..6/3/
31f40 39 39 20 20 28 62 75 67 20 66 69 78 29 20 46 78  99  (bug fix) Fx
31f50 69 65 64 20 62 75 67 20 77 68 65 72 65 20 73 74  ied bug where st
31f60 72 69 6e 67 20 65 71 75 61 6c 2f 63 6f 6d 70 61  ring equal/compa
31f70 72 65 20 2d 6e 6f 63 61 73 65 0a 72 65 70 6f 72  re -nocase.repor
31f80 74 65 64 20 77 72 6f 6e 67 20 72 65 73 75 6c 74  ted wrong result
31f90 20 6f 6e 20 6e 75 6c 6c 20 73 74 72 69 6e 67 73   on null strings
31fa0 2e 20 5b 42 75 67 3a 20 32 31 33 38 5d 20 28 73  . [Bug: 2138] (s
31fb0 74 61 6e 74 6f 6e 29 0a 0a 36 2f 34 2f 39 39 20  tanton)..6/4/99 
31fc0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 57   (new feature) W
31fd0 69 6e 64 6f 77 73 20 62 75 69 6c 64 20 6e 6f 77  indows build now
31fe0 20 75 73 65 73 20 43 79 67 77 69 6e 20 74 6f 6f   uses Cygwin too
31ff0 6c 73 20 70 6c 75 73 20 47 4e 55 0a 6d 61 6b 65  ls plus GNU.make
32000 20 61 6e 64 20 61 75 74 6f 63 6f 6e 66 20 74 6f   and autoconf to
32010 20 62 75 69 6c 64 20 73 74 61 74 69 63 2f 64 79   build static/dy
32020 6e 61 6d 69 63 20 61 6e 64 20 64 65 62 75 67 2f  namic and debug/
32030 6e 6f 64 65 62 75 67 2e 20 28 73 74 61 6e 74 6f  nodebug. (stanto
32040 6e 29 0a 0a 36 2f 37 2f 39 39 20 20 28 6e 65 77  n)..6/7/99  (new
32050 20 66 65 61 74 75 72 65 29 20 4f 70 74 69 6d 69   feature) Optimi
32060 7a 65 64 20 73 74 72 69 6e 67 20 69 6e 64 65 78  zed string index
32070 2c 20 6c 65 6e 67 74 68 2c 20 72 61 6e 67 65 2c  , length, range,
32080 20 61 6e 64 0a 61 70 70 65 6e 64 20 63 6f 6d 6d   and.append comm
32090 61 6e 64 73 2e 20 41 64 64 65 64 20 61 20 6e 65  ands. Added a ne
320a0 77 20 55 6e 69 63 6f 64 65 20 6f 62 6a 65 63 74  w Unicode object
320b0 20 74 79 70 65 2e 20 28 68 65 72 73 68 65 79 29   type. (hershey)
320c0 0a 0a 36 2f 38 2f 39 39 20 20 28 62 75 67 20 66  ..6/8/99  (bug f
320d0 69 78 29 20 52 6f 6c 6c 65 64 20 62 61 63 6b 20  ix) Rolled back 
320e0 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64  Windows socket d
320f0 72 69 76 65 72 20 74 6f 20 38 2e 31 2e 30 0a 76  river to 8.1.0.v
32100 65 72 73 69 6f 6e 2e 20 28 73 74 61 6e 74 6f 6e  ersion. (stanton
32110 29 0a 0a 36 2f 39 2f 39 39 20 20 28 6e 65 77 20  )..6/9/99  (new 
32120 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54  feature) Added T
32130 63 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 4f 62  cl_RegExpMatchOb
32140 6a 20 61 6e 64 20 54 63 6c 5f 52 65 67 45 78 70  j and Tcl_RegExp
32150 47 65 74 49 6e 66 6f 0a 74 6f 20 70 75 62 6c 69  GetInfo.to publi
32160 63 20 54 63 6c 20 41 50 49 2c 20 74 68 65 73 65  c Tcl API, these
32170 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 6e   functions are n
32180 65 65 64 65 64 20 62 79 20 45 78 70 65 63 74 2e  eeded by Expect.
32190 20 20 43 68 61 6e 67 65 64 0a 74 6f 6f 6c 73 2f    Changed.tools/
321a0 67 65 6e 53 74 75 62 73 2e 74 63 6c 20 74 6f 20  genStubs.tcl to 
321b0 61 6c 77 61 79 73 20 77 72 69 74 65 20 6f 75 74  always write out
321c0 70 75 74 20 69 6e 20 4c 46 20 6d 6f 64 65 2e 20  put in LF mode. 
321d0 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 31 34 2f  (stanton)..6/14/
321e0 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  99 (new feature)
321f0 20 4d 65 72 67 65 64 20 73 74 72 69 6e 67 20 61   Merged string a
32200 6e 64 20 55 6e 69 63 6f 64 65 20 6f 62 6a 65 63  nd Unicode objec
32210 74 20 74 79 70 65 73 2e 20 20 41 64 64 65 64 0a  t types.  Added.
32220 6e 65 77 20 70 75 62 6c 69 63 20 54 63 6c 20 41  new public Tcl A
32230 50 49 20 66 75 6e 63 74 69 6f 6e 73 3a 20 20 54  PI functions:  T
32240 63 6c 5f 4e 65 77 55 6e 69 63 6f 64 65 4f 62 6a  cl_NewUnicodeObj
32250 2c 20 54 63 6c 5f 53 65 74 55 6e 69 63 6f 64 65  , Tcl_SetUnicode
32260 4f 62 6a 2c 0a 54 63 6c 5f 47 65 74 55 6e 69 63  Obj,.Tcl_GetUnic
32270 6f 64 65 2c 20 54 63 6c 5f 47 65 74 55 6e 69 43  ode, Tcl_GetUniC
32280 68 61 72 2c 20 54 63 6c 5f 47 65 74 43 68 61 72  har, Tcl_GetChar
32290 4c 65 6e 67 74 68 2c 20 54 63 6c 5f 47 65 74 52  Length, Tcl_GetR
322a0 61 6e 67 65 2c 0a 54 63 6c 5f 41 70 70 65 6e 64  ange,.Tcl_Append
322b0 55 6e 69 63 6f 64 65 54 6f 4f 62 6a 2e 20 28 68  UnicodeToObj. (h
322c0 65 72 73 68 65 79 29 0a 0a 36 2f 31 36 2f 39 39  ershey)..6/16/99
322d0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 43   (new feature) C
322e0 68 61 6e 67 65 64 20 74 6f 20 63 6f 6e 66 6f 72  hanged to confor
322f0 6d 20 74 6f 20 54 45 41 20 73 70 65 63 69 66 69  m to TEA specifi
32300 63 61 74 69 6f 6e 2c 20 61 64 64 65 64 0a 74 63  cation, added.tc
32310 6c 2e 6d 34 20 61 6e 64 20 61 63 6c 6f 63 61 6c  l.m4 and aclocal
32320 2e 6d 34 20 6d 61 63 72 6f 20 6c 69 62 72 61 72  .m4 macro librar
32330 69 65 73 20 66 6f 72 20 63 6f 6e 66 69 67 75 72  ies for configur
32340 65 2e 20 20 28 77 61 72 74 29 0a 0a 36 2f 31 37  e.  (wart)..6/17
32350 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65  /99 (new feature
32360 29 20 41 64 64 65 64 20 6e 65 77 20 72 65 67 65  ) Added new rege
32370 78 70 20 69 6e 74 65 72 66 61 63 65 73 3a 20 2d  xp interfaces: -
32380 65 78 70 61 6e 64 65 64 2c 20 2d 6c 69 6e 65 2c  expanded, -line,
32390 0a 2d 6c 69 6e 65 73 74 6f 70 2c 20 61 6e 64 20  .-linestop, and 
323a0 2d 6c 69 6e 65 61 6e 63 68 6f 72 20 73 77 69 74  -lineanchor swit
323b0 63 68 65 73 2e 20 20 52 65 6e 61 6d 65 64 20 54  ches.  Renamed T
323c0 63 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 4f 62  cl_RegExpMatchOb
323d0 6a 20 74 6f 0a 54 63 6c 5f 52 65 67 45 78 70 45  j to.Tcl_RegExpE
323e0 78 65 63 4f 62 6a 20 61 6e 64 20 61 64 64 65 64  xecObj and added
323f0 20 6e 65 77 20 54 63 6c 5f 52 65 67 45 78 70 4d   new Tcl_RegExpM
32400 61 74 63 68 4f 62 6a 20 74 68 61 74 20 69 73 20  atchObj that is 
32410 65 71 75 69 76 61 6c 65 6e 74 0a 74 6f 20 54 63  equivalent.to Tc
32420 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 2e 20 20  l_RegExpMatch.  
32430 41 64 64 65 64 20 70 75 62 6c 69 63 20 6d 61 63  Added public mac
32440 72 6f 73 20 66 6f 72 20 72 65 67 65 78 70 20 66  ros for regexp f
32450 6c 61 67 73 2e 20 20 41 64 64 65 64 0a 52 45 47  lags.  Added.REG
32460 5f 42 4f 53 4f 4e 4c 59 20 66 6c 61 67 20 74 6f  _BOSONLY flag to
32470 20 61 6c 6c 6f 77 20 45 78 70 65 63 74 20 74 6f   allow Expect to
32480 20 69 74 65 72 61 74 65 20 74 68 72 6f 75 67 68   iterate through
32490 20 61 20 73 74 72 69 6e 67 20 61 6e 64 20 6f 6e   a string and on
324a0 6c 79 0a 66 69 6e 64 20 6d 61 74 63 68 65 73 20  ly.find matches 
324b0 74 68 61 74 20 73 74 61 72 74 20 61 74 20 74 68  that start at th
324c0 65 20 63 75 72 72 65 6e 74 20 70 6f 73 69 74 69  e current positi
324d0 6f 6e 20 77 69 74 68 69 6e 20 74 68 65 0a 73 74  on within the.st
324e0 72 69 6e 67 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  ring. (stanton).
324f0 0a 36 2f 32 31 2f 39 39 20 28 62 75 67 20 66 69  .6/21/99 (bug fi
32500 78 29 20 46 69 78 65 64 20 6d 65 6d 6f 72 79 20  x) Fixed memory 
32510 6c 65 61 6b 20 69 6e 20 54 63 6c 70 54 68 72 65  leak in TclpThre
32520 61 64 43 72 65 61 74 65 20 77 68 65 72 65 20 74  adCreate where t
32530 68 72 65 61 64 0a 61 74 74 72 69 62 75 74 65 73  hread.attributes
32540 20 77 65 72 65 20 6e 6f 74 20 62 65 69 6e 67 20   were not being 
32550 72 65 6c 65 61 73 65 64 2e 20 20 5b 42 75 67 3a  released.  [Bug:
32560 20 32 32 35 34 5d 20 28 73 74 61 6e 74 6f 6e 29   2254] (stanton)
32570 0a 0a 36 2f 32 33 2f 39 39 20 28 6e 65 77 20 66  ..6/23/99 (new f
32580 65 61 74 75 72 65 29 20 55 70 64 61 74 65 64 20  eature) Updated 
32590 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65  Unicode characte
325a0 72 20 74 61 62 6c 65 73 20 74 6f 20 72 65 66 6c  r tables to refl
325b0 65 63 74 0a 55 6e 69 63 6f 64 65 20 32 2e 31 20  ect.Unicode 2.1 
325c0 64 61 74 61 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  data. (stanton).
325d0 0a 36 2f 32 35 2f 39 39 20 28 6e 65 77 20 66 65  .6/25/99 (new fe
325e0 61 74 75 72 65 29 20 46 69 78 65 64 20 62 75 67  ature) Fixed bug
325f0 73 20 69 6e 20 6e 6f 6e 2d 67 72 65 65 64 79 20  s in non-greedy 
32600 71 75 61 6e 74 69 66 69 65 72 73 20 66 6f 72 20  quantifiers for 
32610 72 65 67 75 6c 61 72 0a 65 78 70 72 65 73 73 69  regular.expressi
32620 6f 6e 20 63 6f 64 65 2e 20 28 73 74 61 6e 74 6f  on code. (stanto
32630 6e 29 0a 0a 36 2f 32 35 2f 39 39 20 28 6e 65 77  n)..6/25/99 (new
32640 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
32650 69 6e 69 74 69 61 6c 20 69 6d 70 6c 65 6d 65 6e  initial implemen
32660 74 61 74 69 6f 6e 20 6f 66 20 6e 65 77 20 54 63  tation of new Tc
32670 6c 20 74 65 73 74 0a 68 61 72 6e 65 73 73 20 70  l test.harness p
32680 61 63 6b 61 67 65 2e 20 20 4d 6f 64 69 66 69 65  ackage.  Modifie
32690 64 20 74 65 73 74 20 66 69 6c 65 73 20 74 6f 20  d test files to 
326a0 75 73 65 20 6e 65 77 20 74 63 6c 74 65 73 74 20  use new tcltest 
326b0 70 61 63 6b 61 67 65 2e 0a 28 6a 65 6e 6e 29 0a  package..(jenn).
326c0 0a 36 2f 32 36 2f 39 39 20 28 6e 65 77 20 66 65  .6/26/99 (new fe
326d0 61 74 75 72 65 29 20 41 70 70 6c 69 65 64 20 70  ature) Applied p
326e0 61 74 63 68 20 66 72 6f 6d 20 50 65 74 65 72 20  atch from Peter 
326f0 48 61 72 64 69 65 20 74 6f 20 61 64 64 20 70 6f  Hardie to add po
32700 6b 65 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 64 64  ke.command to dd
32710 65 20 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68  e and changed th
32720 65 20 64 64 65 20 70 61 63 6b 61 67 65 20 76 65  e dde package ve
32730 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 74 6f 0a  rsion number to.
32740 31 2e 31 2e 20 28 72 65 64 6d 61 6e 29 20 0a 0a  1.1. (redman) ..
32750 36 2f 32 38 2f 39 39 20 28 62 75 67 20 66 69 78  6/28/99 (bug fix
32760 29 20 41 70 70 6c 69 65 64 20 70 61 74 63 68 20  ) Applied patch 
32770 66 72 6f 6d 20 50 65 74 65 72 20 48 61 72 64 69  from Peter Hardi
32780 65 20 74 6f 20 66 69 78 20 70 72 6f 62 6c 65 6d  e to fix problem
32790 20 69 6e 0a 54 63 6c 5f 47 65 74 49 6e 64 65 78   in.Tcl_GetIndex
327a0 46 72 6f 6d 4f 62 6a 28 29 20 77 68 65 6e 20 74  FromObj() when t
327b0 68 65 20 6b 65 79 20 62 65 69 6e 67 20 70 61 73  he key being pas
327c0 73 65 64 20 69 73 20 74 68 65 20 65 6d 70 74 79  sed is the empty
327d0 20 73 74 72 69 6e 67 2e 0a 5b 42 75 67 3a 20 31   string..[Bug: 1
327e0 37 33 38 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 36  738] (redman)..6
327f0 2f 32 39 2f 39 39 20 28 6e 65 77 20 66 65 61 74  /29/99 (new feat
32800 75 72 65 29 20 41 64 64 65 64 20 6f 70 74 69 6f  ure) Added optio
32810 6e 73 20 74 6f 20 74 63 6c 74 65 73 74 20 70 61  ns to tcltest pa
32820 63 6b 61 67 65 3a 20 2d 70 72 65 73 65 72 76 65  ckage: -preserve
32830 63 6f 72 65 2c 0a 2d 6c 69 6d 69 74 63 6f 6e 73  core,.-limitcons
32840 74 72 61 69 6e 74 73 2c 20 2d 68 65 6c 70 2c 20  traints, -help, 
32850 2d 66 69 6c 65 2c 20 2d 6e 6f 74 66 69 6c 65 2c  -file, -notfile,
32860 20 61 6e 64 20 66 6c 61 67 73 2e 20 20 28 6a 65   and flags.  (je
32870 6e 6e 29 0a 0a 37 2f 33 2f 39 39 20 20 28 6e 65  nn)..7/3/99  (ne
32880 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e 67  w feature) Chang
32890 65 64 20 70 61 72 73 69 6e 67 20 6f 66 20 76 61  ed parsing of va
328a0 72 69 61 62 6c 65 20 6e 61 6d 65 73 20 74 6f 20  riable names to 
328b0 61 6c 6c 6f 77 20 65 6d 70 74 79 0a 61 72 72 61  allow empty.arra
328c0 79 20 6e 61 6d 65 73 2e 20 20 4e 6f 77 20 22 24  y names.  Now "$
328d0 28 66 6f 6f 29 22 20 69 73 20 61 20 76 61 72 69  (foo)" is a vari
328e0 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65 2e 20  able reference. 
328f0 20 50 72 65 76 69 6f 75 73 6c 79 20 79 6f 75 0a   Previously you.
32900 68 61 64 20 74 6f 20 75 73 65 20 73 6f 6d 65 74  had to use somet
32910 68 69 6e 67 20 6c 69 6e 65 20 24 3a 3a 28 66 6f  hing line $::(fo
32920 6f 29 2c 20 77 68 69 63 68 20 69 73 20 73 6c 6f  o), which is slo
32930 77 65 72 2e 20 20 54 68 69 73 20 63 68 61 6e 67  wer.  This chang
32940 65 20 77 61 73 0a 72 65 71 75 65 73 74 65 64 20  e was.requested 
32950 62 79 20 4a 65 61 6e 2d 4c 75 63 20 46 6f 6e 74  by Jean-Luc Font
32960 61 69 6e 65 20 66 6f 72 20 68 69 73 20 53 54 4f  aine for his STO
32970 4f 4f 50 20 70 61 63 6b 61 67 65 2e 20 28 77 65  OOP package. (we
32980 6c 63 68 29 0a 0a 37 2f 33 2f 39 39 20 20 28 6e  lch)..7/3/99  (n
32990 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
329a0 64 20 54 63 6c 5f 53 65 74 4e 6f 74 69 66 69 65  d Tcl_SetNotifie
329b0 72 20 28 70 75 62 6c 69 63 20 41 50 49 29 20 61  r (public API) a
329c0 6e 64 0a 61 73 73 6f 63 69 61 74 65 64 20 68 6f  nd.associated ho
329d0 6f 6b 20 70 6f 69 6e 74 73 20 69 6e 20 74 68 65  ok points in the
329e0 20 6e 6f 74 69 66 69 65 72 73 20 74 6f 20 62 65   notifiers to be
329f0 20 61 62 6c 65 20 74 6f 20 72 65 70 6c 61 63 65   able to replace
32a00 20 74 68 65 0a 6e 6f 74 69 66 69 65 72 20 63 61   the.notifier ca
32a10 6c 6c 73 20 61 74 20 72 75 6e 74 69 6d 65 2e 20  lls at runtime. 
32a20 54 68 65 20 58 74 20 6e 6f 74 69 66 69 65 72 20  The Xt notifier 
32a30 61 6e 64 20 74 65 73 74 20 70 72 6f 67 72 61 6d  and test program
32a40 20 75 73 65 20 74 68 69 73 0a 68 6f 6f 6b 2e 20   use this.hook. 
32a50 20 28 77 65 6c 63 68 29 0a 0a 37 2f 33 2f 39 39   (welch)..7/3/99
32a60 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20    (new feature) 
32a70 41 64 64 65 64 20 61 20 6e 65 77 20 76 61 72 69  Added a new vari
32a80 61 6e 74 20 6f 66 20 74 68 65 20 22 54 72 66 20  ant of the "Trf 
32a90 63 6f 72 65 20 70 61 74 63 68 22 20 66 72 6f 6d  core patch" from
32aa0 0a 41 6e 64 72 65 61 73 20 4b 75 70 72 69 65 73  .Andreas Kupries
32ab0 20 74 68 61 74 20 61 64 64 73 20 6e 65 77 20 43   that adds new C
32ac0 20 41 50 49 73 20 54 63 6c 5f 53 74 61 63 6b 43   APIs Tcl_StackC
32ad0 68 61 6e 6e 65 6c 2c 0a 54 63 6c 5f 55 6e 73 74  hannel,.Tcl_Unst
32ae0 61 63 6b 43 68 61 6e 6e 65 6c 2c 20 61 6e 64 20  ackChannel, and 
32af0 54 63 6c 5f 47 65 74 53 74 61 63 6b 65 64 43 68  Tcl_GetStackedCh
32b00 61 6e 6e 65 6c 2e 20 20 54 68 69 73 20 61 6c 6c  annel.  This all
32b10 6f 77 73 20 74 68 65 20 54 72 66 0a 65 78 74 65  ows the Trf.exte
32b20 6e 73 69 6f 6e 20 74 6f 20 77 6f 72 6b 20 77 69  nsion to work wi
32b30 74 68 6f 75 74 20 61 70 70 6c 79 69 6e 67 20 70  thout applying p
32b40 61 74 63 68 65 73 20 74 6f 20 74 68 65 20 54 63  atches to the Tc
32b50 6c 20 63 6f 72 65 2e 20 28 77 65 6c 63 68 29 0a  l core. (welch).
32b60 0a 37 2f 36 2f 39 39 20 20 28 6e 65 77 20 66 65  .7/6/99  (new fe
32b70 61 74 75 72 65 29 20 41 64 64 65 64 20 2d 74 69  ature) Added -ti
32b80 6d 65 6f 75 74 20 6f 70 74 69 6f 6e 20 74 6f 20  meout option to 
32b90 68 74 74 70 2e 74 63 6c 20 74 6f 20 68 61 6e 64  http.tcl to hand
32ba0 6c 65 0a 74 69 6d 65 6f 75 74 73 20 74 68 61 74  le.timeouts that
32bb0 20 6f 63 63 75 72 20 64 75 72 69 6e 67 20 63 6f   occur during co
32bc0 6e 6e 65 63 74 69 6f 6e 20 61 74 74 65 6d 70 74  nnection attempt
32bd0 73 20 74 6f 20 68 6f 73 74 73 20 74 68 61 74 20  s to hosts that 
32be0 61 72 65 0a 64 6f 77 6e 2e 20 28 77 65 6c 63 68  are.down. (welch
32bf0 29 0a 0a 37 2f 36 2f 39 39 20 20 28 62 75 67 20  )..7/6/99  (bug 
32c00 66 69 78 29 20 41 70 70 6c 69 65 64 20 6e 65 77  fix) Applied new
32c10 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20   implementation 
32c20 6f 66 20 74 68 65 20 57 69 6e 64 6f 77 73 20 73  of the Windows s
32c30 65 72 69 61 6c 0a 70 6f 72 74 20 64 72 69 76 65  erial.port drive
32c40 72 20 66 72 6f 6d 20 52 6f 6c 66 20 53 63 68 72  r from Rolf Schr
32c50 6f 65 64 74 65 72 20 74 68 61 74 20 66 69 78 65  oedter that fixe
32c60 73 20 72 65 61 64 69 6e 67 20 6f 6e 6c 79 20 6f  s reading only o
32c70 6e 65 20 62 79 74 65 20 66 72 6f 6d 0a 74 68 65  ne byte from.the
32c80 20 70 6f 72 74 20 61 74 20 61 20 74 69 6d 65 2e   port at a time.
32c90 20 20 55 73 65 73 20 70 6f 6c 6c 69 6e 67 20 65    Uses polling e
32ca0 76 65 72 79 20 31 30 6d 73 20 74 6f 20 69 6d 70  very 10ms to imp
32cb0 6c 65 6d 65 6e 74 0a 66 69 6c 65 65 76 65 6e 74  lement.fileevent
32cc0 73 2e 20 5b 42 75 67 3a 20 31 39 38 30 20 32 32  s. [Bug: 1980 22
32cd0 31 37 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f  17] (redman)..7/
32ce0 38 2f 39 39 20 20 28 62 75 67 20 66 69 78 29 20  8/99  (bug fix) 
32cf0 41 70 70 6c 69 65 64 20 66 69 78 20 66 6f 72 20  Applied fix for 
32d00 62 75 67 20 69 6e 20 44 46 41 20 73 74 61 74 65  bug in DFA state
32d10 20 63 61 63 68 69 6e 67 20 75 6e 64 65 72 0a 6c   caching under.l
32d20 6f 6f 6b 61 68 65 61 64 20 63 6f 6e 64 69 74 69  ookahead conditi
32d30 6f 6e 73 20 28 72 65 67 75 6c 61 72 20 65 78 70  ons (regular exp
32d40 72 65 73 73 69 6f 6e 73 29 2e 20 20 5b 42 75 67  ressions).  [Bug
32d50 3a 20 32 33 31 38 5d 20 28 73 74 61 6e 74 6f 6e  : 2318] (stanton
32d60 29 0a 0a 37 2f 38 2f 39 39 20 20 28 62 75 67 20  )..7/8/99  (bug 
32d70 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69  fix) Fixed bug i
32d80 6e 20 73 74 72 69 6e 67 20 72 61 6e 67 65 20 62  n string range b
32d90 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 0a 63  ounds checking.c
32da0 6f 64 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ode. (stanton)..
32db0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
32dc0 52 65 6c 65 61 73 65 64 20 38 2e 32 62 31 2c 20  Released 8.2b1, 
32dd0 4a 75 6c 79 20 31 34 2c 20 31 39 39 39 20 2d 2d  July 14, 1999 --
32de0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
32df0 2d 2d 2d 2d 0a 0a 37 2f 31 36 2f 39 39 20 28 62  ----..7/16/99 (b
32e00 75 67 20 66 69 78 29 20 41 64 64 65 64 20 54 63  ug fix) Added Tc
32e10 6c 5f 53 65 74 4e 6f 74 69 66 69 65 72 20 74 6f  l_SetNotifier to
32e20 20 73 74 75 62 20 74 61 62 6c 65 2e 20 5b 42 75   stub table. [Bu
32e30 67 3a 20 32 33 36 34 5d 0a 41 64 64 65 64 20 63  g: 2364].Added c
32e40 68 65 63 6b 20 66 6f 72 20 41 6c 70 68 61 2f 4c  heck for Alpha/L
32e50 69 6e 75 78 20 74 6f 20 63 6f 72 72 65 63 74 20  inux to correct 
32e60 74 68 65 20 49 45 45 45 20 20 66 6c 6f 61 74 69  the IEEE  floati
32e70 6e 67 20 70 6f 69 6e 74 20 66 6c 61 67 2c 0a 70  ng point flag,.p
32e80 61 74 63 68 20 66 72 6f 6d 20 44 6f 6e 20 50 6f  atch from Don Po
32e90 72 74 65 72 2e 20 28 72 65 64 6d 61 6e 29 0a 0a  rter. (redman)..
32ea0 37 2f 32 30 2f 39 39 20 28 62 75 67 20 66 69 78  7/20/99 (bug fix
32eb0 29 20 4d 65 72 67 65 64 20 38 2e 30 2e 35 20 63  ) Merged 8.0.5 c
32ec0 6f 64 65 20 74 6f 20 68 61 6e 64 6c 65 20 74 63  ode to handle tc
32ed0 6c 5f 6c 69 62 72 61 72 79 20 70 72 6f 70 65 72  l_library proper
32ee0 6c 79 2c 0a 61 6c 73 6f 20 66 69 78 65 64 20 61  ly,.also fixed a
32ef0 20 62 75 67 20 74 68 61 74 20 63 61 75 73 65 64   bug that caused
32f00 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 74 6f 20   TCL_LIBRARY to 
32f10 62 65 20 69 67 6e 6f 72 65 64 2e 20 28 68 65 72  be ignored. (her
32f20 73 68 65 79 29 0a 0a 37 2f 32 31 2f 39 39 20 28  shey)..7/21/99 (
32f30 62 75 67 20 66 69 78 29 20 49 6d 70 6c 65 6d 65  bug fix) Impleme
32f40 6e 74 65 64 20 6d 6f 64 69 66 69 65 64 20 73 6f  nted modified so
32f50 63 6b 65 74 20 64 72 69 76 65 72 20 66 6f 72 20  cket driver for 
32f60 57 69 6e 64 6f 77 73 20 74 68 61 74 0a 75 73 65  Windows that.use
32f70 73 20 61 20 74 68 72 65 61 64 20 74 6f 20 6d 61  s a thread to ma
32f80 6e 61 67 65 20 74 68 65 20 73 6f 63 6b 65 74 20  nage the socket 
32f90 65 76 65 6e 74 20 77 69 6e 64 6f 77 2e 20 20 43  event window.  C
32fa0 6f 64 65 20 77 6f 72 6b 73 20 74 68 65 20 73 61  ode works the sa
32fb0 6d 65 0a 6f 6e 20 61 6c 6c 20 73 75 70 70 6f 72  me.on all suppor
32fc0 74 65 64 20 76 65 72 73 69 6f 6e 73 20 6f 66 20  ted versions of 
32fd0 57 69 6e 64 6f 77 73 20 61 6e 64 20 77 61 73 20  Windows and was 
32fe0 62 61 73 65 64 20 6f 6e 20 6f 72 69 67 69 6e 61  based on origina
32ff0 6c 20 38 2e 31 2e 30 0a 63 6f 64 65 2e 20 20 5b  l 8.1.0.code.  [
33000 42 75 67 3a 20 32 31 37 38 20 32 32 35 36 20 32  Bug: 2178 2256 2
33010 32 35 39 20 32 33 32 39 20 32 33 32 33 20 32 33  259 2329 2323 23
33020 35 35 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f  55] (redman)..7/
33030 32 31 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75  21/99 (new featu
33040 72 65 29 20 41 70 70 6c 69 65 64 20 70 61 74 63  re) Applied patc
33050 68 20 66 72 6f 6d 20 52 6f 6c 66 20 53 63 68 72  h from Rolf Schr
33060 6f 65 64 74 65 72 20 74 6f 20 61 64 64 0a 2d 70  oedter to add.-p
33070 6f 6c 6c 69 6e 74 65 72 76 61 6c 20 6f 70 74 69  ollinterval opti
33080 6f 6e 20 74 6f 20 66 63 6f 6e 66 69 67 75 72 65  on to fconfigure
33090 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 73 65 72   for Windows ser
330a0 69 61 6c 20 70 6f 72 74 73 2e 20 20 41 6c 6c 6f  ial ports.  Allo
330b0 77 73 0a 74 68 65 20 6d 61 78 62 6c 6f 63 6b 74  ws.the maxblockt
330c0 69 6d 65 20 74 6f 20 62 65 20 6d 6f 64 69 66 69  ime to be modifi
330d0 65 64 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 68 6f  ed to control ho
330e0 77 20 6f 66 74 65 6e 20 73 65 72 69 61 6c 20 70  w often serial p
330f0 6f 72 74 73 20 61 72 65 0a 63 68 65 63 6b 65 64  orts are.checked
33100 20 66 6f 72 20 66 69 6c 65 65 76 65 6e 74 73 2e   for fileevents.
33110 20 20 41 6c 73 6f 20 61 64 64 65 64 20 64 6f 63    Also added doc
33120 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 5c  umentation for \
33130 5c 2e 5c 63 6f 6d 58 0a 6e 6f 74 61 74 69 6f 6e  \.\comX.notation
33140 20 66 6f 72 20 6f 70 65 6e 69 6e 67 20 73 65 72   for opening ser
33150 69 61 6c 20 70 6f 72 74 73 20 6f 6e 20 57 69 6e  ial ports on Win
33160 64 6f 77 73 2e 20 20 28 72 65 64 6d 61 6e 29 0a  dows.  (redman).
33170 0a 37 2f 32 31 2f 39 39 20 28 62 75 67 20 66 69  .7/21/99 (bug fi
33180 78 29 20 43 68 61 6e 67 65 64 20 41 50 49 73 20  x) Changed APIs 
33190 69 6e 20 73 74 75 62 20 74 61 62 6c 65 73 20 74  in stub tables t
331a0 6f 20 75 73 65 20 22 75 6e 73 69 67 6e 65 64 20  o use "unsigned 
331b0 6c 6f 6e 67 22 0a 69 6e 73 74 65 61 64 20 6f 66  long".instead of
331c0 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 2d 73 70   the platform-sp
331d0 65 63 69 66 69 63 20 22 73 69 7a 65 5f 74 22 2c  ecific "size_t",
331e0 20 70 72 69 6d 61 72 69 6c 79 20 61 66 74 65 72   primarily after
331f0 20 53 75 6e 4f 53 20 34 0a 75 73 65 72 73 20 63   SunOS 4.users c
33200 6f 75 6c 64 20 6e 6f 20 6c 6f 6e 67 65 72 20 63  ould no longer c
33210 6f 6d 70 69 6c 65 2e 20 28 72 65 64 6d 61 6e 29  ompile. (redman)
33220 0a 0a 37 2f 32 32 2f 39 39 20 28 62 75 67 20 66  ..7/22/99 (bug f
33230 69 78 29 20 46 69 78 65 64 20 63 72 61 73 68 69  ix) Fixed crashi
33240 6e 67 20 64 75 72 69 6e 67 20 22 61 72 72 61 79  ng during "array
33250 20 73 65 74 20 61 28 62 29 20 7b 7d 22 2e 20 0a   set a(b) {}". .
33260 5b 42 75 67 3a 20 32 34 32 37 5d 20 28 72 65 64  [Bug: 2427] (red
33270 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39 20 28 62  man)..7/22/99 (b
33280 75 67 20 66 69 78 29 20 54 68 65 20 69 6e 73 74  ug fix) The inst
33290 61 6c 6c 2d 73 68 20 73 63 72 69 70 74 20 6d 75  all-sh script mu
332a0 73 74 20 62 65 20 67 69 76 65 6e 20 65 78 65 63  st be given exec
332b0 75 74 65 0a 70 65 72 6d 69 73 73 69 6f 6e 73 20  ute.permissions 
332c0 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67  prior to running
332d0 2e 20 20 5b 42 75 67 3a 20 32 34 31 33 5d 20 28  .  [Bug: 2413] (
332e0 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39  redman)..7/22/99
332f0 20 28 62 75 67 20 66 69 78 29 20 41 70 70 6c 69   (bug fix) Appli
33300 65 64 20 70 61 74 63 68 20 66 72 6f 6d 20 55 6c  ed patch from Ul
33310 72 69 63 68 20 52 69 6e 67 20 74 6f 20 72 65 6d  rich Ring to rem
33320 6f 76 65 20 41 4e 53 49 2d 73 74 79 6c 65 0a 70  ove ANSI-style.p
33330 72 6f 74 6f 74 79 70 65 73 20 69 6e 20 74 68 65  rototypes in the
33340 20 63 6f 64 65 2e 20 20 5b 42 75 67 3a 20 32 33   code.  [Bug: 23
33350 39 31 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f  91] (redman)..7/
33360 32 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  22/99 (bug fix) 
33370 41 64 64 65 64 20 23 69 66 20 62 6c 6f 63 6b 73  Added #if blocks
33380 20 61 72 6f 75 6e 64 20 23 69 6e 63 6c 75 64 65   around #include
33390 73 20 6f 66 20 73 79 73 2f 2a 2e 68 20 68 65 61  s of sys/*.h hea
333a0 64 65 72 0a 66 69 6c 65 73 2c 20 74 6f 20 61 6c  der.files, to al
333b0 6c 6f 77 20 61 6e 20 65 78 74 65 6e 73 69 6f 6e  low an extension
333c0 20 61 75 74 68 6f 72 20 6f 6e 20 57 69 6e 64 6f   author on Windo
333d0 77 73 20 74 6f 20 75 73 65 20 74 68 65 20 4d 65  ws to use the Me
333e0 74 72 6f 57 65 72 6b 73 0a 63 6f 6d 70 69 6c 65  troWerks.compile
333f0 72 2e 20 5b 42 75 67 3a 20 32 33 38 35 5d 20 28  r. [Bug: 2385] (
33400 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39  redman)..7/22/99
33410 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
33420 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 73 61 66   running the saf
33430 65 2e 74 65 73 74 20 74 65 73 74 20 73 75 69 74  e.test test suit
33440 65 2c 20 6f 6e 65 20 63 68 61 6e 67 65 0a 74 6f  e, one change.to
33450 20 74 68 65 20 57 69 6e 64 6f 77 73 20 4d 61 6b   the Windows Mak
33460 65 66 69 6c 65 2e 69 6e 20 74 6f 20 66 69 78 20  efile.in to fix 
33470 70 61 74 68 73 20 61 6e 64 20 61 6e 6f 74 68 65  paths and anothe
33480 72 20 69 6e 20 73 61 66 65 2e 74 65 73 74 20 74  r in safe.test t
33490 6f 0a 63 68 65 63 6b 20 66 6f 72 20 74 68 65 20  o.check for the 
334a0 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 74 68 72  tcl_platform(thr
334b0 65 61 64 65 64 29 20 76 61 72 69 61 62 6c 65 20  eaded) variable 
334c0 70 72 6f 70 65 72 6c 79 2e 20 28 72 65 64 6d 61  properly. (redma
334d0 6e 29 0a 0a 37 2f 32 32 2f 39 39 20 28 62 75 67  n)..7/22/99 (bug
334e0 20 66 69 78 29 20 46 69 78 65 64 20 68 61 6e 67   fix) Fixed hang
334f0 69 6e 67 20 69 6e 20 6e 65 77 20 57 69 6e 33 32  ing in new Win32
33500 20 73 6f 63 6b 65 74 20 64 72 69 76 65 72 20 77   socket driver w
33510 69 74 68 0a 74 68 72 65 61 64 73 20 65 6e 61 62  ith.threads enab
33520 6c 65 64 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 37  led. (redman)..7
33530 2f 32 36 2f 39 39 20 28 62 75 67 20 66 69 78 29  /26/99 (bug fix)
33540 20 46 69 78 65 64 20 74 65 72 6d 69 6e 61 74 69   Fixed terminati
33550 6e 67 20 6f 66 20 68 65 6c 70 65 72 20 74 68 72  ng of helper thr
33560 65 61 64 73 20 62 79 20 68 6f 6c 64 69 6e 67 20  eads by holding 
33570 61 6e 79 0a 6d 75 74 65 78 65 73 20 66 72 6f 6d  any.mutexes from
33580 20 74 68 65 20 70 72 69 6d 61 72 79 20 74 68 72   the primary thr
33590 65 61 64 20 77 68 69 6c 65 20 77 61 69 74 69 6e  ead while waitin
335a0 67 20 66 6f 72 20 74 68 65 20 68 65 6c 70 65 72  g for the helper
335b0 20 74 68 72 65 61 64 20 74 6f 0a 74 65 72 6d 69   thread to.termi
335c0 6e 61 74 65 2e 20 20 46 69 78 65 73 20 64 75 61  nate.  Fixes dua
335d0 6c 2d 43 50 55 20 57 69 6e 4e 54 20 68 61 6e 67  l-CPU WinNT hang
335e0 73 2c 20 6f 6e 6c 79 20 6f 6e 65 20 72 61 72 65  s, only one rare
335f0 20 73 70 6f 72 61 64 69 63 20 68 61 6e 67 0a 74   sporadic hang.t
33600 68 61 74 20 73 74 69 6c 6c 20 65 78 69 73 74 73  hat still exists
33610 20 77 69 74 68 20 64 75 61 6c 2d 43 50 55 20 57   with dual-CPU W
33620 69 6e 4e 54 2e 20 20 41 6c 73 6f 20 66 69 78 65  inNT.  Also fixe
33630 64 20 74 65 73 74 20 63 61 73 65 73 20 73 6f 20  d test cases so 
33640 74 68 61 74 0a 74 68 65 79 20 77 6f 75 6c 64 20  that.they would 
33650 6e 6f 74 20 64 65 70 65 6e 64 20 61 73 20 6d 75  not depend as mu
33660 63 68 20 6f 6e 20 74 69 6d 69 6e 67 20 66 6f 72  ch on timing for
33670 20 64 75 61 6c 2d 43 50 55 20 57 69 6e 4e 54 2e   dual-CPU WinNT.
33680 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 37 2f   (redman)..7/27/
33690 39 39 20 28 62 75 67 20 66 69 78 29 20 53 6f 6d  99 (bug fix) Som
336a0 65 20 74 65 73 74 20 73 75 69 74 65 20 63 6c 65  e test suite cle
336b0 61 6e 75 70 2e 20 28 6a 65 6e 6e 29 0a 0a 37 2f  anup. (jenn)..7/
336c0 32 39 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  29/99 (bug fix) 
336d0 41 70 70 6c 69 65 64 20 70 61 74 63 68 20 74 6f  Applied patch to
336e0 20 66 69 78 20 74 79 70 6f 20 69 6e 20 2e 53 48   fix typo in .SH
336f0 20 4e 41 4d 45 20 6c 69 6e 65 20 69 6e 0a 64 6f   NAME line in.do
33700 63 2f 45 6e 63 6f 64 69 6e 67 2e 6e 20 5b 42 75  c/Encoding.n [Bu
33710 67 3a 20 32 34 35 31 5d 2e 20 20 41 70 70 6c 69  g: 2451].  Appli
33720 65 64 20 70 61 74 63 68 20 74 6f 20 61 76 6f 69  ed patch to avoi
33730 64 20 6c 69 6e 6b 69 6e 67 20 70 61 63 6b 2e 6e  d linking pack.n
33740 20 74 6f 0a 70 61 63 6b 2d 6f 6c 64 2e 6e 20 5b   to.pack-old.n [
33750 42 75 67 3a 20 32 34 36 39 5d 2e 20 50 61 74 63  Bug: 2469]. Patc
33760 68 65 73 20 66 72 6f 6d 20 44 6f 6e 20 50 6f 72  hes from Don Por
33770 74 65 72 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 37  ter. (redman)..7
33780 2f 32 39 2f 39 39 20 28 62 75 67 20 66 69 78 29  /29/99 (bug fix)
33790 20 41 6c 6c 6f 77 20 74 63 6c 20 74 6f 20 6f 70   Allow tcl to op
337a0 65 6e 20 43 4f 4e 20 61 6e 64 20 4e 55 4c 2c 20  en CON and NUL, 
337b0 65 76 65 6e 20 66 6f 72 20 72 65 64 69 72 65 63  even for redirec
337c0 74 69 6f 6e 0a 6f 66 20 73 74 64 20 63 68 61 6e  tion.of std chan
337d0 6e 65 6c 73 2e 20 20 5b 42 75 67 3a 20 32 33 39  nels.  [Bug: 239
337e0 33 20 32 33 39 32 20 32 32 30 39 20 32 34 35 38  3 2392 2209 2458
337f0 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 33 30  ] (redman)..7/30
33800 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41 70  /99 (bug fix) Ap
33810 70 6c 69 65 64 20 66 69 78 65 64 20 54 72 66 20  plied fixed Trf 
33820 70 61 74 63 68 20 66 72 6f 6d 20 41 6e 64 72 65  patch from Andre
33830 61 73 20 4b 75 70 72 69 65 73 2e 20 0a 5b 42 75  as Kupries. .[Bu
33840 67 3a 20 32 33 38 36 5d 20 28 68 6f 62 62 73 29  g: 2386] (hobbs)
33850 0a 0a 37 2f 33 30 2f 39 39 20 28 62 75 67 20 66  ..7/30/99 (bug f
33860 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e  ix) Fixed bug in
33870 20 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 2e 20   info complete. 
33880 5b 42 75 67 3a 20 32 33 38 33 20 32 34 36 36 5d  [Bug: 2383 2466]
33890 20 28 68 6f 62 62 73 29 0a 0a 37 2f 33 30 2f 39   (hobbs)..7/30/9
338a0 39 20 28 62 75 67 20 66 69 78 29 20 41 70 70 6c  9 (bug fix) Appl
338b0 69 65 64 20 70 61 74 63 68 20 74 6f 20 66 69 78  ied patch to fix
338c0 20 74 68 72 65 61 64 69 6e 67 20 6f 6e 20 49 72   threading on Ir
338d0 69 78 20 36 2e 35 2c 20 70 61 74 63 68 0a 70 72  ix 6.5, patch.pr
338e0 6f 76 69 64 65 64 20 62 79 20 4a 61 6d 65 73 20  ovided by James 
338f0 44 65 6e 6e 65 74 74 2e 20 20 5b 42 75 67 3a 20  Dennett.  [Bug: 
33900 32 34 35 30 5d 20 28 72 65 64 6d 61 6e 29 0a 0a  2450] (redman)..
33910 37 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  7/30/99 (bug fix
33920 29 20 46 69 78 65 64 20 6c 61 75 6e 63 68 69 6e  ) Fixed launchin
33930 67 20 6f 66 20 31 36 62 69 74 20 61 70 70 6c 69  g of 16bit appli
33940 63 61 74 69 6f 6e 73 20 6f 6e 20 57 69 6e 39 78  cations on Win9x
33950 20 66 72 6f 6d 0a 77 69 73 68 2e 20 20 54 68 65   from.wish.  The
33960 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 77 61   command line wa
33970 73 20 62 65 69 6e 67 20 70 72 69 6d 65 64 20 77  s being primed w
33980 69 74 68 20 74 63 6c 70 69 70 38 32 2e 64 6c 6c  ith tclpip82.dll
33990 2c 20 62 75 74 20 69 74 20 77 61 73 0a 69 67 6e  , but it was.ign
339a0 6f 72 65 64 20 6c 61 74 65 72 2e 20 0a 0a 37 2f  ored later. ..7/
339b0 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  30/99 (bug fix) 
339c0 41 64 64 65 64 20 66 75 6e 63 74 69 6f 6e 73 20  Added functions 
339d0 74 6f 20 73 74 75 62 20 74 61 62 6c 65 2c 20 70  to stub table, p
339e0 61 74 63 68 20 70 72 6f 76 69 64 65 64 20 62 79  atch provided by
339f0 20 4a 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e 20 5b   Jan.Nijtmans. [
33a00 42 75 67 3a 20 32 34 34 35 5d 20 28 68 6f 62 62  Bug: 2445] (hobb
33a10 73 29 0a 0a 38 2f 31 2f 39 39 20 20 28 62 75 67  s)..8/1/99  (bug
33a20 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 57 69   fix) Changed Wi
33a30 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64 72 69  ndows socket dri
33a40 76 65 72 20 74 6f 20 74 65 72 6d 69 6e 61 74 65  ver to terminate
33a50 20 74 68 72 65 61 64 73 0a 62 79 20 73 65 6e 64   threads.by send
33a60 69 6e 67 20 61 20 6d 65 73 73 61 67 65 20 74 6f  ing a message to
33a70 20 74 68 65 20 77 69 6e 64 6f 77 20 72 61 74 68   the window rath
33a80 65 72 20 74 68 61 6e 20 63 61 6c 6c 69 6e 67 0a  er than calling.
33a90 54 65 72 6d 69 6e 61 74 65 54 68 72 65 61 64 28  TerminateThread(
33aa0 29 2c 20 77 68 69 63 68 20 73 65 65 6d 73 20 74  ), which seems t
33ab0 6f 20 6c 65 61 6b 20 61 62 6f 75 74 20 34 6b 20  o leak about 4k 
33ac0 66 72 6f 6d 20 74 68 65 20 68 65 6c 70 65 72 0a  from the helper.
33ad0 74 68 72 65 61 64 27 73 20 73 74 61 63 6b 20 73  thread's stack s
33ae0 70 61 63 65 2e 20 28 72 65 64 6d 61 6e 29 0a 0a  pace. (redman)..
33af0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
33b00 52 65 6c 65 61 73 65 64 20 38 2e 32 62 32 2c 20  Released 8.2b2, 
33b10 41 75 67 75 73 74 20 35 2c 20 31 39 39 39 20 2d  August 5, 1999 -
33b20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
33b30 2d 2d 2d 2d 2d 0a 0a 38 2f 34 2f 39 39 20 28 62  -----..8/4/99 (b
33b40 75 67 20 66 69 78 29 20 41 70 70 6c 69 65 64 20  ug fix) Applied 
33b50 70 61 74 63 68 65 73 20 73 75 70 70 6c 69 65 64  patches supplied
33b60 20 62 79 20 48 65 6e 72 79 20 53 70 65 6e 63 65   by Henry Spence
33b70 72 20 74 6f 20 67 72 65 61 74 6c 79 0a 65 6e 68  r to greatly.enh
33b80 61 6e 63 65 20 70 65 72 66 6f 72 6d 61 6e 63 65  ance performance
33b90 20 6f 66 20 63 65 72 74 61 69 6e 20 63 6c 61 73   of certain clas
33ba0 73 65 73 20 6f 66 20 72 65 67 75 6c 61 72 20 65  ses of regular e
33bb0 78 70 72 65 73 73 69 6f 6e 73 2e 20 0a 5b 42 75  xpressions. .[Bu
33bc0 67 3a 20 32 34 34 30 20 32 34 34 37 5d 20 28 73  g: 2440 2447] (s
33bd0 74 61 6e 74 6f 6e 29 0a 0a 38 2f 35 2f 39 39 20  tanton)..8/5/99 
33be0 28 64 6f 63 20 63 68 61 6e 67 65 29 20 4d 61 64  (doc change) Mad
33bf0 65 20 69 74 20 63 6c 65 61 72 20 74 68 61 74 20  e it clear that 
33c00 74 63 6c 5f 70 6b 67 50 61 74 68 20 77 61 73 20  tcl_pkgPath was 
33c10 6e 6f 74 20 73 65 74 20 66 6f 72 0a 57 69 6e 64  not set for.Wind
33c20 6f 77 73 2e 20 5b 42 75 67 3a 20 32 34 35 35 5d  ows. [Bug: 2455]
33c30 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35 2f 39 39   (hobbs)..8/5/99
33c40 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
33c50 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 62 79   reference to by
33c60 74 65 73 20 74 68 61 74 20 6d 69 67 68 74 20 6e  tes that might n
33c70 6f 74 20 62 65 20 6e 75 6c 6c 0a 74 65 72 6d 69  ot be null.termi
33c80 6e 61 74 65 64 20 69 6e 20 74 63 6c 4c 69 74 65  nated in tclLite
33c90 72 61 6c 2e 63 2e 20 5b 42 75 67 3a 20 32 34 39  ral.c. [Bug: 249
33ca0 36 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35 2f  6] (hobbs)..8/5/
33cb0 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
33cc0 65 64 20 74 79 70 6f 20 69 6e 20 68 74 74 70 2e  ed typo in http.
33cd0 74 63 6c 2e 20 5b 42 75 67 3a 20 32 35 30 32 5d  tcl. [Bug: 2502]
33ce0 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39 2f 39 39   (hobbs)..8/9/99
33cf0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
33d00 20 74 65 73 74 20 73 75 69 74 65 20 74 6f 20 68   test suite to h
33d10 61 6e 64 6c 65 20 6c 61 72 67 65 72 20 69 6e 74  andle larger int
33d20 65 67 65 72 73 0a 28 36 34 62 69 74 29 2e 20 50  egers.(64bit). P
33d30 61 74 63 68 20 66 72 6f 6d 20 44 6f 6e 20 50 6f  atch from Don Po
33d40 72 74 65 72 2e 20 28 68 6f 62 62 73 29 0a 0a 38  rter. (hobbs)..8
33d50 2f 39 2f 39 39 20 28 64 6f 63 75 6d 65 6e 74 61  /9/99 (documenta
33d60 74 69 6f 6e 20 66 69 78 29 20 43 6c 61 72 69 66  tion fix) Clarif
33d70 69 65 64 20 54 63 6c 5f 44 65 63 72 52 65 66 43  ied Tcl_DecrRefC
33d80 6f 75 6e 74 20 64 6f 63 73 20 0a 5b 42 75 67 3a  ount docs .[Bug:
33d90 20 31 39 35 32 5d 2e 20 43 6c 61 72 69 66 69 65   1952]. Clarifie
33da0 64 20 61 72 72 61 79 20 70 61 74 74 65 72 6e 20  d array pattern 
33db0 64 6f 63 73 20 5b 42 75 67 3a 20 31 33 33 30 5d  docs [Bug: 1330]
33dc0 2e 20 46 69 78 65 64 20 63 6c 6f 63 6b 20 64 6f  . Fixed clock do
33dd0 63 73 0a 5b 42 75 67 3a 20 36 39 33 5d 2e 20 46  cs.[Bug: 693]. F
33de0 69 78 65 64 20 66 6f 72 6d 61 74 74 69 6e 67 20  ixed formatting 
33df0 65 72 72 6f 72 73 20 5b 42 75 67 3a 20 32 31 38  errors [Bug: 218
33e00 38 20 32 31 38 39 5d 2e 20 46 69 78 65 64 20 64  8 2189]. Fixed d
33e10 6f 63 20 65 72 72 6f 72 0a 69 6e 20 74 63 6c 76  oc error.in tclv
33e20 61 72 73 2e 6e 20 5b 42 75 67 3a 20 32 30 34 32  ars.n [Bug: 2042
33e30 5d 2e 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39 2f  ]. (hobbs)..8/9/
33e40 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
33e50 65 64 20 70 61 74 68 20 68 61 6e 64 6c 69 6e 67  ed path handling
33e60 20 69 6e 20 61 75 74 6f 5f 65 78 65 63 6f 6b 20   in auto_execok 
33e70 5b 42 75 67 3a 20 31 32 37 36 5d 20 28 68 6f 62  [Bug: 1276] (hob
33e80 62 73 29 0a 0a 38 2f 39 2f 39 39 20 28 69 6e 74  bs)..8/9/99 (int
33e90 65 72 6e 61 6c 20 61 70 69 20 63 68 61 6e 67 65  ernal api change
33ea0 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20 54 63  ) Removed the Tc
33eb0 6c 70 4d 75 74 65 78 4c 6f 63 6b 20 61 6e 64 20  lpMutexLock and 
33ec0 54 63 6c 70 4d 75 74 65 78 55 6e 6c 6f 63 6b 0a  TclpMutexUnlock.
33ed0 41 50 49 73 20 61 6e 64 20 61 64 64 65 64 20 61  APIs and added a
33ee0 20 6e 65 77 20 65 78 70 6f 72 74 65 64 20 61 70   new exported ap
33ef0 69 2c 20 54 63 6c 5f 47 65 74 41 6c 6c 6f 63 4d  i, Tcl_GetAllocM
33f00 75 74 65 78 2e 20 54 68 65 73 65 20 41 50 49 73  utex. These APIs
33f10 20 61 72 65 20 61 6c 6c 20 66 6f 72 0a 74 68 65   are all for.the
33f20 20 6d 75 74 65 78 20 75 73 65 64 20 69 6e 20 74   mutex used in t
33f30 68 65 20 73 69 6d 70 6c 65 20 6d 65 6d 6f 72 79  he simple memory
33f40 20 61 6c 6c 6f 63 61 74 6f 72 73 2e 20 20 42 79   allocators.  By
33f50 20 6d 61 6b 69 6e 67 20 74 68 69 73 20 63 68 61   making this cha
33f60 6e 67 65 0a 77 65 20 61 72 65 20 61 62 6c 65 20  nge.we are able 
33f70 74 6f 20 73 75 62 73 74 69 74 75 74 65 20 64 69  to substitute di
33f80 66 66 65 72 65 6e 74 20 69 6d 70 6c 65 6d 65 6e  fferent implemen
33f90 74 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 74  tations of the t
33fa0 68 72 65 61 64 2d 72 65 6c 61 74 65 64 0a 41 50  hread-related.AP
33fb0 49 73 20 77 69 74 68 6f 75 74 20 68 61 76 69 6e  Is without havin
33fc0 67 20 74 6f 20 72 65 63 6f 6d 70 69 6c 65 20 74  g to recompile t
33fd0 68 65 20 54 63 6c 20 63 6f 72 65 2e 20 28 77 65  he Tcl core. (we
33fe0 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 6e 65  lch)..8/9/99 (ne
33ff0 77 20 43 20 41 50 49 29 20 54 63 6c 5f 47 65 74  w C API) Tcl_Get
34000 43 68 61 6e 6e 65 6c 4e 61 6d 65 73 20 72 65 74  ChannelNames ret
34010 75 72 6e 73 20 61 20 6c 69 73 74 20 6f 66 20 6f  urns a list of o
34020 70 65 6e 20 63 68 61 6e 6e 65 6c 0a 6e 61 6d 65  pen channel.name
34030 73 20 69 6e 20 74 68 65 20 69 6e 74 65 72 70 72  s in the interpr
34040 65 74 65 72 20 72 65 73 75 6c 74 2e 20 20 53 74  eter result.  St
34050 69 6c 6c 20 6e 6f 20 54 63 6c 2d 6c 65 76 65 6c  ill no Tcl-level
34060 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 69 73   version of this
34070 2c 0a 62 75 74 20 73 65 72 76 65 72 2d 6c 69 6b  ,.but server-lik
34080 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 63  e applications c
34090 61 6e 20 75 73 65 20 74 68 69 73 20 74 6f 20 63  an use this to c
340a0 6c 65 61 6e 20 75 70 20 66 69 6c 65 73 20 77 69  lean up files wi
340b0 74 68 6f 75 74 0a 64 65 6c 65 74 69 6e 67 20 69  thout.deleting i
340c0 6e 74 65 72 70 72 65 74 65 72 73 2e 20 28 77 65  nterpreters. (we
340d0 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 62 75  lch)..8/9/99 (bu
340e0 67 20 66 69 78 29 20 54 72 61 63 65 73 20 77 65  g fix) Traces we
340f0 72 65 20 6e 6f 74 20 66 69 72 69 6e 67 20 6f 6e  re not firing on
34100 20 22 69 6e 66 6f 20 65 78 69 73 74 73 22 2c 20   "info exists", 
34110 77 68 69 63 68 20 75 73 65 64 20 74 6f 0a 68 61  which used to.ha
34120 70 70 65 6e 20 69 6e 20 54 63 6c 20 37 2e 36 20  ppen in Tcl 7.6 
34130 61 6e 64 20 65 61 72 6c 69 65 72 2e 20 41 6e 20  and earlier. An 
34140 22 69 6e 66 6f 20 65 78 69 73 74 73 22 20 6e 6f  "info exists" no
34150 77 20 66 69 72 65 73 20 61 20 72 65 61 64 20 74  w fires a read t
34160 72 61 63 65 2c 0a 69 66 20 64 65 66 69 6e 65 64  race,.if defined
34170 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74  .  This makes it
34180 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 66 75 6c   possible to ful
34190 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 20 76 61 72  ly implement var
341a0 69 61 62 6c 65 73 20 74 68 61 74 0a 61 72 65 20  iables that.are 
341b0 64 65 66 69 6e 65 64 20 76 69 61 20 74 72 61 63  defined via trac
341c0 65 73 2e 20 28 77 65 6c 63 68 29 0a 0a 38 2f 31  es. (welch)..8/1
341d0 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46  0/99 (bug fix) F
341e0 69 78 65 64 20 42 72 65 6e 74 27 73 20 63 68 61  ixed Brent's cha
341f0 6e 67 65 73 20 73 6f 20 74 68 61 74 20 74 68 65  nges so that the
34200 79 20 77 6f 72 6b 20 6f 6e 0a 57 69 6e 64 6f 77  y work on.Window
34210 73 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 2d 2d 2d  s. (redman)..---
34220 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
34230 65 61 73 65 64 20 38 2e 32 62 33 2c 20 41 75 67  eased 8.2b3, Aug
34240 75 73 74 20 31 31 2c 20 31 39 39 39 20 2d 2d 2d  ust 11, 1999 ---
34250 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34260 2d 2d 2d 0a 0a 38 2f 31 32 2f 39 39 20 28 4d 61  ---..8/12/99 (Ma
34270 63 29 20 52 65 61 72 72 61 6e 67 65 20 70 72 6f  c) Rearrange pro
34280 6a 65 63 74 73 20 69 6e 20 74 63 6c 4d 61 63 50  jects in tclMacP
34290 72 6f 6a 65 63 74 73 2e 73 65 61 2e 68 71 78 20  rojects.sea.hqx 
342a0 73 6f 20 74 68 61 74 20 74 68 65 0a 62 75 69 6c  so that the.buil
342b0 64 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 73  d directory is s
342c0 65 70 61 72 61 74 65 20 66 72 6f 6d 20 74 68 65  eparate from the
342d0 20 73 6f 75 72 63 65 73 2e 20 28 4a 69 6d 20 49   sources. (Jim I
342e0 6e 67 68 61 6d 29 0a 0a 38 2f 31 32 2f 39 39 20  ngham)..8/12/99 
342f0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
34300 62 75 67 20 69 6e 20 54 63 6c 5f 45 76 61 6c 45  bug in Tcl_EvalE
34310 78 20 77 68 65 72 65 20 74 68 65 20 74 65 72 6d  x where the term
34320 4f 66 66 73 65 74 20 77 61 73 20 6e 6f 74 0a 62  Offset was not.b
34330 65 69 6e 67 20 75 70 64 61 74 65 64 20 69 6e 20  eing updated in 
34340 63 61 73 65 73 20 77 68 65 72 65 20 74 68 65 20  cases where the 
34350 65 76 61 6c 75 61 74 69 6f 6e 20 72 65 74 75 72  evaluation retur
34360 6e 65 64 20 61 20 6e 6f 6e 20 54 43 4c 5f 4f 4b  ned a non TCL_OK
34370 0a 65 72 72 6f 72 20 63 6f 64 65 2e 20 5b 42 75  .error code. [Bu
34380 67 3a 20 32 35 33 35 5d 20 28 73 74 61 6e 74 6f  g: 2535] (stanto
34390 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  n)..------------
343a0 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32  --- Released 8.2
343b0 2e 30 2c 20 41 75 67 75 73 74 20 31 37 2c 20 31  .0, August 17, 1
343c0 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  999 ------------
343d0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32 31  ----------..9/21
343e0 2f 39 39 20 28 63 6f 6e 66 69 67 20 66 69 78 65  /99 (config fixe
343f0 73 29 20 66 69 78 65 64 20 73 65 76 65 72 61 6c  s) fixed several
34400 20 41 49 58 20 63 6f 6e 66 69 67 75 72 61 74 69   AIX configurati
34410 6f 6e 20 69 73 73 75 65 73 2e 20 20 67 63 63 20  on issues.  gcc 
34420 61 6e 64 0a 74 68 72 65 61 64 69 6e 67 20 6d 61  and.threading ma
34430 79 20 73 74 69 6c 6c 20 63 61 75 73 65 20 70 72  y still cause pr
34440 6f 62 6c 65 6d 73 20 6f 6e 20 41 49 58 2e 20 28  oblems on AIX. (
34450 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39 20  hobbs)..9/21/99 
34460 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
34470 65 78 70 72 20 64 6f 75 62 6c 65 2d 65 76 61 6c  expr double-eval
34480 20 70 72 6f 62 6c 65 6d 2e 20 5b 42 75 67 3a 20   problem. [Bug: 
34490 37 33 32 5d 20 28 68 6f 62 62 73 29 0a 0a 39 2f  732] (hobbs)..9/
344a0 32 31 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  21/99 (bug fix) 
344b0 66 69 78 65 64 20 73 74 61 74 69 63 20 62 75 66  fixed static buf
344c0 66 65 72 20 6f 76 65 72 66 6c 6f 77 20 70 72 6f  fer overflow pro
344d0 62 6c 65 6d 2e 20 5b 42 75 67 3a 20 32 34 38 33  blem. [Bug: 2483
344e0 5d 20 28 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f  ] (hobbs)..9/21/
344f0 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69 78  99 (bug fix) fix
34500 65 64 20 65 6e 64 2d 69 6e 74 20 6c 69 6e 73 65  ed end-int linse
34510 72 74 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f  rt interpretatio
34520 6e 2e 20 5b 42 75 67 3a 20 32 36 39 33 5d 20 28  n. [Bug: 2693] (
34530 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39 20  hobbs)..9/21/99 
34540 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
34550 62 75 67 20 77 68 65 6e 20 73 65 74 74 69 6e 67  bug when setting
34560 20 61 72 72 61 79 20 69 6e 20 6e 6f 6e 2d 65 78   array in non-ex
34570 69 73 74 65 6e 74 0a 6e 61 6d 65 73 70 61 63 65  istent.namespace
34580 2e 20 5b 42 75 67 3a 20 32 36 31 33 5d 20 28 68  . [Bug: 2613] (h
34590 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61  obbs)..--- Relea
345a0 73 65 64 20 38 2e 32 2e 31 2c 20 4f 63 74 6f 62  sed 8.2.1, Octob
345b0 65 72 20 30 34 2c 20 31 39 39 39 20 2d 2d 2d 20  er 04, 1999 --- 
345c0 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f  See ChangeLog fo
345d0 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 31  r details ---..1
345e0 30 2f 33 30 2f 39 39 20 28 66 65 61 74 75 72 65  0/30/99 (feature
345f0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 6e 65   enhancement) ne
34600 77 20 72 65 67 65 78 70 20 65 6e 67 69 6e 65 20  w regexp engine 
34610 66 72 6f 6d 20 48 65 6e 72 79 20 53 70 65 6e 63  from Henry Spenc
34620 65 72 0a 77 61 73 20 70 61 74 63 68 65 64 20 69  er.was patched i
34630 6e 20 2d 20 73 68 6f 75 6c 64 20 67 72 65 61 74  n - should great
34640 6c 79 20 72 65 64 75 63 65 20 73 74 61 63 6b 20  ly reduce stack 
34650 73 70 61 63 65 20 75 73 61 67 65 2e 20 28 73 70  space usage. (sp
34660 65 6e 63 65 72 29 0a 0a 31 30 2f 33 30 2f 39 39  encer)..10/30/99
34670 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
34680 20 50 75 72 69 66 79 20 72 65 70 6f 72 74 65 64   Purify reported
34690 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 73 20 69 6e   memory leaks in
346a0 20 66 69 6e 64 65 78 65 63 75 74 61 62 6c 65 0a   findexecutable.
346b0 74 65 73 74 20 63 6f 6d 6d 61 6e 64 2c 20 54 63  test command, Tc
346c0 6c 70 43 72 65 61 74 65 50 72 6f 63 65 73 73 20  lpCreateProcess 
346d0 6f 6e 20 55 6e 69 78 2c 20 69 6e 20 68 61 6e 64  on Unix, in hand
346e0 6c 69 6e 67 20 6f 66 20 43 20 65 6e 76 69 72 6f  ling of C enviro
346f0 6e 20 61 72 72 61 79 2c 0a 61 6e 64 20 69 6e 20  n array,.and in 
34700 74 65 73 74 74 68 72 65 61 64 20 63 6f 64 65 2e  testthread code.
34710 20 20 4e 6f 20 6d 6f 72 65 20 6b 6e 6f 77 6e 20    No more known 
34720 28 72 65 70 6f 72 74 65 64 29 20 6d 65 6d 20 6c  (reported) mem l
34730 65 61 6b 73 20 66 6f 72 20 54 63 6c 0a 62 75 69  eaks for Tcl.bui
34740 6c 74 20 75 73 69 6e 67 20 67 63 63 20 6f 6e 20  lt using gcc on 
34750 53 6f 6c 61 72 69 73 20 32 2e 35 2e 31 2e 20 20  Solaris 2.5.1.  
34760 41 6c 73 6f 20 6e 6f 6e 65 20 72 65 70 6f 72 74  Also none report
34770 65 64 20 66 6f 72 20 54 63 6c 20 6f 6e 20 4e 54  ed for Tcl on NT
34780 0a 28 75 73 69 6e 67 20 50 75 72 69 66 79 20 36  .(using Purify 6
34790 2e 30 29 2e 20 28 68 6f 62 62 73 29 0a 0a 31 30  .0). (hobbs)..10
347a0 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /30/99 (bug fix)
347b0 20 66 69 78 65 64 20 69 6d 70 72 6f 70 65 72 20   fixed improper 
347c0 62 79 74 65 63 6f 64 65 20 68 61 6e 64 6c 69 6e  bytecode handlin
347d0 67 20 6f 66 20 0a 27 65 76 61 6c 20 7b 73 65 74  g of .'eval {set
347e0 20 61 72 72 61 79 28 24 75 6e 6b 6e 6f 77 6e 76   array($unknownv
347f0 61 72 29 20 35 7d 27 20 28 61 6c 73 6f 20 66 6f  ar) 5}' (also fo
34800 72 20 69 6e 63 72 29 20 28 68 6f 62 62 73 29 0a  r incr) (hobbs).
34810 0a 31 30 2f 33 30 2f 39 39 20 28 62 75 67 20 66  .10/30/99 (bug f
34820 69 78 29 20 66 69 78 65 64 20 65 76 65 6e 74 2f  ix) fixed event/
34830 69 6f 20 74 68 72 65 61 64 69 6e 67 20 70 72 6f  io threading pro
34840 62 6c 65 6d 73 20 62 79 20 6d 61 6b 69 6e 67 0a  blems by making.
34850 74 72 69 67 67 65 72 50 69 70 65 20 6e 6f 6e 2d  triggerPipe non-
34860 62 6c 6f 63 6b 69 6e 67 20 28 6e 69 63 6b 20 6b  blocking (nick k
34870 69 73 73 65 72 62 65 74 68 29 0a 0a 31 30 2f 33  isserbeth)..10/3
34880 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66  0/99 (bug fix) f
34890 69 78 65 64 20 54 63 6c 5f 41 70 70 65 6e 64 53  ixed Tcl_AppendS
348a0 74 72 69 6e 67 73 54 6f 4f 62 6a 56 41 20 61 6e  tringsToObjVA an
348b0 64 20 54 63 6c 5f 41 70 70 65 6e 64 52 65 73 75  d Tcl_AppendResu
348c0 6c 74 56 41 0a 74 6f 20 6f 6e 6c 79 09 69 74 65  ltVA.to only.ite
348d0 72 61 74 65 73 20 6f 6e 63 65 20 6f 76 65 72 20  rates once over 
348e0 74 68 65 20 76 61 5f 6c 69 73 74 20 28 61 76 6f  the va_list (avo
348f0 69 64 69 6e 67 20 6e 6f 6e 2d 70 6f 72 74 61 62  iding non-portab
34900 6c 65 20 6d 65 6d 63 70 79 29 2e 0a 28 6a 6f 65  le memcpy)..(joe
34910 20 65 6e 67 6c 69 73 68 2c 20 68 6f 62 62 73 29   english, hobbs)
34920 0a 0a 31 30 2f 33 30 2f 39 39 20 28 62 75 67 20  ..10/30/99 (bug 
34930 66 69 78 29 20 72 65 6d 6f 76 65 64 20 73 61 76  fix) removed sav
34940 65 64 43 68 61 72 20 74 72 69 63 6b 20 69 6e 20  edChar trick in 
34950 74 63 6c 43 6f 6d 70 69 6c 65 2e 63 20 74 68 61  tclCompile.c tha
34960 74 20 61 70 70 65 61 72 65 64 0a 74 6f 20 62 65  t appeared.to be
34970 20 63 61 75 73 69 6e 67 20 61 20 73 65 67 76 20   causing a segv 
34980 77 68 65 6e 20 74 68 65 20 6c 69 74 65 72 61 6c  when the literal
34990 20 74 61 62 6c 65 20 77 61 73 20 72 65 6c 65 61   table was relea
349a0 73 65 64 2e 0a 5b 42 75 67 3a 20 32 34 35 39 2c  sed..[Bug: 2459,
349b0 20 32 35 31 35 5d 20 28 44 61 76 69 64 20 57 68   2515] (David Wh
349c0 69 74 65 68 6f 75 73 65 29 0a 0a 31 30 2f 33 30  itehouse)..10/30
349d0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69  /99 (bug fix) fi
349e0 78 65 64 20 5b 73 74 72 69 6e 67 20 69 6e 64 65  xed [string inde
349f0 78 5d 20 74 6f 20 72 65 74 75 72 6e 20 42 79 74  x] to return Byt
34a00 65 41 72 72 61 79 4f 62 6a 0a 77 68 65 6e 20 69  eArrayObj.when i
34a10 6e 64 65 78 69 6e 67 20 69 6e 74 6f 20 6f 6e 65  ndexing into one
34a20 20 28 74 65 73 74 20 63 61 73 65 20 73 74 72 69   (test case stri
34a30 6e 67 2d 35 2e 31 36 29 20 5b 42 75 67 3a 20 32  ng-5.16) [Bug: 2
34a40 38 37 31 5d 20 28 68 6f 62 62 73 29 0a 0a 31 30  871] (hobbs)..10
34a50 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /30/99 (bug fix)
34a60 20 66 69 78 65 73 20 66 6f 72 20 6d 61 63 20 55   fixes for mac U
34a70 54 46 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e 64  TF filename hand
34a80 6c 69 6e 67 20 28 69 6e 67 68 61 6d 29 0a 0a 2d  ling (ingham)..-
34a90 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32 2e  -- Released 8.2.
34aa0 32 2c 20 4e 6f 76 65 6d 62 65 72 20 30 34 2c 20  2, November 04, 
34ab0 31 39 39 39 20 2d 2d 2d 20 53 65 65 20 43 68 61  1999 --- See Cha
34ac0 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65 74 61 69  ngeLog for detai
34ad0 6c 73 20 2d 2d 2d 0a 0a 31 31 2f 31 39 2f 39 39  ls ---..11/19/99
34ae0 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
34af0 65 6d 65 6e 74 29 20 62 75 67 20 66 69 78 65 73  ement) bug fixes
34b00 20 66 6f 72 20 68 74 74 70 20 70 61 63 6b 61 67   for http packag
34b10 65 20 61 73 20 77 65 6c 6c 20 61 73 0a 70 61 74  e as well as.pat
34b20 63 68 20 72 65 71 75 69 72 65 64 20 62 79 20 54  ch required by T
34b30 4c 53 20 28 53 53 4c 29 20 65 78 74 65 6e 73 69  LS (SSL) extensi
34b40 6f 6e 20 74 68 61 74 20 61 64 64 73 20 68 74 74  on that adds htt
34b50 70 3a 3a 28 75 6e 29 72 65 67 69 73 74 65 72 0a  p::(un)register.
34b60 61 6e 64 20 2d 74 79 70 65 20 74 6f 20 68 74 74  and -type to htt
34b70 70 3a 3a 67 65 74 75 72 6c 2e 20 20 55 70 27 64  p::geturl.  Up'd
34b80 20 68 74 74 70 20 70 6b 67 20 76 65 72 73 69 6f   http pkg versio
34b90 6e 20 74 6f 20 32 2e 32 2e 0a 0a 31 31 2f 31 39  n to 2.2...11/19
34ba0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 72 65  /99 (bug fix) re
34bb0 6d 6f 76 65 64 20 65 78 74 72 61 20 64 65 63 72  moved extra decr
34bc0 20 6f 66 20 6e 75 6d 4c 65 76 65 6c 73 20 69 6e   of numLevels in
34bd0 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 45 78 0a 74   Tcl_EvalObjEx.t
34be0 68 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65 20  hat could cause 
34bf0 73 65 67 20 66 61 75 6c 74 20 28 6d 6a 61 6e 73  seg fault (mjans
34c00 65 6e 40 77 65 6e 64 74 2e 64 65 29 0a 0a 31 31  [email protected])..11
34c10 2f 31 39 2f 39 39 20 28 62 75 67 20 66 69 78 65  /19/99 (bug fixe
34c20 73 29 20 6e 75 6d 65 72 6f 75 73 20 6d 69 6e 6f  s) numerous mino
34c30 72 20 62 69 67 20 66 69 78 65 73 2c 20 69 6e 63  r big fixes, inc
34c40 6c 75 64 69 6e 67 20 63 6f 72 72 65 63 74 69 6e  luding correctin
34c50 67 20 74 68 65 0a 69 6e 73 74 61 6c 6c 61 74 69  g the.installati
34c60 6f 6e 20 6f 66 20 74 68 65 20 6b 6f 69 38 2d 72  on of the koi8-r
34c70 20 65 6e 63 6f 64 69 6e 67 20 61 6e 64 20 74 63   encoding and tc
34c80 6c 74 65 73 74 31 2e 30 20 6f 6e 20 57 69 6e 64  ltest1.0 on Wind
34c90 6f 77 73 2e 0a 0a 31 31 2f 33 30 2f 39 39 20 28  ows...11/30/99 (
34ca0 62 75 67 20 66 69 78 29 20 66 69 78 65 73 20 73  bug fix) fixes s
34cb0 63 61 6e 20 77 68 65 72 65 20 25 5b 2e 2e 5d 20  can where %[..] 
34cc0 64 69 64 6e 27 74 20 6d 61 74 63 68 20 61 6e 79  didn't match any
34cd0 74 68 69 6e 67 0a 0a 31 31 2f 33 30 2f 39 39 20  thing..11/30/99 
34ce0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
34cf0 73 65 74 74 69 6e 67 20 6f 66 20 69 73 4e 6f 6e  setting of isNon
34d00 42 6c 6f 63 6b 69 6e 67 20 66 6c 61 67 20 69 6e  Blocking flag in
34d10 20 50 69 70 65 42 6c 6f 63 6b 4d 6f 64 65 50 72   PipeBlockModePr
34d20 6f 63 0a 73 6f 20 79 6f 75 20 63 61 6e 20 6e 6f  oc.so you can no
34d30 77 20 63 6c 6f 73 65 20 61 20 6e 6f 6e 2d 62 6c  w close a non-bl
34d40 6f 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20 77  ocking channel w
34d50 69 74 68 6f 75 74 20 77 61 69 74 69 6e 67 2e 0a  ithout waiting..
34d60 0a 31 31 2f 33 30 2f 39 39 20 28 62 75 67 20 77  .11/30/99 (bug w
34d70 6f 72 6b 2d 61 72 6f 75 6e 64 29 20 70 72 65 76  ork-around) prev
34d80 65 6e 74 65 64 20 74 68 65 20 75 6e 6c 6f 61 64  ented the unload
34d90 69 6e 67 20 6f 66 20 44 4c 4c 73 20 66 6f 72 20  ing of DLLs for 
34da0 55 6e 69 78 20 69 6e 0a 54 63 6c 46 69 6e 61 6c  Unix in.TclFinal
34db0 69 7a 65 4c 6f 61 64 2e 20 20 54 68 69 73 20 73  izeLoad.  This s
34dc0 74 6f 70 73 20 74 68 65 20 73 65 67 20 66 61 75  tops the seg fau
34dd0 6c 74 20 6f 6e 20 65 78 69 74 20 74 68 61 74 20  lt on exit that 
34de0 73 6f 6d 65 20 75 73 65 72 73 20 77 6f 75 6c 64  some users would
34df0 0a 73 65 65 20 28 69 65 20 77 69 74 68 20 6f 72  .see (ie with or
34e00 61 74 63 6c 29 20 77 68 65 6e 20 75 73 69 6e 67  atcl) when using
34e10 20 44 4c 4c 73 20 74 68 61 74 20 64 6f 20 6e 61   DLLs that do na
34e20 73 74 79 20 74 68 69 6e 67 73 20 6c 69 6b 65 20  sty things like 
34e30 72 65 67 69 73 74 65 72 0a 61 74 65 78 69 74 20  register.atexit 
34e40 68 61 6e 64 6c 65 72 73 2e 0a 0a 31 32 2f 30 37  handlers...12/07
34e50 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69  /99 (bug fix) fi
34e60 78 65 73 20 66 6f 72 20 27 65 78 70 72 20 2b 20  xes for 'expr + 
34e70 7b 5b 69 6e 63 72 5d 7d 27 20 61 6e 64 20 27 65  {[incr]}' and 'e
34e80 78 70 72 20 2b 20 7b 5b 65 72 72 6f 72 5d 7d 27  xpr + {[error]}'
34e90 0a 63 61 73 65 73 20 28 64 69 66 66 65 72 65 6e  .cases (differen
34ea0 74 20 63 61 75 73 65 73 29 2e 0a 0a 2d 2d 2d 20  t causes)...--- 
34eb0 52 65 6c 65 61 73 65 64 20 38 2e 32 2e 33 2c 20  Released 8.2.3, 
34ec0 44 65 63 65 6d 62 65 72 20 31 36 2c 20 31 39 39  December 16, 199
34ed0 39 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e 67 65  9 --- See Change
34ee0 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c 73 20  Log for details 
34ef0 2d 2d 2d 0a 0a 31 39 39 39 2d 30 39 2d 31 34 20  ---..1999-09-14 
34f00 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
34f10 6d 65 6e 74 29 20 61 64 64 65 64 20 2d 73 74 61  ment) added -sta
34f20 72 74 20 73 77 69 74 63 68 20 74 6f 20 72 65 67  rt switch to reg
34f30 65 78 70 20 61 6e 64 20 72 65 67 73 75 62 2e 0a  exp and regsub..
34f40 0a 31 39 39 39 2d 30 39 2d 31 35 20 28 66 65 61  .1999-09-15 (fea
34f50 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
34f60 29 20 61 64 64 20 27 61 72 72 61 79 20 75 6e 73  ) add 'array uns
34f70 65 74 27 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 39  et' command...19
34f80 39 39 2d 30 39 2d 31 35 20 28 66 65 61 74 75 72  99-09-15 (featur
34f90 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 72  e enhancement) r
34fa0 65 77 72 6f 74 65 20 72 75 6e 74 69 6d 65 20 6c  ewrote runtime l
34fb0 69 62 72 61 72 69 65 73 20 74 6f 20 75 73 65 20  ibraries to use 
34fc0 6e 65 77 0a 73 74 72 69 6e 67 20 66 75 6e 63 74  new.string funct
34fd0 69 6f 6e 73 0a 0a 31 39 39 39 2d 30 38 2d 31 38  ions..1999-08-18
34fe0 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
34ff0 65 6d 65 6e 74 29 20 61 64 64 65 64 20 27 66 69  ement) added 'fi
35000 6c 65 20 63 68 61 6e 6e 65 6c 73 27 20 63 6f 6d  le channels' com
35010 6d 61 6e 64 2c 20 61 6c 6f 6e 67 20 77 69 74 68  mand, along with
35020 0a 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 4e  .Tcl_GetChannelN
35030 61 6d 65 73 28 45 78 29 20 70 75 62 6c 69 63 20  ames(Ex) public 
35040 43 20 41 50 49 73 2e 0a 0a 31 39 39 39 2d 31 30  C APIs...1999-10
35050 2d 31 39 20 28 66 65 61 74 75 72 65 20 65 6e 68  -19 (feature enh
35060 61 6e 63 65 6d 65 6e 74 29 20 65 6e 68 61 6e 63  ancement) enhanc
35070 65 64 20 74 63 6c 74 65 73 74 20 70 61 63 6b 61  ed tcltest packa
35080 67 65 0a 0a 31 39 39 39 2d 30 39 2d 31 36 20 28  ge..1999-09-16 (
35090 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
350a0 65 6e 74 29 20 61 64 64 65 64 20 2d 6d 69 6c 6c  ent) added -mill
350b0 69 73 65 63 6f 6e 64 73 20 73 77 69 74 63 68 20  iseconds switch 
350c0 74 6f 20 27 63 6c 6f 63 6b 20 63 6c 69 63 6b 73  to 'clock clicks
350d0 27 0a 0a 31 39 39 39 2d 31 30 2d 32 38 20 28 66  '..1999-10-28 (f
350e0 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
350f0 6e 74 29 20 61 64 64 65 64 20 73 75 70 70 6f 72  nt) added suppor
35100 74 20 66 6f 72 20 69 6e 6c 69 6e 65 20 27 73 63  t for inline 'sc
35110 61 6e 27 0a 0a 31 39 39 39 2d 31 30 2d 32 38 20  an'..1999-10-28 
35120 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
35130 6d 65 6e 74 29 20 61 64 64 65 64 20 73 75 70 70  ment) added supp
35140 6f 72 74 20 66 6f 72 20 74 6f 75 63 68 20 66 75  ort for touch fu
35150 6e 63 74 69 6f 6e 61 6c 69 74 79 20 62 79 0a 65  nctionality by.e
35160 78 74 65 6e 64 65 64 69 6e 67 20 27 66 69 6c 65  xtendeding 'file
35170 20 61 74 69 6d 65 27 20 61 6e 64 20 27 66 69 6c   atime' and 'fil
35180 65 20 6d 74 69 6d 65 27 20 74 6f 20 74 61 6b 65  e mtime' to take
35190 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 69 6d   an optional tim
351a0 65 20 61 72 67 75 6d 65 6e 74 0a 0a 31 39 39 39  e argument..1999
351b0 2d 31 31 2d 32 34 20 28 66 65 61 74 75 72 65 20  -11-24 (feature 
351c0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64  enhancement) add
351d0 65 64 20 27 66 63 6f 6e 66 69 67 75 72 65 20 24  ed 'fconfigure $
351e0 73 6f 63 6b 20 2d 6c 61 73 74 65 72 72 6f 72 27  sock -lasterror'
351f0 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 57 69 6e 64  .command to Wind
35200 6f 77 73 20 74 6f 20 71 75 65 72 79 20 74 68 65  ows to query the
35210 20 6c 61 73 74 20 65 72 72 6f 72 20 72 65 63 65   last error rece
35220 69 76 65 64 20 6f 6e 20 61 20 73 65 72 69 61 6c  ived on a serial
35230 20 73 6f 63 6b 65 74 2e 0a 0a 31 39 39 39 2d 31   socket...1999-1
35240 31 2d 33 30 20 28 62 75 67 20 66 69 78 29 20 66  1-30 (bug fix) f
35250 69 78 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f 66  ixed handling of
35260 20 25 5a 20 6f 6e 20 4e 54 20 66 6f 72 20 74 69   %Z on NT for ti
35270 6d 65 7a 6f 6e 65 73 20 74 68 61 74 20 64 6f 6e  mezones that don
35280 27 74 0a 68 61 76 65 20 44 53 54 0a 0a 31 39 39  't.have DST..199
35290 39 2d 31 32 2d 30 33 20 28 66 65 61 74 75 72 65  9-12-03 (feature
352a0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69 6d   enhancement) im
352b0 70 72 6f 76 65 64 20 65 72 72 6f 72 20 6d 65 73  proved error mes
352c0 73 61 67 65 20 69 6e 20 62 61 64 20 6f 63 74 61  sage in bad octa
352d0 6c 20 63 61 73 65 73 0a 61 6e 64 20 69 6d 70 72  l cases.and impr
352e0 6f 70 65 72 20 75 73 65 20 6f 66 20 63 6f 6d 6d  oper use of comm
352f0 65 6e 74 73 2e 20 28 68 6f 62 62 73 29 0a 0a 31  ents. (hobbs)..1
35300 39 39 39 2d 31 32 2d 30 37 20 28 62 75 67 20 66  999-12-07 (bug f
35310 69 78 29 20 66 69 78 65 64 20 54 63 6c 5f 53 63  ix) fixed Tcl_Sc
35320 61 6e 43 6f 75 6e 74 65 64 45 6c 65 6d 65 6e 74  anCountedElement
35330 20 74 6f 20 6e 6f 74 20 73 74 65 70 0a 62 65 79   to not step.bey
35340 6f 6e 64 20 74 68 65 20 65 6e 64 20 6f 66 20 74  ond the end of t
35350 68 65 20 63 6f 75 6e 74 65 64 20 73 74 72 69 6e  he counted strin
35360 67 0a 0a 31 39 39 39 2d 31 32 2d 30 39 20 28 66  g..1999-12-09 (f
35370 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
35380 6e 74 29 20 72 65 6d 6f 76 65 64 20 61 6c 6c 20  nt) removed all 
35390 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 31 36  references to 16
353a0 20 62 69 74 0a 63 6f 6d 70 61 74 69 62 69 6c 69   bit.compatibili
353b0 74 79 20 63 6f 64 65 20 66 6f 72 20 57 69 6e 64  ty code for Wind
353c0 6f 77 73 20 28 68 6f 62 62 73 29 0a 0a 31 39 39  ows (hobbs)..199
353d0 39 2d 31 32 2d 31 30 20 28 62 75 67 20 66 69 78  9-12-10 (bug fix
353e0 29 20 72 65 6d 6f 76 65 64 20 63 68 65 63 6b 20  ) removed check 
353f0 66 6f 72 20 76 66 6f 72 6b 20 2d 20 54 63 6c 20  for vfork - Tcl 
35400 6e 6f 77 20 75 73 65 73 20 6f 6e 6c 79 20 66 6f  now uses only fo
35410 72 6b 20 69 6e 0a 65 78 65 63 2e 20 28 68 6f 62  rk in.exec. (hob
35420 62 73 29 0a 0a 31 39 39 39 2d 31 32 2d 31 30 20  bs)..1999-12-10 
35430 28 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20 63  (optimization) c
35440 68 61 6e 67 65 64 20 54 63 6c 5f 43 6f 6e 63 61  hanged Tcl_Conca
35450 74 4f 62 6a 20 74 6f 20 72 65 74 75 72 6e 20 61  tObj to return a
35460 20 6c 69 73 74 0a 6f 62 6a 65 63 74 20 77 68 65   list.object whe
35470 6e 20 69 74 20 72 65 63 65 69 76 65 73 20 61 6c  n it receives al
35480 6c 20 70 75 72 65 20 6c 69 73 74 20 6f 62 6a 65  l pure list obje
35490 63 74 73 20 61 73 20 69 6e 70 75 74 20 28 75 73  cts as input (us
354a0 65 64 20 62 79 20 27 63 6f 6e 63 61 74 27 29 2c  ed by 'concat'),
354b0 0a 61 64 64 65 64 20 6f 70 74 69 6d 69 7a 61 74  .added optimizat
354c0 69 6f 6e 73 20 69 6e 20 54 63 6c 5f 45 76 61 6c  ions in Tcl_Eval
354d0 4f 62 6a 45 78 20 66 6f 72 20 70 75 72 65 20 6c  ObjEx for pure l
354e0 69 73 74 20 63 61 73 65 2c 20 61 6e 64 20 6f 70  ist case, and op
354f0 74 69 6d 69 7a 65 64 0a 49 4e 53 54 5f 54 52 59  timized.INST_TRY
35500 5f 43 56 54 5f 54 4f 5f 4e 55 4d 45 52 49 43 20  _CVT_TO_NUMERIC 
35510 69 6e 20 54 63 6c 45 78 65 63 75 74 65 42 79 74  in TclExecuteByt
35520 65 43 6f 64 65 20 66 6f 72 20 62 6f 6f 6c 65 61  eCode for boolea
35530 6e 20 6f 62 6a 65 63 74 73 2e 0a 28 6f 61 6b 6c  n objects..(oakl
35540 65 79 2c 20 68 6f 62 62 73 29 0a 0a 31 39 39 39  ey, hobbs)..1999
35550 2d 31 32 2d 31 32 20 28 66 65 61 74 75 72 65 20  -12-12 (feature 
35560 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 65 6e 68  enhancement) enh
35570 61 6e 63 65 64 20 67 6c 6f 62 20 63 6f 6d 6d 61  anced glob comma
35580 6e 64 20 77 69 74 68 20 2d 74 79 70 65 2c 20 2d  nd with -type, -
35590 70 61 74 68 2c 0a 2d 64 69 72 65 63 74 6f 72 79  path,.-directory
355a0 20 61 6e 64 20 2d 6a 6f 69 6e 20 73 77 69 74 63   and -join switc
355b0 68 65 73 2e 20 28 64 61 72 6c 65 79 2c 20 68 6f  hes. (darley, ho
355c0 62 62 73 29 0a 0a 31 39 39 39 2d 31 32 2d 32 31  bbs)..1999-12-21
355d0 20 28 62 75 67 20 66 69 78 29 20 63 68 61 6e 67   (bug fix) chang
355e0 65 64 20 43 72 65 61 74 65 54 68 72 65 61 64 20  ed CreateThread 
355f0 74 6f 20 5f 62 65 67 69 6e 74 68 72 65 61 64 65  to _beginthreade
35600 78 20 61 6e 64 0a 45 78 69 74 54 68 72 65 61 64  x and.ExitThread
35610 20 74 6f 20 5f 65 6e 64 74 68 72 65 61 64 65 78   to _endthreadex
35620 20 74 6f 20 70 72 65 76 65 6e 74 20 34 4b 20 6d   to prevent 4K m
35630 65 6d 20 6c 65 61 6b 20 28 67 72 61 76 65 72 65  em leak (gravere
35640 61 75 78 29 0a 0a 31 39 39 39 2d 31 32 2d 32 31  aux)..1999-12-21
35650 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
35660 20 61 70 70 6c 65 73 63 72 69 70 74 20 66 6f 72   applescript for
35670 20 49 31 38 4e 0a 0a 31 39 39 39 2d 31 32 2d 32   I18N..1999-12-2
35680 31 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  1 (feature enhan
35690 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 2d 75  cement) added -u
356a0 6e 69 71 75 65 20 6f 70 74 69 6f 6e 20 74 6f 20  nique option to 
356b0 6c 73 6f 72 74 20 28 68 6f 62 62 73 29 0a 0a 31  lsort (hobbs)..1
356c0 39 39 39 2d 31 32 2d 32 31 20 28 62 75 67 20 66  999-12-21 (bug f
356d0 69 78 29 20 63 68 61 6e 67 65 64 20 74 68 72 65  ix) changed thre
356e0 61 64 20 69 64 73 20 74 6f 20 6c 6f 6e 67 73 20  ad ids to longs 
356f0 28 66 6f 72 20 36 34 62 69 74 20 73 79 73 74 65  (for 64bit syste
35700 6d 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65  ms)..--- Release
35710 64 20 38 2e 33 62 31 2c 20 44 65 63 65 6d 62 65  d 8.3b1, Decembe
35720 72 20 32 32 2c 20 31 39 39 39 20 2d 2d 2d 20 53  r 22, 1999 --- S
35730 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72  ee ChangeLog for
35740 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30   details ---..20
35750 30 30 2d 30 31 2d 31 30 20 28 66 65 61 74 75 72  00-01-10 (featur
35760 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 63  e enhancement) c
35770 6c 6f 63 6b 20 73 63 61 6e 20 6e 6f 77 20 73 75  lock scan now su
35780 70 70 6f 72 74 73 20 74 68 65 20 63 6f 6d 6d 6f  pports the commo
35790 6e 0a 49 53 4f 20 38 36 30 31 20 64 61 74 65 2f  n.ISO 8601 date/
357a0 74 69 6d 65 20 66 6f 72 6d 61 74 73 2e 20 20 53  time formats.  S
357b0 65 65 20 64 6f 63 73 20 66 6f 72 20 64 65 74 61  ee docs for deta
357c0 69 6c 73 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a 32  ils. (melski)..2
357d0 30 30 30 2d 30 31 2d 31 30 20 28 62 75 67 20 66  000-01-10 (bug f
357e0 69 78 29 20 70 72 65 76 65 6e 74 65 64 20 5c 6f  ix) prevented \o
357f0 6f 6f 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20  oo substitution 
35800 66 72 6f 6d 20 61 63 63 65 70 74 69 6e 67 0a 6e  from accepting.n
35810 6f 6e 2d 6f 63 74 61 6c 20 64 69 67 69 74 73 20  on-octal digits 
35820 5b 42 75 67 3a 20 33 39 37 35 5d 20 28 68 6f 62  [Bug: 3975] (hob
35830 62 73 29 0a 0a 32 30 30 30 2d 30 31 2d 31 31 20  bs)..2000-01-11 
35840 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
35850 69 6d 70 72 6f 70 65 72 20 68 61 6e 64 6c 69 6e  improper handlin
35860 67 20 6f 66 20 44 53 54 20 62 79 20 63 6c 6f 63  g of DST by cloc
35870 6b 20 77 68 65 6e 0a 75 73 69 6e 67 20 72 65 6c  k when.using rel
35880 61 74 69 76 65 20 74 69 6d 65 73 20 28 6c 69 6b  ative times (lik
35890 65 20 22 31 20 6d 6f 6e 74 68 22 20 6f 72 20 22  e "1 month" or "
358a0 74 6f 6d 6f 72 72 6f 77 22 29 2e 20 28 6d 65 6c  tomorrow"). (mel
358b0 73 6b 69 29 0a 0a 32 30 30 30 2d 30 31 2d 31 32  ski)..2000-01-12
358c0 20 28 62 75 67 20 66 69 78 29 20 69 6d 70 72 6f   (bug fix) impro
358d0 76 65 64 20 62 75 69 6c 64 20 73 75 70 70 6f 72  ved build suppor
358e0 74 20 66 6f 72 20 54 72 75 36 34 20 76 35 2c 20  t for Tru64 v5, 
358f0 4e 65 74 42 53 44 0a 61 6e 64 20 52 65 6c 69 61  NetBSD.and Relia
35900 6e 74 20 55 6e 69 78 20 28 68 6f 62 62 73 29 0a  nt Unix (hobbs).
35910 0a 32 30 30 30 2d 30 31 2d 31 32 20 28 62 75 67  .2000-01-12 (bug
35920 20 66 69 78 29 20 6d 61 64 65 20 69 6d 70 6f 72   fix) made impor
35930 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61 6c 73  ted commands als
35940 6f 20 69 6d 70 6f 72 74 20 74 68 65 69 72 0a 63  o import their.c
35950 6f 6d 70 69 6c 65 20 70 72 6f 63 65 64 75 72 65  ompile procedure
35960 20 28 64 75 66 66 69 6e 29 0a 0a 32 30 30 30 2d   (duffin)..2000-
35970 30 31 2d 31 32 20 28 62 75 67 20 66 69 78 29 20  01-12 (bug fix) 
35980 66 69 78 65 64 20 27 69 6e 66 6f 20 70 72 6f 63  fixed 'info proc
35990 73 20 3a 3a 6e 61 6d 65 73 70 3a 3a 2a 27 20 62  s ::namesp::*' b
359a0 65 68 61 76 69 6f 72 20 74 6f 20 72 65 74 75 72  ehavior to retur
359b0 6e 0a 70 72 6f 63 73 20 69 6e 20 61 20 6e 61 6d  n.procs in a nam
359c0 65 73 70 61 63 65 20 28 64 65 6a 6f 6e 67 29 0a  espace (dejong).
359d0 0a 32 30 30 30 2d 30 31 2d 31 32 20 28 66 65 61  .2000-01-12 (fea
359e0 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
359f0 29 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20  ) added support 
35a00 66 6f 72 20 73 65 74 74 69 6e 67 20 70 65 72 6d  for setting perm
35a10 69 73 73 69 6f 6e 73 0a 73 79 6d 62 6f 6c 69 63  issions.symbolic
35a20 6c 79 20 28 6c 69 6b 65 20 63 68 6d 6f 64 29 20  ly (like chmod) 
35a30 69 6e 20 5b 66 69 6c 65 20 61 74 74 72 69 62 75  in [file attribu
35a40 74 65 73 20 24 66 69 6c 65 20 2d 70 65 72 6d 69  tes $file -permi
35a50 73 73 69 6f 6e 73 20 2e 2e 2e 5d 20 28 73 63 68  ssions ...] (sch
35a60 6f 65 62 65 6c 29 0a 0a 32 30 30 30 2d 30 31 2d  oebel)..2000-01-
35a70 31 33 20 28 62 75 67 20 66 69 78 29 20 66 69 78  13 (bug fix) fix
35a80 65 64 20 6c 73 6f 72 74 20 2d 64 69 63 74 69 6f  ed lsort -dictio
35a90 6e 61 72 79 20 70 72 6f 62 6c 65 6d 20 77 68 65  nary problem whe
35aa0 6e 20 73 6f 72 74 69 6e 67 0a 63 68 61 72 61 63  n sorting.charac
35ab0 74 65 72 73 20 62 65 74 77 65 65 6e 20 27 5a 27  ters between 'Z'
35ac0 20 61 6e 64 20 27 61 27 20 28 66 6c 61 77 65 64   and 'a' (flawed
35ad0 20 75 70 70 65 72 2f 6c 6f 77 65 72 20 63 6f 6d   upper/lower com
35ae0 70 61 72 69 73 6f 6e 20 6c 6f 67 69 63 29 20 28  parison logic) (
35af0 6d 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52 65 6c  melski)..--- Rel
35b00 65 61 73 65 64 20 38 2e 33 62 32 2c 20 4a 61 6e  eased 8.3b2, Jan
35b10 75 61 72 79 20 31 33 2c 20 32 30 30 30 20 2d 2d  uary 13, 2000 --
35b20 2d 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20  - See ChangeLog 
35b30 66 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a  for details ---.
35b40 0a 32 30 30 30 2d 30 31 2d 31 34 20 28 66 65 61  .2000-01-14 (fea
35b50 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
35b60 29 20 63 6c 6f 63 6b 20 66 6f 72 6d 61 74 20 25  ) clock format %
35b70 51 20 61 64 64 65 64 2c 20 63 6c 6f 63 6b 20 73  Q added, clock s
35b80 63 61 6e 20 75 70 64 61 74 65 64 0a 0a 32 30 30  can updated..200
35b90 30 2d 30 31 2d 32 30 20 28 62 75 67 20 66 69 78  0-01-20 (bug fix
35ba0 29 20 63 6f 72 72 65 63 74 65 64 20 63 6f 6d 70  ) corrected comp
35bb0 6c 65 78 20 61 72 72 61 79 20 65 6c 65 6d 20 63  lex array elem c
35bc0 6f 6d 70 69 6c 69 6e 67 20 28 53 70 6a 75 74 68  ompiling (Spjuth
35bd0 29 0a 0a 32 30 30 30 2d 30 31 2d 32 30 20 28 62  )..2000-01-20 (b
35be0 75 67 20 66 69 78 29 20 6d 61 64 65 20 5b 69 6e  ug fix) made [in
35bf0 66 6f 20 62 6f 64 79 5d 20 61 6c 77 61 79 73 20  fo body] always 
35c00 72 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67 20  return a string 
35c10 74 79 70 65 20 61 72 67 2c 0a 74 6f 20 70 72 65  type arg,.to pre
35c20 76 65 6e 74 20 70 6f 73 73 69 62 6c 65 20 6d 69  vent possible mi
35c30 73 75 73 65 20 6f 66 20 62 79 74 65 63 6f 64 65  suse of bytecode
35c40 73 20 69 6e 20 74 68 65 20 77 72 6f 6e 67 20 63  s in the wrong c
35c50 6f 6e 74 65 78 74 20 28 68 6f 62 62 73 29 0a 0a  ontext (hobbs)..
35c60 32 30 30 30 2d 30 31 2d 32 30 20 28 62 75 67 20  2000-01-20 (bug 
35c70 66 69 78 65 73 29 20 73 65 76 65 72 61 6c 20 66  fixes) several f
35c80 69 78 65 73 20 74 6f 20 76 61 72 69 61 62 6c 65  ixes to variable
35c90 20 68 61 6e 64 6c 69 6e 67 20 74 6f 20 70 72 65   handling to pre
35ca0 76 65 6e 74 0a 70 6f 73 73 69 62 6c 65 20 63 72  vent.possible cr
35cb0 61 73 68 65 73 2c 20 61 6e 64 20 66 75 72 74 68  ashes, and furth
35cc0 65 72 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66  er definition of
35cd0 20 63 6f 72 72 65 63 74 20 62 65 68 61 76 69 6f   correct behavio
35ce0 72 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30  r (melski)..2000
35cf0 2d 30 31 2d 32 35 20 28 62 75 67 20 66 69 78 65  -01-25 (bug fixe
35d00 73 29 20 69 6d 70 72 6f 76 65 64 20 51 4e 58 2c  s) improved QNX,
35d10 20 55 6c 74 72 69 78 20 61 6e 64 20 4f 53 46 31   Ultrix and OSF1
35d20 20 28 54 72 75 36 34 29 20 63 6f 6e 66 69 67 20   (Tru64) config 
35d30 61 6e 64 0a 63 6f 6d 70 61 74 69 62 69 6c 69 74  and.compatibilit
35d40 79 20 28 65 64 67 65 2c 20 66 75 72 75 6b 61 77  y (edge, furukaw
35d50 61 29 0a 0a 32 30 30 30 2d 30 31 2d 32 35 20 28  a)..2000-01-25 (
35d60 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20 6d  bug fix) fixed m
35d70 65 6d 20 6c 65 61 6b 20 77 68 65 6e 20 63 61 6c  em leak when cal
35d80 6c 69 6e 67 20 6c 73 6f 72 74 20 77 69 74 68 20  ling lsort with 
35d90 61 20 62 61 64 20 2d 63 6f 6d 6d 61 6e 64 0a 61  a bad -command.a
35da0 72 67 75 6d 65 6e 74 20 28 68 6f 62 62 73 29 0a  rgument (hobbs).
35db0 0a 32 30 30 30 2d 30 31 2d 32 37 20 28 66 65 61  .2000-01-27 (fea
35dc0 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
35dd0 29 20 70 61 63 6b 61 67 65 20 6d 65 63 68 61 6e  ) package mechan
35de0 69 73 6d 20 6f 76 65 72 68 61 75 6c 3a 20 63 68  ism overhaul: ch
35df0 61 6e 67 65 64 0a 62 65 68 61 76 69 6f 72 20 6f  anged.behavior o
35e00 66 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f  f pkg_mkIndex to
35e10 20 64 6f 20 2d 64 69 72 65 63 74 20 62 79 20 64   do -direct by d
35e20 65 66 61 75 6c 74 2c 20 61 64 64 65 64 20 2d 6c  efault, added -l
35e30 61 7a 79 20 6f 70 74 69 6f 6e 2e 0a 46 69 78 65  azy option..Fixe
35e40 64 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f  d pkg_mkIndex to
35e50 20 68 61 6e 64 6c 65 20 6f 64 64 20 70 72 6f 63   handle odd proc
35e60 20 6e 61 6d 65 73 20 61 6e 64 20 61 75 74 6f 5f   names and auto_
35e70 6d 6b 49 6e 64 65 78 20 74 6f 20 75 73 65 20 70  mkIndex to use p
35e80 6c 61 74 66 6f 72 6d 0a 69 6e 64 65 70 65 6e 64  latform.independ
35e90 65 6e 74 20 66 69 6c 65 20 70 61 74 68 73 2e 20  ent file paths. 
35ea0 20 4f 74 68 65 72 20 66 69 78 65 73 20 66 6f 72   Other fixes for
35eb0 20 6f 64 64 20 70 61 63 6b 61 67 65 20 71 75 69   odd package qui
35ec0 72 6b 73 2e 20 20 41 64 64 65 64 0a 3a 3a 70 6b  rks.  Added.::pk
35ed0 67 20 6e 61 6d 65 73 70 61 63 65 20 61 6e 64 20  g namespace and 
35ee0 3a 3a 70 6b 67 3a 3a 63 72 65 61 74 65 20 68 65  ::pkg::create he
35ef0 6c 70 65 72 20 66 75 6e 63 74 69 6f 6e 2e 20 28  lper function. (
35f00 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 32  melski)..2000-02
35f10 2d 30 31 20 28 62 75 67 20 66 69 78 29 20 66 69  -01 (bug fix) fi
35f20 78 65 64 20 70 72 6f 62 6c 65 6d 20 77 68 65 72  xed problem wher
35f30 65 20 68 74 74 70 20 50 4f 53 54 20 77 6f 75 6c  e http POST woul
35f40 64 20 73 65 6e 64 20 6f 6e 65 20 65 78 74 72 61  d send one extra
35f50 0a 6e 65 77 6c 69 6e 65 20 28 76 61 73 69 6c 6a  .newline (vasilj
35f60 65 76 69 63 29 0a 0a 32 30 30 30 2d 30 32 2d 30  evic)..2000-02-0
35f70 32 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  2 (feature enhan
35f80 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 64 6f  cement) added do
35f90 63 73 20 66 6f 72 20 6e 65 77 20 72 65 67 65 78  cs for new regex
35fa0 70 20 2d 69 6e 6c 69 6e 65 20 61 6e 64 0a 2d 61  p -inline and.-a
35fb0 6c 6c 20 73 77 69 74 63 68 65 73 2e 20 28 68 6f  ll switches. (ho
35fc0 62 62 73 29 0a 0a 32 30 30 30 2d 30 32 2d 30 38  bbs)..2000-02-08
35fd0 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65   (bug fix) corre
35fe0 63 74 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f 66  cted handling of
35ff0 20 22 6e 65 78 74 20 6d 6f 6e 74 68 6e 61 6d 65   "next monthname
36000 22 20 69 6e 20 63 6c 6f 63 6b 20 73 63 61 6e 0a  " in clock scan.
36010 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30  (melski)..2000-0
36020 32 2d 30 39 20 28 62 75 67 20 66 69 78 29 20 72  2-09 (bug fix) r
36030 65 73 74 6f 72 65 64 20 4d 61 63 20 73 6f 75 72  estored Mac sour
36040 63 65 20 74 6f 20 62 75 69 6c 64 20 72 65 61 64  ce to build read
36050 69 6e 65 73 73 20 61 6e 64 20 70 72 65 76 65 6e  iness and preven
36060 74 65 64 0a 6d 61 63 20 70 61 6e 69 63 20 66 72  ted.mac panic fr
36070 6f 6d 20 61 6e 20 65 72 72 6f 72 20 77 68 65 6e  om an error when
36080 20 63 6c 6f 73 69 6e 67 20 61 6e 20 61 73 79 6e   closing an asyn
36090 63 20 73 6f 63 6b 65 74 20 28 73 74 65 66 66 65  c socket (steffe
360a0 6e 2c 20 69 6e 67 68 61 6d 29 0a 0a 32 30 30 30  n, ingham)..2000
360b0 2d 30 32 2d 31 30 20 28 66 65 61 74 75 72 65 20  -02-10 (feature 
360c0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69 6d 70  enhancement) imp
360d0 72 6f 76 65 64 20 65 72 72 6f 72 20 72 65 70 6f  roved error repo
360e0 72 74 69 6e 67 20 66 6f 72 20 66 61 69 6c 65 64  rting for failed
360f0 0a 6c 6f 61 64 73 20 6f 6e 20 57 69 6e 64 6f 77  .loads on Window
36100 73 20 28 64 65 6a 6f 6e 67 2c 20 68 6f 62 62 73  s (dejong, hobbs
36110 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  )..--- Released 
36120 38 2e 33 2e 30 2c 20 46 65 62 72 75 61 72 79 20  8.3.0, February 
36130 31 30 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65 65  10, 2000 --- See
36140 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64   ChangeLog for d
36150 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30  etails ---..2000
36160 2d 30 33 20 28 62 75 67 20 66 69 78 65 73 2c 20  -03 (bug fixes, 
36170 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
36180 65 6e 74 29 20 6f 76 65 72 68 61 75 6c 20 6f 66  ent) overhaul of
36190 20 68 74 74 70 20 70 61 63 6b 61 67 65 20 66 6f   http package fo
361a0 72 0a 70 72 6f 70 65 72 20 68 61 6e 64 6c 69 6e  r.proper handlin
361b0 67 20 6f 66 20 61 73 79 6e 63 20 63 61 6c 6c 62  g of async callb
361c0 61 63 6b 73 20 28 6e 65 77 20 6f 70 74 69 6f 6e  acks (new option
361d0 73 29 2c 20 76 65 72 73 69 6f 6e 20 69 73 20 6e  s), version is n
361e0 6f 77 20 61 74 20 32 2e 33 0a 28 74 61 6d 68 61  ow at 2.3.(tamha
361f0 6e 6b 61 72 2c 20 77 65 6c 63 68 29 0a 0a 32 30  nkar, welch)..20
36200 30 30 2d 30 33 20 28 70 65 72 66 6f 72 6d 61 6e  00-03 (performan
36210 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  ce enhancement) 
36220 73 70 65 65 64 75 70 20 69 6e 20 57 69 6e 64 6f  speedup in Windo
36230 77 73 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e 64  ws filename hand
36240 6c 69 6e 67 20 28 6e 65 77 6d 61 6e 29 0a 61 6e  ling (newman).an
36250 64 20 3d 3d 2f 21 3d 20 65 6d 70 74 79 20 73 74  d ==/!= empty st
36260 72 69 6e 67 20 69 6e 20 65 78 70 72 73 2e 20 28  ring in exprs. (
36270 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d  hobbs)..2000-03-
36280 32 37 20 28 62 75 67 20 66 69 78 29 20 61 64 64  27 (bug fix) add
36290 65 64 20 75 6e 69 71 27 69 6e 67 20 74 65 73 74  ed uniq'ing test
362a0 20 74 6f 20 6e 61 6d 65 73 70 61 63 65 20 65 78   to namespace ex
362b0 70 6f 72 74 20 6c 69 73 74 20 74 6f 0a 70 72 65  port list to.pre
362c0 76 65 6e 74 20 75 6e 6e 65 63 65 73 73 61 72 79  vent unnecessary
362d0 20 6d 65 6d 20 67 72 6f 77 74 68 20 28 68 6f 62   mem growth (hob
362e0 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39 20  bs)..2000-03-29 
362f0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
36300 6d 65 6d 20 6c 65 61 6b 20 77 68 65 6e 20 72 65  mem leak when re
36310 70 65 61 74 65 64 6c 79 20 73 6f 75 72 63 69 6e  peatedly sourcin
36320 67 20 74 68 65 20 73 61 6d 65 0a 62 79 74 65 63  g the same.bytec
36330 6f 6d 70 69 6c 65 64 20 28 74 62 63 29 20 63 6f  ompiled (tbc) co
36340 64 65 20 72 65 70 65 61 74 65 64 6c 79 20 61 63  de repeatedly ac
36350 72 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20 69  ross different i
36360 6e 74 65 72 70 72 65 74 65 72 73 20 28 68 6f 62  nterpreters (hob
36370 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39 20  bs)..2000-03-29 
36380 28 63 6f 6e 66 69 67 20 65 6e 68 61 6e 63 65 6d  (config enhancem
36390 65 6e 74 29 20 69 6d 70 72 6f 76 65 64 20 62 75  ent) improved bu
363a0 69 6c 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ild support for 
363b0 67 63 63 2f 6d 69 6e 67 77 20 6f 6e 0a 57 69 6e  gcc/mingw on.Win
363c0 64 6f 77 73 20 28 6e 69 6a 74 6d 61 6e 73 2c 20  dows (nijtmans, 
363d0 68 6f 62 62 73 29 20 61 6e 64 20 61 64 64 65 64  hobbs) and added
363e0 20 52 50 4d 20 74 61 72 67 65 74 20 28 6d 65 6c   RPM target (mel
363f0 73 6b 69 29 0a 0a 32 30 30 30 2d 30 33 2d 33 31  ski)..2000-03-31
36400 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65   (bug fix) corre
36410 63 74 65 64 20 64 61 74 61 20 65 6e 63 6f 64 69  cted data encodi
36420 6e 67 20 70 72 6f 62 6c 65 6d 20 77 68 65 6e 20  ng problem when 
36430 75 73 69 6e 67 0a 22 65 78 65 63 20 3c 3c 20 24  using."exec << $
36440 64 61 74 61 22 20 63 6f 6e 73 74 72 75 63 74 20  data" construct 
36450 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30  (melski)..2000-0
36460 34 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  4 (feature enhan
36470 63 65 6d 65 6e 74 29 20 6f 76 65 72 68 61 75 6c  cement) overhaul
36480 20 6f 66 20 74 68 72 65 61 64 69 6e 67 20 6d 65   of threading me
36490 63 68 61 6e 69 73 6d 20 74 6f 20 62 65 74 74 65  chanism to bette
364a0 72 0a 73 75 70 70 6f 72 74 20 74 63 6c 20 6c 65  r.support tcl le
364b0 76 65 6c 20 74 68 72 65 61 64 20 63 6f 6d 6d 61  vel thread comma
364c0 6e 64 20 28 6e 65 77 20 41 50 49 73 20 54 63 6c  nd (new APIs Tcl
364d0 5f 43 6f 6e 64 69 74 69 6f 6e 46 69 6e 61 6c 69  _ConditionFinali
364e0 7a 65 2c 0a 54 63 6c 5f 4d 75 74 65 78 46 69 6e  ze,.Tcl_MutexFin
364f0 61 6c 69 7a 65 2c 20 54 63 6c 5f 43 72 65 61 74  alize, Tcl_Creat
36500 65 54 68 72 65 61 64 2c 20 65 74 63 2c 20 61 6c  eThread, etc, al
36510 6c 20 64 6f 63 73 20 69 6e 20 54 68 72 65 61 64  l docs in Thread
36520 2e 33 29 2e 0a 28 6b 75 70 72 69 65 73 2c 20 67  .3)..(kupries, g
36530 72 61 76 65 72 61 75 78 29 0a 54 68 69 73 20 65  raveraux).This e
36540 6e 61 62 6c 65 73 20 74 68 65 20 74 63 6c 20 6c  nables the tcl l
36550 65 76 65 6c 20 74 68 72 65 61 64 20 65 78 74 65  evel thread exte
36560 6e 73 69 6f 6e 2e 20 28 77 65 6c 63 68 29 0a 0a  nsion. (welch)..
36570 32 30 30 30 2d 30 34 2d 31 30 20 28 62 75 67 20  2000-04-10 (bug 
36580 66 69 78 29 20 66 69 78 65 64 20 69 6e 66 69 6e  fix) fixed infin
36590 69 74 65 20 6c 6f 6f 70 20 63 61 73 65 20 69 6e  ite loop case in
365a0 20 72 65 67 65 78 70 20 2d 61 6c 6c 20 28 6d 65   regexp -all (me
365b0 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 34 2d 31  lski)..2000-04-1
365c0 33 20 28 63 6f 6e 66 69 67 20 65 6e 68 61 6e 63  3 (config enhanc
365d0 65 6d 65 6e 74 29 20 61 64 64 65 64 20 73 75 70  ement) added sup
365e0 70 6f 72 74 20 66 6f 72 20 2d 2d 65 6e 61 62 6c  port for --enabl
365f0 65 2d 36 34 62 69 74 2d 76 69 73 0a 53 70 61 72  e-64bit-vis.Spar
36600 63 20 74 61 72 67 65 74 2e 20 28 68 6f 62 62 73  c target. (hobbs
36610 29 0a 0a 32 30 30 30 2d 30 34 2d 31 38 20 28 62  )..2000-04-18 (b
36620 75 67 20 66 69 78 29 20 6d 6f 76 65 64 20 74 63  ug fix) moved tc
36630 6c 4c 69 62 72 61 72 79 50 61 74 68 20 74 6f 20  lLibraryPath to 
36640 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 73 74 6f  thread-local sto
36650 72 61 67 65 20 74 6f 20 66 69 78 0a 70 6f 73 73  rage to fix.poss
36660 69 62 6c 65 20 72 61 63 65 20 63 6f 6e 64 69 74  ible race condit
36670 69 6f 6e 20 6f 6e 20 4d 50 20 6d 61 63 68 69 6e  ion on MP machin
36680 65 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30  es (hobbs)..2000
36690 2d 30 34 2d 31 38 20 28 63 6f 6e 66 69 67 20 65  -04-18 (config e
366a0 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64 65  nhancement) adde
366b0 64 20 4d 61 63 4f 53 20 58 20 62 75 69 6c 64 20  d MacOS X build 
366c0 74 61 72 67 65 74 20 61 6e 64 0a 74 63 6c 4c 6f  target and.tclLo
366d0 61 64 44 79 6c 64 2e 63 20 64 6c 20 74 79 70 65  adDyld.c dl type
366e0 2e 20 28 73 61 6e 63 68 65 7a 29 0a 0a 32 30 30  . (sanchez)..200
366f0 30 2d 30 34 2d 32 33 20 28 62 75 67 20 66 69 78  0-04-23 (bug fix
36700 29 20 73 65 76 65 72 61 6c 20 4d 61 63 20 73 6f  ) several Mac so
36710 63 6b 65 74 20 66 69 78 65 73 20 28 69 6e 67 68  cket fixes (ingh
36720 61 6d 29 0a 0a 32 30 30 30 2d 30 34 2d 32 34 20  am)..2000-04-24 
36730 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
36740 68 61 6e 67 20 69 6e 20 74 68 72 65 61 64 65 64  hang in threaded
36750 20 55 6e 69 78 20 63 61 73 65 20 77 68 65 6e 20   Unix case when 
36760 62 61 63 6b 67 72 6f 75 6e 64 65 64 0a 65 78 65  backgrounded.exe
36770 63 20 70 72 6f 63 65 73 73 20 77 61 73 20 72 75  c process was ru
36780 6e 6e 69 6e 67 20 28 64 65 6a 6f 6e 67 29 0a 0a  nning (dejong)..
36790 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 33  --- Released 8.3
367a0 2e 31 2c 20 41 70 72 69 6c 20 32 36 2c 20 32 30  .1, April 26, 20
367b0 30 30 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e 67  00 --- See Chang
367c0 65 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c 73  eLog for details
367d0 20 2d 2d 2d 0a 0a 32 30 30 30 2d 30 34 2d 32 36   ---..2000-04-26
367e0 20 28 64 6f 63 20 66 69 78 29 20 75 70 64 61 74   (doc fix) updat
367f0 65 64 2f 61 64 64 65 64 20 64 6f 63 75 6d 65 6e  ed/added documen
36800 74 61 74 69 6f 6e 20 66 6f 72 20 6d 61 6e 79 20  tation for many 
36810 41 50 49 27 73 20 61 6e 64 0a 63 6f 6d 6d 61 6e  API's and.comman
36820 64 73 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30  ds (melski)..200
36830 30 2d 30 35 2d 30 32 20 28 66 65 61 74 75 72 65  0-05-02 (feature
36840 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64   enhancement) ad
36850 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
36860 6a 6f 69 6e 61 62 6c 65 20 74 68 72 65 61 64 73  joinable threads
36870 3b 0a 65 78 74 65 6e 64 65 64 20 41 50 49 27 73  ;.extended API's
36880 20 66 6f 72 20 63 68 61 6e 6e 65 6c 73 20 74 6f   for channels to
36890 20 61 6c 6c 6f 77 20 63 68 61 6e 6e 65 6c 73 20   allow channels 
368a0 74 6f 20 6d 6f 76 65 20 62 65 74 77 65 65 6e 20  to move between 
368b0 74 68 72 65 61 64 73 0a 28 6b 75 70 72 69 65 73  threads.(kupries
368c0 29 0a 0a 32 30 30 30 2d 30 35 2d 30 32 20 28 66  )..2000-05-02 (f
368d0 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
368e0 6e 74 29 20 63 68 61 6e 67 65 64 20 65 72 72 6f  nt) changed erro
368f0 72 20 72 65 74 75 72 6e 20 66 6f 72 20 70 72 6f  r return for pro
36900 63 65 64 75 72 65 73 0a 77 69 74 68 20 69 6e 63  cedures.with inc
36910 6f 72 72 65 63 74 20 61 72 67 73 20 74 6f 20 62  orrect args to b
36920 65 20 6c 69 6b 65 20 74 68 65 20 54 63 6c 5f 57  e like the Tcl_W
36930 72 6f 6e 67 4e 75 6d 41 72 67 73 20 41 50 49 2c  rongNumArgs API,
36940 20 77 69 74 68 20 61 20 22 77 72 6f 6e 67 0a 23   with a "wrong.#
36950 20 61 72 67 73 3a 20 2e 2e 2e 22 20 6d 65 73 73   args: ..." mess
36960 61 67 65 20 70 72 69 6e 74 65 64 2c 20 77 69 74  age printed, wit
36970 68 20 61 6e 20 61 72 67 73 20 6c 69 73 74 20 28  h an args list (
36980 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 35 2d  hobbs)..2000-05-
36990 30 38 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  08 (feature enha
369a0 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 5b  ncement) added [
369b0 61 72 72 61 79 20 73 74 61 74 69 73 74 69 63 73  array statistics
369c0 5d 20 63 6f 6d 6d 61 6e 64 0a 0a 32 30 30 30 2d  ] command..2000-
369d0 30 35 2d 30 38 20 28 70 65 72 66 6f 72 6d 61 6e  05-08 (performan
369e0 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  ce enhancement) 
369f0 72 65 77 72 6f 74 65 20 54 63 6c 5f 53 74 72 69  rewrote Tcl_Stri
36a00 6e 67 43 61 73 65 4d 61 74 63 68 0a 61 6c 67 6f  ngCaseMatch.algo
36a10 72 69 74 68 6d 20 66 6f 72 20 62 65 74 74 65 72  rithm for better
36a20 20 70 65 72 66 6f 72 6d 61 6e 63 65 3b 20 74 68   performance; th
36a30 69 73 20 61 66 66 65 63 74 73 20 74 68 65 20 5b  is affects the [
36a40 73 74 72 69 6e 67 20 6d 61 74 63 68 5d 0a 63 6f  string match].co
36a50 6d 6d 61 6e 64 3b 20 61 64 64 65 64 20 22 65 71  mmand; added "eq
36a60 22 20 61 6e 64 20 22 6e 65 22 20 6f 70 65 72 61  " and "ne" opera
36a70 6e 64 73 20 74 6f 20 65 78 70 72 2c 20 66 6f 72  nds to expr, for
36a80 20 74 65 73 74 69 6e 67 0a 73 74 72 69 6e 67 20   testing.string 
36a90 65 71 75 61 6c 69 74 79 20 61 6e 64 20 69 6e 65  equality and ine
36aa0 71 75 61 6c 69 74 79 20 28 68 6f 62 62 73 29 0a  quality (hobbs).
36ab0 0a 32 30 30 30 2d 30 35 2d 30 39 20 28 66 65 61  .2000-05-09 (fea
36ac0 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
36ad0 29 20 65 78 74 65 6e 64 65 64 20 5b 6c 73 65 61  ) extended [lsea
36ae0 72 63 68 5d 20 74 6f 20 73 75 70 70 6f 72 74 20  rch] to support 
36af0 73 6f 72 74 65 64 0a 6c 69 73 74 20 73 65 61 72  sorted.list sear
36b00 63 68 65 73 20 61 6e 64 20 74 79 70 65 64 20 6c  ches and typed l
36b10 69 73 74 20 73 65 61 72 63 68 65 73 20 28 6d 65  ist searches (me
36b20 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 35 2d 31  lski)..2000-05-1
36b30 30 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  0 (feature enhan
36b40 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 5b 6e  cement) added [n
36b50 61 6d 65 73 70 61 63 65 20 65 78 69 73 74 73 5d  amespace exists]
36b60 20 63 6f 6d 6d 61 6e 64 0a 28 64 61 72 6c 65 79   command.(darley
36b70 29 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20 28 62  )..2000-05-18 (b
36b80 75 69 6c 64 20 65 6e 68 61 6e 63 65 6d 65 6e 74  uild enhancement
36b90 29 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20  ) added support 
36ba0 66 6f 72 20 6d 69 6e 67 77 20 63 6f 6d 70 69 6c  for mingw compil
36bb0 65 20 65 6e 76 20 61 6e 64 0a 63 72 6f 73 73 2d  e env and.cross-
36bc0 63 6f 6d 70 69 6c 69 6e 67 20 28 64 65 6a 6f 6e  compiling (dejon
36bd0 67 29 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20 28  g)..2000-05-18 (
36be0 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63 74  bug fix) correct
36bf0 65 64 20 63 6c 6f 63 6b 20 67 72 61 6d 6d 61 72  ed clock grammar
36c00 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 68 61 6e   to properly han
36c10 64 6c 65 20 74 68 65 0a 22 61 67 6f 22 20 6b 65  dle the."ago" ke
36c20 79 77 6f 72 64 20 77 68 65 6e 20 69 74 20 66 6f  yword when it fo
36c30 6c 6c 6f 77 73 20 6d 75 6c 74 69 70 6c 65 20 72  llows multiple r
36c40 65 6c 61 74 69 76 65 20 75 6e 69 74 20 73 70 65  elative unit spe
36c50 63 69 66 69 65 72 73 0a 28 6d 65 6c 73 6b 69 29  cifiers.(melski)
36c60 0a 0a 32 30 30 30 2d 30 35 2d 32 32 20 28 63 6f  ..2000-05-22 (co
36c70 6d 70 69 6c 65 20 66 69 78 29 20 74 79 70 65 20  mpile fix) type 
36c80 63 61 73 74 20 63 6c 65 61 6e 75 70 73 20 28 64  cast cleanups (d
36c90 65 6a 6f 6e 67 29 0a 0a 32 30 30 30 2d 30 35 2d  ejong)..2000-05-
36ca0 32 33 20 28 70 65 72 66 6f 72 6d 61 6e 63 65 20  23 (performance 
36cb0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64  enhancement) add
36cc0 65 64 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64  ed byte-compiled
36cd0 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20  .implementation 
36ce0 6f 66 20 5b 72 65 74 75 72 6e 5d 20 63 6f 6d 6d  of [return] comm
36cf0 61 6e 64 20 61 6e 64 20 5b 73 74 72 69 6e 67 5d  and and [string]
36d00 20 63 6f 6d 6d 61 6e 64 20 28 6d 65 6c 73 6b 69   command (melski
36d10 29 0a 0a 32 30 30 30 2d 30 35 2d 32 36 20 28 70  )..2000-05-26 (p
36d20 65 72 66 6f 72 6d 61 6e 63 65 20 65 6e 68 61 6e  erformance enhan
36d30 63 65 6d 65 6e 74 29 20 65 78 74 65 6e 64 65 64  cement) extended
36d40 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 20 5b   byte-compiled [
36d50 73 74 72 69 6e 67 5d 0a 63 6f 6d 6d 61 6e 64 20  string].command 
36d60 77 69 74 68 20 73 75 70 70 6f 72 74 20 66 6f 72  with support for
36d70 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65   [string compare
36d80 2f 69 6e 64 65 78 2f 6d 61 74 63 68 5d 20 28 68  /index/match] (h
36d90 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 35 2d 32  obbs)..2000-05-2
36da0 37 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  7 (feature enhan
36db0 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 61 62  cement) added ab
36dc0 69 6c 69 74 79 20 74 6f 20 73 65 74 20 5b 69 6e  ility to set [in
36dd0 66 6f 20 73 63 72 69 70 74 5d 0a 72 65 74 75 72  fo script].retur
36de0 6e 20 76 61 6c 75 65 20 28 5b 69 6e 66 6f 20 73  n value ([info s
36df0 63 72 69 70 74 20 3f 6e 65 77 46 69 6c 65 4e 61  cript ?newFileNa
36e00 6d 65 3f 5d 29 20 28 77 65 6c 63 68 29 0a 0a 32  me?]) (welch)..2
36e10 30 30 30 2d 30 35 2d 33 31 20 28 66 65 61 74 75  000-05-31 (featu
36e20 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  re enhancement) 
36e30 61 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f  added support fo
36e40 72 20 72 65 67 65 78 70 20 61 6e 64 20 65 78 61  r regexp and exa
36e50 63 74 0a 70 61 74 74 65 72 6e 20 6d 61 74 63 68  ct.pattern match
36e60 69 6e 67 20 66 6f 72 20 5b 61 72 72 61 79 20 6e  ing for [array n
36e70 61 6d 65 73 5d 20 28 67 61 7a 65 74 74 61 29 0a  ames] (gazetta).
36e80 0a 32 30 30 30 2d 30 35 2d 33 31 20 28 66 65 61  .2000-05-31 (fea
36e90 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ture enhancement
36ea0 29 20 61 64 64 65 64 20 2d 6e 6f 63 6f 6d 70 6c  ) added -nocompl
36eb0 61 69 6e 20 61 6e 64 20 2d 2d 20 66 6c 61 67 73  ain and -- flags
36ec0 20 74 6f 0a 5b 75 6e 73 65 74 5d 20 74 6f 20 61   to.[unset] to a
36ed0 6c 6c 6f 77 20 66 6f 72 20 73 69 6c 65 6e 74 20  llow for silent 
36ee0 75 6e 73 65 74 20 6f 70 65 72 61 74 69 6f 6e 20  unset operation 
36ef0 28 68 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65 6c  (hobbs)..--- Rel
36f00 65 61 73 65 64 20 38 2e 34 61 31 2c 20 4a 75 6e  eased 8.4a1, Jun
36f10 65 20 36 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65  e 6, 2000 --- Se
36f20 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20  e ChangeLog for 
36f30 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30  details ---..200
36f40 30 2d 30 35 2d 32 39 20 28 62 75 67 20 66 69 78  0-05-29 (bug fix
36f50 29 20 63 6f 72 72 65 63 74 65 64 20 72 65 73 6f  ) corrected reso
36f60 75 72 63 65 20 63 6c 65 61 6e 75 70 20 69 6e 20  urce cleanup in 
36f70 68 74 74 70 20 65 72 72 6f 72 20 63 61 73 65 73  http error cases
36f80 2e 0a 49 6d 70 72 6f 76 65 64 20 68 61 6e 64 6c  ..Improved handl
36f90 69 6e 67 20 6f 66 20 65 72 72 6f 72 20 63 61 73  ing of error cas
36fa0 65 73 20 69 6e 20 68 74 74 70 2e 20 28 74 61 6d  es in http. (tam
36fb0 68 61 6e 6b 61 72 29 0a 0a 32 30 30 30 2d 30 37  hankar)..2000-07
36fc0 20 28 66 65 61 74 75 72 65 20 72 65 77 72 69 74   (feature rewrit
36fd0 65 29 20 63 6f 6d 70 6c 65 74 65 20 72 65 77 72  e) complete rewr
36fe0 69 74 65 20 6f 66 20 74 68 65 20 54 63 6c 20 49  ite of the Tcl I
36ff0 4f 20 63 68 61 6e 6e 65 6c 20 73 75 62 73 79 73  O channel subsys
37000 74 65 6d 0a 74 6f 20 63 6f 72 72 65 63 74 20 70  tem.to correct p
37010 72 6f 62 6c 65 6d 73 20 28 68 61 6e 67 73 2c 20  roblems (hangs, 
37020 63 6f 72 65 20 64 75 6d 70 73 29 20 77 69 74 68  core dumps) with
37030 20 74 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61   the initial sta
37040 63 6b 65 64 20 63 68 61 6e 6e 65 6c 0a 69 6d 70  cked channel.imp
37050 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 20 20 54 68  lementation.  Th
37060 65 20 6e 65 77 20 73 79 73 74 65 6d 20 68 61 73  e new system has
37070 20 6d 61 6e 79 20 6d 6f 72 65 20 74 65 73 74 73   many more tests
37080 20 66 6f 72 20 72 6f 62 75 73 74 6e 65 73 73 20   for robustness 
37090 61 6e 64 0a 73 63 61 6c 61 62 69 6c 69 74 79 2e  and.scalability.
370a0 20 20 54 68 65 72 65 20 61 72 65 20 6e 65 77 20    There are new 
370b0 43 20 41 50 49 73 20 28 73 65 65 20 54 63 6c 5f  C APIs (see Tcl_
370c0 43 72 65 61 74 65 43 68 61 6e 6e 65 6c 29 2c 20  CreateChannel), 
370d0 62 75 74 20 6f 6e 6c 79 0a 73 74 61 63 6b 65 64  but only.stacked
370e0 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73   channel drivers
370f0 20 61 72 65 20 61 66 66 65 63 74 65 64 20 28 69   are affected (i
37100 65 3a 20 54 4c 53 2c 20 54 72 66 2c 20 69 6f 67  e: TLS, Trf, iog
37110 74 29 2e 20 20 54 68 65 20 69 6f 67 74 0a 65 78  t).  The iogt.ex
37120 74 65 6e 73 69 6f 6e 20 68 61 73 20 62 65 65 6e  tension has been
37130 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 63 6f   added to the co
37140 72 65 20 74 65 73 74 20 63 6f 64 65 20 74 6f 20  re test code to 
37150 74 65 73 74 20 74 68 65 20 73 79 73 74 65 6d 2e  test the system.
37160 0a 28 68 6f 62 62 73 2c 20 6b 75 70 72 69 65 73  .(hobbs, kupries
37170 29 0a 09 2a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  )..**** POTENTIA
37180 4c 20 49 4e 43 4f 4d 50 41 54 41 42 49 4c 49 54  L INCOMPATABILIT
37190 59 20 2a 2a 2a 2a 0a 0a 32 30 30 30 2d 30 37 20  Y ****..2000-07 
371a0 28 62 75 69 6c 64 20 69 6d 70 72 6f 76 65 6d 65  (build improveme
371b0 6e 74 73 29 20 63 6c 65 61 6e 75 70 20 6f 66 20  nts) cleanup of 
371c0 74 68 65 20 6d 61 6b 65 66 69 6c 65 73 20 61 6e  the makefiles an
371d0 64 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69  d configure scri
371e0 70 74 73 0a 74 6f 20 63 6f 72 72 65 63 74 20 73  pts.to correct s
371f0 75 70 70 6f 72 74 20 66 6f 72 20 62 75 69 6c 64  upport for build
37200 69 6e 67 20 75 6e 64 65 72 20 67 63 63 20 66 6f  ing under gcc fo
37210 72 20 57 69 6e 64 6f 77 73 2e 20 28 64 65 6a 6f  r Windows. (dejo
37220 6e 67 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20  ng)..2000-08-07 
37230 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
37240 74 65 64 20 73 69 7a 65 6f 66 20 65 72 72 6f 72  ted sizeof error
37250 20 69 6e 20 54 63 6c 5f 47 65 74 49 6e 64 65 78   in Tcl_GetIndex
37260 46 72 6f 6d 4f 62 6a 53 74 72 75 63 74 2e 0a 28  FromObjStruct..(
37270 70 65 72 6b 69 6e 73 29 0a 0a 32 30 30 30 2d 30  perkins)..2000-0
37280 38 2d 30 37 20 28 62 75 67 20 66 69 78 29 20 63  8-07 (bug fix) c
37290 6f 72 72 65 63 74 20 6f 66 66 2d 62 79 2d 6f 6e  orrect off-by-on
372a0 65 20 65 72 72 6f 72 20 69 6e 20 48 69 73 74 49  e error in HistI
372b0 6e 64 65 78 2c 20 77 68 69 63 68 20 77 61 73 0a  ndex, which was.
372c0 63 61 75 73 69 6e 67 20 5b 68 69 73 74 6f 72 79  causing [history
372d0 20 72 65 64 6f 5d 20 74 6f 20 73 74 61 72 74 20   redo] to start 
372e0 69 74 73 20 73 65 61 72 63 68 20 61 74 20 74 68  its search at th
372f0 65 20 77 72 6f 6e 67 20 65 76 65 6e 74 20 69 6e  e wrong event in
37300 64 65 78 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a 32  dex. (melski)..2
37310 30 30 30 2d 30 38 2d 30 37 20 28 62 75 67 20 66  000-08-07 (bug f
37320 69 78 29 20 63 6f 72 72 65 63 74 65 64 20 73 65  ix) corrected se
37330 74 6c 6f 63 61 6c 65 20 63 61 6c 6c 73 20 66 6f  tlocale calls fo
37340 72 20 58 49 4d 20 73 75 70 70 6f 72 74 20 61 6e  r XIM support an
37350 64 20 6c 6f 63 61 6c 65 0a 69 73 73 75 65 73 20  d locale.issues 
37360 69 6e 20 73 74 61 72 74 75 70 2e 20 28 74 61 6b  in startup. (tak
37370 61 68 61 73 68 69 29 0a 0a 32 30 30 30 2d 30 38  ahashi)..2000-08
37380 2d 30 37 20 28 62 75 67 20 66 69 78 29 20 63 6f  -07 (bug fix) co
37390 72 72 65 63 74 20 63 6f 64 65 20 74 6f 20 68 61  rrect code to ha
373a0 6e 64 6c 65 20 6c 6f 63 61 6c 65 20 73 70 65 63  ndle locale spec
373b0 69 66 69 63 20 72 65 74 75 72 6e 20 76 61 6c 75  ific return valu
373c0 65 73 0a 66 72 6f 6d 20 73 74 72 66 74 69 6d 65  es.from strftime
373d0 2c 20 69 66 20 61 6e 79 2e 20 28 77 61 67 6e 65  , if any. (wagne
373e0 72 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28  r)..2000-08-07 (
373f0 62 75 67 20 66 69 78 29 20 74 77 65 61 6b 65 64  bug fix) tweaked
37400 20 67 72 61 6d 6d 61 72 20 74 6f 20 70 72 6f 70   grammar to prop
37410 65 72 6c 79 20 68 61 6e 64 6c 65 20 74 68 65 20  erly handle the 
37420 22 61 67 6f 22 20 6b 65 79 77 6f 72 64 0a 77 68  "ago" keyword.wh
37430 65 6e 20 69 74 20 66 6f 6c 6c 6f 77 73 20 6d 75  en it follows mu
37440 6c 74 69 70 6c 65 20 72 65 6c 61 74 69 76 65 20  ltiple relative 
37450 75 6e 69 74 20 73 70 65 63 69 66 69 65 72 73 2c  unit specifiers,
37460 20 61 73 20 69 6e 0a 22 32 20 64 61 79 73 20 32   as in."2 days 2
37470 20 68 6f 75 72 73 20 61 67 6f 22 2e 20 28 6d 65   hours ago". (me
37480 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 38 2d 30  lski)..2000-08-0
37490 37 20 28 64 6f 63 20 66 69 78 65 73 29 20 6e 75  7 (doc fixes) nu
374a0 6d 65 72 6f 75 73 20 64 6f 63 20 66 69 78 65 73  merous doc fixes
374b0 20 74 6f 20 63 6f 72 72 65 63 74 20 53 45 45 20   to correct SEE 
374c0 41 4c 53 4f 20 61 6e 64 20 4e 41 4d 45 0a 73 65  ALSO and NAME.se
374d0 63 74 69 6f 6e 73 2e 20 28 65 6e 67 6c 69 73 68  ctions. (english
374e0 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28 62  )..2000-08-07 (b
374f0 75 67 20 66 69 78 29 20 6e 65 77 20 6d 61 6e 20  ug fix) new man 
37500 70 61 67 65 73 20 6d 65 6d 6f 72 79 2e 6e 2c 20  pages memory.n, 
37510 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 2e 33 2c  TCL_MEM_DEBUG.3,
37520 20 49 6e 69 74 2e 33 20 61 6e 64 0a 44 75 6d 70   Init.3 and.Dump
37530 41 63 74 69 76 65 4d 65 6d 6f 72 79 2e 33 2e 20  ActiveMemory.3. 
37540 28 6d 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52 65  (melski)..--- Re
37550 6c 65 61 73 65 64 20 38 2e 33 2e 32 2c 20 41 75  leased 8.3.2, Au
37560 67 75 73 74 20 39 2c 20 32 30 30 30 20 2d 2d 2d  gust 9, 2000 ---
37570 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66   See ChangeLog f
37580 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a  or details ---..
37590 32 30 30 30 2d 30 36 20 74 68 72 75 20 32 30 30  2000-06 thru 200
375a0 30 2d 31 31 20 28 62 75 69 6c 64 20 69 6d 70 72  0-11 (build impr
375b0 6f 76 65 6d 65 6e 74 73 29 20 41 64 64 65 64 20  ovements) Added 
375c0 73 75 70 70 6f 72 74 20 66 6f 72 20 6d 69 6e 67  support for ming
375d0 77 20 28 67 63 63 20 6f 6e 0a 57 69 6e 64 6f 77  w (gcc on.Window
375e0 73 29 2c 20 41 49 58 2d 35 20 61 6e 64 20 57 69  s), AIX-5 and Wi
375f0 6e 36 34 20 62 75 69 6c 64 73 20 28 64 65 6a 6f  n64 builds (dejo
37600 6e 67 2c 20 68 6f 62 62 73 29 0a 0a 32 30 30 30  ng, hobbs)..2000
37610 2d 30 36 2d 32 33 20 28 66 65 61 74 75 72 65 20  -06-23 (feature 
37620 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 62 69  enhancement) abi
37630 6c 69 74 79 20 74 6f 20 75 73 65 20 54 63 6c 5f  lity to use Tcl_
37640 4f 62 6a 20 2a 73 20 61 73 20 68 61 73 68 20 6b  Obj *s as hash k
37650 65 79 73 20 28 64 75 66 66 69 6e 29 0a 0a 32 30  eys (duffin)..20
37660 30 30 2d 30 36 2d 32 39 20 28 6e 65 77 20 66 65  00-06-29 (new fe
37670 61 74 75 72 65 73 29 20 61 64 64 65 64 20 5b 6d  atures) added [m
37680 63 6d 61 78 5d 20 61 6e 64 20 5b 6d 63 6d 73 65  cmax] and [mcmse
37690 74 5d 20 61 6e 64 20 65 78 74 65 6e 64 65 64 20  t] and extended 
376a0 5b 75 6e 6b 6e 6f 77 6e 5d 20 69 6e 0a 6d 73 67  [unknown] in.msg
376b0 63 61 74 20 70 61 63 6b 61 67 65 20 28 64 75 70  cat package (dup
376c0 65 72 76 61 6c 2c 20 6b 72 6f 6e 65 2c 20 6e 65  erval, krone, ne
376d0 6c 73 6f 6e 29 0a 3d 3e 20 6d 73 67 63 61 74 20  lson).=> msgcat 
376e0 31 2e 31 0a 0a 32 30 30 30 2d 30 38 20 74 68 72  1.1..2000-08 thr
376f0 75 20 32 30 30 30 2d 30 39 20 61 64 64 65 64 20  u 2000-09 added 
37700 74 63 6c 50 6c 61 74 44 65 63 6c 73 2e 68 20 74  tclPlatDecls.h t
37710 6f 20 64 65 66 61 75 6c 74 20 69 6e 73 74 61 6c  o default instal
37720 6c 20 28 6d 65 6c 73 6b 69 2c 20 68 6f 62 62 73  l (melski, hobbs
37730 29 0a 0a 32 30 30 30 2d 30 38 2d 32 34 20 28 6e  )..2000-08-24 (n
37740 65 77 20 66 65 61 74 75 72 65 29 20 45 6e 68 61  ew feature) Enha
37750 6e 63 65 64 20 74 72 61 63 65 20 73 79 6e 74 61  nced trace synta
37760 78 20 74 6f 20 61 64 64 3a 0a 09 74 72 61 63 65  x to add:..trace
37770 20 7b 61 64 64 7c 72 65 6d 6f 76 65 7c 6c 69 73   {add|remove|lis
37780 74 7d 20 7b 76 61 72 69 61 62 6c 65 7c 63 6f 6d  t} {variable|com
37790 6d 61 6e 64 7d 20 6e 61 6d 65 20 6f 70 73 20 63  mand} name ops c
377a0 6f 6d 6d 61 6e 64 0a 28 64 61 72 6c 65 79 2c 20  ommand.(darley, 
377b0 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39  melski)..2000-09
377c0 2d 30 36 20 28 63 72 6f 73 73 2d 70 6c 61 74 66  -06 (cross-platf
377d0 6f 72 6d 20 66 65 61 74 75 72 65 29 20 53 65 74  orm feature) Set
377e0 20 5e 5a 20 28 5c 33 32 29 20 61 73 20 64 65 66   ^Z (\32) as def
377f0 61 75 6c 74 20 45 4f 46 20 63 68 61 72 2e 20 28  ault EOF char. (
37800 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 39 2d  hobbs)..2000-09-
37810 30 37 20 70 61 72 74 69 61 6c 20 66 69 78 20 66  07 partial fix f
37820 6f 72 20 62 75 67 20 32 34 36 30 20 74 6f 20 70  or bug 2460 to p
37830 72 65 76 65 6e 74 20 65 78 65 63 20 6d 65 6d 20  revent exec mem 
37840 6c 65 61 6b 20 6f 6e 20 57 69 6e 64 6f 77 73 20  leak on Windows 
37850 66 6f 72 20 74 68 65 0a 63 6f 6d 6d 6f 6e 20 63  for the.common c
37860 61 73 65 20 28 67 72 61 76 65 72 65 61 75 78 29  ase (gravereaux)
37870 0a 0a 32 30 30 30 2d 30 39 2d 31 34 20 49 6d 70  ..2000-09-14 Imp
37880 72 6f 76 65 64 20 73 74 72 69 6e 67 20 61 6c 6c  roved string all
37890 6f 63 61 74 69 6f 6e 20 67 72 6f 77 74 68 20 66  ocation growth f
378a0 6f 72 20 6c 61 72 67 65 20 73 74 72 69 6e 67 73  or large strings
378b0 20 28 68 69 6e 74 65 72 6d 61 79 65 72 2c 0a 6d   (hintermayer,.m
378c0 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d  elski)..2000-09-
378d0 31 34 20 4e 65 77 20 6e 6f 6e 2d 70 61 6e 69 63  14 New non-panic
378e0 27 69 6e 67 20 6d 65 6d 20 61 6c 6c 6f 63 61 74  'ing mem allocat
378f0 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 54 63  ion functions Tc
37900 6c 5f 41 74 74 65 6d 70 74 41 6c 6c 6f 63 2c 0a  l_AttemptAlloc,.
37910 54 63 6c 5f 41 74 74 65 6d 70 74 52 65 61 6c 6c  Tcl_AttemptReall
37920 6f 63 2c 20 54 63 6c 5f 41 74 74 65 6d 70 74 53  oc, Tcl_AttemptS
37930 65 74 4f 62 6a 4c 65 6e 67 74 68 20 28 6d 65 6c  etObjLength (mel
37940 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d 32 30  ski)..2000-09-20
37950 20 28 6e 65 77 20 66 65 61 74 75 72 65 73 29 20   (new features) 
37960 63 6f 6d 70 6c 65 74 65 6c 79 20 6e 65 77 2c 20  completely new, 
37970 65 6e 68 61 6e 63 65 64 20 73 79 6e 74 61 78 20  enhanced syntax 
37980 69 6e 20 74 63 6c 74 65 73 74 20 70 61 63 6b 61  in tcltest packa
37990 67 65 2e 0a 42 61 63 6b 77 61 72 64 73 20 63 6f  ge..Backwards co
379a0 6d 70 61 74 61 62 6c 65 20 77 69 74 68 20 74 63  mpatable with tc
379b0 6c 74 65 73 74 20 76 31 2e 20 28 68 6f 6d 29 0a  ltest v1. (hom).
379c0 3d 3e 20 74 63 6c 74 65 73 74 20 32 2e 30 0a 0a  => tcltest 2.0..
379d0 32 30 30 30 2d 30 39 2d 32 37 20 28 62 75 67 20  2000-09-27 (bug 
379e0 66 69 78 29 20 66 69 78 65 64 20 61 20 62 75 67  fix) fixed a bug
379f0 20 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20 61   introduced by a
37a00 20 70 61 72 74 69 61 6c 20 66 69 78 20 69 6e 20   partial fix in 
37a10 38 2e 33 2e 32 20 74 68 61 74 0a 64 69 64 6e 27  8.3.2 that.didn'
37a20 74 20 73 65 74 20 6e 6f 6e 42 6c 6f 63 6b 69 6e  t set nonBlockin
37a30 67 20 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e  g correctly when
37a40 20 72 65 73 65 74 74 69 6e 67 20 74 68 65 20 66   resetting the f
37a50 6c 61 67 73 20 66 6f 72 20 74 68 65 20 77 72 69  lags for the wri
37a60 74 65 0a 73 69 64 65 20 28 6d 65 6d 20 6c 65 61  te.side (mem lea
37a70 6b 29 20 43 6f 72 72 65 63 74 20 6d 65 6d 20 6c  k) Correct mem l
37a80 65 61 6b 20 69 6e 20 63 68 61 6e 6e 65 6c 73 20  eak in channels 
37a90 77 68 65 6e 20 73 74 61 74 65 50 74 72 20 77 61  when statePtr wa
37aa0 73 20 72 65 6c 65 61 73 65 64 0a 28 68 6f 62 62  s released.(hobb
37ab0 73 29 0a 0a 32 30 30 30 2d 30 39 2d 32 39 20 28  s)..2000-09-29 (
37ac0 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63 74  bug fix) correct
37ad0 65 64 20 72 65 70 6f 72 74 69 6e 67 20 6f 66 20  ed reporting of 
37ae0 73 70 61 63 65 20 70 61 72 69 74 79 20 6f 6e 20  space parity on 
37af0 57 69 6e 64 6f 77 73 20 28 45 61 73 6f 6e 29 0a  Windows (Eason).
37b00 0a 32 30 30 30 2d 31 30 2d 30 36 20 28 62 75 67  .2000-10-06 (bug
37b10 20 66 69 78 29 20 63 6f 72 72 65 63 74 65 64 20   fix) corrected 
37b20 5b 66 69 6c 65 20 63 68 61 6e 6e 65 6c 73 5d 20  [file channels] 
37b30 74 6f 20 6f 6e 6c 79 20 72 65 74 75 72 6e 20 63  to only return c
37b40 68 61 6e 6e 65 6c 73 20 69 6e 0a 74 68 65 20 63  hannels in.the c
37b50 75 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65 74  urrent interpret
37b60 65 72 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30  er (hobbs)..2000
37b70 2d 31 30 2d 32 30 20 28 70 65 72 66 6f 72 6d 61  -10-20 (performa
37b80 6e 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  nce enhancement)
37b90 20 63 61 6c 6c 20 73 74 61 74 20 6f 6e 6c 79 20   call stat only 
37ba0 77 68 65 6e 20 6e 65 63 65 73 73 61 72 79 20 69  when necessary i
37bb0 6e 20 27 67 6c 6f 62 27 20 74 6f 0a 73 70 65 65  n 'glob' to.spee
37bc0 64 20 75 70 20 63 6f 6d 6d 61 6e 64 20 73 69 67  d up command sig
37bd0 6e 69 66 69 63 61 6e 74 6c 79 20 69 6e 20 62 61  nificantly in ba
37be0 73 65 20 63 61 73 65 73 20 28 68 6f 62 62 73 29  se cases (hobbs)
37bf0 0a 0a 32 30 30 30 2d 31 30 2d 32 37 20 46 69 78  ..2000-10-27 Fix
37c00 65 64 20 6d 65 6d 20 6c 65 61 6b 20 69 6e 20 54  ed mem leak in T
37c10 63 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e 65 6c  cl_CreateChannel
37c20 2e 20 52 65 2d 70 75 72 69 66 69 65 64 20 63 6f  . Re-purified co
37c30 72 65 20 76 69 61 20 74 65 73 74 0a 73 75 69 74  re via test.suit
37c40 65 73 2e 20 20 28 68 6f 62 62 73 29 0a 0a 32 30  es.  (hobbs)..20
37c50 30 30 2d 31 30 2d 33 30 20 28 6e 65 77 20 66 65  00-10-30 (new fe
37c60 61 74 75 72 65 29 20 61 64 64 20 22 6a 61 5f 4a  ature) add "ja_J
37c70 50 2e 65 75 63 4a 50 22 20 6d 61 70 20 74 6f 20  P.eucJP" map to 
37c80 22 65 75 63 2d 6a 70 22 20 65 6e 63 6f 64 69 6e  "euc-jp" encodin
37c90 67 20 28 74 61 6b 61 68 61 73 68 69 29 0a 0a 32  g (takahashi)..2
37ca0 30 30 30 2d 31 31 2d 30 31 20 28 6d 65 6d 20 6c  000-11-01 (mem l
37cb0 65 61 6b 29 20 43 6f 72 72 65 63 74 65 64 20 65  eak) Corrected e
37cc0 78 63 65 73 73 69 76 65 20 6d 65 6d 20 75 73 65  xcessive mem use
37cd0 20 6f 66 20 69 6e 66 6f 20 65 78 69 73 74 73 20   of info exists 
37ce0 6f 6e 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e  on a.non-existen
37cf0 74 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 20  t array element 
37d00 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 31 31  (hobbs)..2000-11
37d10 2d 30 32 20 28 62 75 67 20 66 69 78 29 20 43 6f  -02 (bug fix) Co
37d20 72 72 65 63 74 65 64 20 73 68 61 72 69 6e 67 20  rrected sharing 
37d30 6f 66 20 74 63 6c 4c 69 62 72 61 72 79 50 61 74  of tclLibraryPat
37d40 68 20 69 6e 20 74 68 72 65 61 64 65 64 0a 65 6e  h in threaded.en
37d50 76 69 72 6f 6e 6d 65 6e 74 20 28 67 72 61 76 65  vironment (grave
37d60 72 65 61 75 78 29 0a 0a 32 30 30 30 2d 31 31 2d  reaux)..2000-11-
37d70 30 33 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  03 (new feature)
37d80 20 54 63 6c 5f 53 65 74 4d 61 69 6e 4c 6f 6f 70   Tcl_SetMainLoop
37d90 20 65 6e 61 62 6c 65 73 20 64 65 66 69 6e 69 6e   enables definin
37da0 67 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 20  g an event loop 
37db0 66 6f 72 0a 74 63 6c 73 68 2e 20 20 54 68 69 73  for.tclsh.  This
37dc0 20 65 6e 61 62 6c 65 73 20 54 6b 20 61 73 20 61   enables Tk as a
37dd0 20 74 72 75 6c 79 20 6c 6f 61 64 61 62 6c 65 20   truly loadable 
37de0 70 61 63 6b 61 67 65 2e 20 28 68 6f 62 62 73 29  package. (hobbs)
37df0 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38  ..--- Released 8
37e00 2e 34 61 32 2c 20 4e 6f 76 65 6d 62 65 72 20 33  .4a2, November 3
37e10 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65 65 20 43  , 2000 --- See C
37e20 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65 74  hangeLog for det
37e30 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30 2d 30  ails ---..2000-0
37e40 39 2d 32 37 20 28 62 75 67 20 66 69 78 29 20 66  9-27 (bug fix) f
37e50 69 78 65 64 20 61 20 62 75 67 20 69 6e 74 72 6f  ixed a bug intro
37e60 64 75 63 65 64 20 62 79 20 61 20 70 61 72 74 69  duced by a parti
37e70 61 6c 20 66 69 78 20 69 6e 20 38 2e 33 2e 32 20  al fix in 8.3.2 
37e80 74 68 61 74 0a 64 69 64 6e 27 74 20 73 65 74 20  that.didn't set 
37e90 6e 6f 6e 42 6c 6f 63 6b 69 6e 67 20 63 6f 72 72  nonBlocking corr
37ea0 65 63 74 6c 79 20 77 68 65 6e 20 72 65 73 65 74  ectly when reset
37eb0 74 69 6e 67 20 74 68 65 20 66 6c 61 67 73 20 66  ting the flags f
37ec0 6f 72 20 74 68 65 20 77 72 69 74 65 0a 73 69 64  or the write.sid
37ed0 65 20 28 6d 65 6d 20 6c 65 61 6b 29 20 43 6f 72  e (mem leak) Cor
37ee0 72 65 63 74 20 6d 65 6d 20 6c 65 61 6b 20 69 6e  rect mem leak in
37ef0 20 63 68 61 6e 6e 65 6c 73 20 77 68 65 6e 20 73   channels when s
37f00 74 61 74 65 50 74 72 20 77 61 73 20 72 65 6c 65  tatePtr was rele
37f10 61 73 65 64 0a 28 68 6f 62 62 73 29 0a 0a 32 30  ased.(hobbs)..20
37f20 30 30 2d 30 39 2d 32 39 20 28 62 75 67 20 66 69  00-09-29 (bug fi
37f30 78 29 20 63 6f 72 72 65 63 74 65 64 20 72 65 70  x) corrected rep
37f40 6f 72 74 69 6e 67 20 6f 66 20 73 70 61 63 65 20  orting of space 
37f50 70 61 72 69 74 79 20 6f 6e 20 57 69 6e 64 6f 77  parity on Window
37f60 73 20 28 45 61 73 6f 6e 29 0a 0a 32 30 30 30 2d  s (Eason)..2000-
37f70 31 30 2d 30 36 20 28 62 75 67 20 66 69 78 29 20  10-06 (bug fix) 
37f80 63 6f 72 72 65 63 74 65 64 20 5b 66 69 6c 65 20  corrected [file 
37f90 63 68 61 6e 6e 65 6c 73 5d 20 74 6f 20 6f 6e 6c  channels] to onl
37fa0 79 20 72 65 74 75 72 6e 20 63 68 61 6e 6e 65 6c  y return channel
37fb0 73 20 69 6e 0a 74 68 65 20 63 75 72 72 65 6e 74  s in.the current
37fc0 20 69 6e 74 65 72 70 72 65 74 65 72 20 28 68 6f   interpreter (ho
37fd0 62 62 73 29 0a 0a 32 30 30 30 2d 31 30 2d 32 30  bbs)..2000-10-20
37fe0 20 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 65 6e   (performance en
37ff0 68 61 6e 63 65 6d 65 6e 74 29 20 63 61 6c 6c 20  hancement) call 
38000 73 74 61 74 20 6f 6e 6c 79 20 77 68 65 6e 20 6e  stat only when n
38010 65 63 65 73 73 61 72 79 20 69 6e 20 27 67 6c 6f  ecessary in 'glo
38020 62 27 20 74 6f 0a 73 70 65 65 64 20 75 70 20 63  b' to.speed up c
38030 6f 6d 6d 61 6e 64 20 73 69 67 6e 69 66 69 63 61  ommand significa
38040 6e 74 6c 79 20 69 6e 20 62 61 73 65 20 63 61 73  ntly in base cas
38050 65 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30  es (hobbs)..2000
38060 2d 31 31 2d 30 31 20 28 6d 65 6d 20 6c 65 61 6b  -11-01 (mem leak
38070 29 20 43 6f 72 72 65 63 74 65 64 20 65 78 63 65  ) Corrected exce
38080 73 73 69 76 65 20 6d 65 6d 20 75 73 65 20 6f 66  ssive mem use of
38090 20 69 6e 66 6f 20 65 78 69 73 74 73 20 6f 6e 20   info exists on 
380a0 61 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20 61  a.non-existent a
380b0 72 72 61 79 20 65 6c 65 6d 65 6e 74 20 28 68 6f  rray element (ho
380c0 62 62 73 29 0a 0a 32 30 30 30 2d 31 31 2d 30 32  bbs)..2000-11-02
380d0 20 28 62 75 67 20 66 69 78 29 20 43 6f 72 72 65   (bug fix) Corre
380e0 63 74 65 64 20 73 68 61 72 69 6e 67 20 6f 66 20  cted sharing of 
380f0 74 63 6c 4c 69 62 72 61 72 79 50 61 74 68 20 69  tclLibraryPath i
38100 6e 20 74 68 72 65 61 64 65 64 0a 65 6e 76 69 72  n threaded.envir
38110 6f 6e 6d 65 6e 74 20 28 67 72 61 76 65 72 65 61  onment (graverea
38120 75 78 29 0a 0a 32 30 30 30 2d 31 31 2d 32 33 20  ux)..2000-11-23 
38130 28 6d 65 6d 20 6c 65 61 6b 29 20 66 69 78 65 64  (mem leak) fixed
38140 20 70 6f 74 65 6e 74 69 61 6c 20 6d 65 6d 6f 72   potential memor
38150 79 20 6c 65 61 6b 20 69 6e 20 65 72 72 6f 72 20  y leak in error 
38160 63 61 73 65 20 6f 66 20 6c 73 6f 72 74 0a 28 66  case of lsort.(f
38170 65 6c 6c 6f 77 73 29 0a 0a 32 30 30 30 2d 31 32  ellows)..2000-12
38180 2d 30 39 20 28 66 65 61 74 75 72 65 20 65 6e 68  -09 (feature enh
38190 61 6e 63 65 6d 65 6e 74 29 20 63 68 61 6e 67 65  ancement) change
381a0 64 20 25 6f 20 61 6e 64 20 25 78 20 74 6f 20 75  d %o and %x to u
381b0 73 65 20 73 74 72 74 6f 75 6c 20 69 6e 73 74 65  se strtoul inste
381c0 61 64 0a 6f 66 20 73 74 72 74 6f 6c 20 74 6f 20  ad.of strtol to 
381d0 63 6f 72 72 65 63 74 6c 79 20 70 72 65 73 65 72  correctly preser
381e0 76 65 20 73 63 61 6e 3c 3e 66 6f 72 6d 61 74 20  ve scan<>format 
381f0 63 6f 6e 76 65 72 73 69 6f 6e 20 6f 66 20 6c 61  conversion of la
38200 72 67 65 20 69 6e 74 65 67 65 72 73 0a 28 68 6f  rge integers.(ho
38210 62 62 73 29 0a 46 69 78 65 64 20 68 61 6e 64 6c  bbs).Fixed handl
38220 69 6e 67 20 6f 66 20 7b 21 3c 62 6f 6f 6c 65 61  ing of {!<boolea
38230 6e 3e 7d 20 69 6e 20 65 78 70 72 65 73 73 69 6f  n>} in expressio
38240 6e 73 20 28 68 6f 62 62 73 2c 20 66 65 6c 6c 6f  ns (hobbs, fello
38250 77 73 29 0a 0a 32 30 30 30 2d 31 32 2d 31 34 20  ws)..2000-12-14 
38260 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
38270 6d 65 6e 74 29 20 69 6d 70 72 6f 76 65 64 20 28  ment) improved (
38280 73 29 72 61 6e 64 20 66 6f 72 20 36 34 2d 62 69  s)rand for 64-bi
38290 74 20 70 6c 61 74 66 6f 72 6d 73 0a 28 70 6f 72  t platforms.(por
382a0 74 65 72 29 0a 0a 32 30 30 31 2d 30 31 2d 30 34  ter)..2001-01-04
382b0 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65   (bug fix) corre
382c0 63 74 65 64 20 70 61 72 73 69 6e 67 20 6f 66 20  cted parsing of 
382d0 24 74 63 6c 5f 6c 69 62 50 61 74 68 20 61 74 20  $tcl_libPath at 
382e0 73 74 61 72 74 75 70 20 6f 6e 0a 57 69 6e 64 6f  startup on.Windo
382f0 77 73 20 28 70 6f 72 74 65 72 29 0a 0a 32 30 30  ws (porter)..200
38300 31 2d 30 31 2d 33 30 20 28 62 75 67 20 66 69 78  1-01-30 (bug fix
38310 29 20 46 69 78 65 64 20 70 6f 73 73 69 62 6c 65  ) Fixed possible
38320 20 68 61 6e 67 73 20 69 6e 20 66 63 6f 70 79 2e   hangs in fcopy.
38330 20 28 70 6f 72 74 65 72 29 0a 0a 32 30 30 31 2d   (porter)..2001-
38340 30 32 2d 31 35 20 28 70 65 72 66 6f 72 6d 61 6e  02-15 (performan
38350 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  ce enhancement) 
38360 69 6d 70 72 6f 76 65 64 20 65 66 66 69 63 69 65  improved efficie
38370 6e 63 79 20 6f 66 20 5b 73 74 72 69 6e 67 20 73  ncy of [string s
38380 70 6c 69 74 5d 0a 28 66 65 6c 6c 6f 77 73 29 0a  plit].(fellows).
38390 0a 32 30 30 31 2d 30 33 2d 31 33 20 28 62 75 67  .2001-03-13 (bug
383a0 20 66 69 78 29 20 43 6f 72 72 65 63 74 6c 79 20   fix) Correctly 
383b0 70 6f 73 73 69 62 6c 65 20 6d 65 6d 6f 72 79 20  possible memory 
383c0 63 6f 72 72 75 70 74 69 6f 6e 20 69 6e 20 73 74  corruption in st
383d0 72 69 6e 67 20 6d 61 70 20 7b 7d 0a 24 73 74 72  ring map {}.$str
383e0 20 28 66 65 6c 6c 6f 77 73 29 0a 0a 32 30 30 31   (fellows)..2001
383f0 2d 30 33 2d 32 39 20 28 62 75 67 20 66 69 78 29  -03-29 (bug fix)
38400 20 70 72 65 76 65 6e 74 20 70 6f 74 65 6e 74 69   prevent potenti
38410 61 6c 20 72 61 63 65 20 63 6f 6e 64 69 74 69 6f  al race conditio
38420 6e 20 61 6e 64 20 73 65 63 75 72 69 74 79 20 6c  n and security l
38430 65 61 6b 20 69 6e 0a 74 6d 70 20 66 69 6c 65 6e  eak in.tmp filen
38440 61 6d 65 20 63 72 65 61 74 69 6f 6e 20 6f 6e 20  ame crea