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 fa80367955196953af15fce09b1f0464a9948972:


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 31 2e 20 4e 6f 20 6d 6f 72 65 20  cl:..1. No more 
0030: 5b 63 6f 6d 6d 61 6e 64 31 5d 20 5b 63 6f 6d 6d  [command1] [comm
0040: 61 6e 64 32 5d 20 63 6f 6e 73 74 72 75 63 74 20  and2] construct 
0050: 66 6f 72 20 67 72 6f 75 70 69 6e 67 20 6d 75 6c  for grouping mul
0060: 74 69 70 6c 65 0a 63 6f 6d 6d 61 6e 64 73 20 6f  tiple.commands o
0070: 6e 20 61 20 73 69 6e 67 6c 65 20 63 6f 6d 6d 61  n a single comma
0080: 6e 64 20 6c 69 6e 65 2e 0a 0a 32 2e 20 53 65 6d  nd line...2. Sem
0090: 69 2d 63 6f 6c 6f 6e 20 6e 6f 77 20 61 76 61 69  i-colon now avai
00a0: 6c 61 62 6c 65 20 66 6f 72 20 67 72 6f 75 70 69  lable for groupi
00b0: 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 6f 6e 20 61  ng commands on a
00c0: 20 6c 69 6e 65 2e 0a 0a 33 2e 20 46 6f 72 20 61   line...3. For a
00d0: 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73 70 61 6e   command to span
00e0: 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e 65 73 2c   multiple lines,
00f0: 20 6d 75 73 74 20 6e 6f 77 20 75 73 65 20 62 61   must now use ba
0100: 63 6b 73 6c 61 73 68 2d 72 65 74 75 72 6e 0a 61  ckslash-return.a
0110: 74 20 74 68 65 20 65 6e 64 20 6f 66 20 65 61 63  t the end of eac
0120: 68 20 6c 69 6e 65 20 62 75 74 20 74 68 65 20 6c  h line but the l
0130: 61 73 74 2e 0a 0a 34 2e 20 22 56 61 72 22 20 63  ast...4. "Var" c
0140: 6f 6d 6d 61 6e 64 20 68 61 73 20 62 65 65 6e 20  ommand has been 
0150: 63 68 61 6e 67 65 64 20 74 6f 20 22 73 65 74 22  changed to "set"
0160: 2e 0a 0a 35 2e 20 44 6f 75 62 6c 65 2d 71 75 6f  ...5. Double-quo
0170: 74 65 73 20 6e 6f 77 20 61 76 61 69 6c 61 62 6c  tes now availabl
0180: 65 20 61 73 20 61 6e 20 61 72 67 75 6d 65 6e 74  e as an argument
0190: 20 67 72 6f 75 70 69 6e 67 20 63 68 61 72 61 63   grouping charac
01a0: 74 65 72 2e 0a 0a 36 2e 20 22 52 65 74 75 72 6e  ter...6. "Return
01b0: 22 20 6d 61 79 20 62 65 20 75 73 65 64 20 61 74  " may be used at
01c0: 20 74 6f 70 2d 6c 65 76 65 6c 2e 0a 0a 37 2e 20   top-level...7. 
01d0: 4d 6f 72 65 20 62 61 63 6b 73 6c 61 73 68 20 73  More backslash s
01e0: 65 71 75 65 6e 63 65 73 20 61 76 61 69 6c 61 62  equences availab
01f0: 6c 65 20 6e 6f 77 2e 20 20 49 6e 20 70 61 72 74  le now.  In part
0200: 69 63 75 6c 61 72 2c 20 62 61 63 6b 73 6c 61 73  icular, backslas
0210: 68 2d 6e 65 77 6c 69 6e 65 0a 6d 61 79 20 62 65  h-newline.may be
0220: 20 75 73 65 64 20 74 6f 20 6a 6f 69 6e 20 6c 69   used to join li
0230: 6e 65 73 20 69 6e 20 63 6f 6d 6d 61 6e 64 20 66  nes in command f
0240: 69 6c 65 73 2e 0a 0a 38 2e 20 4e 65 77 20 6f 72  iles...8. New or
0250: 20 6d 6f 64 69 66 69 65 64 20 62 75 69 6c 74 2d   modified built-
0260: 69 6e 20 63 6f 6d 6d 61 6e 64 73 3a 20 20 63 61  in commands:  ca
0270: 73 65 2c 20 72 65 74 75 72 6e 2c 20 66 6f 72 2c  se, return, for,
0280: 20 67 6c 6f 62 2c 20 69 6e 66 6f 2c 0a 70 72 69   glob, info,.pri
0290: 6e 74 2c 20 72 65 74 75 72 6e 2c 20 73 65 74 2c  nt, return, set,
02a0: 20 73 6f 75 72 63 65 2c 20 73 74 72 69 6e 67 2c   source, string,
02b0: 20 75 70 6c 65 76 65 6c 2e 0a 0a 39 2e 20 41 66   uplevel...9. Af
02c0: 74 65 72 20 61 6e 20 65 72 72 6f 72 2c 20 74 68  ter an error, th
02d0: 65 20 76 61 72 69 61 62 6c 65 20 22 65 72 72 6f  e variable "erro
02e0: 72 49 6e 66 6f 22 20 69 73 20 66 69 6c 6c 65 64  rInfo" is filled
02f0: 20 77 69 74 68 20 61 20 73 74 61 63 6b 0a 74 72   with a stack.tr
0300: 61 63 65 20 73 68 6f 77 69 6e 67 20 77 68 61 74  ace showing what
0310: 20 77 61 73 20 62 65 69 6e 67 20 65 78 65 63 75   was being execu
0320: 74 65 64 20 77 68 65 6e 20 74 68 65 20 65 72 72  ted when the err
0330: 6f 72 20 6f 63 63 75 72 72 65 64 2e 0a 0a 31 30  or occurred...10
0340: 2e 20 43 6f 6d 6d 61 6e 64 20 61 62 62 72 65 76  . Command abbrev
0350: 69 61 74 69 6f 6e 73 20 61 72 65 20 61 63 63 65  iations are acce
0360: 70 74 65 64 20 77 68 65 6e 20 70 61 72 73 69 6e  pted when parsin
0370: 67 20 63 6f 6d 6d 61 6e 64 73 2c 20 62 75 74 0a  g commands, but.
0380: 61 72 65 20 6e 6f 74 20 72 65 63 6f 6d 6d 65 6e  are not recommen
0390: 64 65 64 20 65 78 63 65 70 74 20 66 6f 72 20 70  ded except for p
03a0: 75 72 65 6c 79 2d 69 6e 74 65 72 61 63 74 69 76  urely-interactiv
03b0: 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 31 31 2e  e commands...11.
03c0: 20 24 2c 20 73 65 74 2c 20 61 6e 64 20 65 78 70   $, set, and exp
03d0: 72 20 61 6c 6c 20 63 6f 6d 70 6c 61 69 6e 20 6e  r all complain n
03e0: 6f 77 20 69 66 20 61 20 6e 6f 6e 2d 65 78 69 73  ow if a non-exis
03f0: 74 65 6e 74 20 76 61 72 69 61 62 6c 65 20 69 73  tent variable is
0400: 0a 72 65 66 65 72 65 6e 63 65 64 2e 0a 0a 31 32  .referenced...12
0410: 2e 20 48 69 73 74 6f 72 79 20 66 61 63 69 6c 69  . History facili
0420: 74 69 65 73 20 65 78 69 73 74 20 6e 6f 77 2e 20  ties exist now. 
0430: 20 53 65 65 20 54 63 6c 2e 6d 61 6e 20 61 6e 64   See Tcl.man and
0440: 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45 76   Tcl_RecordAndEv
0450: 61 6c 2e 6d 61 6e 2e 0a 0a 31 33 2e 20 43 68 61  al.man...13. Cha
0460: 6e 67 65 64 20 74 6f 20 64 69 73 74 69 6e 67 75  nged to distingu
0470: 69 73 68 20 62 65 74 77 65 65 6e 20 65 6d 70 74  ish between empt
0480: 79 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20  y variables and 
0490: 74 68 6f 73 65 20 74 68 61 74 20 64 6f 6e 27 74  those that don't
04a0: 0a 65 78 69 73 74 20 61 74 20 61 6c 6c 2e 20 20  .exist at all.  
04b0: 49 6e 74 65 72 66 61 63 65 73 20 74 6f 20 54 63  Interfaces to Tc
04c0: 6c 5f 47 65 74 56 61 72 20 61 6e 64 20 54 63 6c  l_GetVar and Tcl
04d0: 5f 50 61 72 73 65 56 61 72 20 68 61 76 65 20 63  _ParseVar have c
04e0: 68 61 6e 67 65 64 0a 28 4e 55 4c 4c 20 72 65 74  hanged.(NULL ret
04f0: 75 72 6e 20 76 61 6c 75 65 20 69 73 20 6e 6f 77  urn value is now
0500: 20 70 6f 73 73 69 62 6c 65 29 2e 20 20 2a 2a 2a   possible).  ***
0510: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
0520: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
0530: 31 34 2e 20 43 68 61 6e 67 65 64 20 6d 65 61 6e  14. Changed mean
0540: 69 6e 67 20 6f 66 20 22 6c 65 76 65 6c 22 20 61  ing of "level" a
0550: 72 67 75 6d 65 6e 74 20 74 6f 20 22 75 70 6c 65  rgument to "uple
0560: 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 20 28 31 20  vel" command (1 
0570: 6e 6f 77 20 6d 65 61 6e 73 0a 22 67 6f 20 75 70  now means."go up
0580: 20 6f 6e 65 20 6c 65 76 65 6c 22 2c 20 6e 6f 74   one level", not
0590: 20 22 67 6f 20 74 6f 20 6c 65 76 65 6c 20 31 22   "go to level 1"
05a0: 3b 20 22 23 31 22 20 6d 65 61 6e 73 20 22 67 6f  ; "#1" means "go
05b0: 20 74 6f 20 6c 65 76 65 6c 20 31 22 29 2e 0a 2a   to level 1")..*
05c0: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
05d0: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
05e0: 0a 0a 31 35 2e 20 33 2f 31 39 2f 39 30 20 41 64  ..15. 3/19/90 Ad
05f0: 64 65 64 20 22 69 6e 66 6f 20 65 78 69 73 74 73  ded "info exists
0600: 22 20 6f 70 74 69 6f 6e 20 74 6f 20 73 65 65 20  " option to see 
0610: 69 66 20 76 61 72 69 61 62 6c 65 20 65 78 69 73  if variable exis
0620: 74 73 2e 0a 0a 31 36 2e 20 33 2f 31 39 2f 39 30  ts...16. 3/19/90
0630: 20 41 64 64 65 64 20 22 6e 6f 41 62 62 72 65 76   Added "noAbbrev
0640: 22 20 76 61 72 69 61 62 6c 65 20 74 6f 20 70 72  " variable to pr
0650: 6f 68 69 62 69 74 20 63 6f 6d 6d 61 6e 64 20 61  ohibit command a
0660: 62 62 72 65 76 69 61 74 69 6f 6e 73 2e 0a 0a 31  bbreviations...1
0670: 37 2e 20 33 2f 31 39 2f 39 30 20 41 64 64 65 64  7. 3/19/90 Added
0680: 20 65 78 74 72 61 20 65 72 72 6f 72 49 6e 66 6f   extra errorInfo
0690: 20 6f 70 74 69 6f 6e 20 74 6f 20 22 65 72 72 6f   option to "erro
06a0: 72 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 38 2e  r" command...18.
06b0: 20 33 2f 32 31 2f 39 30 20 44 6f 75 62 6c 65 2d   3/21/90 Double-
06c0: 71 75 6f 74 65 73 20 6e 6f 77 20 6f 6e 6c 79 20  quotes now only 
06d0: 61 66 66 65 63 74 20 73 70 61 63 65 3a 20 20 63  affect space:  c
06e0: 6f 6d 6d 61 6e 64 2c 20 76 61 72 69 61 62 6c 65  ommand, variable
06f0: 2c 0a 61 6e 64 20 62 61 63 6b 73 6c 61 73 68 20  ,.and backslash 
0700: 73 75 62 73 74 69 74 75 74 69 6f 6e 73 20 73 74  substitutions st
0710: 69 6c 6c 20 6f 63 63 75 72 20 69 6e 73 69 64 65  ill occur inside
0720: 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65 73 2e 0a   double-quotes..
0730: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
0740: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
0750: 2a 0a 0a 31 39 2e 20 33 2f 32 31 2f 39 30 20 41  *..19. 3/21/90 A
0760: 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
0770: 20 5c 72 2e 0a 0a 32 30 2e 20 33 2f 32 31 2f 39   \r...20. 3/21/9
0780: 30 20 4c 69 73 74 2c 20 63 6f 6e 63 61 74 2c 20  0 List, concat, 
0790: 65 76 61 6c 2c 20 61 6e 64 20 67 6c 6f 62 20 63  eval, and glob c
07a0: 6f 6d 6d 61 6e 64 73 20 61 6c 6c 20 65 78 70 65  ommands all expe
07b0: 63 74 20 61 74 20 6c 65 61 73 74 0a 6f 6e 65 20  ct at least.one 
07c0: 61 72 67 75 6d 65 6e 74 20 6e 6f 77 2e 20 20 2a  argument now.  *
07d0: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
07e0: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
07f0: 0a 0a 32 31 2e 20 33 2f 32 32 2f 39 30 20 41 64  ..21. 3/22/90 Ad
0800: 64 65 64 20 22 3f 3a 22 20 6f 70 65 72 61 74 6f  ded "?:" operato
0810: 72 73 20 74 6f 20 65 78 70 72 65 73 73 69 6f 6e  rs to expression
0820: 73 2e 0a 0a 32 32 2e 20 33 2f 32 35 2f 39 30 20  s...22. 3/25/90 
0830: 46 69 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c  Fixed bug in Tcl
0840: 5f 52 65 73 75 6c 74 20 74 68 61 74 20 63 61 75  _Result that cau
0850: 73 65 64 20 6d 65 6d 6f 72 79 20 74 6f 20 67 65  sed memory to ge
0860: 74 20 74 72 61 73 68 65 64 2e 0a 0a 2d 2d 2d 2d  t trashed...----
0870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
0880: 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e  Released version
0890: 20 33 2e 31 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   3.1 -----------
08a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 33 2e 20  ----------..23. 
08b0: 33 2f 32 39 2f 39 30 20 46 69 78 65 64 20 62 75  3/29/90 Fixed bu
08c0: 67 20 74 68 61 74 20 63 61 75 73 65 64 20 22 66  g that caused "f
08d0: 69 6c 65 20 61 2e 62 2f 63 20 65 78 74 22 20 74  ile a.b/c ext" t
08e0: 6f 20 72 65 74 75 72 6e 20 22 2e 62 2f 63 22 2e  o return ".b/c".
08f0: 0a 0a 32 34 2e 20 33 2f 32 39 2f 39 30 20 53 65  ..24. 3/29/90 Se
0900: 6d 69 2d 63 6f 6c 6f 6e 20 69 73 20 6e 6f 74 20  mi-colon is not 
0910: 74 72 65 61 74 65 64 20 73 70 65 63 69 61 6c 6c  treated speciall
0920: 79 20 77 68 65 6e 20 65 6e 63 6c 6f 73 65 64 20  y when enclosed 
0930: 69 6e 0a 64 6f 75 62 6c 65 2d 71 75 6f 74 65 73  in.double-quotes
0940: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
0950: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
0960: 76 65 72 73 69 6f 6e 20 33 2e 32 20 2d 2d 2d 2d  version 3.2 ----
0970: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0980: 2d 0a 0a 32 35 2e 20 34 2f 31 36 2f 39 30 20 52  -..25. 4/16/90 R
0990: 65 77 72 6f 74 65 20 22 65 78 65 63 22 20 6e 6f  ewrote "exec" no
09a0: 74 20 74 6f 20 75 73 65 20 73 65 6c 65 63 74 20  t to use select 
09b0: 6f 72 20 73 69 67 6e 61 6c 73 20 61 6e 79 6d 6f  or signals anymo
09c0: 72 65 2e 0a 53 68 6f 75 6c 64 20 62 65 20 6d 6f  re..Should be mo
09d0: 72 65 20 53 79 73 2d 56 20 63 6f 6d 70 61 74 69  re Sys-V compati
09e0: 62 6c 65 2c 20 61 6e 64 20 6e 6f 20 73 6c 6f 77  ble, and no slow
09f0: 65 72 20 69 6e 20 74 68 65 20 6e 6f 72 6d 61 6c  er in the normal
0a00: 20 63 61 73 65 2e 0a 0a 32 36 2e 20 34 2f 31 38   case...26. 4/18
0a10: 2f 39 30 20 52 65 77 72 6f 74 65 20 22 67 6c 6f  /90 Rewrote "glo
0a20: 62 22 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20  b" to eliminate 
0a30: 47 4e 55 20 63 6f 64 65 20 28 74 68 65 72 65 27  GNU code (there'
0a40: 73 20 6e 6f 20 47 4e 55 20 63 6f 64 65 0a 6c 65  s no GNU code.le
0a50: 66 74 20 69 6e 20 54 63 6c 2c 20 6e 6f 77 29 2c  ft in Tcl, now),
0a60: 20 61 6e 64 20 61 64 64 65 64 20 54 63 6c 5f 54   and added Tcl_T
0a70: 69 6c 64 65 53 75 62 73 74 20 70 72 6f 63 65 64  ildeSubst proced
0a80: 75 72 65 2e 20 20 41 64 64 65 64 20 61 75 74 6f  ure.  Added auto
0a90: 6d 61 74 69 63 0a 74 69 6c 64 65 2d 73 75 62 73  matic.tilde-subs
0aa0: 74 69 74 75 74 69 6f 6e 20 69 6e 20 6d 61 6e 79  titution in many
0ab0: 20 63 6f 6d 6d 61 6e 64 73 2c 20 69 6e 63 6c 75   commands, inclu
0ac0: 64 69 6e 67 20 22 67 6c 6f 62 22 2e 0a 0a 2d 2d  ding "glob"...--
0ad0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0ae0: 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69  - Released versi
0af0: 6f 6e 20 33 2e 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  on 3.3 ---------
0b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 37  ------------..27
0b10: 2e 20 37 2f 31 31 2f 39 30 20 41 64 64 65 64 20  . 7/11/90 Added 
0b20: 22 54 63 6c 5f 41 70 70 65 6e 64 52 65 73 75 6c  "Tcl_AppendResul
0b30: 74 22 20 70 72 6f 63 65 64 75 72 65 2e 0a 0a 32  t" procedure...2
0b40: 38 2e 20 37 2f 32 30 2f 39 30 20 22 48 69 73 74  8. 7/20/90 "Hist
0b50: 6f 72 79 22 20 77 69 74 68 20 6e 6f 20 6f 70 74  ory" with no opt
0b60: 69 6f 6e 73 20 6e 6f 77 20 64 65 66 61 75 6c 74  ions now default
0b70: 73 20 74 6f 20 22 68 69 73 74 6f 72 79 20 69 6e  s to "history in
0b80: 66 6f 22 0a 72 61 74 68 65 72 20 74 68 61 6e 20  fo".rather than 
0b90: 74 6f 20 22 68 69 73 74 6f 72 79 20 72 65 64 6f  to "history redo
0ba0: 22 2e 20 20 41 6c 74 68 6f 75 67 68 20 74 68 69  ".  Although thi
0bb0: 73 20 69 73 20 61 20 62 61 63 6b 77 61 72 64 20  s is a backward 
0bc0: 69 6e 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c  incompatibility,
0bd0: 0a 69 74 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20  .it should only 
0be0: 62 65 20 75 73 65 64 20 69 6e 74 65 72 61 63 74  be used interact
0bf0: 69 76 65 6c 79 20 61 6e 64 20 74 68 75 73 20 73  ively and thus s
0c00: 68 6f 75 6c 64 6e 27 74 20 70 72 65 73 65 6e 74  houldn't present
0c10: 20 61 6e 79 0a 63 6f 6d 70 61 74 69 62 69 6c 69   any.compatibili
0c20: 74 79 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68  ty problems with
0c30: 20 73 63 72 69 70 74 73 2e 0a 0a 32 39 2e 20 37   scripts...29. 7
0c40: 2f 32 30 2f 39 30 20 41 64 64 65 64 20 22 54 63  /20/90 Added "Tc
0c50: 6c 5f 47 65 74 49 6e 74 65 67 65 72 22 2c 20 22  l_GetInteger", "
0c60: 54 63 6c 5f 47 65 74 44 6f 75 62 6c 65 22 2c 20  Tcl_GetDouble", 
0c70: 61 6e 64 20 22 54 63 6c 5f 47 65 74 42 6f 6f 6c  and "Tcl_GetBool
0c80: 65 61 6e 22 0a 70 72 6f 63 65 64 75 72 65 73 2e  ean".procedures.
0c90: 0a 0a 33 30 2e 20 37 2f 32 32 2f 39 30 20 52 65  ..30. 7/22/90 Re
0ca0: 6d 6f 76 65 64 20 22 54 63 6c 5f 57 61 74 63 68  moved "Tcl_Watch
0cb0: 49 6e 74 65 72 70 22 20 70 72 6f 63 65 64 75 72  Interp" procedur
0cc0: 65 3a 20 20 64 6f 65 73 6e 27 74 20 73 65 65 6d  e:  doesn't seem
0cd0: 20 74 6f 20 62 65 0a 6e 65 63 65 73 73 61 72 79   to be.necessary
0ce0: 2c 20 73 69 6e 63 65 20 74 68 65 20 73 61 6d 65  , since the same
0cf0: 20 65 66 66 65 63 74 20 63 61 6e 20 62 65 20 61   effect can be a
0d00: 63 68 69 65 76 65 64 20 77 69 74 68 20 74 68 65  chieved with the
0d10: 20 64 65 6c 65 74 69 6f 6e 0a 63 61 6c 6c 62 61   deletion.callba
0d20: 63 6b 73 20 6f 6e 20 69 6e 64 69 76 69 64 75 61  cks on individua
0d30: 6c 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 2a 2a 2a  l commands.  ***
0d40: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
0d50: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
0d60: 33 31 2e 20 37 2f 32 33 2f 39 30 20 41 64 64 65  31. 7/23/90 Adde
0d70: 64 20 76 61 72 69 61 62 6c 65 20 74 72 61 63 69  d variable traci
0d80: 6e 67 3a 20 20 54 63 6c 5f 54 72 61 63 65 56 61  ng:  Tcl_TraceVa
0d90: 72 2c 20 54 63 6c 5f 55 6e 54 72 61 63 65 56 61  r, Tcl_UnTraceVa
0da0: 72 2c 0a 61 6e 64 20 54 63 6c 5f 56 61 72 54 72  r,.and Tcl_VarTr
0db0: 61 63 65 49 6e 66 6f 20 70 72 6f 63 65 64 75 72  aceInfo procedur
0dc0: 65 73 2c 20 22 74 72 61 63 65 22 20 63 6f 6d 6d  es, "trace" comm
0dd0: 61 6e 64 2e 0a 0a 33 32 2e 20 38 2f 39 2f 39 30  and...32. 8/9/90
0de0: 20 4d 61 69 6c 65 64 20 6f 75 74 20 6c 69 73 74   Mailed out list
0df0: 20 6f 66 20 61 6c 6c 20 62 75 67 20 66 69 78 65   of all bug fixe
0e00: 73 20 73 69 6e 63 65 20 33 2e 33 20 72 65 6c 65  s since 3.3 rele
0e10: 61 73 65 2e 0a 0a 33 33 2e 20 38 2f 32 39 2f 39  ase...33. 8/29/9
0e20: 30 20 46 69 78 65 64 20 62 75 67 73 20 69 6e 20  0 Fixed bugs in 
0e30: 54 63 6c 5f 4d 65 72 67 65 20 72 65 6c 61 74 69  Tcl_Merge relati
0e40: 6e 67 20 74 6f 20 62 61 63 6b 73 6c 61 73 68 65  ng to backslashe
0e50: 73 20 61 6e 64 0a 73 65 6d 69 2d 63 6f 6c 6f 6e  s and.semi-colon
0e60: 73 2e 20 20 4d 61 69 6c 65 64 20 6f 75 74 20 70  s.  Mailed out p
0e70: 61 74 63 68 2e 0a 0a 33 34 2e 20 39 2f 33 2f 39  atch...34. 9/3/9
0e80: 30 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 74  0 Fixed bug in t
0e90: 63 6c 42 61 73 69 63 2e 63 3a 20 71 75 6f 74 65  clBasic.c: quote
0ea0: 73 20 77 65 72 65 6e 27 74 20 71 75 6f 74 69 6e  s weren't quotin
0eb0: 67 20 5d 27 73 2e 0a 4d 61 69 6c 65 64 20 6f 75  g ]'s..Mailed ou
0ec0: 74 20 70 61 74 63 68 2e 0a 0a 33 35 2e 20 39 2f  t patch...35. 9/
0ed0: 31 39 2f 39 30 20 52 65 77 72 6f 74 65 20 65 78  19/90 Rewrote ex
0ee0: 65 63 20 74 6f 20 61 6c 77 61 79 73 20 75 73 65  ec to always use
0ef0: 20 66 69 6c 65 73 20 62 6f 74 68 20 66 6f 72 20   files both for 
0f00: 69 6e 70 75 74 20 61 6e 64 0a 6f 75 74 70 75 74  input and.output
0f10: 20 74 6f 20 74 68 65 20 70 72 6f 63 65 73 73 2e   to the process.
0f20: 20 20 54 68 65 20 6f 6c 64 20 70 69 70 65 2d 62    The old pipe-b
0f30: 61 73 65 64 20 76 65 72 73 69 6f 6e 20 64 69 64  ased version did
0f40: 6e 27 74 20 77 6f 72 6b 20 69 66 0a 74 68 65 20  n't work if.the 
0f50: 65 78 65 63 27 65 64 20 70 72 6f 63 65 73 73 20  exec'ed process 
0f60: 66 6f 72 6b 65 64 20 61 20 63 68 69 6c 64 20 61  forked a child a
0f70: 6e 64 20 74 68 65 6e 20 65 78 69 74 65 64 3a 20  nd then exited: 
0f80: 20 54 63 6c 20 77 61 69 74 65 64 0a 61 72 6f 75   Tcl waited.arou
0f90: 6e 64 20 66 6f 72 20 73 74 64 6f 75 74 20 74 6f  nd for stdout to
0fa0: 20 67 65 74 20 63 6c 6f 73 65 64 2c 20 77 68 69   get closed, whi
0fb0: 63 68 20 64 69 64 6e 27 74 20 68 61 70 70 65 6e  ch didn't happen
0fc0: 20 75 6e 74 69 6c 20 74 68 65 0a 67 72 61 6e 64   until the.grand
0fd0: 63 68 69 6c 64 20 65 78 69 74 65 64 2e 0a 0a 33  child exited...3
0fe0: 36 2e 20 31 31 2f 35 2f 39 30 20 45 52 52 5f 49  6. 11/5/90 ERR_I
0ff0: 4e 5f 50 52 4f 47 52 45 53 53 20 66 6c 61 67 20  N_PROGRESS flag 
1000: 77 61 73 6e 27 74 20 62 65 69 6e 67 20 63 6c 65  wasn't being cle
1010: 61 72 65 64 20 73 6f 6f 6e 20 65 6e 6f 75 67 68  ared soon enough
1020: 0a 69 6e 20 54 63 6c 5f 45 76 61 6c 2c 20 61 6c  .in Tcl_Eval, al
1030: 6c 6f 77 69 6e 67 20 65 72 72 6f 72 20 6d 65 73  lowing error mes
1040: 73 61 67 65 73 20 66 72 6f 6d 20 64 69 66 66 65  sages from diffe
1050: 72 65 6e 74 20 63 6f 6d 6d 61 6e 64 73 20 74 6f  rent commands to
1060: 0a 70 69 6c 65 20 75 70 20 69 6e 20 24 65 72 72  .pile up in $err
1070: 6f 72 49 6e 66 6f 2e 20 20 46 69 78 65 64 20 62  orInfo.  Fixed b
1080: 79 20 72 65 2d 61 72 72 61 6e 67 69 6e 67 20 63  y re-arranging c
1090: 6f 64 65 20 69 6e 20 54 63 6c 5f 45 76 61 6c 20  ode in Tcl_Eval 
10a0: 74 68 61 74 0a 72 65 2d 69 6e 69 74 69 61 6c 69  that.re-initiali
10b0: 7a 65 73 20 72 65 73 75 6c 74 20 61 6e 64 20 45  zes result and E
10c0: 52 52 5f 49 4e 5f 50 52 4f 47 52 45 53 53 20 66  RR_IN_PROGRESS f
10d0: 6c 61 67 2e 20 20 44 69 64 6e 27 74 20 6d 61 69  lag.  Didn't mai
10e0: 6c 20 6f 75 74 0a 70 61 74 63 68 3a 20 20 63 68  l out.patch:  ch
10f0: 61 6e 67 65 73 20 74 6f 6f 20 63 6f 6d 70 6c 69  anges too compli
1100: 63 61 74 65 64 20 74 6f 20 64 65 73 63 72 69 62  cated to describ
1110: 65 2e 0a 0a 33 37 2e 20 31 32 2f 31 39 2f 39 30  e...37. 12/19/90
1120: 20 41 64 64 65 64 20 54 63 6c 5f 56 61 72 45 76   Added Tcl_VarEv
1130: 61 6c 20 70 72 6f 63 65 64 75 72 65 20 61 73 20  al procedure as 
1140: 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20 66 6f  a convenience fo
1150: 72 0a 61 73 73 65 6d 62 6c 69 6e 67 20 61 6e 64  r.assembling and
1160: 20 65 78 65 63 75 74 69 6e 67 20 54 63 6c 20 63   executing Tcl c
1170: 6f 6d 6d 61 6e 64 73 2e 0a 0a 33 38 2e 20 31 2f  ommands...38. 1/
1180: 32 39 2f 39 31 20 46 69 78 65 64 20 63 6f 72 65  29/91 Fixed core
1190: 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f 41 64 64   leak in Tcl_Add
11a0: 45 72 72 6f 72 49 6e 66 6f 2e 20 20 41 6c 73 6f  ErrorInfo.  Also
11b0: 20 63 68 61 6e 67 65 64 20 70 72 6f 63 65 64 75   changed procedu
11c0: 72 65 0a 61 6e 64 20 54 63 6c 5f 45 76 61 6c 20  re.and Tcl_Eval 
11d0: 73 6f 20 74 68 61 74 20 66 69 72 73 74 20 63 61  so that first ca
11e0: 6c 6c 20 74 6f 20 54 63 6c 5f 41 64 64 45 72 72  ll to Tcl_AddErr
11f0: 6f 72 49 6e 66 6f 20 6e 65 65 64 20 6e 6f 74 20  orInfo need not 
1200: 63 6f 6d 65 20 66 72 6f 6d 0a 54 63 6c 5f 45 76  come from.Tcl_Ev
1210: 61 6c 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  al...-----------
1220: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
1230: 76 65 72 73 69 6f 6e 20 35 2e 30 20 77 69 74 68  version 5.0 with
1240: 20 54 6b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   Tk ------------
1250: 2d 2d 2d 2d 2d 2d 0a 0a 33 39 2e 20 34 2f 33 2f  ------..39. 4/3/
1260: 39 31 20 52 65 6d 6f 76 65 64 20 63 68 61 6e 67  91 Removed chang
1270: 65 20 62 61 72 73 20 66 72 6f 6d 20 6d 61 6e 75  e bars from manu
1280: 61 6c 20 65 6e 74 72 69 65 73 2c 20 6c 65 61 76  al entries, leav
1290: 69 6e 67 20 6f 6e 6c 79 20 74 68 6f 73 65 0a 74  ing only those.t
12a0: 68 61 74 20 63 61 6d 65 20 61 66 74 65 72 20 76  hat came after v
12b0: 65 72 73 69 6f 6e 20 33 2e 33 20 77 61 73 20 72  ersion 3.3 was r
12c0: 65 6c 65 61 73 65 64 2e 0a 0a 34 30 2e 20 35 2f  eleased...40. 5/
12d0: 31 37 2f 39 31 20 43 68 61 6e 67 65 64 20 74 65  17/91 Changed te
12e0: 73 74 73 20 74 6f 20 63 6f 6e 66 6f 72 6d 20 74  sts to conform t
12f0: 6f 20 4d 61 72 79 20 41 6e 6e 20 4d 61 79 2d 50  o Mary Ann May-P
1300: 75 6d 70 68 72 65 79 27 73 20 61 70 70 72 6f 61  umphrey's approa
1310: 63 68 2e 0a 0a 34 31 2e 20 35 2f 32 33 2f 39 31  ch...41. 5/23/91
1320: 20 4d 61 73 73 69 76 65 20 72 65 76 69 73 69 6f   Massive revisio
1330: 6e 20 74 6f 20 54 63 6c 20 70 61 72 73 65 72 20  n to Tcl parser 
1340: 74 6f 20 73 69 6d 70 6c 69 66 79 20 74 68 65 20  to simplify the 
1350: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 6f  implementation.o
1360: 66 20 73 74 72 69 6e 67 20 61 6e 64 20 66 6c 6f  f string and flo
1370: 61 74 69 6e 67 2d 70 6f 69 6e 74 20 73 75 70 70  ating-point supp
1380: 6f 72 74 20 69 6e 20 65 78 70 72 65 73 73 69 6f  ort in expressio
1390: 6e 73 2e 20 20 4e 65 77 6c 69 6e 65 73 20 69 6e  ns.  Newlines in
13a0: 73 69 64 65 0a 5b 5d 20 61 72 65 20 6e 6f 77 20  side.[] are now 
13b0: 74 72 65 61 74 65 64 20 61 73 20 63 6f 6d 6d 61  treated as comma
13c0: 6e 64 20 73 65 70 61 72 61 74 6f 72 73 20 72 61  nd separators ra
13d0: 74 68 65 72 20 74 68 61 6e 20 77 6f 72 64 20 73  ther than word s
13e0: 65 70 61 72 61 74 6f 72 73 0a 28 74 68 69 73 20  eparators.(this 
13f0: 6d 61 6b 65 73 20 6e 65 77 6c 69 6e 65 20 74 72  makes newline tr
1400: 65 61 74 6d 65 6e 74 20 63 6f 6e 73 69 73 74 65  eatment consiste
1410: 6e 74 20 74 68 72 6f 75 67 68 6f 75 74 20 54 63  nt throughout Tc
1420: 6c 29 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  l)..*** POTENTIA
1430: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
1440: 59 20 2a 2a 2a 0a 0a 34 32 2e 20 35 2f 32 33 2f  Y ***..42. 5/23/
1450: 39 31 20 4d 61 73 73 69 76 65 20 72 65 77 72 69  91 Massive rewri
1460: 74 65 20 6f 66 20 65 78 70 72 65 73 73 69 6f 6e  te of expression
1470: 20 63 6f 64 65 20 74 6f 20 73 75 70 70 6f 72 74   code to support
1480: 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 0a   floating-point.
1490: 76 61 6c 75 65 73 20 61 6e 64 20 73 69 6d 70 6c  values and simpl
14a0: 65 20 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 69  e string compari
14b0: 73 6f 6e 73 2e 20 20 54 68 65 20 43 20 69 6e 74  sons.  The C int
14c0: 65 72 66 61 63 65 73 20 74 6f 20 65 78 70 72 65  erfaces to expre
14d0: 73 73 69 6f 6e 0a 72 6f 75 74 69 6e 65 73 20 68  ssion.routines h
14e0: 61 76 65 20 63 68 61 6e 67 65 64 20 28 54 63 6c  ave changed (Tcl
14f0: 5f 45 78 70 72 20 69 73 20 72 65 70 6c 61 63 65  _Expr is replace
1500: 64 20 62 79 20 54 63 6c 5f 45 78 70 72 4c 6f 6e  d by Tcl_ExprLon
1510: 67 2c 20 54 63 6c 5f 45 78 70 72 44 6f 75 62 6c  g, Tcl_ExprDoubl
1520: 65 2c 0a 65 74 63 2e 29 2c 20 62 75 74 20 61 6c  e,.etc.), but al
1530: 6c 20 6f 6c 64 20 54 63 6c 20 65 78 70 72 65 73  l old Tcl expres
1540: 73 69 6f 6e 20 73 74 72 69 6e 67 73 20 73 68 6f  sion strings sho
1550: 75 6c 64 20 62 65 20 61 63 63 65 70 74 65 64 20  uld be accepted 
1560: 62 79 20 74 68 65 20 6e 65 77 0a 65 78 70 72 65  by the new.expre
1570: 73 73 69 6f 6e 20 63 6f 64 65 2e 0a 2a 2a 2a 20  ssion code..*** 
1580: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
1590: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34  ATIBILITY ***..4
15a0: 33 2e 20 35 2f 32 33 2f 39 31 20 4d 6f 64 69 66  3. 5/23/91 Modif
15b0: 69 65 64 20 74 63 6c 48 69 73 74 6f 72 79 2e 63  ied tclHistory.c
15c0: 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 20 6e 65   to check for ne
15d0: 67 61 74 69 76 65 20 22 6b 65 65 70 22 20 76 61  gative "keep" va
15e0: 6c 75 65 2e 0a 0a 34 34 2e 20 35 2f 32 33 2f 39  lue...44. 5/23/9
15f0: 31 20 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f 42  1 Modified Tcl_B
1600: 61 63 6b 73 6c 61 73 68 20 74 6f 20 68 61 6e 64  ackslash to hand
1610: 6c 65 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77  le backslash-new
1620: 6c 69 6e 65 2e 20 20 49 74 20 6e 6f 77 0a 72 65  line.  It now.re
1630: 74 75 72 6e 73 20 30 20 74 6f 20 69 6e 64 69 63  turns 0 to indic
1640: 61 74 65 20 74 68 61 74 20 61 20 62 61 63 6b 73  ate that a backs
1650: 6c 61 73 68 20 73 65 71 75 65 6e 63 65 20 73 68  lash sequence sh
1660: 6f 75 6c 64 20 62 65 20 72 65 70 6c 61 63 65 64  ould be replaced
1670: 20 62 79 0a 6e 6f 20 63 68 61 72 61 63 74 65 72   by.no character
1680: 20 61 74 20 61 6c 6c 2e 0a 2a 2a 2a 20 50 4f 54   at all..*** POT
1690: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
16a0: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34 35 2e 20  BILITY ***..45. 
16b0: 35 2f 32 39 2f 39 31 20 4d 6f 64 69 66 69 65 64  5/29/91 Modified
16c0: 20 74 6f 20 75 73 65 20 41 4e 53 49 20 43 20 66   to use ANSI C f
16d0: 75 6e 63 74 69 6f 6e 20 70 72 6f 74 6f 74 79 70  unction prototyp
16e0: 65 73 2e 20 20 4d 75 73 74 20 73 65 74 0a 22 55  es.  Must set."U
16f0: 53 45 5f 41 4e 53 49 22 20 73 77 69 74 63 68 20  SE_ANSI" switch 
1700: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74  when compiling t
1710: 6f 20 67 65 74 20 70 72 6f 74 6f 74 79 70 65 73  o get prototypes
1720: 2e 0a 0a 34 36 2e 20 35 2f 32 39 2f 39 31 20 43  ...46. 5/29/91 C
1730: 6f 6d 70 6c 65 74 65 64 20 74 65 73 74 20 73 75  ompleted test su
1740: 69 74 65 20 62 79 20 70 72 6f 76 69 64 69 6e 67  ite by providing
1750: 20 74 65 73 74 73 20 66 6f 72 20 61 6c 6c 20 6f   tests for all o
1760: 66 20 74 68 65 0a 62 75 69 6c 74 2d 69 6e 20 54  f the.built-in T
1770: 63 6c 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 34 37  cl commands...47
1780: 2e 20 35 2f 32 39 2f 39 31 20 43 68 61 6e 67 65  . 5/29/91 Change
1790: 64 20 54 63 6c 5f 43 6f 6e 63 61 74 20 74 6f 20  d Tcl_Concat to 
17a0: 65 6c 69 6d 69 6e 61 74 65 20 6c 65 61 64 69 6e  eliminate leadin
17b0: 67 20 61 6e 64 20 74 72 61 69 6c 69 6e 67 0a 77  g and trailing.w
17c0: 68 69 74 65 2d 73 70 61 63 65 20 69 6e 20 65 61  hite-space in ea
17d0: 63 68 20 6f 66 20 74 68 65 20 74 68 69 6e 67 73  ch of the things
17e0: 20 69 74 20 63 6f 6e 63 61 74 65 6e 61 74 65 73   it concatenates
17f0: 20 61 6e 64 20 74 6f 20 69 67 6e 6f 72 65 0a 65   and to ignore.e
1800: 6c 65 6d 65 6e 74 73 20 74 68 61 74 20 61 72 65  lements that are
1810: 20 65 6d 70 74 79 20 6f 72 20 68 61 76 65 20 6f   empty or have o
1820: 6e 6c 79 20 77 68 69 74 65 20 73 70 61 63 65 20  nly white space 
1830: 69 6e 20 74 68 65 6d 2e 20 20 54 68 69 73 0a 70  in them.  This.p
1840: 72 6f 64 75 63 65 73 20 63 6c 65 61 6e 65 72 20  roduces cleaner 
1850: 6f 75 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20  output from the 
1860: 22 63 6f 6e 63 61 74 22 20 63 6f 6d 6d 61 6e 64  "concat" command
1870: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
1880: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
1890: 2a 2a 2a 0a 0a 34 38 2e 20 35 2f 33 31 2f 39 31  ***..48. 5/31/91
18a0: 20 43 68 61 6e 67 65 64 20 22 73 65 74 22 20 63   Changed "set" c
18b0: 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63 6c 5f 53  ommand and Tcl_S
18c0: 65 74 56 61 72 20 70 72 6f 63 65 64 75 72 65 20  etVar procedure 
18d0: 74 6f 20 72 65 74 75 72 6e 0a 6e 65 77 20 76 61  to return.new va
18e0: 6c 75 65 20 6f 66 20 76 61 72 69 61 62 6c 65 2e  lue of variable.
18f0: 0a 0a 34 39 2e 20 36 2f 31 2f 39 31 20 41 64 64  ..49. 6/1/91 Add
1900: 65 64 20 22 77 68 69 6c 65 22 20 61 6e 64 20 22  ed "while" and "
1910: 63 64 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 35  cd" commands...5
1920: 30 2e 20 36 2f 31 2f 39 31 20 43 68 61 6e 67 65  0. 6/1/91 Change
1930: 64 20 22 65 78 65 63 22 20 74 6f 20 64 65 6c 65  d "exec" to dele
1940: 74 65 20 74 68 65 20 6c 61 73 74 20 63 68 61 72  te the last char
1950: 61 63 74 65 72 20 6f 66 20 70 72 6f 67 72 61 6d  acter of program
1960: 0a 6f 75 74 70 75 74 20 69 66 20 69 74 20 69 73  .output if it is
1970: 20 61 20 6e 65 77 6c 69 6e 65 2e 20 20 49 6e 20   a newline.  In 
1980: 6d 6f 73 74 20 63 61 73 65 73 20 74 68 69 73 20  most cases this 
1990: 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20  makes it easier 
19a0: 74 6f 0a 70 72 6f 63 65 73 73 20 70 72 6f 67 72  to.process progr
19b0: 61 6d 2d 67 65 6e 65 72 61 74 65 64 20 6f 75 74  am-generated out
19c0: 70 75 74 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  put..*** POTENTI
19d0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
19e0: 54 59 20 2a 2a 2a 0a 0a 35 31 2e 20 36 2f 31 2f  TY ***..51. 6/1/
19f0: 39 31 20 4d 61 64 65 20 73 75 72 65 20 74 68 61  91 Made sure tha
1a00: 74 20 70 6f 69 6e 74 65 72 73 20 61 72 65 20 6e  t pointers are n
1a10: 65 76 65 72 20 75 73 65 64 20 61 66 74 65 72 20  ever used after 
1a20: 66 72 65 65 69 6e 67 20 74 68 65 6d 2e 0a 0a 35  freeing them...5
1a30: 32 2e 20 36 2f 31 2f 39 31 20 46 69 78 65 64 20  2. 6/1/91 Fixed 
1a40: 62 75 67 20 69 6e 20 54 63 6c 57 6f 72 64 45 6e  bug in TclWordEn
1a50: 64 20 77 68 65 72 65 20 69 74 20 77 61 73 6e 27  d where it wasn'
1a60: 74 20 64 65 61 6c 69 6e 67 20 77 69 74 68 0a 5b  t dealing with.[
1a70: 5d 20 69 6e 73 69 64 65 20 71 75 6f 74 65 73 20  ] inside quotes 
1a80: 63 6f 72 72 65 63 74 6c 79 2e 0a 0a 35 33 2e 20  correctly...53. 
1a90: 36 2f 38 2f 39 31 20 46 69 78 65 64 20 65 78 65  6/8/91 Fixed exe
1aa0: 63 2e 74 65 73 74 20 74 6f 20 61 63 63 65 70 74  c.test to accept
1ab0: 20 72 65 74 75 72 6e 20 76 61 6c 75 65 73 20 6f   return values o
1ac0: 66 20 65 69 74 68 65 72 20 31 20 6f 72 0a 32 35  f either 1 or.25
1ad0: 35 20 66 72 6f 6d 20 22 66 61 6c 73 65 22 20 63  5 from "false" c
1ae0: 6f 6d 6d 61 6e 64 2e 0a 0a 35 34 2e 20 37 2f 36  ommand...54. 7/6
1af0: 2f 39 31 20 4d 61 73 73 69 76 65 20 6f 76 65 72  /91 Massive over
1b00: 68 61 75 6c 20 6f 66 20 76 61 72 69 61 62 6c 65  haul of variable
1b10: 20 6d 61 6e 61 67 65 6d 65 6e 74 2e 20 20 41 73   management.  As
1b20: 73 6f 63 69 61 74 69 76 65 0a 61 72 72 61 79 73  sociative.arrays
1b30: 20 6e 6f 77 20 61 76 61 69 6c 61 62 6c 65 2c 20   now available, 
1b40: 61 6c 6f 6e 67 20 77 69 74 68 20 22 75 6e 73 65  along with "unse
1b50: 74 22 20 63 6f 6d 6d 61 6e 64 20 28 61 6e 64 20  t" command (and 
1b60: 54 63 6c 5f 55 6e 73 65 74 56 61 72 0a 70 72 6f  Tcl_UnsetVar.pro
1b70: 63 65 64 75 72 65 29 2e 20 20 56 61 72 69 61 62  cedure).  Variab
1b80: 6c 65 20 74 72 61 63 65 73 20 68 61 76 65 20 62  le traces have b
1b90: 65 65 6e 20 63 6f 6d 70 6c 65 74 65 6c 79 20 72  een completely r
1ba0: 65 77 6f 72 6b 65 64 3a 0a 69 6e 74 65 72 66 61  eworked:.interfa
1bb0: 63 65 73 20 64 69 66 66 65 72 65 6e 74 20 62 6f  ces different bo
1bc0: 74 68 20 66 72 6f 6d 20 54 63 6c 20 61 6e 64 20  th from Tcl and 
1bd0: 43 2c 20 61 6e 64 20 6d 75 6c 74 69 70 6c 65 20  C, and multiple 
1be0: 74 72 61 63 65 73 20 6d 61 79 0a 65 78 69 73 74  traces may.exist
1bf0: 20 6f 6e 20 73 61 6d 65 20 76 61 72 69 61 62 6c   on same variabl
1c00: 65 2e 20 20 43 61 6e 20 6e 6f 20 6c 6f 6e 67 65  e.  Can no longe
1c10: 72 20 72 65 64 65 66 69 6e 65 20 65 78 69 73 74  r redefine exist
1c20: 69 6e 67 20 6c 6f 63 61 6c 0a 76 61 72 69 61 62  ing local.variab
1c30: 6c 65 20 74 6f 20 62 65 20 67 6c 6f 62 61 6c 2e  le to be global.
1c40: 20 20 43 61 6c 6c 69 6e 67 20 73 65 71 75 65 6e    Calling sequen
1c50: 63 65 73 20 68 61 76 65 20 63 68 61 6e 67 65 64  ces have changed
1c60: 20 73 6c 69 67 68 74 6c 79 0a 66 6f 72 20 54 63   slightly.for Tc
1c70: 6c 5f 47 65 74 56 61 72 20 61 6e 64 20 54 63 6c  l_GetVar and Tcl
1c80: 5f 53 65 74 56 61 72 20 28 22 67 6c 6f 62 61 6c  _SetVar ("global
1c90: 22 20 69 73 20 6e 6f 77 20 22 66 6c 61 67 73 22  " is now "flags"
1ca0: 29 2e 20 54 63 6c 5f 53 65 74 56 61 72 0a 63 61  ). Tcl_SetVar.ca
1cb0: 6e 20 66 61 69 6c 20 61 6e 64 20 72 65 74 75 72  n fail and retur
1cc0: 6e 20 61 20 4e 55 4c 4c 20 72 65 73 75 6c 74 2e  n a NULL result.
1cd0: 20 20 4e 65 77 20 66 6f 72 6d 73 20 6f 66 20 76    New forms of v
1ce0: 61 72 69 61 62 6c 65 2d 6d 61 6e 69 70 75 6c 61  ariable-manipula
1cf0: 74 69 6f 6e 0a 70 72 6f 63 65 64 75 72 65 73 3a  tion.procedures:
1d00: 20 20 54 63 6c 5f 47 65 74 56 61 72 32 2c 20 54    Tcl_GetVar2, T
1d10: 63 6c 5f 53 65 74 56 61 72 32 2c 20 65 74 63 2e  cl_SetVar2, etc.
1d20: 20 20 53 79 6e 74 61 78 20 6f 66 20 76 61 72 69    Syntax of vari
1d30: 61 62 6c 65 0a 24 2d 6e 6f 74 61 74 69 6f 6e 20  able.$-notation 
1d40: 63 68 61 6e 67 65 64 20 74 6f 20 73 75 70 70 6f  changed to suppo
1d50: 72 74 20 61 72 72 61 79 20 69 6e 64 65 78 69 6e  rt array indexin
1d60: 67 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  g..*** POTENTIAL
1d70: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
1d80: 20 2a 2a 2a 0a 0a 35 35 2e 20 37 2f 36 2f 39 31   ***..55. 7/6/91
1d90: 20 41 64 64 65 64 20 6e 65 77 20 6c 69 73 74 2d   Added new list-
1da0: 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 70 72 6f  manipulation pro
1db0: 63 65 64 75 72 65 73 3a 20 20 54 63 6c 5f 53 63  cedures:  Tcl_Sc
1dc0: 61 6e 45 6c 65 6d 65 6e 74 2c 0a 54 63 6c 5f 43  anElement,.Tcl_C
1dd0: 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74 2c 20 54  onvertElement, T
1de0: 63 6c 5f 41 70 70 65 6e 64 45 6c 65 6d 65 6e 74  cl_AppendElement
1df0: 2e 0a 0a 35 36 2e 20 37 2f 31 32 2f 39 31 20 43  ...56. 7/12/91 C
1e00: 72 65 61 74 65 64 20 6e 65 77 20 70 72 6f 63 65  reated new proce
1e10: 64 75 72 65 20 54 63 6c 5f 45 76 61 6c 46 69 6c  dure Tcl_EvalFil
1e20: 65 2c 20 77 68 69 63 68 20 64 6f 65 73 20 6d 6f  e, which does mo
1e30: 73 74 20 6f 66 20 74 68 65 0a 77 6f 72 6b 20 6f  st of the.work o
1e40: 66 20 74 68 65 20 22 73 6f 75 72 63 65 22 20 63  f the "source" c
1e50: 6f 6d 6d 61 6e 64 2e 0a 0a 35 37 2e 20 37 2f 32  ommand...57. 7/2
1e60: 30 2f 39 31 20 4d 61 6a 6f 72 20 72 65 77 6f 72  0/91 Major rewor
1e70: 6b 69 6e 67 20 6f 66 20 22 65 78 65 63 22 20 63  king of "exec" c
1e80: 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 6c 6f 77 20  ommand to allow 
1e90: 70 69 70 65 6c 69 6e 65 73 2c 0a 6d 6f 72 65 20  pipelines,.more 
1ea0: 72 65 64 69 72 65 63 74 69 6f 6e 2c 20 62 61 63  redirection, bac
1eb0: 6b 67 72 6f 75 6e 64 2e 20 20 41 64 64 65 64 20  kground.  Added 
1ec0: 6e 65 77 20 70 72 6f 63 65 64 75 72 65 73 20 54  new procedures T
1ed0: 63 6c 5f 46 6f 72 6b 2c 0a 54 63 6c 5f 57 61 69  cl_Fork,.Tcl_Wai
1ee0: 74 50 69 64 73 2c 20 54 63 6c 5f 44 65 74 61 63  tPids, Tcl_Detac
1ef0: 68 50 69 64 73 2c 20 61 6e 64 20 54 63 6c 5f 43  hPids, and Tcl_C
1f00: 72 65 61 74 65 50 69 70 65 6c 69 6e 65 2e 20 20  reatePipeline.  
1f10: 54 68 65 20 6f 6c 64 0a 22 3c 20 69 6e 70 75 74  The old."< input
1f20: 22 20 6e 6f 74 61 74 69 6f 6e 20 68 61 73 20 62  " notation has b
1f30: 65 65 6e 20 72 65 70 6c 61 63 65 64 20 62 79 20  een replaced by 
1f40: 22 3c 3c 20 69 6e 70 75 74 22 20 28 22 3c 22 20  "<< input" ("<" 
1f50: 69 73 20 66 6f 72 0a 72 65 64 69 72 65 63 74 69  is for.redirecti
1f60: 6f 6e 20 66 72 6f 6d 20 61 20 66 69 6c 65 29 2e  on from a file).
1f70: 20 20 41 6c 73 6f 20 68 61 6e 64 6c 65 73 20 65    Also handles e
1f80: 72 72 6f 72 20 72 65 74 75 72 6e 73 20 61 6e 64  rror returns and
1f90: 20 61 62 6e 6f 72 6d 61 6c 0a 74 65 72 6d 69 6e   abnormal.termin
1fa0: 61 74 69 6f 6e 73 20 28 65 2e 67 2e 20 73 69 67  ations (e.g. sig
1fb0: 6e 61 6c 73 29 20 64 69 66 66 65 72 65 6e 74 6c  nals) differentl
1fc0: 79 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  y..*** POTENTIAL
1fd0: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
1fe0: 20 2a 2a 2a 0a 0a 35 38 2e 20 37 2f 32 31 2f 39   ***..58. 7/21/9
1ff0: 31 20 41 64 64 65 64 20 22 61 70 70 65 6e 64 22  1 Added "append"
2000: 20 61 6e 64 20 22 6c 61 70 70 65 6e 64 22 20 63   and "lappend" c
2010: 6f 6d 6d 61 6e 64 73 2e 0a 0a 35 39 2e 20 37 2f  ommands...59. 7/
2020: 32 32 2f 39 31 20 52 65 77 6f 72 6b 65 64 20 65  22/91 Reworked e
2030: 72 72 6f 72 20 6d 65 73 73 61 67 65 73 20 61 6e  rror messages an
2040: 64 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73  d manual entries
2050: 20 74 6f 20 75 73 65 0a 3f 78 3f 20 61 73 20 74   to use.?x? as t
2060: 68 65 20 6e 6f 74 61 74 69 6f 6e 20 66 6f 72 20  he notation for 
2070: 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 75  an optional argu
2080: 6d 65 6e 74 20 78 2c 20 69 6e 73 74 65 61 64 20  ment x, instead 
2090: 6f 66 20 5b 78 5d 2e 20 20 54 68 65 0a 62 72 61  of [x].  The.bra
20a0: 63 6b 65 74 20 6e 6f 74 61 74 69 6f 6e 20 77 61  cket notation wa
20b0: 73 20 6f 66 74 65 6e 20 63 6f 6e 66 75 73 65 64  s often confused
20c0: 20 77 69 74 68 20 74 68 65 20 75 73 65 20 6f 66   with the use of
20d0: 20 62 72 61 63 6b 65 74 73 20 66 6f 72 0a 63 6f   brackets for.co
20e0: 6d 6d 61 6e 64 20 73 75 62 73 74 69 74 75 74 69  mmand substituti
20f0: 6f 6e 2e 20 20 41 6c 73 6f 20 6d 6f 64 69 66 69  on.  Also modifi
2100: 65 64 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65  ed error message
2110: 73 20 74 6f 20 62 65 20 6d 6f 72 65 0a 63 6f 6e  s to be more.con
2120: 73 69 73 74 65 6e 74 2e 0a 0a 36 30 2e 20 37 2f  sistent...60. 7/
2130: 32 33 2f 39 31 20 54 63 6c 5f 44 65 6c 65 74 65  23/91 Tcl_Delete
2140: 43 6f 6d 6d 61 6e 64 20 6e 6f 77 20 72 65 74 75  Command now retu
2150: 72 6e 73 20 61 6e 20 69 6e 64 69 63 61 74 69 6f  rns an indicatio
2160: 6e 20 6f 66 20 77 68 65 74 68 65 72 0a 6f 72 20  n of whether.or 
2170: 6e 6f 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20  not the command 
2180: 61 63 74 75 61 6c 6c 79 20 65 78 69 73 74 65 64  actually existed
2190: 2c 20 61 6e 64 20 74 68 65 20 22 72 65 6e 61 6d  , and the "renam
21a0: 65 22 20 63 6f 6d 6d 61 6e 64 20 75 73 65 73 0a  e" command uses.
21b0: 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  this information
21c0: 20 74 6f 20 72 65 74 75 72 6e 20 61 6e 20 65 72   to return an er
21d0: 72 6f 72 20 69 66 20 61 6e 20 61 74 74 65 6d 70  ror if an attemp
21e0: 74 20 69 73 20 6d 61 64 65 20 74 6f 20 64 65 6c  t is made to del
21f0: 65 74 65 0a 61 20 6e 6f 6e 2d 65 78 69 73 74 65  ete.a non-existe
2200: 6e 74 20 63 6f 6d 6d 61 6e 64 2e 0a 2a 2a 2a 20  nt command..*** 
2210: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
2220: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 36  ATIBILITY ***..6
2230: 31 2e 20 37 2f 32 35 2f 39 31 20 41 64 64 65 64  1. 7/25/91 Added
2240: 20 6e 65 77 20 22 65 72 72 6f 72 43 6f 64 65 22   new "errorCode"
2250: 20 6d 65 63 68 61 6e 69 73 6d 2c 20 61 6c 6f 6e   mechanism, alon
2260: 67 20 77 69 74 68 20 70 72 6f 63 65 64 75 72 65  g with procedure
2270: 73 0a 54 63 6c 5f 53 65 74 45 72 72 6f 72 43 6f  s.Tcl_SetErrorCo
2280: 64 65 2c 20 54 63 6c 5f 55 6e 69 78 45 72 72 6f  de, Tcl_UnixErro
2290: 72 2c 20 61 6e 64 20 54 63 6c 5f 52 65 73 65 74  r, and Tcl_Reset
22a0: 52 65 73 75 6c 74 2e 20 20 52 65 6e 61 6d 65 64  Result.  Renamed
22b0: 0a 54 63 6c 5f 52 65 74 75 72 6e 20 74 6f 20 54  .Tcl_Return to T
22c0: 63 6c 5f 53 65 74 52 65 73 75 6c 74 2c 20 62 75  cl_SetResult, bu
22d0: 74 20 6c 65 66 74 20 61 20 23 64 65 66 69 6e 65  t left a #define
22e0: 20 66 6f 72 20 54 63 6c 5f 52 65 74 75 72 6e 20   for Tcl_Return 
22f0: 74 6f 0a 61 76 6f 69 64 20 63 6f 6d 70 61 74 69  to.avoid compati
2300: 62 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73 2e  bility problems.
2310: 0a 0a 36 32 2e 20 37 2f 32 36 2f 39 31 20 45 78  ..62. 7/26/91 Ex
2320: 74 65 6e 64 65 64 20 22 63 61 73 65 22 20 63 6f  tended "case" co
2330: 6d 6d 61 6e 64 20 77 69 74 68 20 61 6c 74 65 72  mmand with alter
2340: 6e 61 74 65 20 73 79 6e 74 61 78 20 77 68 65 72  nate syntax wher
2350: 65 20 61 6c 6c 0a 70 61 74 74 65 72 6e 73 20 61  e all.patterns a
2360: 6e 64 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20  nd commands are 
2370: 74 6f 67 65 74 68 65 72 20 69 6e 20 61 20 73 69  together in a si
2380: 6e 67 6c 65 20 6c 69 73 74 20 61 72 67 75 6d 65  ngle list argume
2390: 6e 74 3a 20 20 6d 61 6b 65 73 0a 69 74 20 65 61  nt:  makes.it ea
23a0: 73 69 65 72 20 74 6f 20 77 72 69 74 65 20 6d 75  sier to write mu
23b0: 6c 74 69 2d 6c 69 6e 65 20 63 61 73 65 20 73 74  lti-line case st
23c0: 61 74 65 6d 65 6e 74 73 2e 0a 0a 36 33 2e 20 37  atements...63. 7
23d0: 2f 32 37 2f 39 31 20 43 68 61 6e 67 65 64 20 22  /27/91 Changed "
23e0: 70 72 69 6e 74 22 20 63 6f 6d 6d 61 6e 64 20 74  print" command t
23f0: 6f 20 70 65 72 66 6f 72 6d 20 74 69 6c 64 65 2d  o perform tilde-
2400: 73 75 62 73 74 69 74 75 74 69 6f 6e 20 6f 6e 0a  substitution on.
2410: 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 2e 0a 0a  the file name...
2420: 36 34 2e 20 37 2f 32 37 2f 39 31 20 41 64 64 65  64. 7/27/91 Adde
2430: 64 20 22 74 6f 6c 6f 77 65 72 22 2c 20 22 74 6f  d "tolower", "to
2440: 75 70 70 65 72 22 2c 20 22 74 72 69 6d 22 2c 20  upper", "trim", 
2450: 22 74 72 69 6d 6c 65 66 74 22 2c 20 61 6e 64 20  "trimleft", and 
2460: 22 74 72 69 6d 72 69 67 68 74 22 0a 6f 70 74 69  "trimright".opti
2470: 6f 6e 73 20 74 6f 20 22 73 74 72 69 6e 67 22 20  ons to "string" 
2480: 63 6f 6d 6d 61 6e 64 2e 0a 0a 36 35 2e 20 37 2f  command...65. 7/
2490: 32 39 2f 39 31 20 41 64 64 65 64 20 22 61 74 69  29/91 Added "ati
24a0: 6d 65 22 2c 20 22 6d 74 69 6d 65 22 2c 20 22 73  me", "mtime", "s
24b0: 69 7a 65 22 2c 20 61 6e 64 20 22 73 74 61 74 22  ize", and "stat"
24c0: 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 66 69 6c   options to "fil
24d0: 65 22 0a 63 6f 6d 6d 61 6e 64 2e 0a 0a 36 36 2e  e".command...66.
24e0: 20 38 2f 31 2f 39 31 20 41 64 64 65 64 20 22 73   8/1/91 Added "s
24f0: 70 6c 69 74 22 20 61 6e 64 20 22 6a 6f 69 6e 22  plit" and "join"
2500: 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 36 37 2e 20   commands...67. 
2510: 38 2f 31 31 2f 39 31 20 41 64 64 65 64 20 63 6f  8/11/91 Added co
2520: 6d 6d 61 6e 64 73 20 66 6f 72 20 66 69 6c 65 20  mmands for file 
2530: 49 2f 4f 2c 20 69 6e 63 6c 75 64 69 6e 67 20 22  I/O, including "
2540: 6f 70 65 6e 22 2c 20 22 63 6c 6f 73 65 22 2c 0a  open", "close",.
2550: 22 72 65 61 64 22 2c 20 22 67 65 74 73 22 2c 20  "read", "gets", 
2560: 22 70 75 74 73 22 2c 20 22 66 6c 75 73 68 22 2c  "puts", "flush",
2570: 20 22 65 6f 66 22 2c 20 22 73 65 65 6b 22 2c 20   "eof", "seek", 
2580: 61 6e 64 20 22 74 65 6c 6c 22 2e 0a 0a 36 38 2e  and "tell"...68.
2590: 20 38 2f 31 34 2f 39 31 20 53 77 69 74 63 68 65   8/14/91 Switche
25a0: 64 20 74 6f 20 75 73 65 20 61 20 68 61 73 68 20  d to use a hash 
25b0: 74 61 62 6c 65 20 66 6f 72 20 63 6f 6d 6d 61 6e  table for comman
25c0: 64 20 6c 6f 6f 6b 75 70 73 2e 20 20 43 6f 6d 6d  d lookups.  Comm
25d0: 61 6e 64 0a 61 62 62 72 65 76 69 61 74 69 6f 6e  and.abbreviation
25e0: 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 68 61 76 65  s no longer have
25f0: 20 64 69 72 65 63 74 20 73 75 70 70 6f 72 74 20   direct support 
2600: 69 6e 20 74 68 65 20 54 63 6c 20 69 6e 74 65 72  in the Tcl inter
2610: 70 72 65 74 65 72 2c 20 62 75 74 0a 69 74 20 73  preter, but.it s
2620: 68 6f 75 6c 64 20 62 65 20 70 6f 73 73 69 62 6c  hould be possibl
2630: 65 20 74 6f 20 73 69 6d 75 6c 61 74 65 20 74 68  e to simulate th
2640: 65 6d 20 77 69 74 68 20 74 68 65 20 61 75 74 6f  em with the auto
2650: 2d 6c 6f 61 64 20 66 65 61 74 75 72 65 73 0a 64  -load features.d
2660: 65 73 63 72 69 62 65 64 20 62 65 6c 6f 77 2e 20  escribed below. 
2670: 20 54 68 65 20 22 6e 6f 41 62 62 72 65 76 22 20   The "noAbbrev" 
2680: 76 61 72 69 61 62 6c 65 20 69 73 20 6e 6f 20 6c  variable is no l
2690: 6f 6e 67 65 72 20 75 73 65 64 20 62 79 20 54 63  onger used by Tc
26a0: 6c 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  l..*** POTENTIAL
26b0: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
26c0: 20 2a 2a 2a 0a 0a 36 38 2e 35 20 38 2f 31 35 2f   ***..68.5 8/15/
26d0: 39 31 20 41 64 64 65 64 20 73 75 70 70 6f 72 74  91 Added support
26e0: 20 66 6f 72 20 22 75 6e 6b 6e 6f 77 6e 22 20 63   for "unknown" c
26f0: 6f 6d 6d 61 6e 64 2c 20 77 68 69 63 68 20 63 61  ommand, which ca
2700: 6e 20 62 65 20 75 73 65 64 20 74 6f 0a 63 6f 6d  n be used to.com
2710: 70 6c 65 74 65 20 61 62 62 72 65 76 69 61 74 69  plete abbreviati
2720: 6f 6e 73 2c 20 61 75 74 6f 2d 6c 6f 61 64 20 6c  ons, auto-load l
2730: 69 62 72 61 72 79 20 66 69 6c 65 73 2c 20 61 75  ibrary files, au
2740: 74 6f 2d 65 78 65 63 20 73 68 65 6c 6c 0a 63 6f  to-exec shell.co
2750: 6d 6d 61 6e 64 73 2c 20 65 74 63 2e 0a 0a 36 39  mmands, etc...69
2760: 2e 20 38 2f 31 35 2f 39 31 20 41 64 64 65 64 20  . 8/15/91 Added 
2770: 2d 6e 6f 63 6f 6d 70 6c 61 69 6e 20 73 77 69 74  -nocomplain swit
2780: 63 68 20 74 6f 20 22 67 6c 6f 62 22 20 63 6f 6d  ch to "glob" com
2790: 6d 61 6e 64 2e 0a 0a 37 30 2e 20 38 2f 32 30 2f  mand...70. 8/20/
27a0: 39 31 20 41 64 64 65 64 20 22 69 6e 66 6f 20 6c  91 Added "info l
27b0: 69 62 72 61 72 79 22 20 6f 70 74 69 6f 6e 20 61  ibrary" option a
27c0: 6e 64 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 23  nd TCL_LIBRARY #
27d0: 64 65 66 69 6e 65 2e 20 20 41 6c 73 6f 0a 61 64  define.  Also.ad
27e0: 64 65 64 20 22 69 6e 66 6f 20 73 63 72 69 70 74  ded "info script
27f0: 22 20 6f 70 74 69 6f 6e 2e 0a 0a 37 31 2e 20 38  " option...71. 8
2800: 2f 32 30 2f 39 31 20 43 68 61 6e 67 65 64 20 22  /20/91 Changed "
2810: 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64 20 74 6f  file" command to
2820: 20 74 61 6b 65 20 22 6f 70 74 69 6f 6e 22 20 61   take "option" a
2830: 72 67 75 6d 65 6e 74 20 61 73 20 66 69 72 73 74  rgument as first
2840: 0a 61 72 67 75 6d 65 6e 74 20 28 62 65 66 6f 72  .argument (befor
2850: 65 20 66 69 6c 65 20 6e 61 6d 65 29 2c 20 66 6f  e file name), fo
2860: 72 20 63 6f 6e 73 69 73 74 65 6e 63 79 20 77 69  r consistency wi
2870: 74 68 20 6f 74 68 65 72 20 54 63 6c 20 63 6f 6d  th other Tcl com
2880: 6d 61 6e 64 73 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  mands..*** POTEN
2890: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
28a0: 4c 49 54 59 20 2a 2a 2a 0a 0a 37 32 2e 20 38 2f  LITY ***..72. 8/
28b0: 32 30 2f 39 31 20 43 68 61 6e 67 65 64 20 66 6f  20/91 Changed fo
28c0: 72 6d 61 74 20 6f 66 20 69 6e 66 6f 72 6d 61 74  rmat of informat
28d0: 69 6f 6e 20 69 6e 20 24 65 72 72 6f 72 49 6e 66  ion in $errorInf
28e0: 6f 20 76 61 72 69 61 62 6c 65 3a 0a 63 6f 6d 6d  o variable:.comm
28f0: 65 6e 74 73 20 73 75 63 68 20 61 73 0a 20 20 20  ents such as.   
2900: 20 28 22 77 68 69 6c 65 22 20 62 6f 64 79 20 6c   ("while" body l
2910: 69 6e 65 20 31 29 0a 61 72 65 20 6e 6f 77 20 6f  ine 1).are now o
2920: 6e 20 73 65 70 61 72 61 74 65 20 6c 69 6e 65 73  n separate lines
2930: 20 66 72 6f 6d 20 63 6f 6d 6d 61 6e 64 73 20 62   from commands b
2940: 65 69 6e 67 20 65 78 65 63 75 74 65 64 2e 0a 2a  eing executed..*
2950: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
2960: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
2970: 0a 0a 37 33 2e 20 38 2f 32 30 2f 39 31 20 43 68  ..73. 8/20/91 Ch
2980: 61 6e 67 65 64 20 54 63 6c 5f 41 70 70 65 6e 64  anged Tcl_Append
2990: 52 65 73 75 6c 74 20 73 6f 20 74 68 61 74 20 69  Result so that i
29a0: 74 20 28 65 76 65 6e 74 75 61 6c 6c 79 29 20 66  t (eventually) f
29b0: 72 65 65 73 0a 6c 61 72 67 65 20 62 75 66 66 65  rees.large buffe
29c0: 72 73 20 74 68 61 74 20 69 74 20 61 6c 6c 6f 63  rs that it alloc
29d0: 61 74 65 73 2e 0a 0a 37 34 2e 20 38 2f 32 31 2f  ates...74. 8/21/
29e0: 39 31 20 41 64 64 65 64 20 22 6c 69 6e 73 65 72  91 Added "linser
29f0: 74 22 2c 20 22 6c 72 65 70 6c 61 63 65 22 2c 20  t", "lreplace", 
2a00: 22 6c 73 65 61 72 63 68 22 2c 20 61 6e 64 20 22  "lsearch", and "
2a10: 6c 73 6f 72 74 22 0a 63 6f 6d 6d 61 6e 64 73 2e  lsort".commands.
2a20: 0a 0a 37 35 2e 20 38 2f 32 38 2f 39 31 20 41 64  ..75. 8/28/91 Ad
2a30: 64 65 64 20 22 69 6e 63 72 22 20 61 6e 64 20 22  ded "incr" and "
2a40: 65 78 69 74 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a  exit" commands..
2a50: 0a 37 36 2e 20 38 2f 33 30 2f 39 31 20 41 64 64  .76. 8/30/91 Add
2a60: 65 64 20 22 72 65 67 65 78 70 22 20 61 6e 64 20  ed "regexp" and 
2a70: 22 72 65 67 73 75 62 22 20 63 6f 6d 6d 61 6e 64  "regsub" command
2a80: 73 2e 0a 0a 37 37 2e 20 39 2f 34 2f 39 31 20 43  s...77. 9/4/91 C
2a90: 68 61 6e 67 65 64 20 22 64 79 6e 61 6d 69 63 22  hanged "dynamic"
2aa0: 20 66 69 65 6c 64 20 69 6e 20 69 6e 74 65 72 70   field in interp
2ab0: 72 65 74 65 72 73 20 74 6f 20 22 66 72 65 65 50  reters to "freeP
2ac0: 72 6f 63 22 20 28 70 72 6f 63 65 64 75 72 65 0a  roc" (procedure.
2ad0: 61 64 64 72 65 73 73 29 2e 20 20 54 68 69 73 20  address).  This 
2ae0: 61 6c 6c 6f 77 73 20 66 6f 72 20 61 6c 74 65 72  allows for alter
2af0: 6e 61 74 69 76 65 20 73 74 6f 72 61 67 65 20 6d  native storage m
2b00: 61 6e 61 67 65 72 73 2e 0a 2a 2a 2a 20 50 4f 54  anagers..*** POT
2b10: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
2b20: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 37 38 2e 20  BILITY ***..78. 
2b30: 39 2f 36 2f 39 31 20 41 64 64 65 64 20 22 69 6e  9/6/91 Added "in
2b40: 64 65 78 22 2c 20 22 6c 65 6e 67 74 68 22 2c 20  dex", "length", 
2b50: 61 6e 64 20 22 72 61 6e 67 65 22 20 6f 70 74 69  and "range" opti
2b60: 6f 6e 73 20 74 6f 20 22 73 74 72 69 6e 67 22 0a  ons to "string".
2b70: 63 6f 6d 6d 61 6e 64 2e 20 20 41 64 64 65 64 20  command.  Added 
2b80: 22 6c 69 6e 64 65 78 22 2c 20 22 6c 6c 65 6e 67  "lindex", "lleng
2b90: 74 68 22 2c 20 61 6e 64 20 22 6c 72 61 6e 67 65  th", and "lrange
2ba0: 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 37 39 2e  " commands...79.
2bb0: 20 39 2f 38 2f 39 31 20 52 65 6d 6f 76 65 64 20   9/8/91 Removed 
2bc0: 22 69 6e 64 65 78 22 2c 20 22 6c 65 6e 67 74 68  "index", "length
2bd0: 22 2c 20 22 70 72 69 6e 74 22 20 61 6e 64 20 22  ", "print" and "
2be0: 72 61 6e 67 65 22 20 63 6f 6d 6d 61 6e 64 73 2e  range" commands.
2bf0: 0a 22 50 72 69 6e 74 22 20 69 73 20 72 65 64 75  ."Print" is redu
2c00: 6e 64 61 6e 74 20 77 69 74 68 20 22 70 75 74 73  ndant with "puts
2c10: 22 2c 20 62 75 74 20 6c 65 73 73 20 67 65 6e 65  ", but less gene
2c20: 72 61 6c 2c 20 61 6e 64 20 74 68 65 20 6f 74 68  ral, and the oth
2c30: 65 72 0a 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20  er.commands are 
2c40: 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 74 68  replaced with th
2c50: 65 20 6e 65 77 20 63 6f 6d 6d 61 6e 64 73 20 64  e new commands d
2c60: 65 73 63 72 69 62 65 64 20 69 6e 20 63 68 61 6e  escribed in chan
2c70: 67 65 20 37 38 0a 61 62 6f 76 65 2e 0a 2a 2a 2a  ge 78.above..***
2c80: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
2c90: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
2ca0: 38 30 2e 20 39 2f 38 2f 39 31 20 43 68 61 6e 67  80. 9/8/91 Chang
2cb0: 65 64 20 68 69 73 74 6f 72 79 20 72 65 76 69 73  ed history revis
2cc0: 69 6f 6e 20 74 6f 20 6f 63 63 75 72 20 65 76 65  ion to occur eve
2cd0: 6e 20 77 68 65 6e 20 68 69 73 74 6f 72 79 20 63  n when history c
2ce0: 6f 6d 6d 61 6e 64 0a 69 73 20 6e 65 73 74 65 64  ommand.is nested
2cf0: 3b 20 20 6e 65 65 64 65 64 20 69 6e 20 6f 72 64  ;  needed in ord
2d00: 65 72 20 74 6f 20 61 6c 6c 6f 77 20 22 68 69 73  er to allow "his
2d10: 74 6f 72 79 22 20 74 6f 20 62 65 20 69 6e 76 6f  tory" to be invo
2d20: 6b 65 64 20 66 72 6f 6d 0a 22 75 6e 6b 6e 6f 77  ked from."unknow
2d30: 6e 22 20 70 72 6f 63 65 64 75 72 65 2e 0a 0a 38  n" procedure...8
2d40: 31 2e 20 39 2f 31 33 2f 39 31 20 43 68 61 6e 67  1. 9/13/91 Chang
2d50: 65 64 20 22 70 61 6e 69 63 22 20 6e 6f 74 20 74  ed "panic" not t
2d60: 6f 20 75 73 65 20 76 66 70 72 69 6e 74 66 20 28  o use vfprintf (
2d70: 69 74 27 73 20 75 67 6c 69 65 72 20 61 6e 64 20  it's uglier and 
2d80: 6c 65 73 73 0a 67 65 6e 65 72 61 6c 20 6e 6f 77  less.general now
2d90: 2c 20 62 75 74 20 6d 61 6b 65 73 20 69 74 20 65  , but makes it e
2da0: 61 73 69 65 72 20 74 6f 20 72 75 6e 20 54 63 6c  asier to run Tcl
2db0: 20 6f 6e 20 73 79 73 74 65 6d 73 20 74 68 61 74   on systems that
2dc0: 20 64 6f 6e 27 74 0a 68 61 76 65 20 76 66 70 72   don't.have vfpr
2dd0: 69 6e 74 66 29 2e 20 20 41 6c 73 6f 20 63 68 61  intf).  Also cha
2de0: 6e 67 65 64 20 22 73 74 72 65 72 72 6f 72 22 20  nged "strerror" 
2df0: 6e 6f 74 20 74 6f 20 72 65 64 65 63 6c 61 72 65  not to redeclare
2e00: 20 73 79 73 5f 65 72 72 6c 69 73 74 2e 0a 0a 38   sys_errlist...8
2e10: 32 2e 20 39 2f 31 39 2f 39 31 20 4c 6f 74 73 20  2. 9/19/91 Lots 
2e20: 6f 66 20 63 68 61 6e 67 65 73 20 74 6f 20 69 6d  of changes to im
2e30: 70 72 6f 76 65 20 70 6f 72 74 61 62 69 6c 69 74  prove portabilit
2e40: 79 20 74 6f 20 64 69 66 66 65 72 65 6e 74 20 55  y to different U
2e50: 4e 49 58 0a 73 79 73 74 65 6d 73 2c 20 69 6e 63  NIX.systems, inc
2e60: 6c 75 64 69 6e 67 20 61 64 64 69 74 69 6f 6e 20  luding addition 
2e70: 6f 66 20 22 63 6f 6e 66 69 67 22 20 73 63 72 69  of "config" scri
2e80: 70 74 20 74 6f 20 61 64 61 70 74 20 54 63 6c 20  pt to adapt Tcl 
2e90: 74 6f 20 74 68 65 0a 63 6f 6e 66 69 67 75 72 61  to the.configura
2ea0: 74 69 6f 6e 20 6f 66 20 74 68 65 20 73 79 73 74  tion of the syst
2eb0: 65 6d 20 69 74 27 73 20 62 65 69 6e 67 20 63 6f  em it's being co
2ec0: 6d 70 69 6c 65 64 20 6f 6e 2e 0a 0a 38 33 2e 20  mpiled on...83. 
2ed0: 39 2f 32 32 2f 39 31 20 41 64 64 65 64 20 22 70  9/22/91 Added "p
2ee0: 77 64 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 38 34  wd" command...84
2ef0: 2e 20 39 2f 32 32 2f 39 31 20 52 65 6e 61 6d 65  . 9/22/91 Rename
2f00: 64 20 6d 61 6e 75 61 6c 20 70 61 67 65 73 20 73  d manual pages s
2f10: 6f 20 74 68 61 74 20 74 68 65 69 72 20 66 69 6c  o that their fil
2f20: 65 6e 61 6d 65 73 20 61 72 65 20 6e 6f 20 6d 6f  enames are no mo
2f30: 72 65 0a 74 68 61 6e 20 31 34 20 63 68 61 72 61  re.than 14 chara
2f40: 63 74 65 72 73 20 69 6e 20 6c 65 6e 67 74 68 2c  cters in length,
2f50: 20 6d 6f 76 65 64 20 74 6f 20 22 64 6f 63 22 20   moved to "doc" 
2f60: 73 75 62 64 69 72 65 63 74 6f 72 79 2e 0a 0a 38  subdirectory...8
2f70: 35 2e 20 39 2f 32 34 2f 39 31 20 52 65 64 69 64  5. 9/24/91 Redid
2f80: 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20   manual entries 
2f90: 73 6f 20 74 68 65 79 20 63 6f 6e 74 61 69 6e 20  so they contain 
2fa0: 74 68 65 20 73 75 70 70 6c 65 6d 65 6e 74 61 6c  the supplemental
2fb0: 0a 6d 61 63 72 6f 73 20 74 68 61 74 20 74 68 65  .macros that the
2fc0: 79 20 6e 65 65 64 3b 20 20 63 61 6e 20 6a 75 73  y need;  can jus
2fd0: 74 20 70 72 69 6e 74 20 77 69 74 68 20 22 74 72  t print with "tr
2fe0: 6f 66 66 20 2d 6d 61 6e 22 20 6f 72 20 22 6d 61  off -man" or "ma
2ff0: 6e 22 0a 6e 6f 77 2e 0a 0a 38 36 2e 20 39 2f 32  n".now...86. 9/2
3000: 36 2f 39 31 20 43 72 65 61 74 65 64 20 69 6e 69  6/91 Created ini
3010: 74 69 61 6c 20 76 65 72 73 69 6f 6e 20 6f 66 20  tial version of 
3020: 73 63 72 69 70 74 20 6c 69 62 72 61 72 79 2c 20  script library, 
3030: 69 6e 63 6c 75 64 69 6e 67 0a 61 20 76 65 72 73  including.a vers
3040: 69 6f 6e 20 6f 66 20 22 75 6e 6b 6e 6f 77 6e 22  ion of "unknown"
3050: 20 74 68 61 74 20 64 6f 65 73 20 61 75 74 6f 2d   that does auto-
3060: 6c 6f 61 64 69 6e 67 2c 20 61 75 74 6f 2d 65 78  loading, auto-ex
3070: 65 63 75 74 69 6f 6e 2c 20 61 6e 64 0a 61 62 62  ecution, and.abb
3080: 72 65 76 69 61 74 69 6f 6e 20 65 78 70 61 6e 73  reviation expans
3090: 69 6f 6e 2e 20 20 54 68 69 73 20 6c 69 62 72 61  ion.  This libra
30a0: 72 79 20 69 73 20 75 73 65 64 20 62 79 20 74 63  ry is used by tc
30b0: 6c 54 65 73 74 0a 61 75 74 6f 6d 61 74 69 63 61  lTest.automatica
30c0: 6c 6c 79 2e 20 20 53 65 65 20 74 68 65 20 22 6c  lly.  See the "l
30d0: 69 62 72 61 72 79 22 20 6d 61 6e 75 61 6c 20 65  ibrary" manual e
30e0: 6e 74 72 79 20 66 6f 72 20 64 65 74 61 69 6c 73  ntry for details
30f0: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
3100: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
3110: 72 73 69 6f 6e 20 36 2e 30 2c 20 39 2f 32 36 2f  rsion 6.0, 9/26/
3120: 39 31 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  91 -------------
3130: 2d 2d 2d 2d 2d 0a 0a 38 37 2e 20 39 2f 33 30 2f  -----..87. 9/30/
3140: 39 31 20 4d 61 64 65 20 22 73 74 72 69 6e 67 20  91 Made "string 
3150: 74 6f 6c 6f 77 65 72 22 20 61 6e 64 20 22 73 74  tolower" and "st
3160: 72 69 6e 67 20 74 6f 75 70 70 65 72 22 20 63 68  ring toupper" ch
3170: 65 63 6b 20 63 61 73 65 0a 62 65 66 6f 72 65 20  eck case.before 
3180: 63 6f 6e 76 65 72 74 69 6e 67 3a 20 20 6f 6e 20  converting:  on 
3190: 73 6f 6d 65 20 73 79 73 74 65 6d 73 2c 20 22 74  some systems, "t
31a0: 6f 6c 6f 77 65 72 22 20 61 6e 64 20 22 74 6f 75  olower" and "tou
31b0: 70 70 65 72 22 20 61 73 73 75 6d 65 0a 74 68 61  pper" assume.tha
31c0: 74 20 63 68 61 72 61 63 74 65 72 20 61 6c 72 65  t character alre
31d0: 61 64 79 20 68 61 73 20 70 61 72 74 69 63 75 6c  ady has particul
31e0: 61 72 20 63 61 73 65 2e 0a 0a 38 38 2e 20 39 2f  ar case...88. 9/
31f0: 33 30 2f 39 31 20 46 69 78 65 64 20 62 75 67 20  30/91 Fixed bug 
3200: 69 6e 20 54 63 6c 5f 53 65 74 52 65 73 75 6c 74  in Tcl_SetResult
3210: 3a 20 20 77 61 73 6e 27 74 20 61 6c 77 61 79 73  :  wasn't always
3220: 20 73 65 74 74 69 6e 67 20 66 72 65 65 50 72 6f   setting freePro
3230: 63 0a 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e  c.correctly when
3240: 20 63 61 6c 6c 65 64 20 77 69 74 68 20 4e 55 4c   called with NUL
3250: 4c 20 76 61 6c 75 65 2e 20 20 54 68 69 73 20 74  L value.  This t
3260: 65 6e 64 65 64 20 74 6f 20 63 61 75 73 65 20 6d  ended to cause m
3270: 65 6d 6f 72 79 0a 61 6c 6c 6f 63 61 74 69 6f 6e  emory.allocation
3280: 20 65 72 72 6f 72 73 20 6c 61 74 65 72 2e 0a 0a   errors later...
3290: 38 39 2e 20 31 30 2f 33 2f 39 31 20 41 64 64 65  89. 10/3/91 Adde
32a0: 64 20 22 75 70 76 61 72 22 20 63 6f 6d 6d 61 6e  d "upvar" comman
32b0: 64 2e 0a 0a 39 30 2e 20 31 30 2f 34 2f 39 31 20  d...90. 10/4/91 
32c0: 43 68 61 6e 67 65 64 20 22 66 6f 72 6d 61 74 22  Changed "format"
32d0: 20 73 6f 20 74 68 61 74 20 69 6e 74 65 72 6e 61   so that interna
32e0: 6c 6c 79 20 69 74 20 63 6f 6e 76 65 72 74 73 20  lly it converts 
32f0: 25 44 20 74 6f 20 25 6c 64 2c 0a 25 55 20 74 6f  %D to %ld,.%U to
3300: 20 25 6c 75 2c 20 25 4f 20 74 6f 20 25 6c 6f 2c   %lu, %O to %lo,
3310: 20 61 6e 64 20 25 46 20 74 6f 20 25 66 2e 20 20   and %F to %f.  
3320: 54 68 69 73 20 65 6c 69 6d 69 6e 61 74 65 73 20  This eliminates 
3330: 73 6f 6d 65 20 63 6f 6d 70 61 74 69 62 69 6c 69  some compatibili
3340: 74 79 0a 70 72 6f 62 6c 65 6d 73 20 6f 6e 20 73  ty.problems on s
3350: 6f 6d 65 20 6d 61 63 68 69 6e 65 73 20 77 69 74  ome machines wit
3360: 68 6f 75 74 20 61 66 66 65 63 74 69 6e 67 20 62  hout affecting b
3370: 65 68 61 76 69 6f 72 2e 0a 0a 39 31 2e 20 31 30  ehavior...91. 10
3380: 2f 31 30 2f 39 31 20 46 69 78 65 64 20 62 75 67  /10/91 Fixed bug
3390: 20 69 6e 20 22 72 65 67 73 75 62 22 20 74 68 61   in "regsub" tha
33a0: 74 20 63 61 75 73 65 64 20 63 6f 72 65 20 64 75  t caused core du
33b0: 6d 70 73 20 77 69 74 68 20 74 68 65 20 2d 61 6c  mps with the -al
33c0: 6c 0a 6f 70 74 69 6f 6e 20 77 68 65 6e 20 74 68  l.option when th
33d0: 65 20 6c 61 73 74 20 6d 61 74 63 68 20 77 61 73  e last match was
33e0: 6e 27 74 20 61 74 20 74 68 65 20 65 6e 64 20 6f  n't at the end o
33f0: 66 20 74 68 65 20 73 74 72 69 6e 67 2e 0a 0a 39  f the string...9
3400: 32 2e 20 31 30 2f 31 37 2f 39 31 20 46 69 78 65  2. 10/17/91 Fixe
3410: 64 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20  d problems with 
3420: 62 61 63 6b 73 6c 61 73 68 20 73 65 71 75 65 6e  backslash sequen
3430: 63 65 73 3a 20 20 5c 72 20 73 75 70 70 6f 72 74  ces:  \r support
3440: 20 77 61 73 0a 69 6e 63 6f 6d 70 6c 65 74 65 20   was.incomplete 
3450: 61 6e 64 20 5c 66 20 61 6e 64 20 5c 76 20 77 65  and \f and \v we
3460: 72 65 6e 27 74 20 73 75 70 70 6f 72 74 65 64 20  ren't supported 
3470: 61 74 20 61 6c 6c 2e 0a 0a 39 33 2e 20 31 30 2f  at all...93. 10/
3480: 32 34 2f 39 31 20 41 64 64 65 64 20 54 63 6c 5f  24/91 Added Tcl_
3490: 49 6e 69 74 48 69 73 74 6f 72 79 20 70 72 6f 63  InitHistory proc
34a0: 65 64 75 72 65 2e 0a 0a 39 34 2e 20 31 30 2f 32  edure...94. 10/2
34b0: 34 2f 39 31 20 43 68 61 6e 67 65 64 20 22 72 65  4/91 Changed "re
34c0: 67 65 78 70 22 20 74 6f 20 73 74 6f 72 65 20 22  gexp" to store "
34d0: 2d 31 20 2d 31 22 20 69 6e 20 73 75 62 4d 61 74  -1 -1" in subMat
34e0: 63 68 56 61 72 73 20 74 68 61 74 0a 64 6f 6e 27  chVars that.don'
34f0: 74 20 6d 61 74 63 68 2c 20 72 61 74 68 65 72 20  t match, rather 
3500: 74 68 61 6e 20 72 65 74 75 72 6e 69 6e 67 20 61  than returning a
3510: 6e 20 65 72 72 6f 72 2e 0a 0a 39 35 2e 20 31 30  n error...95. 10
3520: 2f 32 37 2f 39 31 20 4d 6f 64 69 66 69 65 64 20  /27/91 Modified 
3530: 22 72 65 67 65 78 70 22 20 74 6f 20 72 65 74 75  "regexp" to retu
3540: 72 6e 20 61 63 74 75 61 6c 20 73 74 72 69 6e 67  rn actual string
3550: 73 20 69 6e 20 6d 61 74 63 68 56 61 72 0a 61 6e  s in matchVar.an
3560: 64 20 73 75 62 4d 61 74 63 68 56 61 72 73 20 69  d subMatchVars i
3570: 6e 73 74 65 61 64 20 6f 66 20 69 6e 64 69 63 65  nstead of indice
3580: 73 2e 20 20 41 64 64 65 64 20 22 2d 69 6e 64 69  s.  Added "-indi
3590: 63 65 73 22 20 73 77 69 74 63 68 20 74 6f 20 63  ces" switch to c
35a0: 61 75 73 65 0a 69 6e 64 69 63 65 73 20 74 6f 20  ause.indices to 
35b0: 62 65 20 72 65 74 75 72 6e 65 64 2e 0a 2a 2a 2a  be returned..***
35c0: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
35d0: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
35e0: 39 36 2e 20 31 30 2f 32 37 2f 39 31 20 46 69 78  96. 10/27/91 Fix
35f0: 65 64 20 62 75 67 20 69 6e 20 22 73 63 61 6e 22  ed bug in "scan"
3600: 20 77 68 65 72 65 20 69 74 20 75 73 65 64 20 68   where it used h
3610: 61 72 64 77 69 72 65 64 20 63 6f 6e 73 74 61 6e  ardwired constan
3620: 74 73 20 66 6f 72 0a 73 69 7a 65 73 20 6f 66 20  ts for.sizes of 
3630: 66 6c 6f 61 74 73 20 61 6e 64 20 64 6f 75 62 6c  floats and doubl
3640: 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20 75 73  es instead of us
3650: 69 6e 67 20 22 73 69 7a 65 6f 66 22 2e 0a 0a 39  ing "sizeof"...9
3660: 37 2e 20 31 30 2f 33 31 2f 39 31 20 46 69 78 65  7. 10/31/91 Fixe
3670: 64 20 62 75 67 20 69 6e 20 74 63 6c 50 61 72 73  d bug in tclPars
3680: 65 2e 63 20 77 68 65 72 65 20 70 61 72 73 65 2d  e.c where parse-
3690: 72 65 6c 61 74 65 64 20 65 72 72 6f 72 20 6d 65  related error me
36a0: 73 73 61 67 65 73 0a 77 65 72 65 6e 27 74 20 62  ssages.weren't b
36b0: 65 69 6e 67 20 73 74 6f 72 61 67 65 2d 6d 61 6e  eing storage-man
36c0: 61 67 65 64 20 63 6f 72 72 65 63 74 6c 79 2c 20  aged correctly, 
36d0: 63 61 75 73 69 6e 67 20 73 70 75 72 69 6f 75 73  causing spurious
36e0: 20 66 72 65 65 27 73 2e 0a 0a 39 38 2e 20 31 30   free's...98. 10
36f0: 2f 33 31 2f 39 31 20 46 6f 72 6d 20 66 65 65 64  /31/91 Form feed
3700: 20 61 6e 64 20 76 65 72 74 69 63 61 6c 20 74 61   and vertical ta
3710: 62 20 63 68 61 72 61 63 74 65 72 73 20 61 72 65  b characters are
3720: 20 6e 6f 77 20 63 6f 6e 73 69 64 65 72 65 64 0a   now considered.
3730: 74 6f 20 62 65 20 73 70 61 63 65 20 63 68 61 72  to be space char
3740: 61 63 74 65 72 73 20 62 79 20 74 68 65 20 70 61  acters by the pa
3750: 72 73 65 72 2e 0a 0a 39 39 2e 20 31 30 2f 33 31  rser...99. 10/31
3760: 2f 39 31 20 41 64 64 65 64 20 54 43 4c 5f 4c 45  /91 Added TCL_LE
3770: 41 56 45 5f 45 52 52 5f 4d 53 47 20 66 6c 61 67  AVE_ERR_MSG flag
3780: 20 74 6f 20 70 72 6f 63 65 64 75 72 65 73 20 6c   to procedures l
3790: 69 6b 65 20 54 63 6c 5f 53 65 74 56 61 72 2e 0a  ike Tcl_SetVar..
37a0: 0a 31 30 30 2e 20 31 31 2f 37 2f 39 31 20 46 69  .100. 11/7/91 Fi
37b0: 78 65 64 20 62 75 67 20 69 6e 20 22 63 61 73 65  xed bug in "case
37c0: 22 20 77 68 65 72 65 20 22 69 6e 22 20 61 72 67  " where "in" arg
37d0: 75 6d 65 6e 74 20 63 6f 75 6c 64 6e 27 74 20 62  ument couldn't b
37e0: 65 20 6f 6d 69 74 74 65 64 0a 69 66 20 61 6c 6c  e omitted.if all
37f0: 20 63 61 73 65 20 62 72 61 6e 63 68 65 73 20 77   case branches w
3800: 65 72 65 20 65 6d 62 65 64 64 65 64 20 69 6e 20  ere embedded in 
3810: 61 20 73 69 6e 67 6c 65 20 6c 69 73 74 2e 0a 0a  a single list...
3820: 31 30 31 2e 20 31 31 2f 37 2f 39 31 20 53 77 69  101. 11/7/91 Swi
3830: 74 63 68 65 64 20 74 6f 20 75 73 65 20 22 70 69  tched to use "pi
3840: 64 5f 74 22 20 61 6e 64 20 22 75 69 64 5f 74 22  d_t" and "uid_t"
3850: 20 61 6e 64 20 6f 74 68 65 72 20 6f 66 66 69 63   and other offic
3860: 69 61 6c 0a 50 4f 53 49 43 20 74 79 70 65 73 20  ial.POSIC types 
3870: 61 6e 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f  and function pro
3880: 74 6f 74 79 70 65 73 2e 0a 0a 2d 2d 2d 2d 2d 2d  totypes...------
3890: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
38a0: 61 73 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 31  ased version 6.1
38b0: 2c 20 31 31 2f 37 2f 39 31 20 2d 2d 2d 2d 2d 2d  , 11/7/91 ------
38c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30  ------------..10
38d0: 32 2e 20 31 32 2f 32 2f 39 31 20 4d 6f 64 69 66  2. 12/2/91 Modif
38e0: 69 65 64 20 54 63 6c 5f 53 63 61 6e 45 6c 65 6d  ied Tcl_ScanElem
38f0: 65 6e 74 20 61 6e 64 20 54 63 6c 5f 43 6f 6e 76  ent and Tcl_Conv
3900: 65 72 74 45 6c 65 6d 65 6e 74 20 69 6e 20 73 65  ertElement in se
3910: 76 65 72 61 6c 0a 77 61 79 73 2e 20 20 46 69 72  veral.ways.  Fir
3920: 73 74 2c 20 61 6c 6c 6f 77 65 64 20 63 61 6c 6c  st, allowed call
3930: 65 72 20 74 6f 20 72 65 71 75 65 73 74 20 74 68  er to request th
3940: 61 74 20 6f 6e 6c 79 20 62 61 63 6b 73 6c 61 73  at only backslas
3950: 68 65 73 20 62 65 20 75 73 65 64 0a 28 6e 6f 20  hes be used.(no 
3960: 62 72 61 63 65 73 29 2e 20 20 53 65 63 6f 6e 64  braces).  Second
3970: 2c 20 6d 61 64 65 20 54 63 6c 5f 43 6f 6e 76 65  , made Tcl_Conve
3980: 72 74 45 6c 65 6d 65 6e 74 20 6d 6f 72 65 20 61  rtElement more a
3990: 67 67 72 65 73 73 69 76 65 20 69 6e 20 75 73 69  ggressive in usi
39a0: 6e 67 0a 62 61 63 6b 73 6c 61 73 68 65 73 20 66  ng.backslashes f
39b0: 6f 72 20 62 72 61 63 65 73 20 61 6e 64 20 71 75  or braces and qu
39c0: 6f 74 65 73 2e 0a 0a 31 30 33 2e 20 31 32 2f 35  otes...103. 12/5
39d0: 2f 39 31 20 41 64 64 65 64 20 22 74 79 70 65 22  /91 Added "type"
39e0: 2c 20 22 6c 73 74 61 74 22 2c 20 61 6e 64 20 22  , "lstat", and "
39f0: 72 65 61 64 6c 69 6e 6b 22 20 6f 70 74 69 6f 6e  readlink" option
3a00: 73 20 74 6f 20 22 66 69 6c 65 22 0a 63 6f 6d 6d  s to "file".comm
3a10: 61 6e 64 2c 20 70 6c 75 73 20 61 64 64 65 64 20  and, plus added 
3a20: 6e 65 77 20 22 74 79 70 65 22 20 65 6c 65 6d 65  new "type" eleme
3a30: 6e 74 20 74 6f 20 6f 75 74 70 75 74 20 6f 66 20  nt to output of 
3a40: 22 73 74 61 74 22 20 61 6e 64 20 22 6c 73 74 61  "stat" and "lsta
3a50: 74 22 0a 6f 70 74 69 6f 6e 73 2e 0a 0a 31 30 34  t".options...104
3a60: 2e 20 31 32 2f 31 30 2f 39 31 20 4d 61 6e 75 61  . 12/10/91 Manua
3a70: 6c 20 65 6e 74 72 69 65 73 20 68 61 64 20 66 69  l entries had fi
3a80: 72 73 74 20 6c 69 6e 65 73 20 74 68 61 74 20 63  rst lines that c
3a90: 61 75 73 65 64 20 22 6d 61 6e 22 20 70 72 6f 67  aused "man" prog
3aa0: 72 61 6d 0a 74 6f 20 74 72 79 20 77 65 69 72 64  ram.to try weird
3ab0: 20 70 72 65 70 72 6f 63 65 73 73 6f 72 2e 20 20   preprocessor.  
3ac0: 41 64 64 65 64 20 62 6c 61 6e 6b 20 63 6f 6d 6d  Added blank comm
3ad0: 65 6e 74 20 6c 69 6e 65 73 20 74 6f 20 66 69 78  ent lines to fix
3ae0: 20 70 72 6f 62 6c 65 6d 2e 0a 0a 31 30 35 2e 20   problem...105. 
3af0: 31 32 2f 31 36 2f 39 31 20 46 69 78 65 64 20 61  12/16/91 Fixed a
3b00: 20 66 65 77 20 62 75 67 73 20 69 6e 20 61 75 74   few bugs in aut
3b10: 6f 5f 6d 6b 69 6e 64 65 78 20 70 72 6f 63 3a 20  o_mkindex proc: 
3b20: 20 77 61 73 6e 27 74 20 68 61 6e 64 6c 69 6e 67   wasn't handling
3b30: 0a 65 72 72 6f 72 73 20 70 72 6f 70 65 72 6c 79  .errors properly
3b40: 2c 20 61 6e 64 20 68 61 64 6e 27 74 20 62 65 65  , and hadn't bee
3b50: 6e 20 75 70 67 72 61 64 65 64 20 66 6f 72 20 6e  n upgraded for n
3b60: 65 77 20 22 72 65 67 65 78 70 22 20 73 79 6e 74  ew "regexp" synt
3b70: 61 78 2e 0a 0a 31 30 36 2e 20 31 2f 32 2f 39 32  ax...106. 1/2/92
3b80: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 66   Fixed bug in "f
3b90: 69 6c 65 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65  ile" command whe
3ba0: 72 65 20 69 74 20 64 69 64 6e 27 74 20 70 72 6f  re it didn't pro
3bb0: 70 65 72 6c 79 20 68 61 6e 64 6c 65 0a 61 20 66  perly handle.a f
3bc0: 69 6c 65 20 6e 61 6d 65 73 20 63 6f 6e 74 61 69  ile names contai
3bd0: 6e 69 6e 67 20 74 69 6c 64 65 73 20 77 68 65 72  ning tildes wher
3be0: 65 20 74 68 65 20 69 6e 64 69 63 61 74 65 64 20  e the indicated 
3bf0: 75 73 65 72 20 64 6f 65 73 6e 27 74 20 65 78 69  user doesn't exi
3c00: 73 74 2e 0a 0a 31 30 37 2e 20 31 2f 32 2f 39 32  st...107. 1/2/92
3c10: 20 46 69 78 65 64 20 6c 6f 74 73 20 6f 66 20 63   Fixed lots of c
3c20: 61 73 65 73 20 69 6e 20 74 63 6c 55 6e 69 78 53  ases in tclUnixS
3c30: 74 72 2e 63 20 77 68 65 72 65 20 74 77 6f 20 64  tr.c where two d
3c40: 69 66 66 65 72 65 6e 74 0a 65 72 72 6e 6f 20 73  ifferent.errno s
3c50: 79 6d 62 6f 6c 73 20 28 65 2e 67 2e 20 45 57 4f  ymbols (e.g. EWO
3c60: 55 4c 44 42 4c 4f 43 4b 20 61 6e 64 20 45 41 47  ULDBLOCK and EAG
3c70: 41 49 4e 29 20 68 61 76 65 20 74 68 65 20 73 61  AIN) have the sa
3c80: 6d 65 20 6e 75 6d 62 65 72 3b 20 20 54 63 6c 0a  me number;  Tcl.
3c90: 77 69 6c 6c 20 6f 6e 6c 79 20 75 73 65 20 6f 6e  will only use on
3ca0: 65 20 6f 66 20 74 68 65 6d 2e 0a 0a 31 30 38 2e  e of them...108.
3cb0: 20 31 2f 32 2f 39 32 20 4c 6f 74 73 20 6f 66 20   1/2/92 Lots of 
3cc0: 63 68 61 6e 67 65 73 20 74 6f 20 63 6f 6e 66 69  changes to confi
3cd0: 67 75 72 61 74 69 6f 6e 20 73 63 72 69 70 74 20  guration script 
3ce0: 74 6f 20 68 61 6e 64 6c 65 20 6d 61 6e 79 20 6d  to handle many m
3cf0: 6f 72 65 0a 73 79 73 74 65 6d 73 20 6d 6f 72 65  ore.systems more
3d00: 20 67 72 61 63 65 66 75 6c 6c 79 2e 20 20 45 2e   gracefully.  E.
3d10: 67 2e 20 73 68 6f 75 6c 64 20 6e 6f 77 20 64 65  g. should now de
3d20: 74 65 63 74 20 74 68 65 20 62 6f 67 75 73 20 73  tect the bogus s
3d30: 74 72 74 6f 75 6c 20 74 68 61 74 0a 63 6f 6d 65  trtoul that.come
3d40: 73 20 77 69 74 68 20 41 49 58 20 61 6e 64 20 73  s with AIX and s
3d50: 75 62 73 74 69 74 75 74 65 20 54 63 6c 27 73 20  ubstitute Tcl's 
3d60: 6f 77 6e 20 76 65 72 73 69 6f 6e 20 69 6e 73 74  own version inst
3d70: 65 61 64 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ead...----------
3d80: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
3d90: 20 76 65 72 73 69 6f 6e 20 36 2e 32 2c 20 31 2f   version 6.2, 1/
3da0: 31 30 2f 39 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  10/92 ----------
3db0: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30 39 2e 20 31  --------..109. 1
3dc0: 2f 32 30 2f 39 32 20 43 6f 6e 66 69 67 20 64 69  /20/92 Config di
3dd0: 64 6e 27 74 20 68 61 76 65 20 63 6f 64 65 20 74  dn't have code t
3de0: 6f 20 61 63 74 75 61 6c 6c 79 20 75 73 65 20 22  o actually use "
3df0: 75 69 64 5f 74 22 20 76 61 72 69 61 62 6c 65 0a  uid_t" variable.
3e00: 74 6f 20 73 65 74 20 54 43 4c 5f 55 49 54 5f 54  to set TCL_UIT_T
3e10: 20 23 64 65 66 69 6e 65 2e 0a 0a 31 31 30 2e 20   #define...110. 
3e20: 32 2f 31 30 2f 39 32 20 54 63 6c 5f 45 76 61 6c  2/10/92 Tcl_Eval
3e30: 20 64 69 64 6e 27 74 20 70 72 6f 70 65 72 6c 79   didn't properly
3e40: 20 72 65 73 65 74 20 22 6e 75 6d 4c 65 76 65 6c   reset "numLevel
3e50: 73 22 20 76 61 72 69 61 62 6c 65 20 77 68 65 6e  s" variable when
3e60: 0a 74 6f 6f 2d 64 65 65 70 20 72 65 63 75 72 73  .too-deep recurs
3e70: 69 6f 6e 20 6f 63 63 75 72 72 65 64 2e 0a 0a 31  ion occurred...1
3e80: 31 31 2e 20 32 2f 32 39 2f 39 32 20 41 64 64 65  11. 2/29/92 Adde
3e90: 64 20 22 6f 6e 22 20 61 6e 64 20 22 6f 66 66 22  d "on" and "off"
3ea0: 20 74 6f 20 6b 65 79 77 6f 72 64 73 20 61 63 63   to keywords acc
3eb0: 65 70 74 65 64 20 62 79 20 54 63 6c 5f 47 65 74  epted by Tcl_Get
3ec0: 42 6f 6f 6c 65 61 6e 2e 0a 0a 31 31 32 2e 20 33  Boolean...112. 3
3ed0: 2f 31 39 2f 39 32 20 43 6f 6e 66 69 67 20 77 61  /19/92 Config wa
3ee0: 73 6e 27 74 20 69 6e 73 74 61 6c 6c 69 6e 67 20  sn't installing 
3ef0: 64 65 66 61 75 6c 74 20 76 65 72 73 69 6f 6e 20  default version 
3f00: 6f 66 20 73 74 72 74 6f 64 2e 63 20 66 6f 72 0a  of strtod.c for.
3f10: 73 79 73 74 65 6d 73 20 74 68 61 74 20 64 6f 6e  systems that don
3f20: 27 74 20 68 61 76 65 20 6f 6e 65 20 69 6e 20 6c  't have one in l
3f30: 69 62 63 2e 61 2e 0a 0a 31 31 33 2e 20 33 2f 32  ibc.a...113. 3/2
3f40: 33 2f 39 32 20 46 69 78 65 64 20 62 75 67 20 69  3/92 Fixed bug i
3f50: 6e 20 74 63 6c 45 78 70 72 2e 63 20 77 68 65 72  n tclExpr.c wher
3f60: 65 20 6e 75 6d 62 65 72 73 20 77 69 74 68 20 6c  e numbers with l
3f70: 65 61 64 69 6e 67 20 22 2e 22 73 2c 0a 6c 69 6b  eading "."s,.lik
3f80: 65 20 30 2e 37 35 2c 20 63 6f 75 6c 64 6e 27 74  e 0.75, couldn't
3f90: 20 62 65 20 70 72 6f 70 65 72 6c 79 20 73 75 62   be properly sub
3fa0: 73 74 69 74 75 74 65 64 20 69 6e 74 6f 20 65 78  stituted into ex
3fb0: 70 72 65 73 73 69 6f 6e 73 20 77 69 74 68 0a 76  pressions with.v
3fc0: 61 72 69 61 62 6c 65 20 6f 72 20 63 6f 6d 6d 61  ariable or comma
3fd0: 6e 64 20 73 75 62 73 74 69 74 75 74 69 6f 6e 2e  nd substitution.
3fe0: 0a 0a 31 31 34 2e 20 33 2f 32 35 2f 39 32 20 46  ..114. 3/25/92 F
3ff0: 69 78 65 64 20 62 75 67 20 69 6e 20 74 63 6c 55  ixed bug in tclU
4000: 6e 69 78 41 5a 2e 63 20 77 68 65 72 65 20 22 67  nixAZ.c where "g
4010: 65 74 73 22 20 63 6f 6d 6d 61 6e 64 20 77 61 73  ets" command was
4020: 6e 27 74 0a 63 68 65 63 6b 69 6e 67 20 74 6f 20  n't.checking to 
4030: 6d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 69  make sure that i
4040: 74 20 77 61 73 20 61 62 6c 65 20 74 6f 20 77 72  t was able to wr
4050: 69 74 65 20 74 68 65 20 76 61 72 69 61 62 6c 65  ite the variable
4060: 20 4f 4b 2e 0a 0a 31 31 35 2e 20 34 2f 31 36 2f   OK...115. 4/16/
4070: 39 32 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  92 Fixed bug in 
4080: 74 63 6c 55 6e 69 78 41 5a 2e 63 20 77 68 65 72  tclUnixAZ.c wher
4090: 65 20 22 72 65 61 64 22 20 63 6f 6d 6d 61 6e 64  e "read" command
40a0: 20 64 69 64 6e 27 74 0a 63 6f 6d 70 75 74 65 20   didn't.compute 
40b0: 66 69 6c 65 20 73 69 7a 65 20 72 69 67 68 74 20  file size right 
40c0: 66 6f 72 20 64 65 76 69 63 65 20 66 69 6c 65 73  for device files
40d0: 2e 0a 0a 31 31 36 2e 20 34 2f 32 33 2f 39 32 20  ...116. 4/23/92 
40e0: 46 69 78 65 64 20 62 75 74 20 69 6e 20 74 63 6c  Fixed but in tcl
40f0: 43 6d 64 4d 5a 2e 63 20 77 68 65 72 65 20 22 74  CmdMZ.c where "t
4100: 72 61 63 65 20 76 69 6e 66 6f 22 20 77 61 73 20  race vinfo" was 
4110: 6f 76 65 72 77 72 69 74 69 6e 67 0a 74 68 65 20  overwriting.the 
4120: 74 72 61 63 65 20 63 6f 6d 6d 61 6e 64 2e 0a 0a  trace command...
4130: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
4140: 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69  - Released versi
4150: 6f 6e 20 36 2e 33 2c 20 35 2f 31 2f 39 32 20 2d  on 6.3, 5/1/92 -
4160: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
4170: 2d 0a 0a 31 31 37 2e 20 35 2f 31 2f 39 32 20 41  -..117. 5/1/92 A
4180: 64 64 65 64 20 54 63 6c 5f 47 6c 6f 62 61 6c 45  dded Tcl_GlobalE
4190: 76 61 6c 2e 0a 0a 31 31 38 2e 20 36 2f 31 2f 39  val...118. 6/1/9
41a0: 32 20 43 68 61 6e 67 65 64 20 61 75 74 6f 2d 6c  2 Changed auto-l
41b0: 6f 61 64 20 66 61 63 69 6c 69 74 79 20 74 6f 20  oad facility to 
41c0: 73 6f 75 72 63 65 20 66 69 6c 65 73 20 61 74 20  source files at 
41d0: 67 6c 6f 62 61 6c 20 6c 65 76 65 6c 2e 0a 0a 31  global level...1
41e0: 31 39 2e 20 36 2f 38 2f 39 32 20 54 63 6c 5f 50  19. 6/8/92 Tcl_P
41f0: 61 72 73 65 56 61 72 20 77 61 73 6e 27 74 20 61  arseVar wasn't a
4200: 6c 77 61 79 73 20 73 65 74 74 69 6e 67 20 74 65  lways setting te
4210: 72 6d 50 74 72 20 61 66 74 65 72 20 65 72 72 6f  rmPtr after erro
4220: 72 73 2c 20 77 68 69 63 68 0a 73 6f 6d 65 74 69  rs, which.someti
4230: 6d 65 73 20 63 61 75 73 65 64 20 63 6f 72 65 20  mes caused core 
4240: 64 75 6d 70 73 2e 0a 0a 31 32 30 2e 20 36 2f 32  dumps...120. 6/2
4250: 31 2f 39 32 20 46 69 78 65 64 20 62 75 67 20 69  1/92 Fixed bug i
4260: 6e 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  n initialization
4270: 20 6f 66 20 72 65 67 65 78 70 20 70 61 74 74 65   of regexp patte
4280: 72 6e 20 63 61 63 68 65 2e 20 20 54 68 69 73 0a  rn cache.  This.
4290: 62 75 67 20 63 61 75 73 65 64 20 73 65 67 6d 65  bug caused segme
42a0: 6e 74 61 74 69 6f 6e 20 76 69 6f 6c 61 74 69 6f  ntation violatio
42b0: 6e 73 20 69 6e 20 72 65 67 65 78 70 20 63 6f 6d  ns in regexp com
42c0: 6d 61 6e 64 73 20 75 6e 64 65 72 20 73 6f 6d 65  mands under some
42d0: 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 0a 0a 31 32   conditions...12
42e0: 31 2e 20 36 2f 32 32 2f 39 32 20 43 68 61 6e 67  1. 6/22/92 Chang
42f0: 65 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  ed implementatio
4300: 6e 20 6f 66 20 22 67 6c 6f 62 22 20 63 6f 6d 6d  n of "glob" comm
4310: 61 6e 64 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65  and to eliminate
4320: 0a 74 72 61 69 6c 69 6e 67 20 73 6c 61 73 68 65  .trailing slashe
4330: 73 20 6f 6e 20 64 69 72 65 63 74 6f 72 79 20 6e  s on directory n
4340: 61 6d 65 73 3a 20 20 74 68 65 79 20 63 6f 6e 66  ames:  they conf
4350: 75 73 65 20 73 6f 6d 65 20 73 79 73 74 65 6d 73  use some systems
4360: 2e 20 20 54 68 65 72 65 0a 73 68 6f 75 6c 64 6e  .  There.shouldn
4370: 27 74 20 62 65 20 61 6e 79 20 75 73 65 72 2d 76  't be any user-v
4380: 69 73 69 62 6c 65 20 63 68 61 6e 67 65 73 20 69  isible changes i
4390: 6e 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20  n functionality 
43a0: 65 78 63 65 70 74 20 66 6f 72 20 6e 61 6d 65 73  except for names
43b0: 0a 69 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67  .in error messag
43c0: 65 73 20 6e 6f 74 20 68 61 76 69 6e 67 20 74 72  es not having tr
43d0: 61 69 6c 69 6e 67 20 73 6c 61 73 68 65 73 2e 0a  ailing slashes..
43e0: 0a 31 32 32 2e 20 37 2f 32 2f 39 32 20 46 69 78  .122. 7/2/92 Fix
43f0: 65 64 20 62 75 67 20 74 68 61 74 20 63 61 75 73  ed bug that caus
4400: 65 64 20 27 73 74 72 69 6e 67 20 6d 61 74 63 68  ed 'string match
4410: 20 2a 2a 20 22 22 27 20 74 6f 20 72 65 74 75 72   ** ""' to retur
4420: 6e 20 30 2e 0a 0a 31 32 33 2e 20 37 2f 32 2f 39  n 0...123. 7/2/9
4430: 32 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54  2 Fixed bug in T
4440: 63 6c 5f 43 72 65 61 74 65 43 6d 64 42 75 66 20  cl_CreateCmdBuf 
4450: 77 68 65 72 65 20 69 74 20 77 61 73 6e 27 74 20  where it wasn't 
4460: 69 6e 69 74 69 61 6c 69 7a 69 6e 67 0a 74 68 65  initializing.the
4470: 20 62 75 66 66 65 72 20 74 6f 20 61 6e 20 65 6d   buffer to an em
4480: 70 74 79 20 73 74 72 69 6e 67 2e 0a 0a 31 32 34  pty string...124
4490: 2e 20 37 2f 36 2f 39 32 20 46 69 78 65 64 20 62  . 7/6/92 Fixed b
44a0: 75 67 20 69 6e 20 22 63 61 73 65 22 20 63 6f 6d  ug in "case" com
44b0: 6d 61 6e 64 20 77 68 65 72 65 20 69 74 20 75 73  mand where it us
44c0: 65 64 20 4e 55 4c 4c 20 70 61 74 74 65 72 6e 20  ed NULL pattern 
44d0: 73 74 72 69 6e 67 0a 61 66 74 65 72 20 65 72 72  string.after err
44e0: 6f 72 73 20 69 6e 20 74 68 65 20 22 64 65 66 61  ors in the "defa
44f0: 75 6c 74 22 20 63 6c 61 75 73 65 2e 0a 0a 31 32  ult" clause...12
4500: 35 2e 20 37 2f 32 35 2f 39 32 20 53 70 65 65 64  5. 7/25/92 Speed
4510: 65 64 20 75 70 20 61 75 74 6f 5f 6c 6f 61 64 20  ed up auto_load 
4520: 70 72 6f 63 65 64 75 72 65 3a 20 20 64 6f 6e 27  procedure:  don'
4530: 74 20 72 65 72 65 61 64 20 61 6c 6c 20 74 68 65  t reread all the
4540: 20 69 6e 64 65 78 0a 66 69 6c 65 73 20 75 6e 6c   index.files unl
4550: 65 73 73 20 74 68 65 20 70 61 74 68 20 68 61 73  ess the path has
4560: 20 63 68 61 6e 67 65 64 2e 0a 0a 31 32 36 2e 20   changed...126. 
4570: 38 2f 33 2f 39 32 20 43 68 61 6e 67 65 64 20 74  8/3/92 Changed t
4580: 63 6c 55 6e 69 78 2e 68 20 74 6f 20 64 65 66 69  clUnix.h to defi
4590: 6e 65 20 4d 41 58 50 41 54 48 4c 45 4e 20 66 72  ne MAXPATHLEN fr
45a0: 6f 6d 20 50 41 54 48 5f 4d 41 58 2c 20 6e 6f 74  om PATH_MAX, not
45b0: 0a 5f 50 4f 53 49 58 5f 50 41 54 48 5f 4d 41 58  ._POSIX_PATH_MAX
45c0: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
45d0: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
45e0: 72 73 69 6f 6e 20 36 2e 34 2c 20 38 2f 37 2f 39  rsion 6.4, 8/7/9
45f0: 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  2 --------------
4600: 2d 2d 2d 2d 0a 0a 31 32 37 2e 20 38 2f 31 30 2f  ----..127. 8/10/
4610: 39 32 20 43 68 61 6e 67 65 64 20 74 63 6c 42 61  92 Changed tclBa
4620: 73 69 63 2e 63 20 73 6f 20 74 68 61 74 20 63 6f  sic.c so that co
4630: 6d 6d 65 6e 74 20 6c 69 6e 65 73 20 63 61 6e 20  mment lines can 
4640: 62 65 20 63 6f 6e 74 69 6e 75 65 64 20 62 79 0a  be continued by.
4650: 70 75 74 74 69 6e 67 20 61 20 62 61 63 6b 73 6c  putting a backsl
4660: 61 73 68 20 62 65 66 6f 72 65 20 74 68 65 20 6e  ash before the n
4670: 65 77 6c 69 6e 65 2e 0a 0a 31 32 38 2e 20 38 2f  ewline...128. 8/
4680: 32 31 2f 39 32 20 4d 6f 64 69 66 69 65 64 20 22  21/92 Modified "
4690: 75 6e 6b 6e 6f 77 6e 22 20 74 6f 20 61 6c 6c 6f  unknown" to allo
46a0: 77 20 74 68 65 20 73 6f 75 72 63 65 2d 69 6e 67  w the source-ing
46b0: 20 6f 66 20 61 20 66 69 6c 65 20 66 6f 72 0a 61   of a file for.a
46c0: 6e 20 61 75 74 6f 2d 6c 6f 61 64 20 74 6f 20 74  n auto-load to t
46d0: 72 69 67 67 65 72 20 6f 74 68 65 72 20 6e 65 73  rigger other nes
46e0: 74 65 64 20 61 75 74 6f 2d 6c 6f 61 64 73 2c 20  ted auto-loads, 
46f0: 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 72 65  as long as there
4700: 20 69 73 6e 27 74 0a 61 6e 79 20 72 65 63 75 72   isn't.any recur
4710: 73 69 6f 6e 20 6f 6e 20 74 68 65 20 73 61 6d 65  sion on the same
4720: 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 2e 0a 0a   command name...
4730: 31 32 39 2e 20 38 2f 32 35 2f 39 32 20 4d 6f 64  129. 8/25/92 Mod
4740: 69 66 69 65 64 20 22 66 6f 72 6d 61 74 22 20 63  ified "format" c
4750: 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 6c 6f 77 20  ommand to allow 
4760: 22 20 22 20 61 6e 64 20 22 2b 22 20 66 6c 61 67  " " and "+" flag
4770: 73 2c 20 61 6e 64 0a 61 6c 6c 6f 77 20 66 6c 61  s, and.allow fla
4780: 67 73 20 69 6e 20 61 6e 79 20 6f 72 64 65 72 2e  gs in any order.
4790: 0a 0a 31 33 30 2e 20 39 2f 31 34 2f 39 32 20 4d  ..130. 9/14/92 M
47a0: 6f 64 69 66 69 65 64 20 54 63 6c 5f 50 61 72 73  odified Tcl_Pars
47b0: 65 56 61 72 20 73 6f 20 74 68 61 74 20 69 74 20  eVar so that it 
47c0: 64 6f 65 73 6e 27 74 20 61 63 74 75 61 6c 6c 79  doesn't actually
47d0: 20 61 74 74 65 6d 70 74 0a 74 6f 20 6c 6f 6f 6b   attempt.to look
47e0: 20 75 70 20 74 68 65 20 76 61 72 69 61 62 6c 65   up the variable
47f0: 20 69 66 20 22 6e 6f 45 76 61 6c 22 20 6d 6f 64   if "noEval" mod
4800: 65 20 69 73 20 69 6e 20 65 66 66 65 63 74 20 69  e is in effect i
4810: 6e 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65  n the interprete
4820: 72 0a 28 69 74 20 6a 75 73 74 20 70 61 72 73 65  r.(it just parse
4830: 73 20 74 68 65 20 6e 61 6d 65 29 2e 20 20 54 68  s the name).  Th
4840: 69 73 20 61 76 6f 69 64 73 20 74 68 65 20 65 72  is avoids the er
4850: 72 6f 72 73 20 74 68 61 74 20 75 73 65 64 20 74  rors that used t
4860: 6f 20 6f 63 63 75 72 0a 69 6e 20 73 74 61 74 65  o occur.in state
4870: 6d 65 6e 74 73 20 6c 69 6b 65 20 22 65 78 70 72  ments like "expr
4880: 20 7b 5b 69 6e 66 6f 20 65 78 69 73 74 73 20 66   {[info exists f
4890: 6f 6f 5d 20 26 26 20 24 66 6f 6f 7d 22 2e 0a 0a  oo] && $foo}"...
48a0: 31 33 31 2e 20 39 2f 31 34 2f 39 32 20 46 69 78  131. 9/14/92 Fix
48b0: 65 64 20 62 75 67 20 69 6e 20 22 75 70 6c 65 76  ed bug in "uplev
48c0: 65 6c 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72  el" command wher
48d0: 65 20 69 74 20 64 69 64 6e 27 74 20 6f 75 74 70  e it didn't outp
48e0: 75 74 20 74 68 65 0a 63 6f 72 72 65 63 74 20 65  ut the.correct e
48f0: 72 72 6f 72 20 6d 65 73 73 61 67 65 20 69 66 20  rror message if 
4900: 61 20 6c 65 76 65 6c 20 77 61 73 20 73 70 65 63  a level was spec
4910: 69 66 69 65 64 20 62 75 74 20 6e 6f 20 63 6f 6d  ified but no com
4920: 6d 61 6e 64 2e 0a 0a 31 33 32 2e 20 39 2f 31 34  mand...132. 9/14
4930: 2f 39 32 20 52 65 6e 61 6d 65 64 20 6d 61 6e 75  /92 Renamed manu
4940: 61 6c 20 65 6e 74 72 69 65 73 20 74 6f 20 68 61  al entries to ha
4950: 76 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 6c 69  ve extensions li
4960: 6b 65 20 2e 33 20 61 6e 64 20 2e 6e 2c 0a 61 6e  ke .3 and .n,.an
4970: 64 20 61 64 64 65 64 20 22 69 6e 73 74 61 6c 6c  d added "install
4980: 22 20 74 61 72 67 65 74 20 74 6f 20 4d 61 6b 65  " target to Make
4990: 66 69 6c 65 2e 0a 0a 31 33 33 2e 20 39 2f 31 38  file...133. 9/18
49a0: 2f 39 32 20 4d 6f 64 69 66 69 65 64 20 22 75 6e  /92 Modified "un
49b0: 6b 6e 6f 77 6e 22 20 63 6f 6d 6d 61 6e 64 20 74  known" command t
49c0: 6f 20 65 6d 75 6c 61 74 65 20 21 21 2c 20 21 3c  o emulate !!, !<
49d0: 6e 75 6d 3e 2c 20 61 6e 64 0a 5e 3c 6f 6c 64 3e  num>, and.^<old>
49e0: 5e 3c 6e 65 77 3e 20 63 73 68 20 68 69 73 74 6f  ^<new> csh histo
49f0: 72 79 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73  ry substitutions
4a00: 2e 0a 0a 31 33 34 2e 20 39 2f 32 31 2f 39 32 20  ...134. 9/21/92 
4a10: 4d 61 64 65 20 74 68 65 20 63 6f 6e 66 69 67 20  Made the config 
4a20: 73 63 72 69 70 74 20 63 6c 65 76 65 72 65 72 20  script cleverer 
4a30: 61 62 6f 75 74 20 66 69 67 75 72 69 6e 67 20 6f  about figuring o
4a40: 75 74 20 77 68 69 63 68 0a 73 77 69 74 63 68 65  ut which.switche
4a50: 73 20 74 6f 20 70 61 73 73 20 74 6f 20 22 6e 6d  s to pass to "nm
4a60: 22 2e 0a 0a 31 33 35 2e 20 39 2f 32 33 2f 39 32  "...135. 9/23/92
4a70: 20 46 69 78 65 64 20 74 63 6c 56 61 72 2e 63 20   Fixed tclVar.c 
4a80: 74 6f 20 62 65 20 73 75 72 65 20 74 6f 20 63 6f  to be sure to co
4a90: 70 79 20 66 6c 61 67 73 20 77 68 65 6e 20 67 72  py flags when gr
4aa0: 6f 77 69 6e 67 20 76 61 72 69 61 62 6c 65 73 2e  owing variables.
4ab0: 0a 55 73 65 64 20 74 6f 20 66 6f 72 67 65 74 20  .Used to forget 
4ac0: 61 62 6f 75 74 20 74 72 61 63 65 73 20 69 6e 20  about traces in 
4ad0: 70 72 6f 67 72 65 73 73 20 61 6e 64 20 6d 61 6b  progress and mak
4ae0: 65 20 65 78 74 72 61 20 72 65 63 75 72 73 69 76  e extra recursiv
4af0: 65 20 63 61 6c 6c 73 0a 6f 6e 20 74 72 61 63 65  e calls.on trace
4b00: 20 70 72 6f 63 73 2e 0a 0a 31 33 36 2e 20 39 2f   procs...136. 9/
4b10: 32 38 2f 39 32 20 46 69 78 65 64 20 62 75 67 20  28/92 Fixed bug 
4b20: 69 6e 20 61 75 74 6f 5f 72 65 73 65 74 20 77 68  in auto_reset wh
4b30: 65 72 65 20 69 74 20 77 61 73 20 75 6e 73 65 74  ere it was unset
4b40: 74 69 6e 67 20 76 61 72 69 61 62 6c 65 73 0a 74  ting variables.t
4b50: 68 61 74 20 6d 69 67 68 74 20 6e 6f 74 20 65 78  hat might not ex
4b60: 69 73 74 2e 0a 0a 31 33 37 2e 20 31 30 2f 37 2f  ist...137. 10/7/
4b70: 39 32 20 43 68 61 6e 67 65 64 20 22 70 61 72 72  92 Changed "parr
4b80: 61 79 22 20 6c 69 62 72 61 72 79 20 70 72 6f 63  ay" library proc
4b90: 65 64 75 72 65 20 74 6f 20 70 72 69 6e 74 20 61  edure to print a
4ba0: 6e 79 20 61 72 72 61 79 0a 61 63 63 65 73 73 69  ny array.accessi
4bb0: 62 6c 65 20 74 6f 20 63 61 6c 6c 65 72 2c 20 6c  ble to caller, l
4bc0: 6f 63 61 6c 20 6f 72 20 67 6c 6f 62 61 6c 2e 0a  ocal or global..
4bd0: 0a 31 33 38 2e 20 31 30 2f 31 35 2f 39 32 20 46  .138. 10/15/92 F
4be0: 69 78 65 64 20 62 75 67 20 77 68 65 72 65 20 70  ixed bug where p
4bf0: 72 6f 70 61 67 61 74 69 6f 6e 20 6f 66 20 6e 65  ropagation of ne
4c00: 77 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61  w environment va
4c10: 72 69 61 62 6c 65 0a 76 61 6c 75 65 73 20 61 6d  riable.values am
4c20: 6f 6e 67 20 69 6e 74 65 72 70 72 65 74 65 72 73  ong interpreters
4c30: 20 74 6f 6f 6b 20 4e 21 20 74 69 6d 65 20 69 66   took N! time if
4c40: 20 74 68 65 72 65 20 65 78 69 73 74 20 4e 20 69   there exist N i
4c50: 6e 74 65 72 70 72 65 74 65 72 73 2e 0a 0a 31 33  nterpreters...13
4c60: 39 2e 20 31 30 2f 31 36 2f 39 32 20 43 68 61 6e  9. 10/16/92 Chan
4c70: 67 65 64 20 61 75 74 6f 5f 72 65 73 65 74 20 70  ged auto_reset p
4c80: 72 6f 63 65 64 75 72 65 20 73 6f 20 74 68 61 74  rocedure so that
4c90: 20 69 74 20 61 6c 73 6f 20 64 65 6c 65 74 65 73   it also deletes
4ca0: 20 61 6e 79 0a 65 78 69 73 74 69 6e 67 20 70 72   any.existing pr
4cb0: 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 61 72  ocedures that ar
4cc0: 65 20 69 6e 20 74 68 65 20 61 75 74 6f 5f 6c 6f  e in the auto_lo
4cd0: 61 64 20 69 6e 64 65 78 20 28 74 68 65 20 61 73  ad index (the as
4ce0: 73 75 6d 70 74 69 6f 6e 20 69 73 0a 74 68 61 74  sumption is.that
4cf0: 20 74 68 65 79 20 73 68 6f 75 6c 64 20 62 65 20   they should be 
4d00: 72 65 2d 6c 6f 61 64 65 64 20 74 6f 20 67 65 74  re-loaded to get
4d10: 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73   the latest vers
4d20: 69 6f 6e 73 29 2e 0a 0a 31 34 30 2e 20 31 30 2f  ions)...140. 10/
4d30: 32 31 2f 39 32 20 46 69 78 65 64 20 62 75 67 20  21/92 Fixed bug 
4d40: 74 68 61 74 20 63 61 75 73 65 64 20 6c 69 73 74  that caused list
4d50: 73 20 74 6f 20 62 65 20 69 6e 63 6f 72 72 65 63  s to be incorrec
4d60: 74 6c 79 20 67 65 6e 65 72 61 74 65 64 0a 66 6f  tly generated.fo
4d70: 72 20 65 6c 65 6d 65 6e 74 73 20 74 68 61 74 20  r elements that 
4d80: 63 6f 6e 74 61 69 6e 65 64 20 62 61 63 6b 73 6c  contained backsl
4d90: 61 73 68 2d 6e 65 77 6c 69 6e 65 20 73 65 71 75  ash-newline sequ
4da0: 65 6e 63 65 73 2e 0a 0a 31 34 31 2e 20 31 32 2f  ences...141. 12/
4db0: 39 2f 39 32 20 41 64 64 65 64 20 73 75 70 70 6f  9/92 Added suppo
4dc0: 72 74 20 66 6f 72 20 54 43 4c 5f 4c 49 42 52 41  rt for TCL_LIBRA
4dd0: 52 59 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76  RY environment v
4de0: 61 72 69 61 62 6c 65 3a 20 20 75 73 65 0a 69 74  ariable:  use.it
4df0: 20 61 73 20 6c 69 62 72 61 72 79 20 6c 6f 63 61   as library loca
4e00: 74 69 6f 6e 20 69 66 20 69 74 27 73 20 70 72 65  tion if it's pre
4e10: 73 65 6e 74 2e 0a 0a 31 34 32 2e 20 31 32 2f 39  sent...142. 12/9
4e20: 2f 39 32 20 41 64 64 65 64 20 22 69 6e 66 6f 20  /92 Added "info 
4e30: 63 6f 6d 70 6c 65 74 65 22 20 63 6f 6d 6d 61 6e  complete" comman
4e40: 64 2c 20 54 63 6c 5f 43 6f 6d 6d 61 6e 64 43 6f  d, Tcl_CommandCo
4e50: 6d 70 6c 65 74 65 20 70 72 6f 63 65 64 75 72 65  mplete procedure
4e60: 2e 0a 0a 31 34 33 2e 20 31 32 2f 31 36 2f 39 32  ...143. 12/16/92
4e70: 20 43 68 61 6e 67 65 64 20 74 68 65 20 4d 61 6b   Changed the Mak
4e80: 65 66 69 6c 65 20 74 6f 20 63 68 65 63 6b 20 74  efile to check t
4e90: 6f 20 6d 61 6b 65 20 73 75 72 65 20 22 63 6f 6e  o make sure "con
4ea0: 66 69 67 22 20 68 61 73 20 62 65 65 6e 0a 72 75  fig" has been.ru
4eb0: 6e 20 28 63 61 6e 27 74 20 72 75 6e 20 63 6f 6e  n (can't run con
4ec0: 66 69 67 20 64 69 72 65 63 74 6c 79 20 66 72 6f  fig directly fro
4ed0: 6d 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 20 62  m the Makefile b
4ee0: 65 63 61 75 73 65 20 69 74 20 6d 6f 64 69 66 69  ecause it modifi
4ef0: 65 73 20 74 68 65 0a 4d 61 6b 65 66 69 6c 65 3b  es the.Makefile;
4f00: 20 20 74 68 75 73 20 6d 61 6b 65 20 68 61 73 20    thus make has 
4f10: 74 6f 20 62 65 20 72 75 6e 20 61 67 61 69 6e 20  to be run again 
4f20: 61 66 74 65 72 20 72 75 6e 6e 69 6e 67 20 63 6f  after running co
4f30: 6e 66 69 67 29 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  nfig)...--------
4f40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
4f50: 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 35 2c 20  ed version 6.5, 
4f60: 31 32 2f 31 37 2f 39 32 20 2d 2d 2d 2d 2d 2d 2d  12/17/92 -------
4f70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 34 34  -----------..144
4f80: 2e 20 31 32 2f 32 31 2f 39 32 20 43 68 61 6e 67  . 12/21/92 Chang
4f90: 65 64 20 63 6f 6e 66 69 67 20 74 6f 20 6c 6f 6f  ed config to loo
4fa0: 6b 20 69 6e 20 73 65 76 65 72 61 6c 20 70 6c 61  k in several pla
4fb0: 63 65 73 20 66 6f 72 20 6c 69 62 63 20 66 69 6c  ces for libc fil
4fc0: 65 2e 0a 0a 31 34 35 2e 20 31 32 2f 32 33 2f 39  e...145. 12/23/9
4fd0: 32 20 41 64 64 65 64 20 22 65 6c 73 65 69 66 22  2 Added "elseif"
4fe0: 20 73 75 70 70 6f 72 74 20 74 6f 20 69 66 2e 20   support to if. 
4ff0: 20 41 6c 73 6f 2c 20 22 74 68 65 6e 22 2c 20 22   Also, "then", "
5000: 65 6c 73 65 22 2c 20 61 6e 64 0a 22 65 6c 73 65  else", and."else
5010: 69 66 22 20 6d 61 79 20 6e 6f 20 6c 6f 6e 67 65  if" may no longe
5020: 72 20 62 65 20 61 62 62 72 65 76 69 61 74 65 64  r be abbreviated
5030: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
5040: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
5050: 2a 2a 2a 0a 0a 31 34 36 2e 20 31 32 2f 32 38 2f  ***..146. 12/28/
5060: 39 32 20 43 68 61 6e 67 65 64 20 22 70 75 74 73  92 Changed "puts
5070: 22 20 61 6e 64 20 22 72 65 61 64 22 20 74 6f 20  " and "read" to 
5080: 73 75 70 70 6f 72 74 20 69 6e 69 74 69 61 6c 20  support initial 
5090: 22 2d 6e 6f 6e 65 77 6c 69 6e 65 22 0a 73 77 69  "-nonewline".swi
50a0: 74 63 68 20 69 6e 73 74 65 61 64 20 6f 66 20 61  tch instead of a
50b0: 64 64 69 74 69 6f 6e 61 6c 20 22 6e 6f 6e 65 77  dditional "nonew
50c0: 6c 69 6e 65 22 20 61 72 67 75 6d 65 6e 74 2e 20  line" argument. 
50d0: 20 54 68 65 20 6f 6c 64 20 66 6f 72 6d 20 69 73   The old form is
50e0: 0a 73 74 69 6c 6c 20 73 75 70 70 6f 72 74 65 64  .still supported
50f0: 2c 20 62 75 74 20 69 74 20 69 73 20 64 69 73 63  , but it is disc
5100: 6f 75 72 61 67 65 64 20 61 6e 64 20 69 73 20 6e  ouraged and is n
5110: 6f 20 6c 6f 6e 67 65 72 20 64 6f 63 75 6d 65 6e  o longer documen
5120: 74 65 64 2e 0a 41 6c 73 6f 20 63 68 61 6e 67 65  ted..Also change
5130: 64 20 22 70 75 74 73 22 20 74 6f 20 6d 61 6b 65  d "puts" to make
5140: 20 74 68 65 20 66 69 6c 65 20 61 72 67 75 6d 65   the file argume
5150: 6e 74 20 64 65 66 61 75 6c 74 20 74 6f 20 73 74  nt default to st
5160: 64 6f 75 74 3a 20 65 2e 67 2e 0a 22 70 75 74 73  dout: e.g.."puts
5170: 20 66 6f 6f 22 20 77 69 6c 6c 20 70 72 69 6e 74   foo" will print
5180: 20 66 6f 6f 20 6f 6e 20 73 74 61 6e 64 61 72 64   foo on standard
5190: 20 6f 75 74 70 75 74 2e 0a 0a 31 34 37 2e 20 31   output...147. 1
51a0: 2f 36 2f 39 33 20 46 69 78 65 64 20 62 75 67 20  /6/93 Fixed bug 
51b0: 77 68 65 72 65 62 79 20 62 61 63 6b 73 6c 61 73  whereby backslas
51c0: 68 2d 6e 65 77 6c 69 6e 65 20 77 61 73 6e 27 74  h-newline wasn't
51d0: 20 77 6f 72 6b 69 6e 67 20 77 68 65 6e 0a 74 79   working when.ty
51e0: 70 65 64 20 69 6e 74 65 72 61 63 74 69 76 65 6c  ped interactivel
51f0: 79 2c 20 6f 72 20 69 6e 20 22 69 6e 66 6f 20 63  y, or in "info c
5200: 6f 6d 70 6c 65 74 65 22 2e 0a 0a 31 34 38 2e 20  omplete"...148. 
5210: 31 2f 32 32 2f 39 33 20 46 69 78 65 64 20 62 75  1/22/93 Fixed bu
5220: 67 73 20 69 6e 20 22 6c 72 65 70 6c 61 63 65 22  gs in "lreplace"
5230: 20 61 6e 64 20 22 6c 69 6e 73 65 72 74 22 20 77   and "linsert" w
5240: 68 65 72 65 20 63 6c 6f 73 65 0a 71 75 6f 74 65  here close.quote
5250: 73 20 77 65 72 65 20 62 65 69 6e 67 20 6c 6f 73  s were being los
5260: 74 20 66 72 6f 6d 20 6c 61 73 74 20 65 6c 65 6d  t from last elem
5270: 65 6e 74 20 62 65 66 6f 72 65 20 72 65 70 6c 61  ent before repla
5280: 63 65 6d 65 6e 74 20 6f 72 0a 69 6e 73 65 72 74  cement or.insert
5290: 69 6f 6e 2e 0a 0a 31 34 39 2e 20 31 2f 32 39 2f  ion...149. 1/29/
52a0: 39 33 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  93 Fixed bug in 
52b0: 54 63 6c 5f 41 73 73 65 6d 62 6c 65 43 6d 64 20  Tcl_AssembleCmd 
52c0: 77 68 65 72 65 20 69 74 20 77 61 73 6e 27 74 20  where it wasn't 
52d0: 72 65 71 75 69 72 69 6e 67 0a 61 20 6e 65 77 6c  requiring.a newl
52e0: 69 6e 65 20 61 74 20 74 68 65 20 65 6e 64 20 6f  ine at the end o
52f0: 66 20 61 20 6c 69 6e 65 20 62 65 66 6f 72 65 20  f a line before 
5300: 63 6f 6e 73 69 64 65 72 69 6e 67 20 61 20 63 6f  considering a co
5310: 6d 6d 61 6e 64 20 74 6f 20 62 65 0a 63 6f 6d 70  mmand to be.comp
5320: 6c 65 74 65 2e 20 20 54 68 65 20 62 75 67 20 63  lete.  The bug c
5330: 61 75 73 65 64 20 73 6f 6d 65 20 76 65 72 79 20  aused some very 
5340: 6c 6f 6e 67 20 6c 69 6e 65 73 20 69 6e 20 73 63  long lines in sc
5350: 72 69 70 74 20 66 69 6c 65 73 20 74 6f 0a 62 65  ript files to.be
5360: 20 70 72 6f 63 65 73 73 65 64 20 61 73 20 6d 75   processed as mu
5370: 6c 74 69 70 6c 65 20 73 65 70 61 72 61 74 65 20  ltiple separate 
5380: 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 31 35 30 2e 20  commands...150. 
5390: 31 2f 32 39 2f 39 33 20 56 61 72 69 6f 75 73 20  1/29/93 Various 
53a0: 63 68 61 6e 67 65 73 20 69 6e 20 4d 61 6b 65 66  changes in Makef
53b0: 69 6c 65 20 74 6f 20 61 64 64 20 6d 6f 72 65 20  ile to add more 
53c0: 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 0a 6f 70  configuration.op
53d0: 74 69 6f 6e 73 2c 20 73 69 6d 70 6c 69 66 79 20  tions, simplify 
53e0: 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2c 20 66 69  installation, fi
53f0: 78 20 62 75 67 73 20 28 65 2e 67 2e 20 64 6f 6e  x bugs (e.g. don
5400: 27 74 20 75 73 65 20 2d 66 20 73 77 69 74 63 68  't use -f switch
5410: 0a 66 6f 72 20 63 70 29 2c 20 65 74 63 2e 0a 0a  .for cp), etc...
5420: 31 35 31 2e 20 31 2f 32 39 2f 39 33 20 43 68 61  151. 1/29/93 Cha
5430: 6e 67 65 64 20 22 6e 61 6d 65 31 22 20 61 6e 64  nged "name1" and
5440: 20 22 6e 61 6d 65 32 22 20 69 64 65 6e 74 69 66   "name2" identif
5450: 69 65 72 73 20 74 6f 20 22 70 61 72 74 31 22 20  iers to "part1" 
5460: 61 6e 64 0a 22 70 61 72 74 32 22 20 74 6f 20 61  and."part2" to a
5470: 76 6f 69 64 20 6e 61 6d 65 20 63 6f 6e 66 6c 69  void name confli
5480: 63 74 73 20 77 69 74 68 20 73 74 75 70 69 64 20  cts with stupid 
5490: 43 2b 2b 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  C++ implementati
54a0: 6f 6e 73 20 74 68 61 74 0a 75 73 65 20 22 6e 61  ons that.use "na
54b0: 6d 65 31 22 20 61 6e 64 20 22 6e 61 6d 65 32 22  me1" and "name2"
54c0: 20 69 6e 20 61 20 72 65 73 65 72 76 65 64 20 77   in a reserved w
54d0: 61 79 2e 0a 0a 31 35 32 2e 20 32 2f 31 2f 39 33  ay...152. 2/1/93
54e0: 20 41 64 64 65 64 20 22 70 75 74 65 6e 76 22 20   Added "putenv" 
54f0: 70 72 6f 63 65 64 75 72 65 20 74 6f 20 72 65 70  procedure to rep
5500: 6c 61 63 65 20 74 68 65 20 73 74 61 6e 64 61 72  lace the standar
5510: 64 20 73 79 73 74 65 6d 0a 76 65 72 73 69 6f 6e  d system.version
5520: 20 73 6f 20 74 68 61 74 20 69 74 20 77 69 6c 6c   so that it will
5530: 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 20   work correctly 
5540: 77 69 74 68 20 54 63 6c 27 73 20 65 6e 76 69 72  with Tcl's envir
5550: 6f 6e 6d 65 6e 74 20 68 61 6e 64 6c 69 6e 67 2e  onment handling.
5560: 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
5570: 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72  --- Released ver
5580: 73 69 6f 6e 20 36 2e 36 2c 20 32 2f 35 2f 39 33  sion 6.6, 2/5/93
5590: 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
55a0: 2d 2d 2d 0a 0a 31 35 33 2e 20 32 2f 31 30 2f 39  ---..153. 2/10/9
55b0: 33 20 46 69 78 65 64 20 62 75 67 73 20 69 6e 20  3 Fixed bugs in 
55c0: 63 6f 6e 66 69 67 20 73 63 72 69 70 74 3a 20 20  config script:  
55d0: 6d 69 73 73 69 6e 67 20 22 65 6e 64 69 66 22 20  missing "endif" 
55e0: 69 6e 20 6c 69 62 63 20 6c 6f 6f 70 2c 0a 61 6e  in libc loop,.an
55f0: 64 20 74 72 69 65 64 20 74 6f 20 75 73 65 20 73  d tried to use s
5600: 74 72 6e 63 61 73 65 63 6d 70 2e 63 20 69 6e 73  trncasecmp.c ins
5610: 74 65 61 64 20 6f 66 20 73 74 72 63 61 73 65 63  tead of strcasec
5620: 6d 70 2e 63 2e 0a 0a 31 35 34 2e 20 32 2f 31 30  mp.c...154. 2/10
5630: 2f 39 33 20 4d 61 6b 65 66 69 6c 65 20 69 6d 70  /93 Makefile imp
5640: 72 6f 76 65 6d 65 6e 74 73 3a 20 20 61 64 64 65  rovements:  adde
5650: 64 20 52 41 4e 4c 49 42 20 76 61 72 69 61 62 6c  d RANLIB variabl
5660: 65 20 66 6f 72 20 65 61 73 69 65 72 0a 53 79 73  e for easier.Sys
5670: 2d 56 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  -V configuration
5680: 2c 20 61 64 64 65 64 20 53 48 45 4c 4c 20 76 61  , added SHELL va
5690: 72 69 61 62 6c 65 20 66 6f 72 20 53 47 49 20 73  riable for SGI s
56a0: 79 73 74 65 6d 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d  ystems...-------
56b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
56c0: 73 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 37 2c  sed version 6.7,
56d0: 20 32 2f 31 31 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d   2/11/93 -------
56e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 35 33  -----------..153
56f0: 2e 20 32 2f 36 2f 39 33 20 43 68 61 6e 67 65 73  . 2/6/93 Changes
5700: 20 69 6e 20 62 61 63 6b 73 6c 61 73 68 20 70 72   in backslash pr
5710: 6f 63 65 73 73 69 6e 67 3a 0a 20 20 20 20 2d 20  ocessing:.    - 
5720: 5c 43 78 2c 20 5c 4d 78 2c 20 5c 43 4d 78 2c 20  \Cx, \Mx, \CMx, 
5730: 5c 65 20 73 65 71 75 65 6e 63 65 73 20 6e 6f 20  \e sequences no 
5740: 6c 6f 6e 67 65 72 20 73 70 65 63 69 61 6c 0a 20  longer special. 
5750: 20 20 20 2d 20 5c 3c 6e 65 77 6c 69 6e 65 3e 20     - \<newline> 
5760: 61 6c 73 6f 20 65 61 74 73 20 75 70 20 61 6e 79  also eats up any
5770: 20 73 70 61 63 65 20 61 66 74 65 72 20 74 68 65   space after the
5780: 20 6e 65 77 6c 69 6e 65 2c 20 72 65 70 6c 61 63   newline, replac
5790: 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 77 68  ing.      the wh
57a0: 6f 6c 65 20 73 65 71 75 65 6e 63 65 20 77 69 74  ole sequence wit
57b0: 68 20 61 20 73 69 6e 67 6c 65 20 73 70 61 63 65  h a single space
57c0: 20 63 68 61 72 61 63 74 65 72 0a 20 20 20 20 2d   character.    -
57d0: 20 48 65 78 20 73 65 71 75 65 6e 63 65 73 20 6c   Hex sequences l
57e0: 69 6b 65 20 5c 78 32 34 20 61 72 65 20 6e 6f 77  ike \x24 are now
57f0: 20 73 75 70 70 6f 72 74 65 64 2c 20 61 6c 6f 6e   supported, alon
5800: 67 20 77 69 74 68 20 41 4e 53 49 20 43 27 73 20  g with ANSI C's 
5810: 5c 61 2e 0a 20 20 20 20 2d 20 22 66 6f 72 6d 61  \a..    - "forma
5820: 74 22 20 6e 6f 20 6c 6f 6e 67 65 72 20 64 6f 65  t" no longer doe
5830: 73 20 62 61 63 6b 73 6c 61 73 68 20 70 72 6f 63  s backslash proc
5840: 65 73 73 69 6e 67 20 6f 6e 20 69 74 73 20 66 6f  essing on its fo
5850: 72 6d 61 74 20 73 74 72 69 6e 67 0a 20 20 20 20  rmat string.    
5860: 2d 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6c 6f  - there is no lo
5870: 6e 67 65 72 20 61 6e 79 20 73 70 65 63 69 61 6c  nger any special
5880: 20 6d 65 61 6e 69 6e 67 20 74 6f 20 61 20 30 20   meaning to a 0 
5890: 72 65 74 75 72 6e 20 76 61 6c 75 65 20 66 72 6f  return value fro
58a0: 6d 0a 20 20 20 20 20 20 54 63 6c 5f 42 61 63 6b  m.      Tcl_Back
58b0: 73 6c 61 73 68 0a 20 20 20 20 2d 20 75 6e 6b 6e  slash.    - unkn
58c0: 6f 77 6e 20 62 61 63 6b 73 6c 61 73 68 20 73 65  own backslash se
58d0: 71 75 65 6e 63 65 73 2c 20 6c 69 6b 65 20 28 65  quences, like (e
58e0: 2e 67 2e 20 5c 2a 29 2c 20 61 72 65 20 72 65 70  .g. \*), are rep
58f0: 6c 61 63 65 64 20 77 69 74 68 0a 20 20 20 20 20  laced with.     
5900: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63   the following c
5910: 68 61 72 61 63 74 65 72 20 28 65 2e 67 2e 20 2a  haracter (e.g. *
5920: 29 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 6a 75  ), instead of ju
5930: 73 74 20 74 72 65 61 74 69 6e 67 20 74 68 65 0a  st treating the.
5940: 20 20 20 20 20 20 62 61 63 6b 73 6c 61 73 68 20        backslash 
5950: 61 73 20 61 6e 20 6f 72 64 69 6e 61 72 79 20 63  as an ordinary c
5960: 68 61 72 61 63 74 65 72 2e 0a 2a 2a 2a 20 50 4f  haracter..*** PO
5970: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
5980: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 35 34  IBILITY ***..154
5990: 2e 20 32 2f 36 2f 39 33 20 55 70 64 61 74 65 64  . 2/6/93 Updated
59a0: 20 61 6c 6c 20 63 6f 70 79 72 69 67 68 74 20 6e   all copyright n
59b0: 6f 74 69 63 65 73 2e 20 20 54 68 65 20 6d 65 61  otices.  The mea
59c0: 6e 69 6e 67 20 68 61 73 6e 27 74 20 63 68 61 6e  ning hasn't chan
59d0: 67 65 64 0a 61 74 20 61 6c 6c 20 62 75 74 20 74  ged.at all but t
59e0: 68 65 20 77 6f 72 64 69 6e 67 20 64 6f 65 73 20  he wording does 
59f0: 61 20 62 65 74 74 65 72 20 6a 6f 62 20 6f 66 20  a better job of 
5a00: 70 72 6f 74 65 63 74 69 6e 67 20 55 2e 43 2e 20  protecting U.C. 
5a10: 66 72 6f 6d 0a 6c 69 61 62 69 6c 69 74 79 20 28  from.liability (
5a20: 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 55 2e 43  according to U.C
5a30: 2e 20 6c 61 77 79 65 72 73 2c 20 61 6e 79 77 61  . lawyers, anywa
5a40: 79 29 2e 0a 0a 31 35 35 2e 20 32 2f 36 2f 39 33  y)...155. 2/6/93
5a50: 20 43 68 61 6e 67 65 64 20 22 72 65 67 73 75 62   Changed "regsub
5a60: 22 20 73 6f 20 74 68 61 74 20 69 74 20 6f 76 65  " so that it ove
5a70: 72 77 72 69 74 65 73 20 74 68 65 20 72 65 73 75  rwrites the resu
5a80: 6c 74 20 76 61 72 69 61 62 6c 65 0a 69 6e 20 61  lt variable.in a
5a90: 6c 6c 20 63 61 73 65 73 2c 20 65 76 65 6e 20 69  ll cases, even i
5aa0: 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6d 61  f there is no ma
5ab0: 74 63 68 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  tch..*** POTENTI
5ac0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
5ad0: 54 59 20 2a 2a 2a 0a 0a 31 35 36 2e 20 32 2f 38  TY ***..156. 2/8
5ae0: 2f 39 33 20 41 64 64 65 64 20 73 75 70 70 6f 72  /93 Added suppor
5af0: 74 20 66 6f 72 20 58 50 47 33 20 25 6e 24 20 63  t for XPG3 %n$ c
5b00: 6f 6e 76 65 72 73 69 6f 6e 20 73 70 65 63 69 66  onversion specif
5b10: 69 65 72 73 20 74 6f 20 22 66 6f 72 6d 61 74 22  iers to "format"
5b20: 0a 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 35 37 2e 20  .command...157. 
5b30: 32 2f 31 37 2f 39 33 20 46 69 78 65 64 20 62 75  2/17/93 Fixed bu
5b40: 67 20 69 6e 20 54 63 6c 5f 45 76 61 6c 20 77 68  g in Tcl_Eval wh
5b50: 65 72 65 20 65 72 72 6f 72 73 20 64 75 65 20 74  ere errors due t
5b60: 6f 20 69 6e 66 69 6e 69 74 65 0a 72 65 63 75 72  o infinite.recur
5b70: 73 69 6f 6e 20 63 6f 75 6c 64 20 72 65 73 75 6c  sion could resul
5b80: 74 20 69 6e 20 63 6f 72 65 20 64 75 6d 70 73 2e  t in core dumps.
5b90: 0a 0a 31 35 38 2e 20 32 2f 31 37 2f 39 33 20 49  ..158. 2/17/93 I
5ba0: 6d 70 72 6f 76 65 64 20 74 68 65 20 61 75 74 6f  mproved the auto
5bb0: 2d 6c 6f 61 64 20 6d 65 63 68 61 6e 69 73 6d 20  -load mechanism 
5bc0: 74 6f 20 64 65 61 6c 20 67 72 61 63 65 66 75 6c  to deal graceful
5bd0: 6c 79 20 28 69 2e 65 2e 0a 72 65 74 75 72 6e 20  ly (i.e..return 
5be0: 61 6e 20 65 72 72 6f 72 29 20 77 69 74 68 20 61  an error) with a
5bf0: 20 73 69 74 75 61 74 69 6f 6e 20 77 68 65 72 65   situation where
5c00: 20 61 20 6c 69 62 72 61 72 79 20 66 69 6c 65 20   a library file 
5c10: 74 68 61 74 20 73 75 70 70 6f 73 65 64 6c 79 0a  that supposedly.
5c20: 64 65 66 69 6e 65 73 20 61 20 70 72 6f 63 65 64  defines a proced
5c30: 75 72 65 20 64 6f 65 73 6e 27 74 20 61 63 74 75  ure doesn't actu
5c40: 61 6c 6c 79 20 64 65 66 69 6e 65 20 69 74 2e 0a  ally define it..
5c50: 0a 31 35 39 2e 20 32 2f 31 37 2f 39 33 20 52 65  .159. 2/17/93 Re
5c60: 6e 61 6d 65 64 20 54 63 6c 5f 55 6e 69 78 45 72  named Tcl_UnixEr
5c70: 72 6f 72 20 70 72 6f 63 65 64 75 72 65 20 74 6f  ror procedure to
5c80: 20 54 63 6c 5f 50 6f 73 69 78 45 72 72 6f 72 2c   Tcl_PosixError,
5c90: 20 61 6e 64 0a 63 68 61 6e 67 65 64 20 65 72 72   and.changed err
5ca0: 6f 72 43 6f 64 65 20 76 61 72 69 61 62 6c 65 20  orCode variable 
5cb0: 75 73 61 67 65 20 74 6f 20 75 73 65 20 50 4f 53  usage to use POS
5cc0: 49 58 20 61 73 20 6b 65 79 77 6f 72 64 20 69 6e  IX as keyword in
5cd0: 73 74 65 61 64 20 6f 66 0a 55 4e 49 58 2e 0a 2a  stead of.UNIX..*
5ce0: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
5cf0: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
5d00: 0a 0a 31 36 30 2e 20 32 2f 31 39 2f 39 33 20 43  ..160. 2/19/93 C
5d10: 68 61 6e 67 65 73 20 74 6f 20 65 78 65 63 20 61  hanges to exec a
5d20: 6e 64 20 70 72 6f 63 65 73 73 20 63 6f 6e 74 72  nd process contr
5d30: 6f 6c 3a 0a 20 20 20 20 2d 20 41 64 64 65 64 20  ol:.    - Added 
5d40: 73 75 70 70 6f 72 74 20 66 6f 72 20 3e 3e 2c 20  support for >>, 
5d50: 3e 26 2c 20 3e 3e 26 2c 20 7c 26 2c 20 3c 40 2c  >&, >>&, |&, <@,
5d60: 20 3e 40 2c 20 61 6e 64 20 3e 26 40 20 66 6f 72   >@, and >&@ for
5d70: 6d 73 20 6f 66 20 72 65 64 69 72 65 63 74 69 6f  ms of redirectio
5d80: 6e 2e 0a 20 20 20 20 2d 20 57 68 65 6e 20 65 78  n..    - When ex
5d90: 65 63 20 70 75 74 73 20 70 72 6f 63 65 73 73 65  ec puts processe
5da0: 73 20 69 6e 74 6f 20 62 61 63 6b 67 72 6f 75 6e  s into backgroun
5db0: 64 2c 20 69 74 20 72 65 74 75 72 6e 73 20 61 20  d, it returns a 
5dc0: 6c 69 73 74 20 6f 66 0a 20 20 20 20 20 20 74 68  list of.      th
5dd0: 65 69 72 20 70 69 64 73 20 61 73 20 72 65 73 75  eir pids as resu
5de0: 6c 74 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20  lt..    - Added 
5df0: 73 75 70 70 6f 72 74 20 66 6f 72 20 3c 66 69 6c  support for <fil
5e00: 65 2c 20 3e 66 69 6c 65 2c 20 65 74 63 2e 20 28  e, >file, etc. (
5e10: 69 2e 65 2e 20 6e 6f 20 73 70 61 63 65 20 62 65  i.e. no space be
5e20: 74 77 65 65 6e 0a 20 20 20 20 20 20 22 3e 22 20  tween.      ">" 
5e30: 61 6e 64 20 66 69 6c 65 20 6e 61 6d 65 2e 0a 20  and file name.. 
5e40: 20 20 20 2d 20 41 64 64 65 64 20 2d 6b 65 65 70     - Added -keep
5e50: 6e 65 77 6c 69 6e 65 20 6f 70 74 69 6f 6e 2e 0a  newline option..
5e60: 20 20 20 20 2d 20 44 65 6c 65 74 65 64 20 54 63      - Deleted Tc
5e70: 6c 5f 46 6f 72 6b 20 61 6e 64 20 54 63 6c 5f 57  l_Fork and Tcl_W
5e80: 61 69 74 50 69 64 73 20 70 72 6f 63 65 64 75 72  aitPids procedur
5e90: 65 73 20 28 6a 75 73 74 20 75 73 65 20 66 6f 72  es (just use for
5ea0: 6b 20 61 6e 64 0a 20 20 20 20 20 20 77 61 69 74  k and.      wait
5eb0: 70 69 64 20 69 6e 73 74 65 61 64 29 2e 0a 20 20  pid instead)..  
5ec0: 20 20 2d 20 41 64 64 65 64 20 77 61 69 74 70 69    - Added waitpi
5ed0: 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20  d compatibility 
5ee0: 70 72 6f 63 65 64 75 72 65 20 66 6f 72 20 73 79  procedure for sy
5ef0: 73 74 65 6d 73 20 74 68 61 74 20 64 6f 6e 27 74  stems that don't
5f00: 20 68 61 76 65 0a 20 20 20 20 20 20 69 74 2e 0a   have.      it..
5f10: 20 20 20 20 2d 20 41 64 64 65 64 20 54 63 6c 5f      - Added Tcl_
5f20: 52 65 61 70 44 65 74 61 63 68 65 64 50 72 6f 63  ReapDetachedProc
5f30: 73 20 70 72 6f 63 65 64 75 72 65 2e 0a 20 20 20  s procedure..   
5f40: 20 2d 20 43 68 61 6e 67 65 64 20 22 65 78 65 63   - Changed "exec
5f50: 22 20 74 6f 20 72 65 74 75 72 6e 20 61 6e 20 65  " to return an e
5f60: 72 72 6f 72 20 69 66 20 74 68 65 72 65 20 69 73  rror if there is
5f70: 20 73 74 64 65 72 72 20 6f 75 74 70 75 74 2c 20   stderr output, 
5f80: 65 76 65 6e 0a 20 20 20 20 20 20 69 66 20 74 68  even.      if th
5f90: 65 20 63 6f 6d 6d 61 6e 64 20 72 65 74 75 72 6e  e command return
5fa0: 73 20 61 20 30 20 65 78 69 74 20 73 74 61 74 75  s a 0 exit statu
5fb0: 73 20 28 69 74 27 73 20 61 6c 77 61 79 73 20 62  s (it's always b
5fc0: 65 65 6e 20 64 6f 63 75 6d 65 6e 74 65 64 0a 20  een documented. 
5fd0: 20 20 20 20 20 74 68 69 73 20 77 61 79 2c 20 62       this way, b
5fe0: 75 74 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74  ut the implement
5ff0: 61 74 69 6f 6e 20 77 61 73 6e 27 74 20 63 6f 72  ation wasn't cor
6000: 72 65 63 74 29 2e 0a 20 20 20 20 2d 20 49 66 20  rect)..    - If 
6010: 61 20 70 72 6f 63 65 73 73 20 72 65 74 75 72 6e  a process return
6020: 73 20 61 20 6e 6f 6e 2d 7a 65 72 6f 20 65 78 69  s a non-zero exi
6030: 74 20 73 74 61 74 75 73 20 62 75 74 20 64 6f 65  t status but doe
6040: 73 6e 27 74 20 67 65 6e 65 72 61 74 65 0a 20 20  sn't generate.  
6050: 20 20 20 20 61 6e 79 20 64 69 61 67 6e 6f 73 74      any diagnost
6060: 69 63 20 6f 75 74 70 75 74 2c 20 74 68 65 6e 20  ic output, then 
6070: 54 63 6c 20 67 65 6e 65 72 61 74 65 73 20 61 6e  Tcl generates an
6080: 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 66   error message f
6090: 6f 72 20 69 74 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  or it..*** POTEN
60a0: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
60b0: 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36 31 2e 20 32  LITY ***..161. 2
60c0: 2f 32 35 2f 39 33 20 46 69 78 65 64 20 74 77 6f  /25/93 Fixed two
60d0: 20 6d 65 6d 6f 72 79 2d 6d 61 6e 61 67 65 6d 65   memory-manageme
60e0: 6e 74 20 70 72 6f 62 6c 65 6d 73 20 68 61 76 69  nt problems havi
60f0: 6e 67 20 74 6f 20 64 6f 20 77 69 74 68 0a 6d 61  ng to do with.ma
6100: 6e 61 67 69 6e 67 20 74 68 65 20 6f 6c 64 20 72  naging the old r
6110: 65 73 75 6c 74 20 64 75 72 69 6e 67 20 76 61 72  esult during var
6120: 69 61 62 6c 65 20 74 72 61 63 65 20 63 61 6c 6c  iable trace call
6130: 62 61 63 6b 73 2e 0a 0a 31 36 32 2e 20 33 2f 31  backs...162. 3/1
6140: 2f 39 33 20 41 64 64 65 64 20 64 79 6e 61 6d 69  /93 Added dynami
6150: 63 20 73 74 72 69 6e 67 20 6c 69 62 72 61 72 79  c string library
6160: 3a 20 20 54 63 6c 5f 44 53 74 72 69 6e 67 49 6e  :  Tcl_DStringIn
6170: 69 74 2c 20 54 63 6c 5f 44 53 74 72 69 6e 67 41  it, Tcl_DStringA
6180: 70 70 65 6e 64 2c 0a 54 63 6c 5f 44 53 74 72 69  ppend,.Tcl_DStri
6190: 6e 67 46 72 65 65 2c 20 54 63 6c 5f 44 53 74 72  ngFree, Tcl_DStr
61a0: 69 6e 67 52 65 73 75 6c 74 2c 20 65 74 63 2e 0a  ingResult, etc..
61b0: 0a 31 36 33 2e 20 33 2f 31 2f 39 33 20 4d 6f 64  .163. 3/1/93 Mod
61c0: 69 66 69 65 64 20 67 6c 6f 62 20 63 6f 6d 6d 61  ified glob comma
61d0: 6e 64 20 74 6f 20 6f 6e 6c 79 20 72 65 74 75 72  nd to only retur
61e0: 6e 20 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 66  n the names of f
61f0: 69 6c 65 73 20 74 68 61 74 0a 65 78 69 73 74 2c  iles that.exist,
6200: 20 61 6e 64 20 74 6f 20 6f 6e 6c 79 20 72 65 74   and to only ret
6210: 75 72 6e 20 6e 61 6d 65 73 20 65 6e 64 69 6e 67  urn names ending
6220: 20 69 6e 20 22 2f 22 20 69 66 20 74 68 65 20 66   in "/" if the f
6230: 69 6c 65 20 69 73 20 61 20 64 69 72 65 63 74 6f  ile is a directo
6240: 72 79 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  ry..*** POTENTIA
6250: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
6260: 59 20 2a 2a 2a 0a 0a 31 36 34 2e 20 33 2f 31 39  Y ***..164. 3/19
6270: 2f 39 33 20 4d 6f 64 69 66 69 65 64 20 6e 6f 74  /93 Modified not
6280: 20 74 6f 20 75 73 65 20 73 79 73 74 65 6d 20 63   to use system c
6290: 61 6c 6c 73 20 6c 69 6b 65 20 22 72 65 61 64 22  alls like "read"
62a0: 20 64 69 72 65 63 74 6c 79 2c 0a 62 75 74 20 69   directly,.but i
62b0: 6e 73 74 65 61 64 20 74 6f 20 75 73 65 20 73 70  nstead to use sp
62c0: 65 63 69 61 6c 20 54 63 6c 20 70 72 6f 63 65 64  ecial Tcl proced
62d0: 75 72 65 73 20 74 68 61 74 20 72 65 74 72 79 20  ures that retry 
62e0: 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 69 66  automatically.if
62f0: 20 69 6e 74 65 72 72 75 70 74 65 64 20 62 79 20   interrupted by 
6300: 73 69 67 6e 61 6c 73 2e 0a 0a 31 36 35 2e 20 34  signals...165. 4
6310: 2f 33 2f 39 33 20 45 6c 69 6d 69 6e 61 74 65 64  /3/93 Eliminated
6320: 20 22 6e 6f 53 65 70 22 20 61 72 67 75 6d 65 6e   "noSep" argumen
6330: 74 20 74 6f 20 54 63 6c 5f 41 70 70 65 6e 64 45  t to Tcl_AppendE
6340: 6c 65 6d 65 6e 74 2c 20 70 6c 75 73 0a 54 43 4c  lement, plus.TCL
6350: 5f 4e 4f 5f 53 50 41 43 45 20 66 6c 61 67 20 66  _NO_SPACE flag f
6360: 6f 72 20 54 63 6c 5f 53 65 74 56 61 72 20 61 6e  or Tcl_SetVar an
6370: 64 20 54 63 6c 5f 53 65 74 56 61 72 32 2e 0a 2a  d Tcl_SetVar2..*
6380: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
6390: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
63a0: 0a 0a 31 36 36 2e 20 34 2f 33 2f 39 33 20 45 6c  ..166. 4/3/93 El
63b0: 69 6d 69 6e 61 74 65 64 20 22 66 6c 61 67 73 22  iminated "flags"
63c0: 20 61 6e 64 20 22 74 65 72 6d 50 74 72 22 20 61   and "termPtr" a
63d0: 72 67 75 6d 65 6e 74 73 20 74 6f 20 54 63 6c 5f  rguments to Tcl_
63e0: 45 76 61 6c 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  Eval..*** POTENT
63f0: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
6400: 49 54 59 20 2a 2a 2a 0a 0a 31 36 37 2e 20 34 2f  ITY ***..167. 4/
6410: 33 2f 39 33 20 43 68 61 6e 67 65 73 20 74 6f 20  3/93 Changes to 
6420: 65 78 70 72 65 73 73 69 6f 6e 73 3a 0a 20 20 20  expressions:.   
6430: 20 2d 20 54 68 65 20 22 65 78 70 72 22 20 63 6f   - The "expr" co
6440: 6d 6d 61 6e 64 20 6e 6f 77 20 61 63 63 65 70 74  mmand now accept
6450: 73 20 6d 75 6c 74 69 70 6c 65 20 61 72 67 75 6d  s multiple argum
6460: 65 6e 74 73 2c 20 77 68 69 63 68 20 61 72 65 0a  ents, which are.
6470: 20 20 20 20 20 20 63 6f 6e 63 61 74 65 6e 61 74        concatenat
6480: 65 64 20 74 6f 67 65 74 68 65 72 20 77 69 74 68  ed together with
6490: 20 73 70 61 63 65 20 73 65 70 61 72 61 74 6f 72   space separator
64a0: 73 2e 0a 20 20 20 20 2d 20 49 6e 74 65 67 65 72  s..    - Integer
64b0: 73 20 61 72 65 6e 27 74 20 61 75 74 6f 6d 61 74  s aren't automat
64c0: 69 63 61 6c 6c 79 20 70 72 6f 6d 6f 74 65 64 20  ically promoted 
64d0: 74 6f 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e  to floating-poin
64e0: 74 20 69 66 20 74 68 65 79 0a 20 20 20 20 20 20  t if they.      
64f0: 6f 76 65 72 66 6c 6f 77 20 74 68 65 20 77 6f 72  overflow the wor
6500: 64 20 73 69 7a 65 3a 20 20 65 72 72 6f 72 73 20  d size:  errors 
6510: 61 72 65 20 67 65 6e 65 72 61 74 65 64 20 69 6e  are generated in
6520: 73 74 65 61 64 2e 0a 20 20 20 20 2d 20 54 63 6c  stead..    - Tcl
6530: 20 63 61 6e 20 6e 6f 77 20 68 61 6e 64 6c 65 20   can now handle 
6540: 22 4e 61 4e 22 20 61 6e 64 20 6f 74 68 65 72 20  "NaN" and other 
6550: 73 70 65 63 69 61 6c 20 76 61 6c 75 65 73 20 69  special values i
6560: 66 20 74 68 65 20 75 6e 64 65 72 6c 79 69 6e 67  f the underlying
6570: 0a 20 20 20 20 20 20 6c 69 62 72 61 72 79 20 70  .      library p
6580: 72 6f 63 65 64 75 72 65 73 20 68 61 6e 64 6c 65  rocedures handle
6590: 20 74 68 65 6d 2e 0a 20 20 20 20 2d 20 57 68 65   them..    - Whe
65a0: 6e 20 70 72 69 6e 74 69 6e 67 20 66 6c 6f 61 74  n printing float
65b0: 69 6e 67 2d 70 6f 69 6e 74 20 6e 75 6d 62 65 72  ing-point number
65c0: 73 2c 20 54 63 6c 20 65 6e 73 75 72 65 73 20 74  s, Tcl ensures t
65d0: 68 61 74 20 74 68 65 72 65 20 69 73 20 61 20 22  hat there is a "
65e0: 2e 22 0a 20 20 20 20 20 20 6f 72 20 22 65 22 20  .".      or "e" 
65f0: 69 6e 20 74 68 65 20 6e 75 6d 62 65 72 2c 20 73  in the number, s
6600: 6f 20 69 74 20 63 61 6e 27 74 20 62 65 20 74 72  o it can't be tr
6610: 65 61 74 65 64 20 61 73 20 61 6e 20 69 6e 74 65  eated as an inte
6620: 67 65 72 20 61 63 63 69 64 65 6e 74 61 6c 6c 79  ger accidentally
6630: 2e 0a 20 20 20 20 20 20 54 68 65 20 70 72 6f 63  ..      The proc
6640: 65 64 75 72 65 20 54 63 6c 5f 50 72 69 6e 74 44  edure Tcl_PrintD
6650: 6f 75 62 6c 65 20 69 73 20 61 76 61 69 6c 61 62  ouble is availab
6660: 6c 65 20 74 6f 20 70 72 6f 76 69 64 65 20 74 68  le to provide th
6670: 69 73 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20  is function.    
6680: 20 20 69 6e 20 6f 74 68 65 72 20 63 6f 6e 74 65    in other conte
6690: 78 74 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65 20  xts.  Also, the 
66a0: 76 61 72 69 61 62 6c 65 20 22 74 63 6c 5f 70 72  variable "tcl_pr
66b0: 65 63 69 73 69 6f 6e 22 20 63 61 6e 20 62 65 20  ecision" can be 
66c0: 75 73 65 64 0a 20 20 20 20 20 20 74 6f 20 73 65  used.      to se
66d0: 74 20 74 68 65 20 70 72 65 63 69 73 69 6f 6e 20  t the precision 
66e0: 66 6f 72 20 70 72 69 6e 74 69 6e 67 20 28 6d 75  for printing (mu
66f0: 73 74 20 62 65 20 61 20 64 65 63 69 6d 61 6c 20  st be a decimal 
6700: 6e 75 6d 62 65 72 20 67 69 76 69 6e 67 0a 20 20  number giving.  
6710: 20 20 20 20 64 69 67 69 74 73 20 6f 66 20 70 72      digits of pr
6720: 65 63 69 73 69 6f 6e 29 2e 0a 20 20 20 20 2d 20  ecision)..    - 
6730: 45 78 70 72 65 73 73 69 6f 6e 73 20 6e 6f 77 20  Expressions now 
6740: 73 75 70 70 6f 72 74 20 74 72 61 6e 73 63 65 6e  support transcen
6750: 64 65 6e 74 61 6c 20 61 6e 64 20 6f 74 68 65 72  dental and other
6760: 20 66 75 6e 63 74 69 6f 6e 73 2c 20 65 2e 67 2e   functions, e.g.
6770: 20 73 69 6e 2c 0a 20 20 20 20 20 20 61 63 6f 73   sin,.      acos
6780: 2c 20 68 79 70 6f 74 2c 20 63 65 69 6c 2c 20 61  , hypot, ceil, a
6790: 6e 64 20 72 6f 75 6e 64 2e 20 20 43 61 6e 20 61  nd round.  Can a
67a0: 64 64 20 6e 65 77 20 6d 61 74 68 20 66 75 6e 63  dd new math func
67b0: 74 69 6f 6e 73 20 77 69 74 68 0a 20 20 20 20 20  tions with.     
67c0: 20 54 63 6c 5f 43 72 65 61 74 65 4d 61 74 68 46   Tcl_CreateMathF
67d0: 75 6e 63 28 29 2e 0a 20 20 20 20 2d 20 42 6f 6f  unc()..    - Boo
67e0: 6c 65 61 6e 20 65 78 70 72 65 73 73 69 6f 6e 73  lean expressions
67f0: 20 63 61 6e 20 6e 6f 77 20 68 61 76 65 20 61 6e   can now have an
6800: 79 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 20  y of the string 
6810: 76 61 6c 75 65 73 20 61 63 63 65 70 74 65 64 0a  values accepted.
6820: 20 20 20 20 20 20 62 79 20 54 63 6c 5f 47 65 74        by Tcl_Get
6830: 42 6f 6f 6c 65 61 6e 2c 20 73 75 63 68 20 61 73  Boolean, such as
6840: 20 22 79 65 73 22 20 6f 72 20 22 6e 6f 22 2e 0a   "yes" or "no"..
6850: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
6860: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
6870: 2a 0a 0a 31 36 38 2e 20 34 2f 35 2f 39 33 20 43  *..168. 4/5/93 C
6880: 68 61 6e 67 65 64 20 54 63 6c 5f 55 6e 73 65 74  hanged Tcl_Unset
6890: 56 61 72 20 61 6e 64 20 54 63 6c 5f 55 6e 73 65  Var and Tcl_Unse
68a0: 74 56 61 72 32 20 74 6f 20 72 65 74 75 72 6e 20  tVar2 to return 
68b0: 54 43 4c 5f 4f 4b 0a 6f 72 20 54 43 4c 5f 45 52  TCL_OK.or TCL_ER
68c0: 52 4f 52 20 69 6e 73 74 65 61 64 20 6f 66 20 30  ROR instead of 0
68d0: 20 6f 72 20 2d 31 2e 0a 2a 2a 2a 20 50 4f 54 45   or -1..*** POTE
68e0: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
68f0: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36 39 2e 20  ILITY ***..169. 
6900: 34 2f 35 2f 39 33 20 45 6c 69 6d 69 6e 61 74 65  4/5/93 Eliminate
6910: 64 20 54 63 6c 5f 43 6d 64 42 75 66 20 73 74 72  d Tcl_CmdBuf str
6920: 75 63 74 75 72 65 20 61 6e 64 20 61 73 73 6f 63  ucture and assoc
6930: 69 61 74 65 64 20 70 72 6f 63 65 64 75 72 65 73  iated procedures
6940: 3b 0a 63 61 6e 20 75 73 65 20 54 63 6c 5f 44 53  ;.can use Tcl_DS
6950: 74 72 69 6e 67 73 20 69 6e 73 74 65 61 64 2e 0a  trings instead..
6960: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
6970: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
6980: 2a 0a 0a 31 37 30 2e 20 34 2f 38 2f 39 33 20 43  *..170. 4/8/93 C
6990: 68 61 6e 67 65 64 20 69 6e 74 65 72 66 61 63 65  hanged interface
69a0: 20 74 6f 20 54 63 6c 5f 54 69 6c 64 65 53 75 62   to Tcl_TildeSub
69b0: 73 74 20 74 6f 20 75 73 65 20 61 20 64 79 6e 61  st to use a dyna
69c0: 6d 69 63 0a 73 74 72 69 6e 67 20 66 6f 72 20 62  mic.string for b
69d0: 75 66 66 65 72 20 73 70 61 63 65 2e 20 20 54 68  uffer space.  Th
69e0: 69 73 20 6d 61 6b 65 73 20 74 68 65 20 70 72 6f  is makes the pro
69f0: 63 65 64 75 72 65 20 72 65 2d 65 6e 74 72 61 6e  cedure re-entran
6a00: 74 20 61 6e 64 0a 74 68 72 65 61 64 2d 73 61 66  t and.thread-saf
6a10: 65 2c 20 77 68 65 72 65 61 73 20 69 74 20 77 61  e, whereas it wa
6a20: 73 6e 27 74 20 62 65 66 6f 72 65 2e 0a 2a 2a 2a  sn't before..***
6a30: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
6a40: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
6a50: 31 37 31 2e 20 34 2f 31 34 2f 39 33 20 45 6c 69  171. 4/14/93 Eli
6a60: 6d 69 6e 61 74 65 64 20 74 63 6c 48 61 73 68 2e  minated tclHash.
6a70: 68 2c 20 61 6e 64 20 6d 6f 76 65 64 20 65 76 65  h, and moved eve
6a80: 72 79 74 68 69 6e 67 20 66 72 6f 6d 20 69 74 20  rything from it 
6a90: 74 6f 0a 74 63 6c 2e 68 0a 2a 2a 2a 20 50 4f 54  to.tcl.h.*** POT
6aa0: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
6ab0: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 37 32 2e  BILITY ***..172.
6ac0: 20 34 2f 31 35 2f 39 33 20 45 6c 69 6d 69 6e 61   4/15/93 Elimina
6ad0: 74 65 64 20 54 63 6c 5f 49 6e 69 74 48 69 73 74  ted Tcl_InitHist
6ae0: 6f 72 79 2c 20 6d 61 64 65 20 22 68 69 73 74 6f  ory, made "histo
6af0: 72 79 22 20 63 6f 6d 6d 61 6e 64 20 61 6c 77 61  ry" command alwa
6b00: 79 73 0a 62 65 20 70 61 72 74 20 6f 66 20 69 6e  ys.be part of in
6b10: 74 65 72 70 72 65 74 65 72 2e 0a 2a 2a 2a 20 50  terpreter..*** P
6b20: 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
6b30: 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 37  TIBILITY ***..17
6b40: 33 2e 20 34 2f 31 36 2f 39 33 20 4d 6f 64 69 66  3. 4/16/93 Modif
6b50: 69 65 64 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61  ied "file" comma
6b60: 6e 64 20 73 6f 20 74 68 61 74 20 22 72 65 61 64  nd so that "read
6b70: 61 62 6c 65 22 20 6f 70 74 69 6f 6e 20 61 6c 77  able" option alw
6b80: 61 79 73 0a 65 78 69 73 74 73 2c 20 65 76 65 6e  ays.exists, even
6b90: 20 6f 6e 20 6d 61 63 68 69 6e 65 73 20 74 68 61   on machines tha
6ba0: 74 20 64 6f 6e 27 74 20 73 75 70 70 6f 72 74 20  t don't support 
6bb0: 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 73 20 28  symbolic links (
6bc0: 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 0a 73  always returns.s
6bd0: 61 6d 65 20 65 72 72 6f 72 20 61 73 20 69 66 20  ame error as if 
6be0: 74 68 65 20 66 69 6c 65 20 77 61 73 6e 27 74 20  the file wasn't 
6bf0: 61 20 73 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 29  a symbolic link)
6c00: 2e 0a 0a 31 37 34 2e 20 34 2f 32 36 2f 39 33 20  ...174. 4/26/93 
6c10: 46 69 78 65 64 20 62 75 67 73 20 69 6e 20 22 72  Fixed bugs in "r
6c20: 65 67 73 75 62 22 20 77 68 65 72 65 20 5e 20 70  egsub" where ^ p
6c30: 61 74 74 65 72 6e 73 20 64 69 64 6e 27 74 20 67  atterns didn't g
6c40: 65 74 20 68 61 6e 64 6c 65 64 0a 72 69 67 68 74  et handled.right
6c50: 20 28 70 72 65 74 65 6e 64 65 64 20 6e 6f 74 20   (pretended not 
6c60: 74 6f 20 6d 61 74 63 68 20 77 68 65 6e 20 69 74  to match when it
6c70: 20 72 65 61 6c 6c 79 20 64 69 64 2c 20 61 6e 64   really did, and
6c80: 20 6c 6f 6f 70 65 64 20 69 6e 66 69 6e 69 74 65   looped infinite
6c90: 6c 79 0a 69 66 20 2d 61 6c 6c 20 77 61 73 20 73  ly.if -all was s
6ca0: 70 65 63 69 66 69 65 64 29 2e 0a 0a 31 37 35 2e  pecified)...175.
6cb0: 20 34 2f 32 39 2f 39 33 20 56 61 72 69 6f 75 73   4/29/93 Various
6cc0: 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 69 6e   improvements in
6cd0: 20 74 68 65 20 68 61 6e 64 6c 69 6e 67 20 6f 66   the handling of
6ce0: 20 76 61 72 69 61 62 6c 65 73 3a 0a 20 20 20 20   variables:.    
6cf0: 2d 20 43 61 6e 20 63 72 65 61 74 65 20 76 61 72  - Can create var
6d00: 69 61 62 6c 65 73 20 61 6e 64 20 61 72 72 61 79  iables and array
6d10: 20 65 6c 65 6d 65 6e 74 73 20 64 75 72 69 6e 67   elements during
6d20: 20 61 20 72 65 61 64 20 74 72 61 63 65 2e 0a 20   a read trace.. 
6d30: 20 20 20 2d 20 43 61 6e 20 64 65 6c 65 74 65 20     - Can delete 
6d40: 76 61 72 69 61 62 6c 65 73 20 64 75 72 69 6e 67  variables during
6d50: 20 74 72 61 63 65 73 20 28 6e 6f 74 65 3a 20 75   traces (note: u
6d60: 6e 73 65 74 20 74 72 61 63 65 73 20 77 69 6c 6c  nset traces will
6d70: 20 62 65 0a 20 20 20 20 20 20 69 6e 76 6f 6b 65   be.      invoke
6d80: 64 20 77 68 65 6e 20 74 68 69 73 20 68 61 70 70  d when this happ
6d90: 65 6e 73 29 2e 0a 20 20 20 20 2d 20 43 61 6e 20  ens)..    - Can 
6da0: 75 70 76 61 72 20 74 6f 20 61 72 72 61 79 20 65  upvar to array e
6db0: 6c 65 6d 65 6e 74 73 2e 0a 20 20 20 20 2d 20 43  lements..    - C
6dc0: 61 6e 20 72 65 74 61 72 67 65 74 20 61 6e 20 75  an retarget an u
6dd0: 70 76 61 72 20 74 6f 20 61 6e 6f 74 68 65 72 20  pvar to another 
6de0: 76 61 72 69 61 62 6c 65 20 62 79 20 72 65 2d 69  variable by re-i
6df0: 73 73 75 69 6e 67 20 74 68 65 0a 20 20 20 20 20  ssuing the.     
6e00: 20 75 70 76 61 72 20 63 6f 6d 6d 61 6e 64 20 77   upvar command w
6e10: 69 74 68 20 61 20 64 69 66 66 65 72 65 6e 74 20  ith a different 
6e20: 22 6f 74 68 65 72 22 20 76 61 72 69 61 62 6c 65  "other" variable
6e30: 2e 0a 0a 31 37 36 2e 20 35 2f 33 2f 39 33 20 41  ...176. 5/3/93 A
6e40: 64 64 65 64 20 54 63 6c 5f 47 65 74 43 6f 6d 6d  dded Tcl_GetComm
6e50: 61 6e 64 49 6e 66 6f 2c 20 77 68 69 63 68 20 72  andInfo, which r
6e60: 65 74 75 72 6e 73 20 69 6e 66 6f 20 61 62 6f 75  eturns info abou
6e70: 74 20 61 20 54 63 6c 0a 63 6f 6d 6d 61 6e 64 20  t a Tcl.command 
6e80: 73 75 63 68 20 61 73 20 77 68 65 74 68 65 72 20  such as whether 
6e90: 69 74 20 65 78 69 73 74 73 20 61 6e 64 20 69 74  it exists and it
6ea0: 73 20 43 6c 69 65 6e 74 44 61 74 61 2e 20 20 41  s ClientData.  A
6eb0: 6c 73 6f 20 61 64 64 65 64 0a 54 63 6c 5f 53 65  lso added.Tcl_Se
6ec0: 74 43 6f 6d 6d 61 6e 64 49 6e 66 6f 2c 20 77 68  tCommandInfo, wh
6ed0: 69 63 68 20 61 6c 6c 6f 77 73 20 61 6e 79 20 6f  ich allows any o
6ee0: 66 20 74 68 69 73 20 69 6e 66 6f 72 6d 61 74 69  f this informati
6ef0: 6f 6e 20 74 6f 20 62 65 20 6d 6f 64 69 66 69 65  on to be modifie
6f00: 64 0a 61 6e 64 20 61 6c 73 6f 20 61 6c 6c 6f 77  d.and also allow
6f10: 73 20 61 20 63 6f 6d 6d 61 6e 64 27 73 20 64 65  s a command's de
6f20: 6c 65 74 65 20 70 72 6f 63 65 64 75 72 65 20 74  lete procedure t
6f30: 6f 20 68 61 76 65 20 61 20 64 69 66 66 65 72 65  o have a differe
6f40: 6e 74 0a 43 6c 69 65 6e 74 44 61 74 61 20 76 61  nt.ClientData va
6f50: 6c 75 65 20 74 68 61 6e 20 69 74 73 20 63 6f 6d  lue than its com
6f60: 6d 61 6e 64 20 70 72 6f 63 65 64 75 72 65 2e 0a  mand procedure..
6f70: 0a 31 37 37 2e 20 35 2f 35 2f 39 33 20 41 64 64  .177. 5/5/93 Add
6f80: 65 64 20 54 63 6c 5f 52 65 67 45 78 70 4d 61 74  ed Tcl_RegExpMat
6f90: 63 68 20 70 72 6f 63 65 64 75 72 65 2e 0a 0a 31  ch procedure...1
6fa0: 37 38 2e 20 35 2f 36 2f 39 33 20 46 69 78 65 64  78. 5/6/93 Fixed
6fb0: 20 62 75 67 20 69 6e 20 22 73 63 61 6e 22 20 77   bug in "scan" w
6fc0: 68 65 72 65 20 69 74 20 64 69 64 6e 27 74 20 70  here it didn't p
6fd0: 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65 0a 25  roperly handle.%
6fe0: 25 20 63 6f 6e 76 65 72 73 69 6f 6e 20 73 70 65  % conversion spe
6ff0: 63 69 66 69 65 72 73 2e 20 20 41 6c 73 6f 20 63  cifiers.  Also c
7000: 68 61 6e 67 65 64 20 22 73 63 61 6e 22 20 74 6f  hanged "scan" to
7010: 20 75 73 65 20 54 63 6c 5f 50 72 69 6e 74 44 6f   use Tcl_PrintDo
7020: 75 62 6c 65 0a 66 6f 72 20 70 72 69 6e 74 69 6e  uble.for printin
7030: 67 20 72 65 61 6c 20 76 61 6c 75 65 73 2e 0a 0a  g real values...
7040: 31 37 39 2e 20 35 2f 37 2f 39 33 20 41 64 64 65  179. 5/7/93 Adde
7050: 64 20 22 2d 65 78 61 63 74 22 2c 20 22 2d 67 6c  d "-exact", "-gl
7060: 6f 62 22 2c 20 61 6e 64 20 22 2d 72 65 67 65 78  ob", and "-regex
7070: 70 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 6c  p" options to "l
7080: 73 65 61 72 63 68 22 0a 63 6f 6d 6d 61 6e 64 20  search".command 
7090: 74 6f 20 61 6c 6c 6f 77 20 64 69 66 66 65 72 65  to allow differe
70a0: 6e 74 20 6b 69 6e 64 73 20 6f 66 20 70 61 74 74  nt kinds of patt
70b0: 65 72 6e 20 6d 61 74 63 68 69 6e 67 2e 0a 0a 31  ern matching...1
70c0: 38 30 2e 20 35 2f 37 2f 39 33 20 41 64 64 65 64  80. 5/7/93 Added
70d0: 20 6d 61 6e 79 20 6e 65 77 20 73 77 69 74 63 68   many new switch
70e0: 65 73 20 74 6f 20 22 6c 73 6f 72 74 22 20 74 6f  es to "lsort" to
70f0: 20 63 6f 6e 74 72 6f 6c 20 74 68 65 20 73 6f 72   control the sor
7100: 74 69 6e 67 0a 70 72 6f 63 65 73 73 3a 20 22 2d  ting.process: "-
7110: 61 73 63 69 69 22 2c 20 22 2d 69 6e 74 65 67 65  ascii", "-intege
7120: 72 22 2c 20 22 2d 72 65 61 6c 22 2c 20 22 2d 63  r", "-real", "-c
7130: 6f 6d 6d 61 6e 64 22 2c 20 22 2d 69 6e 63 72 65  ommand", "-incre
7140: 61 73 69 6e 67 22 2c 0a 61 6e 64 20 22 2d 64 65  asing",.and "-de
7150: 63 72 65 61 73 69 6e 67 22 2e 0a 0a 31 38 31 2e  creasing"...181.
7160: 20 35 2f 31 30 2f 39 33 20 43 68 61 6e 67 65 73   5/10/93 Changes
7170: 20 74 6f 20 66 69 6c 65 20 49 2f 4f 3a 0a 20 20   to file I/O:.  
7180: 20 20 2d 20 4d 6f 64 69 66 69 65 64 20 22 6f 70    - Modified "op
7190: 65 6e 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73  en" command to s
71a0: 75 70 70 6f 72 74 20 61 20 6c 69 73 74 20 6f 66  upport a list of
71b0: 20 50 4f 53 49 58 20 61 63 63 65 73 73 20 66 6c   POSIX access fl
71c0: 61 67 73 0a 20 20 20 20 20 20 6c 69 6b 65 20 7b  ags.      like {
71d0: 57 52 4f 4e 4c 59 20 43 52 45 41 54 20 54 52 55  WRONLY CREAT TRU
71e0: 4e 43 7d 20 69 6e 20 61 64 64 69 74 69 6f 6e 20  NC} in addition 
71f0: 74 6f 20 63 75 72 72 65 6e 74 20 66 6f 70 65 6e  to current fopen
7200: 2d 73 74 79 6c 65 0a 20 20 20 20 20 20 61 63 63  -style.      acc
7210: 65 73 73 20 6d 6f 64 65 73 2e 20 20 41 6c 73 6f  ess modes.  Also
7220: 20 61 64 64 65 64 20 22 70 65 72 6d 69 73 73 69   added "permissi
7230: 6f 6e 73 22 20 61 72 67 75 6d 65 6e 74 20 74 6f  ons" argument to
7240: 20 73 65 74 20 70 65 72 6d 69 73 73 69 6f 6e 73   set permissions
7250: 0a 20 20 20 20 20 20 6f 66 20 6e 65 77 6c 79 2d  .      of newly-
7260: 63 72 65 61 74 65 64 20 66 69 6c 65 73 2e 0a 20  created files.. 
7270: 20 20 20 2d 20 46 69 78 65 64 20 53 63 6f 74 74     - Fixed Scott
7280: 20 42 6f 6c 74 65 27 73 20 62 75 67 20 28 63 61   Bolte's bug (ca
7290: 6e 20 63 6c 6f 73 65 20 73 74 64 69 6e 20 65 74  n close stdin et
72a0: 63 2e 20 69 6e 20 61 70 70 6c 69 63 61 74 69 6f  c. in applicatio
72b0: 6e 20 61 6e 64 0a 20 20 20 20 20 20 74 68 65 6e  n and.      then
72c0: 20 72 65 2d 6f 70 65 6e 20 74 68 65 6d 20 77 69   re-open them wi
72d0: 74 68 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 73 29  th Tcl commands)
72e0: 2e 0a 20 20 20 20 2d 20 45 78 70 6f 72 74 65 64  ..    - Exported
72f0: 20 61 63 63 65 73 73 20 74 6f 20 54 63 6c 27 73   access to Tcl's
7300: 20 66 69 6c 65 20 74 61 62 6c 65 20 77 69 74 68   file table with
7310: 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65 73 20   new procedures 
7320: 54 63 6c 5f 45 6e 74 65 72 46 69 6c 65 0a 20 20  Tcl_EnterFile.  
7330: 20 20 20 20 61 6e 64 20 54 63 6c 5f 47 65 74 4f      and Tcl_GetO
7340: 70 65 6e 46 69 6c 65 2e 0a 0a 31 38 32 2e 20 35  penFile...182. 5
7350: 2f 31 35 2f 39 33 20 41 64 64 65 64 20 6e 65 77  /15/93 Added new
7360: 20 22 70 69 64 22 20 63 6f 6d 6d 61 6e 64 2c 20   "pid" command, 
7370: 77 68 69 63 68 20 63 61 6e 20 62 65 20 75 73 65  which can be use
7380: 64 20 74 6f 20 72 65 74 72 69 65 76 65 0a 65 69  d to retrieve.ei
7390: 74 68 65 72 20 74 68 65 20 63 75 72 72 65 6e 74  ther the current
73a0: 20 70 72 6f 63 65 73 73 20 69 64 20 6f 72 20 61   process id or a
73b0: 20 6c 69 73 74 20 6f 66 20 74 68 65 20 70 72 6f   list of the pro
73c0: 63 65 73 73 20 69 64 73 20 69 6e 20 61 0a 70 69  cess ids in a.pi
73d0: 70 65 6c 69 6e 65 20 6f 70 65 6e 65 64 20 77 69  peline opened wi
73e0: 74 68 20 22 6f 70 65 6e 20 7c 2e 2e 2e 22 0a 0a  th "open |..."..
73f0: 31 38 33 2e 20 36 2f 33 2f 39 33 20 43 68 61 6e  183. 6/3/93 Chan
7400: 67 65 64 20 74 6f 20 75 73 65 20 47 4e 55 20 61  ged to use GNU a
7410: 75 74 6f 63 6f 6e 66 69 67 20 66 6f 72 20 63 6f  utoconfig for co
7420: 6e 66 69 67 75 72 61 74 69 6f 6e 20 69 6e 73 74  nfiguration inst
7430: 65 61 64 20 6f 66 0a 74 68 65 20 68 6f 6d 65 2d  ead of.the home-
7440: 62 72 65 77 20 22 63 6f 6e 66 69 67 22 20 73 63  brew "config" sc
7450: 72 69 70 74 2e 20 20 41 6c 73 6f 20 6d 61 64 65  ript.  Also made
7460: 20 6d 61 6e 79 20 6f 74 68 65 72 20 63 6f 6e 66   many other conf
7470: 69 67 75 72 61 74 69 6f 6e 2d 72 65 6c 61 74 65  iguration-relate
7480: 64 0a 63 68 61 6e 67 65 73 2c 20 73 75 63 68 20  d.changes, such 
7490: 61 73 20 75 73 69 6e 67 20 3c 75 6e 69 73 74 64  as using <unistd
74a0: 2e 68 3e 20 69 6e 73 74 65 61 64 20 6f 66 20 65  .h> instead of e
74b0: 78 70 6c 69 63 69 74 6c 79 20 64 65 63 6c 61 72  xplicitly declar
74c0: 69 6e 67 20 73 79 73 74 65 6d 0a 63 61 6c 6c 73  ing system.calls
74d0: 20 69 6e 20 74 63 6c 55 6e 69 78 2e 68 2e 0a 0a   in tclUnix.h...
74e0: 31 38 34 2e 20 36 2f 34 2f 39 33 20 46 69 78 65  184. 6/4/93 Fixe
74f0: 64 20 62 75 67 20 77 68 65 72 65 20 63 6f 72 65  d bug where core
7500: 2d 64 75 6d 70 73 20 63 6f 75 6c 64 20 6f 63 63  -dumps could occ
7510: 75 72 20 69 66 20 61 20 70 72 6f 63 65 64 75 72  ur if a procedur
7520: 65 0a 72 65 64 65 66 69 6e 65 64 20 69 74 73 65  e.redefined itse
7530: 6c 66 20 28 74 68 65 20 6d 65 6d 6f 72 79 20 66  lf (the memory f
7540: 6f 72 20 74 68 65 20 70 72 6f 63 65 64 75 72 65  or the procedure
7550: 27 73 20 62 6f 64 79 20 63 6f 75 6c 64 20 67 65  's body could ge
7560: 74 0a 72 65 61 6c 6c 6f 63 61 74 65 64 20 69 6e  t.reallocated in
7570: 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 65   the middle of e
7580: 76 61 6c 75 61 74 69 6e 67 20 74 68 65 20 62 6f  valuating the bo
7590: 64 79 29 3b 20 20 69 6d 70 6c 65 6d 65 6e 74 65  dy);  implemente
75a0: 64 0a 73 69 6d 70 6c 65 20 72 65 66 65 72 65 6e  d.simple referen
75b0: 63 65 20 63 6f 75 6e 74 20 6d 65 63 68 61 6e 69  ce count mechani
75c0: 73 6d 2e 0a 0a 31 38 35 2e 20 36 2f 35 2f 39 33  sm...185. 6/5/93
75d0: 20 43 68 61 6e 67 65 64 20 74 63 6c 49 6e 64 65   Changed tclInde
75e0: 78 20 66 69 6c 65 20 66 6f 72 6d 61 74 20 69 6e  x file format in
75f0: 20 74 77 6f 20 77 61 79 73 3a 20 20 28 61 29 20   two ways:  (a) 
7600: 69 74 27 73 20 6e 6f 77 0a 65 76 61 6c 2d 65 64  it's now.eval-ed
7610: 20 69 6e 73 74 65 61 64 20 6f 66 20 70 61 72 73   instead of pars
7620: 65 64 2c 20 77 68 69 63 68 20 6d 61 6b 65 73 20  ed, which makes 
7630: 69 74 20 33 2d 34 78 20 66 61 73 74 65 72 3b 20  it 3-4x faster; 
7640: 28 62 29 20 74 68 65 20 65 6e 74 72 69 65 73 0a  (b) the entries.
7650: 69 6e 20 61 75 74 6f 5f 69 6e 64 65 78 20 61 72  in auto_index ar
7660: 65 20 6e 6f 77 20 63 6f 6d 6d 61 6e 64 73 20 74  e now commands t
7670: 6f 20 65 76 61 6c 75 61 74 65 2c 20 77 68 69 63  o evaluate, whic
7680: 68 20 61 6c 6c 6f 77 73 20 63 6f 6d 6d 61 6e 64  h allows command
7690: 73 20 74 6f 0a 62 65 20 6c 6f 61 64 65 64 20 69  s to.be loaded i
76a0: 6e 20 64 69 66 66 65 72 65 6e 74 20 77 61 79 73  n different ways
76b0: 20 73 75 63 68 20 61 73 20 64 79 6e 61 6d 69 63   such as dynamic
76c0: 2d 6c 6f 61 64 69 6e 67 20 6f 66 20 43 20 63 6f  -loading of C co
76d0: 64 65 2e 20 20 54 68 65 0a 6f 6c 64 20 74 63 6c  de.  The.old tcl
76e0: 49 6e 64 65 78 20 66 69 6c 65 20 66 6f 72 6d 61  Index file forma
76f0: 74 20 69 73 20 73 74 69 6c 6c 20 73 75 70 70 6f  t is still suppo
7700: 72 74 65 64 2e 0a 0a 31 38 36 2e 20 36 2f 37 2f  rted...186. 6/7/
7710: 39 33 20 45 6c 69 6d 69 6e 61 74 65 64 20 74 63  93 Eliminated tc
7720: 6c 54 65 73 74 20 70 72 6f 67 72 61 6d 2c 20 61  lTest program, a
7730: 64 64 65 64 20 6e 65 77 20 22 74 63 6c 73 68 22  dded new "tclsh"
7740: 20 70 72 6f 67 72 61 6d 0a 74 68 61 74 20 69 73   program.that is
7750: 20 6d 6f 72 65 20 6c 69 6b 65 20 77 69 73 68 20   more like wish 
7760: 28 61 6c 6c 6f 77 73 20 73 63 72 69 70 74 20 66  (allows script f
7770: 69 6c 65 73 20 74 6f 20 62 65 20 69 6e 76 6f 6b  iles to be invok
7780: 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79  ed automatically
7790: 0a 75 73 69 6e 67 20 22 23 21 2f 75 73 72 2f 6c  .using "#!/usr/l
77a0: 6f 63 61 6c 2f 62 69 6e 2f 74 63 6c 73 68 22 2c  ocal/bin/tclsh",
77b0: 20 6d 61 6b 65 73 20 61 72 67 75 6d 65 6e 74 73   makes arguments
77c0: 20 61 76 61 69 6c 61 62 6c 65 20 74 6f 20 73 63   available to sc
77d0: 72 69 70 74 2c 0a 65 74 63 2e 29 2e 20 20 41 64  ript,.etc.).  Ad
77e0: 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
77f0: 54 63 6c 5f 41 70 70 49 6e 69 74 20 70 6c 75 73  Tcl_AppInit plus
7800: 20 64 65 66 61 75 6c 74 20 76 65 72 73 69 6f 6e   default version
7810: 3b 20 20 74 68 69 73 0a 61 6c 6c 6f 77 73 20 6e  ;  this.allows n
7820: 65 77 20 54 63 6c 20 61 70 70 6c 69 63 61 74 69  ew Tcl applicati
7830: 6f 6e 73 20 74 6f 20 62 65 20 63 72 65 61 74 65  ons to be create
7840: 64 20 77 69 74 68 6f 75 74 20 6d 6f 64 69 66 79  d without modify
7850: 69 6e 67 20 74 68 65 0a 6d 61 69 6e 20 70 72 6f  ing the.main pro
7860: 67 72 61 6d 20 66 6f 72 20 74 63 6c 73 68 2e 0a  gram for tclsh..
7870: 0a 31 38 37 2e 20 36 2f 37 2f 39 33 20 46 69 78  .187. 6/7/93 Fix
7880: 65 64 20 62 75 67 20 69 6e 20 54 63 6c 57 6f 72  ed bug in TclWor
7890: 64 45 6e 64 20 74 68 61 74 20 6b 65 70 74 20 62  dEnd that kept b
78a0: 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65  ackslash-newline
78b0: 20 66 72 6f 6d 0a 77 6f 72 6b 69 6e 67 20 63 6f   from.working co
78c0: 72 72 65 63 74 6c 79 20 69 6e 20 73 6f 6d 65 20  rrectly in some 
78d0: 63 61 73 65 73 20 64 75 72 69 6e 67 20 69 6e 74  cases during int
78e0: 65 72 61 63 74 69 76 65 20 69 6e 70 75 74 2e 0a  eractive input..
78f0: 0a 31 38 38 2e 20 36 2f 39 2f 39 33 20 41 64 64  .188. 6/9/93 Add
7900: 65 64 20 54 63 6c 5f 4c 69 6e 6b 56 61 72 20 61  ed Tcl_LinkVar a
7910: 6e 64 20 72 65 6c 61 74 65 64 20 70 72 6f 63 65  nd related proce
7920: 64 75 72 65 73 2c 20 77 68 69 63 68 20 61 75 74  dures, which aut
7930: 6f 6d 61 74 69 63 61 6c 6c 79 0a 6b 65 65 70 20  omatically.keep 
7940: 61 20 54 63 6c 20 76 61 72 69 61 62 6c 65 20 69  a Tcl variable i
7950: 6e 20 73 79 6e 63 20 77 69 74 68 20 61 20 43 20  n sync with a C 
7960: 76 61 72 69 61 62 6c 65 2e 0a 0a 31 38 39 2e 20  variable...189. 
7970: 36 2f 31 36 2f 39 33 20 49 6e 63 72 65 61 73 65  6/16/93 Increase
7980: 64 20 6d 61 78 69 6d 75 6d 20 6e 65 73 74 69 6e  d maximum nestin
7990: 67 20 64 65 70 74 68 20 66 72 6f 6d 20 31 30 30  g depth from 100
79a0: 20 74 6f 20 31 30 30 30 2e 0a 0a 31 39 30 2e 20   to 1000...190. 
79b0: 36 2f 31 36 2f 39 33 20 4d 6f 64 69 66 69 65 64  6/16/93 Modified
79c0: 20 22 74 72 61 63 65 20 76 61 72 22 20 63 6f 6d   "trace var" com
79d0: 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 65 72 72  mand so that err
79e0: 6f 72 20 6d 65 73 73 61 67 65 73 20 66 72 6f 6d  or messages from
79f0: 0a 77 69 74 68 69 6e 20 74 72 61 63 65 73 20 61  .within traces a
7a00: 72 65 20 72 65 74 75 72 6e 65 64 20 70 72 6f 70  re returned prop
7a10: 65 72 6c 79 20 61 73 20 74 68 65 20 72 65 73 75  erly as the resu
7a20: 6c 74 20 6f 66 20 74 68 65 20 76 61 72 69 61 62  lt of the variab
7a30: 6c 65 0a 61 63 63 65 73 73 2c 20 69 6e 73 74 65  le.access, inste
7a40: 61 64 20 6f 66 20 74 68 65 20 67 65 6e 65 72 69  ad of the generi
7a50: 63 20 22 61 63 63 65 73 73 20 64 69 73 61 6c 6c  c "access disall
7a60: 6f 77 65 64 20 62 79 20 74 72 61 63 65 20 63 6f  owed by trace co
7a70: 6d 6d 61 6e 64 22 0a 6d 65 73 73 61 67 65 2e 0a  mmand".message..
7a80: 0a 31 39 31 2e 20 36 2f 31 36 2f 39 33 20 41 64  .191. 6/16/93 Ad
7a90: 64 65 64 20 54 63 6c 5f 43 61 6c 6c 57 68 65 6e  ded Tcl_CallWhen
7aa0: 44 65 6c 65 74 65 64 20 74 6f 20 70 72 6f 76 69  Deleted to provi
7ab0: 64 65 20 63 61 6c 6c 62 61 63 6b 73 20 77 68 65  de callbacks whe
7ac0: 6e 20 61 6e 0a 69 6e 74 65 72 70 72 65 74 65 72  n an.interpreter
7ad0: 20 69 73 20 64 65 6c 65 74 65 64 20 28 73 61 6d   is deleted (sam
7ae0: 65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20  e functionality 
7af0: 61 73 20 54 63 6c 5f 57 61 74 63 68 49 6e 74 65  as Tcl_WatchInte
7b00: 72 70 2c 20 77 68 69 63 68 0a 75 73 65 64 20 74  rp, which.used t
7b10: 6f 20 65 78 69 73 74 20 69 6e 20 76 65 72 73 69  o exist in versi
7b20: 6f 6e 73 20 62 65 66 6f 72 65 20 36 2e 30 29 2e  ons before 6.0).
7b30: 0a 0a 31 39 33 2e 20 36 2f 31 36 2f 39 33 20 41  ..193. 6/16/93 A
7b40: 64 64 65 64 20 22 2d 63 6f 64 65 22 20 61 72 67  dded "-code" arg
7b50: 75 6d 65 6e 74 20 74 6f 20 22 72 65 74 75 72 6e  ument to "return
7b60: 22 20 63 6f 6d 6d 61 6e 64 3b 20 20 69 74 27 73  " command;  it's
7b70: 20 74 68 65 72 65 0a 70 72 69 6d 61 72 69 6c 79   there.primarily
7b80: 20 66 6f 72 20 63 6f 6d 70 6c 65 74 65 6e 65 73   for completenes
7b90: 73 2c 20 73 6f 20 74 68 61 74 20 70 72 6f 63 65  s, so that proce
7ba0: 64 75 72 65 73 20 69 6d 70 6c 65 6d 65 6e 74 69  dures implementi
7bb0: 6e 67 20 63 6f 6e 74 72 6f 6c 0a 63 6f 6e 73 74  ng control.const
7bc0: 72 75 63 74 73 20 63 61 6e 20 72 65 66 6c 65 63  ructs can reflec
7bd0: 74 20 65 78 63 65 70 74 69 6f 6e 61 6c 20 63 6f  t exceptional co
7be0: 6e 64 69 74 69 6f 6e 73 20 62 61 63 6b 20 74 6f  nditions back to
7bf0: 20 74 68 65 69 72 20 63 61 6c 6c 65 72 73 2e 0a   their callers..
7c00: 0a 31 39 34 2e 20 36 2f 31 36 2f 39 33 20 53 70  .194. 6/16/93 Sp
7c10: 6c 69 74 20 75 70 20 54 63 6c 2e 6e 20 74 6f 20  lit up Tcl.n to 
7c20: 6d 61 6b 65 20 73 65 70 61 72 61 74 65 20 6d 61  make separate ma
7c30: 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 66 6f 72  nual entries for
7c40: 20 65 61 63 68 0a 54 63 6c 20 63 6f 6d 6d 61 6e   each.Tcl comman
7c50: 64 2e 20 20 54 63 6c 2e 6e 20 6e 6f 77 20 63 6f  d.  Tcl.n now co
7c60: 6e 74 61 69 6e 73 20 61 20 73 75 6d 6d 61 72 79  ntains a summary
7c70: 20 6f 66 20 74 68 65 20 6c 61 6e 67 75 61 67 65   of the language
7c80: 20 73 79 6e 74 61 78 2e 0a 0a 31 39 35 2e 20 36   syntax...195. 6
7c90: 2f 31 37 2f 39 33 20 41 64 64 65 64 20 6e 65 77  /17/93 Added new
7ca0: 20 22 73 77 69 74 63 68 22 20 63 6f 6d 6d 61 6e   "switch" comman
7cb0: 64 20 74 6f 20 72 65 70 6c 61 63 65 20 22 63 61  d to replace "ca
7cc0: 73 65 22 3a 20 61 6c 6c 6f 77 73 0a 61 6c 74 65  se": allows.alte
7cd0: 72 6e 61 74 65 20 66 6f 72 6d 73 20 6f 66 20 70  rnate forms of p
7ce0: 61 74 74 65 72 6e 20 6d 61 74 63 68 69 6e 67 20  attern matching 
7cf0: 28 65 78 61 63 74 2c 20 67 6c 6f 62 2c 20 72 65  (exact, glob, re
7d00: 67 65 78 70 29 2c 20 72 65 70 6c 61 63 65 73 0a  gexp), replaces.
7d10: 70 61 74 74 65 72 6e 20 6c 69 73 74 73 20 77 69  pattern lists wi
7d20: 74 68 20 73 69 6e 67 6c 65 20 70 61 74 74 65 72  th single patter
7d30: 6e 73 20 28 62 75 74 20 79 6f 75 20 63 61 6e 20  ns (but you can 
7d40: 75 73 65 20 22 2d 22 20 62 6f 64 69 65 73 20 74  use "-" bodies t
7d50: 6f 0a 73 68 61 72 65 20 6f 6e 65 20 62 6f 64 79  o.share one body
7d60: 20 61 6d 6f 6e 67 20 73 65 76 65 72 61 6c 20 70   among several p
7d70: 61 74 74 65 72 6e 73 29 2c 20 65 6c 69 6d 69 6e  atterns), elimin
7d80: 61 74 65 73 20 22 69 6e 22 20 6e 6f 69 73 65 20  ates "in" noise 
7d90: 77 6f 72 64 2e 0a 22 43 61 73 65 22 20 63 6f 6d  word.."Case" com
7da0: 6d 61 6e 64 20 69 73 20 6e 6f 77 20 6f 62 73 6f  mand is now obso
7db0: 6c 65 74 65 2e 0a 0a 31 39 36 2e 20 36 2f 31 37  lete...196. 6/17
7dc0: 2f 39 33 20 43 68 61 6e 67 65 64 20 74 68 65 20  /93 Changed the 
7dd0: 22 65 78 65 63 22 2c 20 22 67 6c 6f 62 22 2c 20  "exec", "glob", 
7de0: 22 72 65 67 65 78 70 22 2c 20 61 6e 64 20 22 72  "regexp", and "r
7df0: 65 67 73 75 62 22 20 63 6f 6d 6d 61 6e 64 73 0a  egsub" commands.
7e00: 74 6f 20 69 6e 63 6c 75 64 65 20 61 20 22 2d 2d  to include a "--
7e10: 22 20 73 77 69 74 63 68 2e 20 20 41 6c 6c 20 69  " switch.  All i
7e20: 6e 69 74 69 61 6c 20 61 72 67 75 6d 65 6e 74 73  nitial arguments
7e30: 20 73 74 61 72 74 69 6e 67 20 77 69 74 68 20 22   starting with "
7e40: 2d 22 20 61 72 65 20 6e 6f 77 0a 74 72 65 61 74  -" are now.treat
7e50: 65 64 20 61 73 20 73 77 69 74 63 68 65 73 20 75  ed as switches u
7e60: 6e 6c 65 73 73 20 61 20 22 2d 2d 22 20 73 77 69  nless a "--" swi
7e70: 74 63 68 20 69 73 20 70 72 65 73 65 6e 74 20 74  tch is present t
7e80: 6f 20 65 6e 64 20 74 68 65 20 6c 69 73 74 2e 0a  o end the list..
7e90: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
7ea0: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
7eb0: 2a 0a 0a 31 39 37 2e 20 36 2f 31 37 2f 39 33 20  *..197. 6/17/93 
7ec0: 43 68 61 6e 67 65 64 20 61 75 74 6f 2d 65 78 65  Changed auto-exe
7ed0: 63 20 73 6f 20 74 68 61 74 20 74 68 65 20 73 75  c so that the su
7ee0: 62 70 72 6f 63 65 73 73 20 67 65 74 73 20 73 74  bprocess gets st
7ef0: 64 69 6e 2c 20 73 74 64 6f 75 74 2c 0a 61 6e 64  din, stdout,.and
7f00: 20 73 74 64 65 72 72 20 66 72 6f 6d 20 74 68 65   stderr from the
7f10: 20 70 61 72 65 6e 74 2e 20 20 54 68 69 73 20 61   parent.  This a
7f20: 6c 6c 6f 77 73 20 74 72 75 6c 79 20 69 6e 74 65  llows truly inte
7f30: 72 61 63 74 69 76 65 20 73 75 62 2d 70 72 6f 63  ractive sub-proc
7f40: 65 73 73 65 73 0a 28 65 2e 67 2e 20 76 69 29 20  esses.(e.g. vi) 
7f50: 74 6f 20 62 65 20 61 75 74 6f 2d 65 78 65 63 27  to be auto-exec'
7f60: 65 64 20 66 72 6f 6d 20 61 20 74 63 6c 20 73 68  ed from a tcl sh
7f70: 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  ell command line
7f80: 2e 0a 0a 31 39 38 2e 20 36 2f 31 38 2f 39 33 20  ...198. 6/18/93 
7f90: 41 64 64 65 64 20 70 61 74 63 68 6c 65 76 65 6c  Added patchlevel
7fa0: 2e 68 2c 20 66 6f 72 20 75 73 65 20 69 6e 20 63  .h, for use in c
7fb0: 6f 6f 72 64 69 6e 61 74 69 6e 67 20 66 75 74 75  oordinating futu
7fc0: 72 65 20 70 61 74 63 68 0a 72 65 6c 65 61 73 65  re patch.release
7fd0: 73 2c 20 61 6e 64 20 61 6c 73 6f 20 61 64 64 65  s, and also adde
7fe0: 64 20 22 69 6e 66 6f 20 70 61 74 63 68 6c 65 76  d "info patchlev
7ff0: 65 6c 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 6d  el" command to m
8000: 61 6b 65 20 74 68 65 20 70 61 74 63 68 0a 6c 65  ake the patch.le
8010: 76 65 6c 20 61 76 61 69 6c 61 62 6c 65 20 74 6f  vel available to
8020: 20 54 63 6c 20 73 63 72 69 70 74 73 2e 0a 0a 31   Tcl scripts...1
8030: 39 39 2e 20 36 2f 31 39 2f 39 33 20 4d 6f 64 69  99. 6/19/93 Modi
8040: 66 69 65 64 20 22 67 6c 6f 62 22 20 63 6f 6d 6d  fied "glob" comm
8050: 61 6e 64 20 73 6f 20 74 68 61 74 20 61 20 6c 65  and so that a le
8060: 61 64 69 6e 67 20 22 2f 2f 22 20 69 6e 20 61 20  ading "//" in a 
8070: 6e 61 6d 65 0a 67 65 74 73 20 6c 65 66 74 20 61  name.gets left a
8080: 73 20 69 73 20 28 74 68 69 73 20 69 73 20 6e 65  s is (this is ne
8090: 65 64 65 64 20 66 6f 72 20 73 79 73 74 65 6d 73  eded for systems
80a0: 20 6c 69 6b 65 20 41 70 6f 6c 6c 6f 73 20 77 68   like Apollos wh
80b0: 65 72 65 20 22 2f 2f 22 20 69 73 0a 74 68 65 20  ere "//" is.the 
80c0: 73 75 70 65 72 2d 72 6f 6f 74 3b 20 20 54 63 6c  super-root;  Tcl
80d0: 20 75 73 65 64 20 74 6f 20 63 6f 6c 6c 61 70 73   used to collaps
80e0: 65 20 74 68 65 20 74 77 6f 20 73 6c 61 73 68 65  e the two slashe
80f0: 73 20 69 6e 74 6f 20 61 20 73 69 6e 67 6c 65 0a  s into a single.
8100: 73 6c 61 73 68 29 2e 0a 0a 32 30 30 2e 20 37 2f  slash)...200. 7/
8110: 37 2f 39 33 20 41 64 64 65 64 20 54 63 6c 5f 53  7/93 Added Tcl_S
8120: 65 74 52 65 63 75 72 73 69 6f 6e 4c 69 6d 69 74  etRecursionLimit
8130: 20 70 72 6f 63 65 64 75 72 65 20 73 6f 20 74 68   procedure so th
8140: 61 74 20 74 68 65 20 6d 61 78 69 6d 75 6d 0a 61  at the maximum.a
8150: 6c 6c 6f 77 61 62 6c 65 20 6e 65 73 74 69 6e 67  llowable nesting
8160: 20 64 65 70 74 68 20 63 61 6e 20 62 65 20 63 6f   depth can be co
8170: 6e 74 72 6f 6c 6c 65 64 20 66 6f 72 20 61 6e 20  ntrolled for an 
8180: 69 6e 74 65 72 70 72 65 74 65 72 20 66 72 6f 6d  interpreter from
8190: 20 43 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   C...-----------
81a0: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
81b0: 76 65 72 73 69 6f 6e 20 37 2e 30 20 42 65 74 61  version 7.0 Beta
81c0: 20 31 2c 20 37 2f 39 2f 39 33 20 2d 2d 2d 2d 2d   1, 7/9/93 -----
81d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32  -------------..2
81e0: 30 31 2e 20 37 2f 31 32 2f 39 33 20 4d 6f 64 69  01. 7/12/93 Modi
81f0: 66 69 65 64 20 54 63 6c 5f 47 65 74 49 6e 74 20  fied Tcl_GetInt 
8200: 61 6e 64 20 74 63 6c 45 78 70 72 2e 63 20 73 6f  and tclExpr.c so
8210: 20 74 68 61 74 20 66 75 6c 6c 2d 70 72 65 63 69   that full-preci
8220: 73 69 6f 6e 0a 75 6e 73 69 67 6e 65 64 20 69 6e  sion.unsigned in
8230: 74 65 67 65 72 73 20 63 61 6e 20 62 65 20 73 70  tegers can be sp
8240: 65 63 69 66 69 65 64 20 77 69 74 68 6f 75 74 20  ecified without 
8250: 6f 76 65 72 66 6c 6f 77 20 65 72 72 6f 72 73 2e  overflow errors.
8260: 0a 0a 32 30 32 2e 20 37 2f 31 32 2f 39 33 20 43  ..202. 7/12/93 C
8270: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 63 68 61  onfiguration cha
8280: 6e 67 65 73 3a 20 20 65 6c 69 6d 69 6e 61 74 65  nges:  eliminate
8290: 20 6c 65 61 64 69 6e 67 20 62 6c 61 6e 6b 20 6c   leading blank l
82a0: 69 6e 65 20 69 6e 0a 63 6f 6e 66 69 67 75 72 65  ine in.configure
82b0: 20 73 63 72 69 70 74 3b 20 20 70 72 6f 76 69 64   script;  provid
82c0: 65 20 73 65 70 61 72 61 74 65 20 74 61 72 67 65  e separate targe
82d0: 74 73 20 69 6e 20 4d 61 6b 65 66 69 6c 65 20 66  ts in Makefile f
82e0: 6f 72 20 69 6e 73 74 61 6c 6c 69 6e 67 0a 62 69  or installing.bi
82f0: 6e 61 72 79 20 61 6e 64 20 6e 6f 6e 2d 62 69 6e  nary and non-bin
8300: 61 72 79 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 3b  ary information;
8310: 20 63 68 65 63 6b 20 66 6f 72 20 73 69 7a 65 5f   check for size_
8320: 74 20 61 6e 64 20 61 20 66 65 77 20 6f 74 68 65  t and a few othe
8330: 72 0a 70 6f 74 65 6e 74 69 61 6c 6c 79 20 6d 69  r.potentially mi
8340: 73 73 69 6e 67 20 74 79 70 65 64 65 66 73 3b 20  ssing typedefs; 
8350: 64 6f 6e 27 74 20 70 75 74 20 74 63 6c 41 70 70  don't put tclApp
8360: 49 6e 69 74 2e 6f 20 69 6e 74 6f 20 6c 69 62 74  Init.o into libt
8370: 63 6c 2e 61 3b 0a 62 65 74 74 65 72 20 63 68 65  cl.a;.better che
8380: 63 6b 73 20 66 6f 72 20 6d 61 74 68 65 72 72 20  cks for matherr 
8390: 73 75 70 70 6f 72 74 2e 0a 0a 32 30 33 2e 20 37  support...203. 7
83a0: 2f 31 34 2f 39 33 20 43 68 61 6e 67 65 64 20 74  /14/93 Changed t
83b0: 63 6c 45 78 70 72 2e 63 20 74 6f 20 63 68 65 63  clExpr.c to chec
83c0: 6b 20 74 68 65 20 74 65 72 6d 69 6e 61 74 69 6f  k the terminatio
83d0: 6e 20 70 6f 69 6e 74 65 72 20 62 65 66 6f 72 65  n pointer before
83e0: 0a 65 72 72 6e 6f 20 61 66 74 65 72 20 73 74 72  .errno after str
83f0: 74 6f 64 20 63 61 6c 6c 73 2c 20 74 6f 20 61 76  tod calls, to av
8400: 6f 69 64 20 70 72 6f 62 6c 65 6d 73 20 77 69 74  oid problems wit
8410: 68 20 73 6f 6d 65 20 76 65 72 73 69 6f 6e 73 20  h some versions 
8420: 6f 66 0a 73 74 72 74 6f 64 20 74 68 61 74 20 73  of.strtod that s
8430: 65 74 20 65 72 72 6e 6f 20 69 6e 20 75 6e 65 78  et errno in unex
8440: 70 65 63 74 65 64 20 77 61 79 73 2e 0a 0a 32 30  pected ways...20
8450: 34 2e 20 37 2f 31 36 2f 39 33 20 43 68 61 6e 67  4. 7/16/93 Chang
8460: 65 64 20 22 73 63 61 6e 22 20 63 6f 6d 6d 61 6e  ed "scan" comman
8470: 64 20 74 6f 20 62 65 20 6d 6f 72 65 20 41 4e 53  d to be more ANS
8480: 49 2d 63 6f 6e 66 6f 72 6d 61 6e 74 3a 0a 65 6c  I-conformant:.el
8490: 69 6d 69 6e 61 74 65 64 20 25 46 2c 20 25 44 2c  iminated %F, %D,
84a0: 20 65 74 63 2e 2c 20 61 64 64 65 64 20 63 6f 64   etc., added cod
84b0: 65 20 74 6f 20 69 67 6e 6f 72 65 20 22 6c 22 2c  e to ignore "l",
84c0: 20 22 68 22 2c 20 61 6e 64 20 22 4c 22 0a 6d 6f   "h", and "L".mo
84d0: 64 69 66 69 65 72 73 20 62 75 74 20 61 6c 77 61  difiers but alwa
84e0: 79 73 20 63 6f 6e 76 65 72 74 20 25 65 2c 20 25  ys convert %e, %
84f0: 66 2c 20 61 6e 64 20 25 67 20 77 69 74 68 20 69  f, and %g with i
8500: 6d 70 6c 69 63 69 74 20 22 6c 22 3b 0a 61 6c 73  mplicit "l";.als
8510: 6f 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20  o added support 
8520: 66 6f 72 20 25 75 20 61 6e 64 20 25 69 2e 20 20  for %u and %i.  
8530: 41 6c 73 6f 20 63 68 61 6e 67 65 64 20 22 66 6f  Also changed "fo
8540: 72 6d 61 74 22 20 63 6f 6d 6d 61 6e 64 0a 74 6f  rmat" command.to
8550: 20 65 6c 69 6d 69 6e 61 74 65 20 25 44 2c 20 25   eliminate %D, %
8560: 55 2c 20 25 4f 2c 20 61 6e 64 20 61 64 64 20 25  U, %O, and add %
8570: 69 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  i..*** POTENTIAL
8580: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
8590: 20 2a 2a 2a 0a 0a 32 30 35 2e 20 37 2f 31 37 2f   ***..205. 7/17/
85a0: 39 33 20 43 68 61 6e 67 65 64 20 22 75 70 6c 65  93 Changed "uple
85b0: 76 65 6c 22 20 61 6e 64 20 22 75 70 76 61 72 22  vel" and "upvar"
85c0: 20 73 6f 20 74 68 61 74 20 74 68 65 79 20 63 61   so that they ca
85d0: 6e 20 62 65 20 75 73 65 64 0a 66 72 6f 6d 20 67  n be used.from g
85e0: 6c 6f 62 61 6c 20 6c 65 76 65 6c 20 74 6f 20 67  lobal level to g
85f0: 6c 6f 62 61 6c 20 6c 65 76 65 6c 3a 20 20 74 68  lobal level:  th
8600: 69 73 20 75 73 65 64 20 74 6f 20 67 65 6e 65 72  is used to gener
8610: 61 74 65 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 32  ate an error...2
8620: 30 36 2e 20 37 2f 31 39 2f 39 33 20 52 65 6e 61  06. 7/19/93 Rena
8630: 6d 65 64 20 22 73 65 74 65 6e 76 22 2c 20 22 70  med "setenv", "p
8640: 75 74 65 6e 76 22 2c 20 61 6e 64 20 22 75 6e 73  utenv", and "uns
8650: 65 74 65 6e 76 22 20 70 72 6f 63 65 64 75 72 65  etenv" procedure
8660: 73 0a 74 6f 20 61 76 6f 69 64 20 63 6f 6e 66 6c  s.to avoid confl
8670: 69 63 74 73 20 77 69 74 68 20 73 79 73 74 65 6d  icts with system
8680: 20 70 72 6f 63 65 64 75 72 65 73 20 77 69 74 68   procedures with
8690: 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 73 2e   the same names.
86a0: 20 20 49 66 0a 79 6f 75 20 77 61 6e 74 20 54 63    If.you want Tc
86b0: 6c 27 73 20 70 72 6f 63 65 64 75 72 65 73 20 74  l's procedures t
86c0: 6f 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 73  o override the s
86d0: 79 73 74 65 6d 20 70 72 6f 63 65 64 75 72 65 73  ystem procedures
86e0: 2c 20 64 6f 20 69 74 0a 69 6e 20 74 68 65 20 4d  , do it.in the M
86f0: 61 6b 65 66 69 6c 65 20 28 69 6e 73 74 72 75 63  akefile (instruc
8700: 74 69 6f 6e 73 20 61 72 65 20 69 6e 20 74 68 65  tions are in the
8710: 20 4d 61 6b 65 66 69 6c 65 29 2e 0a 2a 2a 2a 20   Makefile)..*** 
8720: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
8730: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d  ATIBILITY ***..-
8740: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
8750: 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f   Released versio
8760: 6e 20 37 2e 30 20 42 65 74 61 20 32 2c 20 37 2f  n 7.0 Beta 2, 7/
8770: 32 31 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  21/93 ----------
8780: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 30 37 2e 20 37  --------..207. 7
8790: 2f 32 31 2f 39 33 20 46 69 78 65 64 20 62 75 67  /21/93 Fixed bug
87a0: 20 69 6e 20 74 63 6c 56 61 72 2e 63 20 77 68 65   in tclVar.c whe
87b0: 72 65 20 66 72 65 65 64 20 6d 65 6d 6f 72 79 20  re freed memory 
87c0: 77 61 73 20 61 63 63 69 64 65 6e 74 61 6c 6c 79  was accidentally
87d0: 0a 75 73 65 64 20 69 66 20 61 20 70 72 6f 63 65  .used if a proce
87e0: 64 75 72 65 20 72 65 74 75 72 6e 65 64 20 61 6e  dure returned an
87f0: 20 65 6c 65 6d 65 6e 74 20 6f 66 20 61 20 6c 6f   element of a lo
8800: 63 61 6c 20 61 72 72 61 79 2e 0a 0a 32 30 38 2e  cal array...208.
8810: 20 37 2f 32 32 2f 39 33 20 46 69 78 65 64 20 62   7/22/93 Fixed b
8820: 75 67 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e 22 20  ug in "unknown" 
8830: 77 68 65 72 65 20 69 74 20 64 69 64 6e 27 74 20  where it didn't 
8840: 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65 0a  properly handle.
8850: 65 72 72 6f 72 73 20 6f 63 63 75 72 72 69 6e 67  errors occurring
8860: 20 69 6e 20 74 68 65 20 22 61 75 74 6f 5f 6c 6f   in the "auto_lo
8870: 61 64 22 20 70 72 6f 63 65 64 75 72 65 2c 20 6c  ad" procedure, l
8880: 65 61 76 69 6e 67 20 69 74 73 20 73 74 61 74 65  eaving its state
8890: 0a 69 6e 63 6f 6e 73 69 73 74 65 6e 74 2e 0a 0a  .inconsistent...
88a0: 32 30 39 2e 20 37 2f 32 33 2f 39 33 20 43 68 61  209. 7/23/93 Cha
88b0: 6e 67 65 64 20 65 78 65 63 27 73 20 22 3e 32 22  nged exec's ">2"
88c0: 20 72 65 64 69 72 65 63 74 69 6f 6e 20 6f 70 65   redirection ope
88d0: 72 61 74 6f 72 20 74 6f 20 22 32 3e 22 20 66 6f  rator to "2>" fo
88e0: 72 0a 63 6f 6e 73 69 73 74 65 6e 63 79 20 77 69  r.consistency wi
88f0: 74 68 20 73 68 2e 20 20 54 68 69 73 20 69 73 20  th sh.  This is 
8900: 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74  incompatible wit
8910: 68 20 65 61 72 6c 69 65 72 20 62 65 74 61 20 72  h earlier beta r
8920: 65 6c 65 61 73 65 73 0a 6f 66 20 37 2e 30 20 62  eleases.of 7.0 b
8930: 75 74 20 6e 6f 74 20 77 69 74 68 20 70 72 65 2d  ut not with pre-
8940: 37 2e 30 20 72 65 6c 65 61 73 65 73 2c 20 77 68  7.0 releases, wh
8950: 69 63 68 20 64 69 64 6e 27 74 20 73 75 70 70 6f  ich didn't suppo
8960: 72 74 20 65 69 74 68 65 72 0a 6f 70 65 72 61 74  rt either.operat
8970: 6f 72 2e 0a 0a 32 31 30 2e 20 37 2f 32 38 2f 39  or...210. 7/28/9
8980: 33 20 43 68 61 6e 67 65 64 20 62 61 63 6b 73 6c  3 Changed backsl
8990: 61 73 68 2d 6e 65 77 6c 69 6e 65 20 68 61 6e 64  ash-newline hand
89a0: 6c 69 6e 67 20 73 6f 20 74 68 61 74 20 74 68 65  ling so that the
89b0: 20 72 65 73 75 6c 74 69 6e 67 0a 73 70 61 63 65   resulting.space
89c0: 20 63 68 61 72 61 63 74 65 72 20 2a 69 73 2a 20   character *is* 
89d0: 74 72 65 61 74 65 64 20 61 73 20 61 20 77 6f 72  treated as a wor
89e0: 64 20 73 65 70 61 72 61 74 6f 72 20 75 6e 6c 65  d separator unle
89f0: 73 73 20 74 68 65 20 62 61 63 6b 73 6c 61 73 68  ss the backslash
8a00: 0a 73 65 71 75 65 6e 63 65 20 69 73 20 69 6e 20  .sequence is in 
8a10: 71 75 6f 74 65 73 20 6f 72 20 62 72 61 63 65 73  quotes or braces
8a20: 2e 20 20 54 68 69 73 20 69 73 20 69 6e 63 6f 6d  .  This is incom
8a30: 70 61 74 69 62 6c 65 20 77 69 74 68 20 37 2e 30  patible with 7.0
8a40: 62 31 0a 61 6e 64 20 37 2e 30 62 32 20 62 75 74  b1.and 7.0b2 but
8a50: 20 69 73 20 6d 6f 72 65 20 63 6f 6d 70 61 74 69   is more compati
8a60: 62 6c 65 20 77 69 74 68 20 70 72 65 2d 37 2e 30  ble with pre-7.0
8a70: 20 76 65 72 73 69 6f 6e 73 20 74 68 61 74 20 74   versions that t
8a80: 68 65 20 62 31 0a 61 6e 64 20 62 32 20 72 65 6c  he b1.and b2 rel
8a90: 65 61 73 65 73 20 77 65 72 65 2e 0a 0a 32 31 31  eases were...211
8aa0: 2e 20 37 2f 32 38 2f 39 33 20 45 6c 69 6d 69 6e  . 7/28/93 Elimin
8ab0: 61 74 65 64 20 54 63 6c 5f 4c 69 6e 6b 65 64 56  ated Tcl_LinkedV
8ac0: 61 72 57 72 69 74 61 62 6c 65 2c 20 61 64 64 65  arWritable, adde
8ad0: 64 20 54 43 4c 5f 4c 49 4e 4b 5f 52 45 41 44 5f  d TCL_LINK_READ_
8ae0: 4f 4e 4c 59 20 74 6f 0a 54 63 6c 5f 4c 69 6e 6b  ONLY to.Tcl_Link
8af0: 56 61 72 20 74 6f 20 61 63 63 6f 6d 70 6c 69 73  Var to accomplis
8b00: 68 20 73 61 6d 65 20 70 75 72 70 6f 73 65 2e 20  h same purpose. 
8b10: 20 54 68 69 73 20 63 68 61 6e 67 65 20 69 73 20   This change is 
8b20: 69 6e 63 6f 6d 70 61 74 69 62 6c 65 0a 77 69 74  incompatible.wit
8b30: 68 20 65 61 72 6c 69 65 72 20 62 65 74 61 20 72  h earlier beta r
8b40: 65 6c 65 61 73 65 73 2c 20 62 75 74 20 6e 6f 74  eleases, but not
8b50: 20 77 69 74 68 20 72 65 6c 65 61 73 65 73 20 62   with releases b
8b60: 65 66 6f 72 65 20 54 63 6c 20 37 2e 30 2e 0a 0a  efore Tcl 7.0...
8b70: 32 31 32 2e 20 37 2f 32 39 2f 39 33 20 52 65 6e  212. 7/29/93 Ren
8b80: 61 6d 65 64 20 72 65 67 65 78 70 20 43 20 66 75  amed regexp C fu
8b90: 6e 63 74 69 6f 6e 73 20 73 6f 20 74 68 65 79 20  nctions so they 
8ba0: 77 6f 6e 27 74 20 63 6c 61 73 68 20 77 69 74 68  won't clash with
8bb0: 20 50 4f 53 49 58 0a 72 65 67 65 78 70 20 66 75   POSIX.regexp fu
8bc0: 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 75 73 65  nctions that use
8bd0: 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 2e 0a   the same name..
8be0: 0a 32 31 33 2e 20 38 2f 33 2f 39 33 20 41 64 64  .213. 8/3/93 Add
8bf0: 65 64 20 22 2d 65 72 72 6f 72 69 6e 66 6f 22 20  ed "-errorinfo" 
8c00: 61 6e 64 20 22 2d 65 72 72 6f 72 63 6f 64 65 22  and "-errorcode"
8c10: 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 72 65 74   options to "ret
8c20: 75 72 6e 22 0a 63 6f 6d 6d 61 6e 64 3a 20 74 68  urn".command: th
8c30: 65 73 65 20 61 6c 6c 6f 77 20 66 6f 72 20 6d 75  ese allow for mu
8c40: 63 68 20 62 65 74 74 65 72 20 68 61 6e 64 6c 69  ch better handli
8c50: 6e 67 20 6f 66 20 74 68 65 20 65 72 72 6f 72 49  ng of the errorI
8c60: 6e 66 6f 0a 61 6e 64 20 65 72 72 6f 72 43 6f 64  nfo.and errorCod
8c70: 65 20 76 61 72 69 61 62 6c 65 73 20 69 6e 20 73  e variables in s
8c80: 6f 6d 65 20 63 61 73 65 73 2e 0a 0a 32 31 34 2e  ome cases...214.
8c90: 20 38 2f 31 32 2f 39 33 20 43 68 61 6e 67 65 64   8/12/93 Changed
8ca0: 20 22 65 78 70 72 22 20 73 6f 20 74 68 61 74 20   "expr" so that 
8cb0: 25 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73  % always returns
8cc0: 20 61 20 72 65 6d 61 69 6e 64 65 72 20 77 69 74   a remainder wit
8cd0: 68 0a 74 68 65 20 73 61 6d 65 20 73 69 67 6e 20  h.the same sign 
8ce0: 61 73 20 74 68 65 20 64 69 76 69 73 6f 72 20 61  as the divisor a
8cf0: 6e 64 20 61 62 73 6f 6c 75 74 65 20 76 61 6c 75  nd absolute valu
8d00: 65 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 74  e smaller than t
8d10: 68 65 0a 64 69 76 69 73 6f 72 2e 0a 0a 32 31 35  he.divisor...215
8d20: 2e 20 38 2f 31 34 2f 39 33 20 54 75 72 6e 65 64  . 8/14/93 Turned
8d30: 20 6f 66 66 20 61 75 74 6f 2d 65 78 65 63 20 69   off auto-exec i
8d40: 6e 20 22 75 6e 6b 6e 6f 77 6e 22 20 75 6e 6c 65  n "unknown" unle
8d50: 73 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 77  ss the command.w
8d60: 61 73 20 74 79 70 65 64 20 69 6e 74 65 72 61 63  as typed interac
8d70: 74 69 76 65 6c 79 2e 20 20 54 68 69 73 20 6d 65  tively.  This me
8d80: 61 6e 73 20 79 6f 75 20 6d 75 73 74 20 75 73 65  ans you must use
8d90: 20 22 65 78 65 63 22 20 77 68 65 6e 0a 69 6e 76   "exec" when.inv
8da0: 6f 6b 69 6e 67 20 73 75 62 70 72 6f 63 65 73 73  oking subprocess
8db0: 65 73 2c 20 75 6e 6c 65 73 73 20 69 74 27 73 20  es, unless it's 
8dc0: 61 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 27 73  a command that's
8dd0: 20 74 79 70 65 64 20 69 6e 74 65 72 61 63 74 69   typed interacti
8de0: 76 65 6c 79 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  vely..*** POTENT
8df0: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
8e00: 49 54 59 20 2a 2a 2a 0a 0a 32 31 36 2e 20 38 2f  ITY ***..216. 8/
8e10: 31 34 2f 39 33 20 41 64 64 65 64 20 73 75 70 70  14/93 Added supp
8e20: 6f 72 74 20 66 6f 72 20 74 63 6c 5f 70 72 6f 6d  ort for tcl_prom
8e30: 70 74 31 20 61 6e 64 20 74 63 6c 5f 70 72 6f 6d  pt1 and tcl_prom
8e40: 70 74 32 20 76 61 72 69 61 62 6c 65 73 0a 74 6f  pt2 variables.to
8e50: 20 74 63 6c 4d 61 69 6e 2e 63 3a 20 20 6d 61 6b   tclMain.c:  mak
8e60: 65 73 20 70 72 6f 6d 70 74 73 20 75 73 65 72 2d  es prompts user-
8e70: 73 65 74 74 61 62 6c 65 2e 0a 0a 32 31 37 2e 20  settable...217. 
8e80: 38 2f 31 34 2f 39 33 20 41 64 64 65 64 20 61 73  8/14/93 Added as
8e90: 79 6e 63 68 72 6f 6e 6f 75 73 20 68 61 6e 64 6c  ynchronous handl
8ea0: 65 72 73 20 28 54 63 6c 5f 41 73 79 6e 63 43 72  ers (Tcl_AsyncCr
8eb0: 65 61 74 65 20 65 74 63 2e 29 20 73 6f 0a 74 68  eate etc.) so.th
8ec0: 61 74 20 73 69 67 6e 61 6c 73 20 63 61 6e 20 62  at signals can b
8ed0: 65 20 74 61 6b 65 6e 20 63 6c 65 61 6e 6c 79 20  e taken cleanly 
8ee0: 62 79 20 54 63 6c 20 61 70 70 6c 69 63 61 74 69  by Tcl applicati
8ef0: 6f 6e 73 2e 0a 0a 32 31 38 2e 20 38 2f 31 36 2f  ons...218. 8/16/
8f00: 39 33 20 4d 6f 76 65 64 20 69 6e 66 6f 72 6d 61  93 Moved informa
8f10: 74 69 6f 6e 20 61 62 6f 75 74 20 6f 70 65 6e 20  tion about open 
8f20: 66 69 6c 65 73 20 66 72 6f 6d 20 74 68 65 20 69  files from the i
8f30: 6e 74 65 72 70 72 65 74 65 72 0a 73 74 72 75 63  nterpreter.struc
8f40: 74 75 72 65 20 74 6f 20 67 6c 6f 62 61 6c 20 76  ture to global v
8f50: 61 72 69 61 62 6c 65 73 20 73 6f 20 74 68 61 74  ariables so that
8f60: 20 61 20 66 69 6c 65 20 63 61 6e 20 62 65 20 6f   a file can be o
8f70: 70 65 6e 65 64 20 69 6e 20 6f 6e 65 0a 69 6e 74  pened in one.int
8f80: 65 72 70 72 65 74 65 72 20 61 6e 64 20 72 65 61  erpreter and rea
8f90: 64 20 6f 72 20 77 72 69 74 74 65 6e 20 69 6e 20  d or written in 
8fa0: 61 6e 6f 74 68 65 72 2e 0a 0a 32 31 39 2e 20 38  another...219. 8
8fb0: 2f 31 36 2f 39 33 20 52 65 6d 6f 76 65 64 20 45  /16/93 Removed E
8fc0: 4e 56 5f 46 4c 41 47 53 20 66 72 6f 6d 20 4d 61  NV_FLAGS from Ma
8fd0: 6b 65 66 69 6c 65 2c 20 73 6f 20 74 68 61 74 20  kefile, so that 
8fe0: 74 68 65 72 65 27 73 20 6e 6f 0a 6f 66 66 69 63  there's no.offic
8ff0: 69 61 6c 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ial support for 
9000: 6f 76 65 72 72 69 64 69 6e 67 20 73 65 74 65 6e  overriding seten
9010: 76 2c 20 75 6e 73 65 74 65 6e 76 2c 20 61 6e 64  v, unsetenv, and
9020: 20 70 75 74 65 6e 76 2e 0a 0a 32 32 30 2e 20 38   putenv...220. 8
9030: 2f 32 30 2f 39 33 20 56 61 72 69 6f 75 73 20 63  /20/93 Various c
9040: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 69 6d 70  onfiguration imp
9050: 72 6f 76 65 6d 65 6e 74 73 3a 20 20 63 6f 65 72  rovements:  coer
9060: 63 65 20 63 68 61 72 73 0a 74 6f 20 75 6e 73 69  ce chars.to unsi
9070: 67 6e 65 64 20 63 68 61 72 73 20 62 65 66 6f 72  gned chars befor
9080: 65 20 75 73 69 6e 67 20 6d 61 63 72 6f 73 20 6c  e using macros l
9090: 69 6b 65 20 69 73 73 70 61 63 65 3b 20 20 73 6f  ike isspace;  so
90a0: 75 72 63 65 20 7e 2f 2e 74 63 6c 73 68 72 63 0a  urce ~/.tclshrc.
90b0: 66 69 6c 65 20 64 75 72 69 6e 67 20 69 6e 69 74  file during init
90c0: 69 61 6c 69 7a 61 74 69 6f 6e 20 69 66 20 69 74  ialization if it
90d0: 20 65 78 69 73 74 73 20 61 6e 64 20 70 72 6f 67   exists and prog
90e0: 72 61 6d 20 69 73 20 72 75 6e 6e 69 6e 67 0a 69  ram is running.i
90f0: 6e 74 65 72 61 63 74 69 76 65 6c 79 3b 20 20 61  nteractively;  a
9100: 6c 6c 6f 77 20 74 68 65 72 65 20 74 6f 20 62 65  llow there to be
9110: 20 64 69 72 65 63 74 6f 72 69 65 73 20 69 6e 20   directories in 
9120: 61 75 74 6f 5f 70 61 74 68 20 74 68 61 74 20 64  auto_path that d
9130: 6f 6e 27 74 0a 65 78 69 73 74 20 6f 72 20 64 6f  on't.exist or do
9140: 6e 27 74 20 68 61 76 65 20 74 63 6c 49 6e 64 65  n't have tclInde
9150: 78 20 66 69 6c 65 73 20 28 69 67 6e 6f 72 65 20  x files (ignore 
9160: 74 68 65 6d 29 3b 20 61 64 64 65 64 20 54 63 6c  them); added Tcl
9170: 5f 49 6e 69 74 0a 70 72 6f 63 65 64 75 72 65 20  _Init.procedure 
9180: 61 6e 64 20 63 68 61 6e 67 65 64 20 54 63 6c 5f  and changed Tcl_
9190: 41 70 70 49 6e 69 74 20 74 6f 20 63 61 6c 6c 20  AppInit to call 
91a0: 69 74 2e 0a 0a 32 32 31 2e 20 38 2f 32 31 2f 39  it...221. 8/21/9
91b0: 33 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 65  3 Fixed bug in e
91c0: 78 70 72 20 77 68 65 72 65 20 22 2b 22 2c 20 22  xpr where "+", "
91d0: 2d 22 2c 20 61 6e 64 20 22 20 22 20 77 65 72 65  -", and " " were
91e0: 20 61 6c 6c 0a 67 65 74 74 69 6e 67 20 74 72 65   all.getting tre
91f0: 61 74 65 64 20 61 73 20 69 6e 74 65 67 65 72 73  ated as integers
9200: 20 77 69 74 68 20 76 61 6c 75 65 20 30 2e 0a 0a   with value 0...
9210: 32 32 32 2e 20 38 2f 32 36 2f 39 33 20 41 64 64  222. 8/26/93 Add
9220: 65 64 20 22 74 63 6c 5f 69 6e 74 65 72 61 63 74  ed "tcl_interact
9230: 69 76 65 22 20 76 61 72 69 61 62 6c 65 20 74 6f  ive" variable to
9240: 20 74 63 6c 73 68 2e 0a 0a 32 32 33 2e 20 38 2f   tclsh...223. 8/
9250: 32 37 2f 39 33 20 41 64 64 65 64 20 70 72 6f 63  27/93 Added proc
9260: 65 64 75 72 65 20 54 63 6c 5f 46 69 6c 65 50 65  edure Tcl_FilePe
9270: 72 6d 69 73 73 69 6f 6e 73 20 74 6f 20 72 65 74  rmissions to ret
9280: 75 72 6e 20 77 68 65 74 68 65 72 20 61 0a 67 69  urn whether a.gi
9290: 76 65 6e 20 66 69 6c 65 20 63 61 6e 20 62 65 20  ven file can be 
92a0: 72 65 61 64 20 6f 72 20 77 72 69 74 74 65 6e 20  read or written 
92b0: 6f 72 20 62 6f 74 68 2e 20 20 4d 6f 64 69 66 69  or both.  Modifi
92c0: 65 64 20 54 63 6c 5f 45 6e 74 65 72 46 69 6c 65  ed Tcl_EnterFile
92d0: 0a 74 6f 20 74 61 6b 65 20 61 20 70 65 72 6d 69  .to take a permi
92e0: 73 73 69 6f 6e 73 20 6d 61 73 6b 20 72 61 74 68  ssions mask rath
92f0: 65 72 20 74 68 61 6e 20 73 65 70 61 72 61 74 65  er than separate
9300: 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20   read and write 
9310: 61 72 67 75 6d 65 6e 74 73 2e 0a 0a 32 32 34 2e  arguments...224.
9320: 20 38 2f 32 38 2f 39 33 20 46 69 78 65 64 20 70   8/28/93 Fixed p
9330: 65 72 66 6f 72 6d 61 6e 63 65 20 62 75 67 20 69  erformance bug i
9340: 6e 20 22 67 6c 6f 62 22 20 63 6f 6d 6d 61 6e 64  n "glob" command
9350: 20 28 75 6e 6e 65 63 65 73 73 61 72 79 20 63 61   (unnecessary ca
9360: 6c 6c 0a 74 6f 20 22 61 63 63 65 73 73 22 20 66  ll.to "access" f
9370: 6f 72 20 65 61 63 68 20 66 69 6c 65 20 63 61 75  or each file cau
9380: 73 65 64 20 61 20 35 2d 31 30 78 20 73 6c 6f 77  sed a 5-10x slow
9390: 2d 64 6f 77 6e 20 66 6f 72 20 62 69 67 20 64 69  -down for big di
93a0: 72 65 63 74 6f 72 69 65 73 29 2e 0a 0a 2d 2d 2d  rectories)...---
93b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
93c0: 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20  eleased version 
93d0: 37 2e 30 20 42 65 74 61 20 33 2c 20 38 2f 32 38  7.0 Beta 3, 8/28
93e0: 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /93 ------------
93f0: 2d 2d 2d 2d 2d 2d 0a 0a 32 32 35 2e 20 39 2f 39  ------..225. 9/9
9400: 2f 39 33 20 52 65 6e 61 6d 65 64 20 72 65 67 65  /93 Renamed rege
9410: 78 70 2e 68 20 74 6f 20 74 63 6c 52 65 67 65 78  xp.h to tclRegex
9420: 70 2e 68 20 74 6f 20 61 76 6f 69 64 20 63 6f 6e  p.h to avoid con
9430: 66 6c 69 63 74 73 20 77 69 74 68 20 73 79 73 74  flicts with syst
9440: 65 6d 0a 69 6e 63 6c 75 64 65 20 66 69 6c 65 20  em.include file 
9450: 62 79 20 73 61 6d 65 20 6e 61 6d 65 2e 0a 0a 32  by same name...2
9460: 32 36 2e 20 39 2f 39 2f 39 33 20 41 64 64 65 64  26. 9/9/93 Added
9470: 20 54 63 6c 5f 44 6f 6e 74 43 61 6c 6c 57 68 65   Tcl_DontCallWhe
9480: 6e 44 65 6c 65 74 65 64 2e 0a 0a 32 32 37 2e 20  nDeleted...227. 
9490: 39 2f 31 36 2f 39 33 20 43 68 61 6e 67 65 64 20  9/16/93 Changed 
94a0: 6e 6f 74 20 74 6f 20 63 61 6c 6c 20 65 78 69 74  not to call exit
94b0: 20 43 20 70 72 6f 63 65 64 75 72 65 20 64 69 72   C procedure dir
94c0: 65 63 74 6c 79 3b 20 20 69 6e 73 74 65 61 64 0a  ectly;  instead.
94d0: 61 6c 77 61 79 73 20 69 6e 76 6f 6b 65 20 22 65  always invoke "e
94e0: 78 69 74 22 20 54 63 6c 20 63 6f 6d 6d 61 6e 64  xit" Tcl command
94f0: 20 73 6f 20 74 68 61 74 20 61 70 70 6c 69 63 61   so that applica
9500: 74 69 6f 6e 20 63 61 6e 20 72 65 64 65 66 69 6e  tion can redefin
9510: 65 20 74 68 65 0a 63 6f 6d 6d 61 6e 64 20 74 6f  e the.command to
9520: 20 64 6f 20 61 64 64 69 74 69 6f 6e 61 6c 20 63   do additional c
9530: 6c 65 61 6e 75 70 2e 0a 0a 32 32 38 2e 20 39 2f  leanup...228. 9/
9540: 31 37 2f 39 33 20 43 68 61 6e 67 65 64 20 61 75  17/93 Changed au
9550: 74 6f 2d 65 78 65 63 20 74 6f 20 68 61 6e 64 6c  to-exec to handl
9560: 65 20 6e 61 6d 65 73 20 74 68 61 74 20 63 6f 6e  e names that con
9570: 74 61 69 6e 20 73 6c 61 73 68 65 73 0a 28 69 2e  tain slashes.(i.
9580: 65 2e 20 64 6f 6e 27 74 20 75 73 65 20 50 41 54  e. don't use PAT
9590: 48 20 66 6f 72 20 74 68 65 6d 29 2e 0a 0a 32 32  H for them)...22
95a0: 39 2e 20 39 2f 32 33 2f 39 33 20 46 69 78 65 64  9. 9/23/93 Fixed
95b0: 20 62 75 67 20 69 6e 20 22 72 65 61 64 22 20 61   bug in "read" a
95c0: 6e 64 20 22 67 65 74 73 22 20 63 6f 6d 6d 61 6e  nd "gets" comman
95d0: 64 73 20 77 68 65 72 65 20 74 68 65 79 20 64 69  ds where they di
95e0: 64 6e 27 74 0a 63 6c 65 61 72 20 45 4f 46 20 63  dn't.clear EOF c
95f0: 6f 6e 64 69 74 69 6f 6e 73 2e 0a 0a 2d 2d 2d 2d  onditions...----
9600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
9610: 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20 37  leased version 7
9620: 2e 30 2c 20 39 2f 32 39 2f 39 33 20 2d 2d 2d 2d  .0, 9/29/93 ----
9630: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
9640: 32 33 30 2e 20 31 30 2f 37 2f 39 33 20 22 53 63  230. 10/7/93 "Sc
9650: 61 6e 22 20 63 6f 6d 6d 61 6e 64 20 77 61 73 6e  an" command wasn
9660: 27 74 20 70 72 6f 70 65 72 6c 79 20 61 6c 69 67  't properly alig
9670: 6e 69 6e 67 20 74 68 69 6e 67 73 20 69 6e 20 6d  ning things in m
9680: 65 6d 6f 72 79 2c 0a 73 6f 20 73 65 67 6d 65 6e  emory,.so segmen
9690: 74 61 74 69 6f 6e 20 66 61 75 6c 74 73 20 63 6f  tation faults co
96a0: 75 6c 64 20 61 72 69 73 65 20 75 6e 64 65 72 20  uld arise under 
96b0: 73 6f 6d 65 20 63 69 72 63 75 6d 73 74 61 6e 63  some circumstanc
96c0: 65 73 2e 0a 0a 32 33 31 2e 20 31 30 2f 37 2f 39  es...231. 10/7/9
96d0: 33 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54  3 Fixed bug in T
96e0: 63 6c 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e  cl_ConvertElemen
96f0: 74 20 77 68 65 72 65 20 69 74 20 66 6f 72 67 6f  t where it forgo
9700: 74 20 74 6f 0a 62 61 63 6b 73 6c 61 73 68 20 6c  t to.backslash l
9710: 65 61 64 69 6e 67 20 63 75 72 6c 79 20 62 72 61  eading curly bra
9720: 63 65 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67  ce when creating
9730: 20 6c 69 73 74 73 2e 0a 0a 32 33 32 2e 20 31 30   lists...232. 10
9740: 2f 37 2f 39 33 20 45 6c 69 6d 69 6e 61 74 65 64  /7/93 Eliminated
9750: 20 64 65 70 65 6e 64 65 6e 63 79 20 6f 66 20 74   dependency of t
9760: 63 6c 4d 61 69 6e 2e 63 20 6f 6e 20 74 63 6c 49  clMain.c on tclI
9770: 6e 74 2e 68 20 61 6e 64 0a 74 63 6c 55 6e 69 78  nt.h and.tclUnix
9780: 2e 68 2c 20 73 6f 20 74 68 61 74 20 70 65 6f 70  .h, so that peop
9790: 6c 65 20 63 61 6e 20 63 6f 70 79 20 74 68 65 20  le can copy the 
97a0: 66 69 6c 65 20 6f 75 74 20 6f 66 20 74 68 65 20  file out of the 
97b0: 54 63 6c 20 73 6f 75 72 63 65 0a 64 69 72 65 63  Tcl source.direc
97c0: 74 6f 72 79 20 74 6f 20 6d 61 6b 65 20 6d 6f 64  tory to make mod
97d0: 69 66 69 65 64 20 70 72 69 76 61 74 65 20 76 65  ified private ve
97e0: 72 73 69 6f 6e 73 2e 0a 0a 32 33 33 2e 20 31 30  rsions...233. 10
97f0: 2f 38 2f 39 33 20 46 69 78 65 64 20 62 75 67 20  /8/93 Fixed bug 
9800: 69 6e 20 61 75 74 6f 2d 6c 6f 61 64 65 72 20 74  in auto-loader t
9810: 68 61 74 20 72 65 76 65 72 73 65 64 20 74 68 65  hat reversed the
9820: 20 70 72 69 6f 72 69 74 79 20 6f 72 64 65 72 0a   priority order.
9830: 6f 66 20 65 6e 74 72 69 65 73 20 69 6e 20 61 75  of entries in au
9840: 74 6f 5f 70 61 74 68 20 66 6f 72 20 6e 65 77 2d  to_path for new-
9850: 73 74 79 6c 65 20 69 6e 64 65 78 20 66 69 6c 65  style index file
9860: 73 2e 20 20 4e 6f 77 20 74 68 69 6e 67 73 20 61  s.  Now things a
9870: 72 65 0a 62 61 63 6b 20 74 6f 20 74 68 65 20 77  re.back to the w
9880: 61 79 20 74 68 65 79 20 77 65 72 65 20 62 65 66  ay they were bef
9890: 6f 72 65 20 33 2e 30 3a 20 20 66 69 72 73 74 20  ore 3.0:  first 
98a0: 69 6e 20 61 75 74 6f 5f 70 61 74 68 20 69 73 20  in auto_path is 
98b0: 61 6c 77 61 79 73 0a 68 69 67 68 65 73 74 20 70  always.highest p
98c0: 72 69 6f 72 69 74 79 2e 0a 0a 32 33 34 2e 20 31  riority...234. 1
98d0: 30 2f 31 33 2f 39 33 20 46 69 78 65 64 20 62 75  0/13/93 Fixed bu
98e0: 67 20 77 68 65 72 65 20 54 63 6c 5f 43 6f 6d 6d  g where Tcl_Comm
98f0: 61 6e 64 43 6f 6d 70 6c 65 74 65 20 64 69 64 6e  andComplete didn
9900: 27 74 20 72 65 63 6f 67 6e 69 7a 65 0a 63 6f 6d  't recognize.com
9910: 6d 65 6e 74 73 20 61 6e 64 20 74 72 65 61 74 20  ments and treat 
9920: 74 68 65 6d 20 61 73 20 73 75 63 68 2e 20 20 54  them as such.  T
9930: 68 75 73 20 69 66 20 79 6f 75 20 74 79 70 65 64  hus if you typed
9940: 20 74 68 65 20 6c 69 6e 65 0a 20 20 20 20 23 20   the line.    # 
9950: 7b 0a 69 6e 74 65 72 61 63 74 69 76 65 6c 79 2c  {.interactively,
9960: 20 54 63 6c 20 77 6f 75 6c 64 20 74 68 69 6e 6b   Tcl would think
9970: 20 74 68 61 74 20 74 68 65 20 63 6f 6d 6d 61 6e   that the comman
9980: 64 20 77 61 73 6e 27 74 20 63 6f 6d 70 6c 65 74  d wasn't complet
9990: 65 20 61 6e 64 0a 77 61 69 74 20 66 6f 72 20 6d  e and.wait for m
99a0: 6f 72 65 20 69 6e 70 75 74 20 62 65 66 6f 72 65  ore input before
99b0: 20 65 76 61 6c 75 61 74 69 6e 67 20 74 68 65 20   evaluating the 
99c0: 73 63 72 69 70 74 2e 0a 0a 32 33 35 2e 20 31 30  script...235. 10
99d0: 2f 31 34 2f 39 33 20 46 69 78 65 64 20 62 75 67  /14/93 Fixed bug
99e0: 20 77 68 65 72 65 20 22 72 65 67 73 75 62 22 20   where "regsub" 
99f0: 64 69 64 6e 27 74 20 73 65 74 20 74 68 65 20 6f  didn't set the o
9a00: 75 74 70 75 74 20 76 61 72 69 61 62 6c 65 0a 69  utput variable.i
9a10: 66 20 74 68 65 20 69 6e 70 75 74 20 73 74 72 69  f the input stri
9a20: 6e 67 20 77 61 73 20 65 6d 70 74 79 2e 0a 0a 32  ng was empty...2
9a30: 33 36 2e 20 31 30 2f 32 33 2f 39 33 20 46 69 78  36. 10/23/93 Fix
9a40: 65 64 20 62 75 67 20 77 68 65 72 65 20 54 63 6c  ed bug where Tcl
9a50: 5f 43 72 65 61 74 65 50 69 70 65 6c 69 6e 65 20  _CreatePipeline 
9a60: 64 69 64 6e 27 74 20 63 6c 6f 73 65 20 6f 66 66  didn't close off
9a70: 20 65 6e 6f 75 67 68 0a 66 69 6c 65 20 64 65 73   enough.file des
9a80: 63 72 69 70 74 6f 72 73 20 69 6e 20 63 68 69 6c  criptors in chil
9a90: 64 20 70 72 6f 63 65 73 73 65 73 2c 20 63 61 75  d processes, cau
9aa0: 73 69 6e 67 20 63 68 69 6c 64 72 65 6e 20 6e 6f  sing children no
9ab0: 74 20 74 6f 20 65 78 69 74 0a 70 72 6f 70 65 72  t to exit.proper
9ac0: 6c 79 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73  ly in some cases
9ad0: 2e 0a 0a 32 33 37 2e 20 31 30 2f 32 38 2f 39 33  ...237. 10/28/93
9ae0: 20 43 68 61 6e 67 65 64 20 22 6c 69 73 74 22 20   Changed "list" 
9af0: 61 6e 64 20 22 63 6f 6e 63 61 74 22 20 63 6f 6d  and "concat" com
9b00: 6d 61 6e 64 73 20 6e 6f 74 20 74 6f 20 67 65 6e  mands not to gen
9b10: 65 72 61 74 65 0a 65 72 72 6f 72 73 20 69 66 20  erate.errors if 
9b20: 67 69 76 65 6e 20 7a 65 72 6f 20 61 72 67 75 6d  given zero argum
9b30: 65 6e 74 73 2c 20 62 75 74 20 69 6e 73 74 65 61  ents, but instea
9b40: 64 20 74 6f 20 6a 75 73 74 20 72 65 74 75 72 6e  d to just return
9b50: 20 61 6e 20 65 6d 70 74 79 0a 73 74 72 69 6e 67   an empty.string
9b60: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
9b70: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
9b80: 72 73 69 6f 6e 20 37 2e 31 2c 20 31 31 2f 34 2f  rsion 7.1, 11/4/
9b90: 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  93 -------------
9ba0: 2d 2d 2d 2d 2d 0a 0a 4e 6f 74 65 3a 20 74 68 65  -----..Note: the
9bb0: 72 65 20 69 73 20 6e 6f 20 37 2e 32 20 72 65 6c  re is no 7.2 rel
9bc0: 65 61 73 65 2e 20 20 49 74 20 77 61 73 20 66 6c  ease.  It was fl
9bd0: 61 77 65 64 20 61 6e 64 20 77 61 73 20 74 68 75  awed and was thu
9be0: 73 20 77 69 74 68 64 72 61 77 6e 0a 73 68 6f 72  s withdrawn.shor
9bf0: 74 6c 79 20 61 66 74 65 72 20 69 74 20 77 61 73  tly after it was
9c00: 20 72 65 6c 65 61 73 65 64 2e 0a 0a 32 33 38 2e   released...238.
9c10: 20 31 31 2f 31 30 2f 39 33 20 54 63 6c 4d 61 69   11/10/93 TclMai
9c20: 6e 2e 63 20 64 69 64 6e 27 74 20 63 6f 6d 70 69  n.c didn't compi
9c30: 6c 65 20 6f 6e 20 73 6f 6d 65 20 73 79 73 74 65  le on some syste
9c40: 6d 73 20 62 65 63 61 75 73 65 20 6f 66 0a 52 5f  ms because of.R_
9c50: 4f 4b 20 69 6e 20 63 61 6c 6c 20 74 6f 20 22 61  OK in call to "a
9c60: 63 63 65 73 73 22 2e 20 20 43 68 61 6e 67 65 64  ccess".  Changed
9c70: 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20 63 61   to eliminate ca
9c80: 6c 6c 20 74 6f 20 22 61 63 63 65 73 73 22 2e 0a  ll to "access"..
9c90: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
9ca0: 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73  -- Released vers
9cb0: 69 6f 6e 20 37 2e 33 2c 20 31 31 2f 32 36 2f 39  ion 7.3, 11/26/9
9cc0: 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  3 --------------
9cd0: 2d 2d 2d 2d 0a 0a 32 33 39 2e 20 31 31 2f 36 2f  ----..239. 11/6/
9ce0: 39 33 20 4d 6f 64 69 66 69 65 64 20 22 6c 69 6e  93 Modified "lin
9cf0: 64 65 78 22 2c 20 22 6c 69 6e 73 65 72 74 22 2c  dex", "linsert",
9d00: 20 22 6c 72 61 6e 67 65 22 2c 20 61 6e 64 20 22   "lrange", and "
9d10: 6c 72 65 70 6c 61 63 65 22 0a 73 6f 20 74 68 61  lreplace".so tha
9d20: 74 20 22 65 6e 64 22 20 63 61 6e 20 62 65 20 73  t "end" can be s
9d30: 70 65 63 69 66 69 65 64 20 61 73 20 61 6e 20 69  pecified as an i
9d40: 6e 64 65 78 2e 0a 0a 32 34 30 2e 20 31 31 2f 36  ndex...240. 11/6
9d50: 2f 39 33 20 4d 6f 64 69 66 69 65 64 20 22 61 70  /93 Modified "ap
9d60: 70 65 6e 64 22 20 61 6e 64 20 22 6c 61 70 70 65  pend" and "lappe
9d70: 6e 64 22 20 74 6f 20 61 6c 6c 6f 77 20 6f 6e 6c  nd" to allow onl
9d80: 79 20 74 77 6f 0a 77 6f 72 64 73 20 74 6f 74 61  y two.words tota
9d90: 6c 20 28 69 2e 65 2e 2c 20 6e 6f 74 68 69 6e 67  l (i.e., nothing
9da0: 20 74 6f 20 61 70 70 65 6e 64 29 20 77 69 74 68   to append) with
9db0: 6f 75 74 20 67 65 6e 65 72 61 74 69 6e 67 20 61  out generating a
9dc0: 6e 20 65 72 72 6f 72 2e 0a 0a 32 34 31 2e 20 31  n error...241. 1
9dd0: 32 2f 32 2f 39 33 20 43 68 61 6e 67 65 64 20 74  2/2/93 Changed t
9de0: 6f 20 75 73 65 20 45 41 47 41 49 4e 20 61 73 20  o use EAGAIN as 
9df0: 74 68 65 20 65 72 72 6e 6f 20 66 6f 72 20 6e 6f  the errno for no
9e00: 6e 2d 62 6c 6f 63 6b 69 6e 67 0a 49 2f 4f 20 69  n-blocking.I/O i
9e10: 6e 73 74 65 61 64 20 6f 66 20 45 57 4f 55 4c 44  nstead of EWOULD
9e20: 42 4c 4f 43 4b 3a 20 20 74 68 69 73 20 73 68 6f  BLOCK:  this sho
9e30: 75 6c 64 20 66 69 78 20 70 72 6f 62 6c 65 6d 20  uld fix problem 
9e40: 77 68 65 72 65 20 6e 6f 6e 2d 62 6c 6f 63 6b 69  where non-blocki
9e50: 6e 67 0a 49 2f 4f 20 64 69 64 6e 27 74 20 77 6f  ng.I/O didn't wo
9e60: 72 6b 20 63 6f 72 72 65 63 74 6c 79 20 6f 6e 20  rk correctly on 
9e70: 53 79 73 74 65 6d 2d 56 20 73 79 73 74 65 6d 73  System-V systems
9e80: 2e 0a 0a 32 34 32 2e 20 31 32 2f 32 32 2f 39 33  ...242. 12/22/93
9e90: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 65 78   Fixed bug in ex
9ea0: 70 72 65 73 73 69 6f 6e 73 20 77 68 65 72 65 20  pressions where 
9eb0: 63 61 6e 63 65 6c 6c 65 64 20 65 76 61 6c 75 61  cancelled evalua
9ec0: 74 69 6f 6e 0a 77 61 73 6e 27 74 20 61 6c 77 61  tion.wasn't alwa
9ed0: 79 73 20 77 6f 72 6b 69 6e 67 20 63 6f 72 72 65  ys working corre
9ee0: 63 74 6c 79 20 28 65 2e 67 2e 20 22 73 65 74 20  ctly (e.g. "set 
9ef0: 6f 6e 65 20 31 3b 20 65 76 61 6c 20 7b 31 20 7c  one 1; eval {1 |
9f00: 7c 20 31 2f 24 6f 6e 65 7d 22 0a 66 61 69 6c 65  | 1/$one}".faile
9f10: 64 20 77 69 74 68 20 61 20 64 69 76 69 64 65 20  d with a divide 
9f20: 62 79 20 7a 65 72 6f 20 65 72 72 6f 72 29 2e 0a  by zero error)..
9f30: 0a 32 34 33 2e 20 31 2f 36 2f 39 34 20 43 68 61  .243. 1/6/94 Cha
9f40: 6e 67 65 64 20 54 43 4c 5f 56 4f 4c 41 54 49 4c  nged TCL_VOLATIL
9f50: 45 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 72 6f  E definition fro
9f60: 6d 20 2d 31 20 74 6f 20 74 68 65 20 61 64 64 72  m -1 to the addr
9f70: 65 73 73 20 6f 66 0a 61 20 64 75 6d 6d 79 20 70  ess of.a dummy p
9f80: 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 56 6f 6c  rocedure Tcl_Vol
9f90: 61 74 69 6c 65 2c 20 73 69 6e 63 65 20 2d 31 20  atile, since -1 
9fa0: 63 61 75 73 65 73 20 70 6f 72 74 61 62 69 6c 69  causes portabili
9fb0: 74 79 20 70 72 6f 62 6c 65 6d 73 20 6f 6e 0a 73  ty problems on.s
9fc0: 6f 6d 65 20 6d 61 63 68 69 6e 65 73 20 28 65 2e  ome machines (e.
9fd0: 67 2e 2c 20 43 72 61 79 73 29 2e 0a 0a 32 34 34  g., Crays)...244
9fe0: 2e 20 32 2f 34 2f 39 34 20 41 64 64 65 64 20 73  . 2/4/94 Added s
9ff0: 75 70 70 6f 72 74 20 66 6f 72 20 75 6e 61 72 79  upport for unary
a000: 20 70 6c 75 73 2e 0a 0a 32 34 35 2e 20 32 2f 31   plus...245. 2/1
a010: 37 2f 39 34 20 43 68 61 6e 67 65 64 20 54 63 6c  7/94 Changed Tcl
a020: 5f 52 65 63 6f 72 64 41 6e 64 45 76 61 6c 20 61  _RecordAndEval a
a030: 6e 64 20 22 68 69 73 74 6f 72 79 22 20 63 6f 6d  nd "history" com
a040: 6d 61 6e 64 20 74 6f 0a 63 61 6c 6c 20 54 63 6c  mand to.call Tcl
a050: 5f 47 6c 6f 62 61 6c 45 76 61 6c 20 69 6e 73 74  _GlobalEval inst
a060: 65 61 64 20 6f 66 20 54 63 6c 5f 45 76 61 6c 2e  ead of Tcl_Eval.
a070: 20 20 4f 74 68 65 72 77 69 73 65 2c 20 69 6e 76    Otherwise, inv
a080: 6f 63 61 74 69 6f 6e 20 6f 66 0a 74 68 65 73 65  ocation of.these
a090: 20 66 61 63 69 6c 69 74 69 65 73 20 69 6e 20 6e   facilities in n
a0a0: 65 73 74 65 64 20 70 72 6f 63 65 64 75 72 65 73  ested procedures
a0b0: 20 63 61 6e 20 63 61 75 73 65 20 75 6e 77 61 6e   can cause unwan
a0c0: 74 65 64 20 72 65 73 75 6c 74 73 2e 0a 0a 32 34  ted results...24
a0d0: 36 2e 20 32 2f 31 37 2f 39 34 20 46 69 78 65 64  6. 2/17/94 Fixed
a0e0: 20 62 75 67 20 69 6e 20 74 63 6c 45 78 70 72 2e   bug in tclExpr.
a0f0: 63 20 77 68 65 72 65 20 61 6e 20 65 78 70 72 65  c where an expre
a100: 73 73 69 6f 6e 20 73 75 63 68 20 61 73 0a 22 65  ssion such as."e
a110: 78 70 72 20 7b 22 31 32 33 39 38 37 31 32 39 33  xpr {"1239871293
a120: 38 37 38 38 32 33 34 2d 31 32 39 38 33 37 39 22  8788234-1298379"
a130: 20 21 3d 20 22 22 7d 22 20 74 72 69 67 67 65 72   != ""}" trigger
a140: 73 20 61 6e 20 69 6e 74 65 67 65 72 0a 6f 76 65  s an integer.ove
a150: 72 66 6c 6f 77 20 65 72 72 6f 72 20 66 6f 72 20  rflow error for 
a160: 74 68 65 20 6e 75 6d 62 65 72 20 69 6e 20 71 75  the number in qu
a170: 6f 74 65 73 2c 20 65 76 65 6e 20 74 68 6f 75 67  otes, even thoug
a180: 68 20 69 74 20 69 73 6e 27 74 20 72 65 61 6c 6c  h it isn't reall
a190: 79 0a 61 20 70 72 6f 70 65 72 20 69 6e 74 65 67  y.a proper integ
a1a0: 65 72 20 61 6e 79 77 61 79 2e 0a 0a 32 34 37 2e  er anyway...247.
a1b0: 20 32 2f 31 39 2f 39 34 20 41 64 64 65 64 20 6e   2/19/94 Added n
a1c0: 65 77 20 70 72 6f 63 65 64 75 72 65 20 54 63 6c  ew procedure Tcl
a1d0: 5f 44 53 74 72 69 6e 67 47 65 74 52 65 73 75 6c  _DStringGetResul
a1e0: 74 20 74 6f 20 6d 6f 76 65 20 72 65 73 75 6c 74  t to move result
a1f0: 0a 66 72 6f 6d 20 69 6e 74 65 72 70 72 65 74 65  .from interprete
a200: 72 20 74 6f 20 61 20 64 79 6e 61 6d 69 63 20 73  r to a dynamic s
a210: 74 72 69 6e 67 2e 0a 0a 32 34 38 2e 20 32 2f 31  tring...248. 2/1
a220: 39 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69  9/94 Fixed bug i
a230: 6e 20 54 63 6c 5f 44 53 74 72 69 6e 67 52 65 73  n Tcl_DStringRes
a240: 75 6c 74 20 74 68 61 74 20 63 61 75 73 65 64 20  ult that caused 
a250: 69 74 20 74 6f 20 6f 76 65 72 77 72 69 74 65 0a  it to overwrite.
a260: 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20  the contents of 
a270: 61 20 73 74 61 74 69 63 20 72 65 73 75 6c 74 20  a static result 
a280: 69 6e 20 73 6f 6d 65 20 73 69 74 75 61 74 69 6f  in some situatio
a290: 6e 73 2e 20 20 54 68 69 73 20 63 61 6e 20 63 61  ns.  This can ca
a2a0: 75 73 65 0a 62 69 7a 61 72 72 65 20 65 72 72 6f  use.bizarre erro
a2b0: 72 73 20 73 75 63 68 20 61 73 20 76 61 72 69 61  rs such as varia
a2c0: 62 6c 65 73 20 73 75 64 64 65 6e 6c 79 20 68 61  bles suddenly ha
a2d0: 76 69 6e 67 20 65 6d 70 74 79 20 76 61 6c 75 65  ving empty value
a2e0: 73 2e 0a 0a 32 34 39 2e 20 32 2f 32 31 2f 39 34  s...249. 2/21/94
a2f0: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54 63   Fixed bug in Tc
a300: 6c 5f 41 70 70 65 6e 64 45 6c 65 6d 65 6e 74 2c  l_AppendElement,
a310: 20 54 63 6c 5f 44 53 74 72 69 6e 67 41 70 70 65   Tcl_DStringAppe
a320: 6e 64 45 6c 65 6d 65 6e 74 2c 0a 61 6e 64 20 74  ndElement,.and t
a330: 68 65 20 22 6c 61 70 70 65 6e 64 22 20 63 6f 6d  he "lappend" com
a340: 6d 61 6e 64 20 74 68 61 74 20 63 61 75 73 65 64  mand that caused
a350: 20 69 6d 70 72 6f 70 65 72 20 6f 6d 69 73 73 69   improper omissi
a360: 6f 6e 20 6f 66 20 61 20 73 65 70 61 72 61 74 6f  on of a separato
a370: 72 0a 73 70 61 63 65 20 69 6e 20 73 6f 6d 65 20  r.space in some 
a380: 63 61 73 65 73 2e 20 20 46 6f 72 20 65 78 61 6d  cases.  For exam
a390: 70 6c 65 2c 20 74 68 65 20 73 63 72 69 70 74 0a  ple, the script.
a3a0: 20 20 20 20 73 65 74 20 78 20 22 61 62 63 7b 22      set x "abc{"
a3b0: 3b 20 6c 61 70 70 65 6e 64 20 78 20 22 64 65 66  ; lappend x "def
a3c0: 22 0a 75 73 65 64 20 74 6f 20 72 65 74 75 72 6e  ".used to return
a3d0: 20 74 68 65 20 72 65 73 75 6c 74 20 22 61 62 63   the result "abc
a3e0: 7b 64 65 66 22 20 69 6e 73 74 65 61 64 20 6f 66  {def" instead of
a3f0: 20 22 61 62 63 7b 20 64 65 66 22 2e 0a 0a 32 35   "abc{ def"...25
a400: 30 2e 20 33 2f 33 2f 39 34 20 54 63 6c 5f 43 6f  0. 3/3/94 Tcl_Co
a410: 6e 76 65 72 74 45 6c 65 6d 65 6e 74 20 77 61 73  nvertElement was
a420: 20 6f 75 74 70 75 74 74 69 6e 67 20 65 6d 70 74   outputting empt
a430: 79 20 65 6c 65 6d 65 6e 74 73 20 61 73 20 5c 30  y elements as \0
a440: 20 69 66 0a 54 43 4c 5f 44 4f 4e 54 5f 55 53 45   if.TCL_DONT_USE
a450: 5f 42 52 41 43 45 53 20 77 61 73 20 73 65 74 2e  _BRACES was set.
a460: 20 20 54 68 69 73 20 64 65 70 65 6e 64 73 20 6f    This depends o
a470: 6e 20 6f 6c 64 20 70 72 65 2d 37 2e 30 20 6d 65  n old pre-7.0 me
a480: 61 6e 69 6e 67 20 6f 66 0a 5c 30 2c 20 77 68 69  aning of.\0, whi
a490: 63 68 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20  ch is no longer 
a4a0: 69 6e 20 65 66 66 65 63 74 2c 20 73 6f 20 69 74  in effect, so it
a4b0: 20 64 69 64 6e 27 74 20 72 65 61 6c 6c 79 20 77   didn't really w
a4c0: 6f 72 6b 2e 20 20 43 68 61 6e 67 65 64 0a 74 6f  ork.  Changed.to
a4d0: 20 6f 75 74 70 75 74 20 65 6d 70 74 79 20 65 6c   output empty el
a4e0: 65 6d 65 6e 74 73 20 61 73 20 7b 7d 20 61 6c 77  ements as {} alw
a4f0: 61 79 73 2e 0a 0a 32 35 31 2e 20 33 2f 33 2f 39  ays...251. 3/3/9
a500: 34 20 52 65 6e 61 6d 65 64 20 54 63 6c 5f 44 53  4 Renamed Tcl_DS
a510: 74 72 69 6e 67 54 72 75 6e 63 20 74 6f 20 54 63  tringTrunc to Tc
a520: 6c 5f 44 53 74 72 69 6e 67 53 65 74 4c 65 6e 67  l_DStringSetLeng
a530: 74 68 20 61 6e 64 20 65 78 74 65 6e 64 65 64 0a  th and extended.
a540: 69 74 20 73 6f 20 74 68 61 74 20 69 74 20 63 61  it so that it ca
a550: 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6c 65 6e  n be used to len
a560: 67 74 68 65 6e 20 61 20 73 74 72 69 6e 67 20 61  gthen a string a
a570: 73 20 77 65 6c 6c 20 61 73 20 73 68 6f 72 74 65  s well as shorte
a580: 6e 20 69 74 2e 0a 54 63 6c 5f 44 53 74 72 69 6e  n it..Tcl_DStrin
a590: 67 54 72 75 6e 63 20 69 73 20 64 65 66 69 6e 65  gTrunc is define
a5a0: 64 20 61 73 20 61 20 6d 61 63 72 6f 20 66 6f 72  d as a macro for
a5b0: 20 62 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74   backward compat
a5c0: 69 62 69 6c 69 74 79 2c 20 62 75 74 0a 69 74 20  ibility, but.it 
a5d0: 69 73 20 64 65 70 72 65 63 61 74 65 64 2e 0a 0a  is deprecated...
a5e0: 32 35 32 2e 20 33 2f 33 2f 39 34 20 41 64 64 65  252. 3/3/94 Adde
a5f0: 64 20 54 63 6c 5f 41 6c 6c 6f 77 45 78 63 65 70  d Tcl_AllowExcep
a600: 74 69 6f 6e 73 20 70 72 6f 63 65 64 75 72 65 2e  tions procedure.
a610: 0a 0a 32 35 33 2e 20 33 2f 31 33 2f 39 34 20 46  ..253. 3/13/94 F
a620: 69 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c 5f  ixed bug in Tcl_
a630: 46 6f 72 6d 61 74 43 6d 64 20 74 68 61 74 20 63  FormatCmd that c
a640: 6f 75 6c 64 20 63 61 75 73 65 20 22 66 6f 72 6d  ould cause "form
a650: 61 74 22 0a 74 6f 20 6d 69 73 2d 62 65 68 61 76  at".to mis-behav
a660: 65 20 6f 6e 20 36 34 2d 62 69 74 20 42 69 67 2d  e on 64-bit Big-
a670: 45 6e 64 69 61 6e 20 6d 61 63 68 69 6e 65 73 2e  Endian machines.
a680: 0a 0a 32 35 34 2e 20 33 2f 31 33 2f 39 34 20 43  ..254. 3/13/94 C
a690: 68 61 6e 67 65 64 20 74 6f 20 75 73 65 20 76 66  hanged to use vf
a6a0: 6f 72 6b 20 69 6e 73 74 65 61 64 20 6f 66 20 66  ork instead of f
a6b0: 6f 72 6b 20 6f 6e 20 73 79 73 74 65 6d 73 20 77  ork on systems w
a6c0: 68 65 72 65 0a 76 66 6f 72 6b 20 65 78 69 73 74  here.vfork exist
a6d0: 73 2e 0a 0a 32 35 35 2e 20 33 2f 32 33 2f 39 34  s...255. 3/23/94
a6e0: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 65 78   Fixed bug in ex
a6f0: 70 72 65 73 73 69 6f 6e 73 20 77 68 65 72 65 20  pressions where 
a700: 3f 3a 20 64 69 64 6e 27 74 20 61 73 73 6f 63 69  ?: didn't associ
a710: 61 74 65 0a 72 69 67 68 74 2d 74 6f 2d 6c 65 66  ate.right-to-lef
a720: 74 20 61 73 20 74 68 65 79 20 73 68 6f 75 6c 64  t as they should
a730: 2e 0a 0a 32 35 36 2e 20 34 2f 33 2f 39 34 20 46  ...256. 4/3/94 F
a740: 69 78 65 64 20 22 65 78 65 63 22 20 74 6f 20 66  ixed "exec" to f
a750: 6c 75 73 68 20 61 6e 79 20 66 69 6c 65 73 20 75  lush any files u
a760: 73 65 64 20 69 6e 20 3e 40 20 6f 72 20 3e 26 40  sed in >@ or >&@
a770: 0a 72 65 64 69 72 65 63 74 69 6f 6e 20 69 6e 20  .redirection in 
a780: 65 78 65 63 2c 20 73 6f 20 74 68 61 74 20 64 61  exec, so that da
a790: 74 61 20 62 75 66 66 65 72 65 64 20 66 6f 72 20  ta buffered for 
a7a0: 74 68 65 6d 20 69 73 20 77 72 69 74 74 65 6e 0a  them is written.
a7b0: 62 65 66 6f 72 65 20 61 6e 79 20 6e 65 77 20 64  before any new d
a7c0: 61 74 61 20 61 64 64 65 64 20 62 79 20 74 68 65  ata added by the
a7d0: 20 73 75 62 70 72 6f 63 65 73 73 2e 0a 0a 32 35   subprocess...25
a7e0: 37 2e 20 34 2f 33 2f 39 34 20 41 64 64 65 64 20  7. 4/3/94 Added 
a7f0: 22 73 75 62 73 74 22 20 63 6f 6d 6d 61 6e 64 2e  "subst" command.
a800: 0a 0a 32 35 38 2e 20 35 2f 32 30 2f 39 34 20 54  ..258. 5/20/94 T
a810: 68 65 20 74 63 6c 73 68 20 6d 61 69 6e 20 70 72  he tclsh main pr
a820: 6f 67 72 61 6d 20 69 73 20 6e 6f 77 20 63 61 6c  ogram is now cal
a830: 6c 65 64 20 54 63 6c 5f 4d 61 69 6e 3b 20 20 74  led Tcl_Main;  t
a840: 63 6c 41 70 70 49 6e 69 74 2e 63 0a 68 61 73 20  clAppInit.c.has 
a850: 61 20 22 6d 61 69 6e 22 20 70 72 6f 63 65 64 75  a "main" procedu
a860: 72 65 20 74 68 61 74 20 63 61 6c 6c 73 20 54 63  re that calls Tc
a870: 6c 5f 4d 61 69 6e 2e 20 20 54 68 69 73 20 6d 61  l_Main.  This ma
a880: 6b 65 73 20 69 74 20 65 61 73 69 65 72 20 74 6f  kes it easier to
a890: 20 75 73 65 0a 54 63 6c 20 77 69 74 68 20 43 2b   use.Tcl with C+
a8a0: 2b 20 70 72 6f 67 72 61 6d 73 2c 20 77 68 69 63  + programs, whic
a8b0: 68 20 6e 65 65 64 20 74 68 65 69 72 20 6f 77 6e  h need their own
a8c0: 20 6d 61 69 6e 20 70 72 6f 67 72 61 6d 73 2c 20   main programs, 
a8d0: 61 6e 64 20 69 74 20 61 6c 73 6f 0a 61 6c 6c 6f  and it also.allo
a8e0: 77 73 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f  ws an applicatio
a8f0: 6e 20 74 6f 20 70 72 65 66 69 6c 74 65 72 20 74  n to prefilter t
a900: 68 65 20 61 72 67 75 6d 65 6e 74 20 6c 69 73 74  he argument list
a910: 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 0a   before calling.
a920: 54 63 6c 5f 4d 61 69 6e 2e 0a 2a 2a 2a 20 50 4f  Tcl_Main..*** PO
a930: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
a940: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 35 39  IBILITY ***..259
a950: 2e 20 36 2f 36 2f 39 34 20 46 69 78 65 64 20 62  . 6/6/94 Fixed b
a960: 75 67 20 69 6e 20 70 72 6f 63 65 64 75 72 65 20  ug in procedure 
a970: 72 65 74 75 72 6e 73 20 77 68 65 72 65 20 74 68  returns where th
a980: 65 20 65 72 72 6f 72 49 6e 66 6f 20 76 61 72 69  e errorInfo vari
a990: 61 62 6c 65 0a 63 6f 75 6c 64 20 67 65 74 20 74  able.could get t
a9a0: 72 75 6e 63 61 74 65 64 20 69 66 20 61 6e 20 75  runcated if an u
a9b0: 6e 73 65 74 20 74 72 61 63 65 20 77 61 73 20 69  nset trace was i
a9c0: 6e 76 6f 6b 65 64 20 61 73 20 70 61 72 74 20 6f  nvoked as part o
a9d0: 66 20 72 65 74 75 72 6e 69 6e 67 0a 66 72 6f 6d  f returning.from
a9e0: 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 2e 0a   the procedure..
a9f0: 0a 32 36 30 2e 20 36 2f 31 33 2f 39 34 20 41 64  .260. 6/13/94 Ad
aa00: 64 65 64 20 22 77 6f 72 64 73 74 61 72 74 22 20  ded "wordstart" 
aa10: 61 6e 64 20 22 77 6f 72 64 65 6e 64 22 20 6f 70  and "wordend" op
aa20: 74 69 6f 6e 73 20 74 6f 20 22 73 74 72 69 6e 67  tions to "string
aa30: 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 32 36 31 2e  " command...261.
aa40: 20 36 2f 32 37 2f 39 34 20 46 69 78 65 64 20 62   6/27/94 Fixed b
aa50: 75 67 20 69 6e 20 65 78 70 72 65 73 73 69 6f 6e  ug in expression
aa60: 73 20 77 68 65 72 65 20 74 68 65 79 20 64 69 64  s where they did
aa70: 6e 27 74 20 70 72 6f 70 65 72 6c 79 20 63 61 6e  n't properly can
aa80: 63 65 6c 0a 74 68 65 20 65 76 61 6c 75 61 74 69  cel.the evaluati
aa90: 6f 6e 20 6f 66 20 6d 61 74 68 20 66 75 6e 63 74  on of math funct
aaa0: 69 6f 6e 73 20 69 6e 20 26 26 2c 20 7c 7c 2c 20  ions in &&, ||, 
aab0: 61 6e 64 20 3f 3a 2e 0a 0a 32 36 32 2e 20 37 2f  and ?:...262. 7/
aac0: 31 31 2f 39 34 20 49 6e 63 6f 72 72 65 63 74 20  11/94 Incorrect 
aad0: 62 6f 6f 6c 65 61 6e 20 76 61 6c 75 65 73 2c 20  boolean values, 
aae0: 6c 69 6b 65 20 22 6f 67 6c 65 22 2c 20 77 65 72  like "ogle", wer
aaf0: 65 6e 27 74 20 62 65 69 6e 67 0a 68 61 6e 64 6c  en't being.handl
ab00: 65 64 20 70 72 6f 70 65 72 6c 79 2e 0a 0a 32 36  ed properly...26
ab10: 33 2e 20 37 2f 31 35 2f 39 34 20 41 64 64 65 64  3. 7/15/94 Added
ab20: 20 54 63 6c 5f 52 65 67 45 78 70 43 6f 6d 70 69   Tcl_RegExpCompi
ab30: 6c 65 2c 20 54 63 6c 5f 52 65 67 45 78 70 45 78  le, Tcl_RegExpEx
ab40: 65 63 2c 20 61 6e 64 20 54 63 6c 5f 52 65 67 45  ec, and Tcl_RegE
ab50: 78 70 52 61 6e 67 65 2c 0a 77 68 69 63 68 20 70  xpRange,.which p
ab60: 72 6f 76 69 64 65 20 6c 6f 77 65 72 2d 6c 65 76  rovide lower-lev
ab70: 65 6c 20 61 63 63 65 73 73 20 74 6f 20 72 65 67  el access to reg
ab80: 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e 20  ular expression 
ab90: 70 61 74 74 65 72 6e 20 6d 61 74 63 68 69 6e 67  pattern matching
aba0: 2e 0a 0a 32 36 34 2e 20 37 2f 32 32 2f 39 34 20  ...264. 7/22/94 
abb0: 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 67 6c  Fixed bug in "gl
abc0: 6f 62 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72  ob" command wher
abd0: 65 20 22 67 6c 6f 62 20 2d 6e 6f 63 6f 6d 70 6c  e "glob -nocompl
abe0: 61 69 6e 20 7e 62 61 64 5f 75 73 65 72 22 0a 77  ain ~bad_user".w
abf0: 6f 75 6c 64 20 63 6f 6d 70 6c 61 69 6e 20 61 62  ould complain ab
ac00: 6f 75 74 20 61 20 6d 69 73 73 69 6e 67 20 75 73  out a missing us
ac10: 65 72 2e 20 20 4e 6f 77 20 69 74 20 64 6f 65 73  er.  Now it does
ac20: 6e 27 74 20 63 6f 6d 70 6c 61 69 6e 20 61 6e 79  n't complain any
ac30: 6d 6f 72 65 2e 0a 0a 32 36 35 2e 20 38 2f 34 2f  more...265. 8/4/
ac40: 39 34 20 46 69 78 65 64 20 62 75 67 20 77 69 74  94 Fixed bug wit
ac50: 68 20 6c 69 6e 6b 65 64 20 76 61 72 69 61 62 6c  h linked variabl
ac60: 65 73 20 77 68 65 72 65 20 74 68 65 79 20 64 69  es where they di
ac70: 64 6e 27 74 20 62 65 68 61 76 65 0a 63 6f 72 72  dn't behave.corr
ac80: 65 63 74 6c 79 20 77 68 65 6e 20 61 63 63 65 73  ectly when acces
ac90: 73 65 64 20 76 69 61 20 75 70 76 61 72 73 2e 0a  sed via upvars..
aca0: 0a 32 36 36 2e 20 38 2f 31 37 2f 39 34 20 46 69  .266. 8/17/94 Fi
acb0: 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c 5f 45  xed bug in Tcl_E
acc0: 76 61 6c 46 69 6c 65 20 77 68 65 72 65 20 69 74  valFile where it
acd0: 20 64 69 64 6e 27 74 20 63 6c 65 61 72 20 69 6e   didn't clear in
ace0: 74 65 72 70 2d 3e 72 65 73 75 6c 74 2e 0a 0a 32  terp->result...2
acf0: 36 37 2e 20 38 2f 33 31 2f 39 34 20 4d 6f 64 69  67. 8/31/94 Modi
ad00: 66 69 65 64 20 22 6f 70 65 6e 22 20 63 6f 6d 6d  fied "open" comm
ad10: 61 6e 64 20 73 6f 20 74 68 61 74 20 65 72 72 6f  and so that erro
ad20: 72 73 20 69 6e 20 65 78 65 63 2d 69 6e 67 0a 73  rs in exec-ing.s
ad30: 75 62 70 72 6f 63 65 73 73 65 73 20 61 72 65 20  ubprocesses are 
ad40: 72 65 74 75 72 6e 65 64 20 62 79 20 74 68 65 20  returned by the 
ad50: 6f 70 65 6e 20 69 6d 6d 65 64 69 61 74 65 6c 79  open immediately
ad60: 2c 20 72 61 74 68 65 72 20 74 68 61 6e 0a 62 65  , rather than.be
ad70: 69 6e 67 20 64 65 6c 61 79 65 64 20 75 6e 74 69  ing delayed unti
ad80: 6c 20 74 68 65 20 22 63 6c 6f 73 65 22 20 69 73  l the "close" is
ad90: 20 65 78 65 63 75 74 65 64 2e 0a 0a 32 36 38 2e   executed...268.
ada0: 20 39 2f 39 2f 39 34 20 4d 6f 64 69 66 69 65 64   9/9/94 Modified
adb0: 20 22 65 78 70 72 22 20 63 6f 6d 6d 61 6e 64 20   "expr" command 
adc0: 74 6f 20 67 65 6e 65 72 61 74 65 20 65 72 72 6f  to generate erro
add0: 72 73 20 66 6f 72 20 69 6e 74 65 67 65 72 0a 6f  rs for integer.o
ade0: 76 65 72 66 6c 6f 77 20 28 69 6e 63 6c 75 64 65  verflow (include
adf0: 73 20 61 64 64 69 74 69 6f 6e 2c 20 73 75 62 74  s addition, subt
ae00: 72 61 63 74 69 6f 6e 2c 20 6e 65 67 61 74 69 6f  raction, negatio
ae10: 6e 2c 20 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f  n, multiplicatio
ae20: 6e 2c 0a 64 69 76 69 73 69 6f 6e 29 2e 0a 0a 32  n,.division)...2
ae30: 36 39 2e 20 39 2f 32 33 2f 39 34 20 4d 6f 64 69  69. 9/23/94 Modi
ae40: 66 69 65 64 20 22 72 65 67 73 75 62 22 20 74 6f  fied "regsub" to
ae50: 20 72 65 74 75 72 6e 20 61 20 63 6f 75 6e 74 20   return a count 
ae60: 6f 66 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66  of the number of
ae70: 0a 6d 61 74 63 68 65 73 20 61 6e 64 20 72 65 70  .matches and rep
ae80: 6c 61 63 65 6d 65 6e 74 73 2c 20 72 61 74 68 65  lacements, rathe
ae90: 72 20 74 68 61 6e 20 30 2f 31 2e 0a 0a 32 37 39  r than 0/1...279
aea0: 2e 20 31 30 2f 34 2f 39 34 20 41 64 64 65 64 20  . 10/4/94 Added 
aeb0: 6e 65 77 20 66 65 61 74 75 72 65 73 20 74 6f 20  new features to 
aec0: 22 61 72 72 61 79 22 20 63 6f 6d 6d 61 6e 64 3a  "array" command:
aed0: 0a 20 20 20 20 2d 20 61 64 64 65 64 20 22 67 65  .    - added "ge
aee0: 74 22 20 61 6e 64 20 22 73 65 74 22 20 63 6f 6d  t" and "set" com
aef0: 6d 61 6e 64 73 20 66 6f 72 20 65 61 73 79 20 63  mands for easy c
af00: 6f 6e 76 65 72 73 69 6f 6e 20 62 65 74 77 65 65  onversion betwee
af10: 6e 20 61 72 72 61 79 73 0a 20 20 20 20 20 20 61  n arrays.      a
af20: 6e 64 20 6c 69 73 74 73 2e 0a 20 20 20 20 2d 20  nd lists..    - 
af30: 61 64 64 65 64 20 22 65 78 69 73 74 73 22 20 63  added "exists" c
af40: 6f 6d 6d 61 6e 64 20 74 6f 20 73 65 65 20 69 66  ommand to see if
af50: 20 61 20 76 61 72 69 61 62 6c 65 20 69 73 20 61   a variable is a
af60: 6e 20 61 72 72 61 79 2c 20 63 68 61 6e 67 65 64  n array, changed
af70: 0a 20 20 20 20 20 20 22 6e 61 6d 65 73 22 20 61  .      "names" a
af80: 6e 64 20 22 73 69 7a 65 22 20 63 6f 6d 6d 61 6e  nd "size" comman
af90: 64 73 20 74 6f 20 74 72 65 61 74 20 61 20 6e 6f  ds to treat a no
afa0: 6e 2d 65 78 69 73 74 65 6e 74 20 61 72 72 61 79  n-existent array
afb0: 20 28 6f 72 20 73 63 61 6c 61 72 0a 20 20 20 20   (or scalar.    
afc0: 20 20 76 61 72 69 61 62 6c 65 29 20 6a 75 73 74    variable) just
afd0: 20 6c 69 6b 65 20 61 6e 20 65 6d 70 74 79 20 6f   like an empty o
afe0: 6e 65 2e 0a 20 20 20 20 2d 20 61 64 64 65 64 20  ne..    - added 
aff0: 70 61 74 74 65 72 6e 20 6f 70 74 69 6f 6e 20 74  pattern option t
b000: 6f 20 22 6e 61 6d 65 73 22 20 63 6f 6d 6d 61 6e  o "names" comman
b010: 64 2e 0a 0a 32 38 30 2e 20 31 30 2f 36 2f 39 34  d...280. 10/6/94
b020: 20 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f 53 65   Modified Tcl_Se
b030: 74 56 61 72 32 20 73 6f 20 74 68 61 74 20 72 65  tVar2 so that re
b040: 61 64 20 74 72 61 63 65 73 20 6f 6e 20 76 61 72  ad traces on var
b050: 69 61 62 6c 65 73 20 67 65 74 0a 63 61 6c 6c 65  iables get.calle
b060: 64 20 64 75 72 69 6e 67 20 61 70 70 65 6e 64 20  d during append 
b070: 6f 70 65 72 61 74 69 6f 6e 73 2e 0a 0a 32 38 31  operations...281
b080: 2e 20 31 30 2f 32 30 2f 39 34 20 46 69 78 65 64  . 10/20/94 Fixed
b090: 20 62 75 67 20 69 6e 20 22 72 65 61 64 22 20 63   bug in "read" c
b0a0: 6f 6d 6d 61 6e 64 20 77 68 65 72 65 20 72 65 61  ommand where rea
b0b0: 64 69 6e 67 20 66 72 6f 6d 20 73 74 64 69 6e 0a  ding from stdin.
b0c0: 72 65 71 75 69 72 65 64 20 74 77 6f 20 63 6f 6e  required two con
b0d0: 74 72 6f 6c 2d 44 27 73 20 74 6f 20 73 74 6f 70  trol-D's to stop
b0e0: 20 74 68 65 20 72 65 61 64 69 6e 67 2e 0a 0a 32   the reading...2
b0f0: 38 32 2e 20 31 31 2f 33 2f 39 34 20 43 68 61 6e  82. 11/3/94 Chan
b100: 67 65 64 20 22 65 78 70 72 22 20 63 6f 6d 6d 61  ged "expr" comma
b110: 6e 64 20 74 6f 20 75 73 65 20 6c 6f 6e 67 73 20  nd to use longs 
b120: 66 6f 72 20 64 69 76 69 73 69 6f 6e 20 6a 75 73  for division jus
b130: 74 20 6c 69 6b 65 0a 61 6c 6c 20 6f 74 68 65 72  t like.all other
b140: 20 65 78 70 72 20 6f 70 65 72 61 74 6f 72 73 3b   expr operators;
b150: 20 20 69 74 20 70 72 65 76 69 6f 75 73 6c 79 20    it previously 
b160: 75 73 65 64 20 69 6e 74 73 20 66 6f 72 20 64 69  used ints for di
b170: 76 69 73 69 6f 6e 2e 0a 0a 32 38 33 2e 20 31 31  vision...283. 11
b180: 2f 34 2f 39 34 20 46 69 78 65 64 20 62 75 67 73  /4/94 Fixed bugs
b190: 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e 22 20 70 72   in "unknown" pr
b1a0: 6f 63 65 64 75 72 65 3a 20 20 69 74 20 77 61 73  ocedure:  it was
b1b0: 6e 27 74 20 70 72 6f 70 65 72 6c 79 0a 68 61 6e  n't properly.han
b1c0: 64 6c 69 6e 67 20 65 78 63 65 70 74 69 6f 6e 20  dling exception 
b1d0: 72 65 74 75 72 6e 73 20 66 72 6f 6d 20 63 6f 6d  returns from com
b1e0: 6d 61 6e 64 73 20 74 68 61 74 20 77 65 72 65 20  mands that were 
b1f0: 65 78 65 63 75 74 65 64 20 61 66 74 65 72 0a 62  executed after.b
b200: 65 69 6e 67 20 61 75 74 6f 2d 6c 6f 61 64 65 64  eing auto-loaded
b210: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
b220: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
b230: 72 73 69 6f 6e 20 37 2e 34 62 31 2c 20 31 32 2f  rsion 7.4b1, 12/
b240: 32 33 2f 39 34 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  23/94 ----------
b250: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 38 34 2e 20 31  --------..284. 1
b260: 32 2f 32 36 2f 39 34 20 46 69 78 65 64 20 22 69  2/26/94 Fixed "i
b270: 6e 73 74 61 6c 6c 22 20 74 61 72 67 65 74 20 69  nstall" target i
b280: 6e 20 4d 61 6b 65 66 69 6c 65 20 28 63 6f 75 6c  n Makefile (coul
b290: 64 6e 27 74 20 61 6c 77 61 79 73 0a 66 69 6e 64  dn't always.find
b2a0: 20 69 6e 73 74 61 6c 6c 20 70 72 6f 67 72 61 6d   install program
b2b0: 29 2e 0a 0a 32 38 35 2e 20 31 32 2f 32 36 2f 39  )...285. 12/26/9
b2c0: 34 20 41 64 64 65 64 20 73 74 72 63 6e 63 61 73  4 Added strcncas
b2d0: 65 63 6d 70 20 70 72 6f 63 65 64 75 72 65 20 74  ecmp procedure t
b2e0: 6f 20 63 6f 6d 70 61 74 20 64 69 72 65 63 74 6f  o compat directo
b2f0: 72 79 2e 0a 0a 32 38 36 2e 20 31 2f 33 2f 39 35  ry...286. 1/3/95
b300: 20 46 69 78 65 64 20 61 6c 6c 20 70 72 6f 63 65   Fixed all proce
b310: 64 75 72 65 20 63 61 6c 6c 73 20 74 6f 20 65 78  dure calls to ex
b320: 70 6c 69 63 69 74 6c 79 20 63 61 73 74 20 61 72  plicitly cast ar
b330: 67 75 6d 65 6e 74 73 3a 0a 69 6d 70 6c 69 63 69  guments:.implici
b340: 74 20 63 6f 6e 76 65 72 73 69 6f 6e 73 20 66 72  t conversions fr
b350: 6f 6d 20 70 72 6f 74 6f 74 79 70 65 73 20 28 65  om prototypes (e
b360: 73 70 65 63 69 61 6c 6c 79 20 69 6e 74 65 67 65  specially intege
b370: 72 2d 3e 64 6f 75 62 6c 65 29 0a 64 6f 6e 27 74  r->double).don't
b380: 20 77 6f 72 6b 20 77 68 65 6e 20 63 6f 6d 70 69   work when compi
b390: 6c 69 6e 67 20 75 6e 64 65 72 20 6e 6f 6e 2d 41  ling under non-A
b3a0: 4e 53 49 20 63 6f 6d 70 69 6c 65 72 73 2e 20 20  NSI compilers.  
b3b0: 54 63 6c 20 69 73 20 6e 6f 77 20 63 6c 65 61 6e  Tcl is now clean
b3c0: 0a 75 6e 64 65 72 20 67 63 63 20 2d 57 63 6f 6e  .under gcc -Wcon
b3d0: 76 65 72 73 69 6f 6e 2e 0a 0a 32 38 37 2e 20 31  version...287. 1
b3e0: 2f 34 2f 39 35 20 46 69 78 65 64 20 70 72 6f 62  /4/95 Fixed prob
b3f0: 6c 65 6d 20 69 6e 20 54 63 6c 5f 41 72 72 61 79  lem in Tcl_Array
b400: 43 6d 64 20 77 68 65 72 65 20 73 61 6d 65 20 6e  Cmd where same n
b410: 61 6d 65 20 77 61 73 20 75 73 65 64 20 66 6f 72  ame was used for
b420: 0a 62 6f 74 68 20 61 20 6c 61 62 65 6c 20 61 6e  .both a label an
b430: 64 20 61 20 76 61 72 69 61 62 6c 65 3b 20 20 63  d a variable;  c
b440: 61 75 73 65 64 20 70 72 6f 62 6c 65 6d 73 20 6f  aused problems o
b450: 6e 20 73 65 76 65 72 61 6c 20 6f 6c 64 65 72 20  n several older 
b460: 63 6f 6d 70 69 6c 65 72 73 2c 0a 6d 61 6b 69 6e  compilers,.makin
b470: 67 20 61 72 72 61 79 20 63 6f 6d 6d 61 6e 64 20  g array command 
b480: 6d 69 73 62 65 68 61 76 65 20 61 6e 64 20 63 61  misbehave and ca
b490: 75 73 69 6e 67 20 6d 61 6e 79 20 65 72 72 6f 72  using many error
b4a0: 73 20 69 6e 20 54 63 6c 20 74 65 73 74 20 73 75  s in Tcl test su
b4b0: 69 74 65 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ite...----------
b4c0: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
b4d0: 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 32 2c 20   version 7.4b2, 
b4e0: 31 2f 31 32 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d  1/12/95 --------
b4f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 38 38 2e  ----------..288.
b500: 20 32 2f 39 2f 39 35 20 4d 6f 64 69 66 69 65 64   2/9/95 Modified
b510: 20 54 63 6c 5f 43 72 65 61 74 65 43 6f 6d 6d 61   Tcl_CreateComma
b520: 6e 64 20 74 6f 20 72 65 74 75 72 6e 20 61 20 74  nd to return a t
b530: 6f 6b 65 6e 2c 20 61 6e 64 20 61 64 64 65 64 0a  oken, and added.
b540: 54 63 6c 5f 47 65 74 43 6f 6d 6d 61 6e 64 4e 61  Tcl_GetCommandNa
b550: 6d 65 20 70 72 6f 63 65 64 75 72 65 2e 20 20 54  me procedure.  T
b560: 6f 67 65 74 68 65 72 2c 20 74 68 65 73 65 20 70  ogether, these p
b570: 72 6f 63 65 64 75 72 65 73 20 6d 61 6b 65 20 69  rocedures make i
b580: 74 20 70 6f 73 73 69 62 6c 65 0a 74 6f 20 74 72  t possible.to tr
b590: 61 63 6b 20 72 65 6e 61 6d 65 73 20 6f 66 20 61  ack renames of a
b5a0: 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 32 38 39 2e 20   command...289. 
b5b0: 32 2f 31 33 2f 39 35 20 46 69 78 65 64 20 62 75  2/13/95 Fixed bu
b5c0: 67 20 69 6e 20 65 78 70 72 20 77 68 65 72 65 20  g in expr where 
b5d0: 22 30 38 39 22 20 77 61 73 20 69 6e 74 65 72 70  "089" was interp
b5e0: 72 65 74 65 64 20 61 73 20 61 0a 66 6c 6f 61 74  reted as a.float
b5f0: 69 6e 67 2d 70 6f 69 6e 74 20 6e 75 6d 62 65 72  ing-point number
b600: 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 20 62   rather than a b
b610: 6f 67 75 73 20 6f 63 74 61 6c 20 6e 75 6d 62 65  ogus octal numbe
b620: 72 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  r..*** POTENTIAL
b630: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
b640: 20 2a 2a 2a 0a 0a 32 39 30 2e 20 32 2f 31 34 2f   ***..290. 2/14/
b650: 39 35 20 41 64 64 65 64 20 63 6f 64 65 20 74 6f  95 Added code to
b660: 20 54 63 6c 5f 47 65 74 49 6e 74 20 61 6e 64 20   Tcl_GetInt and 
b670: 54 63 6c 5f 47 65 74 44 6f 75 62 6c 65 20 74 6f  Tcl_GetDouble to
b680: 20 63 68 65 63 6b 20 66 6f 72 0a 6f 76 65 72 66   check for.overf
b690: 6c 6f 77 73 20 77 68 65 6e 20 72 65 61 64 69 6e  lows when readin
b6a0: 67 20 69 6e 20 6e 75 6d 62 65 72 73 2e 0a 0a 32  g in numbers...2
b6b0: 39 31 2e 20 32 2f 31 38 2f 39 35 20 43 68 61 6e  91. 2/18/95 Chan
b6c0: 67 65 64 20 22 61 72 72 61 79 20 73 65 74 22 20  ged "array set" 
b6d0: 74 6f 20 73 74 6f 70 20 61 66 74 65 72 20 66 69  to stop after fi
b6e0: 72 73 74 20 65 72 72 6f 72 2c 20 72 61 74 68 65  rst error, rathe
b6f0: 72 20 74 68 61 6e 0a 63 6f 6e 74 69 6e 75 69 6e  r than.continuin
b700: 67 20 61 66 74 65 72 20 65 72 72 6f 72 2e 0a 0a  g after error...
b710: 32 39 32 2e 20 32 2f 32 30 2f 39 35 20 55 70 67  292. 2/20/95 Upg
b720: 72 61 64 65 64 20 74 6f 20 75 73 65 20 61 75 74  raded to use aut
b730: 6f 63 6f 6e 66 20 76 65 72 73 69 6f 6e 20 32 2e  oconf version 2.
b740: 32 2e 0a 0a 32 39 33 2e 20 32 2f 32 30 2f 39 35  2...293. 2/20/95
b750: 20 46 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70   Fixed core dump
b760: 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63 63 75   that could occu
b770: 72 20 69 6e 20 22 73 63 61 6e 22 20 63 6f 6d 6d  r in "scan" comm
b780: 61 6e 64 20 69 66 20 61 0a 63 6c 6f 73 65 20 62  and if a.close b
b790: 72 61 63 6b 65 74 20 77 61 73 20 6f 6d 69 74 74  racket was omitt
b7a0: 65 64 2e 0a 0a 32 39 34 2e 20 32 2f 32 37 2f 39  ed...294. 2/27/9
b7b0: 35 20 43 68 61 6e 67 65 64 20 4d 61 6b 65 66 69  5 Changed Makefi
b7c0: 6c 65 20 74 6f 20 61 6c 77 61 79 73 20 75 73 65  le to always use
b7d0: 20 69 6e 73 74 61 6c 6c 2d 73 68 20 66 6f 72 20   install-sh for 
b7e0: 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 73 3a 0a 74  installations:.t
b7f0: 68 65 72 65 27 73 20 6a 75 73 74 20 74 6f 6f 20  here's just too 
b800: 6d 75 63 68 20 76 61 72 69 61 74 69 6f 6e 20 61  much variation a
b810: 6d 6f 6e 67 20 22 69 6e 73 74 61 6c 6c 22 20 73  mong "install" s
b820: 79 73 74 65 6d 20 70 72 6f 67 72 61 6d 73 2c 20  ystem programs, 
b830: 77 68 69 63 68 0a 6d 61 6b 65 73 20 69 6e 73 74  which.makes inst
b840: 61 6c 6c 61 74 69 6f 6e 20 66 6c 61 6b 65 79 2e  allation flakey.
b850: 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
b860: 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72  --- Released ver
b870: 73 69 6f 6e 20 37 2e 34 62 33 2c 20 33 2f 32 34  sion 7.4b3, 3/24
b880: 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /95 ------------
b890: 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 32 35 2f 39 35 20  ------..3/25/95 
b8a0: 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
b8b0: 64 20 22 69 6e 73 74 61 6c 6c 22 20 74 6f 20 22  d "install" to "
b8c0: 2e 2f 69 6e 73 74 61 6c 6c 22 20 69 6e 20 4d 61  ./install" in Ma
b8d0: 6b 65 66 69 6c 65 20 73 6f 20 74 68 61 74 0a 22  kefile so that."
b8e0: 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 22 20 77 69  make install" wi
b8f0: 6c 6c 20 77 6f 72 6b 20 65 76 65 6e 20 77 68 65  ll work even whe
b900: 6e 20 22 2e 22 20 69 73 6e 27 74 20 69 6e 20 74  n "." isn't in t
b910: 68 65 20 73 65 61 72 63 68 20 70 61 74 68 2e 0a  he search path..
b920: 0a 33 2f 32 39 2f 39 35 20 28 62 75 67 20 66 69  .3/29/95 (bug fi
b930: 78 29 20 46 69 78 65 64 20 62 75 67 20 77 68 65  x) Fixed bug whe
b940: 72 65 20 74 68 65 20 61 75 74 6f 2d 6c 6f 61 64  re the auto-load
b950: 69 6e 67 20 6d 65 63 68 61 6e 69 73 6d 20 77 61  ing mechanism wa
b960: 73 6e 27 74 0a 70 72 6f 74 65 63 74 69 6e 67 20  sn't.protecting 
b970: 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 74 68  the values of th
b980: 65 20 65 72 72 6f 72 43 6f 64 65 20 61 6e 64 20  e errorCode and 
b990: 65 72 72 6f 72 49 6e 66 6f 20 76 61 72 69 61 62  errorInfo variab
b9a0: 6c 65 73 2e 0a 0a 33 2f 32 39 2f 39 35 20 28 6e  les...3/29/95 (n
b9b0: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
b9c0: 64 20 6f 70 74 69 6f 6e 61 6c 20 70 61 74 74 65  d optional patte
b9d0: 72 6e 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 22  rn argument to "
b9e0: 70 61 72 72 61 79 22 20 70 72 6f 63 65 64 75 72  parray" procedur
b9f0: 65 2e 0a 0a 33 2f 32 39 2f 39 35 20 28 62 75 67  e...3/29/95 (bug
ba00: 20 66 69 78 29 20 4d 61 64 65 20 74 68 65 20 66   fix) Made the f
ba10: 75 6c 6c 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74  ull functionalit
ba20: 79 20 6f 66 0a 20 20 20 20 22 72 65 74 75 72 6e  y of.    "return
ba30: 20 2d 63 6f 64 65 20 2e 2e 2e 20 2d 65 72 72 6f   -code ... -erro
ba40: 72 63 6f 64 65 20 2e 2e 2e 22 0a 77 6f 72 6b 20  rcode ...".work 
ba50: 6e 6f 74 20 6a 75 73 74 20 69 6e 73 69 64 65 20  not just inside 
ba60: 70 72 6f 63 65 64 75 72 65 73 2c 20 62 75 74 20  procedures, but 
ba70: 61 6c 73 6f 20 69 6e 20 73 6f 75 72 63 65 64 20  also in sourced 
ba80: 66 69 6c 65 73 20 61 6e 64 20 61 74 0a 74 6f 70  files and at.top
ba90: 20 6c 65 76 65 6c 2e 0a 0a 34 2f 36 2f 39 35 20   level...4/6/95 
baa0: 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
bab0: 64 65 64 20 22 70 61 74 74 65 72 6e 22 20 6f 70  ded "pattern" op
bac0: 74 69 6f 6e 20 74 6f 20 22 61 72 72 61 79 20 6e  tion to "array n
bad0: 61 6d 65 73 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a  ames" command...
bae0: 34 2f 31 38 2f 39 35 20 28 62 75 67 20 66 69 78  4/18/95 (bug fix
baf0: 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 70  ) Fixed bug in p
bb00: 61 72 73 65 72 20 77 68 65 72 65 20 69 74 20 64  arser where it d
bb10: 69 64 6e 27 74 20 61 6c 6c 6f 77 20 62 61 63 6b  idn't allow back
bb20: 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 0a 69 6d  slash-newline.im
bb30: 6d 65 64 69 61 74 65 6c 79 20 61 66 74 65 72 20  mediately after 
bb40: 61 6e 20 61 72 67 75 6d 65 6e 74 20 69 6e 20 62  an argument in b
bb50: 72 61 63 65 73 20 6f 72 20 71 75 6f 74 65 73 2e  races or quotes.
bb60: 0a 0a 34 2f 31 39 2f 39 35 20 28 6e 65 77 20 66  ..4/19/95 (new f
bb70: 65 61 74 75 72 65 29 20 41 64 64 65 64 20 74 63  eature) Added tc
bb80: 6c 5f 6c 69 62 72 61 72 79 20 76 61 72 69 61 62  l_library variab
bb90: 6c 65 2c 20 77 68 69 63 68 20 61 70 70 6c 69 63  le, which applic
bba0: 61 74 69 6f 6e 20 63 61 6e 0a 73 65 74 20 74 6f  ation can.set to
bbb0: 20 6f 76 65 72 72 69 64 65 20 64 65 66 61 75 6c   override defaul
bbc0: 74 20 6c 69 62 72 61 72 79 20 64 69 72 65 63 74  t library direct
bbd0: 6f 72 79 2e 0a 0a 34 2f 33 30 2f 39 35 20 28 62  ory...4/30/95 (b
bbe0: 75 67 20 66 69 78 29 20 44 75 72 69 6e 67 20 74  ug fix) During t
bbf0: 72 61 63 65 20 63 61 6c 6c 62 61 63 6b 73 20 66  race callbacks f
bc00: 6f 72 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74  or array element
bc10: 73 2c 20 74 68 65 20 76 61 72 69 61 62 6c 65 0a  s, the variable.
bc20: 6e 61 6d 65 20 75 73 65 64 20 69 6e 20 74 68 65  name used in the
bc30: 20 6f 72 69 67 69 6e 61 6c 20 72 65 66 65 72 65   original refere
bc40: 6e 63 65 20 77 6f 75 6c 64 20 62 65 20 74 65 6d  nce would be tem
bc50: 70 6f 72 61 72 69 6c 79 20 6d 6f 64 69 66 69 65  porarily modifie
bc60: 64 20 74 6f 0a 73 65 70 61 72 61 74 65 20 74 68  d to.separate th
bc70: 65 20 61 72 72 61 79 20 6e 61 6d 65 20 61 6e 64  e array name and
bc80: 20 65 6c 65 6d 65 6e 74 20 6e 61 6d 65 3b 20 20   element name;  
bc90: 69 66 20 74 68 65 20 74 72 61 63 65 20 63 61 6c  if the trace cal
bca0: 6c 62 61 63 6b 20 75 73 65 64 0a 74 68 65 20 73  lback used.the s
bcb0: 61 6d 65 20 6e 61 6d 65 20 73 74 72 69 6e 67 2c  ame name string,
bcc0: 20 69 74 20 77 6f 75 6c 64 20 67 65 74 20 74 68   it would get th
bcd0: 65 20 77 72 6f 6e 67 20 6e 61 6d 65 20 28 74 68  e wrong name (th
bce0: 65 20 61 72 72 61 79 20 6e 61 6d 65 20 77 69 74  e array name wit
bcf0: 68 6f 75 74 0a 65 6c 65 6d 65 6e 74 29 2e 20 20  hout.element).  
bd00: 46 69 78 65 64 20 74 6f 20 72 65 73 74 6f 72 65  Fixed to restore
bd10: 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 6e 61   the variable na
bd20: 6d 65 20 62 65 66 6f 72 65 20 6d 61 6b 69 6e 67  me before making
bd30: 20 74 72 61 63 65 0a 63 61 6c 6c 62 61 63 6b 73   trace.callbacks
bd40: 2e 0a 0a 34 2f 33 30 2f 39 35 20 28 6e 65 77 20  ...4/30/95 (new 
bd50: 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 2d  feature) Added -
bd60: 6e 6f 62 61 63 6b 73 6c 61 73 68 65 73 2c 20 2d  nobackslashes, -
bd70: 6e 6f 63 6f 6d 6d 61 6e 64 73 2c 20 61 6e 64 20  nocommands, and 
bd80: 2d 6e 6f 76 61 72 69 61 62 6c 65 73 0a 73 77 69  -novariables.swi
bd90: 74 63 68 65 73 20 74 6f 20 22 73 75 62 73 74 22  tches to "subst"
bda0: 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35 2f 34 2f 39   command...5/4/9
bdb0: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
bdc0: 41 64 64 65 64 20 54 43 4c 5f 45 56 41 4c 5f 47  Added TCL_EVAL_G
bdd0: 4c 4f 42 41 4c 20 66 6c 61 67 20 74 6f 20 54 63  LOBAL flag to Tc
bde0: 6c 5f 52 65 63 6f 72 64 41 6e 64 45 76 61 6c 2e  l_RecordAndEval.
bdf0: 0a 0a 35 2f 35 2f 39 35 20 28 62 75 67 20 66 69  ..5/5/95 (bug fi
be00: 78 29 20 20 46 6f 72 6d 61 74 20 63 6f 6d 6d 61  x)  Format comma
be10: 6e 64 20 77 6f 75 6c 64 20 6f 76 65 72 72 75 6e  nd would overrun
be20: 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20 70 72 69   memory when pri
be30: 6e 74 69 6e 67 0a 69 6e 74 65 67 65 72 73 20 77  nting.integers w
be40: 69 74 68 20 76 65 72 79 20 6c 61 72 67 65 20 70  ith very large p
be50: 72 65 63 69 73 69 6f 6e 2c 20 61 73 20 69 6e 20  recision, as in 
be60: 22 66 6f 72 6d 61 74 20 25 2e 31 30 30 30 64 20  "format %.1000d 
be70: 30 22 2e 0a 0a 35 2f 35 2f 39 35 20 28 70 6f 72  0"...5/5/95 (por
be80: 74 61 62 69 6c 69 74 79 20 69 6d 70 72 6f 76 65  tability improve
be90: 6d 65 6e 74 29 20 43 68 61 6e 67 65 64 20 74 6f  ment) Changed to
bea0: 20 75 73 65 20 42 53 44 67 65 74 74 69 6d 65 6f   use BSDgettimeo
beb0: 66 64 61 79 20 6f 6e 0a 49 52 49 58 20 6d 61 63  fday on.IRIX mac
bec0: 68 69 6e 65 73 2c 20 74 6f 20 61 76 6f 69 64 20  hines, to avoid 
bed0: 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 62  compilation prob
bee0: 6c 65 6d 73 20 77 69 74 68 20 74 68 65 20 67 65  lems with the ge
bef0: 74 74 69 6d 65 6f 66 64 61 79 0a 64 65 63 6c 61  ttimeofday.decla
bf00: 72 61 74 69 6f 6e 2e 0a 0a 35 2f 36 2f 39 35 20  ration...5/6/95 
bf10: 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
bf20: 64 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73  d manual entries
bf30: 20 74 6f 20 75 73 65 20 74 68 65 20 73 74 61 6e   to use the stan
bf40: 64 61 72 64 20 2e 54 48 0a 6d 61 63 72 6f 20 69  dard .TH.macro i
bf50: 6e 73 74 65 61 64 20 6f 66 20 61 20 63 75 73 74  nstead of a cust
bf60: 6f 6d 20 2e 48 53 20 6d 61 63 72 6f 3b 20 20 74  om .HS macro;  t
bf70: 68 65 20 2e 48 53 20 6d 61 63 72 6f 20 63 6f 6e  he .HS macro con
bf80: 66 75 73 65 73 20 69 6e 64 65 78 0a 67 65 6e 65  fuses index.gene
bf90: 72 61 74 6f 72 73 20 6c 69 6b 65 20 6d 61 6b 65  rators like make
bfa0: 77 68 61 74 69 73 2e 0a 0a 35 2f 39 2f 39 35 20  whatis...5/9/95 
bfb0: 28 62 75 67 20 66 69 78 29 20 4d 6f 64 69 66 69  (bug fix) Modifi
bfc0: 65 64 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72  ed configure scr
bfd0: 69 70 74 20 74 6f 20 63 68 65 63 6b 20 66 6f 72  ipt to check for
bfe0: 20 53 6f 6c 61 72 69 73 20 62 75 67 0a 74 68 61   Solaris bug.tha
bff0: 74 20 6d 61 6b 65 73 20 76 66 6f 72 6b 20 75 6e  t makes vfork un
c000: 72 65 6c 69 61 62 6c 65 20 28 63 6f 72 65 20 64  reliable (core d
c010: 75 6d 70 73 20 72 65 73 75 6c 74 20 69 66 20 76  umps result if v
c020: 66 6f 72 6b 65 64 20 63 68 69 6c 64 0a 63 68 61  forked child.cha
c030: 6e 67 65 73 20 61 20 73 69 67 6e 61 6c 20 68 61  nges a signal ha
c040: 6e 64 6c 65 72 29 3b 20 20 77 69 6c 6c 20 75 73  ndler);  will us
c050: 65 20 66 6f 72 6b 20 69 6e 73 74 65 61 64 20 6f  e fork instead o
c060: 66 20 76 66 6f 72 6b 20 69 66 20 74 68 65 0a 62  f vfork if the.b
c070: 75 67 20 69 73 20 70 72 65 73 65 6e 74 2e 0a 0a  ug is present...
c080: 36 2f 35 2f 39 35 20 28 62 75 67 20 66 69 78 29  6/5/95 (bug fix)
c090: 20 4d 6f 64 69 66 69 65 64 20 22 6c 73 6f 72 74   Modified "lsort
c0a0: 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 64 69 73  " command to dis
c0b0: 61 6c 6c 6f 77 20 72 65 63 75 72 73 69 76 65 20  allow recursive 
c0c0: 63 61 6c 6c 73 0a 74 6f 20 6c 73 6f 72 74 20 66  calls.to lsort f
c0d0: 72 6f 6d 20 61 20 63 6f 6d 70 61 72 69 73 6f 6e  rom a comparison
c0e0: 20 66 75 6e 63 74 69 6f 6e 2e 20 20 54 68 69 73   function.  This
c0f0: 20 69 73 20 6e 65 65 64 65 64 20 62 65 63 61 75   is needed becau
c100: 73 65 20 71 73 6f 72 74 0a 69 73 20 6e 6f 74 20  se qsort.is not 
c110: 72 65 65 6e 74 72 61 6e 74 2e 0a 0a 36 2f 35 2f  reentrant...6/5/
c120: 39 35 20 28 62 75 67 20 66 69 78 29 20 55 6e 64  95 (bug fix) Und
c130: 69 64 20 63 68 61 6e 67 65 20 32 34 33 20 61 62  id change 243 ab
c140: 6f 76 65 3a 20 20 63 68 61 6e 67 65 64 20 54 43  ove:  changed TC
c150: 4c 5f 56 4f 4c 41 54 49 4c 45 20 61 6e 64 0a 54  L_VOLATILE and.T
c160: 43 4c 5f 44 59 4e 41 4d 49 43 20 62 61 63 6b 20  CL_DYNAMIC back 
c170: 74 6f 20 69 6e 74 65 67 65 72 20 63 6f 6e 73 74  to integer const
c180: 61 6e 74 73 20 72 61 74 68 65 72 20 74 68 61 6e  ants rather than
c190: 20 70 72 6f 63 65 64 75 72 65 20 61 64 64 72 65   procedure addre
c1a0: 73 73 65 73 2e 0a 54 68 69 73 20 77 61 73 20 6e  sses..This was n
c1b0: 65 65 64 65 64 20 62 65 63 61 75 73 65 20 70 72  eeded because pr
c1c0: 6f 63 65 64 75 72 65 20 61 64 64 72 65 73 73 65  ocedure addresse
c1d0: 73 20 63 61 6e 20 68 61 76 65 20 6d 75 6c 74 69  s can have multi
c1e0: 70 6c 65 20 76 61 6c 75 65 73 0a 75 6e 64 65 72  ple values.under
c1f0: 20 73 6f 6d 65 20 64 79 6e 61 6d 69 63 20 6c 6f   some dynamic lo
c200: 61 64 69 6e 67 20 73 79 73 74 65 6d 73 20 28 65  ading systems (e
c210: 2e 67 2e 20 53 75 6e 4f 53 20 34 2e 31 20 61 6e  .g. SunOS 4.1 an
c220: 64 20 57 69 6e 64 6f 77 73 29 2e 0a 0a 36 2f 38  d Windows)...6/8
c230: 2f 39 35 20 28 66 65 61 74 75 72 65 20 63 68 61  /95 (feature cha
c240: 6e 67 65 29 20 4d 6f 64 69 66 69 65 64 20 69 6e  nge) Modified in
c250: 74 65 72 66 61 63 65 20 74 6f 20 54 63 6c 5f 4d  terface to Tcl_M
c260: 61 69 6e 20 74 6f 20 70 61 73 73 20 69 6e 20 74  ain to pass in t
c270: 68 65 0a 61 64 64 72 65 73 73 20 6f 66 20 74 68  he.address of th
c280: 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2d 73 70  e application-sp
c290: 65 63 69 66 69 63 20 69 6e 69 74 69 61 6c 69 7a  ecific initializ
c2a0: 61 74 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 2e  ation procedure.
c2b0: 0a 54 63 6c 5f 41 70 70 49 6e 69 74 20 69 73 20  .Tcl_AppInit is 
c2c0: 6e 6f 20 6c 6f 6e 67 65 72 20 68 61 72 64 77 69  no longer hardwi
c2d0: 72 65 64 20 69 6e 74 6f 20 54 63 6c 5f 4d 61 69  red into Tcl_Mai
c2e0: 6e 2e 20 20 54 68 69 73 20 69 73 20 6e 65 65 64  n.  This is need
c2f0: 65 64 0a 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d  ed.in order to m
c300: 61 6b 65 20 54 63 6c 20 61 20 73 68 61 72 65 64  ake Tcl a shared
c310: 20 6c 69 62 72 61 72 79 2e 0a 0a 36 2f 38 2f 39   library...6/8/9
c320: 35 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  5 (feature chang
c330: 65 29 20 4d 6f 64 69 66 69 65 64 20 4d 61 6b 65  e) Modified Make
c340: 66 69 6c 65 20 73 6f 20 74 68 61 74 20 74 68 65  file so that the
c350: 20 69 6e 73 74 61 6c 6c 65 64 20 76 65 72 73 69   installed versi
c360: 6f 6e 73 0a 6f 66 20 74 63 6c 73 68 20 61 6e 64  ons.of tclsh and
c370: 20 6c 69 62 74 63 6c 2e 61 20 68 61 76 65 20 76   libtcl.a have v
c380: 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 69 6e  ersion number in
c390: 20 74 68 65 6d 20 28 65 2e 67 2e 20 74 63 6c 73   them (e.g. tcls
c3a0: 68 37 2e 34 20 61 6e 64 0a 6c 69 62 74 63 6c 37  h7.4 and.libtcl7
c3b0: 2e 34 2e 61 29 20 61 6e 64 20 74 68 65 20 6c 69  .4.a) and the li
c3c0: 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 20  brary directory 
c3d0: 6e 61 6d 65 20 61 6c 73 6f 20 68 61 73 20 61 6e  name also has an
c3e0: 20 65 6d 62 65 64 64 65 64 20 76 65 72 73 69 6f   embedded versio
c3f0: 6e 0a 6e 75 6d 62 65 72 20 28 65 2e 67 2e 2c 20  n.number (e.g., 
c400: 2f 75 73 72 2f 6c 6f 63 61 6c 2f 6c 69 62 2f 74  /usr/local/lib/t
c410: 63 6c 37 2e 34 29 2e 20 20 54 68 69 73 20 73 68  cl7.4).  This sh
c420: 6f 75 6c 64 20 6d 61 6b 65 20 69 74 20 65 61 73  ould make it eas
c430: 69 65 72 20 66 6f 72 0a 54 63 6c 20 37 2e 34 20  ier for.Tcl 7.4 
c440: 74 6f 20 63 6f 65 78 69 73 74 20 77 69 74 68 20  to coexist with 
c450: 65 61 72 6c 69 65 72 20 76 65 72 73 69 6f 6e 73  earlier versions
c460: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
c470: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
c480: 72 73 69 6f 6e 20 37 2e 34 62 34 2c 20 36 2f 31  rsion 7.4b4, 6/1
c490: 36 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  6/95 -----------
c4a0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 36 2f 31 39 2f 39 35  -------..6/19/95
c4b0: 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
c4c0: 20 62 75 67 73 20 69 6e 20 74 63 6c 43 6b 61 6c   bugs in tclCkal
c4d0: 6c 6f 63 2e 63 20 74 68 61 74 20 63 61 75 73 65  loc.c that cause
c4e0: 64 20 63 6f 72 65 20 64 75 6d 70 73 0a 69 66 20  d core dumps.if 
c4f0: 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 20 77 61  TCL_MEM_DEBUG wa
c500: 73 20 65 6e 61 62 6c 65 64 20 6f 6e 20 77 6f 72  s enabled on wor
c510: 64 2d 61 64 64 72 65 73 73 65 64 20 6d 61 63 68  d-addressed mach
c520: 69 6e 65 73 20 73 75 63 68 20 61 73 20 43 72 61  ines such as Cra
c530: 79 73 2e 0a 0a 36 2f 32 31 2f 39 35 20 28 66 65  ys...6/21/95 (fe
c540: 61 74 75 72 65 20 72 65 6d 6f 76 61 6c 29 20 52  ature removal) R
c550: 65 6d 6f 76 65 64 20 6f 76 65 72 66 6c 6f 77 20  emoved overflow 
c560: 63 68 65 63 6b 73 20 66 6f 72 20 69 6e 74 65 67  checks for integ
c570: 65 72 20 61 72 69 74 68 6d 65 74 69 63 3a 0a 74  er arithmetic:.t
c580: 68 65 79 20 6a 75 73 74 20 63 61 75 73 65 20 74  hey just cause t
c590: 6f 6f 20 6d 75 63 68 20 74 72 6f 75 62 6c 65 20  oo much trouble 
c5a0: 28 65 2e 67 2e 20 66 6f 72 20 72 61 6e 64 6f 6d  (e.g. for random
c5b0: 20 20 6e 75 6d 62 65 72 20 67 65 6e 65 72 61 74    number generat
c5c0: 6f 72 73 29 2e 0a 0a 36 2f 32 38 2f 39 35 20 28  ors)...6/28/95 (
c5d0: 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 41 64  new features) Ad
c5e0: 64 65 64 20 74 63 6c 5f 70 61 74 63 68 4c 65 76  ded tcl_patchLev
c5f0: 65 6c 20 61 6e 64 20 74 63 6c 5f 76 65 72 73 69  el and tcl_versi
c600: 6f 6e 20 76 61 72 69 61 62 6c 65 73 2c 0a 66 6f  on variables,.fo
c610: 72 20 63 6f 6e 73 69 73 74 65 6e 63 79 20 77 69  r consistency wi
c620: 74 68 20 54 6b 2e 0a 0a 36 2f 32 39 2f 39 35 20  th Tk...6/29/95 
c630: 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
c640: 70 72 6f 62 6c 65 6d 20 69 6e 20 54 63 6c 5f 45  problem in Tcl_E
c650: 76 61 6c 20 77 68 65 72 65 20 69 74 20 64 69 64  val where it did
c660: 6e 27 74 20 72 65 63 6f 72 64 0a 74 68 65 20 72  n't record.the r
c670: 69 67 68 74 20 74 65 72 6d 69 6e 61 74 69 6f 6e  ight termination
c680: 20 63 68 61 72 61 63 74 65 72 20 69 66 20 61 20   character if a 
c690: 73 63 72 69 70 74 20 65 6e 64 65 64 20 77 69 74  script ended wit
c6a0: 68 20 61 20 63 6f 6d 6d 65 6e 74 2e 20 20 54 68  h a comment.  Th
c6b0: 69 73 0a 63 61 75 73 65 64 20 65 72 72 6f 6e 65  is.caused errone
c6c0: 6f 75 73 20 6f 75 74 70 75 74 20 66 6f 72 20 74  ous output for t
c6d0: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d  he following com
c6e0: 6d 61 6e 64 2c 20 61 6d 6f 6e 67 20 6f 74 68 65  mand, among othe
c6f0: 72 73 3a 0a 70 75 74 73 20 22 5b 0a 65 78 70 72  rs:.puts "[.expr
c700: 20 31 2b 31 0a 23 20 64 75 68 21 0a 5d 22 0a 0a   1+1.# duh!.]"..
c710: 36 2f 32 39 2f 39 35 20 28 6d 65 73 73 61 67 65  6/29/95 (message
c720: 20 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64   change) Changed
c730: 20 74 68 65 20 65 72 72 6f 72 20 6d 65 73 73 61   the error messa
c740: 67 65 20 66 6f 72 20 45 43 48 49 4c 44 20 73 6c  ge for ECHILD sl
c750: 69 67 68 74 6c 79 0a 74 6f 20 70 72 6f 76 69 64  ightly.to provid
c760: 65 20 61 20 68 69 6e 74 20 61 62 6f 75 74 20 77  e a hint about w
c770: 68 79 20 74 68 65 20 70 72 6f 62 6c 65 6d 20 69  hy the problem i
c780: 73 20 6f 63 63 75 72 72 69 6e 67 2e 0a 0a 2d 2d  s occurring...--
c790: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
c7a0: 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e  Released version
c7b0: 20 37 2e 34 2c 20 37 2f 31 2f 39 35 20 2d 2d 2d   7.4, 7/1/95 ---
c7c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
c7d0: 0a 37 2f 31 38 2f 39 35 20 28 62 75 67 20 66 69  .7/18/95 (bug fi
c7e0: 78 29 20 43 68 61 6e 67 65 64 20 22 6c 72 65 70  x) Changed "lrep
c7f0: 6c 61 63 65 22 20 73 6f 20 74 68 61 74 20 6e 6f  lace" so that no
c800: 74 68 69 6e 67 20 69 73 20 64 65 6c 65 74 65 64  thing is deleted
c810: 20 69 66 0a 74 68 65 20 6c 61 73 74 20 69 6e 64   if.the last ind
c820: 65 78 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20  ex is less than 
c830: 74 68 65 20 66 69 72 73 74 20 69 6e 64 65 78 20  the first index 
c840: 6f 72 20 69 66 20 74 68 65 20 6c 61 73 74 20 69  or if the last i
c850: 6e 64 65 78 0a 69 73 20 3c 20 30 2e 0a 0a 37 2f  ndex.is < 0...7/
c860: 31 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  18/95 (bug fix) 
c870: 46 69 78 65 64 20 62 75 67 73 20 77 69 74 68 20  Fixed bugs with 
c880: 62 61 63 6b 73 6c 61 73 68 65 73 20 69 6e 20 63  backslashes in c
c890: 6f 6d 6d 65 6e 74 73 3a 0a 54 63 6c 5f 43 6f 6d  omments:.Tcl_Com
c8a0: 6d 61 6e 64 43 6f 6d 70 6c 65 74 65 20 28 61 6e  mandComplete (an
c8b0: 64 20 22 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65  d "info complete
c8c0: 22 29 20 64 69 64 6e 27 74 20 70 72 6f 70 65 72  ") didn't proper
c8d0: 6c 79 20 68 61 6e 64 6c 65 0a 73 74 72 69 6e 67  ly handle.string
c8e0: 73 20 65 6e 64 69 6e 67 20 69 6e 20 62 61 63 6b  s ending in back
c8f0: 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 2c 20 61  slash-newline, a
c900: 6e 64 20 6e 65 69 74 68 65 72 20 54 63 6c 5f 43  nd neither Tcl_C
c910: 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65 74 65 0a 6e  ommandComplete.n
c920: 6f 72 20 74 68 65 20 54 63 6c 20 70 61 72 73 65  or the Tcl parse
c930: 72 20 68 61 6e 64 6c 65 64 20 6f 74 68 65 72 20  r handled other 
c940: 62 61 63 6b 73 6c 61 73 68 20 73 65 71 75 65 6e  backslash sequen
c950: 63 65 73 20 72 69 67 68 74 2c 20 73 75 63 68 0a  ces right, such.
c960: 61 73 20 74 77 6f 20 62 61 63 6b 73 6c 61 73 68  as two backslash
c970: 65 73 20 62 65 66 6f 72 65 20 61 20 6e 65 77 6c  es before a newl
c980: 69 6e 65 2e 0a 0a 37 2f 31 39 2f 39 35 20 28 62  ine...7/19/95 (b
c990: 75 67 20 66 69 78 29 20 4d 6f 64 69 66 69 65 64  ug fix) Modified
c9a0: 20 54 63 6c 5f 44 65 6c 65 74 65 43 6f 6d 6d 61   Tcl_DeleteComma
c9b0: 6e 64 20 74 6f 20 64 65 6c 65 74 65 20 74 68 65  nd to delete the
c9c0: 20 68 61 73 68 20 74 61 62 6c 65 0a 65 6e 74 72   hash table.entr
c9d0: 79 20 66 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e  y for the comman
c9e0: 64 20 62 65 66 6f 72 65 20 69 6e 76 6f 6b 69 6e  d before invokin
c9f0: 67 20 69 74 73 20 63 61 6c 6c 62 61 63 6b 2e 20  g its callback. 
ca00: 20 54 68 69 73 20 69 73 20 6e 65 65 64 65 64 20   This is needed 
ca10: 69 6e 0a 6f 72 64 65 72 20 74 6f 20 64 65 61 6c  in.order to deal
ca20: 20 77 69 74 68 20 72 65 65 6e 74 72 61 6e 63 79   with reentrancy
ca30: 2e 0a 0a 37 2f 32 32 2f 39 35 20 28 62 75 67 20  ...7/22/95 (bug 
ca40: 66 69 78 29 20 22 65 78 65 63 22 20 77 61 73 6e  fix) "exec" wasn
ca50: 27 74 20 72 65 61 70 69 6e 67 20 70 72 6f 63 65  't reaping proce
ca60: 73 73 65 73 20 63 6f 72 72 65 63 74 6c 79 20 61  sses correctly a
ca70: 66 74 65 72 0a 63 65 72 74 61 69 6e 20 65 72 72  fter.certain err
ca80: 6f 72 73 20 28 65 2e 67 2e 20 69 66 20 74 68 65  ors (e.g. if the
ca90: 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 65 78 65   name of the exe
caa0: 63 75 74 61 62 6c 65 20 77 61 73 20 62 6f 67 75  cutable was bogu
cab0: 73 2c 20 61 73 0a 69 6e 20 22 65 78 65 63 20 66  s, as.in "exec f
cac0: 6f 6f 62 61 72 22 29 2e 0a 0a 37 2f 32 37 2f 39  oobar")...7/27/9
cad0: 35 20 28 62 75 67 20 66 69 78 29 20 4d 61 6b 65  5 (bug fix) Make
cae0: 66 69 6c 65 2e 69 6e 20 77 61 73 6e 27 74 20 75  file.in wasn't u
caf0: 73 69 6e 67 20 74 68 65 20 4c 49 42 53 20 76 61  sing the LIBS va
cb00: 72 69 61 62 6c 65 20 70 72 6f 76 69 64 65 64 0a  riable provided.
cb10: 62 79 20 74 68 65 20 22 63 6f 6e 66 69 67 75 72  by the "configur
cb20: 65 22 20 73 63 72 69 70 74 2e 20 20 54 68 69 73  e" script.  This
cb30: 20 63 61 75 73 65 64 20 70 72 6f 62 6c 65 6d 73   caused problems
cb40: 20 6f 6e 20 73 6f 6d 65 20 53 43 4f 20 73 79 73   on some SCO sys
cb50: 74 65 6d 73 2e 0a 0a 37 2f 32 37 2f 39 35 20 28  tems...7/27/95 (
cb60: 62 75 67 20 66 69 78 29 20 54 68 65 20 76 65 72  bug fix) The ver
cb70: 73 69 6f 6e 20 6f 66 20 73 74 72 74 6f 64 20 69  sion of strtod i
cb80: 6e 20 66 69 78 73 74 72 74 6f 64 2e 63 20 64 69  n fixstrtod.c di
cb90: 64 6e 27 74 20 70 72 6f 70 65 72 6c 79 0a 68 61  dn't properly.ha
cba0: 6e 64 6c 65 20 74 68 65 20 63 61 73 65 20 77 68  ndle the case wh
cbb0: 65 72 65 20 65 6e 64 50 74 72 20 3d 3d 20 4e 55  ere endPtr == NU
cbc0: 4c 4c 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  LL...-----------
cbd0: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
cbe0: 70 61 74 63 68 20 37 2e 34 70 31 2c 20 37 2f 32  patch 7.4p1, 7/2
cbf0: 39 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  9/95 -----------
cc00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 38 2f  ------------..8/
cc10: 34 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  4/95 (bug fix) C
cc20: 2d 6c 65 76 65 6c 20 74 72 61 63 65 20 63 61 6c  -level trace cal
cc30: 6c 62 61 63 6b 73 20 66 6f 72 20 76 61 72 69 61  lbacks for varia
cc40: 62 6c 65 73 20 77 65 72 65 20 73 6f 6d 65 74 69  bles were someti
cc50: 6d 65 73 0a 72 65 63 65 69 76 69 6e 67 20 74 68  mes.receiving th
cc60: 65 20 50 41 52 54 31 5f 4e 4f 54 5f 50 41 52 53  e PART1_NOT_PARS
cc70: 45 44 20 66 6c 61 67 2c 20 77 68 69 63 68 20 63  ED flag, which c
cc80: 6f 75 6c 64 20 63 61 75 73 65 20 65 72 72 6f 72  ould cause error
cc90: 73 20 69 6e 0a 73 75 62 73 65 71 75 65 6e 74 20  s in.subsequent 
cca0: 54 63 6c 20 6c 69 62 72 61 72 79 20 63 61 6c 6c  Tcl library call
ccb0: 73 20 75 73 69 6e 67 20 74 68 65 20 66 6c 61 67  s using the flag
ccc0: 73 2e 20 28 4a 4f 29 0a 0a 38 2f 34 2f 39 35 20  s. (JO)..8/4/95 
ccd0: 28 62 75 67 20 66 69 78 29 20 43 61 6c 6c 73 20  (bug fix) Calls 
cce0: 74 6f 20 74 6f 75 70 70 65 72 20 61 6e 64 20 74  to toupper and t
ccf0: 6f 6c 6f 77 65 72 20 77 65 72 65 6e 27 74 20 75  olower weren't u
cd00: 73 69 6e 67 20 74 68 65 0a 55 43 48 41 52 20 6d  sing the.UCHAR m
cd10: 61 63 72 6f 73 2c 20 77 68 69 63 68 20 63 61 75  acros, which cau
cd20: 73 65 64 20 74 72 6f 75 62 6c 65 20 69 6e 20 6e  sed trouble in n
cd30: 6f 6e 2d 55 2e 53 2e 20 6c 6f 63 61 6c 65 73 2e  on-U.S. locales.
cd40: 20 28 4a 4f 29 0a 0a 38 2f 31 30 2f 39 35 20 28   (JO)..8/10/95 (
cd50: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
cd60: 65 64 20 74 68 65 20 22 6c 6f 61 64 22 20 63 6f  ed the "load" co
cd70: 6d 6d 61 6e 64 20 66 6f 72 20 64 79 6e 61 6d 69  mmand for dynami
cd80: 63 20 6c 6f 61 64 69 6e 67 20 6f 66 0a 62 69 6e  c loading of.bin
cd90: 61 72 79 20 70 61 63 6b 61 67 65 73 2c 20 61 6e  ary packages, an
cda0: 64 20 74 68 65 20 54 63 6c 5f 50 61 63 6b 61 67  d the Tcl_Packag
cdb0: 65 49 6e 69 74 50 72 6f 63 20 70 72 6f 74 6f 74  eInitProc protot
cdc0: 79 70 65 20 66 6f 72 20 70 61 63 6b 61 67 65 0a  ype for package.
cdd0: 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 70  initialization p
cde0: 72 6f 63 65 64 75 72 65 73 2e 20 28 4a 4f 29 0a  rocedures. (JO).
cdf0: 0a 38 2f 32 33 2f 39 35 20 28 6e 65 77 20 66 65  .8/23/95 (new fe
ce00: 61 74 75 72 65 73 29 20 41 64 64 65 64 20 22 69  atures) Added "i
ce10: 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 78 74  nfo sharedlibext
ce20: 65 6e 73 69 6f 6e 22 20 61 6e 64 0a 22 69 6e 66  ension" and."inf
ce30: 6f 20 6e 61 6d 65 6f 66 65 78 65 63 75 74 61 62  o nameofexecutab
ce40: 6c 65 22 20 63 6f 6d 6d 61 6e 64 73 2c 20 70 6c  le" commands, pl
ce50: 75 73 20 54 63 6c 5f 46 69 6e 64 45 78 74 65 6e  us Tcl_FindExten
ce60: 73 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 2e 20  sion procedure. 
ce70: 28 4a 4f 29 0a 0a 38 2f 32 35 2f 39 35 20 28 62  (JO)..8/25/95 (b
ce80: 75 67 20 66 69 78 29 20 49 66 20 74 68 65 20 74  ug fix) If the t
ce90: 61 72 67 65 74 20 6f 66 20 61 6e 20 22 75 70 76  arget of an "upv
cea0: 61 72 22 20 77 61 73 20 6e 6f 6e 2d 65 78 69 73  ar" was non-exis
ceb0: 74 65 6e 74 20 62 75 74 0a 68 61 64 20 74 72 61  tent but.had tra
cec0: 63 65 73 20 73 65 74 2c 20 74 68 65 20 74 72 61  ces set, the tra
ced0: 63 65 73 20 77 65 72 65 20 73 69 6c 65 6e 74 6c  ces were silentl
cee0: 79 20 6c 6f 73 74 2e 20 20 43 68 61 6e 67 65 20  y lost.  Change 
cef0: 74 6f 20 67 65 6e 65 72 61 74 65 0a 61 6e 20 65  to generate.an e
cf00: 72 72 6f 72 20 69 6e 73 74 65 61 64 2e 20 28 4a  rror instead. (J
cf10: 4f 29 0a 0a 38 2f 32 35 2f 39 35 20 28 62 75 67  O)..8/25/95 (bug
cf20: 20 66 69 78 29 20 55 6e 64 69 64 20 63 68 61 6e   fix) Undid chan
cf30: 67 65 20 66 72 6f 6d 20 37 2f 31 39 2c 20 73 6f  ge from 7/19, so
cf40: 20 74 68 61 74 20 63 6f 6d 6d 61 6e 64 73 20 63   that commands c
cf50: 61 6e 20 73 74 61 79 0a 61 72 6f 75 6e 64 20 77  an stay.around w
cf60: 68 69 6c 65 20 74 68 65 69 72 20 64 65 6c 65 74  hile their delet
cf70: 69 6f 6e 20 63 61 6c 6c 62 61 63 6b 73 20 65 78  ion callbacks ex
cf80: 65 63 75 74 65 2e 20 20 41 64 64 65 64 20 6c 6f  ecute.  Added lo
cf90: 74 73 20 6f 66 20 63 6f 64 65 20 74 6f 0a 68 61  ts of code to.ha
cfa0: 6e 64 6c 65 20 61 6c 6c 20 6f 66 20 74 68 65 20  ndle all of the 
cfb0: 72 65 65 6e 74 72 61 6e 63 79 20 70 72 6f 62 6c  reentrancy probl
cfc0: 65 6d 73 20 74 68 61 74 20 74 68 69 73 20 6f 70  ems that this op
cfd0: 65 6e 73 20 75 70 2e 20 28 4a 4f 29 0a 0a 38 2f  ens up. (JO)..8/
cfe0: 32 35 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  25/95 (bug fix) 
cff0: 46 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20  Fixed core dump 
d000: 74 68 61 74 20 63 6f 75 6c 64 20 6f 63 63 75 72  that could occur
d010: 20 69 6e 20 54 63 6c 44 65 6c 65 74 65 56 61 72   in TclDeleteVar
d020: 73 0a 69 66 20 74 68 65 72 65 20 77 61 73 20 61  s.if there was a
d030: 6e 20 75 70 76 61 72 20 66 72 6f 6d 20 6f 6e 65  n upvar from one
d040: 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 74 61   entry in the ta
d050: 62 6c 65 20 74 6f 20 74 68 65 20 6e 65 78 74 20  ble to the next 
d060: 65 6e 74 72 79 0a 69 6e 20 74 68 65 20 73 61 6d  entry.in the sam
d070: 65 20 74 61 62 6c 65 2e 20 28 4a 4f 29 0a 0a 38  e table. (JO)..8
d080: 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29  /28/95 (bug fix)
d090: 20 45 78 65 63 20 77 61 73 6e 27 74 20 68 61 6e   Exec wasn't han
d0a0: 64 6c 69 6e 67 20 62 61 64 20 75 73 65 72 20 6e  dling bad user n
d0b0: 61 6d 65 73 20 70 72 6f 70 65 72 6c 79 2c 20 61  ames properly, a
d0c0: 73 0a 69 6e 20 22 65 78 65 63 20 7e 62 6f 67 75  s.in "exec ~bogu
d0d0: 73 5f 75 73 65 72 2f 66 6f 6f 22 2e 20 28 4a 4f  s_user/foo". (JO
d0e0: 29 0a 0a 38 2f 32 39 2f 39 35 20 28 62 75 67 20  )..8/29/95 (bug 
d0f0: 66 69 78 65 73 29 20 43 68 61 6e 67 65 64 20 62  fixes) Changed b
d100: 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65  ackslash-newline
d110: 20 68 61 6e 64 6c 69 6e 67 20 74 6f 20 63 6f 72   handling to cor
d120: 72 65 63 74 20 74 77 6f 0a 70 72 6f 62 6c 65 6d  rect two.problem
d130: 73 3a 0a 20 20 20 20 2d 20 4f 6e 6c 79 20 73 70  s:.    - Only sp
d140: 61 63 65 73 20 61 6e 64 20 74 61 62 73 20 66 6f  aces and tabs fo
d150: 6c 6c 6f 77 69 6e 67 20 74 68 65 20 62 61 63 6b  llowing the back
d160: 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20 61 72  slash-newline ar
d170: 65 20 6e 6f 77 0a 20 20 20 20 20 20 61 62 73 6f  e now.      abso
d180: 72 62 65 64 20 61 73 20 70 61 72 74 20 6f 66 20  rbed as part of 
d190: 74 68 65 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65  the backslash-ne
d1a0: 77 6c 69 6e 65 2e 20 20 4e 65 77 6c 69 6e 65 77  wline.  Newlinew
d1b0: 20 61 72 65 20 6e 6f 0a 20 20 20 20 20 20 6c 6f   are no.      lo
d1c0: 6e 67 65 72 20 61 62 73 6f 72 62 65 64 20 28 61  nger absorbed (a
d1d0: 64 64 20 61 6e 6f 74 68 65 72 20 62 61 63 6b 73  dd another backs
d1e0: 6c 61 73 68 20 69 66 20 79 6f 75 20 77 61 6e 74  lash if you want
d1f0: 20 74 6f 20 61 62 73 6f 72 62 0a 20 20 20 20 20   to absorb.     
d200: 20 61 6e 6f 74 68 65 72 20 6e 65 77 6c 69 6e 65   another newline
d210: 29 2e 0a 20 20 20 20 2d 20 54 63 6c 57 6f 72 64  )..    - TclWord
d220: 45 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20  End returns the 
d230: 63 68 61 72 61 63 74 65 72 20 6a 75 73 74 20 62  character just b
d240: 65 66 6f 72 65 20 74 68 65 20 62 61 63 6b 73 6c  efore the backsl
d250: 61 73 68 20 69 6e 0a 20 20 20 20 20 20 74 68 65  ash in.      the
d260: 20 73 65 71 75 65 6e 63 65 20 61 73 20 74 68 65   sequence as the
d270: 20 65 6e 64 20 6f 66 20 74 68 65 20 73 65 71 75   end of the sequ
d280: 65 6e 63 65 3b 20 20 69 74 20 75 73 65 64 20 74  ence;  it used t
d290: 6f 20 6e 6f 74 20 63 6f 6e 73 69 64 65 72 0a 20  o not consider. 
d2a0: 20 20 20 20 20 74 68 65 20 62 61 63 6b 73 6c 61       the backsla
d2b0: 73 68 2d 6e 65 77 6c 69 6e 65 20 61 73 20 61 20  sh-newline as a 
d2c0: 77 6f 72 64 20 73 65 70 61 72 61 74 6f 72 2e 20  word separator. 
d2d0: 28 4a 4f 29 0a 0a 38 2f 33 31 2f 39 35 20 28 6e  (JO)..8/31/95 (n
d2e0: 65 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e  ew feature) Chan
d2f0: 67 65 64 20 6d 61 6e 20 70 61 67 65 20 69 6e 73  ged man page ins
d300: 74 61 6c 6c 61 74 69 6f 6e 20 28 77 69 74 68 20  tallation (with 
d310: 22 6d 6b 4c 69 6e 6b 73 22 0a 73 63 72 69 70 74  "mkLinks".script
d320: 29 20 74 6f 20 63 72 65 61 74 65 20 61 64 64 69  ) to create addi
d330: 74 69 6f 6e 61 6c 20 6c 69 6e 6b 73 20 66 6f 72  tional links for
d340: 20 6d 61 6e 75 61 6c 20 70 61 67 65 73 20 63 6f   manual pages co
d350: 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 0a 65  rresponding to.e
d360: 61 63 68 20 6f 66 20 74 68 65 20 70 72 6f 63 65  ach of the proce
d370: 64 75 72 65 20 61 6e 64 20 63 6f 6d 6d 61 6e 64  dure and command
d380: 20 6e 61 6d 65 73 20 64 65 73 63 72 69 62 65 64   names described
d390: 20 69 6e 20 74 68 65 20 70 61 67 65 73 2e 20 28   in the pages. (
d3a0: 4a 4f 29 0a 0a 39 2f 31 30 2f 39 35 20 52 65 6f  JO)..9/10/95 Reo
d3b0: 72 67 61 6e 69 7a 65 64 20 54 63 6c 20 73 6f 75  rganized Tcl sou
d3c0: 72 63 65 73 20 66 6f 72 20 57 69 6e 64 6f 77 73  rces for Windows
d3d0: 20 61 6e 64 20 4d 61 63 20 70 6f 72 74 73 2e 20   and Mac ports. 
d3e0: 20 41 6c 6c 20 73 6f 75 72 63 65 73 0a 61 72 65   All sources.are
d3f0: 20 6e 6f 77 20 69 6e 20 73 75 62 64 69 72 65 63   now in subdirec
d400: 74 6f 72 69 65 73 3a 20 20 22 67 65 6e 65 72 69  tories:  "generi
d410: 63 22 20 63 6f 6e 74 61 69 6e 73 20 73 6f 75 72  c" contains sour
d420: 63 65 73 20 74 68 61 74 20 77 6f 72 6b 20 6f 6e  ces that work on
d430: 20 61 6c 6c 0a 70 6c 61 74 66 6f 72 6d 73 2c 20   all.platforms, 
d440: 22 77 69 6e 64 6f 77 73 22 2c 20 22 6d 61 63 22  "windows", "mac"
d450: 2c 20 61 6e 64 20 22 75 6e 69 78 22 20 64 69 72  , and "unix" dir
d460: 65 63 74 6f 72 69 65 73 20 63 6f 6e 74 61 69 6e  ectories contain
d470: 20 70 6c 61 74 66 6f 72 6d 2d 0a 73 70 65 63 69   platform-.speci
d480: 66 69 63 20 73 6f 75 72 63 65 73 2e 20 20 53 6f  fic sources.  So
d490: 6d 65 20 55 4e 49 58 20 73 6f 75 72 63 65 73 20  me UNIX sources 
d4a0: 61 72 65 20 61 6c 73 6f 20 75 73 65 64 20 6f 6e  are also used on
d4b0: 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72 6d 73   other platforms
d4c0: 2e 20 28 53 53 29 0a 0a 39 2f 31 30 2f 39 35 20  . (SS)..9/10/95 
d4d0: 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
d4e0: 20 45 6c 69 6d 69 6e 61 74 65 64 20 65 78 70 6f   Eliminated expo
d4f0: 72 74 65 64 20 67 6c 6f 62 61 6c 20 76 61 72 69  rted global vari
d500: 61 62 6c 65 73 20 28 74 68 65 79 0a 64 6f 6e 27  ables (they.don'
d510: 74 20 77 6f 72 6b 20 77 69 74 68 20 57 69 6e 64  t work with Wind
d520: 6f 77 73 20 44 4c 4c 73 29 2e 20 20 52 65 70 6c  ows DLLs).  Repl
d530: 61 63 65 64 20 74 63 6c 5f 41 73 79 6e 63 52 65  aced tcl_AsyncRe
d540: 61 64 79 20 61 6e 64 0a 74 63 6c 5f 46 69 6c 65  ady and.tcl_File
d550: 43 6c 6f 73 65 50 72 6f 63 20 77 69 74 68 20 70  CloseProc with p
d560: 72 6f 63 65 64 75 72 65 73 20 54 63 6c 5f 41 73  rocedures Tcl_As
d570: 79 6e 63 52 65 61 64 79 28 29 20 61 6e 64 0a 54  yncReady() and.T
d580: 63 6c 5f 53 65 74 46 69 6c 65 43 6c 6f 73 65 50  cl_SetFileCloseP
d590: 72 6f 63 28 29 2e 20 20 52 65 70 6c 61 63 65 64  roc().  Replaced
d5a0: 20 43 20 76 61 72 69 61 62 6c 65 20 74 63 6c 5f   C variable tcl_
d5b0: 52 63 46 69 6c 65 4e 61 6d 65 20 77 69 74 68 0a  RcFileName with.
d5c0: 61 20 54 63 6c 20 76 61 72 69 61 62 6c 65 20 74  a Tcl variable t
d5d0: 63 6c 5f 72 63 46 69 6c 65 4e 61 6d 65 2e 20 28  cl_rcFileName. (
d5e0: 53 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  SS).*** POTENTIA
d5f0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
d600: 59 20 2a 2a 2a 0a 0a 39 2f 31 31 2f 39 35 20 28  Y ***..9/11/95 (
d610: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
d620: 65 64 20 70 72 6f 63 65 64 75 72 65 20 54 63 6c  ed procedure Tcl
d630: 5f 53 65 74 50 61 6e 69 63 50 72 6f 63 20 74 6f  _SetPanicProc to
d640: 20 6f 76 65 72 72 69 64 65 0a 74 68 65 20 64 65   override.the de
d650: 66 61 75 6c 74 20 69 6d 70 6c 65 6d 65 6e 74 61  fault implementa
d660: 74 69 6f 6e 20 6f 66 20 22 70 61 6e 69 63 22 2e  tion of "panic".
d670: 20 28 53 53 29 0a 0a 39 2f 31 31 2f 39 35 20 28   (SS)..9/11/95 (
d680: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
d690: 65 64 20 22 69 6e 74 65 72 70 22 20 63 6f 6d 6d  ed "interp" comm
d6a0: 61 6e 64 20 74 6f 20 61 6c 6c 6f 77 20 63 72 65  and to allow cre
d6b0: 61 74 69 6f 6e 20 6f 66 0a 6e 65 77 20 69 6e 74  ation of.new int
d6c0: 65 72 70 72 65 74 65 72 73 20 61 6e 64 20 65 78  erpreters and ex
d6d0: 65 63 75 74 69 6f 6e 20 6f 66 20 75 6e 74 72 75  ecution of untru
d6e0: 73 74 65 64 20 73 63 72 69 70 74 73 2e 20 20 41  sted scripts.  A
d6f0: 64 64 65 64 20 6d 61 6e 79 20 6e 65 77 0a 70 72  dded many new.pr
d700: 6f 63 65 64 75 72 65 73 2c 20 73 75 63 68 20 61  ocedures, such a
d710: 73 20 54 63 6c 5f 43 72 65 61 74 65 53 6c 61 76  s Tcl_CreateSlav
d720: 65 2c 20 54 63 6c 5f 43 72 65 61 74 65 41 6c 69  e, Tcl_CreateAli
d730: 61 73 2c 61 6e 64 20 54 63 6c 5f 4d 61 6b 65 53  as,and Tcl_MakeS
d740: 61 66 65 2c 0a 74 6f 20 70 72 6f 76 69 64 65 20  afe,.to provide 
d750: 43 2d 6c 65 76 65 6c 20 61 63 63 65 73 73 20 74  C-level access t
d760: 6f 20 74 68 65 20 69 6e 74 65 72 70 72 65 74 65  o the interprete
d770: 72 20 66 61 63 69 6c 69 74 79 2e 20 54 68 69 73  r facility. This
d780: 20 6d 65 63 68 61 6e 69 73 6d 0a 6e 6f 77 20 70   mechanism.now p
d790: 72 6f 76 69 64 65 73 20 61 6c 6d 6f 73 74 20 61  rovides almost a
d7a0: 6c 6c 20 6f 66 20 74 68 65 20 67 65 6e 65 72 69  ll of the generi
d7b0: 63 20 66 75 6e 63 74 69 6f 6e 73 20 6f 66 20 42  c functions of B
d7c0: 6f 72 65 6e 73 74 65 69 6e 27 73 20 61 6e 64 0a  orenstein's and.
d7d0: 52 6f 73 65 27 73 20 53 61 66 65 2d 54 63 6c 20  Rose's Safe-Tcl 
d7e0: 28 62 75 74 20 6e 6f 74 20 61 6e 79 20 54 6b 20  (but not any Tk 
d7f0: 6f 72 20 65 6d 61 69 6c 2d 72 65 6c 61 74 65 64  or email-related
d800: 20 73 74 75 66 66 29 2e 20 20 28 4a 4c 29 0a 0a   stuff).  (JL)..
d810: 39 2f 31 31 2f 39 35 20 28 66 65 61 74 75 72 65  9/11/95 (feature
d820: 20 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64   change) Changed
d830: 20 66 69 6c 65 20 6d 61 6e 61 67 65 6d 65 6e 74   file management
d840: 20 73 6f 20 74 68 61 74 20 66 69 6c 65 73 20 61   so that files a
d850: 72 65 0a 6e 6f 20 6c 6f 6e 67 65 72 20 73 68 61  re.no longer sha
d860: 72 65 64 20 62 65 74 77 65 65 6e 20 69 6e 74 65  red between inte
d870: 72 70 72 65 74 65 72 73 3a 20 20 61 20 66 69 6c  rpreters:  a fil
d880: 65 20 63 61 6e 6e 6f 74 20 6e 6f 72 6d 61 6c 6c  e cannot normall
d890: 79 20 62 65 0a 72 65 66 65 72 65 6e 63 65 64 20  y be.referenced 
d8a0: 69 6e 20 6f 6e 65 20 69 6e 74 65 72 70 72 65 74  in one interpret
d8b0: 65 72 20 69 66 20 69 74 20 77 61 73 20 6f 70 65  er if it was ope
d8c0: 6e 65 64 20 69 6e 20 61 6e 6f 74 68 65 72 2e 20  ned in another. 
d8d0: 20 54 68 69 73 0a 66 65 61 74 75 72 65 20 69 73   This.feature is
d8e0: 20 6e 65 65 64 65 64 20 74 6f 20 73 75 70 70 6f   needed to suppo
d8f0: 72 74 20 73 61 66 65 20 69 6e 74 65 72 70 72 65  rt safe interpre
d900: 74 65 72 73 2e 20 20 41 64 64 65 64 20 54 63 6c  ters.  Added Tcl
d910: 5f 53 68 61 72 65 48 61 6e 64 6c 65 28 29 0a 70  _ShareHandle().p
d920: 72 6f 63 65 64 75 72 65 20 66 6f 72 20 61 6c 6c  rocedure for all
d930: 6f 77 69 6e 67 20 66 69 6c 65 73 20 74 6f 20 62  owing files to b
d940: 65 20 73 68 61 72 65 64 2c 20 61 6e 64 20 61 64  e shared, and ad
d950: 64 65 64 20 22 69 6e 74 65 72 70 22 20 61 72 67  ded "interp" arg
d960: 75 6d 65 6e 74 0a 74 6f 20 54 63 6c 5f 46 69 6c  ument.to Tcl_Fil
d970: 65 50 65 72 6d 69 73 73 69 6f 6e 73 20 70 72 6f  ePermissions pro
d980: 63 65 64 75 72 65 2e 20 28 4a 4c 29 0a 2a 2a 2a  cedure. (JL).***
d990: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
d9a0: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
d9b0: 39 2f 31 31 2f 39 35 20 28 6e 65 77 20 66 65 61  9/11/95 (new fea
d9c0: 74 75 72 65 29 20 41 64 64 65 64 20 22 41 73 73  ture) Added "Ass
d9d0: 6f 63 44 61 74 61 22 20 6d 65 63 68 61 6e 69 73  ocData" mechanis
d9e0: 6d 2c 20 77 68 65 72 65 62 79 20 65 78 74 65 6e  m, whereby exten
d9f0: 73 69 6f 6e 73 0a 63 61 6e 20 61 73 73 6f 63 69  sions.can associ
da00: 61 74 65 20 74 68 65 69 72 20 6f 77 6e 20 64 61  ate their own da
da10: 74 61 20 77 69 74 68 20 61 6e 20 69 6e 74 65 72  ta with an inter
da20: 70 72 65 74 65 72 20 61 6e 64 20 67 65 74 20 63  preter and get c
da30: 61 6c 6c 65 64 20 62 61 63 6b 0a 77 68 65 6e 20  alled back.when 
da40: 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20  the interpreter 
da50: 69 73 20 64 65 6c 65 74 65 64 2e 20 20 54 68 69  is deleted.  Thi
da60: 73 20 69 73 20 76 69 73 69 62 6c 65 20 61 74 20  s is visible at 
da70: 43 20 6c 65 76 65 6c 20 76 69 61 20 74 68 65 0a  C level via the.
da80: 70 72 6f 63 65 64 75 72 65 73 20 54 63 6c 5f 53  procedures Tcl_S
da90: 65 74 41 73 73 6f 63 44 61 74 61 20 61 6e 64 20  etAssocData and 
daa0: 54 63 6c 5f 47 65 74 41 73 73 6f 63 44 61 74 61  Tcl_GetAssocData
dab0: 2e 20 20 28 4a 4c 29 0a 0a 39 2f 31 31 2f 39 35  .  (JL)..9/11/95
dac0: 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
dad0: 64 64 65 64 20 54 63 6c 5f 45 72 72 6e 6f 4d 73  dded Tcl_ErrnoMs
dae0: 67 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 61  g to translate a
daf0: 6e 20 65 72 72 6e 6f 20 76 61 6c 75 65 0a 69 6e  n errno value.in
db00: 74 6f 20 61 20 68 75 6d 61 6e 2d 72 65 61 64 61  to a human-reada
db10: 62 6c 65 20 73 74 72 69 6e 67 2e 20 20 54 68 69  ble string.  Thi
db20: 73 20 69 73 20 6e 6f 77 20 75 73 65 64 20 69 6e  s is now used in
db30: 73 74 65 61 64 20 6f 66 20 63 61 6c 6c 69 6e 67  stead of calling
db40: 0a 73 74 72 65 72 72 6f 72 20 62 65 63 61 75 73  .strerror becaus
db50: 65 20 73 74 72 65 72 72 6f 72 20 6d 65 73 61 67  e strerror mesag
db60: 65 73 20 76 61 72 79 20 64 72 61 6d 61 74 69 63  es vary dramatic
db70: 61 6c 6c 79 20 66 72 6f 6d 20 70 6c 61 74 66 6f  ally from platfo
db80: 72 6d 0a 74 6f 20 70 6c 61 74 66 6f 72 6d 2c 20  rm.to platform, 
db90: 77 68 69 63 68 20 6d 65 73 73 65 73 20 75 70 20  which messes up 
dba0: 54 63 6c 20 74 65 73 74 73 2e 20 20 54 63 6c 5f  Tcl tests.  Tcl_
dbb0: 45 72 72 6e 6f 4d 73 67 20 75 73 65 73 20 74 68  ErrnoMsg uses th
dbc0: 65 20 73 74 61 6e 64 61 72 64 0a 50 4f 53 49 58  e standard.POSIX
dbd0: 20 6d 65 73 73 61 67 65 73 20 66 6f 72 20 61 6c   messages for al
dbe0: 6c 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 69 67  l the common sig
dbf0: 6e 61 6c 73 2c 20 61 6e 64 20 63 61 6c 6c 73 20  nals, and calls 
dc00: 73 74 72 65 72 72 6f 72 20 66 6f 72 0a 73 69 67  strerror for.sig
dc10: 6e 61 6c 73 20 69 74 20 64 6f 65 73 6e 27 74 20  nals it doesn't 
dc20: 75 6e 64 65 72 73 74 61 6e 64 2e 0a 0a 2d 2d 2d  understand...---
dc30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
dc40: 65 6c 65 61 73 65 64 20 70 61 74 63 68 20 37 2e  eleased patch 7.
dc50: 34 70 32 2c 20 39 2f 31 35 2f 39 35 20 2d 2d 2d  4p2, 9/15/95 ---
dc60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
dc70: 2d 2d 2d 2d 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----..----------
dc80: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
dc90: 20 37 2e 35 61 31 2c 20 39 2f 31 35 2f 39 35 20   7.5a1, 9/15/95 
dca0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
dcb0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32 32 2f 39 35  -------..9/22/95
dcc0: 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67   (bug fix) Chang
dcd0: 65 64 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20  ed auto_mkindex 
dce0: 74 6f 20 63 72 65 61 74 65 20 74 63 6c 49 6e 64  to create tclInd
dcf0: 65 78 20 66 69 6c 65 73 20 74 68 61 74 0a 68 61  ex files that.ha
dd00: 6e 64 6c 65 20 64 69 72 65 63 74 6f 72 69 65 73  ndle directories
dd10: 20 77 68 6f 73 65 20 70 61 74 68 73 20 6d 69 67   whose paths mig
dd20: 68 74 20 63 6f 6e 74 61 69 6e 20 73 70 61 63 65  ht contain space
dd30: 73 2e 20 28 52 4a 29 0a 0a 39 2f 32 37 2f 39 35  s. (RJ)..9/27/95
dd40: 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 22   (bug fix) The "
dd50: 66 6f 72 6d 61 74 22 20 63 6f 6d 6d 61 6e 64 20  format" command 
dd60: 64 69 64 6e 27 74 20 63 68 65 63 6b 20 66 6f 72  didn't check for
dd70: 20 68 75 67 65 20 6f 72 20 6e 65 67 61 74 69 76   huge or negativ
dd80: 65 0a 77 69 64 74 68 20 73 70 65 63 69 66 69 65  e.width specifie
dd90: 72 73 2c 20 77 68 69 63 68 20 63 6f 75 6c 64 20  rs, which could 
dda0: 63 61 75 73 65 20 63 6f 72 65 20 64 75 6d 70 73  cause core dumps
ddb0: 2e 20 28 4a 4f 29 0a 0a 39 2f 32 37 2f 39 35 20  . (JO)..9/27/95 
ddc0: 28 62 75 67 20 66 69 78 29 20 43 6f 72 65 20 64  (bug fix) Core d
ddd0: 75 6d 70 73 20 63 6f 75 6c 64 20 6f 63 63 75 72  umps could occur
dde0: 20 69 66 20 61 6e 20 69 6e 74 65 72 61 63 74 69   if an interacti
ddf0: 76 65 20 63 6f 6d 6d 61 6e 64 20 74 79 70 65 64  ve command typed
de00: 0a 74 6f 20 74 63 6c 73 68 20 72 65 74 75 72 6e  .to tclsh return
de10: 65 64 20 61 20 76 65 72 79 20 6c 6f 6e 67 20 72  ed a very long r
de20: 65 73 75 6c 74 20 66 6f 72 20 74 63 6c 73 68 20  esult for tclsh 
de30: 74 6f 20 70 72 69 6e 74 20 6f 75 74 2e 20 20 54  to print out.  T
de40: 68 65 20 62 75 67 20 69 73 0a 61 63 74 75 61 6c  he bug is.actual
de50: 6c 79 20 69 6e 20 70 72 69 6e 74 66 20 28 69 6e  ly in printf (in
de60: 20 53 6f 6c 61 72 69 73 20 32 2e 33 20 61 6e 64   Solaris 2.3 and
de70: 20 32 2e 34 2c 20 61 74 20 6c 65 61 73 74 29 3b   2.4, at least);
de80: 20 20 73 77 69 74 63 68 65 64 20 74 6f 20 75 73    switched to us
de90: 65 0a 70 75 74 73 20 69 6e 73 74 65 61 64 2e 20  e.puts instead. 
dea0: 20 28 4a 4f 29 0a 0a 39 2f 32 38 2f 39 35 20 28   (JO)..9/28/95 (
deb0: 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
dec0: 20 6d 61 6b 65 66 69 6c 65 2e 62 63 20 74 6f 20   makefile.bc to 
ded0: 65 6c 69 6d 69 6e 61 74 65 20 61 20 66 61 6c 73  eliminate a fals
dee0: 65 20 64 65 70 65 6e 64 65 6e 63 79 0a 66 6f 72  e dependency.for
def0: 20 74 63 6c 31 36 37 35 2e 64 6c 6c 20 6f 6e 20   tcl1675.dll on 
df00: 74 68 65 20 42 6f 72 6c 61 6e 64 20 72 75 6e 20  the Borland run 
df10: 74 69 6d 65 20 6c 69 62 72 61 72 79 2e 20 28 53  time library. (S
df20: 53 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67  S)..9/28/95 (bug
df30: 20 66 69 78 29 20 46 69 78 65 64 20 74 63 6c 37   fix) Fixed tcl7
df40: 35 2e 64 6c 6c 20 73 6f 20 69 74 20 6c 6f 6f 6b  5.dll so it look
df50: 73 20 66 6f 72 20 74 63 6c 31 36 37 35 2e 64 6c  s for tcl1675.dl
df60: 6c 20 69 6e 73 74 65 61 64 0a 6f 66 20 74 63 6c  l instead.of tcl
df70: 31 36 2e 64 6c 6c 2e 20 28 53 53 29 0a 0a 39 2f  16.dll. (SS)..9/
df80: 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  28/95 (bug fix) 
df90: 54 63 6c 20 77 61 73 20 6e 6f 74 20 63 6f 72 72  Tcl was not corr
dfa0: 65 63 74 6c 79 20 64 65 74 65 63 74 69 6e 67 20  ectly detecting 
dfb0: 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 0a 62  the difference.b
dfc0: 65 74 77 65 65 6e 20 57 69 6e 33 32 73 20 61 6e  etween Win32s an
dfd0: 64 20 57 69 6e 64 6f 77 73 20 27 39 35 2e 20 28  d Windows '95. (
dfe0: 53 53 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75  SS)..9/28/95 (bu
dff0: 67 20 66 69 78 29 20 22 65 78 65 63 22 20 77 61  g fix) "exec" wa
e000: 73 20 6e 6f 74 20 70 61 73 73 69 6e 67 20 65 6e  s not passing en
e010: 76 69 72 6f 6e 6d 65 6e 74 20 63 68 61 6e 67 65  vironment change
e020: 73 20 74 6f 20 63 68 69 6c 64 0a 70 72 6f 63 65  s to child.proce
e030: 73 73 65 73 20 75 6e 64 65 72 20 57 69 6e 64 6f  sses under Windo
e040: 77 73 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39  ws. (SS)..9/28/9
e050: 35 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e  5 (bug fix) Chan
e060: 67 65 64 20 54 63 6c 20 74 6f 20 65 6e 73 75 72  ged Tcl to ensur
e070: 65 20 74 68 61 74 20 6f 70 65 6e 20 66 69 6c 65  e that open file
e080: 73 20 61 72 65 20 6e 6f 74 20 70 61 73 73 65 64  s are not passed
e090: 0a 74 6f 20 63 68 69 6c 64 20 70 72 6f 63 65 73  .to child proces
e0a0: 73 65 73 20 75 6e 64 65 72 20 57 69 6e 64 6f 77  ses under Window
e0b0: 73 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35  s. (SS)..9/28/95
e0c0: 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
e0d0: 20 57 69 6e 64 6f 77 73 20 27 39 35 20 61 6e 64   Windows '95 and
e0e0: 20 4e 54 20 76 65 72 73 69 6f 6e 73 20 6f 66 20   NT versions of 
e0f0: 65 78 65 63 20 73 6f 20 69 74 20 63 61 6e 0a 68  exec so it can.h
e100: 61 6e 64 6c 65 20 62 6f 74 68 20 63 6f 6e 73 6f  andle both conso
e110: 6c 65 20 61 6e 64 20 77 69 6e 64 6f 77 73 20 61  le and windows a
e120: 70 70 73 2e 20 20 20 28 53 53 29 0a 0a 39 2f 32  pps.   (SS)..9/2
e130: 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 46  8/95 (bug fix) F
e140: 69 78 65 64 20 57 69 6e 64 6f 77 73 20 76 65 72  ixed Windows ver
e150: 73 69 6f 6e 20 6f 66 20 65 78 65 63 20 73 6f 20  sion of exec so 
e160: 69 74 20 6e 6f 20 6c 6f 6e 67 65 72 20 6c 65 61  it no longer lea
e170: 76 65 73 0a 74 65 6d 70 20 66 69 6c 65 73 20 6c  ves.temp files l
e180: 79 69 6e 67 20 61 72 6f 75 6e 64 2e 20 20 41 6c  ying around.  Al
e190: 73 6f 20 63 68 61 6e 67 65 64 20 69 74 20 73 6f  so changed it so
e1a0: 20 74 68 65 20 74 65 6d 70 20 66 69 6c 65 73 20   the temp files 
e1b0: 61 72 65 0a 63 72 65 61 74 65 64 20 69 6e 20 74  are.created in t
e1c0: 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 73  he appropriate s
e1d0: 79 73 74 65 6d 20 64 65 70 65 6e 64 65 6e 74 20  ystem dependent 
e1e0: 74 65 6d 70 20 64 69 72 65 63 74 6f 72 79 2e 20  temp directory. 
e1f0: 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62  (SS)..9/28/95 (b
e200: 75 67 20 66 69 78 29 20 45 6c 69 6d 69 6e 61 74  ug fix) Eliminat
e210: 65 64 20 73 6f 75 72 63 65 20 64 65 70 65 6e 64  ed source depend
e220: 65 6e 63 79 20 6f 6e 20 74 68 65 20 57 69 6e 33  ency on the Win3
e230: 32 73 20 55 6e 69 76 65 72 73 61 6c 0a 54 68 75  2s Universal.Thu
e240: 6e 6b 20 68 65 61 64 65 72 20 66 69 6c 65 2c 20  nk header file, 
e250: 73 69 6e 63 65 20 69 74 20 69 73 20 6e 6f 74 20  since it is not 
e260: 62 75 6e 64 6c 65 64 20 77 69 74 68 20 56 43 2b  bundled with VC+
e270: 2b 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35  +. (SS)..9/28/95
e280: 20 28 62 75 67 20 66 69 78 29 20 55 6e 64 65 72   (bug fix) Under
e290: 20 57 69 6e 64 6f 77 73 2c 20 54 63 6c 20 6e 6f   Windows, Tcl no
e2a0: 77 20 63 6f 6e 73 74 72 75 63 74 73 20 74 68 65  w constructs the
e2b0: 20 48 4f 4d 45 0a 65 6e 76 69 72 6f 6e 6d 65 6e   HOME.environmen
e2c0: 74 20 76 61 72 69 61 62 6c 65 20 66 72 6f 6d 20  t variable from 
e2d0: 48 4f 4d 45 50 41 54 48 20 61 6e 64 20 48 4f 4d  HOMEPATH and HOM
e2e0: 45 44 52 49 56 45 20 77 68 65 6e 20 48 4f 4d 45  EDRIVE when HOME
e2f0: 20 69 73 20 6e 6f 74 0a 61 6c 72 65 61 64 79 20   is not.already 
e300: 73 65 74 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f  set. (SS)..9/28/
e310: 39 35 20 28 62 75 67 20 66 69 78 29 20 41 64 64  95 (bug fix) Add
e320: 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 22  ed support for "
e330: 69 6e 66 6f 20 6e 61 6d 65 6f 66 65 78 65 63 75  info nameofexecu
e340: 74 61 62 6c 65 22 20 61 6e 64 20 22 69 6e 66 6f  table" and "info
e350: 0a 73 68 61 72 65 64 6c 69 62 65 78 74 65 6e 73  .sharedlibextens
e360: 69 6f 6e 22 20 74 6f 20 74 68 65 20 57 69 6e 64  ion" to the Wind
e370: 6f 77 73 20 76 65 72 73 69 6f 6e 2e 20 28 53 53  ows version. (SS
e380: 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67 20  )..9/28/95 (bug 
e390: 66 69 78 29 20 43 68 61 6e 67 65 64 20 74 63 6c  fix) Changed tcl
e3a0: 73 68 20 74 6f 20 63 6f 72 72 65 63 74 6c 79 20  sh to correctly 
e3b0: 70 61 72 73 65 20 63 6f 6d 6d 61 6e 64 20 6c 69  parse command li
e3c0: 6e 65 0a 61 72 67 75 6d 65 6e 74 73 20 73 6f 20  ne.arguments so 
e3d0: 74 68 61 74 20 62 61 63 6b 73 6c 61 73 68 65 73  that backslashes
e3e0: 20 61 72 65 20 70 72 65 73 65 72 76 65 64 20 75   are preserved u
e3f0: 6e 64 65 72 20 57 69 6e 64 6f 77 73 2e 20 28 53  nder Windows. (S
e400: 53 29 0a 0a 39 2f 32 39 2f 39 35 20 28 62 75 67  S)..9/29/95 (bug
e410: 20 66 69 78 29 20 54 63 6c 20 37 2e 35 61 31 20   fix) Tcl 7.5a1 
e420: 74 72 65 61 74 65 64 20 65 69 74 68 65 72 20 72  treated either r
e430: 65 74 75 72 6e 20 6f 72 20 6e 65 77 6c 69 6e 65  eturn or newline
e440: 20 61 73 20 65 6e 64 0a 6f 66 20 6c 69 6e 65 20   as end.of line 
e450: 69 6e 20 22 67 65 74 73 22 2c 20 77 68 69 63 68  in "gets", which
e460: 20 63 61 75 73 65 64 20 6c 69 6e 65 73 20 65 6e   caused lines en
e470: 64 69 6e 67 20 69 6e 20 43 52 4c 46 20 74 6f 20  ding in CRLF to 
e480: 62 65 20 74 72 65 61 74 65 64 20 61 73 0a 74 77  be treated as.tw
e490: 6f 20 73 65 70 61 72 61 74 65 20 6c 69 6e 65 73  o separate lines
e4a0: 2e 20 20 43 68 61 6e 67 65 64 20 74 6f 20 61 6c  .  Changed to al
e4b0: 6c 6f 77 20 6f 6e 6c 79 20 63 68 61 72 61 63 74  low only charact
e4c0: 65 72 20 61 73 20 65 6e 64 2d 6f 66 2d 6c 69 6e  er as end-of-lin
e4d0: 65 3a 0a 63 61 72 72 69 61 67 65 20 72 65 74 75  e:.carriage retu
e4e0: 72 6e 20 6f 6e 20 4d 61 63 73 2c 20 6e 65 77 6c  rn on Macs, newl
e4f0: 69 6e 65 20 65 6c 73 65 77 68 65 72 65 2e 20 28  ine elsewhere. (
e500: 4a 4f 29 0a 0a 39 2f 32 39 2f 39 35 20 28 6e 65  JO)..9/29/95 (ne
e510: 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e 67  w feature) Chang
e520: 65 64 20 74 6f 20 69 6e 73 74 61 6c 6c 20 22 63  ed to install "c
e530: 6f 6e 66 69 67 49 6e 66 6f 22 20 66 69 6c 65 20  onfigInfo" file 
e540: 69 6e 20 73 61 6d 65 0a 64 69 72 65 63 74 6f 72  in same.director
e550: 79 20 61 73 20 6c 69 62 72 61 72 79 20 73 63 72  y as library scr
e560: 69 70 74 73 2e 20 20 49 74 20 64 69 64 6e 27 74  ipts.  It didn't
e570: 20 75 73 65 64 20 74 6f 20 67 65 74 20 69 6e 73   used to get ins
e580: 74 61 6c 6c 65 64 2e 20 28 4a 4f 29 0a 0a 39 2f  talled. (JO)..9/
e590: 32 39 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  29/95 (bug fix) 
e5a0: 54 63 6c 20 77 61 73 20 6e 6f 74 20 63 6f 6e 76  Tcl was not conv
e5b0: 65 72 74 69 6e 67 20 57 69 6e 33 32 20 65 72 72  erting Win32 err
e5c0: 6f 72 73 20 69 6e 74 6f 20 50 4f 53 49 58 0a 65  ors into POSIX.e
e5d0: 72 72 6f 72 73 20 75 6e 64 65 72 20 73 6f 6d 65  rrors under some
e5e0: 20 63 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 20   circumstances. 
e5f0: 28 53 53 29 0a 0a 31 30 2f 32 2f 39 35 20 28 62  (SS)..10/2/95 (b
e600: 75 67 20 66 69 78 29 20 53 61 66 65 20 69 6e 74  ug fix) Safe int
e610: 65 72 70 72 65 74 65 72 73 20 6e 6f 20 6c 6f 6e  erpreters no lon
e620: 67 65 72 20 67 65 74 20 69 6e 69 74 69 61 6c 69  ger get initiali
e630: 7a 65 64 20 77 69 74 68 0a 61 20 63 61 6c 6c 20  zed with.a call 
e640: 74 6f 20 54 63 6c 5f 49 6e 69 74 28 29 2e 20 28  to Tcl_Init(). (
e650: 4a 4c 29 0a 0a 31 30 2f 31 2f 39 35 20 28 6e 65  JL)..10/1/95 (ne
e660: 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
e670: 20 22 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 22 20   "tcl_platform" 
e680: 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20  global variable 
e690: 74 6f 20 70 72 6f 76 69 64 65 0a 65 6e 76 69 72  to provide.envir
e6a0: 6f 6e 6d 65 6e 74 20 69 6e 66 6f 72 6d 61 74 69  onment informati
e6b0: 6f 6e 20 73 75 63 68 20 61 73 20 74 68 65 20 69  on such as the i
e6c0: 6e 73 74 72 75 63 74 69 6f 6e 20 73 65 74 20 61  nstruction set a
e6d0: 6e 64 20 6f 70 65 72 61 74 69 6e 67 0a 73 79 73  nd operating.sys
e6e0: 74 65 6d 2e 20 28 4a 4f 29 0a 0a 31 30 2f 31 2f  tem. (JO)..10/1/
e6f0: 39 35 20 28 62 75 67 20 66 69 78 29 20 22 65 78  95 (bug fix) "ex
e700: 65 63 22 20 63 6f 6d 6d 61 6e 64 20 77 61 73 6e  ec" command wasn
e710: 27 74 20 61 6c 77 61 79 73 20 67 65 6e 65 72 61  't always genera
e720: 74 69 6e 67 20 74 68 65 0a 22 63 68 69 6c 64 20  ting the."child 
e730: 70 72 6f 63 65 73 73 20 65 78 69 74 65 64 20 61  process exited a
e740: 62 6e 6f 72 6d 61 6c 6c 79 22 20 6d 65 73 73 61  bnormally" messa
e750: 67 65 20 77 68 65 6e 20 69 74 20 73 68 6f 75 6c  ge when it shoul
e760: 64 20 68 61 76 65 2e 20 20 28 4a 4f 29 0a 0a 31  d have.  (JO)..1
e770: 30 2f 32 2f 39 35 20 28 62 75 67 20 66 69 78 29  0/2/95 (bug fix)
e780: 20 43 68 61 6e 67 65 64 20 22 6d 6b 4c 69 6e 6b   Changed "mkLink
e790: 73 2e 74 63 6c 22 20 73 6f 20 74 68 61 74 20 74  s.tcl" so that t
e7a0: 68 65 20 73 63 72 69 70 74 73 20 69 74 20 67 65  he scripts it ge
e7b0: 6e 65 72 61 74 65 73 0a 77 6f 6e 27 74 20 63 72  nerates.won't cr
e7c0: 65 61 74 65 20 6c 69 6e 6b 73 20 74 68 61 74 20  eate links that 
e7d0: 6f 76 65 72 77 72 69 74 65 20 6f 72 69 67 69 6e  overwrite origin
e7e0: 61 6c 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65  al manual entrie
e7f0: 73 20 28 74 68 65 72 65 20 77 61 73 0a 61 20 70  s (there was.a p
e800: 72 6f 62 6c 65 6d 20 77 68 65 72 65 20 70 61 63  roblem where pac
e810: 6b 2d 6f 6c 64 2e 6e 20 77 61 73 20 6f 76 65 72  k-old.n was over
e820: 77 72 69 74 69 6e 67 20 70 61 63 6b 2e 6e 29 2e  writing pack.n).
e830: 20 20 28 4a 4f 29 0a 0a 31 30 2f 32 2f 39 35 20    (JO)..10/2/95 
e840: 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
e850: 20 43 68 61 6e 67 65 64 20 74 6f 20 75 73 65 20   Changed to use 
e860: 2d 6c 64 6c 20 66 6f 72 20 64 79 6e 61 6d 69 63  -ldl for dynamic
e870: 20 6c 6f 61 64 69 6e 67 20 75 6e 64 65 72 0a 4c   loading under.L
e880: 69 6e 75 78 20 69 66 20 69 74 20 69 73 20 61 76  inux if it is av
e890: 61 69 6c 61 62 6c 65 2c 20 62 75 74 20 66 61 6c  ailable, but fal
e8a0: 6c 20 62 61 63 6b 20 74 6f 20 2d 6c 64 6c 64 20  l back to -ldld 
e8b0: 69 66 20 69 74 20 69 73 6e 27 74 2e 20 20 28 4a  if it isn't.  (J
e8c0: 4f 29 0a 0a 31 30 2f 32 2f 39 35 20 28 62 75 67  O)..10/2/95 (bug
e8d0: 20 66 69 78 29 20 46 69 6c 65 20 73 68 61 72 69   fix) File shari
e8e0: 6e 67 20 77 61 73 20 63 61 75 73 69 6e 67 20 72  ng was causing r
e8f0: 65 66 63 6f 75 6e 74 73 20 74 6f 20 72 65 61 63  efcounts to reac
e900: 68 20 30 0a 70 72 65 6d 61 74 75 72 65 6c 79 20  h 0.prematurely 
e910: 66 6f 72 20 73 74 64 69 6e 2c 20 73 74 64 6f 75  for stdin, stdou
e920: 74 20 61 6e 64 20 73 74 64 65 72 72 2c 20 75 6e  t and stderr, un
e930: 64 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73  der some circums
e940: 74 61 6e 63 65 73 2e 20 28 4a 4c 29 0a 0a 31 30  tances. (JL)..10
e950: 2f 32 2f 39 35 20 28 70 6c 61 74 66 6f 72 6d 20  /2/95 (platform 
e960: 73 75 70 70 6f 72 74 29 20 41 64 64 65 64 20 73  support) Added s
e970: 75 70 70 6f 72 74 20 66 6f 72 20 56 69 73 75 61  upport for Visua
e980: 6c 20 43 2b 2b 20 63 6f 6d 70 69 6c 65 72 20 6f  l C++ compiler o
e990: 6e 0a 57 69 6e 64 6f 77 73 2c 20 57 69 6e 64 6f  n.Windows, Windo
e9a0: 77 73 20 27 39 35 20 61 6e 64 20 57 69 6e 64 6f  ws '95 and Windo
e9b0: 77 73 20 4e 54 2c 20 63 6f 64 65 20 64 6f 6e 61  ws NT, code dona
e9c0: 74 65 64 20 62 79 20 47 6f 72 64 6f 6e 20 43 68  ted by Gordon Ch
e9d0: 61 66 66 65 65 2e 20 28 4a 4c 29 0a 0a 31 30 2f  affee. (JL)..10/
e9e0: 33 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 54  3/95 (bug fix) T
e9f0: 63 6c 20 6e 6f 77 20 66 72 65 65 73 20 61 6e 79  cl now frees any
ea00: 20 6c 69 62 72 61 72 69 65 73 20 74 68 61 74 20   libraries that 
ea10: 69 74 20 6c 6f 61 64 73 20 62 65 66 6f 72 65 20  it loads before 
ea20: 69 74 0a 65 78 69 74 73 2e 20 28 53 53 29 0a 0a  it.exits. (SS)..
ea30: 31 30 2f 30 33 2f 39 35 20 28 62 75 67 20 66 69  10/03/95 (bug fi
ea40: 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  x) Fixed bug in 
ea50: 4d 61 63 69 6e 74 6f 73 68 20 6c 73 20 63 6f 6d  Macintosh ls com
ea60: 6d 61 6e 64 20 77 68 65 72 65 20 74 68 65 20 2d  mand where the -
ea70: 6c 0a 61 6e 64 20 2d 43 20 6f 70 74 69 6f 6e 73  l.and -C options
ea80: 20 77 6f 75 6c 64 20 66 61 69 6c 20 69 6e 20 61   would fail in a
ea90: 6e 79 74 68 69 6e 67 20 62 75 74 20 74 68 65 20  nything but the 
eaa0: 48 4f 4d 45 20 64 69 72 65 63 74 6f 72 79 2e 20  HOME directory. 
eab0: 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  (RJ)..----------
eac0: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
ead0: 20 37 2e 35 61 32 2c 20 31 30 2f 36 2f 39 35 20   7.5a2, 10/6/95 
eae0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
eaf0: 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30 2f 31 30 2f 39  -------..10/10/9
eb00: 35 20 28 62 75 67 20 66 69 78 29 20 22 66 69 6c  5 (bug fix) "fil
eb10: 65 20 64 69 72 6e 61 6d 20 2f 2e 22 20 77 61 73  e dirnam /." was
eb20: 20 72 65 74 75 72 6e 69 6e 67 20 22 3a 22 20 6f   returning ":" o
eb30: 6e 20 55 4e 49 58 20 69 6e 73 74 65 61 64 0a 6f  n UNIX instead.o
eb40: 66 20 22 2f 22 2e 20 28 4a 4f 29 0a 0a 31 30 2f  f "/". (JO)..10/
eb50: 31 33 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  13/95 (bug fix) 
eb60: 45 6c 69 6d 69 6e 61 74 65 64 20 64 65 70 65 6e  Eliminated depen
eb70: 64 65 6e 63 79 20 6f 6e 20 4d 4b 53 20 74 6f 6f  dency on MKS too
eb80: 6c 6b 69 74 20 66 6f 72 20 67 65 6e 65 72 61 74  lkit for generat
eb90: 69 6e 67 0a 74 68 65 20 74 63 6c 2e 64 65 66 20  ing.the tcl.def 
eba0: 66 69 6c 65 20 66 72 6f 6d 20 42 6f 72 6c 61 6e  file from Borlan
ebb0: 64 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 2e 20  d object files. 
ebc0: 28 53 53 29 0a 0a 31 30 2f 31 37 2f 39 35 20 28  (SS)..10/17/95 (
ebd0: 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 4d 6f  new features) Mo
ebe0: 76 65 64 20 74 68 65 20 65 76 65 6e 74 20 6c 6f  ved the event lo
ebf0: 6f 70 20 66 72 6f 6d 20 54 63 6c 20 74 6f 20 54  op from Tcl to T
ec00: 6b 2c 20 6d 61 64 65 20 6d 61 6a 6f 72 0a 72 65  k, made major.re
ec10: 76 69 73 69 6f 6e 73 20 61 6c 6f 6e 67 20 74 68  visions along th
ec20: 65 20 77 61 79 3a 0a 20 20 20 20 2d 20 4e 65 77  e way:.    - New
ec30: 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 73 3a 20 20   Tcl commands:  
ec40: 61 66 74 65 72 2c 20 75 70 64 61 74 65 2c 20 76  after, update, v
ec50: 77 61 69 74 20 28 72 65 70 6c 61 63 65 73 20 22  wait (replaces "
ec60: 74 6b 77 61 69 74 20 76 61 72 69 61 62 6c 65 22  tkwait variable"
ec70: 29 2e 0a 20 20 20 20 2d 20 22 74 6b 65 72 72 6f  )..    - "tkerro
ec80: 72 22 20 69 73 20 6e 6f 77 20 72 65 70 6c 61 63  r" is now replac
ec90: 65 64 20 77 69 74 68 20 22 62 67 65 72 72 6f 72  ed with "bgerror
eca0: 22 2e 0a 20 20 20 20 2d 20 54 68 65 20 66 6f 6c  "..    - The fol
ecb0: 6c 6f 77 69 6e 67 20 70 72 6f 63 65 64 75 72 65  lowing procedure
ecc0: 73 20 61 72 65 20 73 69 6d 69 6c 61 72 20 74 6f  s are similar to
ecd0: 20 74 68 65 69 72 20 6f 6c 64 20 54 6b 20 63 6f   their old Tk co
ece0: 75 6e 74 65 72 70 61 72 74 73 3a 0a 20 20 20 20  unterparts:.    
ecf0: 20 20 54 63 6c 5f 44 6f 4f 6e 65 45 76 65 6e 74    Tcl_DoOneEvent
ed00: 2c 20 54 63 6c 5f 53 6c 65 65 70 2c 20 54 63 6c  , Tcl_Sleep, Tcl
ed10: 5f 44 6f 57 68 65 6e 49 64 6c 65 2c 20 54 63 6c  _DoWhenIdle, Tcl
ed20: 5f 43 61 6e 63 65 6c 49 64 6c 65 43 61 6c 6c 2c  _CancelIdleCall,
ed30: 0a 20 20 20 20 20 20 54 63 6c 5f 43 72 65 61 74  .      Tcl_Creat
ed40: 65 46 69 6c 65 48 61 6e 64 6c 65 72 2c 20 54 63  eFileHandler, Tc
ed50: 6c 5f 44 65 6c 65 74 65 46 69 6c 65 48 61 6e 64  l_DeleteFileHand
ed60: 6c 65 72 2c 20 54 63 6c 5f 43 72 65 61 74 65 54  ler, Tcl_CreateT
ed70: 69 6d 65 72 48 61 6e 64 6c 65 72 2c 0a 20 20 20  imerHandler,.   
ed80: 20 20 20 54 63 6c 5f 44 65 6c 65 74 65 54 69 6d     Tcl_DeleteTim
ed90: 65 72 48 61 6e 64 6c 65 72 2c 20 54 63 6c 5f 42  erHandler, Tcl_B
eda0: 61 63 6b 67 72 6f 75 6e 64 45 72 72 6f 72 2e 0a  ackgroundError..
edb0: 20 20 20 20 2d 20 52 65 76 69 73 65 64 20 6e 6f      - Revised no
edc0: 74 69 66 69 65 72 2c 20 61 64 64 20 6e 65 77 20  tifier, add new 
edd0: 63 6f 6e 63 65 70 74 20 6f 66 20 22 65 76 65 6e  concept of "even
ede0: 74 20 73 6f 75 72 63 65 22 20 77 69 74 68 20 74  t source" with t
edf0: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 20 20 20  he following.   
ee00: 20 20 20 70 72 6f 63 65 64 75 72 65 73 3a 20 20     procedures:  
ee10: 54 63 6c 5f 43 72 65 61 74 65 45 76 65 6e 74 53  Tcl_CreateEventS
ee20: 6f 75 72 63 65 2c 20 54 63 6c 5f 44 65 6c 65 74  ource, Tcl_Delet
ee30: 65 45 76 65 6e 74 53 6f 75 72 63 65 2c 0a 20 20  eEventSource,.  
ee40: 20 20 20 20 54 63 6c 5f 57 61 74 63 68 46 69 6c      Tcl_WatchFil
ee50: 65 2c 20 54 63 6c 5f 53 65 74 4d 61 78 42 6c 6f  e, Tcl_SetMaxBlo
ee60: 63 6b 54 69 6d 65 2c 20 54 63 6c 5f 46 69 6c 65  ckTime, Tcl_File
ee70: 52 65 61 64 79 2c 20 54 63 6c 5f 51 75 65 75 65  Ready, Tcl_Queue
ee80: 45 76 65 6e 74 2c 0a 20 20 20 20 20 20 54 63 6c  Event,.      Tcl
ee90: 5f 57 61 69 74 46 6f 72 45 76 65 6e 74 2e 20 28  _WaitForEvent. (
eea0: 4a 4f 29 0a 0a 31 30 2f 33 31 2f 39 35 20 28 6e  JO)..10/31/95 (n
eeb0: 65 77 20 66 65 61 74 75 72 65 73 29 20 49 6d 70  ew features) Imp
eec0: 6c 65 6d 65 6e 74 65 64 20 63 72 6f 73 73 20 70  lemented cross p
eed0: 6c 61 74 66 6f 72 6d 20 66 69 6c 65 20 6e 61 6d  latform file nam
eee0: 65 20 73 75 70 70 6f 72 74 20 74 6f 20 6d 61 6b  e support to mak
eef0: 65 0a 69 74 20 65 61 73 69 65 72 20 74 6f 20 77  e.it easier to w
ef00: 72 69 74 65 20 63 72 6f 73 73 20 70 6c 61 74 66  rite cross platf
ef10: 6f 72 6d 20 73 63 72 69 70 74 73 2e 20 20 54 63  orm scripts.  Tc
ef20: 6c 20 6e 6f 77 20 75 6e 64 65 72 73 74 61 6e 64  l now understand
ef30: 73 20 34 20 66 69 6c 65 20 6e 61 6d 69 6e 67 0a  s 4 file naming.
ef40: 63 6f 6e 76 65 6e 74 69 6f 6e 73 3a 20 57 69 6e  conventions: Win
ef50: 64 6f 77 73 20 28 62 6f 74 68 20 44 4f 53 20 61  dows (both DOS a
ef60: 6e 64 20 55 4e 43 29 2c 20 4d 61 63 2c 20 55 6e  nd UNC), Mac, Un
ef70: 69 78 2c 20 61 6e 64 20 4e 65 74 77 6f 72 6b 2e  ix, and Network.
ef80: 20 20 54 68 65 20 6e 65 74 77 6f 72 6b 0a 63 6f    The network.co
ef90: 6e 76 65 6e 74 69 6f 6e 20 69 73 20 61 20 6e 65  nvention is a ne
efa0: 77 20 6e 61 6d 69 6e 67 20 6d 65 63 68 61 6e 69  w naming mechani
efb0: 73 6d 20 74 68 61 74 20 63 61 6e 20 62 65 20 75  sm that can be u
efc0: 73 65 64 20 74 6f 20 70 61 74 68 73 20 69 6e 20  sed to paths in 
efd0: 61 20 70 6c 61 74 66 6f 72 6d 0a 69 6e 64 65 70  a platform.indep
efe0: 65 6e 64 65 6e 74 20 66 61 73 68 69 6f 6e 2e 20  endent fashion. 
eff0: 20 53 65 65 20 74 68 65 20 22 66 69 6c 65 22 20   See the "file" 
f000: 63 6f 6d 6d 61 6e 64 20 6d 61 6e 75 61 6c 20 70  command manual p
f010: 61 67 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74  age for more det
f020: 61 69 6c 73 2e 0a 54 68 65 20 70 72 69 6d 61 72  ails..The primar
f030: 79 20 69 6e 74 65 72 66 61 63 65 73 20 63 68 61  y interfaces cha
f040: 6e 67 65 73 20 61 72 65 3a 0a 20 20 20 20 2d 20  nges are:.    - 
f050: 41 6c 6c 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 73  All Tcl commands
f060: 20 74 68 61 74 20 65 78 70 65 63 74 20 61 20 66   that expect a f
f070: 69 6c 65 20 6e 61 6d 65 20 6e 6f 77 20 61 63 63  ile name now acc
f080: 65 70 74 20 62 6f 74 68 20 6e 65 74 77 6f 72 6b  ept both network
f090: 20 61 6e 64 0a 20 20 20 20 20 20 6e 61 74 69 76   and.      nativ
f0a0: 65 20 66 6f 72 6d 2e 0a 20 20 20 20 2d 20 54 77  e form..    - Tw
f0b0: 6f 20 6e 65 77 20 22 66 69 6c 65 22 20 73 75 62  o new "file" sub
f0c0: 63 6f 6d 6d 61 6e 64 73 2c 20 22 6e 61 74 69 76  commands, "nativ
f0d0: 65 6e 61 6d 65 22 20 61 6e 64 20 22 6e 65 74 77  ename" and "netw
f0e0: 6f 72 6b 6e 61 6d 65 22 2c 20 70 72 6f 76 69 64  orkname", provid
f0f0: 65 20 61 0a 20 20 20 20 20 20 77 61 79 20 74 6f  e a.      way to
f100: 20 63 6f 6e 76 65 72 74 20 62 65 74 77 65 65 6e   convert between
f110: 20 6e 65 74 77 6f 72 6b 20 61 6e 64 20 6e 61 74   network and nat
f120: 69 76 65 20 66 6f 72 6d 2e 0a 20 20 20 20 2d 20  ive form..    - 
f130: 52 65 6e 61 6d 65 64 20 54 63 6c 5f 54 69 6c 64  Renamed Tcl_Tild
f140: 65 53 75 62 73 74 20 74 6f 20 54 63 6c 5f 54 72  eSubst to Tcl_Tr
f150: 61 6e 73 6c 61 74 65 46 69 6c 65 4e 61 6d 65 2c  anslateFileName,
f160: 20 61 6e 64 20 63 68 61 6e 67 65 64 20 69 74 20   and changed it 
f170: 73 6f 20 74 68 61 74 0a 20 20 20 20 20 20 69 74  so that.      it
f180: 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 20   always returns 
f190: 61 20 66 69 6c 65 6e 61 6d 65 20 69 6e 20 6e 61  a filename in na
f1a0: 74 69 76 65 20 66 6f 72 6d 2e 20 20 54 63 6c 5f  tive form.  Tcl_
f1b0: 54 69 6c 64 65 53 75 62 73 74 20 69 73 20 64 65  TildeSubst is de
f1c0: 66 69 6e 65 64 0a 20 20 20 20 20 20 61 73 20 61  fined.      as a
f1d0: 20 6d 61 63 72 6f 20 66 6f 72 20 62 61 63 6b 77   macro for backw
f1e0: 61 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74  ard compatibilit
f1f0: 79 2c 20 62 75 74 20 69 74 20 69 73 20 64 65 70  y, but it is dep
f200: 72 65 63 61 74 65 64 2e 20 28 53 53 29 0a 0a 31  recated. (SS)..1
f210: 31 2f 35 2f 39 35 20 28 6e 65 77 20 66 65 61 74  1/5/95 (new feat
f220: 75 72 65 29 20 4d 61 64 65 20 22 74 6b 65 72 72  ure) Made "tkerr
f230: 6f 72 22 20 61 6e 64 20 22 62 67 65 72 72 6f 72  or" and "bgerror
f240: 22 20 73 79 6e 6f 6e 79 6d 73 2c 20 73 6f 20 74  " synonyms, so t
f250: 68 61 74 0a 65 69 74 68 65 72 20 6e 61 6d 65 20  hat.either name 
f260: 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6d  can be used to m
f270: 61 6e 69 70 75 6c 61 74 65 20 74 68 65 20 63 6f  anipulate the co
f280: 6d 6d 61 6e 64 20 28 70 72 6f 76 69 64 65 73 20  mmand (provides 
f290: 74 65 6d 70 6f 72 61 72 79 0a 62 61 63 6b 77 61  temporary.backwa
f2a0: 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79  rd compatibility
f2b0: 20 66 6f 72 20 65 78 69 73 74 69 6e 67 20 73 63   for existing sc
f2c0: 72 69 70 74 73 20 74 68 61 74 20 75 73 65 20 74  ripts that use t
f2d0: 6b 65 72 72 6f 72 29 2e 20 28 4a 4f 29 0a 0a 31  kerror). (JO)..1
f2e0: 31 2f 35 2f 39 35 20 28 6e 65 77 20 66 65 61 74  1/5/95 (new feat
f2f0: 75 72 65 29 20 41 64 64 65 64 20 65 78 69 74 20  ure) Added exit 
f300: 68 61 6e 64 6c 65 72 73 20 61 6e 64 20 6e 65 77  handlers and new
f310: 20 43 20 70 72 6f 63 65 64 75 72 65 73 0a 54 63   C procedures.Tc
f320: 6c 5f 43 72 65 61 74 65 45 78 69 74 48 61 6e 64  l_CreateExitHand
f330: 6c 65 72 2c 20 54 63 6c 5f 44 65 6c 65 74 65 45  ler, Tcl_DeleteE
f340: 78 69 74 48 61 6e 64 6c 65 72 2c 20 61 6e 64 20  xitHandler, and 
f350: 54 63 6c 5f 45 78 69 74 2e 20 28 4a 4f 29 0a 0a  Tcl_Exit. (JO)..
f360: 31 31 2f 36 2f 39 35 20 28 6e 65 77 20 66 65 61  11/6/95 (new fea
f370: 74 75 72 65 29 20 41 64 64 65 64 20 70 69 64 20  ture) Added pid 
f380: 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 4d 61 63 69  command for Maci
f390: 6e 74 6f 73 68 20 76 65 72 73 69 6f 6e 20 6f 66  ntosh version of
f3a0: 0a 54 63 6c 20 28 69 74 20 64 69 64 6e 27 74 20  .Tcl (it didn't 
f3b0: 70 72 65 76 69 6f 75 73 6c 79 20 65 78 69 73 74  previously exist
f3c0: 20 6f 6e 20 74 68 65 20 4d 61 63 29 2e 20 28 52   on the Mac). (R
f3d0: 4a 29 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77  J)..11/7/95 (new
f3e0: 20 66 65 61 74 75 72 65 29 20 4e 65 77 20 67 65   feature) New ge
f3f0: 6e 65 72 69 63 20 49 4f 20 66 61 63 69 6c 69 74  neric IO facilit
f400: 79 20 61 6e 64 20 73 75 70 70 6f 72 74 20 66 6f  y and support fo
f410: 72 20 49 4f 20 74 6f 0a 66 69 6c 65 73 2c 20 70  r IO to.files, p
f420: 69 70 65 73 20 61 6e 64 20 73 6f 63 6b 65 74 73  ipes and sockets
f430: 20 62 61 73 65 64 20 6f 6e 20 61 20 63 6f 6d 6d   based on a comm
f440: 6f 6e 20 62 75 66 66 65 72 69 6e 67 20 73 63 68  on buffering sch
f450: 65 6d 65 2e 20 53 75 70 70 6f 72 74 0a 66 6f 72  eme. Support.for
f460: 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 28 6e   asynchronous (n
f470: 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 29 20 49 4f 20  on-blocking) IO 
f480: 61 6e 64 20 66 6f 72 20 65 76 65 6e 74 20 64 72  and for event dr
f490: 69 76 65 72 20 49 4f 2e 20 53 75 70 70 6f 72 74  iver IO. Support
f4a0: 0a 66 6f 72 20 61 75 74 6f 6d 61 74 69 63 20 28  .for automatic (
f4b0: 62 61 63 6b 67 72 6f 75 6e 64 29 20 61 73 79 6e  background) asyn
f4c0: 63 68 72 6f 6e 6f 75 73 20 66 6c 75 73 68 69 6e  chronous flushin
f4d0: 67 20 61 6e 64 20 61 73 79 6e 63 68 72 6f 6e 6f  g and asynchrono
f4e0: 75 73 0a 63 6c 6f 73 69 6e 67 20 6f 66 20 63 68  us.closing of ch
f4f0: 61 6e 6e 65 6c 73 2e 20 28 4a 4c 29 0a 0a 31 31  annels. (JL)..11
f500: 2f 37 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  /7/95 (new featu
f510: 72 65 29 20 20 41 64 64 65 64 20 6e 65 77 20 63  re)  Added new c
f520: 6f 6d 6d 61 6e 64 73 20 22 66 63 6f 6e 66 69 67  ommands "fconfig
f530: 75 72 65 22 20 61 6e 64 20 22 66 62 6c 6f 63 6b  ure" and "fblock
f540: 65 64 22 0a 74 6f 20 73 75 70 70 6f 72 74 20 6e  ed".to support n
f550: 65 77 20 49 2f 4f 20 66 65 61 74 75 72 65 73 20  ew I/O features 
f560: 73 75 63 68 20 61 73 20 6e 6f 6e 62 6c 6f 63 6b  such as nonblock
f570: 69 6e 67 20 49 2f 4f 2e 20 20 41 64 64 65 64 20  ing I/O.  Added 
f580: 22 73 6f 63 6b 65 74 22 0a 63 6f 6d 6d 61 6e 64  "socket".command
f590: 20 66 6f 72 20 63 72 65 61 74 69 6e 67 20 54 43   for creating TC
f5a0: 50 20 63 6c 69 65 6e 74 20 61 6e 64 20 73 65 72  P client and ser
f5b0: 76 65 72 20 73 6f 63 6b 65 74 73 2e 20 28 4a 4c  ver sockets. (JL
f5c0: 29 2e 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77  )...11/7/95 (new
f5d0: 20 66 65 61 74 75 72 65 29 20 43 6f 6d 70 6c 65   feature) Comple
f5e0: 74 65 20 73 65 74 20 6f 66 20 43 20 41 50 49 73  te set of C APIs
f5f0: 20 74 6f 20 74 68 65 20 6e 65 77 20 67 65 6e 65   to the new gene
f600: 72 69 63 20 49 4f 0a 66 61 63 69 6c 69 74 79 3a  ric IO.facility:
f610: 0a 20 20 20 20 2d 20 4f 70 65 6e 69 6e 67 20 63  .    - Opening c
f620: 68 61 6e 6e 65 6c 73 3a 20 54 63 6c 5f 4f 70 65  hannels: Tcl_Ope
f630: 6e 46 69 6c 65 43 68 61 6e 6e 65 6c 2c 20 54 63  nFileChannel, Tc
f640: 6c 5f 4f 70 65 6e 43 6f 6d 6d 61 6e 64 43 68 61  l_OpenCommandCha
f650: 6e 6e 65 6c 2c 0a 20 20 20 20 20 20 54 63 6c 5f  nnel,.      Tcl_
f660: 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74 2c 20 54  OpenTcpClient, T
f670: 63 6c 5f 4f 70 65 6e 54 63 70 53 65 72 76 65 72  cl_OpenTcpServer
f680: 2e 0a 20 20 20 20 2d 20 49 2f 4f 20 70 72 6f 63  ..    - I/O proc
f690: 65 64 75 72 65 73 20 6f 6e 20 63 68 61 6e 6e 65  edures on channe
f6a0: 6c 73 2c 20 77 68 69 63 68 20 72 6f 75 67 68 6c  ls, which roughl
f6b0: 79 20 6d 69 72 72 6f 72 20 74 68 65 20 41 4e 53  y mirror the ANS
f6c0: 49 20 43 20 73 74 64 69 6f 0a 20 20 20 20 20 20  I C stdio.      
f6d0: 6c 69 62 72 61 72 79 3a 20 20 54 63 6c 5f 52 65  library:  Tcl_Re
f6e0: 61 64 2c 20 54 63 6c 5f 47 65 74 73 2c 20 54 63  ad, Tcl_Gets, Tc
f6f0: 6c 5f 57 72 69 74 65 2c 20 54 63 6c 5f 46 6c 75  l_Write, Tcl_Flu
f700: 73 68 2c 20 54 63 6c 5f 53 65 65 6b 2c 0a 20 20  sh, Tcl_Seek,.  
f710: 20 20 20 20 54 63 6c 5f 54 65 6c 6c 2c 20 54 63      Tcl_Tell, Tc
f720: 6c 5f 43 6c 6f 73 65 2c 20 54 63 6c 5f 45 6f 66  l_Close, Tcl_Eof
f730: 2c 20 54 63 6c 5f 49 6e 70 75 74 42 6c 6f 63 6b  , Tcl_InputBlock
f740: 65 64 2c 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e  ed, Tcl_GetChann
f750: 65 6c 4f 70 74 69 6f 6e 2c 0a 20 20 20 20 20 20  elOption,.      
f760: 54 63 6c 5f 53 65 74 43 68 61 6e 6e 65 6c 4f 70  Tcl_SetChannelOp
f770: 74 69 6f 6e 2e 0a 20 20 20 20 2d 20 45 78 74 65  tion..    - Exte
f780: 6e 73 69 6f 6e 20 6d 65 63 68 61 6e 69 73 6d 20  nsion mechanism 
f790: 66 6f 72 20 63 72 65 61 74 69 6e 67 20 6e 65 77  for creating new
f7a0: 20 6b 69 6e 64 73 20 6f 66 20 63 68 61 6e 6e 65   kinds of channe
f7b0: 6c 73 3a 0a 20 20 20 20 20 20 54 63 6c 5f 43 72  ls:.      Tcl_Cr
f7c0: 65 61 74 65 43 68 61 6e 6e 65 6c 2c 20 54 63 6c  eateChannel, Tcl
f7d0: 5f 47 65 74 43 68 61 6e 6e 65 6c 49 6e 73 74 61  _GetChannelInsta
f7e0: 6e 63 65 44 61 74 61 2c 20 54 63 6c 5f 47 65 74  nceData, Tcl_Get
f7f0: 43 68 61 6e 6e 65 6c 54 79 70 65 2c 0a 20 20 20  ChannelType,.   
f800: 20 20 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65     Tcl_GetChanne
f810: 6c 4e 61 6d 65 2c 20 54 63 6c 5f 47 65 74 43 68  lName, Tcl_GetCh
f820: 61 6e 6e 65 6c 46 69 6c 65 2c 20 54 63 6c 5f 52  annelFile, Tcl_R
f830: 65 67 69 73 74 65 72 43 68 61 6e 6e 65 6c 2c 0a  egisterChannel,.
f840: 20 20 20 20 20 20 54 63 6c 5f 55 6e 72 65 67 69        Tcl_Unregi
f850: 73 74 65 72 43 68 61 6e 6e 65 6c 2c 20 54 63 6c  sterChannel, Tcl
f860: 5f 47 65 74 43 68 61 6e 6e 65 6c 2e 0a 20 20 20  _GetChannel..   
f870: 20 2d 20 45 76 65 6e 74 2d 64 72 69 76 65 6e 20   - Event-driven 
f880: 49 2f 4f 20 6f 6e 20 63 68 61 6e 6e 65 6c 73 3a  I/O on channels:
f890: 20 54 63 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e   Tcl_CreateChann
f8a0: 65 6c 48 61 6e 64 6c 65 72 2c 0a 20 20 20 20 20  elHandler,.     
f8b0: 20 54 63 6c 5f 44 65 6c 65 74 65 43 68 61 6e 6e   Tcl_DeleteChann
f8c0: 65 6c 48 61 6e 64 6c 65 72 2e 20 28 4a 4c 29 0a  elHandler. (JL).
f8d0: 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77 20 66 65  .11/7/95 (new fe
f8e0: 61 74 75 72 65 29 20 43 68 61 6e 6e 65 6c 20 64  ature) Channel d
f8f0: 72 69 76 65 72 20 69 6e 74 65 72 66 61 63 65 20  river interface 
f900: 73 70 65 63 69 66 69 63 61 74 69 6f 6e 20 74 6f  specification to
f910: 20 61 6c 6c 6f 77 0a 6e 65 77 20 74 79 70 65 73   allow.new types
f920: 20 6f 66 20 63 68 61 6e 6e 65 6c 73 20 74 6f 20   of channels to 
f930: 62 65 20 61 64 64 65 64 20 65 61 73 69 6c 79 20  be added easily 
f940: 74 6f 20 54 63 6c 2e 20 43 75 72 72 65 6e 74 6c  to Tcl. Currentl
f950: 79 20 62 65 69 6e 67 20 75 73 65 64 0a 69 6e 20  y being used.in 
f960: 74 68 72 65 65 20 64 72 69 76 65 72 73 20 2d 20  three drivers - 
f970: 66 6f 72 20 66 69 6c 65 73 2c 20 70 69 70 65 73  for files, pipes
f980: 20 61 6e 64 20 54 43 50 2d 62 61 73 65 64 20 73   and TCP-based s
f990: 6f 63 6b 65 74 73 2e 20 28 4a 4c 29 2e 0a 0a 31  ockets. (JL)...1
f9a0: 31 2f 37 2f 39 35 20 28 6e 65 77 20 66 65 61 74  1/7/95 (new feat
f9b0: 75 72 65 29 20 69 6e 74 65 72 70 20 64 65 6c 65  ure) interp dele
f9c0: 74 65 20 6e 6f 77 20 74 61 6b 65 73 20 61 6e 79  te now takes any
f9d0: 20 6e 75 6d 62 65 72 20 6f 66 20 70 61 74 68 0a   number of path.
f9e0: 6e 61 6d 65 73 20 6f 66 20 69 6e 74 65 72 70 72  names of interpr
f9f0: 65 74 65 72 73 20 74 6f 20 64 65 6c 65 74 65 2c  eters to delete,
fa00: 20 69 6e 63 6c 75 64 69 6e 67 20 7a 65 72 6f 2e   including zero.
fa10: 20 28 4a 4c 29 2e 0a 0a 31 31 2f 38 2f 39 35 20   (JL)...11/8/95 
fa20: 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 69 6d  (new feature) im
fa30: 70 6c 65 6d 65 6e 74 65 64 20 27 69 6e 66 6f 20  plemented 'info 
fa40: 68 6f 73 74 6e 61 6d 65 27 20 61 6e 64 20 54 63  hostname' and Tc
fa50: 6c 5f 47 65 74 48 6f 73 74 4e 61 6d 65 0a 63 6f  l_GetHostName.co
fa60: 6d 6d 61 6e 64 20 74 6f 20 67 65 74 20 68 6f 73  mmand to get hos
fa70: 74 20 6e 61 6d 65 20 6f 66 20 6d 61 63 68 69 6e  t name of machin
fa80: 65 20 6f 6e 20 77 68 69 63 68 20 74 68 65 20 54  e on which the T
fa90: 63 6c 20 70 72 6f 63 65 73 73 20 69 73 20 72 75  cl process is ru
faa0: 6e 6e 69 6e 67 2e 20 28 4a 4c 29 0a 0a 31 31 2f  nning. (JL)..11/
fab0: 39 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  9/95 (new featur
fac0: 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20 66  e) Implemented f
fad0: 69 6c 65 20 41 50 49 73 20 66 6f 72 20 61 63 63  ile APIs for acc
fae0: 65 73 73 20 74 6f 20 6c 6f 77 20 6c 65 76 65 6c  ess to low level
faf0: 20 66 69 6c 65 73 0a 6f 6e 20 65 61 63 68 20 73   files.on each s
fb00: 79 73 74 65 6d 2e 20 54 68 65 20 41 50 49 73 20  ystem. The APIs 
fb10: 61 72 65 3a 20 54 63 6c 5f 43 6c 6f 73 65 46 69  are: Tcl_CloseFi
fb20: 6c 65 2c 20 54 63 6c 5f 4f 70 65 6e 46 69 6c 65  le, Tcl_OpenFile
fb30: 2c 20 54 63 6c 5f 52 65 61 64 46 69 6c 65 2c 0a  , Tcl_ReadFile,.
fb40: 54 63 6c 5f 57 72 69 74 65 46 69 6c 65 20 61 6e  Tcl_WriteFile an
fb50: 64 20 54 63 6c 5f 53 65 65 6b 46 69 6c 65 2e 20  d Tcl_SeekFile. 
fb60: 41 6c 73 6f 20 69 6d 70 6c 65 6d 65 6e 74 65 64  Also implemented
fb70: 20 54 63 6c 5f 57 61 69 74 50 69 64 20 77 68 69   Tcl_WaitPid whi
fb80: 63 68 20 77 61 69 74 73 0a 69 6e 20 61 20 73 79  ch waits.in a sy
fb90: 73 74 65 6d 20 64 65 70 65 6e 64 65 6e 74 20 6d  stem dependent m
fba0: 61 6e 6e 65 72 20 66 6f 72 20 61 20 63 68 69 6c  anner for a chil
fbb0: 64 20 70 72 6f 63 65 73 73 2e 20 28 4a 4c 29 0a  d process. (JL).
fbc0: 0a 31 31 2f 39 2f 39 35 20 28 6e 65 77 20 66 65  .11/9/95 (new fe
fbd0: 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c  ature) Added Tcl
fbe0: 5f 55 70 64 61 74 65 4c 69 6e 6b 65 64 56 61 72  _UpdateLinkedVar
fbf0: 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20 66 6f   procedure to fo
fc00: 72 63 65 20 61 0a 54 63 6c 20 76 61 72 69 61 62  rce a.Tcl variab
fc10: 6c 65 20 74 6f 20 62 65 20 75 70 64 61 74 65 64  le to be updated
fc20: 20 61 66 74 65 72 20 69 74 73 20 43 20 76 61 72   after its C var
fc30: 69 61 62 6c 65 20 63 68 61 6e 67 65 73 2e 20 28  iable changes. (
fc40: 4a 4f 29 0a 0a 31 31 2f 39 2f 39 35 20 28 62 75  JO)..11/9/95 (bu
fc50: 67 20 66 69 78 29 20 54 68 65 20 67 6c 6f 62 20  g fix) The glob 
fc60: 63 6f 6d 6d 61 6e 64 20 68 61 73 20 62 65 65 6e  command has been
fc70: 20 74 6f 74 61 6c 6c 79 20 72 65 69 6d 70 6c 65   totally reimple
fc80: 6d 65 6e 74 65 64 20 73 6f 0a 74 68 61 74 20 69  mented so.that i
fc90: 74 20 63 61 6e 20 73 75 70 70 6f 72 74 20 64 69  t can support di
fca0: 66 66 65 72 65 6e 74 20 66 69 6c 65 20 6e 61 6d  fferent file nam
fcb0: 65 20 63 6f 6e 76 65 6e 74 69 6f 6e 73 2e 20 20  e conventions.  
fcc0: 49 74 20 6e 6f 77 20 68 61 6e 64 6c 65 73 0a 57  It now handles.W
fcd0: 69 6e 64 6f 77 73 20 66 69 6c 65 20 6e 61 6d 65  indows file name
fce0: 73 20 28 62 6f 74 68 20 55 4e 43 20 61 6e 64 20  s (both UNC and 
fcf0: 64 72 69 76 65 2d 72 65 6c 61 74 69 76 65 29 20  drive-relative) 
fd00: 70 72 6f 70 65 72 6c 79 2e 20 20 49 74 20 61 6c  properly.  It al
fd10: 73 6f 0a 73 75 70 70 6f 72 74 73 20 6e 65 73 74  so.supports nest
fd20: 65 64 20 62 72 61 63 65 73 20 63 6f 72 72 65 63  ed braces correc
fd30: 74 6c 79 20 6e 6f 77 2e 20 28 53 53 29 0a 0a 31  tly now. (SS)..1
fd40: 31 2f 31 33 2f 39 35 20 28 62 75 67 20 66 69 78  1/13/95 (bug fix
fd50: 29 20 46 69 78 65 64 20 4d 61 6b 65 66 69 6c 65  ) Fixed Makefile
fd60: 2e 69 6e 20 73 6f 20 74 68 61 74 20 63 6f 6e 66  .in so that conf
fd70: 69 67 75 72 65 20 63 61 6e 20 62 65 20 72 75 6e  igure can be run
fd80: 0a 66 72 6f 6d 20 61 20 63 6c 65 61 6e 20 64 69  .from a clean di
fd90: 72 65 63 74 6f 72 79 20 73 65 70 61 72 61 74 65  rectory separate
fda0: 20 66 72 6f 6d 20 74 68 65 20 54 63 6c 20 73 6f   from the Tcl so
fdb0: 75 72 63 65 20 74 72 65 65 2c 20 61 6e 64 20 63  urce tree, and c
fdc0: 6f 6d 70 69 6c 61 74 69 6f 6e 73 0a 63 61 6e 20  ompilations.can 
fdd0: 62 65 20 70 65 72 66 6f 72 6d 65 64 20 74 68 65  be performed the
fde0: 72 65 2e 20 28 4a 4f 29 0a 0a 31 31 2f 31 34 2f  re. (JO)..11/14/
fdf0: 39 35 20 28 62 75 67 20 66 69 78 29 20 46 69 78  95 (bug fix) Fix
fe00: 65 64 20 66 69 6c 65 20 73 68 61 72 69 6e 67 20  ed file sharing 
fe10: 62 65 74 77 65 65 6e 20 69 6e 74 65 72 70 72 65  between interpre
fe20: 74 65 72 73 20 61 6e 64 20 66 69 6c 65 0a 74 72  ters and file.tr
fe30: 61 6e 73 66 65 72 72 69 6e 67 20 62 65 74 77 65  ansferring betwe
fe40: 65 6e 20 69 6e 74 65 72 70 72 65 74 65 72 73 20  en interpreters 
fe50: 74 6f 20 63 6f 72 72 65 63 74 6c 79 20 6d 61 6e  to correctly man
fe60: 61 67 65 20 74 68 65 20 72 65 66 63 6f 75 6e 74  age the refcount
fe70: 20 73 6f 20 74 68 61 74 0a 66 69 6c 65 73 20 61   so that.files a
fe80: 72 65 20 63 6c 6f 73 65 64 20 77 68 65 6e 20 74  re closed when t
fe90: 68 65 20 6c 61 73 74 20 72 65 66 65 72 65 6e 63  he last referenc
fea0: 65 20 74 6f 20 74 68 65 6d 20 69 73 20 64 69 73  e to them is dis
feb0: 63 61 72 64 65 64 2e 20 28 4a 4c 29 0a 0a 31 31  carded. (JL)..11
fec0: 2f 31 34 2f 39 35 20 28 62 75 67 20 66 69 78 29  /14/95 (bug fix)
fed0: 20 46 69 78 65 64 20 67 65 74 74 69 6d 65 6f 66   Fixed gettimeof
fee0: 64 61 79 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  day implementati
fef0: 6f 6e 20 66 6f 72 20 74 68 65 0a 4d 61 63 69 6e  on for the.Macin
ff00: 74 6f 73 68 2e 20 20 54 68 69 73 20 66 69 78 65  tosh.  This fixe
ff10: 73 20 73 65 76 65 72 61 6c 20 74 69 6d 69 6e 67  s several timing
ff20: 20 72 65 6c 61 74 65 64 20 62 75 67 73 2e 20 28   related bugs. (
ff30: 52 4a 29 0a 0a 31 31 2f 31 37 2f 39 35 20 28 6e  RJ)..11/17/95 (n
ff40: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
ff50: 64 20 6d 69 73 73 69 6e 67 20 73 75 70 70 6f 72  d missing suppor
ff60: 74 20 66 6f 72 20 69 6e 66 6f 20 6e 61 6d 65 6f  t for info nameo
ff70: 66 65 78 65 63 75 74 61 62 6c 65 0a 6f 6e 20 74  fexecutable.on t
ff80: 68 65 20 4d 61 63 69 6e 74 6f 73 68 2e 20 28 52  he Macintosh. (R
ff90: 4a 29 0a 0a 31 31 2f 31 37 2f 39 35 20 28 62 75  J)..11/17/95 (bu
ffa0: 67 20 66 69 78 29 20 54 68 65 20 54 63 6c 20 76  g fix) The Tcl v
ffb0: 61 72 69 61 62 6c 65 73 20 61 72 67 63 20 61 72  ariables argc ar
ffc0: 67 76 20 61 6e 64 20 61 72 67 76 30 20 6e 6f 77  gv and argv0 now
ffd0: 20 72 65 74 75 72 6e 0a 73 6f 6d 65 74 68 69 6e   return.somethin
ffe0: 67 20 72 65 61 73 6f 6e 61 62 6c 65 20 6f 6e 20  g reasonable on 
fff0: 74 68 65 20 4d 61 63 2e 20 20 28 52 4a 29 0a 0a  the Mac.  (RJ)..
10000 31 31 2f 32 32 2f 39 35 20 28 6e 65 77 20 66 65  11/22/95 (new fe
10010 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74  ature) Implement
10020 65 64 20 22 61 75 74 6f 2d 64 65 74 65 63 74 22  ed "auto-detect"
10030 20 6d 6f 64 65 20 66 6f 72 20 65 6e 64 20 6f 66   mode for end of
10040 20 6c 69 6e 65 0a 74 72 61 6e 73 6c 61 74 69 6f   line.translatio
10050 6e 73 2e 20 4f 6e 20 69 6e 70 75 74 2c 20 73 74  ns. On input, st
10060 61 6e 64 61 6c 6f 6e 65 20 22 5c 72 22 20 6d 65  andalone "\r" me
10070 61 6e 20 4d 41 43 20 6d 6f 64 65 2c 20 73 74 61  an MAC mode, sta
10080 6e 64 61 6c 6f 6e 65 20 22 5c 6e 22 0a 6d 65 61  ndalone "\n".mea
10090 6e 20 55 6e 69 78 20 6d 6f 64 65 20 61 6e 64 20  n Unix mode and 
100a0 22 5c 72 5c 6e 22 20 6d 65 61 6e 73 20 57 69 6e  "\r\n" means Win
100b0 64 6f 77 73 20 6d 6f 64 65 2e 20 4f 6e 20 6f 75  dows mode. On ou
100c0 74 70 75 74 2c 20 74 68 65 20 6d 6f 64 65 20 69  tput, the mode i
100d0 73 0a 6d 6f 64 69 66 69 65 64 20 74 6f 20 77 68  s.modified to wh
100e0 61 74 65 76 65 72 20 74 68 65 20 70 6c 61 74 66  atever the platf
100f0 6f 72 6d 20 73 70 65 63 69 66 69 63 20 6d 6f 64  orm specific mod
10100 65 20 66 6f 72 20 74 68 61 74 20 70 6c 61 74 66  e for that platf
10110 6f 72 6d 20 69 73 2e 20 28 4a 4c 29 0a 0a 31 31  orm is. (JL)..11
10120 2f 32 34 2f 39 35 20 28 66 65 61 74 75 72 65 20  /24/95 (feature 
10130 63 68 61 6e 67 65 29 20 52 65 70 6c 61 63 65 64  change) Replaced
10140 20 22 63 6f 6e 66 69 67 49 6e 66 6f 22 20 66 69   "configInfo" fi
10150 6c 65 20 77 69 74 68 20 74 63 6c 43 6f 6e 66 69  le with tclConfi
10160 67 2e 73 68 2c 0a 77 68 69 63 68 20 69 73 20 6d  g.sh,.which is m
10170 6f 72 65 20 63 6f 6d 70 6c 65 74 65 20 61 6e 64  ore complete and
10180 20 75 73 65 73 20 73 6c 69 67 68 74 6c 79 20 64   uses slightly d
10190 69 66 66 65 72 65 6e 74 20 6e 61 6d 65 73 2e 20  ifferent names. 
101a0 20 41 6c 73 6f 0a 61 72 72 61 6e 67 65 64 20 66   Also.arranged f
101b0 6f 72 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20  or tclConfig.sh 
101c0 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 20  to be installed 
101d0 69 6e 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 2d  in the platform-
101e0 73 70 65 63 69 66 69 63 0a 6c 69 62 72 61 72 79  specific.library
101f0 20 64 69 72 65 63 74 6f 72 79 20 69 6e 73 74 65   directory inste
10200 61 64 20 6f 66 20 54 63 6c 27 73 20 73 63 72 69  ad of Tcl's scri
10210 70 74 20 6c 69 62 72 61 72 79 20 64 69 72 65 63  pt library direc
10220 74 6f 72 79 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50  tory. (JO).*** P
10230 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
10240 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
10250 6c 20 37 2e 35 61 32 2c 20 62 75 74 20 6e 6f 74  l 7.5a2, but not
10260 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
10270 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  *..-------------
10280 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 70 61  ---- Released pa
10290 74 63 68 20 37 2e 34 70 33 2c 20 31 31 2f 32 38  tch 7.4p3, 11/28
102a0 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /95 ------------
102b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 32 2f  -----------..12/
102c0 35 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  5/95 (new featur
102d0 65 29 20 41 64 64 65 64 20 54 63 6c 5f 46 69 6c  e) Added Tcl_Fil
102e0 65 20 66 61 63 69 6c 69 74 79 20 74 6f 20 73 75  e facility to su
102f0 70 70 6f 72 74 20 70 6c 61 74 66 6f 72 6d 2d 0a  pport platform-.
10300 69 6e 64 65 70 65 6e 64 65 6e 74 20 66 69 6c 65  independent file
10310 20 68 61 6e 64 6c 65 73 2e 20 20 43 68 61 6e 67   handles.  Chang
10320 65 64 20 61 6c 6c 20 69 6e 74 65 72 66 61 63 65  ed all interface
10330 73 20 74 68 61 74 20 75 73 65 64 20 55 6e 69 78  s that used Unix
10340 2d 0a 73 74 79 6c 65 20 69 6e 74 65 67 65 72 20  -.style integer 
10350 66 64 27 73 20 74 6f 20 75 73 65 20 54 63 6c 5f  fd's to use Tcl_
10360 46 69 6c 65 27 73 20 69 6e 73 74 65 61 64 2e 20  File's instead. 
10370 28 53 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  (SS).*** POTENTI
10380 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
10390 54 59 20 2a 2a 2a 0a 0a 31 32 2f 35 2f 39 35 20  TY ***..12/5/95 
103a0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
103b0 64 65 64 20 61 20 6e 65 77 20 22 63 6c 6f 63 6b  ded a new "clock
103c0 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 54 63 6c  " command to Tcl
103d0 2e 20 20 54 68 65 20 63 6f 6d 6d 61 6e 64 0a 61  .  The command.a
103e0 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 67 65 74  llows you to get
103f0 20 74 68 65 20 63 75 72 72 65 6e 74 20 22 63 6c   the current "cl
10400 69 63 6b 73 22 20 6f 72 20 73 65 63 6f 6e 64 73  icks" or seconds
10410 20 26 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f   & allows you to
10420 0a 66 6f 72 6d 61 74 20 6f 72 20 73 63 61 6e 20  .format or scan 
10430 68 75 6d 61 6e 20 72 65 61 64 61 62 6c 65 20 74  human readable t
10440 69 6d 65 2f 64 61 74 65 20 73 74 72 69 6e 67 73  ime/date strings
10450 2e 20 28 52 4a 29 0a 0a 31 32 2f 31 38 2f 39 35  . (RJ)..12/18/95
10460 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 4d   (new feature) M
10470 6f 76 65 64 20 54 6b 5f 50 72 65 73 65 72 76 65  oved Tk_Preserve
10480 2c 20 54 6b 5f 52 65 6c 65 61 73 65 2c 20 61 6e  , Tk_Release, an
10490 64 20 54 6b 5f 45 76 65 6e 74 75 61 6c 6c 79 46  d Tk_EventuallyF
104a0 72 65 65 0a 74 6f 20 54 63 6c 2c 20 72 65 6e 61  ree.to Tcl, rena
104b0 6d 65 64 20 74 6f 20 54 63 6c 5f 50 72 65 73 65  med to Tcl_Prese
104c0 72 76 65 2c 20 54 63 6c 5f 52 65 6c 65 61 73 65  rve, Tcl_Release
104d0 2c 20 61 6e 64 20 54 63 6c 5f 45 76 65 6e 74 75  , and Tcl_Eventu
104e0 61 6c 6c 79 46 72 65 65 2e 20 28 4a 4f 29 0a 0a  allyFree. (JO)..
104f0 31 32 2f 31 38 2f 39 35 20 28 6e 65 77 20 66 65  12/18/95 (new fe
10500 61 74 75 72 65 29 20 41 64 64 65 64 20 6e 65 77  ature) Added new
10510 20 22 70 61 63 6b 61 67 65 22 20 63 6f 6d 6d 61   "package" comma
10520 6e 64 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65  nd and associate
10530 64 0a 70 72 6f 63 65 64 75 72 65 73 20 54 63 6c  d.procedures Tcl
10540 5f 50 6b 67 52 65 71 75 69 72 65 20 61 6e 64 20  _PkgRequire and 
10550 54 63 6c 5f 50 6b 67 50 72 6f 76 69 64 65 2e 20  Tcl_PkgProvide. 
10560 20 20 41 6c 73 6f 20 77 72 6f 74 65 0a 70 6b 67    Also wrote.pkg
10570 5f 6d 6b 49 6e 64 65 78 20 6c 69 62 72 61 72 79  _mkIndex library
10580 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20 63 72   procedure to cr
10590 65 61 74 65 20 69 6e 64 65 78 20 66 69 6c 65 73  eate index files
105a0 20 66 72 6f 6d 20 62 69 6e 61 72 69 65 73 0a 61   from binaries.a
105b0 6e 64 20 73 63 72 69 70 74 73 2e 20 28 4a 4f 29  nd scripts. (JO)
105c0 0a 0a 31 32 2f 32 30 2f 39 35 20 28 6e 65 77 20  ..12/20/95 (new 
105d0 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54  feature) Added T
105e0 63 6c 5f 57 61 69 74 46 6f 72 46 69 6c 65 20 70  cl_WaitForFile p
105f0 72 6f 63 65 64 75 72 65 2e 20 28 4a 4f 29 0a 0a  rocedure. (JO)..
10600 31 32 2f 32 31 2f 39 35 20 28 6e 65 77 20 66 65  12/21/95 (new fe
10610 61 74 75 72 65 73 29 20 4d 61 64 65 20 70 61 63  atures) Made pac
10620 6b 61 67 65 20 6e 61 6d 65 20 61 72 67 75 6d 65  kage name argume
10630 6e 74 20 74 6f 20 22 6c 6f 61 64 22 20 6f 70 74  nt to "load" opt
10640 69 6f 6e 61 6c 0a 28 54 63 6c 20 77 69 6c 6c 20  ional.(Tcl will 
10650 6e 6f 77 20 61 74 74 65 6d 70 74 20 74 6f 20 67  now attempt to g
10660 75 65 73 73 20 74 68 65 20 70 61 63 6b 61 67 65  uess the package
10670 20 6e 61 6d 65 20 69 66 20 6e 65 63 65 73 73 61   name if necessa
10680 72 79 29 2e 20 20 41 6c 73 6f 0a 61 64 64 65 64  ry).  Also.added
10690 20 54 63 6c 5f 53 74 61 74 69 63 50 61 63 6b 61   Tcl_StaticPacka
106a0 67 65 20 61 6e 64 20 73 75 70 70 6f 72 74 20 69  ge and support i
106b0 6e 20 22 6c 6f 61 64 22 20 66 6f 72 20 73 74 61  n "load" for sta
106c0 74 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 0a 70  tically linked.p
106d0 61 63 6b 61 67 65 73 2e 20 20 28 4a 4f 29 0a 0a  ackages.  (JO)..
106e0 31 32 2f 32 32 2f 39 35 20 28 6e 65 77 20 66 65  12/22/95 (new fe
106f0 61 74 75 72 65 29 20 55 70 67 72 61 64 65 64 20  ature) Upgraded 
10700 74 68 65 20 66 6f 72 65 61 63 68 20 63 6f 6d 6d  the foreach comm
10710 61 6e 64 20 74 6f 20 61 63 63 65 70 74 20 6d 75  and to accept mu
10720 6c 74 69 70 6c 65 0a 6c 6f 6f 70 20 76 61 72 69  ltiple.loop vari
10730 61 62 6c 65 73 20 61 6e 64 20 6d 75 6c 74 69 70  ables and multip
10740 6c 65 20 76 61 6c 75 65 20 6c 69 73 74 73 2e 20  le value lists. 
10750 20 54 68 69 73 20 6c 65 74 73 20 79 6f 75 20 69   This lets you i
10760 74 65 72 61 74 65 20 6f 76 65 72 0a 6d 75 6c 74  terate over.mult
10770 69 70 6c 65 20 6c 69 73 74 73 20 69 6e 20 70 61  iple lists in pa
10780 72 61 6c 6c 65 6c 2c 20 61 6e 64 2f 6f 72 20 61  rallel, and/or a
10790 73 73 69 67 6e 20 6d 75 6c 74 69 70 6c 65 20 6c  ssign multiple l
107a0 6f 6f 70 20 76 61 72 69 61 62 6c 65 73 20 66 72  oop variables fr
107b0 6f 6d 0a 6f 6e 65 20 76 61 6c 75 65 20 6c 69 73  om.one value lis
107c0 74 20 64 75 72 69 6e 67 20 65 61 63 68 20 69 74  t during each it
107d0 65 72 61 74 69 6f 6e 2e 20 54 68 65 20 6f 6e 6c  eration. The onl
107e0 79 20 70 6f 74 65 6e 74 69 61 6c 20 63 6f 6d 70  y potential comp
107f0 61 74 69 62 69 6c 69 74 79 0a 70 72 6f 62 6c 65  atibility.proble
10800 6d 20 69 73 20 77 69 74 68 20 73 63 72 69 70 74  m is with script
10810 73 20 74 68 61 74 20 75 73 65 64 20 6c 6f 6f 70  s that used loop
10820 20 76 61 72 69 61 62 6c 65 73 20 77 69 74 68 20   variables with 
10830 61 20 6e 61 6d 65 20 74 68 61 74 20 63 6f 75 6c  a name that coul
10840 64 20 62 65 0a 63 6f 6e 73 74 72 75 65 64 20 74  d be.construed t
10850 6f 20 62 65 20 61 20 6c 69 73 74 20 6f 66 20 76  o be a list of v
10860 61 72 69 61 62 6c 65 20 6e 61 6d 65 73 20 28 69  ariable names (i
10870 2e 65 2e 20 63 6f 6e 74 61 69 6e 65 64 20 73 70  .e. contained sp
10880 61 63 65 73 29 2e 20 20 28 42 57 29 0a 0a 31 2f  aces).  (BW)..1/
10890 35 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72  5/96 (new featur
108a0 65 29 20 43 68 61 6e 67 65 64 20 74 63 6c 73 68  e) Changed tclsh
108b0 20 73 6f 20 69 74 20 62 75 69 6c 64 73 20 61 73   so it builds as
108c0 20 61 20 63 6f 6e 73 6f 6c 65 20 6d 6f 64 65 0a   a console mode.
108d0 61 70 70 6c 69 63 61 74 69 6f 6e 20 75 6e 64 65  application unde
108e0 72 20 57 69 6e 64 6f 77 73 2e 20 20 4e 6f 77 20  r Windows.  Now 
108f0 74 63 6c 73 68 20 63 61 6e 20 62 65 20 75 73 65  tclsh can be use
10900 64 20 66 72 6f 6d 20 74 68 65 20 63 6f 6d 6d 61  d from the comma
10910 6e 64 0a 6c 69 6e 65 20 77 69 74 68 20 70 69 70  nd.line with pip
10920 65 73 20 6f 72 20 69 6e 74 65 72 61 63 74 69 76  es or interactiv
10930 65 6c 79 2e 20 20 4e 6f 74 65 20 74 68 61 74 20  ely.  Note that 
10940 74 68 69 73 20 6f 6e 6c 79 20 77 6f 72 6b 73 20  this only works 
10950 75 6e 64 65 72 0a 57 69 6e 64 6f 77 73 20 39 35  under.Windows 95
10960 20 6f 72 20 4e 54 2e 20 28 53 53 29 0a 0a 31 2f   or NT. (SS)..1/
10970 31 37 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  17/96 (new featu
10980 72 65 29 20 4d 6f 64 69 66 69 65 64 20 4d 61 6b  re) Modified Mak
10990 65 66 69 6c 65 20 61 6e 64 20 63 6f 6e 66 69 67  efile and config
109a0 75 72 65 20 73 63 72 69 70 74 20 74 6f 20 61 6c  ure script to al
109b0 6c 6f 77 0a 54 63 6c 20 74 6f 20 62 65 20 63 6f  low.Tcl to be co
109c0 6d 70 69 6c 65 64 20 61 73 20 61 20 73 68 61 72  mpiled as a shar
109d0 65 64 20 6c 69 62 72 61 72 79 3a 20 20 75 73 65  ed library:  use
109e0 20 74 68 65 20 2d 2d 65 6e 61 62 6c 65 2d 73 68   the --enable-sh
109f0 61 72 65 64 20 6f 70 74 69 6f 6e 0a 77 68 65 6e  ared option.when
10a00 20 63 6f 6e 66 69 67 75 69 6e 67 2e 20 20 28 4a   configuing.  (J
10a10 4f 29 0a 0a 31 2f 31 37 2f 39 36 20 28 72 65 6d  O)..1/17/96 (rem
10a20 6f 76 65 64 20 6f 62 73 6f 6c 65 74 65 20 66 65  oved obsolete fe
10a30 61 74 75 72 65 73 29 20 20 52 65 6d 6f 76 65 64  atures)  Removed
10a40 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 73 20   the procedures 
10a50 54 63 6c 5f 45 6e 74 65 72 46 69 6c 65 0a 61 6e  Tcl_EnterFile.an
10a60 64 20 54 63 6c 5f 47 65 74 4f 70 65 6e 46 69 6c  d Tcl_GetOpenFil
10a70 65 3a 20 20 74 68 65 73 65 20 6e 6f 20 6c 6f 6e  e:  these no lon
10a80 67 65 72 20 6d 61 6b 65 20 73 65 6e 73 65 20 77  ger make sense w
10a90 69 74 68 20 74 68 65 20 6e 65 77 20 49 2f 4f 20  ith the new I/O 
10aa0 73 79 73 74 65 6d 2e 20 28 4a 4c 29 0a 2a 2a 2a  system. (JL).***
10ab0 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
10ac0 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
10ad0 31 2f 31 39 2f 39 36 20 28 62 75 67 20 66 69 78  1/19/96 (bug fix
10ae0 65 73 29 20 50 72 65 76 65 6e 74 65 64 20 66 6f  es) Prevented fo
10af0 72 6d 61 74 69 6f 6e 20 6f 66 20 63 69 72 63 75  rmation of circu
10b00 6c 61 72 20 61 6c 69 61 73 65 73 2c 20 74 68 72  lar aliases, thr
10b10 6f 75 67 68 20 74 68 65 0a 54 63 6c 20 27 69 6e  ough the.Tcl 'in
10b20 74 65 72 70 20 61 6c 69 61 73 27 20 63 6f 6d 6d  terp alias' comm
10b30 61 6e 64 20 61 6e 64 20 74 68 72 6f 75 67 68 20  and and through 
10b40 74 68 65 20 27 72 65 6e 61 6d 65 27 20 63 6f 6d  the 'rename' com
10b50 6d 61 6e 64 2c 20 61 73 20 77 65 6c 6c 20 61 73  mand, as well as
10b60 0a 74 68 72 6f 75 67 68 20 74 68 65 20 43 20 41  .through the C A
10b70 50 49 20 54 63 6c 5f 43 72 65 61 74 65 41 6c 69  PI Tcl_CreateAli
10b80 61 73 2e 20 28 4a 4c 29 0a 0a 31 2f 31 39 2f 39  as. (JL)..1/19/9
10b90 36 20 28 62 75 67 20 66 69 78 65 73 29 20 46 69  6 (bug fixes) Fi
10ba0 78 65 64 20 73 65 76 65 72 61 6c 20 62 75 67 73  xed several bugs
10bb0 20 69 6e 20 64 69 72 65 63 74 20 64 65 6c 65 74   in direct delet
10bc0 69 6f 6e 20 6f 66 20 69 6e 74 65 72 70 72 65 74  ion of interpret
10bd0 65 72 73 0a 77 69 74 68 20 54 63 6c 5f 44 65 6c  ers.with Tcl_Del
10be0 65 74 65 49 6e 74 65 72 70 20 77 68 65 6e 20 74  eteInterp when t
10bf0 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 69  he interpreter i
10c00 73 20 61 20 73 6c 61 76 65 3b 20 66 69 78 65 73  s a slave; fixes
10c10 20 62 61 73 65 64 20 6f 6e 20 61 0a 70 61 74 63   based on a.patc
10c20 68 20 72 65 63 65 69 76 65 64 20 66 72 6f 6d 20  h received from 
10c30 56 69 6b 74 6f 72 20 44 75 6b 68 6f 76 6e 69 20  Viktor Dukhovni 
10c40 6f 66 20 45 53 4d 2e 20 28 4a 4c 29 0a 0a 31 2f  of ESM. (JL)..1/
10c50 31 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  19/96 (new featu
10c60 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20  re) Implemented 
10c70 6f 6e 2d 63 6c 6f 73 65 20 68 61 6e 64 6c 65 72  on-close handler
10c80 73 20 66 6f 72 20 63 68 61 6e 6e 65 6c 73 3b 20  s for channels; 
10c90 61 64 64 65 64 0a 74 68 65 20 43 20 41 50 49 73  added.the C APIs
10ca0 20 54 63 6c 5f 43 72 65 61 74 65 43 6c 6f 73 65   Tcl_CreateClose
10cb0 48 61 6e 64 6c 65 72 20 61 6e 64 20 54 63 6c 5f  Handler and Tcl_
10cc0 44 65 6c 65 74 65 43 6c 6f 73 65 48 61 6e 64 6c  DeleteCloseHandl
10cd0 65 72 2e 20 28 4a 4c 29 0a 0a 31 2f 31 39 2f 39  er. (JL)..1/19/9
10ce0 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  6 (new feature) 
10cf0 49 6d 70 6c 65 6d 65 6e 74 65 64 20 70 6f 72 74  Implemented port
10d00 61 62 6c 65 20 65 72 72 6f 72 20 72 65 70 6f 72  able error repor
10d10 74 69 6e 67 20 6d 65 63 68 61 6e 69 73 6d 3b 20  ting mechanism; 
10d20 61 64 64 65 64 0a 74 68 65 20 43 20 41 50 49 73  added.the C APIs
10d30 20 54 63 6c 5f 53 65 74 45 72 72 6e 6f 20 61 6e   Tcl_SetErrno an
10d40 64 20 54 63 6c 5f 47 65 74 45 72 72 6e 6f 2e 20  d Tcl_GetErrno. 
10d50 28 4a 4c 29 0a 0a 31 2f 32 34 2f 39 36 20 28 62  (JL)..1/24/96 (b
10d60 75 67 20 66 69 78 29 20 55 6e 6b 6e 6f 77 6e 20  ug fix) Unknown 
10d70 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 73 73 69  command processi
10d80 6e 67 20 70 72 6f 70 65 72 6c 79 20 69 6e 76 6f  ng properly invo
10d90 6b 65 73 20 65 78 74 65 72 6e 61 6c 0a 63 6f 6d  kes external.com
10da0 6d 61 6e 64 73 20 75 6e 64 65 72 20 57 69 6e 64  mands under Wind
10db0 6f 77 73 20 4e 54 20 61 6e 64 20 57 69 6e 64 6f  ows NT and Windo
10dc0 77 73 20 27 39 35 20 6e 6f 77 2e 20 28 53 53 29  ws '95 now. (SS)
10dd0 0a 0a 31 2f 32 33 2f 39 36 20 28 62 75 67 20 66  ..1/23/96 (bug f
10de0 69 78 29 20 45 6c 69 6d 69 6e 61 74 65 64 20 65  ix) Eliminated e
10df0 78 74 72 65 6d 65 6c 79 20 6c 6f 6e 67 20 73 74  xtremely long st
10e00 61 72 74 75 70 20 74 69 6d 65 73 20 75 6e 64 65  artup times unde
10e10 72 20 57 69 6e 64 6f 77 73 20 27 39 35 2e 0a 54  r Windows '95..T
10e20 68 65 20 70 72 6f 62 6c 65 6d 20 77 61 73 20 61  he problem was a
10e30 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 6f   result of the o
10e40 70 74 69 6f 6e 20 64 61 74 61 62 61 73 65 20 69  ption database i
10e50 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 63 6f  nitialization co
10e60 64 65 20 74 68 61 74 0a 63 6f 6e 63 61 74 65 6e  de that.concaten
10e70 61 74 65 64 20 24 48 4f 4d 45 20 77 69 74 68 20  ated $HOME with 
10e80 2f 2e 58 64 65 66 61 75 6c 74 73 2c 20 72 65 73  /.Xdefaults, res
10e90 75 6c 74 69 6e 67 20 69 6e 20 61 20 2f 2f 20 69  ulting in a // i
10ea0 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20  n the middle of 
10eb0 74 68 65 0a 66 69 6c 65 20 6e 61 6d 65 2e 20 20  the.file name.  
10ec0 55 6e 64 65 72 20 57 69 6e 64 6f 77 73 20 27 39  Under Windows '9
10ed0 35 2c 20 74 68 69 73 20 69 73 20 69 6e 63 6f 72  5, this is incor
10ee0 72 65 63 74 6c 79 20 69 6e 74 65 72 70 72 65 74  rectly interpret
10ef0 65 64 20 61 73 20 61 20 55 4e 43 0a 70 61 74 68  ed as a UNC.path
10f00 2e 20 20 54 68 65 79 20 64 65 6c 61 79 73 20 63  .  They delays c
10f10 61 6d 65 20 66 72 6f 6d 20 74 68 65 20 6e 65 74  ame from the net
10f20 77 6f 72 6b 20 74 69 6d 65 6f 75 74 73 20 6e 65  work timeouts ne
10f30 65 64 65 64 20 74 6f 20 64 65 74 65 72 6d 69 6e  eded to determin
10f40 65 20 74 68 61 74 0a 74 68 65 20 66 69 6c 65 20  e that.the file 
10f50 6e 61 6d 65 20 77 61 73 20 69 6e 76 61 6c 69 64  name was invalid
10f60 2e 20 20 54 63 6c 5f 54 72 61 6e 73 6c 61 74 65  .  Tcl_Translate
10f70 46 69 6c 65 4e 61 6d 65 20 6e 6f 77 20 73 75 70  FileName now sup
10f80 70 72 65 73 73 65 73 20 64 75 70 6c 69 63 61 74  presses duplicat
10f90 65 0a 73 6c 61 73 68 65 73 20 74 68 61 74 20 61  e.slashes that a
10fa0 72 65 6e 27 74 20 61 74 20 74 68 65 20 62 65 67  ren't at the beg
10fb0 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 66 69  inning of the fi
10fc0 6c 65 20 6e 61 6d 65 2e 20 28 53 53 29 0a 0a 31  le name. (SS)..1
10fd0 2f 32 35 2f 39 36 20 28 62 75 67 20 66 69 78 29  /25/96 (bug fix)
10fe0 20 43 68 61 6e 67 65 64 20 65 78 65 63 20 61 6e   Changed exec an
10ff0 64 20 6f 70 65 6e 20 74 6f 20 63 72 65 61 74 65  d open to create
11000 20 63 68 69 6c 64 72 65 6e 20 73 6f 20 74 68 65   children so the
11010 79 20 61 72 65 0a 61 74 74 61 63 68 65 64 20 74  y are.attached t
11020 6f 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f  o the applicatio
11030 6e 27 73 20 63 6f 6e 73 6f 6c 65 20 69 66 20 69  n's console if i
11040 74 20 65 78 69 73 74 73 2e 20 28 53 53 29 0a 0a  t exists. (SS)..
11050 31 2f 33 31 2f 39 36 20 28 62 75 67 20 66 69 78  1/31/96 (bug fix
11060 29 20 46 69 78 65 64 20 63 6f 6d 6d 61 6e 64 20  ) Fixed command 
11070 6c 69 6e 65 20 70 61 72 73 69 6e 67 20 74 6f 20  line parsing to 
11080 68 61 6e 64 6c 65 20 65 6d 62 65 64 64 65 64 0a  handle embedded.
11090 73 70 61 63 65 73 20 75 6e 64 65 72 20 57 69 6e  spaces under Win
110a0 64 6f 77 73 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d  dows. (SS)..----
110b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
110c0 6c 65 61 73 65 64 20 37 2e 35 62 31 2c 20 32 2f  leased 7.5b1, 2/
110d0 31 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  1/96 -----------
110e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 2f  ------------..2/
110f0 37 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  7/96 (bug fix) F
11100 69 78 65 64 20 6f 66 66 20 62 79 20 6f 6e 65 20  ixed off by one 
11110 65 72 72 6f 72 20 69 6e 20 61 72 67 75 6d 65 6e  error in argumen
11120 74 20 70 61 72 73 69 6e 67 20 63 6f 64 65 20 75  t parsing code u
11130 6e 64 65 72 0a 57 69 6e 64 6f 77 73 2e 20 28 53  nder.Windows. (S
11140 53 29 0a 0a 32 2f 37 2f 39 36 20 28 62 75 67 20  S)..2/7/96 (bug 
11150 66 69 78 29 20 46 69 78 65 64 20 62 75 67 73 20  fix) Fixed bugs 
11160 69 6e 20 56 43 2b 2b 20 6d 61 6b 65 66 69 6c 65  in VC++ makefile
11170 20 74 68 61 74 20 69 6d 70 72 6f 70 65 72 6c 79   that improperly
11180 0a 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 68 65  .initialized the
11190 20 74 63 6c 37 35 2e 64 6c 6c 2e 20 20 46 69 78   tcl75.dll.  Fix
111a0 65 64 20 62 75 67 73 20 69 6e 20 42 6f 72 6c 61  ed bugs in Borla
111b0 6e 64 20 6d 61 6b 65 66 69 6c 65 20 74 68 61 74  nd makefile that
111c0 20 63 61 75 73 65 64 0a 62 75 69 6c 64 20 66 61   caused.build fa
111d0 69 6c 75 72 65 73 20 75 6e 64 65 72 20 57 69 6e  ilures under Win
111e0 64 6f 77 73 20 4e 54 2e 20 28 53 53 29 0a 0a 32  dows NT. (SS)..2
111f0 2f 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /9/96 (bug fix) 
11200 46 69 78 65 64 20 64 65 61 64 6c 6f 63 6b 20 70  Fixed deadlock p
11210 72 6f 62 6c 65 6d 20 69 6e 20 41 55 54 4f 20 65  roblem in AUTO e
11220 6e 64 20 6f 66 20 6c 69 6e 65 20 74 72 61 6e 73  nd of line trans
11230 6c 61 74 69 6f 6e 0a 6d 6f 64 65 20 77 68 69 63  lation.mode whic
11240 68 20 77 6f 75 6c 64 20 63 61 75 73 65 20 61 20  h would cause a 
11250 73 6f 63 6b 65 74 20 73 65 72 76 65 72 20 77 69  socket server wi
11260 74 68 20 73 65 76 65 72 61 6c 20 63 6f 6e 63 75  th several concu
11270 72 72 65 6e 74 20 63 6c 69 65 6e 74 73 0a 77 72  rrent clients.wr
11280 69 74 69 6e 67 20 69 6e 20 43 52 4c 46 20 6d 6f  iting in CRLF mo
11290 64 65 20 74 6f 20 68 61 6e 67 2e 20 28 4a 4c 29  de to hang. (JL)
112a0 0a 0a 32 2f 39 2f 39 36 20 28 41 50 49 20 63 68  ..2/9/96 (API ch
112b0 61 6e 67 65 29 20 52 65 70 6c 61 63 65 64 20 2d  ange) Replaced -
112c0 6c 69 6e 65 6d 6f 64 65 20 6f 70 74 69 6f 6e 20  linemode option 
112d0 74 6f 20 66 63 6f 6e 66 69 67 75 72 65 20 77 69  to fconfigure wi
112e0 74 68 20 61 0a 6e 65 77 20 2d 62 75 66 66 65 72  th a.new -buffer
112f0 69 6e 67 20 6f 70 74 69 6f 6e 2c 20 61 64 64 65  ing option, adde
11300 64 20 22 6e 6f 6e 65 22 20 73 65 74 74 69 6e 67  d "none" setting
11310 20 74 6f 20 65 6e 61 62 6c 65 20 69 6d 6d 65 64   to enable immed
11320 69 61 74 65 20 77 72 69 74 65 2e 20 28 4a 4c 29  iate write. (JL)
11330 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49  .*** INCOMPATIBI
11340 4c 49 54 59 20 77 69 74 68 20 62 31 20 2a 2a 2a  LITY with b1 ***
11350 0a 0a 32 2f 39 2f 39 36 20 28 6e 65 77 20 66 65  ..2/9/96 (new fe
11360 61 74 75 72 65 29 20 41 64 64 65 64 20 43 20 41  ature) Added C A
11370 50 49 20 54 63 6c 5f 49 6e 70 75 74 42 75 66 66  PI Tcl_InputBuff
11380 65 72 65 64 20 77 68 69 63 68 20 72 65 74 75 72  ered which retur
11390 6e 73 20 74 68 65 20 63 6f 75 6e 74 0a 6f 66 20  ns the count.of 
113a0 62 79 74 65 73 20 63 75 72 72 65 6e 74 6c 79 20  bytes currently 
113b0 62 75 66 66 65 72 65 64 20 69 6e 20 74 68 65 20  buffered in the 
113c0 69 6e 70 75 74 20 62 75 66 66 65 72 20 6f 66 20  input buffer of 
113d0 61 20 63 68 61 6e 6e 65 6c 2c 20 61 6e 64 20 6f  a channel, and o
113e0 20 66 6f 72 0a 6f 75 74 70 75 74 20 6f 6e 6c 79   for.output only
113f0 20 63 68 61 6e 6e 65 6c 73 2e 20 28 4a 4c 29 0a   channels. (JL).
11400 0a 32 2f 39 2f 39 36 20 28 6e 65 77 20 66 65 61  .2/9/96 (new fea
11410 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65  ture) Implemente
11420 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 63  d asynchronous c
11430 6f 6e 6e 65 63 74 20 66 6f 72 20 73 6f 63 6b 65  onnect for socke
11440 74 73 2e 20 28 4a 4c 29 0a 0a 32 2f 39 2f 39 36  ts. (JL)..2/9/96
11450 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
11460 64 64 65 64 20 43 20 41 50 49 20 54 63 6c 5f 53  dded C API Tcl_S
11470 65 74 44 65 66 61 75 6c 74 54 72 61 6e 73 6c 61  etDefaultTransla
11480 74 69 6f 6e 20 74 6f 20 73 65 74 20 28 70 65 72  tion to set (per
11490 0a 63 68 61 6e 6e 65 6c 29 20 74 68 65 20 64 65  .channel) the de
114a0 66 61 75 6c 74 20 65 6e 64 20 6f 66 20 6c 69 6e  fault end of lin
114b0 65 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f  e translation mo
114c0 64 65 2e 20 54 68 69 73 20 69 73 20 74 68 65 20  de. This is the 
114d0 6d 6f 64 65 20 74 68 61 74 0a 77 69 6c 6c 20 62  mode that.will b
114e0 65 20 69 6e 73 74 61 6c 6c 65 64 20 69 66 20 61  e installed if a
114f0 6e 20 6f 75 74 70 75 74 20 6f 70 65 72 61 74 69  n output operati
11500 6f 6e 20 69 73 20 64 6f 6e 65 20 6f 6e 20 74 68  on is done on th
11510 65 20 63 68 61 6e 6e 65 6c 20 77 68 69 6c 65 20  e channel while 
11520 69 74 20 69 73 0a 73 74 69 6c 6c 20 69 6e 20 41  it is.still in A
11530 55 54 4f 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a 0a  UTO mode. (JL)..
11540 32 2f 39 2f 39 36 20 28 62 75 67 20 66 69 78 29  2/9/96 (bug fix)
11550 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 4f 70 65   Changed Tcl_Ope
11560 6e 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 20  nCommandChannel 
11570 69 6e 74 65 72 66 61 63 65 20 74 6f 20 70 72 6f  interface to pro
11580 70 65 72 6c 79 0a 68 61 6e 64 6c 65 20 61 6c 6c  perly.handle all
11590 20 6f 66 20 74 68 65 20 63 6f 6d 62 69 6e 61 74   of the combinat
115a0 69 6f 6e 73 20 6f 66 20 73 74 64 69 6f 20 69 6e  ions of stdio in
115b0 68 65 72 69 74 61 6e 63 65 20 69 6e 20 62 61 63  heritance in bac
115c0 6b 67 72 6f 75 6e 64 0a 70 69 70 65 6c 69 6e 65  kground.pipeline
115d0 73 2e 20 20 53 65 65 20 74 68 65 20 54 63 6c 5f  s.  See the Tcl_
115e0 4f 70 65 6e 46 69 6c 65 43 68 61 6e 6e 65 6c 28  OpenFileChannel(
115f0 33 29 20 6d 61 6e 20 70 61 67 65 20 66 6f 72 20  3) man page for 
11600 6d 6f 72 65 0a 69 6e 66 6f 2e 20 20 54 68 69 73  more.info.  This
11610 20 63 68 61 6e 67 65 20 66 69 78 65 73 20 74 68   change fixes th
11620 65 20 62 75 67 20 77 68 65 72 65 20 65 78 65 63  e bug where exec
11630 20 6f 66 20 61 20 62 61 63 6b 67 72 6f 75 6e 64   of a background
11640 20 70 69 70 65 6c 69 6e 65 0a 77 61 73 20 6e 6f   pipeline.was no
11650 74 20 67 65 74 74 69 6e 67 20 70 61 73 73 65 64  t getting passed
11660 20 74 68 65 20 73 74 64 69 6f 20 68 61 6e 64 6c   the stdio handl
11670 65 73 20 70 72 6f 70 65 72 6c 79 2e 20 28 53 53  es properly. (SS
11680 29 0a 0a 32 2f 39 2f 39 36 20 28 62 75 67 20 66  )..2/9/96 (bug f
11690 69 78 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20  ix) Removed the 
116a0 6e 65 77 20 54 63 6c 5f 43 72 65 61 74 65 50 69  new Tcl_CreatePi
116b0 70 65 6c 69 6e 65 20 69 6e 74 65 72 66 61 63 65  peline interface
116c0 2c 20 61 6e 64 0a 72 65 73 74 6f 72 65 64 20 74  , and.restored t
116d0 68 65 20 6f 6c 64 20 76 65 72 73 69 6f 6e 20 66  he old version f
116e0 6f 72 20 55 6e 69 78 20 70 6c 61 74 66 6f 72 6d  or Unix platform
116f0 73 20 6f 6e 6c 79 2e 20 20 41 6c 6c 20 6e 65 77  s only.  All new
11700 20 63 6f 64 65 20 73 68 6f 75 6c 64 0a 75 73 65   code should.use
11710 20 54 63 6c 5f 43 72 65 61 74 65 43 6f 6d 6d 61   Tcl_CreateComma
11720 6e 64 43 68 61 6e 6e 65 6c 20 69 6e 73 74 65 61  ndChannel instea
11730 64 2e 20 28 53 53 29 0a 0a 32 2f 39 2f 39 36 20  d. (SS)..2/9/96 
11740 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
11750 64 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 74 6f  d Makefile.in to
11760 20 75 73 65 20 2d 4c 20 61 6e 64 20 2d 6c 74 63   use -L and -ltc
11770 6c 37 2e 35 20 66 6f 72 20 54 63 6c 0a 6c 69 62  l7.5 for Tcl.lib
11780 72 61 72 79 20 73 6f 20 74 68 61 74 20 73 68 61  rary so that sha
11790 72 65 64 20 6c 69 62 72 61 72 69 65 73 20 61 72  red libraries ar
117a0 65 20 6d 6f 72 65 20 6c 69 6b 65 6c 79 20 74 6f  e more likely to
117b0 20 62 65 20 66 6f 75 6e 64 20 63 6f 72 72 65 63   be found correc
117c0 74 6c 79 0a 6f 6e 20 6d 6f 72 65 20 70 6c 61 74  tly.on more plat
117d0 66 6f 72 6d 73 2e 20 28 4a 4f 29 0a 0a 32 2f 31  forms. (JO)..2/1
117e0 33 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72  3/96 (new featur
117f0 65 29 20 41 64 64 65 64 20 43 20 41 50 49 20 54  e) Added C API T
11800 63 6c 5f 53 65 74 4e 6f 74 69 66 69 65 72 44 61  cl_SetNotifierDa
11810 74 61 20 61 6e 64 0a 54 63 6c 5f 47 65 74 4e 6f  ta and.Tcl_GetNo
11820 74 69 66 69 65 72 44 61 74 61 20 74 6f 20 61 6c  tifierData to al
11830 6c 6f 77 20 6e 6f 74 69 66 69 65 72 20 61 6e 64  low notifier and
11840 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20   channel driver 
11850 77 72 69 74 65 72 73 20 74 6f 0a 61 73 73 6f 63  writers to.assoc
11860 69 61 74 65 20 64 61 74 61 20 77 69 74 68 20 61  iate data with a
11870 20 54 63 6c 5f 46 69 6c 65 2e 20 20 54 68 65 20   Tcl_File.  The 
11880 72 65 73 75 6c 74 20 6f 66 20 74 68 69 73 20 63  result of this c
11890 68 61 6e 67 65 20 69 73 20 74 68 61 74 0a 54 63  hange is that.Tc
118a0 6c 5f 47 65 74 46 69 6c 65 49 6e 66 6f 20 6e 6f  l_GetFileInfo no
118b0 77 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73  w always returns
118c0 20 61 6e 20 4f 53 20 66 69 6c 65 20 68 61 6e 64   an OS file hand
118d0 6c 65 2c 20 61 6e 64 20 54 63 6c 5f 47 65 74 46  le, and Tcl_GetF
118e0 69 6c 65 0a 63 61 6e 20 62 65 20 75 73 65 64 20  ile.can be used 
118f0 74 6f 20 63 6f 6e 73 74 72 75 63 74 20 61 20 54  to construct a T
11900 63 6c 5f 46 69 6c 65 20 66 6f 72 20 61 6e 20 65  cl_File for an e
11910 78 74 65 72 6e 61 6c 6c 79 20 63 6f 6e 73 74 72  xternally constr
11920 75 63 74 65 64 20 4f 53 0a 68 61 6e 64 6c 65 2e  ucted OS.handle.
11930 20 28 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20 28   (SS)..2/13/96 (
11940 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
11950 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20   Windows socket 
11960 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73  implementation s
11970 6f 20 69 74 20 64 6f 65 73 6e 27 74 0a 73 65 74  o it doesn't.set
11980 20 53 4f 5f 52 45 55 53 45 41 44 44 52 20 6f 6e   SO_REUSEADDR on
11990 20 73 65 72 76 65 72 20 73 6f 63 6b 65 74 73 2e   server sockets.
119a0 20 20 4e 6f 77 20 61 74 74 65 6d 70 74 73 20 74    Now attempts t
119b0 6f 20 63 72 65 61 74 65 20 61 20 73 65 72 76 65  o create a serve
119c0 72 0a 73 6f 63 6b 65 74 20 6f 6e 20 61 20 70 6f  r.socket on a po
119d0 72 74 20 74 68 61 74 20 69 73 20 61 6c 72 65 61  rt that is alrea
119e0 64 79 20 69 6e 20 75 73 65 20 77 69 6c 6c 20 62  dy in use will b
119f0 65 20 70 72 6f 70 65 72 6c 79 20 69 64 65 6e 74  e properly ident
11a00 69 66 69 65 64 0a 61 6e 64 20 61 6e 20 65 72 72  ified.and an err
11a10 6f 72 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72  or will be gener
11a20 61 74 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33  ated. (SS)..2/13
11a30 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
11a40 78 65 64 20 70 72 6f 62 6c 65 6d 73 20 77 69 74  xed problems wit
11a50 68 20 44 4c 4c 20 69 6e 69 74 69 61 6c 69 7a 61  h DLL initializa
11a60 74 69 6f 6e 20 75 6e 64 65 72 20 56 69 73 75 61  tion under Visua
11a70 6c 0a 43 2b 2b 20 74 68 61 74 20 6c 65 66 74 20  l.C++ that left 
11a80 74 68 65 20 43 20 72 75 6e 20 74 69 6d 65 20 6c  the C run time l
11a90 69 62 72 61 72 79 20 75 6e 69 6e 69 74 69 61 6c  ibrary uninitial
11aa0 69 7a 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33  ized. (SS)..2/13
11ab0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
11ac0 78 65 64 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b  xed Windows sock
11ad0 65 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  et initializatio
11ae0 6e 20 73 6f 20 69 74 20 6c 6f 61 64 73 0a 77 69  n so it loads.wi
11af0 6e 73 6f 63 6b 20 74 68 65 20 66 69 72 73 74 20  nsock the first 
11b00 74 69 6d 65 20 69 74 20 69 73 20 75 73 65 64 2c  time it is used,
11b10 20 72 61 74 68 65 72 20 74 68 61 6e 20 61 74 20   rather than at 
11b20 74 68 65 20 74 69 6d 65 20 74 63 6c 37 35 2e 64  the time tcl75.d
11b30 6c 6c 0a 69 73 20 6c 6f 61 64 65 64 2e 20 20 54  ll.is loaded.  T
11b40 68 69 73 20 73 68 6f 75 6c 64 20 66 69 78 20 74  his should fix t
11b50 68 65 20 62 75 67 20 77 68 65 72 65 20 74 68 65  he bug where the
11b60 20 6d 6f 64 65 6d 20 69 6d 6d 65 64 69 61 74 65   modem immediate
11b70 6c 79 20 73 74 61 72 74 73 0a 74 72 79 69 6e 67  ly starts.trying
11b80 20 74 6f 20 63 6f 6e 6e 65 63 74 20 74 6f 20 61   to connect to a
11b90 20 73 65 72 76 69 63 65 20 70 72 6f 76 69 64 65   service provide
11ba0 72 20 77 68 65 6e 20 77 69 73 68 20 6f 72 20 74  r when wish or t
11bb0 63 6c 73 68 20 61 72 65 0a 73 74 61 72 74 65 64  clsh are.started
11bc0 2e 20 28 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20  . (SS)..2/13/96 
11bd0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
11be0 64 65 64 20 43 20 41 50 49 73 20 54 63 6c 5f 4d  ded C APIs Tcl_M
11bf0 61 6b 65 46 69 6c 65 43 68 61 6e 6e 65 6c 20 61  akeFileChannel a
11c00 6e 64 0a 54 63 6c 5f 4d 61 6b 65 54 63 70 43 6c  nd.Tcl_MakeTcpCl
11c10 69 65 6e 74 43 68 61 6e 6e 65 6c 20 74 6f 20 77  ientChannel to w
11c20 72 61 70 20 75 70 20 65 78 69 73 74 69 6e 67 20  rap up existing 
11c30 66 64 73 20 61 6e 64 20 73 6f 63 6b 65 74 73 20  fds and sockets 
11c40 69 6e 74 6f 0a 63 68 61 6e 6e 65 6c 73 2e 20 50  into.channels. P
11c50 72 6f 76 69 64 65 64 20 69 6d 70 6c 65 6d 65 6e  rovided implemen
11c60 74 61 74 69 6f 6e 73 20 6f 6e 20 55 6e 69 78 20  tations on Unix 
11c70 61 6e 64 20 57 69 6e 64 6f 77 73 2e 20 28 4a 4c  and Windows. (JL
11c80 29 0a 0a 32 2f 31 33 2f 39 36 20 28 62 75 67 20  )..2/13/96 (bug 
11c90 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20 77  fix) Fixed bug w
11ca0 69 74 68 20 73 65 65 6b 20 6c 65 61 76 69 6e 67  ith seek leaving
11cb0 20 45 4f 46 20 61 6e 64 20 42 4c 4f 43 4b 49 4e   EOF and BLOCKIN
11cc0 47 20 73 65 74 2e 20 28 4a 4c 29 0a 0a 32 2f 31  G set. (JL)..2/1
11cd0 34 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  4/96 (bug fix) F
11ce0 69 78 65 64 20 72 65 65 6e 74 72 61 6e 63 79 20  ixed reentrancy 
11cf0 70 72 6f 62 6c 65 6d 20 69 6e 20 66 69 6c 65 65  problem in filee
11d00 76 65 6e 74 20 68 61 6e 64 6c 69 6e 67 0a 61 6e  vent handling.an
11d10 64 20 6d 61 64 65 20 69 74 20 6d 6f 72 65 20 72  d made it more r
11d20 6f 62 75 73 74 20 69 6e 20 74 68 65 20 66 61 63  obust in the fac
11d30 65 20 6f 66 20 65 72 72 6f 72 73 2e 20 28 4a 4c  e of errors. (JL
11d40 29 0a 0a 32 2f 31 34 2f 39 36 20 28 66 65 61 74  )..2/14/96 (feat
11d50 75 72 65 20 63 68 61 6e 67 65 29 20 4d 61 64 65  ure change) Made
11d60 20 67 65 6e 65 72 69 63 20 49 4f 20 6c 65 76 65   generic IO leve
11d70 6c 20 65 6d 75 6c 61 74 65 20 62 6c 6f 63 6b 69  l emulate blocki
11d80 6e 67 20 6d 6f 64 65 20 69 66 20 74 68 65 0a 63  ng mode if the.c
11d90 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 73  hannel driver is
11da0 20 75 6e 61 62 6c 65 20 74 6f 20 70 72 6f 76 69   unable to provi
11db0 64 65 20 69 74 2c 20 65 2e 67 2e 20 69 66 20 74  de it, e.g. if t
11dc0 68 65 20 6c 6f 77 20 6c 65 76 65 6c 20 64 65 76  he low level dev
11dd0 69 63 65 20 69 73 0a 61 6c 77 61 79 73 20 6e 6f  ice is.always no
11de0 6e 62 6c 6f 63 6b 69 6e 67 2e 20 54 68 75 73 2c  nblocking. Thus,
11df0 20 6e 6f 77 20 62 6c 6f 63 6b 69 6e 67 20 62 65   now blocking be
11e00 68 61 76 69 6f 72 20 69 73 20 61 6e 20 61 64 76  havior is an adv
11e10 69 73 6f 72 79 20 73 65 74 74 69 6e 67 20 66 6f  isory setting fo
11e20 72 0a 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  r.channel driver
11e30 73 20 61 6e 64 20 63 61 6e 20 62 65 20 69 67 6e  s and can be ign
11e40 6f 72 65 64 20 73 61 66 65 6c 79 20 69 66 20 74  ored safely if t
11e50 68 65 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65  he channel drive
11e60 72 20 69 73 20 75 6e 61 62 6c 65 0a 74 6f 20 70  r is unable.to p
11e70 72 6f 76 69 64 65 20 69 74 2e 20 28 4a 4c 29 0a  rovide it. (JL).
11e80 0a 32 2f 31 35 2f 39 36 20 28 6e 65 77 20 66 65  .2/15/96 (new fe
11e90 61 74 75 72 65 29 20 41 64 64 65 64 20 22 62 69  ature) Added "bi
11ea0 6e 61 72 79 22 20 65 6e 64 20 6f 66 20 6c 69 6e  nary" end of lin
11eb0 65 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f  e translation mo
11ec0 64 65 2c 20 77 68 69 63 68 20 69 73 0a 61 20 73  de, which is.a s
11ed0 79 6e 6f 6e 79 6d 20 6f 66 20 22 6c 66 22 20 6d  ynonym of "lf" m
11ee0 6f 64 65 2e 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f  ode. (JL)..2/15/
11ef0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
11f00 65 64 20 72 65 65 6e 74 72 61 6e 63 79 20 70 72  ed reentrancy pr
11f10 6f 62 6c 65 6d 20 69 6e 20 66 69 6c 65 65 76 65  oblem in fileeve
11f20 6e 74 20 68 61 6e 64 6c 69 6e 67 20 76 73 0a 64  nt handling vs.d
11f30 65 6c 65 74 69 6f 6e 20 6f 66 20 63 68 61 6e 6e  eletion of chann
11f40 65 6c 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72  el event handler
11f50 73 2e 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f 39 36  s. (JL)..2/15/96
11f60 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
11f70 20 62 75 67 20 69 6e 20 65 76 65 6e 74 20 68 61   bug in event ha
11f80 6e 64 6c 69 6e 67 20 77 68 69 63 68 20 77 6f 75  ndling which wou
11f90 6c 64 20 63 61 75 73 65 20 61 0a 6e 6f 6e 62 6c  ld cause a.nonbl
11fa0 6f 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20 74  ocking channel t
11fb0 6f 20 6e 6f 74 20 73 65 65 20 66 75 72 74 68 65  o not see furthe
11fc0 72 20 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74  r readable event
11fd0 73 20 61 66 74 65 72 20 74 68 65 20 66 69 72 73  s after the firs
11fe0 74 0a 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74  t.readable event
11ff0 20 74 68 61 74 20 68 61 64 20 69 6e 73 75 66 66   that had insuff
12000 69 63 69 65 6e 74 20 69 6e 70 75 74 2e 20 28 4a  icient input. (J
12010 4c 29 0a 0a 32 2f 31 37 2f 39 36 20 28 62 75 67  L)..2/17/96 (bug
12020 20 66 69 78 29 20 22 69 6e 66 6f 20 63 6f 6d 70   fix) "info comp
12030 6c 65 74 65 22 20 64 69 64 6e 27 74 20 70 72 6f  lete" didn't pro
12040 70 65 72 6c 79 20 68 61 6e 64 6c 65 20 63 6f 6d  perly handle com
12050 6d 65 6e 74 73 0a 69 6e 20 6e 65 73 74 65 64 20  ments.in nested 
12060 63 6f 6d 6d 61 6e 64 73 2e 20 28 4a 4f 29 0a 0a  commands. (JO)..
12070 32 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69 78  2/21/96 (bug fix
12080 29 20 22 65 78 65 63 22 20 75 6e 64 65 72 20 57  ) "exec" under W
12090 69 6e 64 6f 77 73 20 4e 54 2f 39 35 20 64 69 64  indows NT/95 did
120a0 20 6e 6f 74 20 70 72 6f 70 65 72 6c 79 20 68 61   not properly ha
120b0 6e 64 6c 65 0a 76 65 72 79 20 6c 6f 6e 67 20 63  ndle.very long c
120c0 6f 6d 6d 61 6e 64 20 6c 69 6e 65 73 20 28 3e 32  ommand lines (>2
120d0 30 30 20 63 68 61 72 73 29 2e 20 28 53 53 29 0a  00 chars). (SS).
120e0 0a 32 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69  .2/21/96 (bug fi
120f0 78 29 20 53 6f 63 6b 65 74 73 20 63 6f 75 6c 64  x) Sockets could
12100 20 67 65 74 20 69 6e 74 6f 20 61 6e 20 69 6e 66   get into an inf
12110 69 6e 69 74 65 20 6c 6f 6f 70 20 69 66 20 61 20  inite loop if a 
12120 72 65 61 64 0a 65 76 65 6e 74 20 61 72 72 69 76  read.event arriv
12130 65 64 20 61 66 74 65 72 20 61 6c 6c 20 6f 66 20  ed after all of 
12140 74 68 65 20 61 76 61 69 6c 61 62 6c 65 20 64 61  the available da
12150 74 61 20 68 61 64 20 62 65 65 6e 20 72 65 61 64  ta had been read
12160 2e 20 28 53 53 29 0a 0a 32 2f 32 32 2f 39 36 20  . (SS)..2/22/96 
12170 28 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20  (bug fix) Added 
12180 63 61 73 74 20 6f 66 20 73 74 5f 73 69 7a 65 20  cast of st_size 
12190 65 6c 65 6d 65 6e 74 73 20 74 6f 20 28 6c 6f 6e  elements to (lon
121a0 67 29 20 62 65 66 6f 72 65 0a 73 70 72 69 6e 74  g) before.sprint
121b0 66 2d 69 6e 67 20 69 6e 20 22 66 69 6c 65 20 73  f-ing in "file s
121c0 69 7a 65 22 20 63 6f 6d 6d 61 6e 64 2e 20 20 54  ize" command.  T
121d0 68 69 73 20 69 73 20 6e 65 65 64 65 64 20 74 6f  his is needed to
121e0 20 68 61 6e 64 6c 65 20 73 79 73 74 65 6d 73 0a   handle systems.
121f0 6c 69 6b 65 20 4e 65 74 42 53 44 20 77 69 74 68  like NetBSD with
12200 20 36 34 2d 62 69 74 20 66 69 6c 65 20 6f 66 66   64-bit file off
12210 73 65 74 73 2e 20 20 28 4a 4f 29 0a 0a 2d 2d 2d  sets.  (JO)..---
12220 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
12230 65 6c 65 61 73 65 64 20 37 2e 35 62 32 2c 20 32  eleased 7.5b2, 2
12240 2f 32 33 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /23/96 ---------
12250 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
12260 32 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78  2/23/96 (bug fix
12270 29 20 54 43 4c 5f 56 41 52 41 52 47 53 20 6d 61  ) TCL_VARARGS ma
12280 63 72 6f 20 69 6e 20 74 63 6c 2e 68 20 77 61 73  cro in tcl.h was
12290 6e 27 74 20 64 65 66 69 6e 65 64 20 70 72 6f 70  n't defined prop
122a0 65 72 6c 79 0a 77 68 65 6e 20 63 6f 6d 70 69 6c  erly.when compil
122b0 69 6e 67 20 77 69 74 68 20 43 2b 2b 2e 20 20 28  ing with C++.  (
122c0 4a 4f 29 0a 0a 32 2f 32 34 2f 39 36 20 28 62 75  JO)..2/24/96 (bu
122d0 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20 64  g fix) Removed d
122e0 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 6e 20 4d  ependencies on M
122f0 61 6b 65 66 69 6c 65 20 69 6e 20 74 68 65 20 55  akefile in the U
12300 4e 49 58 20 4d 61 6b 65 66 69 6c 65 3a 0a 74 68  NIX Makefile:.th
12310 69 73 20 63 61 75 73 65 64 20 70 72 6f 62 6c 65  is caused proble
12320 6d 73 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66  ms on some platf
12330 6f 72 6d 73 20 28 6c 69 6b 65 20 4c 69 6e 75 78  orms (like Linux
12340 3f 29 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34 2f 39  ?). (JO)..2/24/9
12350 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
12360 64 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20  d configuration 
12370 62 75 67 20 74 68 61 74 20 6d 61 64 65 20 54 63  bug that made Tc
12380 6c 20 6e 6f 74 20 63 6f 6d 70 69 6c 65 0a 63 6f  l not compile.co
12390 72 72 65 63 74 6c 79 20 6f 6e 20 4c 69 6e 75 78  rrectly on Linux
123a0 20 6d 61 63 68 69 6e 65 73 20 77 69 74 68 20 6e   machines with n
123b0 65 69 74 68 65 72 20 2d 6c 64 6c 20 6f 72 20 2d  either -ldl or -
123c0 6c 64 6c 64 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34  ldld. (JO)..2/24
123d0 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65  /96 (new feature
123e0 29 20 41 64 64 65 64 20 61 20 62 6c 6f 63 6b 20  ) Added a block 
123f0 6f 66 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20  of comments and 
12400 64 65 66 69 6e 69 74 69 6f 6e 73 20 74 6f 0a 4d  definitions to.M
12410 61 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20 6d 61  akefile.in to ma
12420 6b 65 20 69 74 20 65 61 73 69 65 72 20 74 6f 20  ke it easier to 
12430 68 61 76 65 20 54 63 6c 27 73 20 54 63 6c 53 65  have Tcl's TclSe
12440 74 45 6e 76 20 65 74 63 2e 20 72 65 70 6c 61 63  tEnv etc. replac
12450 65 0a 74 68 65 20 6c 69 62 72 61 72 79 20 70 72  e.the library pr
12460 6f 63 65 64 75 72 65 73 20 73 65 74 65 6e 76 20  ocedures setenv 
12470 65 74 63 2c 20 73 6f 20 74 68 61 74 20 63 61 6c  etc, so that cal
12480 6c 73 20 74 6f 20 73 65 74 65 6e 76 20 65 74 63  ls to setenv etc
12490 2e 20 69 6e 0a 74 68 65 20 61 70 70 6c 69 63 61  . in.the applica
124a0 74 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c  tion automatical
124b0 6c 79 20 75 70 64 61 74 65 20 74 68 65 20 54 63  ly update the Tc
124c0 6c 20 22 65 6e 76 22 20 76 61 72 69 61 62 6c 65  l "env" variable
124d0 2e 20 28 4a 4f 29 0a 0a 32 2f 32 37 2f 39 36 20  . (JO)..2/27/96 
124e0 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
124f0 20 41 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20   Added optional 
12500 54 63 6c 5f 49 6e 74 65 72 70 20 2a 20 61 72 67  Tcl_Interp * arg
12510 75 6d 65 6e 74 20 28 6d 61 79 20 62 65 20 4e 55  ument (may be NU
12520 4c 4c 29 0a 74 6f 20 43 20 41 50 49 20 54 63 6c  LL).to C API Tcl
12530 5f 43 6c 6f 73 65 20 61 6e 64 20 73 69 6d 70 6c  _Close and simpl
12540 69 66 69 65 64 20 63 6c 6f 73 69 6e 67 20 6f 66  ified closing of
12550 20 63 6f 6d 6d 61 6e 64 20 63 68 61 6e 6e 65 6c   command channel
12560 73 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f  s. (JL).*** INCO
12570 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
12580 20 54 63 6c 20 37 2e 35 62 32 2c 20 62 75 74 20   Tcl 7.5b2, but 
12590 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34  not with Tcl 7.4
125a0 20 2a 2a 2a 0a 0a 32 2f 32 37 2f 39 36 20 28 66   ***..2/27/96 (f
125b0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
125c0 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 54 63  dded optional Tc
125d0 6c 5f 49 6e 74 65 72 70 20 2a 20 61 72 67 75 6d  l_Interp * argum
125e0 65 6e 74 20 28 6d 61 79 20 62 65 20 4e 55 4c 4c  ent (may be NULL
125f0 29 0a 74 6f 20 43 20 74 79 70 65 20 64 65 66 69  ).to C type defi
12600 6e 69 74 69 6f 6e 20 54 63 6c 5f 44 72 69 76 65  nition Tcl_Drive
12610 72 43 6c 6f 73 65 50 72 6f 63 3b 20 6d 6f 64 69  rCloseProc; modi
12620 66 69 65 64 20 61 6c 6c 20 63 68 61 6e 6e 65 6c  fied all channel
12630 20 64 72 69 76 65 72 73 20 74 6f 0a 69 6d 70 6c   drivers to.impl
12640 65 6d 65 6e 74 20 63 6c 6f 73 65 20 70 72 6f 63  ement close proc
12650 65 64 75 72 65 73 20 74 68 61 74 20 61 63 63 65  edures that acce
12660 70 74 20 74 68 65 20 61 64 64 69 74 69 6f 6e 61  pt the additiona
12670 6c 20 61 72 67 75 6d 65 6e 74 2e 20 28 4a 4c 29  l argument. (JL)
12680 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49  .*** INCOMPATIBI
12690 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e  LITY with Tcl 7.
126a0 35 62 32 2c 20 62 75 74 20 6e 6f 74 20 77 69 74  5b2, but not wit
126b0 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 32  h Tcl 7.4 ***..2
126c0 2f 32 38 2f 39 36 20 28 62 75 67 20 66 69 78 29  /28/96 (bug fix)
126d0 20 46 69 78 65 64 20 6d 65 6d 6f 72 79 20 6c 65   Fixed memory le
126e0 61 6b 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63  ak that could oc
126f0 63 75 72 20 69 66 20 61 6e 20 75 70 76 61 72 0a  cur if an upvar.
12700 72 65 66 65 72 72 65 64 20 74 6f 20 61 6e 20 65  referred to an e
12710 6c 65 6d 65 6e 74 20 6f 66 20 61 6e 20 61 72 72  lement of an arr
12720 61 79 20 69 6e 20 74 68 65 20 73 61 6d 65 20 73  ay in the same s
12730 74 61 63 6b 20 66 72 61 6d 65 20 61 73 20 74 68  tack frame as th
12740 65 0a 75 70 76 61 72 2e 20 28 4a 4f 29 0a 0a 32  e.upvar. (JO)..2
12750 2f 32 39 2f 39 36 20 28 66 65 61 74 75 72 65 20  /29/96 (feature 
12760 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64  change) Modified
12770 20 62 6f 74 68 20 54 63 6c 5f 44 6f 4f 6e 65 45   both Tcl_DoOneE
12780 76 65 6e 74 20 61 6e 64 20 54 63 6c 5f 57 61 69  vent and Tcl_Wai
12790 74 46 6f 72 45 76 65 6e 74 0a 73 6f 20 74 68 61  tForEvent.so tha
127a0 74 20 74 68 65 79 20 72 65 74 75 72 6e 20 69 6d  t they return im
127b0 6d 65 64 69 61 74 65 6c 79 20 69 6e 20 63 61 73  mediately in cas
127c0 65 73 20 77 68 65 72 65 20 74 68 65 79 20 77 6f  es where they wo
127d0 75 6c 64 20 6f 74 68 65 72 77 69 73 65 0a 62 6c  uld otherwise.bl
127e0 6f 63 6b 20 66 6f 72 65 76 65 72 20 28 65 2e 67  ock forever (e.g
127f0 2e 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e  . if there are n
12800 6f 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73  o event handlers
12810 20 6f 66 20 61 6e 79 20 73 6f 72 74 29 2e 20 28   of any sort). (
12820 4a 4f 29 0a 0a 32 2f 32 39 2f 39 36 20 28 6e 65  JO)..2/29/96 (ne
12830 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
12840 20 43 20 41 50 49 73 20 54 63 6c 5f 47 65 74 43   C APIs Tcl_GetC
12850 68 61 6e 6e 65 6c 42 75 66 66 65 72 53 69 7a 65  hannelBufferSize
12860 20 61 6e 64 0a 54 63 6c 5f 53 65 74 43 68 61 6e   and.Tcl_SetChan
12870 6e 65 6c 42 75 66 66 65 72 53 69 7a 65 20 74 6f  nelBufferSize to
12880 20 73 65 74 20 61 6e 64 20 72 65 74 72 69 65 76   set and retriev
12890 65 20 74 68 65 20 73 69 7a 65 2c 20 69 6e 20 62  e the size, in b
128a0 79 74 65 73 2c 20 66 6f 72 0a 62 75 66 66 65 72  ytes, for.buffer
128b0 73 20 61 6c 6c 6f 63 61 74 65 64 20 74 6f 20 73  s allocated to s
128c0 74 6f 72 65 20 69 6e 70 75 74 20 6f 72 20 6f 75  tore input or ou
128d0 74 70 75 74 20 69 6e 20 61 20 63 68 61 6e 6e 65  tput in a channe
128e0 6c 2e 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f 39 36  l. (JL)..2/29/96
128f0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
12900 64 64 65 64 20 6f 70 74 69 6f 6e 20 2d 62 75 66  dded option -buf
12910 66 65 72 73 69 7a 65 20 74 6f 20 54 63 6c 20 66  fersize to Tcl f
12920 63 6f 6e 66 69 67 75 72 65 20 63 6f 6d 6d 61 6e  configure comman
12930 64 0a 74 6f 20 61 6c 6c 6f 77 20 54 63 6c 20 73  d.to allow Tcl s
12940 63 72 69 70 74 73 20 74 6f 20 71 75 65 72 79 20  cripts to query 
12950 61 6e 64 20 73 65 74 20 74 68 65 20 73 69 7a 65  and set the size
12960 20 6f 66 20 63 68 61 6e 6e 65 6c 20 62 75 66 66   of channel buff
12970 65 72 73 2e 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f  ers. (JL)..2/29/
12980 39 36 20 28 66 65 61 74 75 72 65 20 72 65 6d 6f  96 (feature remo
12990 76 65 64 29 20 52 65 6d 6f 76 65 64 20 63 68 61  ved) Removed cha
129a0 6e 6e 65 6c 20 64 72 69 76 65 72 20 66 75 6e 63  nnel driver func
129b0 74 69 6f 6e 20 74 6f 20 73 70 65 63 69 66 79 0a  tion to specify.
129c0 74 68 65 20 62 75 66 66 65 72 20 73 69 7a 65 20  the buffer size 
129d0 74 6f 20 75 73 65 20 77 68 65 6e 20 61 6c 6c 6f  to use when allo
129e0 63 61 74 69 6e 67 20 61 20 62 75 66 66 65 72 2e  cating a buffer.
129f0 20 52 65 6d 6f 76 65 64 20 74 68 65 20 43 20 74   Removed the C t
12a00 79 70 65 64 65 66 0a 66 6f 72 20 54 63 6c 5f 44  ypedef.for Tcl_D
12a10 72 69 76 65 72 42 75 66 66 65 72 53 69 7a 65 50  riverBufferSizeP
12a20 72 6f 63 2e 20 43 68 61 6e 6e 65 6c 73 20 61 72  roc. Channels ar
12a30 65 20 6e 6f 77 20 63 72 65 61 74 65 64 20 77 69  e now created wi
12a40 74 68 20 61 20 64 65 66 61 75 6c 74 0a 62 75 66  th a default.buf
12a50 66 65 72 20 73 69 7a 65 20 6f 66 20 34 4b 2e 20  fer size of 4K. 
12a60 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41  (JL).*** INCOMPA
12a70 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
12a80 6c 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74  l 7.5b2, but not
12a90 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
12aa0 2a 0a 0a 32 2f 32 39 2f 39 36 20 28 66 65 61 74  *..2/29/96 (feat
12ab0 75 72 65 20 63 68 61 6e 67 65 29 20 54 68 65 20  ure change) The 
12ac0 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 66  channel driver f
12ad0 75 6e 63 74 69 6f 6e 20 66 6f 72 20 73 65 74 74  unction for sett
12ae0 69 6e 67 20 62 6c 6f 63 6b 69 6e 67 0a 6d 6f 64  ing blocking.mod
12af0 65 20 6f 6e 20 74 68 65 20 64 65 76 69 63 65 20  e on the device 
12b00 6d 61 79 20 6e 6f 77 20 62 65 20 4e 55 4c 4c 2e  may now be NULL.
12b10 20 49 66 20 74 68 65 20 67 65 6e 65 72 69 63 20   If the generic 
12b20 63 6f 64 65 20 64 65 74 65 63 74 73 20 74 68 61  code detects tha
12b30 74 20 74 68 65 0a 66 75 6e 63 74 69 6f 6e 20 69  t the.function i
12b40 73 20 4e 55 4c 4c 2c 20 6f 70 65 72 61 74 69 6f  s NULL, operatio
12b50 6e 73 20 74 68 61 74 20 73 65 74 20 74 68 65 20  ns that set the 
12b60 62 6c 6f 63 6b 69 6e 67 20 6d 6f 64 65 20 6f 6e  blocking mode on
12b70 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a 73 69 6d   the channel.sim
12b80 70 6c 79 20 73 75 63 63 65 65 64 2e 20 28 4a 4c  ply succeed. (JL
12b90 29 0a 0a 33 2f 32 2f 39 36 20 28 62 75 67 20 66  )..3/2/96 (bug f
12ba0 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64  ix) Fixed core d
12bb0 75 6d 70 20 74 68 61 74 20 63 6f 75 6c 64 20 6f  ump that could o
12bc0 63 63 75 72 20 69 66 20 61 20 73 79 6e 74 61 78  ccur if a syntax
12bd0 20 65 72 72 6f 72 0a 28 73 75 63 68 20 61 73 20   error.(such as 
12be0 6d 69 73 73 69 6e 67 20 63 6c 6f 73 65 20 70 61  missing close pa
12bf0 72 65 6e 29 20 6f 63 63 75 72 72 65 64 20 69 6e  ren) occurred in
12c00 20 61 6e 20 61 72 72 61 79 20 72 65 66 65 72 65   an array refere
12c10 6e 63 65 20 77 69 74 68 20 61 0a 76 65 72 79 20  nce with a.very 
12c20 6c 6f 6e 67 20 61 72 72 61 79 20 6e 61 6d 65 2e  long array name.
12c30 20 28 4a 4f 29 0a 0a 33 2f 34 2f 39 36 20 28 62   (JO)..3/4/96 (b
12c40 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20  ug fix) Removed 
12c50 63 6f 64 65 20 69 6e 20 74 68 65 20 22 61 75 74  code in the "aut
12c60 6f 5f 6c 6f 61 64 22 20 70 72 6f 63 65 64 75 72  o_load" procedur
12c70 65 20 74 68 61 74 20 64 65 6c 65 74 65 73 0a 61  e that deletes.a
12c80 6c 6c 20 65 78 69 73 74 69 6e 67 20 61 75 74 6f  ll existing auto
12c90 2d 6c 6f 61 64 20 69 6e 66 6f 72 6d 61 74 69 6f  -load informatio
12ca0 6e 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 22  n whenever the "
12cb0 61 75 74 6f 5f 70 61 74 68 22 20 76 61 72 69 61  auto_path" varia
12cc0 62 6c 65 0a 69 73 20 63 68 61 6e 67 65 64 2e 20  ble.is changed. 
12cd0 20 49 6e 73 74 65 61 64 2c 20 6e 65 77 20 69 6e   Instead, new in
12ce0 66 6f 72 6d 61 74 69 6f 6e 20 61 64 64 73 20 74  formation adds t
12cf0 6f 20 77 68 61 74 20 77 61 73 20 61 6c 72 65 61  o what was alrea
12d00 64 79 20 74 68 65 72 65 2e 0a 4f 74 68 65 72 77  dy there..Otherw
12d10 69 73 65 2c 20 63 68 61 6e 67 69 6e 67 20 74 68  ise, changing th
12d20 65 20 22 61 75 74 6f 5f 70 61 74 68 22 20 76 61  e "auto_path" va
12d30 72 69 61 62 6c 65 20 63 61 75 73 65 73 20 61 6c  riable causes al
12d40 6c 20 70 61 63 6b 61 67 65 2d 0a 72 65 6c 61 74  l package-.relat
12d50 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74  ed information t
12d60 6f 20 62 65 20 6c 6f 73 74 2e 20 20 49 66 20 79  o be lost.  If y
12d70 6f 75 20 72 65 61 6c 6c 79 20 77 61 6e 74 20 74  ou really want t
12d80 6f 20 67 65 74 20 72 69 64 20 6f 66 0a 65 78 69  o get rid of.exi
12d90 73 74 69 6e 67 20 61 75 74 6f 2d 6c 6f 61 64 20  sting auto-load 
12da0 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 75 73 65  information, use
12db0 20 61 75 74 6f 5f 72 65 73 65 74 20 62 65 66 6f   auto_reset befo
12dc0 72 65 20 73 65 74 74 69 6e 67 20 61 75 74 6f 5f  re setting auto_
12dd0 70 61 74 68 2e 20 28 4a 4f 29 0a 0a 33 2f 35 2f  path. (JO)..3/5/
12de0 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
12df0 20 41 64 64 65 64 20 76 65 72 73 69 6f 6e 20 73   Added version s
12e00 75 66 66 69 78 20 74 6f 20 73 68 61 72 65 64 20  uffix to shared 
12e10 6c 69 62 72 61 72 79 20 6e 61 6d 65 73 20 73 6f  library names so
12e20 20 74 68 61 74 0a 54 63 6c 20 77 69 6c 6c 20 63   that.Tcl will c
12e30 6f 6d 70 69 6c 65 20 75 6e 64 65 72 20 4e 65 74  ompile under Net
12e40 42 53 44 20 61 6e 64 20 46 72 65 65 42 53 44 20  BSD and FreeBSD 
12e50 28 49 20 68 6f 70 65 29 2e 20 20 28 4a 4f 29 0a  (I hope).  (JO).
12e60 0a 33 2f 36 2f 39 36 20 28 62 75 67 20 66 69 78  .3/6/96 (bug fix
12e70 29 20 43 6c 65 61 6e 65 64 20 75 70 20 65 72 72  ) Cleaned up err
12e80 6f 72 20 6d 65 73 73 61 67 65 73 20 69 6e 20 6e  or messages in n
12e90 65 77 20 49 2f 4f 20 73 79 73 74 65 6d 20 74 6f  ew I/O system to
12ea0 20 63 6f 72 72 65 73 70 6f 6e 64 0a 6d 6f 72 65   correspond.more
12eb0 20 63 6c 6f 73 65 6c 79 20 74 6f 20 6f 6c 64 20   closely to old 
12ec0 49 2f 4f 20 73 79 73 74 65 6d 2e 20 28 4a 4f 29  I/O system. (JO)
12ed0 0a 0a 33 2f 36 2f 39 36 20 28 6e 65 77 20 66 65  ..3/6/96 (new fe
12ee0 61 74 75 72 65 29 20 41 64 64 65 64 20 2d 6d 79  ature) Added -my
12ef0 61 64 64 72 20 61 6e 64 20 2d 6d 79 70 6f 72 74  addr and -myport
12f00 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 68 65 20   options to the 
12f10 73 6f 63 6b 65 74 0a 63 6f 6d 6d 61 6e 64 2c 20  socket.command, 
12f20 72 65 6d 6f 76 65 64 20 2d 74 63 70 20 61 6e 64  removed -tcp and
12f30 20 2d 2d 20 6f 70 74 69 6f 6e 73 2e 20 20 54 68   -- options.  Th
12f40 69 73 20 6c 65 74 73 20 63 6c 69 65 6e 74 73 20  is lets clients 
12f50 61 6e 64 20 73 65 72 76 65 72 73 0a 63 68 6f 6f  and servers.choo
12f60 73 65 20 61 20 70 61 72 74 69 63 75 6c 61 72 20  se a particular 
12f70 69 6e 74 65 72 66 61 63 65 2e 20 20 41 6c 73 6f  interface.  Also
12f80 20 63 68 61 6e 67 65 64 20 74 68 65 20 64 65 66   changed the def
12f90 61 75 6c 74 20 73 65 72 76 65 72 20 61 64 64 72  ault server addr
12fa0 65 73 73 0a 66 72 6f 6d 20 74 68 65 20 68 6f 73  ess.from the hos
12fb0 74 6e 61 6d 65 20 74 6f 20 49 4e 41 44 44 52 5f  tname to INADDR_
12fc0 41 4e 59 2e 20 20 54 68 65 20 73 65 72 76 65 72  ANY.  The server
12fd0 20 61 63 63 65 70 74 20 63 61 6c 6c 62 61 63 6b   accept callback
12fe0 20 6e 6f 77 20 67 65 74 73 0a 70 61 73 73 65 64   now gets.passed
12ff0 20 74 68 65 20 63 6c 69 65 6e 74 27 73 20 70 6f   the client's po
13000 72 74 20 61 73 20 77 65 6c 6c 20 61 73 20 49 50  rt as well as IP
13010 20 61 64 64 72 65 73 73 2e 20 20 54 68 65 20 43   address.  The C
13020 20 69 6e 74 65 72 66 61 63 65 73 20 66 6f 72 0a   interfaces for.
13030 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65 6e  Tcl_OpenTcpClien
13040 74 20 61 6e 64 20 54 63 6c 5f 4f 70 65 6e 54 63  t and Tcl_OpenTc
13050 70 53 65 72 76 65 72 20 68 61 76 65 20 63 68 61  pServer have cha
13060 6e 67 65 64 20 74 6f 20 73 75 70 70 6f 72 74 20  nged to support 
13070 74 68 65 0a 61 62 6f 76 65 20 63 68 61 6e 67 65  the.above change
13080 73 2e 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45  s. (BW).*** POTE
13090 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
130a0 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 37  ILITY with Tcl 7
130b0 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74 20 77 69  .5b2, but not wi
130c0 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a  th Tcl 7.4 ***..
130d0 33 2f 36 2f 39 36 20 28 63 68 61 6e 67 65 64 20  3/6/96 (changed 
130e0 66 65 61 74 75 72 65 29 20 54 68 65 20 6c 69 62  feature) The lib
130f0 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 61 75  rary function au
13100 74 6f 5f 6d 6b 69 6e 64 65 78 20 77 69 6c 6c 20  to_mkindex will 
13110 6e 6f 77 0a 64 65 66 61 75 6c 74 20 74 6f 20 75  now.default to u
13120 73 69 6e 67 20 74 68 65 20 70 61 74 74 65 72 6e  sing the pattern
13130 20 22 2a 2e 74 63 6c 22 20 69 66 20 6e 6f 20 70   "*.tcl" if no p
13140 61 74 74 65 72 6e 20 69 73 20 67 69 76 65 6e 2e  attern is given.
13150 20 28 52 4a 29 0a 0a 33 2f 36 2f 39 36 20 28 62   (RJ)..3/6/96 (b
13160 75 67 20 66 69 78 29 20 54 68 65 20 73 6f 63 6b  ug fix) The sock
13170 65 74 20 63 68 61 6e 6e 65 6c 20 63 6f 64 65 20  et channel code 
13180 66 6f 72 20 74 68 65 20 4d 61 63 69 6e 74 6f 73  for the Macintos
13190 68 20 68 61 73 20 62 65 65 6e 0a 72 65 77 72 69  h has been.rewri
131a0 74 74 65 6e 20 74 6f 20 75 73 65 20 6e 61 74 69  tten to use nati
131b0 76 65 20 4d 61 63 54 63 70 2e 20 20 28 52 4a 29  ve MacTcp.  (RJ)
131c0 0a 0a 33 2f 37 2f 39 36 20 28 6e 65 77 20 66 65  ..3/7/96 (new fe
131d0 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c  ature) Added Tcl
131e0 5f 53 65 74 53 74 64 43 68 61 6e 6e 65 6c 20 61  _SetStdChannel a
131f0 6e 64 20 54 63 6c 5f 47 65 74 53 74 64 43 68 61  nd Tcl_GetStdCha
13200 6e 6e 65 6c 0a 69 6e 74 65 72 66 61 63 65 73 20  nnel.interfaces 
13210 74 6f 20 61 6c 6c 6f 77 20 61 70 70 6c 69 63 61  to allow applica
13220 74 69 6f 6e 73 20 74 6f 20 65 78 70 6c 69 63 69  tions to explici
13230 74 6c 79 20 73 65 74 20 61 6e 64 20 67 65 74 20  tly set and get 
13240 74 68 65 20 67 6c 6f 62 61 6c 0a 73 74 61 6e 64  the global.stand
13250 61 72 64 20 63 68 61 6e 6e 65 6c 73 2e 20 28 53  ard channels. (S
13260 53 29 0a 0a 33 2f 37 2f 39 36 20 28 62 75 67 20  S)..3/7/96 (bug 
13270 66 69 78 29 20 54 63 6c 20 64 69 64 20 63 6c 6f  fix) Tcl did clo
13280 73 65 20 6e 6f 74 20 74 68 65 20 66 69 6c 65 20  se not the file 
13290 64 65 73 63 72 69 70 74 6f 72 73 20 61 73 73 6f  descriptors asso
132a0 63 69 61 74 65 64 0a 77 69 74 68 20 22 73 74 64  ciated.with "std
132b0 6f 75 74 22 2c 20 65 74 63 2e 20 77 68 65 6e 20  out", etc. when 
132c0 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e  the correspondin
132d0 67 20 63 68 61 6e 6e 65 6c 73 20 77 65 72 65 20  g channels were 
132e0 63 6c 6f 73 65 64 2e 20 20 28 53 53 29 0a 0a 33  closed.  (SS)..3
132f0 2f 37 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /7/96 (bug fix) 
13300 52 65 77 6f 72 6b 65 64 20 73 68 61 72 65 64 20  Reworked shared 
13310 6c 69 62 72 61 72 79 20 61 6e 64 20 64 79 6e 61  library and dyna
13320 6d 69 63 20 6c 6f 61 64 69 6e 67 20 73 74 75 66  mic loading stuf
13330 66 20 74 6f 0a 74 72 79 20 74 6f 20 67 65 74 20  f to.try to get 
13340 69 74 20 77 6f 72 6b 69 6e 67 20 75 6e 64 65 72  it working under
13350 20 41 49 58 2e 20 20 41 64 64 65 64 20 6e 65 77   AIX.  Added new
13360 20 40 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 40   @[email protected]
13370 20 61 75 74 6f 63 6f 6e 66 0a 73 79 6d 62 6f 6c   autoconf.symbol
13380 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 69 73   as part of this
13390 2e 20 20 41 49 58 20 70 72 6f 62 61 62 6c 79 20  .  AIX probably 
133a0 64 6f 65 73 6e 27 74 20 77 6f 72 6b 20 79 65 74  doesn't work yet
133b0 2c 20 62 75 74 20 69 74 20 73 68 6f 75 6c 64 0a  , but it should.
133c0 62 65 20 61 20 6c 6f 74 20 63 6c 6f 73 65 72 2e  be a lot closer.
133d0 20 28 4a 4f 29 0a 0a 33 2f 37 2f 39 36 20 28 66   (JO)..3/7/96 (f
133e0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
133f0 64 64 65 64 20 54 63 6c 5f 43 68 61 6e 6e 65 6c  dded Tcl_Channel
13400 50 72 6f 63 20 74 79 70 65 64 65 66 20 61 6e 64  Proc typedef and
13410 20 63 68 61 6e 67 65 64 20 74 68 65 0a 73 69 67   changed the.sig
13420 6e 61 74 75 72 65 20 6f 66 20 54 63 6c 5f 43 72  nature of Tcl_Cr
13430 65 61 74 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c  eateChannelHandl
13440 65 72 20 61 6e 64 20 54 63 6c 5f 44 65 6c 65 74  er and Tcl_Delet
13450 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 20  eChannelHandler 
13460 74 6f 20 74 61 6b 65 0a 54 63 6c 5f 43 68 61 6e  to take.Tcl_Chan
13470 6e 65 6c 50 72 6f 63 20 61 72 67 75 6d 65 6e 74  nelProc argument
13480 73 20 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c  s instead of Tcl
13490 5f 46 69 6c 65 50 72 6f 63 20 61 72 67 75 6d 65  _FileProc argume
134a0 6e 74 73 2e 20 54 68 69 73 20 63 68 61 6e 67 65  nts. This change
134b0 0a 73 68 6f 75 6c 64 20 6e 6f 74 20 61 66 66 65  .should not affe
134c0 63 74 20 61 6e 79 20 63 6f 64 65 20 6f 75 74 73  ct any code outs
134d0 69 64 65 20 54 63 6c 20 62 65 63 61 75 73 65 20  ide Tcl because 
134e0 74 68 65 20 73 69 67 6e 61 74 75 72 65 73 20 6f  the signatures o
134f0 66 0a 54 63 6c 5f 43 68 61 6e 6e 65 6c 50 72 6f  f.Tcl_ChannelPro
13500 63 20 61 6e 64 20 54 63 6c 5f 46 69 6c 65 50 72  c and Tcl_FilePr
13510 6f 63 20 61 72 65 20 63 6f 6d 70 61 74 69 62 6c  oc are compatibl
13520 65 2e 20 28 4a 4c 29 0a 0a 33 2f 37 2f 39 36 20  e. (JL)..3/7/96 
13530 28 41 50 49 20 63 68 61 6e 67 65 29 20 4d 6f 64  (API change) Mod
13540 69 66 69 65 64 20 73 69 67 6e 61 74 75 72 65 20  ified signature 
13550 6f 66 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65  of Tcl_GetChanne
13560 6c 4f 70 74 69 6f 6e 20 74 6f 20 72 65 74 75 72  lOption to retur
13570 6e 0a 61 6e 20 69 6e 74 20 69 6e 73 74 65 61 64  n.an int instead
13580 20 6f 66 20 63 68 61 72 20 2a 2c 20 61 6e 64 20   of char *, and 
13590 74 6f 20 74 61 6b 65 20 61 20 54 63 6c 5f 44 53  to take a Tcl_DS
135a0 74 72 69 6e 67 20 2a 20 61 72 67 75 6d 65 6e 74  tring * argument
135b0 2e 20 4d 6f 64 69 66 69 65 64 0a 74 68 65 20 69  . Modified.the i
135c0 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 6f  mplementation so
135d0 20 74 68 61 74 20 74 68 65 20 6f 70 74 69 6f 6e   that the option
135e0 20 6e 61 6d 65 20 63 61 6e 20 62 65 20 4e 55 4c   name can be NUL
135f0 4c 2c 20 74 6f 20 6d 65 61 6e 20 74 68 61 74 20  L, to mean that 
13600 74 68 65 0a 63 61 6c 6c 20 73 68 6f 75 6c 64 20  the.call should 
13610 72 65 74 72 69 65 76 65 20 61 20 6c 69 73 74 20  retrieve a list 
13620 6f 66 20 61 6c 74 65 72 6e 61 74 69 6e 67 20 6f  of alternating o
13630 70 74 69 6f 6e 20 6e 61 6d 65 73 20 61 6e 64 20  ption names and 
13640 76 61 6c 75 65 73 2e 20 28 4a 4c 29 0a 2a 2a 2a  values. (JL).***
13650 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
13660 20 77 69 74 68 20 54 63 6c 20 37 2e 35 62 32 2c   with Tcl 7.5b2,
13670 20 62 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63   but not with Tc
13680 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 33 2f 37 2f 39  l 7.4 ***..3/7/9
13690 36 20 28 41 50 49 20 63 68 61 6e 67 65 29 20 41  6 (API change) A
136a0 64 64 65 64 20 54 63 6c 5f 44 72 69 76 65 72 53  dded Tcl_DriverS
136b0 65 74 4f 70 74 69 6f 6e 50 72 6f 63 2c 20 54 63  etOptionProc, Tc
136c0 6c 5f 44 72 69 76 65 72 47 65 74 4f 70 74 69 6f  l_DriverGetOptio
136d0 6e 50 72 6f 63 0a 74 79 70 65 64 65 66 73 2c 20  nProc.typedefs, 
136e0 61 64 64 65 64 20 74 77 6f 20 73 6c 6f 74 73 20  added two slots 
136f0 73 65 74 4f 70 74 69 6f 6e 50 72 6f 63 20 61 6e  setOptionProc an
13700 64 20 67 65 74 4f 70 74 69 6f 6e 50 72 6f 63 20  d getOptionProc 
13710 74 6f 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a 74  to the channel.t
13720 79 70 65 20 73 74 72 75 63 74 75 72 65 2e 20 54  ype structure. T
13730 68 65 73 65 20 6d 61 79 20 62 65 20 4e 55 4c 4c  hese may be NULL
13740 20 74 6f 20 69 6e 64 69 63 61 74 65 20 74 68 61   to indicate tha
13750 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 74 79  t the channel ty
13760 70 65 20 64 6f 65 73 0a 6e 6f 74 20 73 75 70 70  pe does.not supp
13770 6f 72 74 20 61 6e 79 20 6f 70 74 69 6f 6e 73 2e  ort any options.
13780 20 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50   (JL).*** INCOMP
13790 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54  ATIBILITY with T
137a0 63 6c 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f  cl 7.5b2, but no
137b0 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a  t with Tcl 7.4 *
137c0 2a 2a 0a 0a 33 2f 37 2f 39 36 20 28 66 65 61 74  **..3/7/96 (feat
137d0 75 72 65 20 63 68 61 6e 67 65 29 20 73 74 64 69  ure change) stdi
137e0 6e 2c 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74  n, stdout and st
137f0 64 65 72 72 20 63 61 6e 20 6e 6f 77 20 62 65 20  derr can now be 
13800 70 75 74 20 69 6e 74 6f 0a 6e 6f 6e 62 6c 6f 63  put into.nonbloc
13810 6b 69 6e 67 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a  king mode. (JL).
13820 0a 33 2f 38 2f 39 36 20 28 66 65 61 74 75 72 65  .3/8/96 (feature
13830 20 63 68 61 6e 67 65 29 20 45 6c 69 6d 69 6e 61   change) Elimina
13840 74 65 64 20 64 65 70 65 6e 64 65 6e 63 65 20 6f  ted dependence o
13850 6e 20 74 68 65 20 72 65 67 69 73 74 72 79 20 66  n the registry f
13860 6f 72 0a 66 69 6e 64 69 6e 67 20 74 68 65 20 54  or.finding the T
13870 63 6c 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73  cl library files
13880 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  . (SS)..--------
13890 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
138a0 65 64 20 37 2e 35 62 33 2c 20 33 2f 38 2f 39 36  ed 7.5b3, 3/8/96
138b0 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
138c0 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 31 32 2f 39  --------..3/12/9
138d0 36 20 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f  6 (feature impro
138e0 76 65 6d 65 6e 74 29 20 4d 6f 64 69 66 69 65 64  vement) Modified
138f0 20 73 74 61 72 74 75 70 20 73 63 72 69 70 74 20   startup script 
13900 74 6f 20 6c 6f 6f 6b 20 69 6e 20 73 65 76 65 72  to look in sever
13910 61 6c 0a 64 69 66 66 65 72 65 6e 74 20 70 6c 61  al.different pla
13920 63 65 73 20 66 6f 72 20 74 68 65 20 54 63 6c 20  ces for the Tcl 
13930 6c 69 62 72 61 72 79 20 64 69 72 65 63 74 6f 72  library director
13940 79 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  y.  This should 
13950 61 6c 6c 6f 77 20 54 63 6c 0a 74 6f 20 66 69 6e  allow Tcl.to fin
13960 64 20 74 68 65 20 6c 69 62 72 61 72 69 65 73 20  d the libraries 
13970 75 6e 64 65 72 20 61 6c 6c 20 62 75 74 20 74 68  under all but th
13980 65 20 77 65 69 72 64 65 73 74 20 63 6f 6e 64 69  e weirdest condi
13990 74 69 6f 6e 73 2c 20 65 76 65 6e 20 77 69 74 68  tions, even with
139a0 6f 75 74 0a 74 68 65 20 54 43 4c 5f 4c 49 42 52  out.the TCL_LIBR
139b0 41 52 59 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20  ARY environment 
139c0 76 61 72 69 61 62 6c 65 20 62 65 69 6e 67 20 73  variable being s
139d0 65 74 2e 20 28 4a 4f 29 0a 0a 33 2f 31 33 2f 39  et. (JO)..3/13/9
139e0 36 20 28 62 75 67 20 66 69 78 29 20 45 6c 69 6d  6 (bug fix) Elim
139f0 69 6e 61 74 65 64 20 75 73 65 20 6f 66 20 74 68  inated use of th
13a00 65 20 22 6c 69 6e 67 65 72 22 20 6f 70 74 69 6f  e "linger" optio
13a10 6e 20 66 72 6f 6d 20 74 68 65 20 57 69 6e 64 6f  n from the Windo
13a20 77 73 0a 73 6f 63 6b 65 74 20 69 6d 70 6c 65 6d  ws.socket implem
13a30 65 6e 74 61 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a  entation. (JL)..
13a40 33 2f 31 33 2f 39 36 20 28 6e 65 77 20 66 65 61  3/13/96 (new fea
13a50 74 75 72 65 29 20 41 64 64 65 64 20 2d 70 65 65  ture) Added -pee
13a60 72 6e 61 6d 65 20 61 6e 64 20 2d 73 6f 63 6b 6e  rname and -sockn
13a70 61 6d 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20  ame options for 
13a80 66 63 6f 6e 66 69 67 75 72 65 0a 66 6f 72 20 73  fconfigure.for s
13a90 6f 63 6b 65 74 20 63 68 61 6e 6e 65 6c 73 2e 20  ocket channels. 
13aa0 43 6f 64 65 20 63 6f 6e 74 72 69 62 75 74 65 64  Code contributed
13ab0 20 62 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f   by John Haxby o
13ac0 66 20 48 50 2e 20 28 4a 4c 29 0a 0a 33 2f 31 33  f HP. (JL)..3/13
13ad0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
13ae0 78 65 64 20 70 61 6e 69 63 20 61 6e 64 20 63 6f  xed panic and co
13af0 72 65 20 64 75 6d 70 20 74 68 61 74 20 77 6f 75  re dump that wou
13b00 6c 64 20 6f 63 63 75 72 20 69 66 20 74 68 65 20  ld occur if the 
13b10 61 63 63 65 70 74 0a 63 61 6c 6c 62 61 63 6b 20  accept.callback 
13b20 73 63 72 69 70 74 20 6f 6e 20 61 20 73 65 72 76  script on a serv
13b30 65 72 20 73 6f 63 6b 65 74 20 65 6e 63 6f 75 6e  er socket encoun
13b40 74 65 72 65 64 20 61 6e 20 65 72 72 6f 72 2e 20  tered an error. 
13b50 28 4a 4c 29 0a 0a 33 2f 31 33 2f 39 36 20 28 66  (JL)..3/13/96 (f
13b60 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41  eature change) A
13b70 64 64 65 64 20 2d 61 73 79 6e 63 20 6f 70 74 69  dded -async opti
13b80 6f 6e 20 74 6f 20 74 68 65 20 54 63 6c 20 73 6f  on to the Tcl so
13b90 63 6b 65 74 20 63 6f 6d 6d 61 6e 64 2e 0a 49 66  cket command..If
13ba0 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20   the command is 
13bb0 63 72 65 61 74 69 6e 67 20 61 20 63 6c 69 65 6e  creating a clien
13bc0 74 20 73 6f 63 6b 65 74 20 61 6e 64 20 74 68 65  t socket and the
13bd0 20 66 6c 61 67 20 69 73 20 70 72 65 73 65 6e 74   flag is present
13be0 2c 20 74 68 65 0a 63 6c 69 65 6e 74 20 69 73 20  , the.client is 
13bf0 63 6f 6e 6e 65 63 74 65 64 20 61 73 79 6e 63 68  connected asynch
13c00 72 6f 6e 6f 75 73 6c 79 2e 20 49 66 20 74 68 65  ronously. If the
13c10 20 6f 70 74 69 6f 6e 20 69 73 20 61 62 73 65 6e   option is absen
13c20 74 20 28 74 68 65 20 64 65 66 61 75 6c 74 29 2c  t (the default),
13c30 0a 74 68 65 20 63 6c 69 65 6e 74 20 73 6f 63 6b  .the client sock
13c40 65 74 20 69 73 20 63 6f 6e 6e 65 63 74 65 64 20  et is connected 
13c50 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61  synchronously, a
13c60 6e 64 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72  nd the command r
13c70 65 74 75 72 6e 73 20 6f 6e 6c 79 0a 77 68 65 6e  eturns only.when
13c80 20 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20   the connection 
13c90 68 61 73 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74  has been complet
13ca0 65 64 20 6f 72 20 66 61 69 6c 65 64 2e 20 54 68  ed or failed. Th
13cb0 69 73 20 63 68 61 6e 67 65 20 77 61 73 20 73 75  is change was su
13cc0 67 67 65 73 74 65 64 0a 62 79 20 4d 61 72 6b 20  ggested.by Mark 
13cd0 44 69 65 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a  Diekhans. (JL)..
13ce0 33 2f 31 33 2f 39 36 20 28 66 65 61 74 75 72 65  3/13/96 (feature
13cf0 20 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65   change) Modifie
13d00 64 20 74 68 65 20 73 69 67 6e 61 74 75 72 65 20  d the signature 
13d10 6f 66 20 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c  of Tcl_OpenTcpCl
13d20 69 65 6e 74 20 74 6f 0a 74 61 6b 65 20 61 6e 20  ient to.take an 
13d30 61 64 64 69 74 69 6f 6e 61 6c 20 69 6e 74 20 61  additional int a
13d40 72 67 75 6d 65 6e 74 2c 20 61 73 79 6e 63 2e 20  rgument, async. 
13d50 49 66 20 6e 6f 6e 7a 65 72 6f 2c 20 74 68 65 20  If nonzero, the 
13d60 63 6c 69 65 6e 74 20 69 73 20 63 6f 6e 6e 65 63  client is connec
13d70 74 65 64 0a 74 6f 20 74 68 65 20 73 65 72 76 65  ted.to the serve
13d80 72 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79  r asynchronously
13d90 2e 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69  . If the value i
13da0 73 20 7a 65 72 6f 2c 20 74 68 65 20 63 6f 6e 6e  s zero, the conn
13db0 65 63 74 69 6f 6e 20 69 73 20 6d 61 64 65 0a 73  ection is made.s
13dc0 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61 6e  ynchronously, an
13dd0 64 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 54 63  d the call to Tc
13de0 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74 20  l_OpenTcpClient 
13df0 72 65 74 75 72 6e 73 20 6f 6e 6c 79 20 77 68 65  returns only whe
13e00 6e 20 74 68 65 0a 63 6f 6e 6e 65 63 74 69 6f 6e  n the.connection
13e10 20 66 61 69 6c 73 20 6f 72 20 73 75 63 63 65 65   fails or succee
13e20 64 73 2e 20 54 68 69 73 20 63 68 61 6e 67 65 20  ds. This change 
13e30 77 61 73 20 73 75 67 67 65 73 74 65 64 20 62 79  was suggested by
13e40 20 4d 61 72 6b 20 44 69 65 6b 68 61 6e 73 2e 20   Mark Diekhans. 
13e50 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41  (JL).*** INCOMPA
13e60 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
13e70 6c 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74  l 7.5b3, but not
13e80 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
13e90 2a 0a 0a 33 2f 31 34 2f 39 36 20 28 62 75 67 20  *..3/14/96 (bug 
13ea0 66 69 78 29 20 22 74 63 6c 73 68 20 62 6f 67 75  fix) "tclsh bogu
13eb0 73 5f 66 69 6c 65 5f 6e 61 6d 65 22 20 64 69 64  s_file_name" did
13ec0 6e 27 74 20 70 72 69 6e 74 20 61 6e 20 65 72 72  n't print an err
13ed0 6f 72 20 6d 65 73 73 61 67 65 2e 20 28 4a 4f 29  or message. (JO)
13ee0 0a 0a 33 2f 31 34 2f 39 36 20 28 62 75 67 20 66  ..3/14/96 (bug f
13ef0 69 78 29 20 41 64 64 65 64 20 6e 65 77 20 70 72  ix) Added new pr
13f00 6f 63 65 64 75 72 65 73 20 74 6f 20 74 63 6c 43  ocedures to tclC
13f10 6b 61 6c 6c 6f 63 2e 63 20 73 6f 20 74 68 61 74  kalloc.c so that
13f20 20 6c 69 62 72 61 72 69 65 73 0a 61 6e 64 20 61   libraries.and a
13f30 70 70 6c 69 63 61 74 69 6f 6e 73 20 63 61 6e 20  pplications can 
13f40 62 65 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68  be compiled with
13f50 20 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 20 65   TCL_MEM_DEBUG e
13f60 76 65 6e 20 69 66 20 54 63 6c 20 69 73 6e 27 74  ven if Tcl isn't
13f70 0a 28 68 6f 77 65 76 65 72 2c 20 74 68 65 20 63  .(however, the c
13f80 6f 6e 76 65 72 73 65 20 69 73 20 73 74 69 6c 6c  onverse is still
13f90 20 6e 6f 74 20 74 72 75 65 29 2e 20 20 50 61 74   not true).  Pat
13fa0 63 68 65 73 20 70 72 6f 76 69 64 65 64 20 62 79  ches provided by
13fb0 20 4a 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e 20 28   Jan.Nijtmans. (
13fc0 4a 4f 29 0a 0a 33 2f 31 35 2f 39 36 20 28 62 75  JO)..3/15/96 (bu
13fd0 67 20 66 69 78 29 20 4d 61 72 6b 65 64 20 73 74  g fix) Marked st
13fe0 61 6e 64 61 72 64 20 49 4f 20 68 61 6e 64 6c 65  andard IO handle
13ff0 73 20 6f 66 20 61 20 70 72 6f 63 65 73 73 20 61  s of a process a
14000 73 20 63 6c 6f 73 65 2d 6f 6e 2d 65 78 65 63 0a  s close-on-exec.
14010 74 6f 20 66 69 78 20 62 75 67 20 69 6e 20 55 6c  to fix bug in Ul
14020 74 72 69 78 20 77 68 65 72 65 20 65 78 65 63 20  trix where exec 
14030 77 61 73 20 6e 6f 74 20 73 68 61 72 69 6e 67 20  was not sharing 
14040 73 74 61 6e 64 61 72 64 20 49 4f 20 68 61 6e 64  standard IO hand
14050 6c 65 73 20 77 69 74 68 0a 73 75 62 70 72 6f 63  les with.subproc
14060 65 73 73 65 73 2e 20 46 69 78 20 73 75 67 67 65  esses. Fix sugge
14070 73 74 65 64 20 62 79 20 4d 61 72 6b 20 44 69 65  sted by Mark Die
14080 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 33 2f 31  khans. (JL)..3/1
14090 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  5/96 (bug fix) F
140a0 69 78 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75  ixed asynchronou
140b0 73 20 63 6c 6f 73 65 20 6d 65 63 68 61 6e 69 73  s close mechanis
140c0 6d 20 73 6f 20 74 68 61 74 20 69 74 20 63 6c 6f  m so that it clo
140d0 73 65 73 20 74 68 65 0a 63 68 61 6e 6e 65 6c 20  ses the.channel 
140e0 69 6e 73 74 65 61 64 20 6f 66 20 6c 65 61 6b 69  instead of leaki
140f0 6e 67 20 73 79 73 74 65 6d 20 72 65 73 6f 75 72  ng system resour
14100 63 65 73 2e 20 54 68 65 20 6d 61 6e 69 66 65 73  ces. The manifes
14110 74 61 74 69 6f 6e 20 77 61 73 20 74 68 61 74 20  tation was that 
14120 54 63 6c 0a 77 6f 75 6c 64 20 65 76 65 6e 74 75  Tcl.would eventu
14130 61 6c 6c 79 20 72 75 6e 20 6f 75 74 20 6f 66 20  ally run out of 
14140 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73  file descriptors
14150 20 69 66 20 69 74 20 77 61 73 20 68 61 6e 64 6c   if it was handl
14160 69 6e 67 20 61 20 6c 61 72 67 65 0a 6e 75 6d 62  ing a large.numb
14170 65 72 20 6f 66 20 6e 6f 6e 62 6c 6f 63 6b 69 6e  er of nonblockin
14180 67 20 73 6f 63 6b 65 74 73 20 6f 72 20 70 69 70  g sockets or pip
14190 65 73 20 77 69 74 68 20 68 69 67 68 20 63 6f 6e  es with high con
141a0 67 65 73 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a 33  gestion. (JL)..3
141b0 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69 78 29  /15/96 (bug fix)
141c0 20 46 69 78 65 64 20 74 65 73 74 73 20 73 6f 20   Fixed tests so 
141d0 74 68 61 74 20 74 68 65 79 20 6e 6f 20 6c 6f 6e  that they no lon
141e0 67 65 72 20 6c 65 61 6b 20 66 69 6c 65 20 64 65  ger leak file de
141f0 73 63 72 69 70 74 6f 72 73 2e 0a 54 68 65 20 6d  scriptors..The m
14200 61 6e 69 66 65 73 74 61 74 69 6f 6e 20 77 61 73  anifestation was
14210 20 74 68 61 74 20 54 63 6c 20 77 6f 75 6c 64 20   that Tcl would 
14220 65 76 65 6e 74 75 61 6c 6c 79 20 72 75 6e 20 6f  eventually run o
14230 75 74 20 6f 66 20 66 69 6c 65 20 64 65 73 63 72  ut of file descr
14240 69 70 74 6f 72 73 0a 69 66 20 74 68 65 20 74 65  iptors.if the te
14250 73 74 73 20 77 65 72 65 20 72 65 72 75 6e 20 6d  sts were rerun m
14260 61 6e 79 20 74 69 6d 65 73 20 28 3e 20 61 20 68  any times (> a h
14270 75 6e 64 72 65 64 20 74 69 6d 65 73 20 6f 6e 20  undred times on 
14280 53 6f 6c 61 72 69 73 29 2e 20 28 4a 4c 29 0a 0a  Solaris). (JL)..
14290 33 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69 78  3/15/96 (bug fix
142a0 29 20 46 69 78 65 64 20 63 68 61 6e 6e 65 6c 20  ) Fixed channel 
142b0 63 72 65 61 74 69 6f 6e 20 63 6f 64 65 20 73 6f  creation code so
142c0 20 74 68 61 74 20 69 74 20 6e 65 76 65 72 20 63   that it never c
142d0 72 65 61 74 65 73 0a 75 6e 6e 61 6d 65 64 20 63  reates.unnamed c
142e0 68 61 6e 6e 65 6c 73 2e 20 54 68 69 73 20 77 6f  hannels. This wo
142f0 75 6c 64 20 63 61 75 73 65 20 61 20 70 61 6e 69  uld cause a pani
14300 63 20 61 6e 64 20 63 6f 72 65 20 64 75 6d 70 20  c and core dump 
14310 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e 65 6c  when the channel
14320 0a 77 61 73 20 63 6c 6f 73 65 64 2e 20 28 4a 4c  .was closed. (JL
14330 29 0a 0a 33 2f 31 36 2f 39 36 20 28 62 75 67 20  )..3/16/96 (bug 
14340 66 69 78 65 73 29 20 4d 61 64 65 20 6c 6f 74 73  fixes) Made lots
14350 20 6f 66 20 63 68 61 6e 67 65 73 20 69 6e 20 63   of changes in c
14360 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 74 75  onfiguration stu
14370 66 66 20 74 6f 20 67 65 74 0a 54 63 6c 20 77 6f  ff to get.Tcl wo
14380 72 6b 69 6e 67 20 75 6e 64 65 72 20 41 49 58 20  rking under AIX 
14390 28 66 69 6e 61 6c 6c 79 29 2e 20 20 54 63 6c 20  (finally).  Tcl 
143a0 73 68 6f 75 6c 64 20 6e 6f 77 20 73 75 70 70 6f  should now suppo
143b0 72 74 20 74 68 65 20 22 6c 6f 61 64 22 0a 63 6f  rt the "load".co
143c0 6d 6d 61 6e 64 20 75 6e 64 65 72 20 41 49 58 20  mmand under AIX 
143d0 61 6e 64 20 73 68 6f 75 6c 64 20 77 6f 72 6b 20  and should work 
143e0 65 69 74 68 65 72 20 77 69 74 68 20 6f 72 20 77  either with or w
143f0 69 74 68 6f 75 74 20 73 68 61 72 65 64 0a 6c 69  ithout shared.li
14400 62 72 61 72 69 65 73 20 66 6f 72 20 54 63 6c 20  braries for Tcl 
14410 61 6e 64 20 54 6b 2e 20 28 4a 4f 29 0a 0a 33 2f  and Tk. (JO)..3/
14420 32 31 2f 39 36 20 28 63 6f 6e 66 69 67 75 72 61  21/96 (configura
14430 74 69 6f 6e 20 69 6d 70 72 6f 76 65 6d 65 6e 74  tion improvement
14440 29 20 43 68 61 6e 67 65 64 20 63 6f 6e 66 69 67  ) Changed config
14450 75 72 65 20 73 63 72 69 70 74 20 73 6f 20 69 74  ure script so it
14460 0a 64 6f 65 73 6e 27 74 20 75 73 65 20 76 65 72  .doesn't use ver
14470 73 69 6f 6e 20 6e 75 6d 62 65 72 73 20 28 61 73  sion numbers (as
14480 20 69 6e 20 2d 6c 74 63 6c 37 2e 35 20 61 6e 64   in -ltcl7.5 and
14490 20 6c 69 62 74 63 6c 37 2e 35 2e 73 6f 29 20 75   libtcl7.5.so) u
144a0 6e 64 65 72 0a 53 75 6e 4f 53 20 34 2e 31 2c 20  nder.SunOS 4.1, 
144b0 77 68 65 72 65 20 74 68 65 79 20 64 6f 6e 27 74  where they don't
144c0 20 77 6f 72 6b 20 61 6e 79 77 61 79 2e 20 20 28   work anyway.  (
144d0 4a 4f 29 0a 0a 33 2f 32 32 2f 39 36 20 28 6e 65  JO)..3/22/96 (ne
144e0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
144f0 20 43 20 41 50 49 20 54 63 6c 5f 49 6e 74 65 72   C API Tcl_Inter
14500 70 44 65 6c 65 74 65 64 20 74 68 61 74 20 61 6c  pDeleted that al
14510 6c 6f 77 73 20 65 78 74 65 6e 73 69 6f 6e 0a 77  lows extension.w
14520 72 69 74 65 72 73 20 74 6f 20 64 69 73 63 6f 76  riters to discov
14530 65 72 20 77 68 65 6e 20 61 6e 20 69 6e 74 65 72  er when an inter
14540 70 72 65 74 65 72 20 69 73 20 62 65 69 6e 67 20  preter is being 
14550 64 65 6c 65 74 65 64 2e 20 28 4a 4c 29 0a 0a 33  deleted. (JL)..3
14560 2f 32 32 2f 39 36 20 28 62 75 67 20 66 69 78 29  /22/96 (bug fix)
14570 20 54 68 65 20 73 74 61 6e 64 61 72 64 20 49 4f   The standard IO
14580 20 63 68 61 6e 6e 65 6c 73 20 61 72 65 20 6e 6f   channels are no
14590 77 20 61 64 64 65 64 20 74 6f 20 65 61 63 68 0a  w added to each.
145a0 74 72 75 73 74 65 64 20 69 6e 74 65 72 70 72 65  trusted interpre
145b0 74 65 72 20 61 73 20 73 6f 6f 6e 20 61 73 20 74  ter as soon as t
145c0 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 69  he interpreter i
145d0 73 20 63 72 65 61 74 65 64 2e 20 54 68 69 73 20  s created. This 
145e0 65 6e 73 75 72 65 73 0a 61 67 61 69 6e 73 74 20  ensures.against 
145f0 74 68 65 20 62 75 67 20 77 68 65 72 65 20 61 20  the bug where a 
14600 63 68 69 6c 64 20 77 6f 75 6c 64 20 64 6f 20 49  child would do I
14610 4f 20 62 65 66 6f 72 65 20 74 68 65 20 6d 61 73  O before the mas
14620 74 65 72 20 68 61 64 20 64 6f 6e 65 20 61 6e 79  ter had done any
14630 2c 0a 61 6e 64 20 74 68 65 6e 20 74 68 65 20 63  ,.and then the c
14640 68 69 6c 64 20 69 73 20 64 65 73 74 72 6f 79 65  hild is destroye
14650 64 20 2d 20 74 68 65 20 73 74 61 6e 64 61 72 64  d - the standard
14660 20 49 4f 20 63 68 61 6e 6e 65 6c 73 20 77 6f 75   IO channels wou
14670 6c 64 20 62 65 20 74 68 65 6e 0a 63 6c 6f 73 65  ld be then.close
14680 64 20 61 6e 64 20 74 68 65 20 6d 61 73 74 65 72  d and the master
14690 20 77 6f 75 6c 64 20 62 65 20 75 6e 61 62 6c 65   would be unable
146a0 20 74 6f 20 64 6f 20 61 6e 79 20 49 4f 2e 20 28   to do any IO. (
146b0 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75  JL)..3/22/96 (bu
146c0 67 20 66 69 78 29 20 4d 61 64 65 20 54 63 6c 20  g fix) Made Tcl 
146d0 6d 6f 72 65 20 72 6f 62 75 73 74 20 61 67 61 69  more robust agai
146e0 6e 73 74 20 69 6e 74 65 72 70 72 65 74 65 72 20  nst interpreter 
146f0 64 65 6c 65 74 69 6f 6e 2c 20 62 79 0a 75 73 69  deletion, by.usi
14700 6e 67 20 54 63 6c 5f 50 72 65 73 65 72 76 65 2c  ng Tcl_Preserve,
14710 20 54 63 6c 5f 52 65 6c 65 61 73 65 20 61 6e 64   Tcl_Release and
14720 20 54 63 6c 5f 45 76 65 6e 74 75 61 6c 6c 79 46   Tcl_EventuallyF
14730 72 65 65 20 74 6f 20 73 70 6c 69 74 20 74 68 65  ree to split the
14740 20 70 72 6f 63 65 73 73 0a 6f 66 20 69 6e 74 65   process.of inte
14750 72 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e  rpreter deletion
14760 20 69 6e 74 6f 20 74 77 6f 20 64 69 73 74 69 6e   into two distin
14770 63 74 20 70 68 61 73 65 73 2e 20 41 6c 73 6f 20  ct phases. Also 
14780 77 65 6e 74 20 74 68 72 6f 75 67 68 20 61 6c 6c  went through all
14790 20 6f 66 0a 54 63 6c 20 61 6e 64 20 61 64 64 65   of.Tcl and adde
147a0 64 20 63 61 6c 6c 73 20 74 6f 20 54 63 6c 5f 50  d calls to Tcl_P
147b0 72 65 73 65 72 76 65 20 61 6e 64 20 54 63 6c 5f  reserve and Tcl_
147c0 44 65 6c 65 74 65 20 77 68 65 72 65 20 6e 65 65  Delete where nee
147d0 64 65 64 2e 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f  ded. (JL)..3/22/
147e0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
147f0 65 64 20 73 65 76 65 72 61 6c 20 70 6c 61 63 65  ed several place
14800 73 20 77 68 65 72 65 20 43 20 63 6f 64 65 20 77  s where C code w
14810 61 73 20 72 65 61 64 69 6e 67 20 61 6e 64 20 77  as reading and w
14820 72 69 74 69 6e 67 0a 69 6e 74 6f 20 66 72 65 65  riting.into free
14830 64 20 6d 65 6d 6f 72 79 2c 20 65 73 70 65 63 69  d memory, especi
14840 61 6c 6c 79 20 64 75 72 69 6e 67 20 69 6e 74 65  ally during inte
14850 72 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e  rpreter deletion
14860 2e 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20  . (JL)..3/22/96 
14870 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
14880 76 65 72 79 20 64 65 65 70 20 62 75 67 20 69 6e  very deep bug in
14890 20 54 63 6c 5f 52 65 6c 65 61 73 65 20 74 68 61   Tcl_Release tha
148a0 74 20 63 61 75 73 65 64 20 6d 65 6d 6f 72 79 20  t caused memory 
148b0 74 6f 0a 62 65 20 66 72 65 65 64 20 74 77 69 63  to.be freed twic
148c0 65 20 69 66 20 74 68 65 20 72 65 6c 65 61 73 65  e if the release
148d0 20 63 61 6c 6c 62 61 63 6b 20 64 69 64 20 54 63   callback did Tc
148e0 6c 5f 50 72 65 73 65 72 76 65 20 61 6e 64 20 54  l_Preserve and T
148f0 63 6c 5f 52 65 6c 65 61 73 65 20 6f 6e 0a 74 68  cl_Release on.th
14900 65 20 73 61 6d 65 20 6d 65 6d 6f 72 79 20 61 73  e same memory as
14910 20 74 68 65 20 63 68 75 6e 6b 20 63 75 72 72 65   the chunk curre
14920 6e 74 6c 79 20 62 65 69 6e 67 20 66 72 65 65 64  ntly being freed
14930 2e 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20  . (JL)..3/22/96 
14940 28 62 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65  (bug fix) Remove
14950 64 20 73 65 76 65 72 61 6c 20 6d 65 6d 6f 72 79  d several memory
14960 20 6c 65 61 6b 73 20 74 68 61 74 20 77 6f 75 6c   leaks that woul
14970 64 20 63 61 75 73 65 20 6d 65 6d 6f 72 79 0a 62  d cause memory.b
14980 75 69 6c 64 75 70 20 6f 6e 20 68 61 6c 66 2d 4b  uildup on half-K
14990 20 63 68 75 6e 6b 73 20 69 6e 20 74 68 65 20 67   chunks in the g
149a0 65 6e 65 72 69 63 20 49 4f 20 6c 65 76 65 6c 2e  eneric IO level.
149b0 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28   (JL)..3/22/96 (
149c0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 73  bug fix) Fixed s
149d0 65 76 65 72 61 6c 20 63 6f 72 65 20 64 75 6d 70  everal core dump
149e0 73 20 77 68 69 63 68 20 6f 63 63 75 72 72 65 64  s which occurred
149f0 20 77 68 65 6e 20 6e 65 77 0a 41 73 73 6f 63 44   when new.AssocD
14a00 61 74 61 20 77 61 73 20 62 65 69 6e 67 20 63 72  ata was being cr
14a10 65 61 74 65 64 20 64 75 72 69 6e 67 20 74 68 65  eated during the
14a20 20 63 6c 65 61 6e 75 70 73 20 69 6e 20 69 6e 74   cleanups in int
14a30 65 72 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f  erpreter deletio
14a40 6e 2e 0a 54 68 65 20 73 6f 6c 75 74 69 6f 6e 20  n..The solution 
14a50 69 6d 70 6c 65 6d 65 6e 74 65 64 20 6e 6f 77 20  implemented now 
14a60 69 73 20 74 6f 20 6c 6f 6f 70 20 72 65 70 65 61  is to loop repea
14a70 74 65 64 6c 79 20 6f 76 65 72 20 74 68 65 20 41  tedly over the A
14a80 73 73 6f 63 44 61 74 61 20 75 6e 74 69 6c 0a 6e  ssocData until.n
14a90 6f 6e 65 20 69 73 20 6c 65 66 74 20 74 6f 20 63  one is left to c
14aa0 6c 65 61 6e 20 75 70 2e 20 28 4a 4c 29 0a 0a 33  lean up. (JL)..3
14ab0 2f 32 32 2f 39 36 20 28 62 75 67 20 66 69 78 29  /22/96 (bug fix)
14ac0 20 46 69 78 65 64 20 61 20 62 75 67 20 69 6e 20   Fixed a bug in 
14ad0 65 76 65 6e 74 20 68 61 6e 64 6c 69 6e 67 20 77  event handling w
14ae0 68 69 63 68 20 63 61 75 73 65 64 20 61 6e 20 69  hich caused an i
14af0 6e 66 69 6e 69 74 65 0a 6c 6f 6f 70 20 69 66 20  nfinite.loop if 
14b00 74 68 65 72 65 20 77 65 72 65 20 6e 6f 20 66 69  there were no fi
14b10 6c 65 73 20 62 65 69 6e 67 20 77 61 74 63 68 65  les being watche
14b20 64 20 61 6e 64 20 6e 6f 20 74 69 6d 65 72 2e 20  d and no timer. 
14b30 46 69 78 20 73 75 67 67 65 73 74 65 64 20 62 79  Fix suggested by
14b40 0a 4a 61 6e 20 4e 69 6a 74 6d 61 6e 73 2e 20 28  .Jan Nijtmans. (
14b50 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75  JL)..3/22/96 (bu
14b60 67 20 66 69 78 29 20 46 69 78 65 64 20 54 63 6c  g fix) Fixed Tcl
14b70 5f 43 72 65 61 74 65 43 6f 6d 6d 61 6e 64 2c 20  _CreateCommand, 
14b80 54 63 6c 5f 44 65 6c 65 74 65 43 6f 6d 6d 61 6e  Tcl_DeleteComman
14b90 64 20 74 6f 20 62 65 20 6d 6f 72 65 0a 72 6f 62  d to be more.rob
14ba0 75 73 74 20 69 66 20 74 68 65 20 69 6e 74 65 72  ust if the inter
14bb0 70 72 65 74 65 72 20 69 73 20 62 65 69 6e 67 20  preter is being 
14bc0 64 65 6c 65 74 65 64 2e 20 41 6c 73 6f 20 66 69  deleted. Also fi
14bd0 78 65 64 20 73 65 76 65 72 61 6c 20 6f 72 64 65  xed several orde
14be0 72 0a 64 65 70 65 6e 64 65 6e 63 79 20 62 75 67  r.dependency bug
14bf0 73 20 69 6e 20 54 63 6c 5f 44 65 6c 65 74 65 43  s in Tcl_DeleteC
14c00 6f 6d 6d 61 6e 64 20 77 68 69 63 68 20 6b 69 63  ommand which kic
14c10 6b 65 64 20 69 6e 20 77 68 65 6e 20 61 6e 20 69  ked in when an i
14c20 6e 74 65 72 70 72 65 74 65 72 0a 77 61 73 20 62  nterpreter.was b
14c30 65 69 6e 67 20 64 65 6c 65 74 65 64 2e 20 28 4a  eing deleted. (J
14c40 4c 29 0a 0a 33 2f 32 36 2f 39 36 20 28 62 75 67  L)..3/26/96 (bug
14c50 20 66 69 78 29 20 55 70 6f 6e 20 61 20 22 73 68   fix) Upon a "sh
14c60 6f 72 74 20 72 65 61 64 22 2c 20 74 68 65 20 67  ort read", the g
14c70 65 6e 65 72 69 63 20 63 6f 64 65 20 6e 6f 20 6c  eneric code no l
14c80 6f 6e 67 65 72 20 63 61 6c 6c 73 0a 74 68 65 20  onger calls.the 
14c90 64 72 69 76 65 72 20 66 6f 72 20 6d 6f 72 65 20  driver for more 
14ca0 69 6e 70 75 74 2e 20 44 6f 69 6e 67 20 74 68 69  input. Doing thi
14cb0 73 20 63 61 75 73 65 64 20 62 6c 6f 63 6b 69 6e  s caused blockin
14cc0 67 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f  g on some platfo
14cd0 72 6d 73 0a 65 76 65 6e 20 6f 6e 20 6e 6f 6e 62  rms.even on nonb
14ce0 6c 6f 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 73  locking channels
14cf0 2e 20 42 75 67 20 61 6e 64 20 66 69 78 20 63 6f  . Bug and fix co
14d00 75 72 74 65 73 79 20 4d 61 72 6b 20 52 6f 73 65  urtesy Mark Rose
14d10 6d 61 6e 2e 20 28 4a 4c 29 0a 0a 33 2f 32 36 2f  man. (JL)..3/26/
14d20 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
14d30 20 41 64 64 65 64 20 27 70 61 63 6b 61 67 65 20   Added 'package 
14d40 54 63 6c 74 65 73 74 27 20 77 68 69 63 68 20 69  Tcltest' which i
14d50 73 20 70 72 65 73 65 6e 74 20 6f 6e 6c 79 20 69  s present only i
14d60 6e 0a 74 65 73 74 20 76 65 72 73 69 6f 6e 73 20  n.test versions 
14d70 6f 66 20 54 63 6c 3b 20 74 68 69 73 20 61 6c 6c  of Tcl; this all
14d80 6f 77 73 20 74 68 65 20 74 65 73 74 69 6e 67 20  ows the testing 
14d90 63 6f 6d 6d 61 6e 64 73 20 74 6f 20 62 65 20 6c  commands to be l
14da0 6f 61 64 65 64 20 69 6e 74 6f 0a 6e 65 77 20 69  oaded into.new i
14db0 6e 74 65 72 70 72 65 74 65 72 73 20 62 65 73 69  nterpreters besi
14dc0 64 65 73 20 74 68 65 20 6d 61 69 6e 20 6f 6e 65  des the main one
14dd0 2e 20 28 4a 4c 29 0a 0a 33 2f 32 36 2f 39 36 20  . (JL)..3/26/96 
14de0 28 72 65 73 74 6f 72 65 64 20 66 65 61 74 75 72  (restored featur
14df0 65 29 20 52 65 63 72 65 61 74 65 64 20 74 68 65  e) Recreated the
14e00 20 54 63 6c 5f 47 65 74 4f 70 65 6e 46 69 6c 65   Tcl_GetOpenFile
14e10 20 43 20 41 50 49 2e 20 59 6f 75 20 63 61 6e 0a   C API. You can.
14e20 6e 6f 77 20 67 65 74 20 61 20 46 49 4c 45 20 2a  now get a FILE *
14e30 20 66 72 6f 6d 20 61 20 72 65 67 69 73 74 65 72   from a register
14e40 65 64 20 63 68 61 6e 6e 65 6c 3b 20 55 6e 69 78  ed channel; Unix
14e50 20 6f 6e 6c 79 2e 20 28 4a 4c 29 0a 0a 33 2f 32   only. (JL)..3/2
14e60 37 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 54  7/96 (bug fix) T
14e70 68 65 20 72 65 67 75 6c 61 72 20 65 78 70 72 65  he regular expre
14e80 73 73 69 6f 6e 20 63 6f 64 65 20 64 69 64 20 6e  ssion code did n
14e90 6f 74 20 73 75 70 70 6f 72 74 20 6d 6f 72 65 0a  ot support more.
14ea0 74 68 61 6e 20 39 20 73 75 62 65 78 70 72 65 73  than 9 subexpres
14eb0 73 69 6f 6e 73 2e 20 20 49 74 20 6e 6f 77 20 73  sions.  It now s
14ec0 75 70 70 6f 72 74 73 20 75 70 20 74 6f 20 32 30  upports up to 20
14ed0 2e 20 28 53 53 29 0a 0a 34 2f 31 2f 39 36 20 28  . (SS)..4/1/96 (
14ee0 62 75 67 20 66 69 78 65 73 29 20 54 68 65 20 43  bug fixes) The C
14ef0 48 41 4e 4e 45 4c 5f 42 4c 4f 43 4b 45 44 20 62  HANNEL_BLOCKED b
14f00 69 74 20 77 61 73 20 62 65 69 6e 67 20 6c 65 66  it was being lef
14f10 74 20 6f 6e 20 6f 6e 20 61 20 73 68 6f 72 74 0a  t on on a short.
14f20 72 65 61 64 2c 20 73 6f 20 74 68 61 74 20 66 69  read, so that fi
14f30 6c 65 65 76 65 6e 74 73 20 77 6f 75 6c 64 6e 27  leevents wouldn'
14f40 74 20 66 69 72 65 20 63 6f 72 72 65 63 74 6c 79  t fire correctly
14f50 2e 20 42 75 67 20 72 65 70 6f 72 74 65 64 20 62  . Bug reported b
14f60 79 20 4d 61 72 6b 0a 52 6f 73 65 6d 61 6e 2e 28  y Mark.Roseman.(
14f70 4a 4c 2c 20 52 4a 29 0a 0a 34 2f 31 2f 39 36 20  JL, RJ)..4/1/96 
14f80 28 62 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20  (bug fix) Moved 
14f90 54 63 6c 5f 52 65 6c 65 61 73 65 20 74 6f 20 6d  Tcl_Release to m
14fa0 61 74 63 68 20 54 63 6c 5f 50 72 65 73 65 72 76  atch Tcl_Preserv
14fb0 65 20 65 78 61 63 74 6c 79 2c 20 69 6e 0a 74 63  e exactly, in.tc
14fc0 6c 49 6e 74 65 72 70 2e 63 3b 20 70 72 65 76 69  lInterp.c; previ
14fd0 6f 75 73 6c 79 20 69 6e 74 65 72 70 72 65 74 65  ously interprete
14fe0 72 73 20 77 65 72 65 20 62 65 69 6e 67 20 66 72  rs were being fr
14ff0 65 65 64 20 6f 6e 6c 79 20 63 6f 6e 64 69 74 69  eed only conditi
15000 6f 6e 61 6c 6c 79 0a 61 6e 64 20 73 6f 6d 65 74  onally.and somet
15010 69 6d 65 73 20 6e 6f 74 20 61 74 20 61 6c 6c 2e  imes not at all.
15020 20 28 4a 4c 29 0a 0a 34 2f 31 2f 39 36 20 28 62   (JL)..4/1/96 (b
15030 75 67 20 66 69 78 29 20 46 69 78 65 64 20 65 72  ug fix) Fixed er
15040 72 6f 72 20 72 65 70 6f 72 74 69 6e 67 20 69 6e  ror reporting in
15050 20 73 6c 61 76 65 20 69 6e 74 65 72 70 72 65 74   slave interpret
15060 65 72 73 20 77 68 65 6e 20 74 68 65 0a 65 72 72  ers when the.err
15070 6f 72 20 6d 65 73 73 61 67 65 20 77 61 73 20 62  or message was b
15080 65 69 6e 67 20 67 65 6e 65 72 61 74 65 64 20 64  eing generated d
15090 69 72 65 63 74 6c 79 20 62 79 20 43 20 63 6f 64  irectly by C cod
150a0 65 2e 20 46 69 78 20 73 75 67 67 65 73 74 65 64  e. Fix suggested
150b0 20 62 79 0a 56 69 6b 74 6f 72 20 44 75 6b 68 6f   by.Viktor Dukho
150c0 76 6e 69 20 6f 66 20 45 53 4d 2e 20 28 4a 4c 29  vni of ESM. (JL)
150d0 0a 0a 34 2f 32 2f 39 36 20 28 62 75 67 20 66 69  ..4/2/96 (bug fi
150e0 78 65 73 29 20 46 69 78 65 64 20 61 20 73 65 72  xes) Fixed a ser
150f0 69 65 73 20 6f 66 20 62 75 67 73 20 69 6e 20 57  ies of bugs in W
15100 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73 20 74  indows sockets t
15110 68 61 74 20 63 61 75 73 65 64 0a 65 76 65 6e 74  hat caused.event
15120 73 20 74 6f 20 76 61 72 69 6f 75 73 6c 79 20 67  s to variously g
15130 65 74 20 6c 6f 73 74 2c 20 74 6f 20 67 65 74 20  et lost, to get 
15140 73 65 6e 74 20 6d 75 6c 74 69 70 6c 65 20 74 69  sent multiple ti
15150 6d 65 73 2c 20 6f 72 20 74 6f 20 62 65 20 69 67  mes, or to be ig
15160 6e 6f 72 65 64 0a 62 79 20 74 68 65 20 64 72 69  nored.by the dri
15170 76 65 72 2e 20 54 68 65 20 6d 61 6e 69 66 65 73  ver. The manifes
15180 74 61 74 69 6f 6e 20 77 61 73 20 62 6c 6f 63 6b  tation was block
15190 69 6e 67 20 69 66 20 74 68 65 20 63 68 61 6e 6e  ing if the chann
151a0 65 6c 20 69 73 20 62 6c 6f 63 6b 69 6e 67 2c 0a  el is blocking,.
151b0 61 6e 64 20 65 69 74 68 65 72 20 67 65 74 74 69  and either getti
151c0 6e 67 20 45 41 47 41 49 4e 20 6f 72 20 69 6e 66  ng EAGAIN or inf
151d0 69 6e 69 74 65 20 6c 6f 6f 70 73 20 69 66 20 74  inite loops if t
151e0 68 65 20 63 68 61 6e 6e 65 6c 20 69 73 20 6e 6f  he channel is no
151f0 6e 62 6c 6f 63 6b 69 6e 67 2e 0a 54 68 69 73 20  nblocking..This 
15200 73 65 72 69 65 73 20 6f 66 20 62 75 67 73 20 77  series of bugs w
15210 61 73 20 66 6f 75 6e 64 20 62 79 20 49 61 6e 20  as found by Ian 
15220 57 61 6c 6c 69 73 20 6f 66 20 43 69 73 63 6f 2e  Wallis of Cisco.
15230 20 4e 6f 77 20 61 6c 6c 20 74 65 73 74 73 20 28   Now all tests (
15240 61 6c 73 6f 0a 74 68 6f 73 65 20 74 68 61 74 20  also.those that 
15250 77 65 72 65 20 70 72 65 76 69 6f 75 73 6c 79 20  were previously 
15260 63 6f 6d 6d 65 6e 74 65 64 20 6f 75 74 29 20 69  commented out) i
15270 6e 20 73 6f 63 6b 65 74 2e 74 65 73 74 20 70 61  n socket.test pa
15280 73 73 2e 20 20 28 4a 4c 2c 20 53 53 29 0a 0a 34  ss.  (JL, SS)..4
15290 2f 32 2f 39 36 20 28 66 65 61 74 75 72 65 20 63  /2/96 (feature c
152a0 68 61 6e 67 65 2f 62 75 67 20 66 69 78 29 20 45  hange/bug fix) E
152b0 6c 69 6d 69 6e 61 74 65 64 20 6e 65 74 77 6f 72  liminated networ
152c0 6b 20 6e 61 6d 65 20 73 75 70 70 6f 72 74 20 69  k name support i
152d0 6e 0a 66 61 76 6f 72 20 6f 66 20 62 65 74 74 65  n.favor of bette
152e0 72 20 6e 61 74 69 76 65 20 6e 61 6d 65 20 73 75  r native name su
152f0 70 70 6f 72 74 2e 20 20 41 64 64 65 64 20 22 66  pport.  Added "f
15300 69 6c 65 20 73 70 6c 69 74 22 2c 20 22 66 69 6c  ile split", "fil
15310 65 20 6a 6f 69 6e 22 2c 0a 61 6e 64 20 22 66 69  e join",.and "fi
15320 6c 65 20 70 61 74 68 74 79 70 65 22 20 63 6f 6d  le pathtype" com
15330 6d 61 6e 64 73 2e 20 20 53 65 65 20 74 68 65 20  mands.  See the 
15340 22 66 69 6c 65 22 20 6d 61 6e 20 70 61 67 65 20  "file" man page 
15350 66 6f 72 20 6d 6f 72 65 0a 64 65 74 61 69 6c 73  for more.details
15360 2e 20 28 53 53 29 0a 2a 2a 2a 20 49 4e 43 4f 4d  . (SS).*** INCOM
15370 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
15380 54 63 6c 20 37 2e 35 62 33 2c 20 62 75 74 20 6e  Tcl 7.5b3, but n
15390 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20  ot with Tcl 7.4 
153a0 2a 2a 2a 0a 0a 34 2f 32 2f 39 36 20 28 62 75 67  ***..4/2/96 (bug
153b0 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 69 6d   fix) Changed im
153c0 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20  plementation of 
153d0 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 73 6f 20  auto_mkindex so 
153e0 74 63 6c 49 6e 64 65 78 0a 66 69 6c 65 73 20 77  tclIndex.files w
153f0 69 6c 6c 20 70 72 6f 70 65 72 6c 79 20 68 61 6e  ill properly han
15400 64 6c 65 20 70 61 74 68 20 6e 61 6d 65 73 20 69  dle path names i
15410 6e 20 61 20 63 72 6f 73 73 20 70 6c 61 74 66 6f  n a cross platfo
15420 72 6d 20 63 6f 6e 74 65 78 74 2e 20 28 53 53 29  rm context. (SS)
15430 0a 0a 34 2f 35 2f 39 36 20 28 62 75 67 20 66 69  ..4/5/96 (bug fi
15440 78 29 20 46 69 78 65 64 20 54 63 6c 5f 52 65 61  x) Fixed Tcl_Rea
15450 64 43 6d 64 20 74 6f 20 75 73 65 20 74 68 65 20  dCmd to use the 
15460 63 68 61 6e 6e 65 6c 20 62 75 66 66 65 72 20 73  channel buffer s
15470 69 7a 65 20 61 73 20 74 68 65 0a 63 68 75 6e 6b  ize as the.chunk
15480 20 73 69 7a 65 20 69 74 20 72 65 61 64 73 2c 20   size it reads, 
15490 69 6e 73 74 65 61 64 20 6f 66 20 61 20 66 69 78  instead of a fix
154a0 65 64 20 34 4b 20 73 69 7a 65 2e 20 54 68 75 73  ed 4K size. Thus
154b0 2c 20 6f 6e 20 6c 61 72 67 65 20 72 65 61 64 73  , on large reads
154c0 2c 20 74 68 65 0a 75 73 65 72 20 63 61 6e 20 73  , the.user can s
154d0 65 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 62  et the channel b
154e0 75 66 66 65 72 20 73 69 7a 65 20 74 6f 20 61 20  uffer size to a 
154f0 6c 61 72 67 65 20 73 69 7a 65 20 61 6e 64 20 74  large size and t
15500 68 65 20 72 65 61 64 20 77 69 6c 6c 0a 6f 63 63  he read will.occ
15510 75 72 20 6f 72 64 65 72 73 20 6f 66 20 6d 61 67  ur orders of mag
15520 6e 69 74 75 64 65 20 66 61 73 74 65 72 2e 20 46  nitude faster. F
15530 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 61  or example, on a
15540 20 32 4d 42 20 66 69 6c 65 2c 20 72 65 61 64 69   2MB file, readi
15550 6e 67 20 69 6e 20 34 4b 0a 63 68 75 6e 6b 73 20  ng in 4K.chunks 
15560 74 6f 6f 6b 20 33 34 20 73 65 63 6f 6e 64 73 2c  took 34 seconds,
15570 20 77 68 69 6c 65 20 72 65 61 64 69 6e 67 20 69   while reading i
15580 6e 20 31 4d 42 20 63 68 75 6e 6b 73 20 74 6f 6f  n 1MB chunks too
15590 6b 20 31 2e 35 20 73 65 63 6f 6e 64 73 20 28 6f  k 1.5 seconds (o
155a0 6e 20 61 0a 53 53 2d 32 30 29 2e 20 50 72 6f 62  n a.SS-20). Prob
155b0 6c 65 6d 20 69 64 65 6e 74 69 66 69 65 64 20 61  lem identified a
155c0 6e 64 20 66 69 78 20 73 75 67 67 65 73 74 65 64  nd fix suggested
155d0 20 62 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f   by John Haxby o
155e0 66 20 48 50 2e 20 28 4a 4c 29 0a 0a 34 2f 35 2f  f HP. (JL)..4/5/
155f0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
15600 65 64 20 73 6f 63 6b 65 74 20 63 72 65 61 74 69  ed socket creati
15610 6f 6e 20 63 6f 64 65 20 74 6f 20 69 6e 76 6f 6b  on code to invok
15620 65 20 67 65 74 68 6f 73 74 62 79 6e 61 6d 65 20  e gethostbyname 
15630 6f 6e 6c 79 20 69 66 0a 69 6e 65 74 5f 61 64 64  only if.inet_add
15640 72 20 66 61 69 6c 65 64 20 28 76 65 72 79 20 75  r failed (very u
15650 6e 6c 69 6b 65 6c 79 29 2e 20 42 65 66 6f 72 65  nlikely). Before
15660 20 74 68 69 73 20 63 68 61 6e 67 65 20 74 68 65   this change the
15670 20 6f 72 64 65 72 20 77 61 73 20 72 65 76 65 72   order was rever
15680 73 65 64 0a 61 6e 64 20 74 68 69 73 20 6d 61 64  sed.and this mad
15690 65 20 74 68 69 6e 67 73 20 6d 75 63 68 20 73 6c  e things much sl
156a0 6f 77 65 72 20 74 68 61 6e 20 74 68 65 79 20 6e  ower than they n
156b0 65 65 64 65 64 20 74 6f 20 62 65 20 28 67 65 74  eeded to be (get
156c0 68 6f 73 74 62 79 6e 61 6d 65 0a 67 65 6e 65 72  hostbyname.gener
156d0 61 6c 6c 79 20 72 65 71 75 69 72 65 73 20 61 6e  ally requires an
156e0 20 52 50 43 2c 20 77 68 69 63 68 20 69 73 20 73   RPC, which is s
156f0 6c 6f 77 29 2e 20 50 72 6f 62 6c 65 6d 20 69 64  low). Problem id
15700 65 6e 74 69 66 69 65 64 20 61 6e 64 20 66 69 78  entified and fix
15710 0a 73 75 67 67 65 73 74 65 64 20 62 79 20 4a 6f  .suggested by Jo
15720 68 6e 20 4c 6f 76 65 72 73 6f 20 6f 66 20 4f 53  hn Loverso of OS
15730 46 2e 20 28 4a 4c 29 0a 0a 34 2f 39 2f 39 36 20  F. (JL)..4/9/96 
15740 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
15750 20 4d 6f 64 69 66 69 65 64 20 22 61 75 74 6f 22   Modified "auto"
15760 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64   translation mod
15770 65 20 73 6f 20 74 68 61 74 20 69 74 0a 72 65 63  e so that it.rec
15780 6f 67 6e 69 7a 65 73 20 61 6e 79 20 6f 66 20 22  ognizes any of "
15790 5c 6e 22 2c 20 22 5c 72 22 20 61 6e 64 20 22 5c  \n", "\r" and "\
157a0 72 5c 6e 22 20 69 6e 20 69 6e 70 75 74 20 61 73  r\n" in input as
157b0 20 65 6e 64 20 6f 66 20 6c 69 6e 65 2c 20 73 6f   end of line, so
157c0 0a 74 68 61 74 20 61 20 66 69 6c 65 20 63 61 6e  .that a file can
157d0 20 68 61 76 65 20 6d 69 78 65 64 20 65 6e 64 2d   have mixed end-
157e0 6f 66 2d 6c 69 6e 65 20 73 65 71 75 65 6e 63 65  of-line sequence
157f0 73 2e 20 49 74 20 6e 6f 77 20 6f 75 74 70 75 74  s. It now output
15800 73 0a 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 73  s.the platform s
15810 70 65 63 69 66 69 63 20 65 6e 64 20 6f 66 20 6c  pecific end of l
15820 69 6e 65 20 73 65 71 75 65 6e 63 65 20 6f 6e 20  ine sequence on 
15830 65 61 63 68 20 70 6c 61 74 66 6f 72 6d 20 66 6f  each platform fo
15840 72 20 66 69 6c 65 73 20 61 6e 64 0a 70 69 70 65  r files and.pipe
15850 73 2c 20 61 6e 64 20 66 6f 72 20 73 6f 63 6b 65  s, and for socke
15860 74 73 20 69 74 20 70 72 6f 64 75 63 65 73 20 63  ts it produces c
15870 72 6c 66 20 69 6e 20 6f 75 74 70 75 74 20 6f 6e  rlf in output on
15880 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 20   all platforms. 
15890 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41  (JL).*** INCOMPA
158a0 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
158b0 6c 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74  l 7.5b3, but not
158c0 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
158d0 2a 0a 0a 34 2f 31 31 2f 39 36 20 28 6e 65 77 20  *..4/11/96 (new 
158e0 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 2d  feature) Added -
158f0 65 6f 66 63 68 61 72 20 6f 70 74 69 6f 6e 20 74  eofchar option t
15900 6f 20 54 63 6c 5f 53 65 74 43 68 61 6e 6e 65 6c  o Tcl_SetChannel
15910 4f 70 74 69 6f 6e 20 74 6f 20 61 6c 6c 6f 77 0a  Option to allow.
15920 73 65 74 74 69 6e 67 20 6f 66 20 61 6e 20 65 6e  setting of an en
15930 64 20 6f 66 20 66 69 6c 65 20 63 68 61 72 61 63  d of file charac
15940 74 65 72 20 66 6f 72 20 69 6e 70 75 74 20 61 6e  ter for input an
15950 64 20 6f 75 74 70 75 74 2e 20 49 66 20 61 6e 20  d output. If an 
15960 69 6e 70 75 74 20 65 6f 66 0a 63 68 61 72 20 69  input eof.char i
15970 73 20 73 65 74 2c 20 69 74 20 69 73 20 72 65 63  s set, it is rec
15980 6f 67 6e 69 7a 65 64 20 61 73 20 45 4f 46 20 61  ognized as EOF a
15990 6e 64 20 66 75 72 74 68 65 72 20 69 6e 70 75 74  nd further input
159a0 20 66 72 6f 6d 20 74 68 65 20 63 68 61 6e 6e 65   from the channe
159b0 6c 20 69 73 0a 6e 6f 74 20 70 72 65 73 65 6e 74  l is.not present
159c0 65 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72  ed to the caller
159d0 2e 20 49 66 20 61 6e 20 6f 75 74 70 75 74 20 65  . If an output e
159e0 6f 66 20 63 68 61 72 20 69 73 20 73 65 74 2c 20  of char is set, 
159f0 6f 6e 20 6f 75 74 70 75 74 2c 20 74 68 61 74 0a  on output, that.
15a00 62 79 74 65 20 69 73 20 61 70 70 65 6e 64 65 64  byte is appended
15a10 20 74 6f 20 74 68 65 20 63 68 61 6e 6e 65 6c 20   to the channel 
15a20 77 68 65 6e 20 69 74 20 69 73 20 63 6c 6f 73 65  when it is close
15a30 64 2e 20 4f 6e 20 55 6e 69 78 20 61 6e 64 20 4d  d. On Unix and M
15a40 61 63 69 6e 74 6f 73 68 2c 0a 61 6c 6c 20 63 68  acintosh,.all ch
15a50 61 6e 6e 65 6c 73 20 73 74 61 72 74 20 77 69 74  annels start wit
15a60 68 20 6e 6f 20 65 6f 66 20 63 68 61 72 20 73 65  h no eof char se
15a70 74 20 66 6f 72 20 69 6e 70 75 74 20 6f 72 20 6f  t for input or o
15a80 75 74 70 75 74 2e 20 4f 6e 20 57 69 6e 64 6f 77  utput. On Window
15a90 73 2c 0a 66 69 6c 65 73 20 61 6e 64 20 70 69 70  s,.files and pip
15aa0 65 73 20 73 74 61 72 74 20 77 69 74 68 20 69 6e  es start with in
15ab0 70 75 74 20 61 6e 64 20 6f 75 74 70 75 74 20 65  put and output e
15ac0 6f 66 20 63 68 61 72 73 20 73 65 74 20 74 6f 20  of chars set to 
15ad0 43 72 6c 74 2d 5a 20 28 61 73 63 69 69 0a 32 36  Crlt-Z (ascii.26
15ae0 29 2c 20 61 6e 64 20 73 6f 63 6b 65 74 73 20 73  ), and sockets s
15af0 74 61 72 74 20 77 69 74 68 20 6e 6f 20 69 6e 70  tart with no inp
15b00 75 74 20 6f 72 20 6f 75 74 70 75 74 20 65 6f 66  ut or output eof
15b10 20 63 68 61 72 2e 20 28 4a 4c 29 0a 2a 2a 2a 20   char. (JL).*** 
15b20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
15b30 77 69 74 68 20 54 63 6c 20 37 2e 35 62 33 2c 20  with Tcl 7.5b3, 
15b40 62 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c  but not with Tcl
15b50 20 37 2e 34 20 2a 2a 2a 0a 0a 34 2f 31 37 2f 39   7.4 ***..4/17/9
15b60 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
15b70 64 20 73 65 72 69 65 73 20 6f 66 20 62 75 67 73  d series of bugs
15b80 20 77 69 74 68 20 68 61 6e 64 6c 69 6e 67 20 6f   with handling o
15b90 66 20 63 72 6c 66 20 73 65 71 75 65 6e 63 65 20  f crlf sequence 
15ba0 73 70 6c 69 74 0a 61 63 72 6f 73 73 20 62 75 66  split.across buf
15bb0 66 65 72 20 62 6f 75 6e 64 61 72 69 65 73 20 69  fer boundaries i
15bc0 6e 20 69 6e 70 75 74 2c 20 69 6e 20 41 55 54 4f  n input, in AUTO
15bd0 20 6d 6f 64 65 2e 20 28 4a 4c 2c 20 42 57 29 0a   mode. (JL, BW).
15be0 0a 34 2f 31 37 2f 39 36 20 28 74 65 73 74 20 73  .4/17/96 (test s
15bf0 75 69 74 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74  uite improvement
15c00 29 20 46 69 78 65 64 20 74 65 73 74 20 73 75 69  ) Fixed test sui
15c10 74 65 20 73 6f 20 74 68 61 74 20 74 65 73 74 73  te so that tests
15c20 20 74 68 61 74 0a 64 65 70 65 6e 64 20 6f 6e 20   that.depend on 
15c30 74 68 65 20 61 76 61 69 6c 61 62 69 6c 69 74 79  the availability
15c40 20 6f 66 20 55 6e 69 78 20 63 6f 6d 6d 61 6e 64   of Unix command
15c50 73 20 73 75 63 68 20 61 73 20 65 63 68 6f 2c 20  s such as echo, 
15c60 63 61 74 20 61 6e 64 20 6f 74 68 65 72 73 0a 61  cat and others.a
15c70 72 65 20 6e 6f 74 20 72 75 6e 20 69 66 20 74 68  re not run if th
15c80 65 73 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65  ese commands are
15c90 20 6e 6f 74 20 70 72 65 73 65 6e 74 2e 20 28 4a   not present. (J
15ca0 4c 29 0a 0a 34 2f 31 37 2f 39 36 20 28 74 65 73  L)..4/17/96 (tes
15cb0 74 20 73 75 69 74 65 20 69 6d 70 72 6f 76 65 6d  t suite improvem
15cc0 65 6e 74 29 20 54 68 65 20 73 6f 63 6b 65 74 20  ent) The socket 
15cd0 74 65 73 74 20 6e 6f 77 20 61 75 74 6f 6d 61 74  test now automat
15ce0 69 63 61 6c 6c 79 20 73 74 61 72 74 73 2c 0a 6f  ically starts,.o
15cf0 6e 20 70 6c 61 74 66 6f 72 6d 73 74 20 74 68 61  n platformst tha
15d00 74 20 73 75 70 70 6f 72 74 20 65 78 65 63 2c 20  t support exec, 
15d10 61 20 73 65 70 61 72 61 74 65 20 70 72 6f 63 65  a separate proce
15d20 73 73 20 66 6f 72 20 72 65 6d 6f 74 65 20 74 65  ss for remote te
15d30 73 74 73 69 6e 67 2e 20 28 4a 4c 29 0a 0a 2d 2d  stsing. (JL)..--
15d40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
15d50 52 65 6c 65 61 73 65 64 20 37 2e 35 2c 20 34 2f  Released 7.5, 4/
15d60 32 31 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  21/96 ----------
15d70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 35  -------------..5
15d80 2f 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /1/96 (bug fix) 
15d90 22 66 69 6c 65 20 74 61 69 6c 20 7e 22 20 64 69  "file tail ~" di
15da0 64 20 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20  d not correctly 
15db0 72 65 74 75 72 6e 20 74 68 65 20 74 61 69 6c 0a  return the tail.
15dc0 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 75  portion of the u
15dd0 73 65 72 27 73 20 68 6f 6d 65 20 64 69 72 65 63  ser's home direc
15de0 74 6f 72 79 2e 20 28 53 53 29 0a 0a 35 2f 31 2f  tory. (SS)..5/1/
15df0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
15e00 65 64 20 62 75 67 20 69 6e 20 54 63 6c 47 65 74  ed bug in TclGet
15e10 45 6e 76 20 77 68 65 72 65 20 69 74 20 64 69 64  Env where it did
15e20 6e 27 74 20 6c 6f 6f 6b 75 70 20 65 6e 76 69 72  n't lookup envir
15e30 6f 6e 6d 65 6e 74 0a 76 61 72 69 61 62 6c 65 73  onment.variables
15e40 20 63 6f 72 72 65 63 74 6c 79 3a 20 20 63 6f 75   correctly:  cou
15e50 6c 64 20 63 6f 6e 66 75 73 65 20 22 48 22 20 61  ld confuse "H" a
15e60 6e 64 20 22 48 4f 4d 45 22 2c 20 66 6f 72 20 65  nd "HOME", for e
15e70 78 61 6d 70 6c 65 2e 20 20 28 4a 4f 29 0a 0a 35  xample.  (JO)..5
15e80 2f 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /1/96 (bug fix) 
15e90 43 68 61 6e 67 65 64 20 74 6f 20 69 6e 73 74 61  Changed to insta
15ea0 6c 6c 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20  ll tclConfig.sh 
15eb0 75 6e 64 65 72 20 22 6d 61 6b 65 20 69 6e 73 74  under "make inst
15ec0 61 6c 6c 2d 62 69 6e 61 72 69 65 73 22 2c 0a 6e  all-binaries",.n
15ed0 6f 74 20 22 6d 61 6b 65 20 69 6e 73 74 61 6c 6c  ot "make install
15ee0 2d 6c 69 62 72 61 72 69 65 73 22 2e 20 20 28 4a  -libraries".  (J
15ef0 4f 29 0a 0a 35 2f 32 2f 39 36 20 28 62 75 67 20  O)..5/2/96 (bug 
15f00 66 69 78 29 20 43 68 61 6e 67 65 64 20 70 6b 67  fix) Changed pkg
15f10 5f 6d 6b 49 6e 64 65 78 20 6e 6f 74 20 74 6f 20  _mkIndex not to 
15f20 61 74 74 65 6d 70 74 20 74 6f 20 22 6c 6f 61 64  attempt to "load
15f30 22 20 61 20 66 69 6c 65 20 75 6e 6c 65 73 73 0a  " a file unless.
15f40 69 74 20 68 61 73 20 74 68 65 20 73 74 61 6e 64  it has the stand
15f50 61 72 64 20 73 68 61 72 65 64 20 6c 69 62 72 61  ard shared libra
15f60 72 79 20 65 78 74 65 6e 73 69 6f 6e 2e 20 20 4f  ry extension.  O
15f70 6e 20 53 75 6e 4f 53 2c 20 61 74 74 65 6d 70 74  n SunOS, attempt
15f80 73 20 74 6f 20 6c 6f 61 64 0a 54 63 6c 20 73 63  s to load.Tcl sc
15f90 72 69 70 74 73 20 63 61 75 73 65 20 74 68 65 20  ripts cause the 
15fa0 77 68 6f 6c 65 20 61 70 70 6c 69 63 61 74 69 6f  whole applicatio
15fb0 6e 20 74 6f 20 62 65 20 61 62 6f 72 74 65 64 20  n to be aborted 
15fc0 28 74 68 65 72 65 27 73 20 6e 6f 20 77 61 79 20  (there's no way 
15fd0 74 6f 0a 67 65 74 20 74 68 65 20 65 72 72 6f 72  to.get the error
15fe0 20 62 61 63 6b 20 69 6e 74 6f 20 54 63 6c 29 2e   back into Tcl).
15ff0 20 20 28 4a 4f 29 0a 0a 35 2f 37 2f 39 36 20 28    (JO)..5/7/96 (
16000 62 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 69  bug fix) Moved i
16010 6e 69 74 53 63 72 69 70 74 20 69 6e 20 74 63 6c  nitScript in tcl
16020 55 6e 69 78 49 6e 69 74 2e 63 20 74 6f 20 77 72  UnixInit.c to wr
16030 69 74 61 62 6c 65 20 6d 65 6d 6f 72 79 20 74 6f  itable memory to
16040 0a 61 76 6f 69 64 20 70 6f 74 65 6e 74 69 61 6c  .avoid potential
16050 20 63 6f 72 65 20 64 75 6d 70 73 2e 20 28 4a 4f   core dumps. (JO
16060 29 0a 0a 35 2f 37 2f 39 36 20 28 62 75 67 20 66  )..5/7/96 (bug f
16070 69 78 29 20 41 75 74 6f 5f 72 65 73 65 74 20 70  ix) Auto_reset p
16080 72 6f 63 65 64 75 72 65 20 77 61 73 20 72 65 6d  rocedure was rem
16090 6f 76 69 6e 67 20 70 72 6f 63 65 64 75 72 65 20  oving procedure 
160a0 66 72 6f 6d 20 69 6e 69 74 2e 74 63 6c 2c 0a 73  from init.tcl,.s
160b0 75 63 68 20 61 73 20 70 6b 67 5f 6d 6b 49 6e 64  uch as pkg_mkInd
160c0 65 78 2e 20 20 28 4a 4f 29 0a 0a 35 2f 37 2f 39  ex.  (JO)..5/7/9
160d0 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
160e0 64 20 63 61 73 74 20 6f 6e 20 73 6f 63 6b 65 74  d cast on socket
160f0 20 61 64 64 72 65 73 73 20 72 65 73 6f 6c 75 74   address resolut
16100 69 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 77 6f  ion code that.wo
16110 75 6c 64 20 63 61 75 73 65 20 61 20 66 61 69 6c  uld cause a fail
16120 75 72 65 20 74 6f 20 63 6f 6e 6e 65 63 74 20 6f  ure to connect o
16130 6e 20 44 65 63 20 41 6c 70 68 61 73 2e 20 28 4a  n Dec Alphas. (J
16140 4c 29 0a 0a 35 2f 37 2f 39 36 20 28 62 75 67 20  L)..5/7/96 (bug 
16150 66 69 78 29 20 41 64 64 65 64 20 22 74 69 6d 65  fix) Added "time
16160 22 2c 20 22 73 75 62 73 74 22 20 61 6e 64 20 22  ", "subst" and "
16170 66 69 6c 65 65 76 65 6e 74 22 20 63 6f 6d 6d 61  fileevent" comma
16180 6e 64 73 20 74 6f 20 73 65 74 20 6f 66 0a 63 6f  nds to set of.co
16190 6d 6d 61 6e 64 73 20 61 76 61 69 6c 61 62 6c 65  mmands available
161a0 20 69 6e 20 61 20 73 61 66 65 20 69 6e 74 65 72   in a safe inter
161b0 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f  preter. (JL)..5/
161c0 31 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  13/96 (bug fix) 
161d0 50 72 65 76 65 6e 74 69 6e 67 20 4f 53 20 6c 65  Preventing OS le
161e0 76 65 6c 20 68 61 6e 64 6c 65 73 20 66 6f 72 20  vel handles for 
161f0 73 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e  stdin, stdout an
16200 64 20 73 74 64 65 72 72 0a 66 72 6f 6d 20 62 65  d stderr.from be
16210 69 6e 67 20 69 6d 70 6c 69 63 69 74 6c 79 20 63  ing implicitly c
16220 6c 6f 73 65 64 20 77 68 65 6e 20 74 68 65 20 6c  losed when the l
16230 61 73 74 20 72 65 66 65 72 65 6e 63 65 20 74 6f  ast reference to
16240 20 74 68 65 20 73 74 61 6e 64 61 72 64 0a 63 68   the standard.ch
16250 61 6e 6e 65 6c 20 63 6f 6e 74 61 69 6e 69 6e 67  annel containing
16260 20 74 68 61 74 20 68 61 6e 64 6c 65 20 69 73 20   that handle is 
16270 64 69 73 63 61 72 64 65 64 20 77 68 65 6e 20 61  discarded when a
16280 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 73  n interpreter is
16290 20 64 65 6c 65 74 65 64 2e 0a 45 78 70 6c 69 63   deleted..Explic
162a0 69 74 6c 79 20 63 6c 6f 73 69 6e 67 20 73 74 61  itly closing sta
162b0 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 73 20 62  ndard channels b
162c0 79 20 75 73 69 6e 67 20 22 63 6c 6f 73 65 22 20  y using "close" 
162d0 73 74 69 6c 6c 20 77 6f 72 6b 73 2e 20 28 4a 4c  still works. (JL
162e0 29 0a 0a 35 2f 32 31 2f 39 36 20 28 62 75 67 20  )..5/21/96 (bug 
162f0 66 69 78 29 20 44 6f 20 6e 6f 74 20 63 72 65 61  fix) Do not crea
16300 74 65 20 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20  te channels for 
16310 73 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e  stdin, stdout an
16320 64 20 73 74 64 65 72 72 20 6f 6e 0a 55 6e 69 78  d stderr on.Unix
16330 20 69 66 20 74 68 65 20 64 65 76 69 63 65 73 20   if the devices 
16340 61 72 65 20 63 6c 6f 73 65 64 2e 20 54 68 69 73  are closed. This
16350 20 70 72 65 76 65 6e 74 73 20 61 20 64 75 70 6c   prevents a dupl
16360 69 63 61 74 65 20 63 68 61 6e 6e 65 6c 20 6e 61  icate channel na
16370 6d 65 0a 70 61 6e 69 63 20 6c 61 74 65 72 20 6f  me.panic later o
16380 6e 20 77 68 65 6e 20 74 68 65 20 66 64 20 69 73  n when the fd is
16390 20 75 73 65 64 20 74 6f 20 6f 70 65 6e 20 61 20   used to open a 
163a0 63 68 61 6e 6e 65 6c 20 61 6e 64 20 74 68 65 20  channel and the 
163b0 63 68 61 6e 6e 65 6c 20 69 73 0a 72 65 67 69 73  channel is.regis
163c0 74 65 72 65 64 20 69 6e 20 61 6e 20 69 6e 74 65  tered in an inte
163d0 72 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35  rpreter. (JL)..5
163e0 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29  /23/96 (bug fix)
163f0 20 46 69 78 65 64 20 62 75 67 20 74 68 61 74 20   Fixed bug that 
16400 70 72 65 76 65 6e 74 65 64 20 74 68 65 20 75 73  prevented the us
16410 65 20 6f 66 20 73 74 61 6e 64 61 72 64 20 63 68  e of standard ch
16420 61 6e 6e 65 6c 73 20 69 6e 0a 69 6e 74 65 72 70  annels in.interp
16430 72 65 74 65 72 73 20 63 72 65 61 74 65 64 20 61  reters created a
16440 66 74 65 72 20 74 68 65 20 6c 61 73 74 20 69 6e  fter the last in
16450 74 65 72 70 72 65 74 65 72 20 77 61 73 20 64 65  terpreter was de
16460 73 74 72 6f 79 65 64 2e 20 49 6e 20 74 68 65 20  stroyed. In the 
16470 73 65 71 75 65 6e 63 65 0a 0a 09 69 6e 74 65 72  sequence...inter
16480 70 20 3d 20 54 63 6c 5f 43 72 65 61 74 65 49 6e  p = Tcl_CreateIn
16490 74 65 72 70 28 29 3b 0a 09 54 63 6c 5f 44 65 6c  terp();..Tcl_Del
164a0 65 74 65 49 6e 74 65 72 70 28 69 6e 74 65 72 70  eteInterp(interp
164b0 29 3b 0a 09 69 6e 74 65 72 70 20 3d 20 54 63 6c  );..interp = Tcl
164c0 5f 43 72 65 61 74 65 49 6e 74 65 72 70 28 29 3b  _CreateInterp();
164d0 0a 0a 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20 73  ..channels for s
164e0 74 64 69 6f 20 77 6f 75 6c 64 20 6e 6f 74 20 62  tdio would not b
164f0 65 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74  e available in t
16500 68 65 20 73 65 63 6f 6e 64 20 69 6e 74 65 72 70  he second interp
16510 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 32  reter. (JL)..5/2
16520 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  3/96 (bug fix) F
16530 69 78 65 64 20 62 75 67 20 74 68 61 74 20 61 6c  ixed bug that al
16540 6c 6f 77 65 64 20 54 63 6c 5f 4d 61 6b 65 46 69  lowed Tcl_MakeFi
16550 6c 65 43 68 61 6e 6e 65 6c 20 74 6f 20 63 72 65  leChannel to cre
16560 61 74 65 20 6e 65 77 0a 63 68 61 6e 6e 65 6c 73  ate new.channels
16570 20 77 69 74 68 20 54 63 6c 5f 46 69 6c 65 73 20   with Tcl_Files 
16580 69 6e 20 74 68 65 6d 20 74 68 61 74 20 61 72 65  in them that are
16590 20 61 6c 72 65 61 64 79 20 75 73 65 64 20 62 79   already used by
165a0 20 61 6e 6f 74 68 65 72 20 63 68 61 6e 6e 65 6c   another channel
165b0 2e 0a 54 68 69 73 20 77 6f 75 6c 64 20 63 61 75  ..This would cau
165c0 73 65 20 63 6f 72 65 20 64 75 6d 70 73 20 77 68  se core dumps wh
165d0 65 6e 20 74 68 65 20 54 63 6c 5f 46 69 6c 65 73  en the Tcl_Files
165e0 20 77 65 72 65 20 62 65 69 6e 67 20 66 72 65 65   were being free
165f0 64 20 74 77 69 63 65 2e 20 28 4a 4c 29 0a 0a 35  d twice. (JL)..5
16600 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29  /23/96 (bug fix)
16610 20 46 69 78 65 64 20 61 20 6c 6f 67 69 63 61 6c   Fixed a logical
16620 20 74 69 6d 69 6e 67 20 62 75 67 20 74 68 61 74   timing bug that
16630 20 63 61 75 73 65 64 20 61 20 73 74 61 6e 64 61   caused a standa
16640 72 64 20 63 68 61 6e 6e 65 6c 0a 74 6f 20 62 65  rd channel.to be
16650 20 72 65 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68   removed from th
16660 65 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e  e standard chann
16670 65 6c 20 74 61 62 6c 65 20 74 6f 6f 20 65 61 72  el table too ear
16680 6c 79 20 77 68 65 6e 20 74 68 65 20 63 68 61 6e  ly when the chan
16690 6e 65 6c 0a 77 61 73 20 62 65 69 6e 67 20 63 6c  nel.was being cl
166a0 6f 73 65 64 2e 20 49 66 20 74 68 65 20 63 68 61  osed. If the cha
166b0 6e 6e 65 6c 20 77 61 73 20 62 65 69 6e 67 20 66  nnel was being f
166c0 6c 75 73 68 65 64 20 61 73 79 6e 63 68 72 6f 6e  lushed asynchron
166d0 6f 75 73 6c 79 2c 20 69 74 20 63 6f 75 6c 64 0a  ously, it could.
166e0 67 65 74 20 72 65 63 72 65 61 74 65 64 20 62 65  get recreated be
166f0 66 6f 72 65 20 62 65 69 6e 67 20 61 63 74 75 61  fore being actua
16700 6c 6c 79 20 64 65 73 74 72 6f 79 65 64 2c 20 61  lly destroyed, a
16710 6e 64 20 74 68 65 20 72 65 63 72 65 61 74 65 64  nd the recreated
16720 20 63 68 61 6e 6e 65 6c 0a 77 6f 75 6c 64 20 63   channel.would c
16730 6f 6e 74 61 69 6e 20 74 68 65 20 73 61 6d 65 20  ontain the same 
16740 54 63 6c 5f 46 69 6c 65 20 61 73 20 74 68 65 20  Tcl_File as the 
16750 6f 6e 65 20 62 65 69 6e 67 20 63 6c 6f 73 65 64  one being closed
16760 2c 20 6c 65 61 64 69 6e 67 20 74 6f 0a 64 61 6e  , leading to.dan
16770 67 6c 69 6e 67 20 70 6f 69 6e 74 65 72 73 20 61  gling pointers a
16780 6e 64 20 63 6f 72 65 20 64 75 6d 70 73 2e 20 28  nd core dumps. (
16790 4a 4c 29 0a 0a 35 2f 32 37 2f 39 36 20 28 62 75  JL)..5/27/96 (bu
167a0 67 20 66 69 78 29 20 46 69 78 65 64 20 61 20 62  g fix) Fixed a b
167b0 75 67 20 69 6e 20 54 63 6c 5f 47 65 74 43 68 61  ug in Tcl_GetCha
167c0 6e 6e 65 6c 4f 70 74 69 6f 6e 20 77 68 69 63 68  nnelOption which
167d0 20 63 61 75 73 65 64 20 69 74 20 74 6f 0a 61 6c   caused it to.al
167e0 77 61 79 73 20 72 65 74 75 72 6e 20 61 20 6c 69  ways return a li
167f0 73 74 20 6f 66 20 6f 6e 65 20 65 6c 65 6d 65 6e  st of one elemen
16800 74 2c 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65  t, a list of the
16810 20 73 65 74 74 69 6e 67 73 2c 20 66 6f 72 0a 2d   settings, for.-
16820 74 72 61 6e 73 6c 61 74 69 6f 6e 20 61 6e 64 20  translation and 
16830 2d 65 6f 66 63 68 61 72 20 6f 70 74 69 6f 6e 73  -eofchar options
16840 2e 20 4e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20  . Now correctly 
16850 72 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75  returns the valu
16860 65 0a 64 65 73 63 72 69 62 65 64 20 62 79 20 74  e.described by t
16870 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  he documentation
16880 20 28 4d 61 72 6b 20 44 69 65 6b 68 61 6e 73 20   (Mark Diekhans 
16890 66 6f 75 6e 64 20 74 68 69 73 2c 20 74 68 61 6e  found this, than
168a0 6b 73 21 29 2e 20 28 4a 4c 29 0a 0a 35 2f 33 30  ks!). (JL)..5/30
168b0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
168c0 78 65 64 20 61 20 63 6f 75 70 6c 65 20 6f 66 20  xed a couple of 
168d0 73 79 6e 74 61 78 20 65 72 72 6f 72 73 20 69 6e  syntax errors in
168e0 20 69 6f 2e 74 65 73 74 2e 20 28 4a 4c 29 0a 0a   io.test. (JL)..
168f0 35 2f 33 30 2f 39 36 20 28 62 75 67 20 66 69 78  5/30/96 (bug fix
16900 29 20 49 66 20 61 20 66 69 6c 65 65 76 65 6e 74  ) If a fileevent
16910 20 73 63 72 69 70 74 73 20 67 65 74 73 20 61 6e   scripts gets an
16920 20 65 72 72 6f 72 2c 20 64 65 6c 65 74 65 20 69   error, delete i
16930 74 20 62 65 66 6f 72 65 0a 63 61 75 73 69 6e 67  t before.causing
16940 20 61 20 62 61 63 6b 67 72 6f 75 6e 64 20 65 72   a background er
16950 72 6f 72 2e 20 54 68 69 73 20 69 73 20 74 6f 20  ror. This is to 
16960 61 6c 6c 6f 77 20 74 68 65 20 65 72 72 6f 72 20  allow the error 
16970 68 61 6e 64 6c 65 72 20 74 6f 20 72 65 69 6e 73  handler to reins
16980 74 61 6c 6c 0a 74 68 65 20 66 69 6c 65 65 76 65  tall.the fileeve
16990 6e 74 20 61 6e 64 20 74 6f 20 70 72 65 76 65 6e  nt and to preven
169a0 74 20 69 6e 66 69 6e 69 74 65 20 6c 6f 6f 70 73  t infinite loops
169b0 20 69 66 20 74 68 65 20 65 76 65 6e 74 20 6c 6f   if the event lo
169c0 6f 70 20 69 73 20 72 65 65 6e 74 65 72 65 64 0a  op is reentered.
169d0 69 6e 20 74 68 65 20 65 72 72 6f 72 20 68 61 6e  in the error han
169e0 64 6c 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 33 31  dler. (JL)..5/31
169f0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43 68  /96 (bug fix) Ch
16a00 61 6e 6e 65 6c 73 20 6e 6f 77 20 77 69 6c 6c 20  annels now will 
16a10 67 65 74 20 70 72 6f 70 65 72 6c 79 20 66 6c 75  get properly flu
16a20 73 68 65 64 20 6f 6e 20 65 78 69 74 2e 20 28 4a  shed on exit. (J
16a30 4c 29 0a 0a 36 2f 35 2f 39 36 20 28 62 75 67 20  L)..6/5/96 (bug 
16a40 66 69 78 29 20 43 68 61 6e 67 65 64 20 54 63 6c  fix) Changed Tcl
16a50 5f 43 6b 61 6c 6c 6f 63 2c 20 54 63 6c 5f 43 6b  _Ckalloc, Tcl_Ck
16a60 66 72 65 65 2c 20 61 6e 64 20 54 63 6c 5f 43 6b  free, and Tcl_Ck
16a70 72 65 61 6c 6c 6f 63 20 74 6f 0a 54 63 6c 5f 41  realloc to.Tcl_A
16a80 6c 6c 6f 63 2c 20 54 63 6c 5f 46 72 65 65 2c 20  lloc, Tcl_Free, 
16a90 61 6e 64 20 54 63 6c 5f 52 65 61 6c 6c 6f 63 2e  and Tcl_Realloc.
16aa0 20 20 41 64 64 65 64 20 64 6f 63 75 6d 65 6e 74    Added document
16ab0 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 73 65 0a  ation for these.
16ac0 72 6f 75 74 69 6e 65 73 20 6e 6f 77 20 74 68 61  routines now tha
16ad0 74 20 74 68 65 79 20 61 72 65 20 6f 66 66 69 63  t they are offic
16ae0 69 61 6c 6c 79 20 73 75 70 70 6f 72 74 65 64 2e  ially supported.
16af0 20 20 45 78 74 65 6e 73 69 6f 6e 20 77 72 69 74    Extension writ
16b00 65 72 73 0a 73 68 6f 75 6c 64 20 75 73 65 20 74  ers.should use t
16b10 68 65 73 65 20 72 6f 75 74 69 6e 65 73 20 69 6e  hese routines in
16b20 73 74 65 61 64 20 6f 66 20 66 72 65 65 28 29 20  stead of free() 
16b30 61 6e 64 20 6d 61 6c 6c 6f 63 28 29 2e 20 28 53  and malloc(). (S
16b40 53 29 0a 0a 36 2f 31 30 2f 39 36 20 28 62 75 67  S)..6/10/96 (bug
16b50 20 66 69 78 29 20 43 68 61 6e 67 65 73 20 74 68   fix) Changes th
16b60 65 20 54 63 6c 20 63 6c 6f 73 65 20 63 6f 6d 6d  e Tcl close comm
16b70 61 6e 64 20 73 6f 20 74 68 61 74 20 69 74 20 6e  and so that it n
16b80 6f 20 6c 6f 6e 67 65 72 0a 77 61 69 74 73 20 6f  o longer.waits o
16b90 6e 20 6e 6f 6e 62 6c 6f 63 6b 69 6e 67 20 70 69  n nonblocking pi
16ba0 70 65 73 20 66 6f 72 20 74 68 65 20 70 69 70 65  pes for the pipe
16bb0 64 20 70 72 6f 63 65 73 73 65 73 20 74 6f 20 65  d processes to e
16bc0 78 69 74 3b 20 69 6e 73 74 65 61 64 20 69 74 0a  xit; instead it.
16bd0 72 65 61 70 73 20 74 68 65 6d 20 69 6e 20 74 68  reaps them in th
16be0 65 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 28 4a  e background. (J
16bf0 4c 29 0a 0a 36 2f 31 31 2f 39 36 20 28 62 75 67  L)..6/11/96 (bug
16c00 20 66 69 78 29 20 49 6e 63 72 65 61 73 65 64 20   fix) Increased 
16c10 74 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68  the length of th
16c20 65 20 6c 69 73 74 65 6e 20 71 75 65 75 65 20 66  e listen queue f
16c30 6f 72 20 73 65 72 76 65 72 0a 73 6f 63 6b 65 74  or server.socket
16c40 73 20 6f 6e 20 55 6e 69 78 20 66 72 6f 6d 20 35  s on Unix from 5
16c50 20 74 6f 20 31 30 30 2e 20 53 6f 6d 65 20 4f 53   to 100. Some OS
16c60 65 73 20 77 69 6c 6c 20 64 69 73 72 65 67 61 72  es will disregar
16c70 64 20 74 68 69 73 20 61 6e 64 20 72 65 73 65 74  d this and reset
16c80 20 69 74 0a 74 6f 20 35 2c 20 62 75 74 20 77 65   it.to 5, but we
16c90 20 73 68 6f 75 6c 64 20 74 72 79 20 74 6f 20 67   should try to g
16ca0 65 74 20 61 73 20 6c 6f 6e 67 20 61 20 71 75 65  et as long a que
16cb0 75 65 20 61 73 20 77 65 20 63 61 6e 2c 20 66 6f  ue as we can, fo
16cc0 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 0a 72 65  r performance.re
16cd0 61 73 6f 6e 73 2e 20 28 4a 4c 29 0a 0a 36 2f 31  asons. (JL)..6/1
16ce0 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  1/96 (bug fix) F
16cf0 69 78 65 64 20 77 69 6e 64 6f 77 73 20 73 6f 63  ixed windows soc
16d00 6b 65 74 73 20 62 75 67 20 74 68 61 74 20 63 61  kets bug that ca
16d10 75 73 65 64 20 61 20 63 61 73 63 61 64 65 20 6f  used a cascade o
16d20 66 20 65 76 65 6e 74 73 0a 69 66 20 74 68 65 20  f events.if the 
16d30 66 69 6c 65 65 76 65 6e 74 20 73 63 72 69 70 74  fileevent script
16d40 20 72 65 61 64 20 6c 65 73 73 20 74 68 61 6e 20   read less than 
16d50 77 61 73 20 61 76 61 69 6c 61 62 6c 65 2e 20 4e  was available. N
16d60 6f 77 20 72 65 61 64 69 6e 67 20 6c 65 73 73 20  ow reading less 
16d70 74 68 61 6e 0a 69 73 20 61 76 61 69 6c 61 62 6c  than.is availabl
16d80 65 20 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65  e does not cause
16d90 20 61 20 66 6c 6f 6f 64 20 6f 66 20 54 63 6c 20   a flood of Tcl 
16da0 65 76 65 6e 74 73 2e 20 28 4a 4c 2c 20 53 53 29  events. (JL, SS)
16db0 0a 0a 36 2f 31 31 2f 39 36 20 28 62 75 67 20 66  ..6/11/96 (bug f
16dc0 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e  ix) Fixed bug in
16dd0 20 62 61 63 6b 67 72 6f 75 6e 64 20 66 6c 75 73   background flus
16de0 68 69 6e 67 20 6f 6e 20 63 6c 6f 73 65 64 20 63  hing on closed c
16df0 68 61 6e 6e 65 6c 73 20 74 68 61 74 0a 77 6f 75  hannels that.wou
16e00 6c 64 20 70 72 65 76 65 6e 74 20 74 68 65 20 6c  ld prevent the l
16e10 61 73 74 20 62 75 66 66 65 72 20 66 72 6f 6d 20  ast buffer from 
16e20 67 65 74 74 69 6e 67 20 66 6c 75 73 68 65 64 2e  getting flushed.
16e30 20 28 4a 4c 29 0a 0a 36 2f 31 33 2f 39 36 20 28   (JL)..6/13/96 (
16e40 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
16e50 75 67 20 69 6e 20 57 69 6e 64 6f 77 73 20 73 6f  ug in Windows so
16e60 63 6b 65 74 73 20 74 68 61 74 20 63 61 75 73 65  ckets that cause
16e70 64 20 61 20 63 6f 72 65 20 64 75 6d 70 20 69 66  d a core dump if
16e80 0a 61 20 44 4c 4c 20 6c 69 6e 6b 65 64 20 77 69  .a DLL linked wi
16e90 74 68 20 74 63 6c 2e 64 6c 6c 20 61 6e 64 20 72  th tcl.dll and r
16ea0 65 66 65 72 72 65 64 20 74 6f 20 65 2e 67 2e 20  eferred to e.g. 
16eb0 6e 74 6f 68 73 28 29 20 77 69 74 68 6f 75 74 20  ntohs() without 
16ec0 6f 70 65 6e 69 6e 67 20 61 0a 54 63 6c 20 73 6f  opening a.Tcl so
16ed0 63 6b 65 74 2e 20 54 68 65 20 70 72 6f 62 6c 65  cket. The proble
16ee0 6d 20 77 61 73 20 74 68 61 74 20 74 68 65 20 69  m was that the i
16ef0 6e 64 69 72 65 63 74 69 6f 6e 20 74 61 62 6c 65  ndirection table
16f00 20 77 61 73 20 6e 6f 74 20 62 65 69 6e 67 0a 69   was not being.i
16f10 6e 69 74 69 61 6c 69 7a 65 64 2e 20 28 4a 4c 29  nitialized. (JL)
16f20 0a 0a 36 2f 31 33 2f 39 36 20 28 62 75 67 20 66  ..6/13/96 (bug f
16f30 69 78 29 20 46 69 78 65 64 20 4f 53 20 6c 65 76  ix) Fixed OS lev
16f40 65 6c 20 72 65 73 6f 75 72 63 65 20 6c 65 61 6b  el resource leak
16f50 20 74 68 61 74 20 77 6f 75 6c 64 20 6f 63 63 75   that would occu
16f60 72 20 77 68 65 6e 20 61 0a 54 63 6c 20 63 68 61  r when a.Tcl cha
16f70 6e 6e 65 6c 20 77 61 73 20 73 74 69 6c 6c 20 72  nnel was still r
16f80 65 67 69 73 74 65 72 65 64 20 69 6e 20 73 6f 6d  egistered in som
16f90 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 77 68  e interpreter wh
16fa0 65 6e 20 74 68 65 20 70 72 6f 63 65 73 73 0a 65  en the process.e
16fb0 78 69 74 73 2e 20 50 72 65 76 69 6f 75 73 6c 79  xits. Previously
16fc0 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 77 61 73   the channel was
16fd0 20 6e 6f 74 20 62 65 69 6e 67 20 63 6c 6f 73 65   not being close
16fe0 64 20 61 6e 64 20 74 68 65 20 4f 53 20 6c 65 76  d and the OS lev
16ff0 65 6c 20 68 61 6e 64 6c 65 73 0a 77 65 72 65 20  el handles.were 
17000 6e 6f 74 20 62 65 69 6e 67 20 72 65 6c 65 61 73  not being releas
17010 65 64 3b 20 74 68 65 20 6f 75 74 70 75 74 20 77  ed; the output w
17020 61 73 20 62 65 69 6e 67 20 66 6c 75 73 68 65 64  as being flushed
17030 20 62 75 74 20 74 68 65 20 64 65 76 69 63 65 20   but the device 
17040 77 61 73 0a 6e 6f 74 20 62 65 69 6e 67 20 63 6c  was.not being cl
17050 6f 73 65 64 2e 20 4e 6f 77 20 74 68 65 20 64 65  osed. Now the de
17060 76 69 63 65 20 69 73 20 70 72 6f 70 65 72 6c 79  vice is properly
17070 20 63 6c 6f 73 65 64 2e 20 54 68 69 73 20 77 61   closed. This wa
17080 73 20 6f 6e 6c 79 20 61 0a 70 72 6f 62 6c 65 6d  s only a.problem
17090 20 6f 6e 20 57 69 6e 33 2e 31 20 61 6e 64 20 4d   on Win3.1 and M
170a0 61 63 4f 53 2e 20 28 4a 4c 2c 20 53 53 29 0a 0a  acOS. (JL, SS)..
170b0 36 2f 32 38 2f 39 36 20 28 62 75 67 20 66 69 78  6/28/96 (bug fix
170c0 29 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72  ) Fixed bug wher
170d0 65 20 74 72 61 6e 73 69 65 6e 74 20 65 72 72 6f  e transient erro
170e0 72 73 20 77 65 72 65 20 6c 65 61 76 69 6e 67 20  rs were leaving 
170f0 61 6e 20 65 72 72 6f 72 0a 63 6f 64 65 20 61 72  an error.code ar
17100 6f 75 6e 64 2c 20 73 6f 20 74 68 61 74 20 69 74  ound, so that it
17110 20 77 6f 75 6c 64 20 65 72 72 6f 6e 65 6f 75 73   would erroneous
17120 6c 79 20 67 65 74 20 72 65 70 6f 72 74 65 64 20  ly get reported 
17130 6c 61 74 65 72 2e 20 54 68 69 73 20 62 75 67 20  later. This bug 
17140 77 61 73 0a 65 78 65 72 63 69 73 65 64 20 69 6e  was.exercised in
17150 74 65 72 6d 69 74 74 65 6e 74 6c 79 20 62 79 20  termittently by 
17160 63 6c 6f 73 69 6e 67 20 61 20 63 68 61 6e 6e 65  closing a channe
17170 6c 20 74 6f 20 61 20 66 69 6c 65 20 6f 6e 20 61  l to a file on a
17180 20 76 65 72 79 20 6c 6f 61 64 65 64 0a 4e 46 53   very loaded.NFS
17190 20 73 65 72 76 65 72 2c 20 6f 72 20 74 6f 20 61   server, or to a
171a0 20 73 6f 63 6b 65 74 20 77 68 6f 73 65 20 6f 74   socket whose ot
171b0 68 65 72 20 65 6e 64 20 62 6c 6f 63 6b 65 64 2e  her end blocked.
171c0 20 28 4a 4c 2c 20 42 57 29 0a 0a 37 2f 33 2f 39   (JL, BW)..7/3/9
171d0 36 20 28 62 75 67 20 66 69 78 29 20 46 69 6c 65  6 (bug fix) File
171e0 65 76 65 6e 74 73 20 64 65 63 6c 61 72 65 64 20  events declared 
171f0 69 6e 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65  in an interprete
17200 72 20 61 72 65 20 6e 6f 77 20 64 65 6c 65 74 65  r are now delete
17210 64 0a 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e  d.when the chann
17220 65 6c 20 69 73 20 63 6c 6f 73 65 64 20 69 6e 20  el is closed in 
17230 74 68 61 74 20 69 6e 74 65 72 70 72 65 74 65 72  that interpreter
17240 2e 20 42 65 66 6f 72 65 20 74 68 69 73 20 66 69  . Before this fi
17250 78 2c 20 74 68 65 0a 66 69 6c 65 65 76 65 6e 74  x, the.fileevent
17260 20 77 6f 75 6c 64 20 68 61 6e 67 20 61 72 6f 75   would hang arou
17270 6e 64 20 75 6e 74 69 6c 20 74 68 65 20 63 68 61  nd until the cha
17280 6e 6e 65 6c 20 69 73 20 63 6f 6d 70 6c 65 74 65  nnel is complete
17290 6c 79 20 63 6c 6f 73 65 64 2c 20 61 6e 64 0a 77  ly closed, and.w
172a0 6f 75 6c 64 20 63 61 75 73 65 20 65 72 72 6f 72  ould cause error
172b0 73 20 69 66 20 65 76 65 6e 74 73 20 68 61 70 70  s if events happ
172c0 65 6e 65 64 20 62 65 66 6f 72 65 20 74 68 65 20  ened before the 
172d0 63 68 61 6e 6e 65 6c 20 77 61 73 20 63 6c 6f 73  channel was clos
172e0 65 64 2e 20 54 68 69 73 0a 63 6f 75 6c 64 20 68  ed. This.could h
172f0 61 70 70 65 6e 20 69 6e 20 74 77 6f 20 63 61 73  appen in two cas
17300 65 73 3a 20 66 69 72 73 74 20 69 66 20 74 68 65  es: first if the
17310 20 63 68 61 6e 6e 65 6c 20 69 73 20 73 68 61 72   channel is shar
17320 65 64 20 62 65 74 77 65 65 6e 20 73 65 76 65 72  ed between sever
17330 61 6c 0a 69 6e 74 65 72 70 72 65 74 65 72 73 2c  al.interpreters,
17340 20 61 6e 64 20 73 65 63 6f 6e 64 20 69 66 20 61   and second if a
17350 6e 20 61 73 79 6e 63 20 66 6c 75 73 68 20 69 73  n async flush is
17360 20 69 6e 20 70 72 6f 67 72 65 73 73 20 74 68 61   in progress tha
17370 74 20 70 72 65 76 65 6e 74 73 20 74 68 65 0a 63  t prevents the.c
17380 68 61 6e 6e 65 6c 20 66 72 6f 6d 20 62 65 69 6e  hannel from bein
17390 67 20 63 6c 6f 73 65 64 20 75 6e 74 69 6c 20 74  g closed until t
173a0 68 65 20 66 6c 75 73 68 20 66 69 6e 69 73 68 65  he flush finishe
173b0 73 2e 20 28 4a 4c 29 0a 0a 37 2f 31 30 2f 39 36  s. (JL)..7/10/96
173c0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
173d0 20 62 75 67 73 20 69 6e 20 62 6f 74 68 20 22 6c   bugs in both "l
173e0 72 61 6e 67 65 22 20 61 6e 64 20 22 6c 72 65 70  range" and "lrep
173f0 6c 61 63 65 22 20 63 6f 6d 6d 61 6e 64 73 0a 77  lace" commands.w
17400 68 65 72 65 20 74 6f 6f 20 6d 75 63 68 20 77 68  here too much wh
17410 69 74 65 20 73 70 61 63 65 20 77 61 73 20 62 65  ite space was be
17420 69 6e 67 20 72 65 6d 6f 76 65 64 2e 20 46 6f 72  ing removed. For
17430 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f   example, the co
17440 6d 6d 61 6e 64 0a 09 09 6c 72 65 70 6c 61 63 65  mmand...lreplace
17450 20 7b 5c 7d 5c 20 20 20 20 20 68 65 6c 6c 6f 7d   {\}\     hello}
17460 20 65 6e 64 20 65 6e 64 0a 77 61 73 20 72 65 74   end end.was ret
17470 75 72 6e 69 6e 67 20 22 5c 7d 5c 22 2c 20 6c 6f  urning "\}\", lo
17480 73 69 6e 67 20 74 68 65 20 73 69 67 6e 69 66 69  sing the signifi
17490 63 61 6e 74 20 73 70 61 63 65 20 69 6e 20 74 68  cant space in th
174a0 65 20 66 69 72 73 74 20 6c 69 73 74 0a 65 6c 65  e first list.ele
174b0 6d 65 6e 74 20 61 6e 64 20 63 6f 72 72 75 70 74  ment and corrupt
174c0 69 6e 67 20 74 68 65 20 6c 69 73 74 2e 20 28 4a  ing the list. (J
174d0 4f 29 0a 0a 37 2f 32 30 2f 39 36 20 28 62 75 67  O)..7/20/96 (bug
174e0 20 66 69 78 29 20 54 68 65 20 70 72 6f 63 65 64   fix) The proced
174f0 75 72 65 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20  ure pkg_mkIndex 
17500 64 69 64 6e 27 74 20 77 6f 72 6b 20 70 72 6f 70  didn't work prop
17510 65 72 6c 79 20 66 6f 72 0a 65 78 74 65 6e 73 69  erly for.extensi
17520 6f 6e 73 20 74 68 61 74 20 64 65 70 65 6e 64 20  ons that depend 
17530 6f 6e 20 54 6b 2c 20 62 65 63 61 75 73 65 20 69  on Tk, because i
17540 74 20 64 69 64 6e 27 74 20 6c 6f 61 64 20 54 6b  t didn't load Tk
17550 20 69 6e 74 6f 20 74 68 65 20 63 68 69 6c 64 0a   into the child.
17560 69 6e 74 65 72 70 72 65 74 65 72 20 62 65 66 6f  interpreter befo
17570 72 65 20 6c 6f 61 64 69 6e 67 20 74 68 65 20 65  re loading the e
17580 78 74 65 6e 73 69 6f 6e 2e 20 20 4e 6f 77 20 69  xtension.  Now i
17590 74 20 6c 6f 61 64 73 20 54 6b 20 69 66 20 54 6b  t loads Tk if Tk
175a0 20 69 73 0a 70 72 65 73 65 6e 74 20 69 6e 20 74   is.present in t
175b0 68 65 20 70 61 72 65 6e 74 2e 20 28 4a 4f 29 0a  he parent. (JO).
175c0 0a 37 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69  .7/23/96 (bug fi
175d0 78 29 20 41 64 64 65 64 20 63 6f 6d 70 61 74 20  x) Added compat 
175e0 76 65 72 73 69 6f 6e 20 6f 66 20 73 74 72 66 74  version of strft
175f0 69 6d 65 20 74 6f 20 66 69 78 20 63 72 61 73 68  ime to fix crash
17600 65 73 0a 72 65 73 75 6c 74 69 6e 67 20 66 72 6f  es.resulting fro
17610 6d 20 62 61 64 20 69 6d 70 6c 65 6d 65 6e 74 61  m bad implementa
17620 74 69 6f 6e 73 20 75 6e 64 65 72 20 57 69 6e 64  tions under Wind
17630 6f 77 73 2e 20 28 53 53 29 0a 0a 37 2f 32 33 2f  ows. (SS)..7/23/
17640 39 36 20 28 62 75 67 20 66 69 78 29 20 53 74 61  96 (bug fix) Sta
17650 6e 64 61 72 64 20 69 6d 70 6c 65 6d 65 6e 74 61  ndard implementa
17660 74 69 6f 6e 73 20 6f 66 20 67 6d 74 69 6d 65 28  tions of gmtime(
17670 29 20 61 6e 64 20 6c 6f 63 61 6c 74 69 6d 65 28  ) and localtime(
17680 29 0a 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20  ).under Windows 
17690 64 69 64 20 6e 6f 74 20 68 61 6e 64 6c 65 20 64  did not handle d
176a0 61 74 65 73 20 62 65 66 6f 72 65 20 31 39 37 30  ates before 1970
176b0 2c 20 73 6f 20 74 68 65 79 20 77 65 72 65 20 72  , so they were r
176c0 65 70 6c 61 63 65 64 0a 77 69 74 68 20 61 20 72  eplaced.with a r
176d0 65 76 69 73 65 64 20 69 6d 70 6c 65 6d 65 6e 74  evised implement
176e0 61 74 69 6f 6e 2e 20 28 53 53 29 0a 0a 37 2f 32  ation. (SS)..7/2
176f0 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 54  3/96 (bug fix) T
17700 63 6c 20 77 6f 75 6c 64 20 63 72 61 73 68 20 6f  cl would crash o
17710 6e 20 65 78 69 74 20 75 6e 64 65 72 20 42 6f 72  n exit under Bor
17720 6c 61 6e 64 20 35 2e 30 20 62 65 63 61 75 73 65  land 5.0 because
17730 0a 74 68 65 20 67 6c 6f 62 61 6c 20 65 6e 76 69  .the global envi
17740 72 6f 6e 20 70 6f 69 6e 74 65 72 20 77 61 73 20  ron pointer was 
17750 6c 65 66 74 20 70 6f 69 6e 74 69 6e 67 20 74 6f  left pointing to
17760 20 66 72 65 65 64 20 6d 65 6d 6f 72 79 2e 20 28   freed memory. (
17770 53 53 29 0a 0a 37 2f 32 39 2f 39 36 20 28 62 75  SS)..7/29/96 (bu
17780 67 20 66 69 78 29 20 46 69 78 65 64 20 6d 65 6d  g fix) Fixed mem
17790 6f 72 79 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f  ory leak in Tcl_
177a0 4c 6f 61 64 43 6d 64 20 74 68 61 74 20 63 6f 75  LoadCmd that cou
177b0 6c 64 20 6f 63 63 75 72 20 69 66 0a 61 20 70 61  ld occur if.a pa
177c0 63 6b 61 67 65 27 73 20 41 70 70 49 6e 69 74 20  ckage's AppInit 
177d0 70 72 6f 63 65 64 75 72 65 20 63 61 6c 6c 65 64  procedure called
177e0 20 54 63 6c 5f 53 74 61 74 69 63 50 61 63 6b 61   Tcl_StaticPacka
177f0 67 65 20 74 6f 20 72 65 67 69 73 74 65 72 0a 73  ge to register.s
17800 74 61 74 69 63 20 70 61 63 6b 61 67 65 73 2e 20  tatic packages. 
17810 28 4a 4f 29 0a 0a 38 2f 31 2f 39 36 20 28 62 75  (JO)..8/1/96 (bu
17820 67 20 66 69 78 29 20 46 69 78 65 64 20 61 20 73  g fix) Fixed a s
17830 65 72 69 65 73 20 6f 66 20 62 75 67 73 20 69 6e  eries of bugs in
17840 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73   Windows sockets
17850 20 73 6f 20 74 68 61 74 20 61 73 79 6e 63 0a 77   so that async.w
17860 72 69 74 65 62 65 68 69 6e 64 20 69 6e 20 74 68  ritebehind in th
17870 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 72 65  e presence of re
17880 61 64 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72  ad event handler
17890 73 20 6e 6f 77 20 77 6f 72 6b 73 2c 20 61 6e 64  s now works, and
178a0 20 73 6f 20 74 68 61 74 0a 61 73 79 6e 63 20 77   so that.async w
178b0 72 69 74 65 62 65 68 69 6e 64 20 61 6c 73 6f 20  ritebehind also 
178c0 77 6f 72 6b 73 20 6f 6e 20 73 6f 63 6b 65 74 73  works on sockets
178d0 20 66 6f 72 20 77 68 69 63 68 20 61 20 72 65 61   for which a rea
178e0 64 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 20  d event handler 
178f0 77 61 73 0a 64 65 63 6c 61 72 65 64 20 61 6e 64  was.declared and
17900 20 77 68 6f 73 65 20 63 68 61 6e 6e 65 6c 73 20   whose channels 
17910 77 65 72 65 20 74 68 65 6e 20 63 6c 6f 73 65 64  were then closed
17920 20 62 65 66 6f 72 65 20 74 68 65 20 61 73 79 6e   before the asyn
17930 63 20 77 72 69 74 65 0a 66 69 6e 69 73 68 65 64  c write.finished
17940 2e 20 54 68 65 20 62 75 67 20 77 61 73 20 72 65  . The bug was re
17950 70 6f 72 74 65 64 20 62 79 20 4a 6f 68 6e 20 4c  ported by John L
17960 6f 76 65 72 73 6f 20 61 6e 64 20 53 74 65 76 65  overso and Steve
17970 6e 20 57 61 68 6c 2c 0a 69 6e 64 65 70 65 6e 64  n Wahl,.independ
17980 65 6e 74 6c 79 2c 20 74 65 73 74 20 63 61 73 65  ently, test case
17990 20 73 75 70 70 6c 69 65 64 20 62 79 20 4a 6f 68   supplied by Joh
179a0 6e 20 4c 6f 76 65 72 73 6f 2e 20 28 4a 4c 29 0a  n Loverso. (JL).
179b0 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
179c0 2d 2d 20 52 65 6c 65 61 73 65 64 20 70 61 74 63  -- Released patc
179d0 68 20 37 2e 35 70 31 2c 20 38 2f 32 2f 39 36 20  h 7.5p1, 8/2/96 
179e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
179f0 2d 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 38 2f 39 36 20  -------..5/8/96 
17a00 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
17a10 64 65 64 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e  ded Tcl_GetChann
17a20 65 6c 4d 6f 64 65 20 43 20 41 50 49 20 66 6f 72  elMode C API for
17a30 20 72 65 74 72 69 65 76 69 6e 67 20 77 68 65 74   retrieving whet
17a40 68 65 72 0a 61 20 63 68 61 6e 6e 65 6c 20 69 73  her.a channel is
17a50 20 6f 70 65 6e 20 66 6f 72 20 72 65 61 64 69 6e   open for readin
17a60 67 20 61 6e 64 20 77 72 69 74 69 6e 67 2e 20 28  g and writing. (
17a70 4a 4c 29 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49  JL)..5/8/96 (API
17a80 20 63 68 61 6e 67 65 73 29 20 52 65 76 69 73 65   changes) Revise
17a90 64 20 43 20 41 50 49 73 20 66 6f 72 20 63 68 61  d C APIs for cha
17aa0 6e 6e 65 6c 20 64 72 69 76 65 72 73 3a 0a 20 20  nnel drivers:.  
17ab0 20 20 2d 20 52 65 6d 6f 76 65 64 20 61 6c 6c 20    - Removed all 
17ac0 54 63 6c 5f 46 69 6c 65 73 20 66 72 6f 6d 20 63  Tcl_Files from c
17ad0 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 6e  hannel driver in
17ae0 74 65 72 66 61 63 65 3b 20 79 6f 75 20 63 61 6e  terface; you can
17af0 20 6e 6f 77 20 68 61 76 65 0a 20 20 20 20 20 20   now have.      
17b00 63 68 61 6e 6e 65 6c 73 20 74 68 61 74 20 61 72  channels that ar
17b10 65 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 54  e not based on T
17b20 63 6c 5f 46 69 6c 65 73 2e 0a 20 20 20 20 2d 20  cl_Files..    - 
17b30 41 64 64 65 64 20 63 68 61 6e 6e 65 6c 52 65 61  Added channelRea
17b40 64 79 50 72 6f 63 20 61 6e 64 20 77 61 74 63 68  dyProc and watch
17b50 43 68 61 6e 6e 65 6c 50 72 6f 63 20 70 72 6f 63  ChannelProc proc
17b60 65 64 75 72 65 73 20 74 6f 20 69 6e 74 65 72 66  edures to interf
17b70 61 63 65 3b 0a 20 20 20 20 20 20 74 68 65 73 65  ace;.      these
17b80 20 61 72 65 20 75 73 65 64 20 74 6f 20 69 6d 70   are used to imp
17b90 6c 65 6d 65 6e 74 20 65 76 65 6e 74 20 6e 6f 74  lement event not
17ba0 69 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 63 68  ification for ch
17bb0 61 6e 6e 65 6c 73 2e 0a 20 20 20 20 2d 20 41 64  annels..    - Ad
17bc0 64 65 64 20 67 65 74 46 69 6c 65 50 72 6f 63 20  ded getFileProc 
17bd0 74 6f 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65  to channel drive
17be0 72 2c 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20  r, to allow the 
17bf0 67 65 6e 65 72 69 63 20 49 4f 20 63 6f 64 65 0a  generic IO code.
17c00 20 20 20 20 20 20 74 6f 20 72 65 74 72 69 65 76        to retriev
17c10 65 20 61 20 54 63 6c 5f 46 69 6c 65 20 66 72 6f  e a Tcl_File fro
17c20 6d 20 61 20 63 68 61 6e 6e 65 6c 20 28 70 72 65  m a channel (pre
17c30 73 75 6d 61 62 6c 79 20 69 66 20 74 68 65 20 63  sumably if the c
17c40 68 61 6e 6e 65 6c 0a 20 20 20 20 20 20 75 73 65  hannel.      use
17c50 73 20 54 63 6c 5f 46 69 6c 65 73 20 74 68 65 79  s Tcl_Files they
17c60 20 77 69 6c 6c 20 62 65 20 73 74 6f 72 65 64 20   will be stored 
17c70 69 6e 73 69 64 65 20 69 74 73 20 69 6e 73 74 61  inside its insta
17c80 6e 63 65 44 61 74 61 29 2e 20 28 4a 4c 29 0a 2a  nceData). (JL).*
17c90 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  ** INCOMPATIBILI
17ca0 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35 20  TY with Tcl 7.5 
17cb0 2a 2a 2a 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49  ***..5/8/96 (API
17cc0 20 63 68 61 6e 67 65 29 20 54 68 65 20 54 63 6c   change) The Tcl
17cd0 5f 43 72 65 61 74 65 43 68 61 6e 6e 65 6c 20 43  _CreateChannel C
17ce0 20 41 50 49 20 77 61 73 20 6d 6f 64 69 66 69 65   API was modifie
17cf0 64 20 74 6f 20 6e 6f 74 20 74 61 6b 65 0a 54 63  d to not take.Tc
17d00 6c 5f 46 69 6c 65 20 61 72 67 75 6d 65 6e 74 73  l_File arguments
17d10 2c 20 61 6e 64 20 69 6e 73 74 65 61 64 20 74 6f  , and instead to
17d20 20 74 61 6b 65 20 61 20 6d 61 73 6b 20 73 70 65   take a mask spe
17d30 63 69 66 79 69 6e 67 20 77 68 65 74 68 65 72 20  cifying whether 
17d40 74 68 65 0a 63 68 61 6e 6e 65 6c 20 69 73 20 72  the.channel is r
17d50 65 61 64 61 62 6c 65 20 61 6e 64 2f 6f 72 20 77  eadable and/or w
17d60 72 69 74 61 62 6c 65 2e 20 28 4a 4c 29 0a 2a 2a  ritable. (JL).**
17d70 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  * INCOMPATIBILIT
17d80 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35 20 2a  Y with Tcl 7.5 *
17d90 2a 2a 0a 0a 36 2f 33 2f 39 36 20 28 62 75 67 20  **..6/3/96 (bug 
17da0 66 69 78 29 20 4d 61 64 65 20 54 63 6c 5f 53 65  fix) Made Tcl_Se
17db0 74 56 61 72 32 20 72 6f 62 75 73 74 20 61 67 61  tVar2 robust aga
17dc0 69 6e 73 74 20 74 68 65 20 63 61 73 65 20 77 68  inst the case wh
17dd0 65 72 65 20 74 68 65 20 76 61 6c 75 65 0a 6f 66  ere the value.of
17de0 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73   the variable is
17df0 20 61 20 4e 55 4c 4c 20 70 6f 69 6e 74 65 72 20   a NULL pointer 
17e00 69 6e 73 74 65 61 64 20 6f 66 20 22 22 2e 20 28  instead of "". (
17e10 4a 4c 29 0a 0a 36 2f 31 37 2f 39 36 20 28 62 75  JL)..6/17/96 (bu
17e20 67 20 66 69 78 29 20 46 69 78 65 64 20 22 72 65  g fix) Fixed "re
17e30 61 64 69 6e 67 20 75 6e 69 6e 69 74 69 61 6c 69  ading uninitiali
17e40 7a 65 64 20 6d 65 6d 6f 72 79 22 20 65 72 72 6f  zed memory" erro
17e50 72 20 72 65 70 6f 72 74 65 64 20 62 79 0a 50 75  r reported by.Pu
17e60 72 69 66 79 2c 20 69 6e 20 54 63 6c 5f 50 72 65  rify, in Tcl_Pre
17e70 73 65 72 76 65 2f 54 63 6c 5f 52 65 6c 65 61 73  serve/Tcl_Releas
17e80 65 2e 20 28 4a 4c 29 0a 0a 38 2f 39 2f 39 36 20  e. (JL)..8/9/96 
17e90 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
17ea0 62 75 67 20 69 6e 20 69 6e 69 74 2e 74 63 6c 20  bug in init.tcl 
17eb0 74 68 61 74 20 63 61 75 73 65 64 20 69 6e 63 6f  that caused inco
17ec0 72 72 65 63 74 20 65 72 72 6f 72 20 6d 65 73 73  rrect error mess
17ed0 61 67 65 0a 69 66 20 74 68 65 20 61 63 74 20 6f  age.if the act o
17ee0 66 20 61 75 74 6f 6c 6f 61 64 69 6e 67 20 61 20  f autoloading a 
17ef0 70 72 6f 63 65 64 75 72 65 20 63 61 75 73 65 64  procedure caused
17f00 20 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 74   the procedure t
17f10 6f 20 62 65 20 69 6e 76 6f 6b 65 64 0a 61 67 61  o be invoked.aga
17f20 69 6e 2e 20 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36  in. (JO)..8/9/96
17f30 20 28 62 75 67 20 66 69 78 29 20 43 6f 6e 66 69   (bug fix) Confi
17f40 67 75 72 65 20 73 63 72 69 70 74 20 70 72 6f 64  gure script prod
17f50 75 63 65 64 20 62 61 64 20 6c 69 62 72 61 72 79  uced bad library
17f60 20 6e 61 6d 65 73 20 61 6e 64 20 65 78 74 65 6e   names and exten
17f70 73 69 6f 6e 73 0a 75 6e 64 65 72 20 53 75 6e 4f  sions.under SunO
17f80 53 20 61 6e 64 20 61 20 66 65 77 20 6f 74 68 65  S and a few othe
17f90 72 20 70 6c 61 74 66 6f 72 6d 73 20 69 66 20 74  r platforms if t
17fa0 68 65 20 2d 2d 64 69 73 61 62 6c 65 2d 6c 6f 61  he --disable-loa
17fb0 64 20 73 77 69 74 63 68 20 77 61 73 20 75 73 65  d switch was use
17fc0 64 2e 0a 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36 20  d..(JO)..8/9/96 
17fd0 28 62 75 67 20 66 69 78 29 20 54 63 6c 5f 55 70  (bug fix) Tcl_Up
17fe0 64 61 74 65 4c 69 6e 6b 65 64 56 61 72 20 67 65  dateLinkedVar ge
17ff0 6e 65 72 61 74 65 64 20 61 6e 20 65 72 72 6f 72  nerated an error
18000 20 69 66 20 74 68 65 20 76 61 72 69 61 62 6c 65   if the variable
18010 0a 62 65 69 6e 67 20 75 70 64 61 74 65 64 20 77  .being updated w
18020 61 73 20 72 65 61 64 2d 6f 6e 6c 79 2e 20 28 4a  as read-only. (J
18030 4f 29 0a 0a 38 2f 31 34 2f 39 36 20 28 62 75 67  O)..8/14/96 (bug
18040 20 66 69 78 29 20 54 68 65 20 6d 61 63 69 6e 74   fix) The macint
18050 6f 73 68 20 6e 6f 77 20 73 75 70 70 6f 72 74 73  osh now supports
18060 20 73 79 6e 63 68 72 6f 6e 6f 75 73 20 73 6f 63   synchronous soc
18070 6b 65 74 0a 63 6f 6e 6e 65 63 74 69 6f 6e 73 2e  ket.connections.
18080 20 20 4f 74 68 65 72 20 6d 69 6e 6f 72 20 62 75    Other minor bu
18090 67 73 20 77 65 72 65 20 61 6c 73 6f 20 66 69 78  gs were also fix
180a0 65 64 2e 20 28 52 4a 29 0a 0a 38 2f 31 35 2f 39  ed. (RJ)..8/15/9
180b0 36 20 28 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  6 (configuration
180c0 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20 43 68   improvement) Ch
180d0 61 6e 67 65 64 20 74 68 65 20 66 69 6c 65 20 70  anged the file p
180e0 61 74 63 68 6c 65 76 65 6c 2e 68 0a 74 6f 20 62  atchlevel.h.to b
180f0 65 20 74 63 6c 50 61 74 63 68 2e 68 2e 20 20 54  e tclPatch.h.  T
18100 68 69 73 20 61 76 6f 69 64 73 20 63 6f 6e 66 6c  his avoids confl
18110 69 63 74 20 77 69 74 68 20 74 68 65 20 54 6b 20  ict with the Tk 
18120 66 69 6c 65 20 61 6e 64 20 69 73 20 6e 6f 77 0a  file and is now.
18130 69 6e 20 38 2e 33 20 66 6f 72 6d 61 74 20 6f 6e  in 8.3 format on
18140 20 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61   the Windows pla
18150 74 66 6f 72 6d 2e 20 28 52 4a 29 0a 0a 38 2f 32  tform. (RJ)..8/2
18160 30 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  0/96 (bug fix) F
18170 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69  ixed core dump i
18180 6e 20 69 6e 74 65 72 70 20 61 6c 69 61 73 20 63  n interp alias c
18190 6f 6d 6d 61 6e 64 20 66 6f 72 20 69 6e 74 65 72  ommand for inter
181a0 70 72 65 74 65 72 73 0a 63 72 65 61 74 65 64 20  preters.created 
181b0 77 69 74 68 20 54 63 6c 5f 43 72 65 61 74 65 49  with Tcl_CreateI
181c0 6e 74 65 72 70 20 28 61 73 20 6f 70 70 6f 73 65  nterp (as oppose
181d0 64 20 74 6f 20 77 69 74 68 20 54 63 6c 5f 43 72  d to with Tcl_Cr
181e0 65 61 74 65 53 6c 61 76 65 29 2e 20 28 4a 4c 29  eateSlave). (JL)
181f0 0a 0a 38 2f 32 30 2f 39 36 20 28 62 75 67 20 66  ..8/20/96 (bug f
18200 69 78 29 20 4e 6f 20 6c 6f 6e 67 65 72 20 6d 61  ix) No longer ma
18210 73 6b 69 6e 67 20 45 43 4f 4e 4e 52 45 53 45 54  sking ECONNRESET
18220 20 6f 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b   on Windows sock
18230 65 74 73 20 73 6f 0a 74 68 61 74 20 74 68 65 20  ets so.that the 
18240 68 69 67 68 65 72 20 6c 65 76 65 6c 20 6f 66 20  higher level of 
18250 74 68 65 20 49 4f 20 6d 65 63 68 61 6e 69 73 6d  the IO mechanism
18260 20 73 65 65 73 20 74 68 65 20 65 72 72 6f 72 20   sees the error 
18270 69 6e 73 74 65 61 64 20 6f 66 0a 65 6e 74 65 72  instead of.enter
18280 69 6e 67 20 61 6e 20 69 6e 66 69 6e 69 74 65 20  ing an infinite 
18290 6c 6f 6f 70 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30  loop. (JL)..8/20
182a0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 44 65  /96 (bug fix) De
182b0 73 74 72 6f 79 69 6e 67 20 74 68 65 20 6c 61 73  stroying the las
182c0 74 20 69 6e 74 65 72 70 72 65 74 65 72 20 6e 6f  t interpreter no
182d0 20 6c 6f 6e 67 65 72 20 63 6c 6f 73 65 73 20 74   longer closes t
182e0 68 65 0a 73 74 61 6e 64 61 72 64 20 63 68 61 6e  he.standard chan
182f0 6e 65 6c 73 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30  nels. (JL)..8/20
18300 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43 6c  /96 (bug fix) Cl
18310 6f 73 69 6e 67 20 6f 6e 65 20 6f 66 20 74 68 65  osing one of the
18320 20 73 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 6f   stdin, stdout o
18330 72 20 73 74 64 65 72 72 20 63 68 61 6e 6e 65 6c  r stderr channel
18340 73 20 61 6e 64 0a 74 68 65 6e 20 6f 70 65 6e 69  s and.then openi
18350 6e 67 20 61 20 6e 65 77 20 63 68 61 6e 6e 65 6c  ng a new channel
18360 20 6e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 61   now correctly a
18370 73 73 69 67 6e 73 20 74 68 65 20 6e 65 77 20 63  ssigns the new c
18380 68 61 6e 6e 65 6c 20 61 73 20 74 68 65 0a 73 74  hannel as the.st
18390 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 20 74  andard channel t
183a0 68 61 74 20 77 61 73 20 63 6c 6f 73 65 64 2e 20  hat was closed. 
183b0 28 4a 4c 29 0a 0a 38 2f 32 30 2f 39 36 20 28 62  (JL)..8/20/96 (b
183c0 75 67 20 66 69 78 29 20 41 64 64 65 64 20 63 6f  ug fix) Added co
183d0 64 65 20 74 6f 20 75 6e 69 78 2f 74 63 6c 55 6e  de to unix/tclUn
183e0 69 78 43 68 61 6e 2e 63 20 66 6f 72 20 75 73 69  ixChan.c for usi
183f0 6e 67 20 69 6f 63 74 6c 20 77 69 74 68 0a 46 49  ng ioctl with.FI
18400 4f 4e 42 49 4f 20 69 6e 73 74 65 61 64 20 6f 66  ONBIO instead of
18410 20 66 63 6e 74 6c 20 77 69 74 68 20 4f 5f 4e 4f   fcntl with O_NO
18420 4e 42 4c 4f 43 4b 2c 20 66 6f 72 20 74 68 6f 73  NBLOCK, for thos
18430 65 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 55 6e  e versions of Un
18440 69 78 20 77 68 65 72 65 0a 65 69 74 68 65 72 20  ix where.either 
18450 4f 5f 4e 4f 4e 42 4c 4f 43 4b 20 69 73 20 6e 6f  O_NONBLOCK is no
18460 74 20 73 75 70 70 6f 72 74 65 64 20 6f 72 20 69  t supported or i
18470 6d 70 6c 65 6d 65 6e 74 65 64 20 69 6e 63 6f 72  mplemented incor
18480 72 65 63 74 6c 79 2e 20 28 4a 4c 29 0a 0a 38 2f  rectly. (JL)..8/
18490 32 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  21/96 (bug fix) 
184a0 46 69 78 65 64 20 22 66 69 6c 65 20 65 78 74 65  Fixed "file exte
184b0 6e 73 69 6f 6e 22 20 73 6f 20 69 74 20 63 6f 72  nsion" so it cor
184c0 72 65 63 74 6c 79 20 72 65 74 75 72 6e 73 20 74  rectly returns t
184d0 68 65 0a 65 78 74 65 6e 73 69 6f 6e 20 6f 6e 20  he.extension on 
184e0 66 69 6c 65 73 20 6c 69 6b 65 20 22 66 6f 6f 2e  files like "foo.
184f0 2e 63 22 20 61 73 20 22 2e 2e 63 22 20 69 6e 73  .c" as "..c" ins
18500 74 65 61 64 20 6f 66 20 22 2e 63 22 2e 20 28 53  tead of ".c". (S
18510 53 29 0a 0a 38 2f 32 32 2f 39 36 20 28 62 75 67  S)..8/22/96 (bug
18520 20 66 69 78 29 20 49 66 20 65 6e 76 69 72 6f 6e   fix) If environ
18530 5b 5d 20 63 6f 6e 74 61 69 6e 73 20 73 74 61 74  [] contains stat
18540 69 63 20 73 74 72 69 6e 67 73 2c 20 54 63 6c 20  ic strings, Tcl 
18550 77 6f 75 6c 64 20 63 6f 72 65 0a 64 75 6d 70 20  would core.dump 
18560 69 6e 20 54 63 6c 53 65 74 75 70 45 6e 76 20 62  in TclSetupEnv b
18570 65 63 61 75 73 65 20 69 74 20 77 61 73 20 74 72  ecause it was tr
18580 79 69 6e 67 20 74 6f 20 77 72 69 74 65 20 4e 55  ying to write NU
18590 4c 4c 73 20 69 6e 74 6f 20 74 68 65 20 61 63 74  LLs into the act
185a0 75 61 6c 0a 64 61 74 61 20 69 6e 20 65 6e 76 69  ual.data in envi
185b0 72 6f 6e 5b 5d 2e 20 4e 6f 77 20 77 65 20 69 6e  ron[]. Now we in
185c0 73 74 65 61 64 20 63 6f 70 79 20 61 73 20 61 70  stead copy as ap
185d0 70 72 6f 70 72 69 61 74 65 2e 20 28 4a 4c 29 0a  propriate. (JL).
185e0 0a 38 2f 32 32 2f 39 36 20 28 61 64 64 65 64 20  .8/22/96 (added 
185f0 69 6d 70 6c 29 20 41 64 64 65 64 20 6d 69 73 73  impl) Added miss
18600 69 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ing implementati
18610 6f 6e 20 6f 66 20 54 63 6c 5f 4d 61 6b 65 54 63  on of Tcl_MakeTc
18620 70 43 6c 69 65 6e 74 43 68 61 6e 6e 65 6c 0a 66  pClientChannel.f
18630 6f 72 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66  or Windows platf
18640 6f 72 6d 2e 20 43 6f 64 65 20 63 6f 6e 74 72 69  orm. Code contri
18650 62 75 74 65 64 20 62 79 20 4d 61 72 6b 20 44 69  buted by Mark Di
18660 65 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 38 2f  ekhans. (JL)..8/
18670 32 32 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  22/96 (new featu
18680 72 65 29 20 41 64 64 65 64 20 61 20 6e 65 77 20  re) Added a new 
18690 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 6f 72  memory allocator
186a0 20 66 6f 72 20 74 68 65 20 4d 61 63 69 6e 74 6f   for the Macinto
186b0 73 68 0a 76 65 72 73 69 6f 6e 20 6f 66 20 54 63  sh.version of Tc
186c0 6c 2e 20 20 49 74 27 73 20 71 75 69 74 65 20 61  l.  It's quite a
186d0 20 62 69 74 20 66 61 73 74 65 72 20 74 68 61 6e   bit faster than
186e0 20 4d 65 74 72 6f 57 65 72 6b 27 73 20 76 65 72   MetroWerk's ver
186f0 73 69 6f 6e 2e 20 28 52 4a 29 0a 0a 38 2f 32 36  sion. (RJ)..8/26
18700 2f 39 36 20 28 64 6f 63 75 6d 65 6e 74 61 74 69  /96 (documentati
18710 6f 6e 20 75 70 64 61 74 65 29 20 52 65 6d 6f 76  on update) Remov
18720 65 64 20 6f 6c 64 20 63 68 61 6e 67 65 20 62 61  ed old change ba
18730 72 73 20 28 66 6f 72 20 61 6c 6c 20 63 68 61 6e  rs (for all chan
18740 67 65 73 0a 69 6e 20 54 63 6c 20 37 2e 35 20 61  ges.in Tcl 7.5 a
18750 6e 64 20 65 61 72 6c 69 65 72 20 72 65 6c 65 61  nd earlier relea
18760 73 65 73 29 20 66 72 6f 6d 20 6d 61 6e 75 61 6c  ses) from manual
18770 20 65 6e 74 72 69 65 73 2e 20 28 4a 4f 29 0a 0a   entries. (JO)..
18780 38 2f 32 37 2f 39 36 20 28 65 6e 68 61 6e 63 65  8/27/96 (enhance
18790 6d 65 6e 74 29 20 54 68 65 20 65 78 65 63 20 61  ment) The exec a
187a0 6e 64 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 73  nd open commands
187b0 20 62 65 68 61 76 65 20 62 65 74 74 65 72 20 61   behave better a
187c0 6e 64 20 77 6f 72 6b 20 69 6e 0a 6d 6f 72 65 20  nd work in.more 
187d0 73 69 74 75 61 74 69 6f 6e 73 20 75 6e 64 65 72  situations under
187e0 20 57 69 6e 64 6f 77 73 20 4e 54 20 61 6e 64 20   Windows NT and 
187f0 57 69 6e 64 6f 77 73 20 39 35 2e 20 20 44 6f 63  Windows 95.  Doc
18800 75 6d 65 6e 74 61 74 69 6f 6e 20 64 65 73 63 72  umentation descr
18810 69 62 65 73 0a 77 68 61 74 20 69 73 20 73 74 69  ibes.what is sti
18820 6c 6c 20 6c 61 63 6b 69 6e 67 2e 20 28 43 53 29  ll lacking. (CS)
18830 0a 0a 38 2f 32 37 2f 39 36 20 28 65 6e 68 61 6e  ..8/27/96 (enhan
18840 63 65 6d 65 6e 74 29 20 54 68 65 20 57 69 6e 64  cement) The Wind
18850 6f 77 73 20 6d 61 6b 65 66 69 6c 65 73 20 77 69  ows makefiles wi
18860 6c 6c 20 6e 6f 77 20 63 6f 6d 70 69 6c 65 20 65  ll now compile e
18870 76 65 6e 20 69 66 20 74 68 65 0a 63 6f 6d 70 69  ven if the.compi
18880 6c 65 72 20 69 73 20 6e 6f 74 20 69 6e 20 74 68  ler is not in th
18890 65 20 70 61 74 68 20 61 6e 64 2f 6f 72 20 74 68  e path and/or th
188a0 65 20 63 6f 6d 70 69 6c 65 72 27 73 20 65 6e 76  e compiler's env
188b0 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c  ironment variabl
188c0 65 73 0a 68 61 76 65 20 6e 6f 74 20 62 65 65 6e  es.have not been
188d0 20 73 65 74 20 75 70 2e 20 28 43 53 29 0a 0a 38   set up. (CS)..8
188e0 2f 32 37 2f 39 36 20 28 63 6f 6e 66 69 67 75 72  /27/96 (configur
188f0 61 74 69 6f 6e 20 69 6d 70 72 6f 76 65 6d 65 6e  ation improvemen
18900 74 29 20 54 68 65 20 57 69 6e 64 6f 77 73 20 72  t) The Windows r
18910 65 73 6f 75 72 63 65 20 66 69 6c 65 73 20 61 72  esource files ar
18920 65 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20  e.automatically 
18930 75 70 64 61 74 65 64 20 77 68 65 6e 20 74 68 65  updated when the
18940 20 76 65 72 73 69 6f 6e 2f 70 61 74 63 68 20 6c   version/patch l
18950 65 76 65 6c 20 63 68 61 6e 67 65 73 2e 20 20 54  evel changes.  T
18960 68 65 20 68 65 61 64 65 72 20 66 69 6c 65 0a 6e  he header file.n
18970 6f 77 20 68 61 73 20 61 20 63 6f 6d 6d 65 6e 74  ow has a comment
18980 20 74 68 61 74 20 72 65 6d 69 6e 64 73 20 74 68   that reminds th
18990 65 20 75 73 65 72 20 77 68 69 63 68 20 6f 74 68  e user which oth
189a0 65 72 20 66 69 6c 65 73 20 6d 75 73 74 20 62 65  er files must be
189b0 20 6d 61 6e 75 61 6c 6c 79 0a 75 70 64 61 74 65   manually.update
189c0 64 20 77 68 65 6e 20 74 68 65 20 76 65 72 73 69  d when the versi
189d0 6f 6e 2f 70 61 74 63 68 20 6c 65 76 65 6c 20 63  on/patch level c
189e0 68 61 6e 67 65 73 2e 20 28 43 53 29 0a 0a 38 2f  hanges. (CS)..8/
189f0 32 38 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  28/96 (new featu
18a00 72 65 29 20 41 64 64 65 64 20 66 69 6c 65 20 6d  re) Added file m
18a10 61 6e 69 70 75 6c 61 74 69 6f 6e 20 66 65 61 74  anipulation feat
18a20 75 72 65 73 20 28 63 6f 70 79 2c 20 72 65 6e 61  ures (copy, rena
18a30 6d 65 2c 20 64 65 6c 65 74 65 2c 0a 6d 6b 64 69  me, delete,.mkdi
18a40 72 29 20 74 68 61 74 20 61 72 65 20 73 75 70 70  r) that are supp
18a50 6f 72 74 65 64 20 6f 6e 20 61 6c 6c 20 70 6c 61  orted on all pla
18a60 74 66 6f 72 6d 73 2e 20 54 68 65 79 20 61 72 65  tforms. They are
18a70 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20 61 73 0a   implemented as.
18a80 73 75 62 63 6f 6d 6d 61 6e 64 73 20 74 6f 20 74  subcommands to t
18a90 68 65 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e  he "file" comman
18aa0 64 2e 20 53 65 65 20 74 68 65 20 64 6f 63 75 6d  d. See the docum
18ab0 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65  entation for the
18ac0 20 22 66 69 6c 65 22 0a 63 6f 6d 6d 61 6e 64 20   "file".command 
18ad0 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61  for more informa
18ae0 74 69 6f 6e 2e 20 28 4a 48 29 0a 0a 2d 2d 2d 2d  tion. (JH)..----
18af0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
18b00 6c 65 61 73 65 64 20 37 2e 36 62 31 2c 20 38 2f  leased 7.6b1, 8/
18b10 33 30 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  30/96 ----------
18b20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39  -------------..9
18b30 2f 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /3/96 (bug fix) 
18b40 53 69 6d 70 6c 69 66 69 65 64 20 63 6f 64 65 20  Simplified code 
18b50 73 6f 20 74 68 61 74 20 73 74 61 6e 64 61 72 64  so that standard
18b60 20 63 68 61 6e 6e 65 6c 73 20 61 72 65 20 63 72   channels are cr
18b70 65 61 74 65 64 0a 6c 61 7a 69 6c 79 2c 20 74 68  eated.lazily, th
18b80 65 79 20 61 72 65 20 61 64 64 65 64 20 74 6f 20  ey are added to 
18b90 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20 6c  an interpreter l
18ba0 61 7a 69 6c 79 2c 20 61 6e 64 20 74 68 65 79 20  azily, and they 
18bb0 61 72 65 20 6e 65 76 65 72 20 61 64 64 65 64 0a  are never added.
18bc0 74 6f 20 61 20 73 61 66 65 20 69 6e 74 65 72 70  to a safe interp
18bd0 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 39 2f 33  reter. (JL)..9/3
18be0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43 6c  /96 (bug fix) Cl
18bf0 6f 73 69 6e 67 20 61 20 63 68 61 6e 6e 65 6c 20  osing a channel 
18c00 61 66 74 65 72 20 63 6c 6f 73 69 6e 67 20 61 20  after closing a 
18c10 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c  standard channel
18c20 2c 20 65 2e 67 2e 0a 73 74 64 6f 75 74 2c 20 77  , e.g..stdout, w
18c30 6f 75 6c 64 20 63 61 75 73 65 20 74 68 65 20 69  ould cause the i
18c40 6d 70 6c 69 63 69 74 20 72 65 63 72 65 61 74 69  mplicit recreati
18c50 6f 6e 20 6f 66 20 74 68 61 74 20 73 74 61 6e 64  on of that stand
18c60 61 72 64 20 63 68 61 6e 6e 65 6c 2e 20 28 4a 4c  ard channel. (JL
18c70 29 0a 0a 39 2f 33 2f 39 36 20 28 6e 65 77 20 66  )..9/3/96 (new f
18c80 65 61 74 75 72 65 29 20 4e 6f 77 20 63 61 6c 6c  eature) Now call
18c90 69 6e 67 20 54 63 6c 5f 52 65 67 69 73 74 65 72  ing Tcl_Register
18ca0 43 68 61 6e 6e 65 6c 20 77 69 74 68 20 61 20 4e  Channel with a N
18cb0 55 4c 4c 0a 69 6e 74 65 72 70 72 65 74 65 72 20  ULL.interpreter 
18cc0 69 6e 63 72 65 6d 65 6e 74 73 20 74 68 65 20 72  increments the r
18cd0 65 66 63 6f 75 6e 74 20 73 6f 20 74 68 61 74 20  efcount so that 
18ce0 63 6f 64 65 20 6f 75 74 73 69 64 65 20 61 6e 79  code outside any
18cf0 20 69 6e 74 65 72 70 72 65 74 65 72 0a 63 61 6e   interpreter.can
18d00 20 75 73 65 20 63 68 61 6e 6e 65 6c 73 20 74 68   use channels th
18d10 61 74 20 61 72 65 20 61 6c 73 6f 20 72 65 67 69  at are also regi
18d20 73 74 65 72 65 64 20 69 6e 20 69 6e 74 65 72 70  stered in interp
18d30 72 65 74 65 72 73 2c 20 77 69 74 68 6f 75 74 20  reters, without 
18d40 77 6f 72 72 79 69 6e 67 0a 74 68 61 74 20 74 68  worrying.that th
18d50 65 20 63 68 61 6e 6e 65 6c 20 6d 61 79 20 74 75  e channel may tu
18d60 72 6e 20 69 6e 74 6f 20 61 20 64 61 6e 67 6c 69  rn into a dangli
18d70 6e 67 20 70 6f 69 6e 74 65 72 20 61 74 20 61 6e  ng pointer at an
18d80 79 20 74 69 6d 65 2e 20 43 61 6c 6c 69 6e 67 0a  y time. Calling.
18d90 54 63 6c 5f 55 6e 72 65 67 69 73 74 65 72 43 68  Tcl_UnregisterCh
18da0 61 6e 6e 65 6c 20 77 69 74 68 20 61 20 4e 55 4c  annel with a NUL
18db0 4c 20 69 6e 74 65 72 70 72 65 74 65 72 20 6f 6e  L interpreter on
18dc0 6c 79 20 64 65 63 72 65 6d 65 6e 74 73 20 74 68  ly decrements th
18dd0 65 20 72 65 63 6f 75 6e 74 0a 73 6f 20 74 68 61  e recount.so tha
18de0 74 20 63 6f 64 65 20 6f 75 74 73 69 64 65 20 61  t code outside a
18df0 6e 79 20 69 6e 74 65 72 70 72 65 74 65 72 20 63  ny interpreter c
18e00 61 6e 20 73 61 66 65 6c 79 20 64 65 63 6c 61 72  an safely declar
18e10 65 20 69 74 20 69 73 20 6e 6f 20 6c 6f 6e 67 65  e it is no longe
18e20 72 0a 69 6e 74 65 72 65 73 74 65 64 20 69 6e 20  r.interested in 
18e30 61 20 63 68 61 6e 6e 65 6c 2e 20 28 4a 4c 29 0a  a channel. (JL).
18e40 0a 39 2f 34 2f 39 36 20 28 6e 65 77 20 66 65 61  .9/4/96 (new fea
18e50 74 75 72 65 73 29 20 54 77 6f 20 63 68 61 6e 67  tures) Two chang
18e60 65 73 20 74 6f 20 64 79 6e 61 6d 69 63 20 6c 6f  es to dynamic lo
18e70 61 64 69 6e 67 3a 0a 20 20 20 20 2d 20 49 66 20  ading:.    - If 
18e80 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 20 69 73  the file name is
18e90 20 65 6d 70 74 79 20 69 6e 20 74 68 65 20 22 6c   empty in the "l
18ea0 6f 61 64 22 20 63 6f 6d 6d 61 6e 64 20 61 6e 64  oad" command and
18eb0 20 74 68 65 72 65 20 69 73 20 6e 6f 0a 20 20 20   there is no.   
18ec0 20 20 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 6f     statically lo
18ed0 61 64 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20  aded version of 
18ee0 74 68 65 20 70 61 63 6b 61 67 65 2c 20 61 20 64  the package, a d
18ef0 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 6f 61 64 65  ynamically loade
18f00 64 0a 20 20 20 20 20 20 76 65 72 73 69 6f 6e 20  d.      version 
18f10 77 69 6c 6c 20 62 65 20 75 73 65 64 20 69 66 20  will be used if 
18f20 74 68 65 72 65 20 69 73 20 6f 6e 65 2e 0a 20 20  there is one..  
18f30 20 20 2d 20 54 63 6c 5f 53 74 61 74 69 63 50 61    - Tcl_StaticPa
18f40 63 6b 61 67 65 20 69 67 6e 6f 72 65 73 20 72 65  ckage ignores re
18f50 64 75 6e 64 61 6e 74 20 63 61 6c 6c 73 20 66 6f  dundant calls fo
18f60 72 20 74 68 65 20 73 61 6d 65 20 70 61 63 6b 61  r the same packa
18f70 67 65 2e 20 28 4a 4f 29 0a 0a 39 2f 36 2f 39 36  ge. (JO)..9/6/96
18f80 20 28 62 75 67 20 66 69 78 29 20 50 6c 61 74 66   (bug fix) Platf
18f90 6f 72 6d 20 73 70 65 63 69 66 69 63 20 70 72 6f  orm specific pro
18fa0 63 65 64 75 72 65 73 20 66 6f 72 20 6d 61 6e 69  cedures for mani
18fb0 70 75 6c 61 74 69 6e 67 20 66 69 6c 65 73 20 61  pulating files a
18fc0 72 65 0a 6e 6f 20 6c 6f 6e 67 65 72 20 6d 61 63  re.no longer mac
18fd0 72 6f 73 20 61 6e 64 20 68 61 76 65 20 62 65 65  ros and have bee
18fe0 6e 20 70 72 65 66 69 78 65 64 20 77 69 74 68 20  n prefixed with 
18ff0 22 54 63 6c 70 22 2c 20 73 75 63 68 20 61 73 20  "Tclp", such as 
19000 54 63 6c 70 52 65 6e 61 6d 65 46 69 6c 65 2e 0a  TclpRenameFile..
19010 55 6e 69 78 20 66 69 6c 65 20 63 6f 64 65 20 6e  Unix file code n
19020 6f 77 20 68 61 6e 64 6c 65 73 20 73 79 6d 62 6f  ow handles symbo
19030 6c 69 63 20 6c 69 6e 6b 73 20 61 6e 64 20 6f 74  lic links and ot
19040 68 65 72 20 73 70 65 63 69 61 6c 20 66 69 6c 65  her special file
19050 73 20 63 6f 72 72 65 63 74 6c 79 2e 0a 54 68 65  s correctly..The
19060 20 73 65 6d 61 6e 74 69 63 73 20 6f 66 20 66 69   semantics of fi
19070 6c 65 20 63 6f 70 79 20 61 6e 64 20 66 69 6c 65  le copy and file
19080 20 72 65 6e 61 6d 65 20 68 61 73 20 62 65 65 6e   rename has been
19090 20 63 68 61 6e 67 65 64 20 73 6f 20 74 68 61 74   changed so that
190a0 20 69 66 0a 61 20 74 61 72 67 65 74 20 64 69 72   if.a target dir
190b0 65 63 74 6f 72 79 20 65 78 69 73 74 73 2c 20 74  ectory exists, t
190c0 68 65 20 73 6f 75 72 63 65 20 66 69 6c 65 73 20  he source files 
190d0 77 69 6c 6c 20 4e 4f 54 20 62 65 20 6d 65 72 67  will NOT be merg
190e0 65 64 20 77 69 74 68 20 74 68 65 0a 65 78 69 73  ed with the.exis
190f0 74 69 6e 67 20 66 69 6c 65 73 2e 20 28 4a 48 29  ting files. (JH)
19100 0a 0a 39 2f 36 2f 39 36 20 28 62 75 67 20 66 69  ..9/6/96 (bug fi
19110 78 29 20 49 66 20 73 74 61 6e 64 61 72 64 20 63  x) If standard c
19120 68 61 6e 6e 65 6c 20 69 73 20 4e 55 4c 4c 2c 20  hannel is NULL, 
19130 62 65 63 61 75 73 65 20 54 63 6c 20 63 61 6e 6e  because Tcl cann
19140 6f 74 20 63 6f 6e 6e 65 63 74 0a 74 6f 20 74 68  ot connect.to th
19150 65 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e  e standard chann
19160 65 6c 2c 20 64 6f 20 6e 6f 74 20 69 6e 63 72 65  el, do not incre
19170 6d 65 6e 74 20 74 68 65 20 72 65 66 63 6f 75 6e  ment the refcoun
19180 74 2e 20 54 68 65 20 63 68 61 6e 6e 65 6c 20 63  t. The channel c
19190 61 6e 0a 62 65 20 4e 55 4c 4c 20 69 66 20 74 68  an.be NULL if th
191a0 65 72 65 20 69 73 20 66 6f 72 20 65 78 61 6d 70  ere is for examp
191b0 6c 65 20 6e 6f 20 73 74 61 6e 64 61 72 64 20 69  le no standard i
191c0 6e 70 75 74 2e 20 28 4a 4c 29 0a 0a 39 2f 36 2f  nput. (JL)..9/6/
191d0 39 36 20 28 70 6f 72 74 61 62 69 6c 69 74 79 20  96 (portability 
191e0 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20 43 68 61  improvement) Cha
191f0 6e 67 65 64 20 70 61 72 73 69 6e 67 20 6f 66 20  nged parsing of 
19200 62 61 63 6b 73 6c 61 73 68 20 73 65 71 75 65 6e  backslash sequen
19210 63 65 73 0a 6c 69 6b 65 20 5c 6e 20 74 6f 20 74  ces.like \n to t
19220 72 61 6e 73 6c 61 74 65 20 64 69 72 65 63 74 6c  ranslate directl
19230 79 20 74 6f 20 61 62 73 6f 6c 75 74 65 20 76 61  y to absolute va
19240 6c 75 65 73 20 6c 69 6b 65 20 30 78 61 20 69 6e  lues like 0xa in
19250 73 74 65 61 64 20 6f 66 0a 6c 65 74 74 69 6e 67  stead of.letting
19260 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 64 6f   the compiler do
19270 20 74 68 65 20 74 72 61 6e 73 6c 61 74 69 6f 6e   the translation
19280 2e 20 20 54 68 69 73 20 67 75 61 72 61 6e 74 65  .  This guarante
19290 65 73 20 74 68 61 74 20 74 68 65 0a 74 72 61 6e  es that the.tran
192a0 73 6c 61 74 69 6f 6e 20 69 73 20 64 6f 6e 65 20  slation is done 
192b0 74 68 65 20 73 61 6d 65 20 65 76 65 72 79 77 68  the same everywh
192c0 65 72 65 2e 20 28 4a 4f 29 0a 0a 39 2f 39 2f 39  ere. (JO)..9/9/9
192d0 36 20 28 62 75 67 20 66 69 78 29 20 49 66 20 63  6 (bug fix) If c
192e0 68 61 6e 6e 65 6c 20 69 73 20 6f 70 65 6e 65 64  hannel is opened
192f0 20 61 6e 64 20 6e 6f 74 20 61 73 73 6f 63 69 61   and not associa
19300 74 65 64 20 77 69 74 68 20 61 6e 79 0a 69 6e 74  ted with any.int
19310 65 72 70 72 65 74 65 72 2c 20 62 75 74 20 54 63  erpreter, but Tc
19320 6c 20 64 65 63 69 64 65 73 20 74 6f 20 75 73 65  l decides to use
19330 20 69 74 20 61 73 20 6f 6e 65 20 6f 66 20 74 68   it as one of th
19340 65 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e  e standard chann
19350 65 6c 73 2c 20 69 74 0a 62 65 63 61 6d 65 20 69  els, it.became i
19360 6d 70 6f 73 73 69 62 6c 65 20 74 6f 20 63 6c 6f  mpossible to clo
19370 73 65 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 77  se the channel w
19380 69 74 68 20 54 63 6c 5f 43 6c 6f 73 65 20 2d 2d  ith Tcl_Close --
19390 20 69 6e 73 74 65 61 64 20 79 6f 75 20 68 61 64   instead you had
193a0 0a 74 6f 20 63 61 6c 6c 20 54 63 6c 5f 55 6e 72  .to call Tcl_Unr
193b0 65 67 69 73 74 65 72 43 68 61 6e 6e 65 6c 2e 20  egisterChannel. 
193c0 46 69 78 65 64 20 6e 6f 77 20 73 6f 20 74 68 61  Fixed now so tha
193d0 74 20 69 74 27 73 20 73 61 66 65 20 74 6f 20 63  t it's safe to c
193e0 61 6c 6c 0a 54 63 6c 5f 43 6c 6f 73 65 20 65 76  all.Tcl_Close ev
193f0 65 6e 20 77 68 65 6e 20 54 63 6c 20 69 73 20 75  en when Tcl is u
19400 73 69 6e 67 20 74 68 65 20 63 68 61 6e 6e 65 6c  sing the channel
19410 20 61 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 73   as one of the s
19420 74 61 6e 64 61 72 64 20 6f 6e 65 73 2e 20 28 4a  tandard ones. (J
19430 4c 29 0a 0a 39 2f 31 31 2f 39 36 20 28 66 65 61  L)..9/11/96 (fea
19440 74 75 72 65 20 63 68 61 6e 67 65 29 20 54 68 65  ture change) The
19450 20 54 63 6c 20 6c 69 62 72 61 72 79 20 69 73 20   Tcl library is 
19460 6e 6f 77 20 70 6c 61 63 65 64 20 69 6e 20 74 68  now placed in th
19470 65 20 54 63 6c 0a 73 68 61 72 65 64 20 6c 69 62  e Tcl.shared lib
19480 72 61 72 69 65 73 20 72 65 73 6f 75 72 63 65 2e  raries resource.
19490 20 20 59 6f 75 20 6e 6f 20 6c 6f 6e 67 65 72 20    You no longer 
194a0 6e 65 65 64 20 74 6f 20 70 6c 61 63 65 20 74 68  need to place th
194b0 65 20 54 63 6c 20 66 69 6c 65 73 0a 69 6e 20 79  e Tcl files.in y
194c0 6f 75 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 73  our applications
194d0 20 65 78 70 6c 69 63 69 74 6c 79 2e 20 20 28 52   explicitly.  (R
194e0 4a 29 0a 0a 39 2f 31 31 2f 39 36 20 28 66 65 61  J)..9/11/96 (fea
194f0 74 75 72 65 20 63 68 61 6e 67 65 29 20 45 78 74  ture change) Ext
19500 65 6e 73 69 6f 6e 73 20 6e 6f 20 6c 6f 6e 67 65  ensions no longe
19510 72 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20  r automatically 
19520 68 61 76 65 20 74 68 65 0a 72 65 73 6f 75 72 63  have the.resourc
19530 65 20 66 6f 72 6b 20 6f 66 20 74 68 65 20 65 78  e fork of the ex
19540 74 65 6e 73 69 6f 6e 20 6f 70 65 6e 65 64 20 66  tension opened f
19550 6f 72 20 69 74 2e 20 20 49 6e 73 74 65 61 64 20  or it.  Instead 
19560 79 6f 75 20 6e 65 65 64 20 74 6f 0a 75 73 65 20  you need to.use 
19570 74 68 65 20 74 63 6c 4d 61 63 4c 69 62 72 61 72  the tclMacLibrar
19580 79 2e 63 20 66 69 6c 65 20 69 6e 20 79 6f 75 72  y.c file in your
19590 20 65 78 74 65 6e 73 69 6f 6e 2e 20 20 28 52 4a   extension.  (RJ
195a0 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
195b0 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
195c0 2a 2a 2a 0a 0a 39 2f 31 32 2f 39 36 20 28 62 75  ***..9/12/96 (bu
195d0 67 20 66 69 78 29 20 54 68 65 20 65 78 74 65 6e  g fix) The exten
195e0 73 69 6f 6e 20 6c 6f 61 64 69 6e 67 20 6d 65 63  sion loading mec
195f0 68 61 6e 69 73 6d 20 6f 6e 20 74 68 65 20 4d 61  hanism on the Ma
19600 63 69 6e 74 6f 73 68 20 6e 6f 77 0a 6c 6f 6f 6b  cintosh now.look
19610 73 20 61 74 20 74 68 65 20 27 63 66 72 67 27 20  s at the 'cfrg' 
19620 72 65 73 6f 75 72 63 65 20 74 6f 20 64 65 74 65  resource to dete
19630 72 6d 69 6e 65 20 77 68 65 72 65 20 74 6f 20 6c  rmine where to l
19640 6f 61 64 20 74 68 65 20 63 6f 64 65 0a 66 72 61  oad the code.fra
19650 67 6d 65 6e 74 20 66 72 6f 6d 2e 20 20 54 68 69  gment from.  Thi
19660 73 20 6d 65 61 6e 73 20 46 41 54 20 66 72 61 67  s means FAT frag
19670 6d 65 6e 74 73 20 73 68 6f 75 6c 64 20 6e 6f 77  ments should now
19680 20 77 6f 72 6b 2e 20 28 52 4a 29 0a 0a 39 2f 31   work. (RJ)..9/1
19690 38 2f 39 36 20 28 65 6e 68 61 6e 63 65 6d 65 6e  8/96 (enhancemen
196a0 74 29 20 54 68 65 20 65 78 65 63 20 61 6e 64 20  t) The exec and 
196b0 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 73 20 62 65  open commands be
196c0 68 61 76 65 20 62 65 74 74 65 72 20 61 6e 64 20  have better and 
196d0 77 6f 72 6b 20 69 6e 0a 6d 6f 72 65 20 73 69 74  work in.more sit
196e0 75 61 74 69 6f 6e 73 20 75 6e 64 65 72 20 57 69  uations under Wi
196f0 6e 64 6f 77 73 20 33 2e 58 2e 20 20 44 6f 63 75  ndows 3.X.  Docu
19700 6d 65 6e 74 61 74 69 6f 6e 20 64 65 73 63 72 69  mentation descri
19710 62 65 73 20 77 68 61 74 20 69 73 20 73 74 69 6c  bes what is stil
19720 6c 0a 6c 61 63 6b 69 6e 67 2e 20 20 28 43 53 29  l.lacking.  (CS)
19730 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75 67 20 66  ..9/19/96 (bug f
19740 69 78 29 20 46 69 78 65 64 20 61 20 70 61 6e 69  ix) Fixed a pani
19750 63 20 77 68 69 63 68 20 77 6f 75 6c 64 20 6f 63  c which would oc
19760 63 75 72 20 69 66 20 79 6f 75 20 64 65 6c 65 74  cur if you delet
19770 65 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e 74  e a.non-existent
19780 20 61 6c 69 61 73 20 62 65 66 6f 72 65 20 61 6e   alias before an
19790 79 20 61 6c 69 61 73 65 73 20 61 72 65 20 63 72  y aliases are cr
197a0 65 61 74 65 64 2e 20 4e 6f 77 20 69 6e 73 74 65  eated. Now inste
197b0 61 64 20 63 6f 72 72 65 63 74 6c 79 0a 72 65 74  ad correctly.ret
197c0 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 74 68  urns an error th
197d0 61 74 20 74 68 65 20 61 6c 69 61 73 20 69 73 20  at the alias is 
197e0 6e 6f 74 20 66 6f 75 6e 64 2e 20 28 4a 4c 29 0a  not found. (JL).
197f0 0a 39 2f 31 39 2f 39 36 20 28 62 75 67 20 66 69  .9/19/96 (bug fi
19800 78 29 20 53 6c 61 76 65 20 69 6e 74 65 72 70 72  x) Slave interpr
19810 65 74 65 72 73 20 63 6f 75 6c 64 20 72 65 6e 61  eters could rena
19820 6d 65 20 61 6c 69 61 73 65 73 20 61 6e 64 20 74  me aliases and t
19830 68 65 79 20 77 6f 75 6c 64 0a 6e 6f 74 20 67 65  hey would.not ge
19840 74 20 64 65 6c 65 74 65 64 20 77 68 65 6e 20 74  t deleted when t
19850 68 65 20 61 6c 69 61 73 20 77 61 73 20 62 65 69  he alias was bei
19860 6e 67 20 72 65 64 65 66 69 6e 65 64 2e 20 54 68  ng redefined. Th
19870 69 73 20 6c 65 64 20 74 6f 20 64 61 6e 67 6c 69  is led to dangli
19880 6e 67 0a 70 6f 69 6e 74 65 72 73 20 65 74 63 2e  ng.pointers etc.
19890 20 28 4a 4c 29 0a 0a 39 2f 31 39 2f 39 36 20 28   (JL)..9/19/96 (
198a0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61  bug fix) Fixed a
198b0 20 70 61 6e 69 63 20 77 68 65 72 65 20 61 20 68   panic where a h
198c0 61 73 68 20 74 61 62 6c 65 20 65 6e 74 72 79 20  ash table entry 
198d0 77 61 73 20 62 65 69 6e 67 20 64 65 6c 65 74 65  was being delete
198e0 64 0a 74 77 69 63 65 20 64 75 72 69 6e 67 20 61  d.twice during a
198f0 6c 69 61 73 20 6d 61 6e 61 67 65 6d 65 6e 74 20  lias management 
19900 6f 70 65 72 61 74 69 6f 6e 73 2e 20 28 4a 4c 29  operations. (JL)
19910 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75 67 20 66  ..9/19/96 (bug f
19920 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e  ix) Fixed bug in
19930 20 65 76 65 6e 74 20 6c 6f 6f 70 20 74 68 61 74   event loop that
19940 20 63 6f 75 6c 64 20 63 61 75 73 65 20 74 68 65   could cause the
19950 20 69 6e 70 75 74 20 66 6f 63 75 73 0a 69 6e 20   input focus.in 
19960 54 6b 20 74 6f 20 67 65 74 20 63 6f 6e 66 75 73  Tk to get confus
19970 65 64 20 64 75 72 69 6e 67 20 6d 65 6e 75 20 74  ed during menu t
19980 72 61 76 65 72 73 61 6c 2c 20 61 6d 6f 6e 67 20  raversal, among 
19990 6f 74 68 65 72 20 70 72 6f 62 6c 65 6d 73 2e 20  other problems. 
199a0 20 54 68 65 0a 70 72 6f 62 6c 65 6d 20 77 61 73   The.problem was
199b0 20 72 65 6c 61 74 65 64 20 74 6f 20 68 61 6e 64   related to hand
199c0 6c 69 6e 67 20 6f 66 20 74 68 65 20 22 6d 61 72  ling of the "mar
199d0 6b 65 72 22 20 77 68 65 6e 20 69 74 73 20 65 76  ker" when its ev
199e0 65 6e 74 20 77 61 73 0a 64 65 6c 65 74 65 64 2e  ent was.deleted.
199f0 20 28 4a 4f 29 0a 0a 39 2f 32 36 2f 39 36 20 28   (JO)..9/26/96 (
19a00 62 75 67 20 66 69 78 29 20 57 69 6e 64 6f 77 73  bug fix) Windows
19a10 20 77 61 73 20 6c 6f 73 69 6e 67 20 45 4f 46 20   was losing EOF 
19a20 6f 6e 20 61 20 73 6f 63 6b 65 74 20 69 66 20 74  on a socket if t
19a30 68 65 20 46 44 5f 43 4c 4f 53 45 20 65 76 65 6e  he FD_CLOSE even
19a40 74 0a 68 61 70 70 65 6e 65 64 20 74 6f 20 70 72  t.happened to pr
19a50 65 63 65 64 65 20 61 6e 79 20 6c 65 66 74 20 6f  ecede any left o
19a60 76 65 72 20 46 44 5f 52 45 41 44 20 65 76 65 6e  ver FD_READ even
19a70 74 73 2e 20 4e 6f 77 20 63 6f 72 72 65 63 74 6c  ts. Now correctl
19a80 79 20 72 65 6d 65 6d 62 65 72 73 0a 73 65 65 69  y remembers.seei
19a90 6e 67 20 46 44 5f 43 4c 4f 53 45 2c 20 73 6f 20  ng FD_CLOSE, so 
19aa0 74 68 61 74 20 74 72 61 69 6c 69 6e 67 20 46 44  that trailing FD
19ab0 5f 52 45 41 44 20 65 76 65 6e 74 73 20 61 72 65  _READ events are
19ac0 20 6e 6f 74 20 64 69 73 63 61 72 64 65 64 20 69   not discarded i
19ad0 66 20 74 68 65 79 0a 64 6f 20 6e 6f 74 20 63 6f  f they.do not co
19ae0 6e 74 61 69 6e 20 61 6e 79 20 64 61 74 61 2e 20  ntain any data. 
19af0 54 68 69 73 20 61 6c 6c 6f 77 73 20 54 63 6c 20  This allows Tcl 
19b00 74 6f 20 63 6f 72 72 65 63 74 6c 79 20 67 65 74  to correctly get
19b10 20 61 20 7a 65 72 6f 20 72 65 61 64 20 61 6e 64   a zero read and
19b20 0a 6e 6f 74 69 63 65 20 45 4f 46 2e 20 28 4a 4c  .notice EOF. (JL
19b30 29 0a 0a 39 2f 32 36 2f 39 36 20 28 62 75 67 20  )..9/26/96 (bug 
19b40 66 69 78 29 20 57 61 73 20 6e 6f 74 20 72 65 73  fix) Was not res
19b50 65 74 74 69 6e 67 20 52 45 41 44 41 42 4c 45 20  etting READABLE 
19b60 73 74 61 74 65 20 70 72 6f 70 65 72 6c 79 20 6f  state properly o
19b70 6e 20 73 6f 63 6b 65 74 73 0a 75 6e 64 65 72 20  n sockets.under 
19b80 57 69 6e 64 6f 77 73 20 69 66 20 74 68 65 20 64  Windows if the d
19b90 72 69 76 65 72 20 64 69 73 63 61 72 64 65 64 20  river discarded 
19ba0 61 6e 20 46 44 5f 52 45 41 44 20 65 76 65 6e 74  an FD_READ event
19bb0 20 62 65 63 61 75 73 65 20 6e 6f 20 64 61 74 61   because no data
19bc0 20 77 61 73 0a 70 72 65 73 65 6e 74 2e 20 4e 6f   was.present. No
19bd0 77 20 63 6f 72 72 65 63 74 6c 79 20 72 65 73 65  w correctly rese
19be0 74 73 20 74 68 65 20 73 74 61 74 65 2e 20 28 4a  ts the state. (J
19bf0 4c 29 0a 0a 39 2f 33 30 2f 39 36 20 28 62 75 67  L)..9/30/96 (bug
19c00 20 66 69 78 29 20 4d 61 64 65 20 45 4f 46 20 73   fix) Made EOF s
19c10 74 69 63 6b 79 20 6f 6e 20 57 69 6e 64 6f 77 73  ticky on Windows
19c20 20 73 6f 63 6b 65 74 73 2c 20 73 6f 20 74 68 61   sockets, so tha
19c30 74 20 66 69 6c 65 65 76 65 6e 74 0a 72 65 61 64  t fileevent.read
19c40 61 62 6c 65 20 77 69 6c 6c 20 66 69 72 65 20 72  able will fire r
19c50 65 70 65 61 74 65 64 6c 79 20 75 6e 74 69 6c 20  epeatedly until 
19c60 74 68 65 20 73 6f 63 6b 65 74 20 69 73 20 63 6c  the socket is cl
19c70 6f 73 65 64 2e 20 50 72 65 76 69 6f 75 73 6c 79  osed. Previously
19c80 20 74 68 65 0a 66 69 6c 65 65 76 65 6e 74 20 66   the.fileevent f
19c90 69 72 65 64 20 6f 6e 6c 79 20 6f 6e 63 65 2e 20  ired only once. 
19ca0 54 68 69 73 20 63 6f 75 6c 64 20 6c 65 61 64 20  This could lead 
19cb0 74 6f 20 6e 65 76 65 72 2d 63 6c 6f 73 65 64 20  to never-closed 
19cc0 63 6f 6e 6e 65 63 74 69 6f 6e 73 20 69 66 0a 74  connections if.t
19cd0 68 65 20 54 63 6c 20 73 63 72 69 70 74 20 69 6e  he Tcl script in
19ce0 20 74 68 65 20 66 69 6c 65 65 76 65 6e 74 20 77   the fileevent w
19cf0 61 73 6e 27 74 20 63 6c 6f 73 69 6e 67 20 74 68  asn't closing th
19d00 65 20 73 6f 63 6b 65 74 20 69 6d 6d 65 64 69 61  e socket immedia
19d10 74 65 6c 79 2e 20 28 4a 4c 29 0a 0a 31 30 2f 32  tely. (JL)..10/2
19d20 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65  /96 (new feature
19d30 29 20 49 6d 70 72 6f 76 65 64 20 74 68 65 20 70  ) Improved the p
19d40 61 63 6b 61 67 65 20 6c 6f 61 64 65 72 3a 0a 20  ackage loader:. 
19d50 20 20 20 2d 20 41 64 64 65 64 20 6e 65 77 20 76     - Added new v
19d60 61 72 69 61 62 6c 65 20 74 63 6c 5f 70 6b 67 50  ariable tcl_pkgP
19d70 61 74 68 2c 20 77 68 69 63 68 20 68 6f 6c 64 73  ath, which holds
19d80 20 74 68 65 20 64 65 66 61 75 6c 74 0a 20 20 20   the default.   
19d90 20 20 20 64 69 72 65 63 74 6f 72 69 65 73 20 75     directories u
19da0 6e 64 65 72 20 77 68 69 63 68 20 70 61 63 6b 61  nder which packa
19db0 67 65 73 20 61 72 65 20 6e 6f 72 6d 61 6c 6c 79  ges are normally
19dc0 20 69 6e 73 74 61 6c 6c 65 64 20 28 65 61 63 68   installed (each
19dd0 0a 20 20 20 20 20 20 70 61 63 6b 61 67 65 20 67  .      package g
19de0 6f 65 73 20 69 6e 20 61 20 73 65 70 61 72 61 74  oes in a separat
19df0 65 20 73 75 62 64 69 72 65 63 74 6f 72 79 20 6f  e subdirectory o
19e00 66 20 61 20 64 69 72 65 63 74 6f 72 79 20 69 6e  f a directory in
19e10 0a 20 20 20 20 20 20 24 74 63 6c 5f 70 6b 67 50  .      $tcl_pkgP
19e20 61 74 68 29 2e 20 20 54 68 65 73 65 20 64 69 72  ath).  These dir
19e30 65 63 74 6f 72 69 65 73 20 61 72 65 20 69 6e 63  ectories are inc
19e40 6c 75 64 65 64 20 69 6e 20 61 75 74 6f 5f 70 61  luded in auto_pa
19e50 74 68 20 62 79 0a 20 20 20 20 20 20 64 65 66 61  th by.      defa
19e60 75 6c 74 2e 0a 20 20 20 20 2d 20 43 68 61 6e 67  ult..    - Chang
19e70 65 64 20 74 68 65 20 70 61 63 6b 61 67 65 20 61  ed the package a
19e80 75 74 6f 2d 6c 6f 61 64 65 72 20 74 6f 20 6c 6f  uto-loader to lo
19e90 6f 6b 20 66 6f 72 20 70 6b 67 49 6e 64 65 78 2e  ok for pkgIndex.
19ea0 74 63 6c 20 66 69 6c 65 73 0a 20 20 20 20 20 20  tcl files.      
19eb0 6e 6f 74 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20  not only in the 
19ec0 61 75 74 6f 5f 70 61 74 68 20 64 69 72 65 63 74  auto_path direct
19ed0 6f 72 69 65 73 20 62 75 74 20 61 6c 73 6f 20 69  ories but also i
19ee0 6e 20 74 68 65 69 72 20 69 6d 6d 65 64 69 61 74  n their immediat
19ef0 65 0a 20 20 20 20 20 20 63 68 69 6c 64 72 65 6e  e.      children
19f00 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 6d  .  This should m
19f10 61 6b 65 20 69 74 20 65 61 73 69 65 72 20 74 6f  ake it easier to
19f20 20 69 6e 73 74 61 6c 6c 20 61 6e 64 20 75 6e 69   install and uni
19f30 6e 73 74 61 6c 6c 0a 20 20 20 20 20 20 70 61 63  nstall.      pac
19f40 6b 61 67 65 73 20 28 64 6f 6e 27 74 20 68 61 76  kages (don't hav
19f50 65 20 74 6f 20 63 68 61 6e 67 65 20 61 75 74 6f  e to change auto
19f60 5f 70 61 74 68 20 6f 72 20 6d 65 72 67 65 20 70  _path or merge p
19f70 6b 67 49 6e 64 65 78 2e 74 63 6c 0a 20 20 20 20  kgIndex.tcl.    
19f80 20 20 66 69 6c 65 73 29 2e 20 28 4a 4f 29 0a 0a    files). (JO)..
19f90 31 30 2f 33 2f 39 36 20 28 62 75 67 20 66 69 78  10/3/96 (bug fix
19fa0 29 20 43 68 61 6e 67 65 64 20 74 63 6c 73 68 20  ) Changed tclsh 
19fb0 74 6f 20 6c 6f 6f 6b 20 66 6f 72 20 74 63 6c 73  to look for tcls
19fc0 68 72 63 2e 74 63 6c 20 69 6e 73 74 65 61 64 20  hrc.tcl instead 
19fd0 6f 66 0a 74 63 6c 73 68 2e 72 63 20 6f 6e 20 73  of.tclsh.rc on s
19fe0 74 61 72 74 75 70 20 75 6e 64 65 72 20 57 69 6e  tartup under Win
19ff0 64 6f 77 73 2e 20 20 54 68 69 73 20 69 73 20 6d  dows.  This is m
1a000 6f 72 65 20 63 6f 6e 73 69 73 74 65 6e 74 20 77  ore consistent w
1a010 69 74 68 20 77 69 73 68 20 61 6e 64 0a 75 73 65  ith wish and.use
1a020 73 20 74 68 65 20 72 69 67 68 74 20 65 78 74 65  s the right exte
1a030 6e 73 69 6f 6e 2e 20 28 53 53 29 0a 2a 2a 2a 20  nsion. (SS).*** 
1a040 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
1a050 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31  ATIBILITY ***..1
1a060 30 2f 38 2f 39 36 20 28 62 75 67 20 66 69 78 29  0/8/96 (bug fix)
1a070 20 43 6f 6e 76 65 72 74 63 6c 6f 63 6b 20 64 6f   Convertclock do
1a080 65 73 20 6e 6f 74 20 70 61 72 73 65 20 32 34 2d  es not parse 24-
1a090 68 6f 75 72 20 74 69 6d 65 73 20 6f 66 20 74 68  hour times of th
1a0a0 65 0a 66 6f 72 6d 20 22 68 68 6d 6d 22 20 63 6f  e.form "hhmm" co
1a0b0 72 72 65 63 74 6c 79 20 77 68 65 6e 20 68 6f 75  rrectly when hou
1a0c0 72 20 3d 20 30 30 2e 20 20 49 6e 20 74 68 65 20  r = 00.  In the 
1a0d0 70 61 72 73 65 20 63 6f 64 65 2c 20 68 6f 75 72  parse code, hour
1a0e0 20 6d 75 73 74 20 62 65 0a 3e 3d 20 31 30 30 20   must be.>= 100 
1a0f0 66 6f 72 20 6d 69 6e 75 74 65 73 20 74 6f 20 62  for minutes to b
1a100 65 20 6e 6f 6e 2d 7a 65 72 6f 2e 20 20 54 68 61  e non-zero.  Tha
1a110 6e 6b 73 20 74 6f 20 4c 69 6e 74 20 4c 61 43 6f  nks to Lint LaCo
1a120 75 72 20 66 6f 72 20 74 68 69 73 0a 62 75 67 20  ur for this.bug 
1a130 66 69 78 2e 20 28 52 4a 29 0a 0a 31 30 2f 31 31  fix. (RJ)..10/11
1a140 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 55 6e  /96 (bug fix) Un
1a150 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 74 68 65  der Windows, the
1a160 20 70 69 64 20 63 6f 6d 6d 61 6e 64 20 72 65 74   pid command ret
1a170 75 72 6e 65 64 20 74 68 65 20 70 72 6f 63 65 73  urned the proces
1a180 73 0a 68 61 6e 64 6c 65 20 69 6e 73 74 65 61 64  s.handle instead
1a190 20 6f 66 20 74 68 65 20 70 72 6f 63 65 73 73 20   of the process 
1a1a0 69 64 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d  id. (SS)..------
1a1b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
1a1c0 61 73 65 64 20 37 2e 36 2c 20 31 30 2f 31 36 2f  ased 7.6, 10/16/
1a1d0 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  96 -------------
1a1e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 30 2f 32  ----------..10/2
1a1f0 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 55  9/96 (bug fix) U
1a200 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 73 6f  nder Windows, so
1a210 63 6b 65 74 73 20 77 6f 75 6c 64 20 63 6f 6e 73  ckets would cons
1a220 75 6d 65 20 31 30 30 25 20 43 50 55 20 74 69 6d  ume 100% CPU tim
1a230 65 20 61 66 74 65 72 0a 74 68 65 20 66 69 72 73  e after.the firs
1a240 74 20 61 63 63 65 70 74 28 29 2c 20 64 75 65 20  t accept(), due 
1a250 74 6f 20 61 20 74 79 70 6f 2e 20 28 4a 4c 29 0a  to a typo. (JL).
1a260 0a 31 30 2f 32 39 2f 39 36 20 28 62 75 67 20 66  .10/29/96 (bug f
1a270 69 78 29 20 49 6e 63 6f 72 72 65 63 74 20 72 65  ix) Incorrect re
1a280 66 63 6f 75 6e 74 20 6d 61 6e 61 67 65 6d 65 6e  fcount managemen
1a290 74 20 63 61 75 73 65 64 20 73 74 61 6e 64 61 72  t caused standar
1a2a0 64 20 63 68 61 6e 6e 65 6c 73 0a 6e 6f 74 20 74  d channels.not t
1a2b0 6f 20 67 65 74 20 64 65 6c 65 74 65 64 20 61 74  o get deleted at
1a2c0 20 70 72 6f 63 65 73 73 20 65 78 69 74 20 6f 72   process exit or
1a2d0 20 44 4c 4c 20 75 6e 6c 6f 61 64 20 74 69 6d 65   DLL unload time
1a2e0 2c 20 63 61 75 73 69 6e 67 20 61 20 6d 65 6d 6f  , causing a memo
1a2f0 72 79 0a 6c 65 61 6b 20 6f 66 20 75 70 77 61 72  ry.leak of upwar
1a300 64 73 20 6f 66 20 32 30 4b 20 65 61 63 68 20 74  ds of 20K each t
1a310 69 6d 65 2e 20 28 4a 4c 29 0a 0a 31 31 2f 37 2f  ime. (JL)..11/7/
1a320 39 36 20 28 62 75 67 20 66 69 78 29 20 41 75 74  96 (bug fix) Aut
1a330 6f 2d 65 78 65 63 20 64 69 64 6e 27 74 20 77 6f  o-exec didn't wo
1a340 72 6b 20 6f 6e 20 66 69 6c 65 20 6e 61 6d 65 73  rk on file names
1a350 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 65 64 0a   that contained.
1a360 73 70 61 63 65 73 2e 20 28 4a 4f 29 0a 0a 31 31  spaces. (JO)..11
1a370 2f 38 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /8/96 (bug fix) 
1a380 46 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20  Fixed core dump 
1a390 74 68 61 74 20 77 6f 75 6c 64 20 6f 63 63 75 72  that would occur
1a3a0 20 69 66 20 6d 6f 72 65 20 74 68 61 6e 20 6f 6e   if more than on
1a3b0 65 20 63 61 6c 6c 0a 74 6f 20 54 63 6c 5f 44 65  e call.to Tcl_De
1a3c0 6c 65 74 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c  leteChannelHandl
1a3d0 65 72 20 77 61 73 20 6d 61 64 65 20 74 6f 20 64  er was made to d
1a3e0 65 6c 65 74 65 20 61 20 67 69 76 65 6e 20 63 68  elete a given ch
1a3f0 61 6e 6e 65 6c 20 68 61 6e 64 6c 65 72 2e 20 28  annel handler. (
1a400 4a 4c 29 0a 0a 31 31 2f 38 2f 39 36 20 28 62 75  JL)..11/8/96 (bu
1a410 67 20 66 69 78 29 20 46 69 78 65 64 20 74 65 73  g fix) Fixed tes
1a420 74 20 66 6f 72 20 72 65 74 75 72 6e 20 76 61 6c  t for return val
1a430 75 65 20 69 6e 20 54 63 6c 5f 53 65 65 6b 20 61  ue in Tcl_Seek a
1a440 6e 64 20 54 63 6c 5f 53 65 65 6b 43 6d 64 0a 74  nd Tcl_SeekCmd.t
1a450 6f 20 6f 6e 6c 79 20 74 72 65 61 74 20 2d 31 20  o only treat -1 
1a460 61 73 20 65 72 72 6f 72 2c 20 69 6e 73 74 65 61  as error, instea
1a470 64 20 6f 66 20 61 6c 6c 20 6e 65 67 61 74 69 76  d of all negativ
1a480 65 20 6e 75 6d 62 65 72 73 2e 20 28 4a 4c 29 0a  e numbers. (JL).
1a490 0a 31 31 2f 31 32 2f 39 36 20 28 62 75 67 20 66  .11/12/96 (bug f
1a4a0 69 78 29 20 44 6f 20 6e 6f 74 20 62 6c 6f 63 6b  ix) Do not block
1a4b0 69 6e 67 20 77 61 69 74 69 6e 67 20 66 6f 72 20  ing waiting for 
1a4c0 70 72 6f 63 65 73 73 65 73 20 61 74 20 74 68 65  processes at the
1a4d0 20 65 6e 64 20 6f 66 20 61 0a 70 69 70 65 20 64   end of a.pipe d
1a4e0 75 72 69 6e 67 20 65 78 69 74 20 63 6c 65 61 6e  uring exit clean
1a4f0 75 70 2e 20 28 4a 4c 29 0a 0a 31 31 2f 31 32 2f  up. (JL)..11/12/
1a500 39 36 20 28 62 75 67 20 66 69 78 29 20 49 66 20  96 (bug fix) If 
1a510 77 65 20 61 72 65 20 69 6e 20 65 78 69 74 20 63  we are in exit c
1a520 6c 65 61 6e 75 70 2c 20 64 6f 20 6e 6f 74 20 63  leanup, do not c
1a530 6c 6f 73 65 20 74 68 65 20 73 79 73 74 65 6d 20  lose the system 
1a540 6c 65 76 65 6c 0a 66 69 6c 65 20 64 65 73 63 72  level.file descr
1a550 69 70 74 6f 72 73 20 30 2c 20 31 20 61 6e 64 20  iptors 0, 1 and 
1a560 32 2e 20 50 72 65 76 69 6f 75 73 6c 79 20 74 68  2. Previously th
1a570 65 79 20 77 65 72 65 20 62 65 69 6e 67 20 63 6c  ey were being cl
1a580 6f 73 65 64 20 77 68 69 63 68 20 69 73 0a 69 6e  osed which is.in
1a590 63 6f 72 72 65 63 74 2c 20 69 6e 20 74 68 65 20  correct, in the 
1a5a0 65 6d 62 65 64 64 65 64 20 63 61 73 65 2e 20 54  embedded case. T
1a5b0 68 69 73 20 6c 65 64 20 74 6f 20 77 65 69 72 64  his led to weird
1a5c0 20 62 65 68 61 76 69 6f 72 20 66 6f 72 20 70 72   behavior for pr
1a5d0 6f 67 72 61 6d 73 0a 74 68 61 74 20 77 61 6e 74  ograms.that want
1a5e0 20 74 6f 20 69 6e 74 65 72 70 6f 73 65 20 6f 6e   to interpose on
1a5f0 20 49 2f 4f 20 74 68 72 6f 75 67 68 20 74 68 65   I/O through the
1a600 20 73 74 61 6e 64 61 72 64 20 66 69 6c 65 20 64   standard file d
1a610 65 73 63 72 69 70 74 6f 72 73 20 28 65 2e 67 2e  escriptors (e.g.
1a620 0a 4e 65 74 73 63 61 70 65 20 4e 61 76 69 67 61  .Netscape Naviga
1a630 74 6f 72 29 2e 20 28 4a 4c 29 0a 0a 31 31 2f 31  tor). (JL)..11/1
1a640 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  5/96 (bug fix) F
1a650 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 6f  ixed core dump o
1a660 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74  n Windows socket
1a670 73 20 64 75 65 20 74 6f 20 64 65 70 65 6e 64 65  s due to depende
1a680 6e 63 79 20 6f 6e 0a 64 65 6c 65 74 69 6f 6e 20  ncy on.deletion 
1a690 6f 72 64 65 72 20 61 74 20 65 78 69 74 2e 20 4e  order at exit. N
1a6a0 6f 77 20 61 6c 6c 20 73 6f 63 6b 65 74 20 66 75  ow all socket fu
1a6b0 6e 63 74 69 6f 6e 73 20 63 68 65 63 6b 20 74 6f  nctions check to
1a6c0 20 73 65 65 20 69 66 20 73 6f 63 6b 65 74 73 0a   see if sockets.
1a6d0 61 72 65 20 28 73 74 69 6c 6c 29 20 69 6e 69 74  are (still) init
1a6e0 69 61 6c 69 7a 65 64 2c 20 62 65 66 6f 72 65 20  ialized, before 
1a6f0 63 61 6c 6c 69 6e 67 20 74 68 72 6f 75 67 68 20  calling through 
1a700 66 75 6e 63 74 69 6f 6e 20 70 6f 69 6e 74 65 72  function pointer
1a710 73 2e 20 42 65 66 6f 72 65 2c 0a 74 68 65 79 20  s. Before,.they 
1a720 77 6f 75 6c 64 20 63 61 6c 6c 20 61 6e 64 20 6d  would call and m
1a730 69 67 68 74 20 65 6e 64 20 75 70 20 63 61 6c 6c  ight end up call
1a740 69 6e 67 20 75 6e 6c 6f 61 64 65 64 20 6f 62 6a  ing unloaded obj
1a750 65 63 74 20 63 6f 64 65 2e 20 28 4a 4c 29 0a 0a  ect code. (JL)..
1a760 31 31 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69  11/15/96 (bug fi
1a770 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64 75  x) Fixed core du
1a780 6d 70 20 69 6e 20 57 69 6e 64 6f 77 73 20 73 6f  mp in Windows so
1a790 63 6b 65 74 20 69 6e 69 74 69 61 6c 69 7a 61 74  cket initializat
1a7a0 69 6f 6e 20 72 6f 75 74 69 6e 65 0a 69 66 20 73  ion routine.if s
1a7b0 6f 63 6b 65 74 73 20 77 65 72 65 20 6e 6f 74 20  ockets were not 
1a7c0 69 6e 73 74 61 6c 6c 65 64 20 6f 6e 20 74 68 65  installed on the
1a7d0 20 73 79 73 74 65 6d 2e 20 42 65 66 6f 72 65 2c   system. Before,
1a7e0 20 69 74 20 77 61 73 20 6e 6f 74 20 70 72 6f 70   it was not prop
1a7f0 65 72 6c 79 0a 63 68 65 63 6b 69 6e 67 20 74 68  erly.checking th
1a800 65 20 72 65 73 75 6c 74 20 6f 66 20 61 74 74 65  e result of atte
1a810 6d 70 74 69 6e 67 20 74 6f 20 6c 6f 61 64 20 74  mpting to load t
1a820 68 65 20 73 6f 63 6b 65 74 20 44 4c 4c 2c 20 73  he socket DLL, s
1a830 6f 20 69 74 20 77 6f 75 6c 64 20 63 61 6c 6c 0a  o it would call.
1a840 74 68 72 6f 75 67 68 20 75 6e 69 6e 69 74 69 61  through uninitia
1a850 6c 69 7a 65 64 20 66 75 6e 63 74 69 6f 6e 20 70  lized function p
1a860 6f 69 6e 74 65 72 73 2e 20 28 4a 4c 29 0a 0a 31  ointers. (JL)..1
1a870 31 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69 78  1/15/96 (bug fix
1a880 29 20 46 69 78 65 64 20 6d 65 6d 6f 72 79 20 6c  ) Fixed memory l
1a890 65 61 6b 20 69 6e 20 57 69 6e 64 6f 77 73 20 73  eak in Windows s
1a8a0 6f 63 6b 65 74 73 20 77 68 69 63 68 20 6c 65 66  ockets which lef
1a8b0 74 20 73 6f 63 6b 65 74 0a 44 4c 4c 20 68 61 6e  t socket.DLL han
1a8c0 64 6c 65 20 6f 70 65 6e 20 61 6e 64 20 63 6f 75  dle open and cou
1a8d0 6c 64 20 68 6f 6c 64 20 74 68 65 20 73 6f 63 6b  ld hold the sock
1a8e0 65 74 20 44 4c 4c 20 69 6e 20 6d 65 6d 6f 72 79  et DLL in memory
1a8f0 20 75 6e 65 63 63 65 73 73 61 72 69 6c 79 2c 0a   uneccessarily,.
1a900 75 6e 74 69 6c 20 61 20 72 65 62 6f 6f 74 2e 20  until a reboot. 
1a910 28 4a 4c 29 0a 0a 31 32 2f 34 2f 39 36 20 28 62  (JL)..12/4/96 (b
1a920 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
1a930 67 20 69 6e 20 4d 61 63 69 6e 74 6f 73 68 20 73  g in Macintosh s
1a940 6f 63 6b 65 74 20 63 6f 64 65 20 74 68 61 74 20  ocket code that 
1a950 63 6f 75 6c 64 20 72 65 73 75 6c 74 0a 69 6e 20  could result.in 
1a960 6c 6f 73 74 20 64 61 74 61 20 69 66 20 61 20 63  lost data if a c
1a970 6c 69 65 6e 74 20 77 61 73 20 63 6c 6f 73 65 64  lient was closed
1a980 20 74 6f 6f 20 73 6f 6f 6e 20 61 66 74 65 72 20   too soon after 
1a990 73 65 6e 64 69 6e 67 20 64 61 74 61 2e 20 28 52  sending data. (R
1a9a0 4a 29 0a 0a 31 32 2f 31 37 2f 39 36 20 28 62 75  J)..12/17/96 (bu
1a9b0 67 20 66 69 78 29 20 46 69 78 65 64 20 64 65 61  g fix) Fixed dea
1a9c0 64 6c 6f 63 6b 20 62 75 67 20 69 6e 20 57 69 6e  dlock bug in Win
1a9d0 64 6f 77 73 20 73 6f 63 6b 65 74 73 20 64 75 65  dows sockets due
1a9e0 20 74 6f 20 6c 6f 73 69 6e 67 20 61 6e 0a 65 76   to losing an.ev
1a9f0 65 6e 74 2e 20 54 68 69 73 20 77 61 73 20 68 61  ent. This was ha
1aa00 70 70 65 6e 69 6e 67 20 62 65 63 61 75 73 65 20  ppening because 
1aa10 6f 66 20 61 6e 20 69 6e 74 65 72 61 63 74 69 6f  of an interactio
1aa20 6e 20 62 65 74 77 65 65 6e 20 62 75 66 66 65 72  n between buffer
1aa30 69 6e 67 20 61 6e 64 0a 6e 6f 6e 62 6c 6f 63 6b  ing and.nonblock
1aa40 69 6e 67 20 6d 6f 64 65 20 6f 6e 20 73 6f 63 6b  ing mode on sock
1aa50 65 74 73 2e 20 4e 6f 77 20 73 77 69 74 63 68 65  ets. Now switche
1aa60 64 20 74 6f 20 73 6f 63 6b 65 74 73 20 62 65 69  d to sockets bei
1aa70 6e 67 20 62 6c 6f 63 6b 69 6e 67 20 62 79 0a 64  ng blocking by.d
1aa80 65 66 61 75 6c 74 2c 20 73 6f 20 77 65 20 61 72  efault, so we ar
1aa90 65 20 61 6c 73 6f 20 6e 6f 20 6c 6f 6e 67 65 72  e also no longer
1aaa0 20 65 6d 75 6c 61 74 69 6e 67 20 62 6c 6f 63 6b   emulating block
1aab0 69 6e 67 20 74 68 72 6f 75 67 68 20 61 20 70 72  ing through a pr
1aac0 69 76 61 74 65 0a 65 76 65 6e 74 20 6c 6f 6f 70  ivate.event loop
1aad0 2e 20 28 4a 4c 29 0a 0a 31 2f 32 31 2f 39 37 20  . (JL)..1/21/97 
1aae0 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 75 67  (performance bug
1aaf0 20 66 69 78 29 20 43 6c 69 65 6e 74 20 54 43 50   fix) Client TCP
1ab00 20 63 6f 6e 6e 65 63 74 69 6f 6e 73 20 77 65 72   connections wer
1ab10 65 20 73 6c 6f 77 20 74 6f 20 63 72 65 61 74 65  e slow to create
1ab20 0a 62 65 63 61 75 73 65 20 67 65 74 73 65 72 76  .because getserv
1ab30 62 79 6e 61 6d 65 20 77 61 73 20 61 6c 77 61 79  byname was alway
1ab40 73 20 63 61 6c 6c 65 64 20 6f 6e 20 74 68 65 20  s called on the 
1ab50 70 6f 72 74 2e 20 20 4e 6f 77 20 74 68 69 73 20  port.  Now this 
1ab60 69 73 20 6f 6e 6c 79 0a 64 6f 6e 65 20 69 66 20  is only.done if 
1ab70 54 63 6c 5f 47 65 74 49 6e 74 20 66 61 69 6c 73  Tcl_GetInt fails
1ab80 2e 20 28 42 57 29 0a 0a 31 2f 32 31 2f 39 37 20  . (BW)..1/21/97 
1ab90 28 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 66  (configuration f
1aba0 69 78 29 20 4d 61 64 65 20 69 74 20 70 6f 73 73  ix) Made it poss
1abb0 69 62 6c 65 20 74 6f 20 6f 76 65 72 72 69 64 65  ible to override
1abc0 20 54 43 4c 5f 50 41 43 4b 41 47 45 5f 50 41 54   TCL_PACKAGE_PAT
1abd0 48 0a 64 75 72 69 6e 67 20 6d 61 6b 65 2e 20 20  H.during make.  
1abe0 50 72 65 76 69 6f 75 73 6c 79 20 69 74 20 77 61  Previously it wa
1abf0 73 20 6f 6e 6c 79 20 73 65 74 20 64 75 72 69 6e  s only set durin
1ac00 67 20 61 75 74 6f 63 6f 6e 66 20 70 72 6f 63 65  g autoconf proce
1ac10 73 73 2e 0a 0a 31 2f 32 39 2f 39 37 20 28 62 75  ss...1/29/97 (bu
1ac20 67 20 66 69 78 29 20 46 69 78 65 64 20 73 6f 6d  g fix) Fixed som
1ac30 65 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20  e problems with 
1ac40 74 68 65 20 63 6c 6f 63 6b 20 63 6f 6d 6d 61 6e  the clock comman
1ac50 64 20 74 68 61 74 0a 69 6d 70 61 63 74 65 64 20  d that.impacted 
1ac60 68 6f 77 20 64 61 74 65 73 20 77 65 72 65 20 73  how dates were s
1ac70 63 61 6e 65 64 20 61 66 74 65 72 20 74 68 65 20  caned after the 
1ac80 79 65 61 72 20 32 30 30 30 2e 20 28 52 4a 29 0a  year 2000. (RJ).
1ac90 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
1aca0 2d 2d 20 52 65 6c 65 61 73 65 64 20 37 2e 36 70  -- Released 7.6p
1acb0 32 2c 20 31 2f 33 31 2f 39 37 20 2d 2d 2d 2d 2d  2, 1/31/97 -----
1acc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1acd0 2d 2d 0a 0a 32 2f 35 2f 39 37 20 28 62 75 67 20  --..2/5/97 (bug 
1ace0 66 69 78 29 20 46 69 78 65 64 20 61 20 62 75 67  fix) Fixed a bug
1acf0 20 77 68 65 72 65 20 69 6e 20 43 52 2d 4c 46 20   where in CR-LF 
1ad00 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64 65  translation mode
1ad10 2c 20 5c 72 20 62 79 74 65 73 0a 69 6e 20 74 68  , \r bytes.in th
1ad20 65 20 69 6e 70 75 74 20 73 74 72 65 61 6d 20 77  e input stream w
1ad30 65 72 65 20 6e 6f 74 20 62 65 69 6e 67 20 68 61  ere not being ha
1ad40 6e 64 6c 65 64 20 63 6f 72 72 65 63 74 6c 79 2e  ndled correctly.
1ad50 20 28 4a 4c 29 0a 0a 32 2f 32 34 2f 39 37 20 28   (JL)..2/24/97 (
1ad60 62 75 67 20 66 69 78 29 20 46 69 78 20 62 75 67  bug fix) Fix bug
1ad70 20 77 69 74 68 20 65 78 65 63 20 75 6e 64 65 72   with exec under
1ad80 20 57 69 6e 33 32 73 20 6e 6f 74 20 62 65 69 6e   Win32s not bein
1ad90 67 20 61 62 6c 65 20 74 6f 20 63 72 65 61 74 65  g able to create
1ada0 0a 73 74 64 65 72 72 20 66 69 6c 65 20 77 68 69  .stderr file whi
1adb0 63 68 20 63 61 75 73 65 64 20 61 6c 6c 20 65 78  ch caused all ex
1adc0 65 63 73 20 74 6f 20 66 61 69 6c 2e 20 20 46 69  ecs to fail.  Fi
1add0 78 65 64 20 74 65 6d 70 20 66 69 6c 65 20 6c 65  xed temp file le
1ade0 61 6b 20 75 6e 64 65 72 0a 57 69 6e 33 32 73 2e  ak under.Win32s.
1adf0 20 20 46 69 78 65 64 20 6f 70 74 69 6f 6e 61 6c    Fixed optional
1ae00 20 70 61 72 61 6d 65 74 65 72 20 62 75 67 20 77   parameter bug w
1ae10 69 74 68 20 53 65 61 72 63 68 50 61 74 68 20 74  ith SearchPath t
1ae20 68 61 74 20 6f 6e 6c 79 20 68 61 70 70 65 6e 65  hat only happene
1ae30 64 0a 75 6e 64 65 72 20 57 69 6e 33 32 73 20 31  d.under Win32s 1
1ae40 2e 32 35 2e 20 28 43 43 53 29 0a 0a 2d 2d 2d 2d  .25. (CCS)..----
1ae50 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ae60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ae70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ae80 2d 2d 2d 2d 2d 2d 0a 43 68 61 6e 67 65 73 20 66  ------.Changes f
1ae90 6f 72 20 54 63 6c 20 37 2e 36 20 67 6f 20 61 62  or Tcl 7.6 go ab
1aea0 6f 76 65 20 74 68 69 73 20 6c 69 6e 65 2e 0a 43  ove this line..C
1aeb0 68 61 6e 67 65 73 20 66 6f 72 20 54 63 6c 20 37  hanges for Tcl 7
1aec0 2e 37 20 67 6f 20 62 65 6c 6f 77 20 74 68 69 73  .7 go below this
1aed0 20 6c 69 6e 65 2e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d   line..---------
1aee0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aef0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af10 2d 0a 0a 35 2f 38 2f 39 36 20 28 6e 65 77 20 66  -..5/8/96 (new f
1af20 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63  eature) Added Tc
1af30 6c 5f 55 6e 67 65 74 73 20 43 20 41 50 49 20 66  l_Ungets C API f
1af40 6f 72 20 70 75 74 74 69 6e 67 20 61 20 73 65 71  or putting a seq
1af50 75 65 6e 63 65 20 6f 66 20 62 79 74 65 73 0a 69  uence of bytes.i
1af60 6e 74 6f 20 61 20 63 68 61 6e 6e 65 6c 27 73 20  nto a channel's 
1af70 69 6e 70 75 74 20 62 75 66 66 65 72 2e 20 54 68  input buffer. Th
1af80 69 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 66  is can be used f
1af90 6f 72 20 22 70 75 73 68 22 20 6d 6f 64 65 6c 20  or "push" model 
1afa0 63 68 61 6e 6e 65 6c 73 0a 77 68 65 72 65 20 74  channels.where t
1afb0 68 65 20 69 6e 70 75 74 20 69 73 20 6f 62 74 61  he input is obta
1afc0 69 6e 65 64 20 76 69 61 20 63 61 6c 6c 62 61 63  ined via callbac
1afd0 6b 73 20 69 6e 73 74 65 61 64 20 6f 66 20 62 79  ks instead of by
1afe0 20 72 65 71 75 65 73 74 20 6f 66 20 74 68 65 0a   request of the.
1aff0 67 65 6e 65 72 69 63 20 49 4f 20 63 6f 64 65 2e  generic IO code.
1b000 20 4e 6f 20 54 63 6c 20 70 72 6f 63 65 64 75 72   No Tcl procedur
1b010 65 20 79 65 74 2e 20 28 4a 4c 29 0a 0a 31 31 2f  e yet. (JL)..11/
1b020 31 35 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  15/96 (new featu
1b030 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20  re) Implemented 
1b040 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 73 2e  hidden commands.
1b050 20 4e 65 77 20 43 20 41 50 49 73 3a 0a 09 54 63   New C APIs:..Tc
1b060 6c 5f 48 69 64 65 43 6f 6d 6d 61 6e 64 09 09 2d  l_HideCommand..-
1b070 2d 20 68 69 64 65 73 20 61 6e 20 65 78 69 73 74  - hides an exist
1b080 69 6e 67 20 65 78 70 6f 73 65 64 20 63 6f 6d 6d  ing exposed comm
1b090 61 6e 64 2e 0a 09 54 63 6c 5f 45 78 70 6f 73 65  and...Tcl_Expose
1b0a0 43 6f 6d 6d 61 6e 64 09 2d 2d 20 65 78 70 6f 73  Command.-- expos
1b0b0 65 73 20 61 6e 20 65 78 69 73 74 69 6e 67 20 68  es an existing h
1b0c0 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 2e 0a 4e  idden command..N
1b0d0 65 77 20 74 63 6c 20 41 50 49 73 3a 0a 09 69 6e  ew tcl APIs:..in
1b0e0 74 65 72 70 20 69 6e 76 6f 6b 65 68 69 64 64 65  terp invokehidde
1b0f0 6e 09 2d 2d 20 69 6e 76 6f 6b 65 73 20 61 20 68  n.-- invokes a h
1b100 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 20 69 6e  idden command in
1b110 20 61 20 73 6c 61 76 65 2e 0a 09 69 6e 74 65 72   a slave...inter
1b120 70 20 68 69 64 65 09 09 2d 2d 20 68 69 64 65 73  p hide..-- hides
1b130 20 61 6e 20 65 78 69 73 74 69 6e 67 20 65 78 70   an existing exp
1b140 6f 73 65 64 20 63 6f 6d 6d 61 6e 64 2e 0a 09 69  osed command...i
1b150 6e 74 65 72 70 20 65 78 70 6f 73 65 09 09 2d 2d  nterp expose..--
1b160 20 65 78 70 6f 73 65 73 20 61 6e 20 65 78 69 73   exposes an exis
1b170 74 69 6e 67 20 68 69 64 64 65 6e 20 63 6f 6d 6d  ting hidden comm
1b180 61 6e 64 2e 0a 09 69 6e 74 65 72 70 20 68 69 64  and...interp hid
1b190 64 65 6e 09 09 2d 2d 20 72 65 74 75 72 6e 73 20  den..-- returns 
1b1a0 61 20 6c 69 73 74 20 6f 66 20 68 69 64 64 65 6e  a list of hidden
1b1b0 20 63 6f 6d 6d 61 6e 64 73 2e 0a 54 68 65 20 69   commands..The i
1b1c0 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66  mplementation of
1b1d0 20 53 61 66 65 20 54 63 6c 20 6e 6f 77 20 75 73   Safe Tcl now us
1b1e0 65 73 20 74 68 65 20 6e 65 77 20 68 69 64 64 65  es the new hidde
1b1f0 6e 20 63 6f 6d 6d 61 6e 64 73 20 66 61 63 69 6c  n commands facil
1b200 69 74 79 0a 74 6f 20 69 6d 70 6c 65 6d 65 6e 74  ity.to implement
1b210 20 74 68 65 20 73 61 66 65 20 62 61 73 65 2c 20   the safe base, 
1b220 69 6e 73 74 65 61 64 20 6f 66 20 64 65 6c 65 74  instead of delet
1b230 69 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73  ing the commands
1b240 20 66 72 6f 6d 20 61 20 73 61 66 65 0a 69 6e 74   from a safe.int
1b250 65 72 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a  erpreter. (JL)..
1b260 31 31 2f 31 35 2f 39 36 20 28 6e 65 77 20 66 65  11/15/96 (new fe
1b270 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74  ature) Implement
1b280 65 64 20 74 68 65 20 73 61 66 65 20 62 61 73 65  ed the safe base
1b290 2c 20 61 20 6d 65 63 68 61 6e 69 73 6d 20 66 6f  , a mechanism fo
1b2a0 72 0a 69 6e 73 74 61 6c 6c 69 6e 67 20 61 6e 64  r.installing and
1b2b0 20 72 65 71 75 65 73 74 69 6e 67 20 73 65 63 75   requesting secu
1b2c0 72 69 74 79 20 70 6f 6c 69 63 69 65 73 2c 20 70  rity policies, p
1b2d0 75 72 65 6c 79 20 69 6e 20 54 63 6c 20 63 6f 64  urely in Tcl cod
1b2e0 65 2e 20 4f 76 65 72 6c 6f 61 64 73 0a 74 68 65  e. Overloads.the
1b2f0 20 70 61 63 6b 61 67 65 20 63 6f 6d 6d 61 6e 64   package command
1b300 20 74 6f 20 61 6c 73 6f 20 61 6c 6c 6f 77 20 61   to also allow a
1b310 6e 20 69 6e 74 65 72 70 72 65 74 65 72 20 74 6f  n interpreter to
1b320 20 22 72 65 71 75 69 72 65 22 20 61 20 70 6f 6c   "require" a pol
1b330 69 63 79 2e 20 54 68 65 0a 66 6f 6c 6c 6f 77 69  icy. The.followi
1b340 6e 67 20 6e 65 77 20 6c 69 62 72 61 72 79 20 63  ng new library c
1b350 6f 6d 6d 61 6e 64 73 20 61 72 65 20 70 72 6f 76  ommands are prov
1b360 69 64 65 64 3a 0a 09 74 63 6c 5f 73 61 66 65 43  ided:..tcl_safeC
1b370 72 65 61 74 65 49 6e 74 65 72 70 09 2d 2d 20 63  reateInterp.-- c
1b380 72 65 61 74 65 73 20 61 20 73 6c 61 76 65 20 61  reates a slave a
1b390 6e 20 69 6e 69 74 69 61 6c 69 7a 65 73 20 74 68  n initializes th
1b3a0 65 0a 09 09 09 09 20 20 20 70 6f 6c 69 63 79 20  e.....   policy 
1b3b0 6d 65 63 68 61 6e 69 73 6d 2e 0a 09 74 63 6c 5f  mechanism...tcl_
1b3c0 73 61 66 65 49 6e 69 74 49 6e 74 65 72 70 09 2d  safeInitInterp.-
1b3d0 2d 20 69 6e 69 74 69 61 6c 69 7a 65 73 20 61 6e  - initializes an
1b3e0 20 65 78 69 73 74 69 6e 67 20 73 6c 61 76 65 20   existing slave 
1b3f0 77 69 74 68 20 74 68 65 0a 09 09 09 09 20 20 20  with the.....   
1b400 70 6f 6c 69 63 79 20 6d 65 63 68 61 6e 69 73 6d  policy mechanism
1b410 2e 0a 09 74 63 6c 5f 73 61 66 65 44 65 6c 65 74  ...tcl_safeDelet
1b420 65 49 6e 74 65 72 70 09 2d 2d 20 64 65 6c 65 74  eInterp.-- delet
1b430 65 73 20 61 20 73 6c 61 76 65 20 61 6e 64 20 64  es a slave and d
1b440 65 69 6e 69 74 69 61 6c 69 7a 65 73 20 74 68 65  einitializes the
1b450 0a 09 09 09 09 20 20 20 70 6f 6c 69 63 79 20 6d  .....   policy m
1b460 65 63 68 61 6e 69 73 6d 2e 0a 41 64 64 65 64 20  echanism..Added 
1b470 61 20 6e 65 77 20 66 69 6c 65 20 74 6f 20 74 68  a new file to th
1b480 65 20 6c 69 62 72 61 72 79 2c 20 73 61 66 65 69  e library, safei
1b490 6e 69 74 2e 74 63 6c 2c 20 74 6f 20 68 6f 6c 64  nit.tcl, to hold
1b4a0 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e   implementation.
1b4b0 20 28 4a 4c 29 0a 4f 6e 20 37 2f 39 2f 39 37 2c   (JL).On 7/9/97,
1b4c0 20 72 65 6d 6f 76 65 64 20 74 68 65 20 70 6f 6c   removed the pol
1b4d0 69 63 79 20 6c 6f 61 64 69 6e 67 20 6d 65 63 68  icy loading mech
1b4e0 61 6e 69 73 6d 20 66 72 6f 6d 20 74 68 65 20 53  anism from the S
1b4f0 61 66 65 20 42 61 73 65 2e 20 4c 65 66 74 0a 6f  afe Base. Left.o
1b500 6e 6c 79 20 74 68 65 20 53 61 66 65 20 42 61 73  nly the Safe Bas
1b510 65 20 61 6c 69 61 73 65 73 20 64 65 61 6c 69 6e  e aliases dealin
1b520 67 20 77 69 74 68 20 61 75 74 6f 2d 6c 6f 61 64  g with auto-load
1b530 69 6e 67 20 61 6e 64 20 73 6f 75 72 63 65 2e 20  ing and source. 
1b540 28 4a 4c 29 0a 0a 31 32 2f 36 2f 39 36 20 28 6e  (JL)..12/6/96 (n
1b550 65 77 20 66 65 61 74 75 72 65 29 20 49 6d 70 6c  ew feature) Impl
1b560 65 6d 65 6e 74 65 64 20 54 63 6c 5f 46 69 6e 61  emented Tcl_Fina
1b570 6c 69 7a 65 2c 20 61 6e 20 41 50 49 20 74 68 61  lize, an API tha
1b580 74 20 73 68 6f 75 6c 64 20 62 65 0a 63 61 6c 6c  t should be.call
1b590 65 64 20 62 79 20 61 20 70 72 6f 63 65 73 73 20  ed by a process 
1b5a0 77 68 65 6e 20 69 74 20 69 73 20 64 6f 6e 65 20  when it is done 
1b5b0 75 73 69 6e 67 20 54 63 6c 2e 20 54 68 69 73 20  using Tcl. This 
1b5c0 41 50 49 20 72 75 6e 73 20 61 6c 6c 20 74 68 65  API runs all the
1b5d0 20 65 78 69 74 0a 68 61 6e 64 6c 65 72 73 20 74   exit.handlers t
1b5e0 6f 20 61 6c 6c 6f 77 20 74 68 65 6d 20 74 6f 20  o allow them to 
1b5f0 63 6c 65 61 6e 20 75 70 20 72 65 73 6f 75 72 63  clean up resourc
1b600 65 73 20 65 74 63 2e 20 28 4a 4c 29 0a 0a 31 32  es etc. (JL)..12
1b610 2f 31 37 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /17/96 (new feat
1b620 75 72 65 29 20 41 64 64 20 61 6e 20 68 74 74 70  ure) Add an http
1b630 20 54 63 6c 20 73 63 72 69 70 74 20 70 61 63 6b   Tcl script pack
1b640 61 67 65 20 74 6f 20 74 68 65 20 54 63 6c 20 6c  age to the Tcl l
1b650 69 62 72 61 72 79 2e 0a 54 68 69 73 20 70 61 63  ibrary..This pac
1b660 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20  kage implements 
1b670 74 68 65 20 63 6c 69 65 6e 74 20 73 69 64 65 20  the client side 
1b680 6f 66 20 48 54 54 50 2f 31 2e 30 3b 20 74 68 65  of HTTP/1.0; the
1b690 20 47 45 54 2c 20 48 45 41 44 2c 0a 61 6e 64 20   GET, HEAD,.and 
1b6a0 50 4f 53 54 20 72 65 71 75 65 73 74 73 2e 20 28  POST requests. (
1b6b0 42 57 29 0a 0a 31 2f 32 31 2f 39 37 20 28 6e 65  BW)..1/21/97 (ne
1b6c0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
1b6d0 20 61 20 22 6d 61 72 6b 74 72 75 73 74 65 64 22   a "marktrusted"
1b6e0 20 73 75 62 63 6f 6d 6d 61 6e 64 20 74 6f 20 74   subcommand to t
1b6f0 68 65 20 22 69 6e 74 65 72 70 22 20 61 6e 64 0a  he "interp" and.
1b700 74 6f 20 74 68 65 20 69 6e 74 65 72 70 72 65 74  to the interpret
1b710 65 72 20 6f 62 6a 65 63 74 20 63 6f 6d 6d 61 6e  er object comman
1b720 64 2e 20 49 74 20 72 65 6d 6f 76 65 73 20 74 68  d. It removes th
1b730 65 20 22 73 61 66 65 22 20 6d 61 72 6b 20 6f 6e  e "safe" mark on
1b740 20 61 6e 0a 69 6e 74 65 72 70 72 65 74 65 72 20   an.interpreter 
1b750 61 6e 64 20 64 69 73 61 62 6c 65 73 20 68 61 72  and disables har
1b760 64 2d 77 69 72 65 64 20 63 68 65 63 6b 73 20 66  d-wired checks f
1b770 6f 72 20 73 61 66 65 74 79 20 69 6e 20 74 68 65  or safety in the
1b780 20 43 20 73 6f 75 72 63 65 73 2e 20 28 4a 4c 29   C sources. (JL)
1b790 0a 0a 31 2f 32 31 2f 39 37 20 28 72 65 6d 6f 76  ..1/21/97 (remov
1b7a0 65 64 20 66 65 61 74 75 72 65 29 20 52 65 6d 6f  ed feature) Remo
1b7b0 76 65 64 20 22 76 77 61 69 74 22 20 66 72 6f 6d  ved "vwait" from
1b7c0 20 73 65 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73   set of commands
1b7d0 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 0a 61 20   available in.a 
1b7e0 73 61 66 65 20 69 6e 74 65 72 70 72 65 74 65 72  safe interpreter
1b7f0 2e 20 28 4a 4c 29 0a 0a 32 2f 31 31 2f 39 37 20  . (JL)..2/11/97 
1b800 28 6e 65 77 20 66 65 61 74 75 72 65 2c 20 62 75  (new feature, bu
1b810 67 20 66 69 78 29 20 68 74 74 70 20 70 61 63 6b  g fix) http pack
1b820 61 67 65 2e 20 20 41 64 64 65 64 20 2d 61 63 63  age.  Added -acc
1b830 65 70 74 20 74 6f 20 68 74 74 70 5f 63 6f 6e 66  ept to http_conf
1b840 69 67 0a 73 6f 20 79 6f 75 20 63 61 6e 20 73 65  ig.so you can se
1b850 74 20 74 68 65 20 41 63 63 65 70 74 20 68 65 61  t the Accept hea
1b860 64 65 72 2e 20 20 41 64 64 65 64 20 2d 68 61 6e  der.  Added -han
1b870 64 6c 65 72 20 6f 70 74 69 6f 6e 20 74 6f 20 68  dler option to h
1b880 74 74 70 5f 67 65 74 20 73 6f 0a 79 6f 75 20 63  ttp_get so.you c
1b890 61 6e 20 73 75 70 70 6c 79 20 79 6f 75 72 20 6f  an supply your o
1b8a0 77 6e 20 64 61 74 61 20 68 61 6e 64 6c 65 72 2e  wn data handler.
1b8b0 20 20 41 6c 73 6f 20 66 69 78 65 64 20 50 4f 53    Also fixed POS
1b8c0 54 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 0a 73  T operation to.s
1b8d0 65 74 20 74 68 65 20 63 6f 72 72 65 63 74 20 4d  et the correct M
1b8e0 49 4d 45 20 74 79 70 65 20 6f 6e 20 74 68 65 20  IME type on the 
1b8f0 72 65 71 75 65 73 74 2e 20 28 42 57 29 0a 0a 2d  request. (BW)..-
1b900 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b910 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b920 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b930 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 43 68 61 6e 67 65  ---------.Change
1b940 73 20 66 6f 72 20 54 63 6c 20 37 2e 37 20 67 6f  s for Tcl 7.7 go
1b950 20 61 62 6f 76 65 20 74 68 69 73 20 6c 69 6e 65   above this line
1b960 2e 0a 43 68 61 6e 67 65 73 20 66 6f 72 20 54 63  ..Changes for Tc
1b970 6c 20 38 2e 30 20 67 6f 20 62 65 6c 6f 77 20 74  l 8.0 go below t
1b980 68 69 73 20 6c 69 6e 65 2e 0a 2d 2d 2d 2d 2d 2d  his line..------
1b990 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b9a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b9b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b9c0 2d 2d 2d 2d 0a 0a 39 2f 31 37 2f 39 36 20 28 62  ----..9/17/96 (b
1b9d0 75 67 20 66 69 78 29 20 55 73 69 6e 67 20 22 75  ug fix) Using "u
1b9e0 70 76 61 72 22 20 69 74 20 77 61 73 20 70 6f 73  pvar" it was pos
1b9f0 73 69 62 6c 65 20 74 6f 20 74 75 72 6e 20 61 6e  sible to turn an
1ba00 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 0a 69   array element.i
1ba10 6e 74 6f 20 61 6e 20 61 72 72 61 79 20 69 74 73  nto an array its
1ba20 65 6c 66 2e 20 20 43 68 61 6e 67 65 64 20 74 6f  elf.  Changed to
1ba30 20 64 69 73 61 6c 6c 6f 77 20 74 68 69 73 3b 20   disallow this; 
1ba40 69 74 20 77 61 73 20 71 75 69 72 6b 79 20 61 6e  it was quirky an
1ba50 64 20 64 69 64 6e 27 74 0a 72 65 61 6c 6c 79 20  d didn't.really 
1ba60 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 20 61  work correctly a
1ba70 6e 79 77 61 79 2e 20 28 4a 4f 29 0a 0a 31 30 2f  nyway. (JO)..10/
1ba80 32 31 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75  21/96 (new featu
1ba90 72 65 29 20 54 68 65 20 63 6f 72 65 20 6f 66 20  re) The core of 
1baa0 74 68 65 20 54 63 6c 20 69 6e 74 65 72 70 72 65  the Tcl interpre
1bab0 74 65 72 20 68 61 73 20 62 65 65 6e 20 72 65 70  ter has been rep
1bac0 6c 61 63 65 64 0a 77 69 74 68 20 61 6e 20 6f 6e  laced.with an on
1bad0 2d 74 68 65 2d 66 6c 79 20 63 6f 6d 70 69 6c 65  -the-fly compile
1bae0 72 20 74 68 61 74 20 74 72 61 6e 73 6c 61 74 65  r that translate
1baf0 73 20 54 63 6c 20 73 63 72 69 70 74 73 20 74 6f  s Tcl scripts to
1bb00 20 62 79 74 65 63 6f 64 65 64 0a 69 6e 73 74 72   bytecoded.instr
1bb10 75 63 74 69 6f 6e 73 3b 20 61 20 6e 65 77 20 69  uctions; a new i
1bb20 6e 74 65 72 70 72 65 74 65 72 20 74 68 65 6e 20  nterpreter then 
1bb30 65 78 65 63 75 74 65 73 20 74 68 65 20 62 79 74  executes the byt
1bb40 65 63 6f 64 65 73 2e 20 54 68 65 20 63 6f 6d 70  ecodes. The comp
1bb50 69 6c 65 72 0a 69 6e 74 72 6f 64 75 63 65 73 20  iler.introduces 
1bb60 6f 6e 6c 79 20 61 20 66 65 77 20 6d 69 6e 6f 72  only a few minor
1bb70 20 63 68 61 6e 67 65 73 20 61 74 20 74 68 65 20   changes at the 
1bb80 6c 65 76 65 6c 20 6f 66 20 54 63 6c 20 73 63 72  level of Tcl scr
1bb90 69 70 74 73 2e 20 54 68 65 20 62 69 67 67 65 73  ipts. The bigges
1bba0 74 0a 63 68 61 6e 67 65 73 20 61 72 65 20 74 6f  t.changes are to
1bbb0 20 65 78 70 72 65 73 73 69 6f 6e 73 20 61 6e 64   expressions and
1bbc0 20 6c 69 73 74 73 2e 0a 20 20 20 20 2d 20 41 20   lists..    - A 
1bbd0 73 65 63 6f 6e 64 20 6c 65 76 65 6c 20 6f 66 20  second level of 
1bbe0 73 75 62 73 74 69 74 75 74 69 6f 6e 73 20 69 73  substitutions is
1bbf0 20 6e 6f 20 6c 6f 6e 67 65 72 20 64 6f 6e 65 20   no longer done 
1bc00 66 6f 72 20 65 78 70 72 65 73 73 69 6f 6e 73 2e  for expressions.
1bc10 0a 20 20 20 20 20 20 54 68 69 73 20 73 75 62 73  .      This subs
1bc20 74 61 6e 74 69 61 6c 6c 79 20 69 6d 70 72 6f 76  tantially improv
1bc30 65 73 20 74 68 65 69 72 20 65 78 65 63 75 74 69  es their executi
1bc40 6f 6e 20 74 69 6d 65 2e 20 54 68 69 73 20 6d 65  on time. This me
1bc50 61 6e 73 20 74 68 61 74 0a 20 20 20 20 20 20 74  ans that.      t
1bc60 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 22 24  he expression "$
1bc70 78 2a 34 22 20 70 72 6f 64 75 63 65 73 20 61 20  x*4" produces a 
1bc80 64 69 66 66 65 72 65 6e 74 20 72 65 73 75 6c 74  different result
1bc90 20 74 68 61 6e 20 69 6e 20 74 68 65 20 70 61 73   than in the pas
1bca0 74 0a 20 20 20 20 20 20 69 66 20 78 20 69 73 20  t.      if x is 
1bcb0 22 24 79 2b 32 22 2e 20 46 6f 72 74 75 6e 61 74  "$y+2". Fortunat
1bcc0 65 6c 79 2c 20 6e 6f 74 20 6d 75 63 68 20 63 6f  ely, not much co
1bcd0 64 65 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68  de depends on th
1bce0 65 20 6f 6c 64 0a 20 20 20 20 20 20 74 77 6f 2d  e old.      two-
1bcf0 6c 65 76 65 6c 20 73 65 6d 61 6e 74 69 63 73 2e  level semantics.
1bd00 20 53 6f 6d 65 20 65 78 70 72 65 73 73 69 6f 6e   Some expression
1bd10 73 20 74 68 61 74 20 64 6f 2c 20 73 75 63 68 20  s that do, such 
1bd20 61 73 0a 20 20 20 20 20 20 22 65 78 70 72 20 5b  as.      "expr [
1bd30 6a 6f 69 6e 20 24 6c 69 73 74 20 2b 5d 22 20 63  join $list +]" c
1bd40 61 6e 20 62 65 20 72 65 63 6f 64 65 64 20 74 6f  an be recoded to
1bd50 20 77 6f 72 6b 20 69 6e 20 54 63 6c 38 2e 30 20   work in Tcl8.0 
1bd60 62 79 20 61 64 64 69 6e 67 0a 20 20 20 20 20 20  by adding.      
1bd70 61 6e 20 65 76 61 6c 3a 20 65 2e 67 2e 2c 20 22  an eval: e.g., "
1bd80 65 76 61 6c 20 65 78 70 72 20 5b 6a 6f 69 6e 20  eval expr [join 
1bd90 24 6c 69 73 74 20 2b 5d 22 2e 0a 20 20 20 20 2d  $list +]"..    -
1bda0 20 4c 69 73 74 73 20 61 72 65 20 6e 6f 77 20 63   Lists are now c
1bdb0 6f 6d 70 6c 65 74 65 6c 79 20 70 61 72 73 65 64  ompletely parsed
1bdc0 20 6f 6e 20 74 68 65 20 66 69 72 73 74 20 6c 69   on the first li
1bdd0 73 74 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 0a  st operation to.
1bde0 20 20 20 20 20 20 63 72 65 61 74 65 20 61 20 66        create a f
1bdf0 61 73 74 65 72 20 69 6e 74 65 72 6e 61 6c 20 72  aster internal r
1be00 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 20 49  epresentation. I
1be10 6e 20 74 68 65 20 70 61 73 74 2c 20 69 66 20 79  n the past, if y
1be20 6f 75 20 68 61 64 20 61 0a 20 20 20 20 20 20 6d  ou had a.      m
1be30 69 73 66 6f 72 6d 65 64 20 6c 69 73 74 20 62 75  isformed list bu
1be40 74 20 74 68 65 20 65 72 72 6f 6e 65 6f 75 73 20  t the erroneous 
1be50 70 61 72 74 20 77 61 73 20 61 66 74 65 72 20 74  part was after t
1be60 68 65 20 70 6f 69 6e 74 20 79 6f 75 0a 20 20 20  he point you.   
1be70 20 20 20 69 6e 73 65 72 74 65 64 20 6f 72 20 65     inserted or e
1be80 78 74 72 61 63 74 65 64 20 61 6e 20 65 6c 65 6d  xtracted an elem
1be90 65 6e 74 2c 20 74 68 65 6e 20 79 6f 75 20 6e 65  ent, then you ne
1bea0 76 65 72 20 73 61 77 20 61 6e 20 65 72 72 6f 72  ver saw an error
1beb0 2e 0a 20 20 20 20 20 20 49 6e 20 54 63 6c 38 2e  ..      In Tcl8.
1bec0 30 20 61 6e 20 65 72 72 6f 72 20 77 69 6c 6c 20  0 an error will 
1bed0 62 65 20 72 65 70 6f 72 74 65 64 2e 20 54 68 69  be reported. Thi
1bee0 73 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 65 66  s should only ef
1bef0 66 65 63 74 0a 20 20 20 20 20 20 69 6e 63 6f 72  fect.      incor
1bf00 72 65 63 74 20 70 72 6f 67 72 61 6d 73 20 74 68  rect programs th
1bf10 61 74 20 74 6f 6f 6b 20 61 64 76 61 6e 74 61 67  at took advantag
1bf20 65 20 6f 66 20 62 65 68 61 76 69 6f 72 20 6f 66  e of behavior of
1bf30 20 74 68 65 20 6f 6c 64 0a 20 20 20 20 20 20 69   the old.      i
1bf40 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 74 68  mplementation th
1bf50 61 74 20 77 61 73 20 6e 6f 74 20 64 6f 63 75 6d  at was not docum
1bf60 65 6e 74 65 64 20 69 6e 20 74 68 65 20 6d 61 6e  ented in the man
1bf70 20 70 61 67 65 73 2e 0a 4f 74 68 65 72 20 63 68   pages..Other ch
1bf80 61 6e 67 65 73 20 74 6f 20 54 63 6c 20 73 63 72  anges to Tcl scr
1bf90 69 70 74 73 20 61 72 65 20 64 69 73 63 75 73 73  ipts are discuss
1bfa0 65 64 20 69 6e 20 74 68 65 20 77 65 62 20 70 61  ed in the web pa
1bfb0 67 65 20 61 74 0a 68 74 74 70 3a 2f 2f 77 77 77  ge at.http://www
1bfc0 2e 73 63 72 69 70 74 69 63 73 2e 63 6f 6d 2f 64  .scriptics.com/d
1bfd0 6f 63 2f 63 6f 6d 70 69 6c 65 72 2e 68 74 6d 6c  oc/compiler.html
1bfe0 2e 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (BL).*** POTEN
1bff0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
1c000 4c 49 54 59 20 2a 2a 2a 0a 0a 31 30 2f 32 31 2f  LITY ***..10/21/
1c010 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
1c020 20 49 6e 20 65 61 72 6c 69 65 72 20 76 65 72 73   In earlier vers
1c030 69 6f 6e 73 20 6f 66 20 54 63 6c 2c 20 73 74 72  ions of Tcl, str
1c040 69 6e 67 73 20 77 65 72 65 20 75 73 65 64 20 61  ings were used a
1c050 73 20 61 0a 75 6e 69 76 65 72 73 61 6c 20 72 65  s a.universal re
1c060 70 72 65 73 65 6e 74 61 74 69 6f 6e 3b 20 69 6e  presentation; in
1c070 20 54 63 6c 20 38 2e 30 20 73 74 72 69 6e 67 73   Tcl 8.0 strings
1c080 20 61 72 65 20 72 65 70 6c 61 63 65 64 20 77 69   are replaced wi
1c090 74 68 20 54 63 6c 5f 4f 62 6a 0a 73 74 72 75 63  th Tcl_Obj.struc
1c0a0 74 75 72 65 73 20 28 22 6f 62 6a 65 63 74 73 22  tures ("objects"
1c0b0 29 20 74 68 61 74 20 63 61 6e 20 68 6f 6c 64 20  ) that can hold 
1c0c0 62 6f 74 68 20 61 20 73 74 72 69 6e 67 20 76 61  both a string va
1c0d0 6c 75 65 20 61 6e 64 20 61 6e 20 69 6e 74 65 72  lue and an inter
1c0e0 6e 61 6c 0a 66 6f 72 6d 20 73 75 63 68 20 61 73  nal.form such as
1c0f0 20 61 20 62 69 6e 61 72 79 20 69 6e 74 65 67 65   a binary intege
1c100 72 20 6f 72 20 63 6f 6d 70 69 6c 65 64 20 62 79  r or compiled by
1c110 74 65 63 6f 64 65 73 2e 20 54 68 65 20 6e 65 77  tecodes. The new
1c120 20 6f 62 6a 65 63 74 73 20 6d 61 6b 65 20 69 74   objects make it
1c130 0a 70 6f 73 73 69 62 6c 65 20 74 6f 20 73 74 6f  .possible to sto
1c140 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69  re information i
1c150 6e 20 65 66 66 69 63 69 65 6e 74 20 69 6e 74 65  n efficient inte
1c160 72 6e 61 6c 20 66 6f 72 6d 73 20 61 6e 64 20 61  rnal forms and a
1c170 76 6f 69 64 20 74 68 65 0a 63 6f 6e 73 74 61 6e  void the.constan
1c180 74 20 74 72 61 6e 73 6c 61 74 69 6f 6e 73 20 74  t translations t
1c190 6f 20 61 6e 64 20 66 72 6f 6d 20 73 74 72 69 6e  o and from strin
1c1a0 67 73 20 74 68 61 74 20 6f 63 63 75 72 72 65 64  gs that occurred
1c1b0 20 77 69 74 68 20 74 68 65 20 6f 6c 64 0a 69 6e   with the old.in
1c1c0 74 65 72 70 72 65 74 65 72 2e 20 54 68 65 72 65  terpreter. There
1c1d0 20 61 72 65 20 6e 65 77 20 6d 61 6e 79 20 6e 65   are new many ne
1c1e0 77 20 43 20 41 50 49 73 20 66 6f 72 20 6d 61 6e  w C APIs for man
1c1f0 61 67 69 6e 67 20 6f 62 6a 65 63 74 73 2e 20 53  aging objects. S
1c200 6f 6d 65 20 6f 66 20 74 68 65 0a 6e 65 77 20 6c  ome of the.new l
1c210 69 62 72 61 72 79 20 70 72 6f 63 65 64 75 72 65  ibrary procedure
1c220 73 20 66 6f 72 20 6f 62 6a 65 63 74 73 20 28 73  s for objects (s
1c230 75 63 68 20 61 73 20 54 63 6c 5f 45 76 61 6c 4f  uch as Tcl_EvalO
1c240 62 6a 29 20 72 65 73 65 6d 62 6c 65 20 65 78 69  bj) resemble exi
1c250 73 74 69 6e 67 0a 73 74 72 69 6e 67 2d 62 61 73  sting.string-bas
1c260 65 64 20 70 72 6f 63 65 64 75 72 65 73 20 28 73  ed procedures (s
1c270 75 63 68 20 61 73 20 54 63 6c 5f 45 76 61 6c 29  uch as Tcl_Eval)
1c280 20 62 75 74 20 74 61 6b 65 20 61 64 76 61 6e 74   but take advant
1c290 61 67 65 20 6f 66 20 74 68 65 0a 69 6e 74 65 72  age of the.inter
1c2a0 6e 61 6c 20 66 6f 72 6d 20 73 74 6f 72 65 64 20  nal form stored 
1c2b0 69 6e 20 54 63 6c 20 6f 62 6a 65 63 74 73 20 66  in Tcl objects f
1c2c0 6f 72 20 67 72 65 61 74 65 72 20 73 70 65 65 64  or greater speed
1c2d0 2e 20 4f 74 68 65 72 20 6e 65 77 20 70 72 6f 63  . Other new proc
1c2e0 65 64 75 72 65 73 0a 6d 61 6e 61 67 65 20 6f 62  edures.manage ob
1c2f0 6a 65 63 74 73 20 61 6e 64 20 61 6c 6c 6f 77 20  jects and allow 
1c300 65 78 74 65 6e 73 69 6f 6e 20 77 72 69 74 65 72  extension writer
1c310 73 20 74 6f 20 64 65 66 69 6e 65 20 6e 65 77 20  s to define new 
1c320 6b 69 6e 64 73 20 6f 66 20 6f 62 6a 65 63 74 73  kinds of objects
1c330 2e 0a 53 65 65 20 74 68 65 20 6d 61 6e 75 61 6c  ..See the manual
1c340 20 65 6e 74 72 69 65 73 20 64 6f 63 2f 2a 4f 62   entries doc/*Ob
1c350 6a 2a 2e 33 20 28 42 4c 29 0a 0a 31 30 2f 32 34  j*.3 (BL)..10/24
1c360 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
1c370 78 65 64 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 20  xed memory leak 
1c380 6f 6e 20 65 78 69 74 20 63 61 75 73 65 64 20 62  on exit caused b
1c390 79 20 73 6f 6d 65 20 49 4f 20 72 65 6c 61 74 65  y some IO relate
1c3a0 64 0a 64 61 74 61 20 73 74 72 75 63 74 75 72 65  d.data structure
1c3b0 73 20 6e 6f 74 20 62 65 69 6e 67 20 64 65 61 6c  s not being deal
1c3c0 6c 6f 63 61 74 65 64 20 6f 6e 20 65 78 69 74 20  located on exit 
1c3d0 62 65 63 61 75 73 65 20 74 68 65 69 72 20 72 65  because their re
1c3e0 66 63 6f 75 6e 74 20 77 61 73 0a 61 72 74 69 66  fcount was.artif
1c3f0 69 63 69 61 6c 6c 79 20 62 6f 6f 73 74 65 64 2e  icially boosted.
1c400 20 28 4a 4c 29 0a 0a 31 30 2f 32 34 2f 39 36 20   (JL)..10/24/96 
1c410 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1c420 63 6f 72 65 20 64 75 6d 70 20 69 6e 20 54 63 6c  core dump in Tcl
1c430 5f 43 6c 6f 73 65 20 69 66 20 63 61 6c 6c 65 64  _Close if called
1c440 20 77 69 74 68 20 4e 55 4c 4c 0a 54 63 6c 5f 43   with NULL.Tcl_C
1c450 68 61 6e 6e 65 6c 2e 20 28 4a 4c 29 0a 0a 31 31  hannel. (JL)..11
1c460 2f 31 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /19/96 (new feat
1c470 75 72 65 29 20 41 64 64 65 64 20 6c 69 62 72 61  ure) Added libra
1c480 72 79 20 70 72 6f 63 65 64 75 72 65 73 20 66 6f  ry procedures fo
1c490 72 20 66 69 6e 64 69 6e 67 20 77 6f 72 64 0a 62  r finding word.b
1c4a0 72 65 61 6b 73 20 69 6e 20 73 74 72 69 6e 67 73  reaks in strings
1c4b0 20 69 6e 20 61 20 70 6c 61 74 66 6f 72 6d 20 73   in a platform s
1c4c0 70 65 63 69 66 69 63 20 6d 61 6e 6e 65 72 2e 20  pecific manner. 
1c4d0 20 53 65 65 20 74 68 65 20 6c 69 62 72 61 72 79   See the library
1c4e0 2e 6e 0a 6d 61 6e 75 61 6c 20 65 6e 74 72 79 20  .n.manual entry 
1c4f0 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61  for more informa
1c500 74 69 6f 6e 2e 20 28 53 53 29 0a 0a 31 31 2f 32  tion. (SS)..11/2
1c510 32 2f 39 36 20 28 66 65 61 74 75 72 65 20 69 6d  2/96 (feature im
1c520 70 72 6f 76 65 6d 65 6e 74 73 29 20 41 64 64 65  provements) Adde
1c530 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 64 69  d support for di
1c540 66 66 65 72 65 6e 74 20 6c 65 76 65 6c 73 20 6f  fferent levels o
1c550 66 0a 74 72 61 63 69 6e 67 20 64 75 72 69 6e 67  f.tracing during
1c560 20 62 79 74 65 63 6f 64 65 20 63 6f 6d 70 69 6c   bytecode compil
1c570 61 74 69 6f 6e 20 61 6e 64 20 65 78 65 63 75 74  ation and execut
1c580 69 6f 6e 2e 20 54 68 69 73 20 73 68 6f 75 6c 64  ion. This should
1c590 20 68 65 6c 70 20 69 6e 0a 74 72 61 63 6b 69 6e   help in.trackin
1c5a0 67 20 64 6f 77 6e 20 73 75 73 70 65 63 74 65 64  g down suspected
1c5b0 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74   problems with t
1c5c0 68 65 20 63 6f 6d 70 69 6c 65 72 20 6f 72 20 77  he compiler or w
1c5d0 69 74 68 20 63 6f 6e 76 65 72 74 69 6e 67 0a 65  ith converting.e
1c5e0 78 69 73 74 69 6e 67 20 63 6f 64 65 20 74 6f 20  xisting code to 
1c5f0 75 73 65 20 54 63 6c 38 2e 30 2e 20 54 77 6f 20  use Tcl8.0. Two 
1c600 67 6c 6f 62 61 6c 20 54 63 6c 20 76 61 72 69 61  global Tcl varia
1c610 62 6c 65 73 2c 20 74 72 61 63 65 43 6f 6d 70 69  bles, traceCompi
1c620 6c 65 0a 61 6e 64 20 74 72 61 63 65 45 78 65 63  le.and traceExec
1c630 2c 20 63 61 6e 20 62 65 20 73 65 74 20 74 6f 20  , can be set to 
1c640 67 65 6e 65 72 61 74 65 20 74 72 61 63 69 6e 67  generate tracing
1c650 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 20   information in 
1c660 73 74 64 6f 75 74 3a 0a 20 20 20 20 2d 20 74 72  stdout:.    - tr
1c670 61 63 65 43 6f 6d 70 69 6c 65 3a 20 30 20 20 6e  aceCompile: 0  n
1c680 6f 20 74 72 61 63 69 6e 67 20 28 64 65 66 61 75  o tracing (defau
1c690 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  lt).            
1c6a0 20 20 20 20 20 20 20 20 31 20 20 74 72 61 63 65          1  trace
1c6b0 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 73 20 6f 66   compilations of
1c6c0 20 74 6f 70 20 6c 65 76 65 6c 20 63 6f 6d 6d 61   top level comma
1c6d0 6e 64 73 20 61 6e 64 20 70 72 6f 63 73 0a 20 20  nds and procs.  
1c6e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c6f0 20 20 32 20 20 74 72 61 63 65 20 61 6e 64 20 64    2  trace and d
1c700 69 73 70 6c 61 79 20 69 6e 73 74 72 75 63 74 69  isplay instructi
1c710 6f 6e 73 20 66 6f 72 20 61 6c 6c 20 63 6f 6d 70  ons for all comp
1c720 69 6c 61 74 69 6f 6e 73 0a 20 20 20 20 2d 20 74  ilations.    - t
1c730 72 61 63 65 45 78 65 63 3a 20 20 20 20 30 20 20  raceExec:    0  
1c740 6e 6f 20 74 72 61 63 69 6e 67 0a 20 20 20 20 20  no tracing.     
1c750 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31                 1
1c760 20 20 74 72 61 63 65 20 6f 6e 6c 79 20 63 61 6c    trace only cal
1c770 6c 73 20 74 6f 20 54 63 6c 20 70 72 6f 63 73 0a  ls to Tcl procs.
1c780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c790 20 20 20 20 32 20 20 74 72 61 63 65 20 69 6e 76      2  trace inv
1c7a0 6f 63 61 74 69 6f 6e 73 20 6f 66 20 61 6c 6c 20  ocations of all 
1c7b0 63 6f 6d 6d 61 6e 64 73 20 69 6e 63 6c 75 64 69  commands includi
1c7c0 6e 67 20 70 72 6f 63 73 0a 20 20 20 20 20 20 20  ng procs.       
1c7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 33 20 20               3  
1c7e0 64 65 74 61 69 6c 65 64 20 74 72 61 63 65 20 73  detailed trace s
1c7f0 68 6f 77 69 6e 67 20 74 68 65 20 72 65 73 75 6c  howing the resul
1c800 74 20 6f 66 20 65 61 63 68 20 69 6e 73 74 72 75  t of each instru
1c810 63 74 69 6f 6e 0a 74 72 61 63 65 45 78 65 63 20  ction.traceExec 
1c820 3e 3d 20 32 20 70 72 6f 76 69 64 65 73 20 61 20  >= 2 provides a 
1c830 6f 6e 65 20 6c 69 6e 65 20 73 75 6d 6d 61 72 79  one line summary
1c840 20 6f 66 20 65 61 63 68 20 63 61 6c 6c 65 64 20   of each called 
1c850 63 6f 6d 6d 61 6e 64 20 61 6e 64 0a 69 74 73 20  command and.its 
1c860 61 72 67 75 6d 65 6e 74 73 2e 20 43 6f 6d 6d 61  arguments. Comma
1c870 6e 64 73 20 74 68 61 74 20 68 61 76 65 20 62 65  nds that have be
1c880 65 6e 20 22 63 6f 6d 70 69 6c 65 64 20 61 77 61  en "compiled awa
1c890 79 22 20 73 75 63 68 20 61 73 20 73 65 74 20 61  y" such as set a
1c8a0 72 65 0a 6e 6f 74 20 73 68 6f 77 6e 2e 20 28 42  re.not shown. (B
1c8b0 4c 29 0a 0a 31 31 2f 33 30 2f 39 36 20 28 62 75  L)..11/30/96 (bu
1c8c0 67 20 66 69 78 29 20 54 68 65 20 63 6f 6d 6d 61  g fix) The comma
1c8d0 6e 64 20 22 69 6e 66 6f 20 6e 61 6d 65 6f 66 65  nd "info nameofe
1c8e0 78 65 63 75 74 61 62 6c 65 22 20 63 6f 75 6c 64  xecutable" could
1c8f0 20 73 6f 6d 65 74 69 6d 65 73 0a 72 65 74 75 72   sometimes.retur
1c900 6e 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 20  n the name of a 
1c910 64 69 72 65 63 74 6f 72 79 2e 20 28 4a 4f 29 0a  directory. (JO).
1c920 0a 31 31 2f 33 30 2f 39 36 20 28 66 65 61 74 75  .11/30/96 (featu
1c930 72 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29  re improvements)
1c940 20 43 68 61 6e 67 65 64 20 74 68 65 20 63 6f 64   Changed the cod
1c950 65 20 69 6e 20 6c 69 62 72 61 72 79 2f 69 6e 69  e in library/ini
1c960 74 2e 74 63 6c 0a 74 68 61 74 20 72 65 61 64 73  t.tcl.that reads
1c970 20 69 6e 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c   in pkgIndex.tcl
1c980 20 73 6f 20 74 68 61 74 20 28 61 29 20 69 74 20   so that (a) it 
1c990 72 65 61 64 73 20 74 68 65 20 66 69 6c 65 73 20  reads the files 
1c9a0 66 72 6f 6d 20 63 68 69 6c 64 0a 64 69 72 65 63  from child.direc
1c9b0 74 6f 72 69 65 73 20 62 65 66 6f 72 65 20 74 68  tories before th
1c9c0 6f 73 65 20 69 6e 20 74 68 65 20 70 61 72 65 6e  ose in the paren
1c9d0 74 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 70  t, so that the p
1c9e0 61 72 65 6e 74 20 67 65 74 73 0a 70 72 65 63 65  arent gets.prece
1c9f0 64 65 6e 63 65 2c 20 61 6e 64 20 28 62 29 20 69  dence, and (b) i
1ca00 74 20 64 6f 65 73 6e 27 74 20 71 75 69 74 20 69  t doesn't quit i
1ca10 66 20 74 68 65 72 65 20 69 73 20 61 6e 20 65 72  f there is an er
1ca20 72 6f 72 20 69 6e 20 61 0a 70 6b 67 49 6e 64 65  ror in a.pkgInde
1ca30 78 2e 74 63 6c 20 66 69 6c 65 3b 20 20 69 6e 73  x.tcl file;  ins
1ca40 74 65 61 64 2c 20 69 74 20 70 72 69 6e 74 73 20  tead, it prints 
1ca50 61 6e 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65  an error message
1ca60 20 6f 6e 20 73 74 61 6e 64 61 72 64 0a 65 72 72   on standard.err
1ca70 6f 72 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 73  or and continues
1ca80 2e 20 28 4a 4f 29 0a 0a 31 30 2f 35 2f 39 36 20  . (JO)..10/5/96 
1ca90 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76 65  (feature improve
1caa0 6d 65 6e 74 73 29 20 50 61 72 74 69 61 6c 20 69  ments) Partial i
1cab0 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66  mplementation of
1cac0 20 62 69 6e 61 72 79 20 73 74 72 69 6e 67 0a 73   binary string.s
1cad0 75 70 70 6f 72 74 3a 20 74 68 65 20 61 62 69 6c  upport: the abil
1cae0 69 74 79 20 66 6f 72 20 54 63 6c 20 73 74 72 69  ity for Tcl stri
1caf0 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 63 6f 6e  ng values to con
1cb00 74 61 69 6e 20 65 6d 62 65 64 64 65 64 20 6e 75  tain embedded nu
1cb10 6c 6c 20 62 79 74 65 73 2e 0a 43 68 61 6e 67 65  ll bytes..Change
1cb20 64 20 74 68 65 20 54 63 6c 20 6f 62 6a 65 63 74  d the Tcl object
1cb30 2d 62 61 73 65 64 20 41 50 49 73 20 74 6f 20 74  -based APIs to t
1cb40 61 6b 65 20 61 20 62 79 74 65 20 70 6f 69 6e 74  ake a byte point
1cb50 65 72 20 61 6e 64 20 6c 65 6e 67 74 68 20 70 61  er and length pa
1cb60 69 72 0a 69 6e 73 74 65 61 64 20 6f 66 20 61 20  ir.instead of a 
1cb70 6e 75 6c 6c 2d 74 65 72 6d 69 6e 61 74 65 64 20  null-terminated 
1cb80 43 20 73 74 72 69 6e 67 2e 20 4d 6f 64 69 66 69  C string. Modifi
1cb90 65 64 20 73 65 76 65 72 61 6c 20 6f 62 6a 65 63  ed several objec
1cba0 74 20 74 79 70 65 20 6d 61 6e 61 67 65 72 73 0a  t type managers.
1cbb0 74 6f 20 73 75 70 70 6f 72 74 20 62 69 6e 61 72  to support binar
1cbc0 79 20 73 74 72 69 6e 67 73 20 62 75 74 20 6e 6f  y strings but no
1cbd0 74 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20  t, for example, 
1cbe0 74 68 65 20 6c 69 73 74 20 74 79 70 65 20 6d 61  the list type ma
1cbf0 6e 61 67 65 72 2e 0a 45 78 69 73 74 69 6e 67 20  nager..Existing 
1cc00 73 74 72 69 6e 67 2d 62 61 73 65 64 20 43 20 41  string-based C A
1cc10 50 49 73 20 61 72 65 20 75 6e 63 68 61 6e 67 65  PIs are unchange
1cc20 64 20 61 6e 64 20 77 69 6c 6c 20 74 72 75 6e 63  d and will trunc
1cc30 61 74 65 20 62 69 6e 61 72 79 0a 73 74 72 69 6e  ate binary.strin
1cc40 67 73 2e 20 43 6f 6d 70 69 6c 65 64 20 73 63 72  gs. Compiled scr
1cc50 69 70 74 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20  ipts containing 
1cc60 6e 75 6c 6c 73 20 61 72 65 20 61 6c 73 6f 20 74  nulls are also t
1cc70 72 75 6e 63 61 74 65 64 2e 20 28 42 4c 29 0a 0a  runcated. (BL)..
1cc80 31 32 2f 31 32 2f 39 36 20 28 66 65 61 74 75 72  12/12/96 (featur
1cc90 65 20 63 68 61 6e 67 65 29 20 52 65 6d 6f 76 65  e change) Remove
1cca0 64 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 22  d the commands "
1ccb0 63 70 22 2c 20 22 6d 6b 64 69 72 22 2c 20 22 6d  cp", "mkdir", "m
1ccc0 76 22 2c 0a 22 72 6d 22 2c 20 61 6e 64 20 22 72  v",."rm", and "r
1ccd0 6d 64 69 72 22 20 66 72 6f 6d 20 74 68 65 20 4d  mdir" from the M
1cce0 61 63 69 6e 74 6f 73 68 20 76 65 72 73 69 6f 6e  acintosh version
1ccf0 20 6f 66 20 54 63 6c 2e 20 20 54 68 65 79 20 77   of Tcl.  They w
1cd00 65 72 65 20 6e 65 76 65 72 0a 6f 66 66 69 63 69  ere never.offici
1cd10 61 6c 6c 79 20 73 75 70 70 6f 72 74 65 64 20 61  ally supported a
1cd20 6e 64 20 74 68 65 69 72 20 66 75 6e 63 74 69 6f  nd their functio
1cd30 6e 61 6c 69 74 79 20 69 73 20 6e 6f 77 20 61 76  nality is now av
1cd40 61 69 6c 61 62 6c 65 20 76 69 61 0a 74 68 65 20  ailable via.the 
1cd50 66 69 6c 65 20 63 6f 6d 6d 61 6e 64 2e 20 28 52  file command. (R
1cd60 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  J)..------------
1cd70 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38  ----- Released 8
1cd80 2e 30 61 31 2c 20 31 32 2f 32 30 2f 39 36 20 2d  .0a1, 12/20/96 -
1cd90 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1cda0 2d 2d 2d 2d 2d 2d 0a 0a 31 2f 37 2f 39 37 20 28  ------..1/7/97 (
1cdb0 62 75 67 20 66 69 78 29 20 55 6e 64 65 72 20 57  bug fix) Under W
1cdc0 69 6e 64 6f 77 73 2c 20 22 66 69 6c 65 20 73 74  indows, "file st
1cdd0 61 74 20 63 3a 22 20 77 61 73 20 72 65 74 75 72  at c:" was retur
1cde0 6e 69 6e 67 20 65 72 72 6f 72 20 69 6e 73 74 65  ning error inste
1cdf0 61 64 0a 6f 66 20 73 74 61 74 20 66 6f 72 20 63  ad.of stat for c
1ce00 75 72 72 65 6e 74 20 64 69 72 20 6f 6e 20 63 3a  urrent dir on c:
1ce10 20 64 72 69 76 65 2e 0a 0a 31 2f 31 30 2f 39 37   drive...1/10/97
1ce20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
1ce30 64 64 65 64 20 54 63 6c 5f 47 65 74 49 6e 64 65  dded Tcl_GetInde
1ce40 78 46 72 6f 6d 4f 62 6a 20 70 72 6f 63 65 64 75  xFromObj procedu
1ce50 72 65 20 66 6f 72 20 71 75 69 63 6b 0a 6c 6f 6f  re for quick.loo
1ce60 6b 75 70 73 20 6f 66 20 6b 65 79 77 6f 72 64 20  kups of keyword 
1ce70 61 72 67 75 6d 65 6e 74 73 2e 20 28 4a 4f 29 0a  arguments. (JO).
1ce80 0a 31 2f 31 32 2f 39 37 20 28 6e 65 77 20 66 65  .1/12/97 (new fe
1ce90 61 74 75 72 65 29 20 53 65 72 69 61 6c 20 49 4f  ature) Serial IO
1cea0 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73   channel drivers
1ceb0 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 61 6e 64   for Windows and
1cec0 20 55 6e 69 78 2c 0a 61 76 61 69 6c 61 62 6c 65   Unix,.available
1ced0 20 62 79 20 75 73 69 6e 67 20 54 63 6c 20 6f 70   by using Tcl op
1cee0 65 6e 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 6f 70  en command to op
1cef0 65 6e 20 70 73 65 75 64 6f 2d 66 69 6c 65 73 20  en pseudo-files 
1cf00 6c 69 6b 65 20 22 63 6f 6d 31 3a 22 20 6f 72 0a  like "com1:" or.
1cf10 22 2f 64 65 76 2f 74 74 79 61 22 2e 20 20 4e 65  "/dev/ttya".  Ne
1cf20 77 20 6f 70 74 69 6f 6e 20 74 6f 20 54 63 6c 20  w option to Tcl 
1cf30 66 63 6f 6e 66 69 67 75 72 65 20 63 6f 6d 6d 61  fconfigure comma
1cf40 6e 64 20 66 6f 72 20 73 65 72 69 61 6c 20 66 69  nd for serial fi
1cf50 6c 65 73 3a 0a 22 2d 6d 6f 64 65 20 62 61 75 64  les:."-mode baud
1cf60 2c 70 61 72 69 74 79 2c 64 61 74 61 2c 73 74 6f  ,parity,data,sto
1cf70 70 22 20 74 6f 20 73 70 65 63 69 66 79 20 62 61  p" to specify ba
1cf80 75 64 20 72 61 74 65 2c 20 70 61 72 69 74 79 2c  ud rate, parity,
1cf90 20 64 61 74 61 20 62 69 74 73 2c 20 61 6e 64 0a   data bits, and.
1cfa0 73 74 6f 70 20 62 69 74 73 2e 20 20 53 65 72 69  stop bits.  Seri
1cfb0 61 6c 20 49 4f 20 69 73 20 6e 6f 74 20 79 65 74  al IO is not yet
1cfc0 20 61 76 61 69 6c 61 62 6c 65 20 6f 6e 20 4d 61   available on Ma
1cfd0 63 2e 0a 0a 31 2f 31 36 2f 39 37 20 28 66 65 61  c...1/16/97 (fea
1cfe0 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65 73  ture change) Res
1cff0 74 6f 72 65 64 20 74 68 65 20 54 63 6c 37 2e 78  tored the Tcl7.x
1d000 20 22 74 77 6f 20 6c 65 76 65 6c 20 73 75 62 73   "two level subs
1d010 74 69 74 75 74 69 6f 6e 0a 73 65 6d 61 6e 74 69  titution.semanti
1d020 63 73 22 20 66 6f 72 20 65 78 70 72 65 73 73 69  cs" for expressi
1d030 6f 6e 73 2e 20 45 78 70 72 65 73 73 69 6f 6e 73  ons. Expressions
1d040 20 6e 6f 74 20 65 6e 63 6c 6f 73 65 64 20 69 6e   not enclosed in
1d050 20 62 72 61 63 65 73 20 61 72 65 0a 69 6d 70 6c   braces are.impl
1d060 65 6d 65 6e 74 65 64 2c 20 69 6e 20 67 65 6e 65  emented, in gene
1d070 72 61 6c 2c 20 62 79 20 63 61 6c 6c 69 6e 67 20  ral, by calling 
1d080 74 68 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64  the expr command
1d090 20 70 72 6f 63 65 64 75 72 65 0a 28 54 63 6c 5f   procedure.(Tcl_
1d0a0 45 78 70 72 4f 62 6a 43 6d 64 29 20 61 74 20 72  ExprObjCmd) at r
1d0b0 75 6e 74 69 6d 65 20 61 66 74 65 72 20 74 68 65  untime after the
1d0c0 20 54 63 6c 20 69 6e 74 65 72 70 72 65 74 65 72   Tcl interpreter
1d0d0 20 68 61 73 20 61 6c 72 65 61 64 79 20 64 6f 6e   has already don
1d0e0 65 20 61 0a 66 69 72 73 74 20 72 6f 75 6e 64 20  e a.first round 
1d0f0 6f 66 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73  of substitutions
1d100 2e 20 54 68 69 73 20 69 73 20 73 6c 6f 77 20 28  . This is slow (
1d110 61 62 6f 75 74 20 54 63 6c 37 2e 78 20 73 70 65  about Tcl7.x spe
1d120 65 64 29 20 62 65 63 61 75 73 65 20 6e 65 77 0a  ed) because new.
1d130 63 6f 64 65 20 66 6f 72 20 74 68 65 20 65 78 70  code for the exp
1d140 72 65 73 73 69 6f 6e 20 69 73 20 67 65 6e 65 72  ression is gener
1d150 61 6c 6c 79 20 63 6f 6d 70 69 6c 65 64 20 65 61  ally compiled ea
1d160 63 68 20 74 69 6d 65 2e 20 48 6f 77 65 76 65 72  ch time. However
1d170 2c 20 69 66 20 74 68 65 0a 65 78 70 72 65 73 73  , if the.express
1d180 69 6f 6e 20 68 61 73 20 6f 6e 6c 79 20 76 61 72  ion has only var
1d190 69 61 62 6c 65 20 73 75 62 73 74 69 74 75 74 69  iable substituti
1d1a0 6f 6e 73 20 28 61 6e 64 20 6e 6f 74 20 63 6f 6d  ons (and not com
1d1b0 6d 61 6e 64 20 73 75 62 73 74 69 74 75 74 69 6f  mand substitutio
1d1c0 6e 73 29 2c 0a 22 6f 70 74 69 6d 69 73 74 69 63  ns),."optimistic
1d1d0 22 20 66 61 73 74 20 63 6f 64 65 20 69 73 20 67  " fast code is g
1d1e0 65 6e 65 72 61 74 65 64 20 69 6e 6c 69 6e 65 2e  enerated inline.
1d1f0 20 54 68 69 73 20 69 6e 6c 69 6e 65 20 63 6f 64   This inline cod
1d200 65 20 77 69 6c 6c 20 66 61 69 6c 20 69 66 20 61  e will fail if a
1d210 0a 73 65 63 6f 6e 64 20 72 6f 75 6e 64 20 6f 66  .second round of
1d220 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73 20 69   substitutions i
1d230 73 20 6e 65 65 64 65 64 20 28 69 2e 65 2e 2c 20  s needed (i.e., 
1d240 69 66 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20  if the value of 
1d250 61 20 73 75 62 73 74 69 74 75 74 65 64 0a 76 61  a substituted.va
1d260 72 69 61 62 6c 65 20 69 74 73 65 6c 66 20 72 65  riable itself re
1d270 71 75 69 72 65 73 20 6d 6f 72 65 20 73 75 62 73  quires more subs
1d280 74 69 74 75 74 69 6f 6e 73 29 2e 20 54 68 65 20  titutions). The 
1d290 6f 70 74 69 6d 69 73 74 69 63 20 63 6f 64 65 20  optimistic code 
1d2a0 77 69 6c 6c 0a 63 61 74 63 68 20 74 68 65 20 65  will.catch the e
1d2b0 72 72 6f 72 20 61 6e 64 20 62 61 63 6b 20 6f 66  rror and back of
1d2c0 66 20 74 6f 20 63 61 6c 6c 20 74 68 65 20 73 6c  f to call the sl
1d2d0 6f 77 65 72 20 62 75 74 20 67 75 61 72 61 6e 74  ower but guarant
1d2e0 65 65 64 20 63 6f 72 72 65 63 74 0a 65 78 70 72  eed correct.expr
1d2f0 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75   command procedu
1d300 72 65 2e 20 28 42 4c 29 0a 0a 31 2f 31 36 2f 39  re. (BL)..1/16/9
1d310 37 20 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f  7 (feature impro
1d320 76 65 6d 65 6e 74 73 29 20 41 64 64 65 64 20 54  vements) Added T
1d330 63 6c 5f 45 78 70 72 4c 6f 6e 67 4f 62 6a 20 61  cl_ExprLongObj a
1d340 6e 64 20 54 63 6c 5f 45 78 70 72 44 6f 75 62 6c  nd Tcl_ExprDoubl
1d350 65 4f 62 6a 0a 74 6f 20 72 6f 75 6e 64 20 6f 75  eObj.to round ou
1d360 74 20 65 78 70 72 65 73 73 69 6f 6e 2d 72 65 6c  t expression-rel
1d370 61 74 65 64 20 70 72 6f 63 65 64 75 72 65 73 2e  ated procedures.
1d380 20 28 42 4c 29 0a 0a 31 2f 31 36 2f 39 37 20 28   (BL)..1/16/97 (
1d390 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
1d3a0 55 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 61  Under Windows, a
1d3b0 74 20 73 74 61 72 74 75 70 20 74 68 65 20 65 6e  t startup the en
1d3c0 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62  vironment variab
1d3d0 6c 65 73 0a 22 70 61 74 68 22 2c 20 22 63 6f 6d  les."path", "com
1d3e0 73 70 65 63 22 2c 20 61 6e 64 20 22 77 69 6e 64  spec", and "wind
1d3f0 69 72 22 20 69 6e 20 61 6e 79 20 63 61 70 69 74  ir" in any capit
1d400 61 6c 69 7a 61 74 69 6f 6e 20 61 72 65 20 63 6f  alization are co
1d410 6e 76 65 72 74 65 64 0a 61 75 74 6f 6d 61 74 69  nverted.automati
1d420 63 61 6c 6c 79 20 74 6f 20 75 70 70 65 72 20 63  cally to upper c
1d430 61 73 65 2e 20 20 54 68 65 20 50 41 54 48 20 76  ase.  The PATH v
1d440 61 72 69 61 62 6c 65 20 63 6f 75 6c 64 20 62 65  ariable could be
1d450 20 73 70 65 6c 6c 65 64 20 61 73 20 70 61 74 68   spelled as path
1d460 2c 0a 50 61 74 68 2c 20 50 61 54 68 2c 20 65 74  ,.Path, PaTh, et
1d470 63 2e 20 61 6e 64 20 69 74 20 6d 61 6b 65 73 20  c. and it makes 
1d480 70 72 6f 67 72 61 6d 6d 69 6e 67 20 72 61 74 68  programming rath
1d490 65 72 20 61 6e 6e 6f 79 69 6e 67 2e 20 20 41 6c  er annoying.  Al
1d4a0 6c 20 6f 74 68 65 72 0a 65 6e 76 69 72 6f 6e 6d  l other.environm
1d4b0 65 6e 74 20 76 61 72 69 61 62 6c 65 73 20 61 72  ent variables ar
1d4c0 65 20 6c 65 66 74 20 61 6c 6f 6e 65 2e 20 28 43  e left alone. (C
1d4d0 53 29 0a 0a 31 2f 32 30 2f 39 37 20 28 6e 65 77  S)..1/20/97 (new
1d4e0 20 66 65 61 74 75 72 65 73 29 20 52 65 77 72 6f   features) Rewro
1d4f0 74 65 20 74 68 65 20 22 6c 73 6f 72 74 22 20 63  te the "lsort" c
1d500 6f 6d 6d 61 6e 64 3a 0a 20 20 20 20 2d 20 54 68  ommand:.    - Th
1d510 65 20 6e 65 77 20 76 65 72 73 69 6f 6e 20 69 73  e new version is
1d520 20 62 61 73 65 64 20 6f 6e 20 72 65 65 6e 74 72   based on reentr
1d530 61 6e 74 20 6d 65 72 67 65 20 73 6f 72 74 20 63  ant merge sort c
1d540 6f 64 65 20 70 72 6f 76 69 64 65 64 0a 20 20 20  ode provided.   
1d550 20 20 20 62 79 20 52 69 63 68 61 72 64 20 48 69     by Richard Hi
1d560 70 70 2c 20 73 6f 20 69 74 20 65 6c 69 6d 69 6e  pp, so it elimin
1d570 61 74 65 73 20 74 68 65 20 72 65 65 6e 74 72 61  ates the reentra
1d580 6e 63 79 20 61 6e 64 20 73 74 61 62 69 6c 69 74  ncy and stabilit
1d590 79 0a 20 20 20 20 20 20 70 72 6f 62 6c 65 6d 73  y.      problems
1d5a0 20 77 69 74 68 20 74 68 65 20 6f 6c 64 20 71 73   with the old qs
1d5b0 6f 72 74 2d 62 61 73 65 64 20 69 6d 70 6c 65 6d  ort-based implem
1d5c0 65 6e 74 61 74 69 6f 6e 2e 0a 20 20 20 20 2d 20  entation..    - 
1d5d0 54 68 65 20 6e 65 77 20 76 65 72 73 69 6f 6e 20  The new version 
1d5e0 73 75 70 70 6f 72 74 73 20 61 20 2d 64 69 63 74  supports a -dict
1d5f0 69 6f 6e 61 72 79 20 6f 70 74 69 6f 6e 20 66 6f  ionary option fo
1d600 72 20 73 6f 72 74 69 6e 67 2c 20 61 6e 64 0a 20  r sorting, and. 
1d610 20 20 20 20 20 69 74 20 61 6c 73 6f 20 73 75 70       it also sup
1d620 70 6f 72 74 73 20 61 20 2d 69 6e 64 65 78 20 6f  ports a -index o
1d630 70 74 69 6f 6e 20 66 6f 72 20 73 6f 72 74 69 6e  ption for sortin
1d640 67 20 6c 69 73 74 73 20 75 73 69 6e 67 20 6f 6e  g lists using on
1d650 65 0a 20 20 20 20 20 20 65 6c 65 6d 65 6e 74 20  e.      element 
1d660 66 6f 72 20 63 6f 6d 70 61 72 69 73 6f 6e 2e 0a  for comparison..
1d670 20 20 20 20 2d 20 54 68 65 20 6e 65 77 20 76 65      - The new ve
1d680 72 73 69 6f 6e 20 69 73 20 61 6e 20 6f 62 6a 65  rsion is an obje
1d690 63 74 20 63 6f 6d 6d 61 6e 64 2c 20 73 6f 20 69  ct command, so i
1d6a0 74 20 77 6f 72 6b 73 20 77 65 6c 6c 20 77 69 74  t works well wit
1d6b0 68 20 74 68 65 0a 20 20 20 20 20 20 54 63 6c 20  h the.      Tcl 
1d6c0 63 6f 6d 70 69 6c 65 72 2c 20 65 73 70 65 63 69  compiler, especi
1d6d0 61 6c 6c 79 20 69 6e 20 63 6f 6e 6a 75 6e 63 74  ally in conjunct
1d6e0 69 6f 6e 20 77 69 74 68 20 74 68 65 20 6e 65 77  ion with the new
1d6f0 20 2d 69 6e 64 65 78 0a 20 20 20 20 20 20 6f 70   -index.      op
1d700 74 69 6f 6e 2e 20 20 57 68 65 6e 20 74 68 65 20  tion.  When the 
1d710 2d 69 6e 64 65 78 20 6f 70 74 69 6f 6e 20 69 73  -index option is
1d720 20 75 73 65 64 2c 20 74 68 69 73 20 76 65 72 73   used, this vers
1d730 69 6f 6e 20 6f 66 20 6c 73 6f 72 74 0a 20 20 20  ion of lsort.   
1d740 20 20 20 69 73 20 6d 6f 72 65 20 74 68 61 6e 20     is more than 
1d750 31 30 30 20 74 69 6d 65 73 20 66 61 73 74 65 72  100 times faster
1d760 20 74 68 61 6e 20 74 68 65 20 54 63 6c 20 37 2e   than the Tcl 7.
1d770 36 20 6c 73 6f 72 74 2c 20 77 68 69 63 68 20 68  6 lsort, which h
1d780 61 64 0a 20 20 20 20 20 20 74 6f 20 75 73 65 20  ad.      to use 
1d790 74 68 65 20 2d 63 6f 6d 6d 61 6e 64 20 6f 70 74  the -command opt
1d7a0 69 6f 6e 20 74 6f 20 67 65 74 20 74 68 65 20 73  ion to get the s
1d7b0 61 6d 65 20 65 66 66 65 63 74 2e 20 28 4a 4f 29  ame effect. (JO)
1d7c0 0a 0a 31 2f 32 30 2f 39 37 20 28 66 65 61 74 75  ..1/20/97 (featu
1d7d0 72 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29  re improvements)
1d7e0 20 41 64 64 65 64 20 74 68 65 20 69 6d 70 72 6f   Added the impro
1d7f0 76 65 64 20 64 65 62 75 67 67 69 6e 67 20 73 75  ved debugging su
1d800 70 70 6f 72 74 20 66 6f 72 20 54 63 6c 0a 6f 62  pport for Tcl.ob
1d810 6a 65 63 74 73 20 70 72 6f 74 6f 74 79 70 65 64  jects prototyped
1d820 20 62 79 20 4b 61 72 6c 20 4c 65 68 65 6e 62 61   by Karl Lehenba
1d830 75 65 72 20 3c 6b 61 72 6c 40 68 61 6d 6d 65 72  uer <[email protected]
1d840 31 2e 6f 70 73 2e 4e 65 6f 53 6f 66 74 2e 63 6f  1.ops.NeoSoft.co
1d850 6d 3e 2e 0a 49 66 20 54 43 4c 5f 4d 45 4d 5f 44  m>..If TCL_MEM_D
1d860 45 42 55 47 20 69 73 20 64 65 66 69 6e 65 64 2c  EBUG is defined,
1d870 20 74 68 65 20 6f 62 6a 65 63 74 20 63 72 65 61   the object crea
1d880 74 69 6f 6e 20 63 61 6c 6c 73 20 75 73 65 20 54  tion calls use T
1d890 63 6c 5f 44 62 43 6b 61 6c 6c 6f 63 0a 64 69 72  cl_DbCkalloc.dir
1d8a0 65 63 74 6c 79 20 69 6e 20 6f 72 64 65 72 20 74  ectly in order t
1d8b0 6f 20 72 65 63 6f 72 64 20 74 68 65 20 63 61 6c  o record the cal
1d8c0 6c 65 72 27 73 20 73 6f 75 72 63 65 20 66 69 6c  ler's source fil
1d8d0 65 20 6e 61 6d 65 20 61 6e 64 20 6c 69 6e 65 0a  e name and line.
1d8e0 6e 75 6d 62 65 72 2e 20 28 42 4c 29 0a 0a 31 2f  number. (BL)..1/
1d8f0 32 31 2f 39 37 20 28 72 65 6d 6f 76 65 64 20 66  21/97 (removed f
1d900 65 61 74 75 72 65 29 20 44 65 73 75 70 70 6f 72  eature) Desuppor
1d910 74 65 64 20 74 68 65 20 74 63 6c 5f 70 72 65 63  ted the tcl_prec
1d920 69 73 69 6f 6e 20 76 61 72 69 61 62 6c 65 3a 20  ision variable: 
1d930 69 66 0a 73 65 74 2c 20 69 74 20 69 73 20 69 67  if.set, it is ig
1d940 6e 6f 72 65 64 2e 20 20 54 63 6c 20 6e 6f 77 20  nored.  Tcl now 
1d950 75 73 65 73 20 74 68 65 20 66 75 6c 6c 20 31 37  uses the full 17
1d960 20 64 69 67 69 74 73 20 6f 66 20 70 72 65 63 69   digits of preci
1d970 73 69 6f 6e 20 77 68 65 6e 0a 63 6f 6e 76 65 72  sion when.conver
1d980 74 69 6e 67 20 72 65 61 6c 20 6e 75 6d 62 65 72  ting real number
1d990 73 20 74 6f 20 73 74 72 69 6e 67 73 20 28 77 69  s to strings (wi
1d9a0 74 68 20 74 68 65 20 6e 65 77 20 6f 62 6a 65 63  th the new objec
1d9b0 74 20 73 79 73 74 65 6d 20 72 65 61 6c 0a 6e 75  t system real.nu
1d9c0 6d 62 65 72 73 20 61 72 65 20 72 61 72 65 6c 79  mbers are rarely
1d9d0 20 63 6f 6e 76 65 72 74 65 64 20 74 6f 20 73 74   converted to st
1d9e0 72 69 6e 67 73 20 73 6f 20 74 68 65 72 65 20 69  rings so there i
1d9f0 73 20 6e 6f 20 65 66 66 69 63 69 65 6e 63 79 0a  s no efficiency.
1da00 64 69 73 61 64 76 61 6e 74 61 67 65 20 74 6f 20  disadvantage to 
1da10 70 72 69 6e 74 69 6e 67 20 61 6c 6c 20 31 37 20  printing all 17 
1da20 64 69 67 69 74 73 3b 20 74 68 65 20 6e 65 77 20  digits; the new 
1da30 73 63 68 65 6d 65 20 69 6d 70 72 6f 76 65 73 0a  scheme improves.
1da40 61 63 63 75 72 61 63 79 20 61 6e 64 20 73 69 6d  accuracy and sim
1da50 70 6c 69 66 69 65 73 20 73 65 76 65 72 61 6c 20  plifies several 
1da60 41 50 49 73 29 2e 20 28 4a 4f 29 0a 2a 2a 2a 20  APIs). (JO).*** 
1da70 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
1da80 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31  ATIBILITY ***..1
1da90 2f 32 31 2f 39 37 20 28 66 65 61 74 75 72 65 20  /21/97 (feature 
1daa0 63 68 61 6e 67 65 29 20 52 65 6d 6f 76 65 64 20  change) Removed 
1dab0 74 68 65 20 22 69 6e 74 65 72 70 22 20 61 72 67  the "interp" arg
1dac0 75 6d 65 6e 74 20 66 6f 72 20 74 68 65 0a 70 72  ument for the.pr
1dad0 6f 63 65 64 75 72 65 73 20 54 63 6c 5f 47 65 74  ocedures Tcl_Get
1dae0 53 74 72 69 6e 67 46 72 6f 6d 4f 62 6a 2c 20 54  StringFromObj, T
1daf0 63 6c 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65  cl_StringObjAppe
1db00 6e 64 2c 20 61 6e 64 0a 54 63 6c 5f 53 74 72 69  nd, and.Tcl_Stri
1db10 6e 67 4f 62 6a 41 70 70 65 6e 64 4f 62 6a 2e 20  ngObjAppendObj. 
1db20 20 41 6c 73 6f 20 72 65 6d 6f 76 65 64 20 74 68   Also removed th
1db30 65 20 22 69 6e 74 65 72 70 22 20 61 72 67 75 6d  e "interp" argum
1db40 65 6e 74 20 66 6f 72 0a 74 68 65 20 75 70 64 61  ent for.the upda
1db50 74 65 53 74 72 69 6e 67 50 72 6f 63 20 70 72 6f  teStringProc pro
1db60 63 65 64 75 72 65 20 69 6e 20 54 63 6c 5f 4f 62  cedure in Tcl_Ob
1db70 6a 54 79 70 65 20 73 74 72 75 63 74 75 72 65 73  jType structures
1db80 2e 20 20 57 69 74 68 0a 74 68 65 20 74 63 6c 5f  .  With.the tcl_
1db90 70 72 65 63 69 73 69 6f 6e 20 63 68 61 6e 67 65  precision change
1dba0 73 20 61 62 6f 76 65 2c 20 74 68 65 73 65 20 61  s above, these a
1dbb0 72 65 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65 65  re no longer nee
1dbc0 64 65 64 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f  ded. (JO).*** PO
1dbd0 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
1dbe0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
1dbf0 20 38 2e 30 61 31 2c 20 62 75 74 20 6e 6f 74 20   8.0a1, but not 
1dc00 77 69 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a  with Tcl 7.6 ***
1dc10 0a 0a 31 2f 32 32 2f 39 37 20 28 62 75 67 20 66  ..1/22/97 (bug f
1dc20 69 78 29 20 46 69 78 65 64 20 68 74 74 70 2e 74  ix) Fixed http.t
1dc30 63 6c 20 73 6f 20 74 68 61 74 20 68 74 74 70 5f  cl so that http_
1dc40 72 65 73 65 74 20 64 6f 65 73 20 6e 6f 74 20 72  reset does not r
1dc50 65 73 75 6c 74 20 69 6e 0a 61 6e 20 65 78 74 72  esult in.an extr
1dc60 61 20 63 61 6c 6c 20 74 6f 20 74 68 65 20 63 6f  a call to the co
1dc70 6d 6d 61 6e 64 20 63 61 6c 6c 62 61 63 6b 2e 20  mmand callback. 
1dc80 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 69 66   In addition, if
1dc90 20 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e   the transaction
1dca0 0a 67 65 74 73 20 61 20 70 72 65 6d 61 74 75 72  .gets a prematur
1dcb0 65 20 65 6f 66 2c 20 74 68 65 20 73 74 61 74 65  e eof, the state
1dcc0 28 73 74 61 74 75 73 29 20 69 73 20 22 65 6f 66  (status) is "eof
1dcd0 22 2c 20 6e 6f 74 20 22 6f 6b 22 2e 20 28 42 57  ", not "ok". (BW
1dce0 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  )..-------------
1dcf0 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  ---- Released 8.
1dd00 30 61 32 2c 20 31 2f 32 34 2f 39 37 20 2d 2d 2d  0a2, 1/24/97 ---
1dd10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1dd20 2d 2d 2d 2d 0a 0a 31 2f 32 39 2f 39 37 20 28 66  ----..1/29/97 (f
1dd30 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
1dd40 68 61 6e 67 65 64 20 68 6f 77 20 74 77 6f 20 64  hanged how two d
1dd50 69 67 69 74 20 79 65 61 72 73 20 61 72 65 20 70  igit years are p
1dd60 61 72 73 65 64 20 69 6e 20 74 68 65 0a 63 6c 6f  arsed in the.clo
1dd70 63 6b 20 63 6f 6d 6d 61 6e 64 2e 20 20 54 68 65  ck command.  The
1dd80 20 6f 6c 64 20 69 6e 74 65 72 66 61 63 65 20 6a   old interface j
1dd90 75 73 74 20 61 64 64 65 64 20 31 39 30 30 20 77  ust added 1900 w
1dda0 68 69 63 68 20 77 69 6c 6c 20 73 65 65 6d 0a 62  hich will seem.b
1ddb0 72 6f 6b 65 6e 20 62 79 20 74 68 65 20 79 65 61  roken by the yea
1ddc0 72 20 32 30 30 30 2e 20 20 54 68 65 20 6e 65 77  r 2000.  The new
1ddd0 20 73 63 68 65 6d 65 20 66 6f 6c 6c 6f 77 73 20   scheme follows 
1dde0 74 68 65 20 50 4f 53 49 58 20 73 74 61 6e 64 61  the POSIX standa
1ddf0 72 64 0a 61 6e 64 20 74 72 65 61 74 73 20 64 61  rd.and treats da
1de00 74 65 73 20 37 30 2d 39 39 20 61 73 20 31 39 37  tes 70-99 as 197
1de10 30 2d 31 39 39 39 20 61 6e 64 20 64 61 74 65 73  0-1999 and dates
1de20 20 30 30 2d 33 38 20 61 73 20 32 30 30 30 2d 32   00-38 as 2000-2
1de30 30 33 38 2e 20 20 41 6c 6c 0a 6f 74 68 65 72 20  038.  All.other 
1de40 74 77 6f 20 64 69 67 69 74 20 64 61 74 65 73 20  two digit dates 
1de50 61 72 65 20 75 6e 64 65 66 69 6e 65 64 2e 20 28  are undefined. (
1de60 52 4a 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  RJ).*** POTENTIA
1de70 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
1de80 59 20 2a 2a 2a 0a 0a 32 2f 34 2f 39 37 20 28 62  Y ***..2/4/97 (b
1de90 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
1dea0 67 20 69 6e 20 63 6c 6f 63 6b 20 63 6f 64 65 20  g in clock code 
1deb0 74 68 61 74 20 64 65 61 6c 74 20 77 69 74 68 20  that dealt with 
1dec0 72 65 6c 61 74 69 76 65 0a 64 61 74 65 73 2e 20  relative.dates. 
1ded0 20 55 73 69 6e 67 20 74 68 65 20 72 65 6c 61 74   Using the relat
1dee0 69 76 65 20 6d 6f 6e 74 68 20 63 6f 64 65 20 79  ive month code y
1def0 6f 75 20 63 6f 75 6c 64 20 67 65 74 20 61 6e 20  ou could get an 
1df00 69 6e 76 61 6c 69 64 20 64 61 74 65 0a 62 65 63  invalid date.bec
1df10 61 75 73 65 20 69 74 20 6a 75 6d 70 65 64 20 69  ause it jumped i
1df20 6e 74 6f 20 61 20 6e 6f 6e 2d 65 78 69 73 74 61  nto a non-exista
1df30 6e 74 20 64 61 79 2e 20 20 28 46 6f 72 20 65 78  nt day.  (For ex
1df40 61 6d 70 6c 65 2c 20 4a 61 6e 20 33 31 0a 74 6f  ample, Jan 31.to
1df50 20 46 65 62 20 33 31 2e 29 20 20 54 68 65 20 63   Feb 31.)  The c
1df60 6f 64 65 20 6e 6f 77 20 77 69 6c 6c 20 72 65 74  ode now will ret
1df70 75 72 6e 20 74 68 65 20 6c 61 73 74 20 76 61 6c  urn the last val
1df80 69 64 20 64 61 79 20 6f 66 20 74 68 65 0a 6d 6f  id day of the.mo
1df90 6e 74 68 20 69 6e 20 74 68 65 73 65 20 73 69 74  nth in these sit
1dfa0 75 61 74 69 6f 6e 73 2e 20 20 54 68 61 6e 6b 73  uations.  Thanks
1dfb0 20 74 6f 20 48 75 6d 65 20 53 6d 69 74 68 20 66   to Hume Smith f
1dfc0 6f 72 20 73 65 6e 64 69 6e 67 20 69 6e 0a 74 68  or sending in.th
1dfd0 69 73 20 62 75 67 20 66 69 78 2e 20 20 28 52 4a  is bug fix.  (RJ
1dfe0 29 0a 0a 32 2f 31 30 2f 39 37 20 28 66 65 61 74  )..2/10/97 (feat
1dff0 75 72 65 20 63 68 61 6e 67 65 29 20 45 6c 69 6d  ure change) Elim
1e000 69 6e 61 74 65 64 20 54 63 6c 5f 53 74 72 69 6e  inated Tcl_Strin
1e010 67 4f 62 6a 41 70 70 65 6e 64 20 61 6e 64 0a 54  gObjAppend and.T
1e020 63 6c 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65  cl_StringObjAppe
1e030 6e 64 4f 62 6a 20 70 72 6f 63 65 64 75 72 65 73  ndObj procedures
1e040 2c 20 72 65 70 6c 61 63 65 64 20 74 68 65 6d 20  , replaced them 
1e050 77 69 74 68 20 54 63 6c 5f 41 70 70 65 6e 64 54  with Tcl_AppendT
1e060 6f 4f 62 6a 0a 61 6e 64 20 54 63 6c 5f 41 70 70  oObj.and Tcl_App
1e070 65 6e 64 53 74 72 69 6e 67 73 54 6f 4f 62 6a 20  endStringsToObj 
1e080 70 72 6f 63 65 64 75 72 65 73 2e 20 20 41 64 64  procedures.  Add
1e090 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65  ed new procedure
1e0a0 0a 54 63 6c 5f 53 65 74 4f 62 6a 4c 65 6e 67 74  .Tcl_SetObjLengt
1e0b0 68 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f 54 45  h. (JO).*** POTE
1e0c0 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
1e0d0 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38  ILITY with Tcl 8
1e0e0 2e 30 61 32 2c 20 62 75 74 20 6e 6f 74 20 77 69  .0a2, but not wi
1e0f0 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a  th Tcl 7.6 ***..
1e100 32 2f 31 30 2f 39 37 20 28 6e 65 77 20 66 65 61  2/10/97 (new fea
1e110 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f  ture) Added Tcl_
1e120 57 72 6f 6e 67 4e 75 6d 41 72 67 73 20 70 72 6f  WrongNumArgs pro
1e130 63 65 64 75 72 65 20 66 6f 72 20 67 65 6e 65 72  cedure for gener
1e140 61 74 69 6e 67 0a 65 72 72 6f 72 20 6d 65 73 73  ating.error mess
1e150 61 67 65 73 20 61 62 6f 75 74 20 69 6e 63 6f 72  ages about incor
1e160 72 65 63 74 20 6e 75 6d 62 65 72 20 6f 66 20 61  rect number of a
1e170 72 67 75 6d 65 6e 74 73 2e 20 28 4a 4f 29 0a 0a  rguments. (JO)..
1e180 32 2f 31 31 2f 39 37 20 28 6e 65 77 20 66 65 61  2/11/97 (new fea
1e190 74 75 72 65 2c 20 62 75 67 20 66 69 78 29 20 68  ture, bug fix) h
1e1a0 74 74 70 20 70 61 63 6b 61 67 65 2e 20 20 41 64  ttp package.  Ad
1e1b0 64 65 64 20 2d 61 63 63 65 70 74 20 74 6f 20 68  ded -accept to h
1e1c0 74 74 70 5f 63 6f 6e 66 69 67 0a 73 6f 20 79 6f  ttp_config.so yo
1e1d0 75 20 63 61 6e 20 73 65 74 20 74 68 65 20 41 63  u can set the Ac
1e1e0 63 65 70 74 20 68 65 61 64 65 72 2e 20 20 41 64  cept header.  Ad
1e1f0 64 65 64 20 2d 68 61 6e 64 6c 65 72 20 6f 70 74  ded -handler opt
1e200 69 6f 6e 20 74 6f 20 68 74 74 70 5f 67 65 74 20  ion to http_get 
1e210 73 6f 0a 79 6f 75 20 63 61 6e 20 73 75 70 70 6c  so.you can suppl
1e220 79 20 79 6f 75 72 20 6f 77 6e 20 64 61 74 61 20  y your own data 
1e230 68 61 6e 64 6c 65 72 2e 20 20 41 6c 73 6f 20 66  handler.  Also f
1e240 69 78 65 64 20 50 4f 53 54 20 6f 70 65 72 61 74  ixed POST operat
1e250 69 6f 6e 20 74 6f 0a 73 65 74 20 74 68 65 20 63  ion to.set the c
1e260 6f 72 72 65 63 74 20 4d 49 4d 45 20 74 79 70 65  orrect MIME type
1e270 20 6f 6e 20 74 68 65 20 72 65 71 75 65 73 74 2e   on the request.
1e280 20 28 42 57 29 0a 0a 32 2f 32 32 2f 39 37 20 28   (BW)..2/22/97 (
1e290 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
1e2a0 75 67 20 74 68 61 74 20 63 61 75 73 65 64 20 24  ug that caused $
1e2b0 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 6f 73 56  tcl_platform(osV
1e2c0 65 72 73 69 6f 6e 29 20 74 6f 20 62 65 0a 63 6f  ersion) to be.co
1e2d0 6d 70 75 74 65 64 20 69 6e 63 6f 72 72 65 63 74  mputed incorrect
1e2e0 6c 79 20 75 6e 64 65 72 20 41 49 58 2e 20 28 4a  ly under AIX. (J
1e2f0 4f 29 0a 0a 32 2f 32 35 2f 39 37 20 28 6e 65 77  O)..2/25/97 (new
1e300 20 66 65 61 74 75 72 65 2c 20 66 65 61 74 75 72   feature, featur
1e310 65 20 63 68 61 6e 67 65 29 20 41 64 64 65 64 20  e change) Added 
1e320 73 75 70 70 6f 72 74 20 66 6f 72 20 62 6f 74 68  support for both
1e330 20 69 6e 74 20 61 6e 64 20 6c 6f 6e 67 0a 69 6e   int and long.in
1e340 74 65 67 65 72 20 6f 62 6a 65 63 74 73 2e 20 41  teger objects. A
1e350 64 64 65 64 20 54 63 6c 5f 4e 65 77 4c 6f 6e 67  dded Tcl_NewLong
1e360 4f 62 6a 2f 54 63 6c 5f 47 65 74 4c 6f 6e 67 46  Obj/Tcl_GetLongF
1e370 72 6f 6d 4f 62 6a 2f 54 63 6c 5f 53 65 74 4c 6f  romObj/Tcl_SetLo
1e380 6e 67 46 72 6f 6d 4f 62 6a 0a 70 72 6f 63 65 64  ngFromObj.proced
1e390 75 72 65 73 20 61 6e 64 20 72 65 6e 61 6d 65 64  ures and renamed
1e3a0 20 74 68 65 20 54 63 6c 5f 4f 62 6a 20 69 6e 74   the Tcl_Obj int
1e3b0 65 72 6e 61 6c 52 65 70 20 69 6e 74 56 61 6c 75  ernalRep intValu
1e3c0 65 20 6d 65 6d 62 65 72 20 74 6f 0a 6c 6f 6e 67  e member to.long
1e3d0 56 61 6c 75 65 2e 20 54 63 6c 5f 47 65 74 49 6e  Value. Tcl_GetIn
1e3e0 74 46 72 6f 6d 4f 62 6a 20 6e 6f 77 20 63 68 65  tFromObj now che
1e3f0 63 6b 73 20 66 6f 72 20 69 6e 74 65 67 65 72 20  cks for integer 
1e400 76 61 6c 75 65 73 20 74 6f 6f 20 6c 61 72 67 65  values too large
1e410 20 74 6f 0a 72 65 70 72 65 73 65 6e 74 20 61 73   to.represent as
1e420 20 6e 6f 6e 2d 6c 6f 6e 67 20 69 6e 74 65 67 65   non-long intege
1e430 72 73 2e 20 43 68 61 6e 67 65 64 20 54 63 6c 5f  rs. Changed Tcl_
1e440 47 65 74 41 6c 6c 4f 62 6a 54 79 70 65 73 20 74  GetAllObjTypes t
1e450 6f 0a 54 63 6c 5f 41 70 70 65 6e 64 41 6c 6c 4f  o.Tcl_AppendAllO
1e460 62 6a 54 79 70 65 73 2e 20 28 42 4c 29 0a 0a 33  bjTypes. (BL)..3
1e470 2f 35 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75  /5/97 (new featu
1e480 72 65 29 20 41 64 64 65 64 20 6e 65 77 20 54 63  re) Added new Tc
1e490 6c 5f 53 65 74 4c 69 73 74 4f 62 6a 20 70 72 6f  l_SetListObj pro
1e4a0 63 65 64 75 72 65 20 74 6f 20 72 6f 75 6e 64 20  cedure to round 
1e4b0 6f 75 74 0a 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f  out.collection o
1e4c0 66 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61  f procedures tha
1e4d0 74 20 73 65 74 20 74 68 65 20 74 79 70 65 20 61  t set the type a
1e4e0 6e 64 20 76 61 6c 75 65 20 6f 66 20 65 78 69 73  nd value of exis
1e4f0 74 69 6e 67 20 54 63 6c 0a 6f 62 6a 65 63 74 73  ting Tcl.objects
1e500 2e 20 28 42 4c 29 0a 0a 33 2f 36 2f 39 37 20 28  . (BL)..3/6/97 (
1e510 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
1e520 65 64 20 2d 67 6c 6f 62 61 6c 20 66 6c 61 67 20  ed -global flag 
1e530 66 6f 72 20 69 6e 74 65 72 70 20 69 6e 76 6f 6b  for interp invok
1e540 65 68 69 64 64 65 6e 2e 20 28 4a 4c 29 0a 0a 33  ehidden. (JL)..3
1e550 2f 36 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75  /6/97 (new featu
1e560 72 65 2c 20 66 65 61 74 75 72 65 20 63 68 61 6e  re, feature chan
1e570 67 65 29 20 41 64 64 65 64 20 69 73 4e 61 74 69  ge) Added isNati
1e580 76 65 4f 62 6a 65 63 74 50 72 6f 63 20 66 69 65  veObjectProc fie
1e590 6c 64 20 74 6f 20 74 68 65 0a 54 63 6c 5f 43 6d  ld to the.Tcl_Cm
1e5a0 64 49 6e 66 6f 20 73 74 72 75 63 74 75 72 65 20  dInfo structure 
1e5b0 74 6f 20 69 6e 64 69 63 61 74 65 20 28 77 68 65  to indicate (whe
1e5c0 6e 20 31 29 20 69 66 20 74 68 65 20 63 6f 6d 6d  n 1) if the comm
1e5d0 61 6e 64 20 68 61 73 20 61 6e 0a 6f 62 6a 65 63  and has an.objec
1e5e0 74 2d 62 61 73 65 64 20 63 6f 6d 6d 61 6e 64 20  t-based command 
1e5f0 70 72 6f 63 65 64 75 72 65 2e 20 52 65 6d 6f 76  procedure. Remov
1e600 65 64 20 74 68 65 20 6e 61 6d 65 4c 65 6e 67 74  ed the nameLengt
1e610 68 20 61 72 67 20 66 72 6f 6d 0a 54 63 6c 5f 43  h arg from.Tcl_C
1e620 72 65 61 74 65 4f 62 6a 43 6f 6d 6d 61 6e 64 20  reateObjCommand 
1e630 73 69 6e 63 65 20 63 6f 6d 6d 61 6e 64 20 6e 61  since command na
1e640 6d 65 73 20 63 61 6e 27 74 20 63 6f 6e 74 61 69  mes can't contai
1e650 6e 20 6e 75 6c 6c 20 63 68 61 72 61 63 74 65 72  n null character
1e660 73 2e 20 28 42 4c 29 0a 0a 33 2f 36 2f 39 37 20  s. (BL)..3/6/97 
1e670 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1e680 62 75 67 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e 22  bug in "unknown"
1e690 20 70 72 6f 63 65 64 75 72 65 20 74 68 61 74 20   procedure that 
1e6a0 63 61 75 73 65 64 20 61 75 74 6f 2d 0a 6c 6f 61  caused auto-.loa
1e6b0 64 69 6e 67 20 74 6f 20 66 61 69 6c 20 6f 6e 20  ding to fail on 
1e6c0 63 6f 6d 6d 61 6e 64 73 20 77 68 6f 73 65 20 6e  commands whose n
1e6d0 61 6d 65 73 20 62 65 67 69 6e 20 77 69 74 68 20  ames begin with 
1e6e0 64 69 67 69 74 73 2e 20 28 4a 4f 29 0a 0a 33 2f  digits. (JO)..3/
1e6f0 37 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 41  7/97 (bug fix) A
1e700 75 74 6f 2d 6c 6f 61 64 69 6e 67 20 6e 6f 77 20  uto-loading now 
1e710 77 6f 72 6b 73 20 69 6e 20 53 61 66 65 20 42 61  works in Safe Ba
1e720 73 65 2e 20 53 61 66 65 20 69 6e 74 65 72 70 72  se. Safe interpr
1e730 65 74 65 72 73 0a 6f 6e 6c 79 20 61 63 63 65 70  eters.only accep
1e740 74 20 74 68 65 20 56 65 72 73 69 6f 6e 20 32 20  t the Version 2 
1e750 61 6e 64 20 6f 6e 77 61 72 64 73 20 74 63 6c 49  and onwards tclI
1e760 6e 64 65 78 20 66 69 6c 65 73 2e 20 28 4a 4c 29  ndex files. (JL)
1e770 0a 0a 33 2f 31 33 2f 39 37 20 28 62 75 67 20 66  ..3/13/97 (bug f
1e780 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64  ix) Fixed core d
1e790 75 6d 70 20 64 75 65 20 74 6f 20 69 6e 74 65 72  ump due to inter
1e7a0 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 61  action between a
1e7b0 6c 69 61 73 65 73 20 61 6e 64 0a 68 69 64 64 65  liases and.hidde
1e7c0 6e 20 63 6f 6d 6d 61 6e 64 73 2e 20 42 75 67 20  n commands. Bug 
1e7d0 66 6f 75 6e 64 20 62 79 20 4c 69 6e 64 73 61 79  found by Lindsay
1e7e0 20 4d 61 72 73 68 61 6c 6c 2e 20 28 4a 4c 29 0a   Marshall. (JL).
1e7f0 0a 33 2f 31 34 2f 39 37 20 28 62 75 67 20 66 69  .3/14/97 (bug fi
1e800 78 29 20 46 69 78 65 64 20 6d 61 63 20 62 75 67  x) Fixed mac bug
1e810 73 20 72 65 6c 61 74 69 6e 67 20 74 6f 20 74 69  s relating to ti
1e820 6d 65 2e 20 20 54 68 65 20 2d 67 6d 74 20 6f 70  me.  The -gmt op
1e830 74 69 6f 6e 0a 6e 6f 77 20 61 64 6a 75 73 74 73  tion.now adjusts
1e840 20 74 68 65 20 74 69 6d 65 20 69 6e 20 74 68 65   the time in the
1e850 20 63 6f 72 72 65 63 74 20 64 69 72 65 63 74 69   correct directi
1e860 6f 6e 2e 20 20 28 54 68 61 6e 6b 73 20 74 6f 20  on.  (Thanks to 
1e870 45 64 20 48 75 6d 65 20 66 6f 72 0a 72 65 70 6f  Ed Hume for.repo
1e880 72 74 69 6e 67 20 61 20 66 69 78 20 74 6f 20 74  rting a fix to t
1e890 68 69 73 20 70 72 6f 62 6c 65 6d 2e 29 20 20 41  his problem.)  A
1e8a0 6c 73 6f 20 66 69 78 65 64 20 66 69 6c 65 20 22  lso fixed file "
1e8b0 6d 74 69 6d 65 22 20 65 74 63 2e 20 74 6f 0a 72  mtime" etc. to.r
1e8c0 65 74 75 72 6e 20 74 69 6d 65 73 20 66 72 6f 6d  eturn times from
1e8d0 20 47 4d 54 20 72 61 74 68 65 72 20 74 68 61 6e   GMT rather than
1e8e0 20 6c 6f 63 61 6c 20 74 69 6d 65 20 7a 6f 6e 65   local time zone
1e8f0 2e 20 20 28 52 4a 29 0a 0a 33 2f 31 38 2f 39 37  .  (RJ)..3/18/97
1e900 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
1e910 29 20 44 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66  ) Declaration of
1e920 20 6f 62 6a 76 20 69 6e 20 54 63 6c 5f 4f 62 6a   objv in Tcl_Obj
1e930 43 6d 64 50 72 6f 63 20 66 75 6e 63 74 69 6f 6e  CmdProc function
1e940 0a 63 68 61 6e 67 65 64 20 66 72 6f 6d 20 22 54  .changed from "T
1e950 63 6c 5f 4f 62 6a 20 2a 6f 62 6a 76 5b 5d 22 20  cl_Obj *objv[]" 
1e960 74 6f 20 22 54 63 6c 5f 4f 62 6a 20 2a 43 4f 4e  to "Tcl_Obj *CON
1e970 53 54 20 6f 62 6a 76 5b 5d 22 2e 20 20 41 6c 6c  ST objv[]".  All
1e980 20 54 63 6c 20 6f 62 6a 65 63 74 0a 63 6f 6d 6d   Tcl object.comm
1e990 61 6e 64 73 20 63 68 61 6e 67 65 64 20 74 6f 20  ands changed to 
1e9a0 75 73 65 20 6e 65 77 20 64 65 63 6c 61 72 61 74  use new declarat
1e9b0 69 6f 6e 20 6f 66 20 6f 62 6a 76 2e 20 20 4e 61  ion of objv.  Na
1e9c0 69 76 65 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20  ive translation 
1e9d0 6f 66 0a 73 74 72 69 6e 67 2d 62 61 73 65 64 20  of.string-based 
1e9e0 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 73 20 74 6f  command procs to
1e9f0 20 6f 62 6a 65 63 74 2d 62 61 73 65 64 20 63 6f   object-based co
1ea00 6d 6d 61 6e 64 20 70 72 6f 63 73 20 63 6f 75 6c  mmand procs coul
1ea10 64 20 76 65 72 79 20 65 61 73 69 6c 79 0a 68 61  d very easily.ha
1ea20 76 65 20 79 69 65 6c 64 65 64 20 63 6f 64 65 20  ve yielded code 
1ea30 77 68 65 72 65 20 74 68 65 20 63 6f 6e 74 65 6e  where the conten
1ea40 74 73 20 6f 66 20 74 68 65 20 6f 62 6a 76 20 61  ts of the objv a
1ea50 72 72 61 79 20 77 65 72 65 20 63 68 61 6e 67 65  rray were change
1ea60 64 2e 20 20 54 68 69 73 0a 69 73 20 6e 6f 74 20  d.  This.is not 
1ea70 61 20 70 72 6f 62 6c 65 6d 20 77 69 74 68 20 73  a problem with s
1ea80 74 72 69 6e 67 2d 62 61 73 65 64 20 63 6f 6d 6d  tring-based comm
1ea90 61 6e 64 20 70 72 6f 63 73 2c 20 62 75 74 20 64  and procs, but d
1eaa0 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67 20 61  oing something a
1eab0 73 0a 73 69 6d 70 6c 65 20 61 73 20 6f 62 6a 76  s.simple as objv
1eac0 5b 32 5d 20 3d 20 6f 62 6a 76 5b 33 5d 20 77 6f  [2] = objv[3] wo
1ead0 75 6c 64 20 63 6f 72 72 75 70 74 20 74 68 65 20  uld corrupt the 
1eae0 72 75 6e 74 69 6d 65 20 73 74 61 63 6b 20 61 6e  runtime stack an
1eaf0 64 20 63 61 75 73 65 20 54 63 6c 20 74 6f 0a 63  d cause Tcl to.c
1eb00 72 61 73 68 2e 20 20 49 6e 74 72 6f 64 75 63 65  rash.  Introduce
1eb10 64 20 43 4f 4e 53 54 20 69 6e 20 64 65 63 6c 61  d CONST in decla
1eb20 72 61 74 69 6f 6e 20 6f 66 20 6f 62 6a 76 20 73  ration of objv s
1eb30 6f 20 74 68 61 74 20 61 74 74 65 6d 70 74 65 64  o that attempted
1eb40 20 61 73 73 69 67 6e 6d 65 6e 74 0a 6f 66 20 6e   assignment.of n
1eb50 65 77 20 70 6f 69 6e 74 65 72 20 76 61 6c 75 65  ew pointer value
1eb60 73 20 74 6f 20 65 6c 65 6d 65 6e 74 73 20 6f 66  s to elements of
1eb70 20 74 68 65 20 6f 62 6a 76 20 61 72 72 61 79 20   the objv array 
1eb80 77 69 6c 6c 20 62 65 20 63 61 75 67 68 74 20 62  will be caught b
1eb90 79 20 74 68 65 0a 63 6f 6d 70 69 6c 65 72 2e 20  y the.compiler. 
1eba0 28 43 43 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54  (CCS).*** POTENT
1ebb0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
1ebc0 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e 30  ITY with Tcl 8.0
1ebd0 61 32 20 2a 2a 2a 0a 0a 33 2f 31 39 2f 39 37 20  a2 ***..3/19/97 
1ebe0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1ebf0 70 61 6e 69 63 20 64 75 65 20 74 6f 20 6f 62 6a  panic due to obj
1ec00 65 63 74 20 73 68 61 72 69 6e 67 2e 20 54 68 65  ect sharing. The
1ec10 20 72 6f 6f 74 20 63 61 75 73 65 20 77 61 73 0a   root cause was.
1ec20 74 68 61 74 20 6f 6c 64 20 63 6f 64 65 20 77 61  that old code wa
1ec30 73 20 75 73 69 6e 67 20 54 63 6c 5f 52 65 73 65  s using Tcl_Rese
1ec40 74 52 65 73 75 6c 74 20 69 6e 73 74 65 61 64 20  tResult instead 
1ec50 6f 66 20 54 63 6c 5f 52 65 73 65 74 4f 62 6a 52  of Tcl_ResetObjR
1ec60 65 73 75 6c 74 2e 20 28 4a 4c 29 0a 0a 33 2f 32  esult. (JL)..3/2
1ec70 30 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72  0/97 (new featur
1ec80 65 29 20 41 64 64 65 64 20 61 20 6e 65 77 20 73  e) Added a new s
1ec90 75 62 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 74 68  ubcommand for th
1eca0 65 20 66 69 6c 65 0a 63 6f 6d 6d 61 6e 64 2e 20  e file.command. 
1ecb0 66 69 6c 65 20 61 74 74 72 69 62 75 74 65 73 20  file attributes 
1ecc0 66 69 6c 65 6e 61 6d 65 20 63 61 6e 20 67 69 76  filename can giv
1ecd0 65 20 61 20 6c 69 73 74 20 6f 66 20 70 6c 61 74  e a list of plat
1ece0 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 0a 6f 70  form-specific.op
1ecf0 74 69 6f 6e 73 20 28 73 75 63 68 20 61 73 20 66  tions (such as f
1ed00 69 6c 65 2f 63 72 65 61 74 6f 72 20 74 79 70 65  ile/creator type
1ed10 20 6f 6e 20 74 68 65 20 4d 61 63 2c 20 70 65 72   on the Mac, per
1ed20 6d 69 73 73 69 6f 6e 73 20 6f 6e 20 55 6e 69 78  missions on Unix
1ed30 29 20 6f 72 0a 73 65 74 20 74 68 65 20 76 61 6c  ) or.set the val
1ed40 75 65 73 20 6f 66 20 74 68 65 6d 2e 20 41 64 64  ues of them. Add
1ed50 65 64 20 61 20 6e 65 77 20 73 75 62 63 6f 6d 6d  ed a new subcomm
1ed60 61 6e 64 20 66 6f 72 20 74 68 65 20 66 69 6c 65  and for the file
1ed70 0a 63 6f 6d 6d 61 6e 64 2e 20 66 69 6c 65 20 6e  .command. file n
1ed80 61 74 69 76 65 6e 61 6d 65 20 6e 61 6d 65 20 67  ativename name g
1ed90 69 76 65 73 20 62 61 63 6b 20 74 68 65 20 70 6c  ives back the pl
1eda0 61 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20  atform-specific 
1edb0 66 6f 72 6d 0a 66 6f 72 20 74 68 65 20 66 69 6c  form.for the fil
1edc0 65 2e 20 54 68 69 73 20 69 73 20 75 73 65 66 75  e. This is usefu
1edd0 6c 20 77 68 65 6e 20 74 68 65 20 66 69 6c 65 6e  l when the filen
1ede0 61 6d 65 20 69 73 20 6e 65 65 64 65 64 20 74 6f  ame is needed to
1edf0 20 70 61 73 73 20 74 6f 0a 74 68 65 20 4f 53 2c   pass to.the OS,
1ee00 20 73 75 63 68 20 61 73 20 65 78 65 63 20 75 6e   such as exec un
1ee10 64 65 72 20 57 69 6e 64 6f 77 73 20 39 35 20 6f  der Windows 95 o
1ee20 72 20 41 70 70 6c 65 53 63 72 69 70 74 20 6f 6e  r AppleScript on
1ee30 20 74 68 65 20 4d 61 63 2e 20 46 6f 72 0a 6d 6f   the Mac. For.mo
1ee40 72 65 20 69 6e 66 6f 2c 20 73 65 65 20 66 69 6c  re info, see fil
1ee50 65 2e 6e 2e 20 28 53 52 50 29 0a 0a 33 2f 32 34  e.n. (SRP)..3/24
1ee60 2f 39 37 20 28 72 65 6d 6f 76 65 64 20 66 65 61  /97 (removed fea
1ee70 74 75 72 65 29 20 52 65 6d 6f 76 65 64 20 74 68  ture) Removed th
1ee80 65 20 74 63 6c 5f 73 61 66 65 50 6f 6c 69 63 79  e tcl_safePolicy
1ee90 50 61 74 68 20 70 72 6f 63 65 64 75 72 65 2e 20  Path procedure. 
1eea0 4e 6f 77 0a 74 68 65 20 70 6f 6c 69 63 79 20 70  Now.the policy p
1eeb0 61 74 68 20 69 73 20 63 6f 6d 70 75 74 65 64 20  ath is computed 
1eec0 66 72 6f 6d 20 74 68 65 20 61 75 74 6f 5f 70 61  from the auto_pa
1eed0 74 68 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20  th by appending 
1eee0 74 68 65 20 64 69 72 65 63 74 6f 72 79 0a 27 70  the directory.'p
1eef0 6f 6c 69 63 69 65 73 27 20 74 6f 20 65 61 63 68  olicies' to each
1ef00 20 65 6c 65 6d 65 6e 74 2e 20 41 6c 73 6f 20 66   element. Also f
1ef10 69 78 65 64 20 73 65 76 65 72 61 6c 20 62 75 67  ixed several bug
1ef20 73 20 69 6e 20 61 75 74 6f 6d 61 74 69 63 20 74  s in automatic t
1ef30 72 61 63 6b 69 6e 67 0a 6f 66 20 61 75 74 6f 5f  racking.of auto_
1ef40 70 61 74 68 20 62 79 20 63 6f 6d 70 75 74 65 64  path by computed
1ef50 20 70 6f 6c 69 63 79 20 70 61 74 68 2e 20 28 4a   policy path. (J
1ef60 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  L).*** POTENTIAL
1ef70 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
1ef80 20 77 69 74 68 20 54 63 6c 20 38 2e 30 61 32 20   with Tcl 8.0a2 
1ef90 62 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c  but not with Tcl
1efa0 20 37 2e 36 20 2a 2a 2a 0a 0a 34 2f 38 2f 39 37   7.6 ***..4/8/97
1efb0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 49   (new feature) I
1efc0 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 77  f the variable w
1efd0 68 6f 73 65 20 6e 61 6d 65 20 69 73 20 70 61 73  hose name is pas
1efe0 73 65 64 20 74 6f 20 6c 61 70 70 65 6e 64 20 64  sed to lappend d
1eff0 6f 65 73 6e 27 74 0a 61 6c 72 65 61 64 79 20 65  oesn't.already e
1f000 78 69 73 74 2c 20 61 6e 64 20 74 68 65 72 65 20  xist, and there 
1f010 61 72 65 20 6e 6f 20 76 61 6c 75 65 20 61 72 67  are no value arg
1f020 75 6d 65 6e 74 73 2c 20 6c 61 70 70 65 6e 64 20  uments, lappend 
1f030 6e 6f 77 20 63 72 65 61 74 65 73 20 74 68 65 0a  now creates the.
1f040 76 61 72 69 61 62 6c 65 20 77 69 74 68 20 61 6e  variable with an
1f050 20 65 6d 70 74 79 20 76 61 6c 75 65 20 69 6e 73   empty value ins
1f060 74 65 61 64 20 6f 66 20 72 65 74 75 72 6e 69 6e  tead of returnin
1f070 67 20 61 6e 20 65 72 72 6f 72 2e 20 43 68 61 6e  g an error. Chan
1f080 67 65 20 73 75 67 67 65 73 74 65 64 0a 62 79 20  ge suggested.by 
1f090 54 6f 6d 20 54 72 6f 6d 65 79 2e 20 28 42 4c 29  Tom Tromey. (BL)
1f0a0 0a 0a 34 2f 39 2f 39 37 20 28 66 65 61 74 75 72  ..4/9/97 (featur
1f0b0 65 20 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65  e change) Change
1f0c0 64 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68  d the name of th
1f0d0 65 20 54 43 4c 5f 50 41 52 54 31 5f 4e 4f 54 5f  e TCL_PART1_NOT_
1f0e0 50 41 52 53 45 44 20 66 6c 61 67 20 74 6f 0a 54  PARSED flag to.T
1f0f0 43 4c 5f 50 41 52 53 45 5f 50 41 52 54 31 2e 20  CL_PARSE_PART1. 
1f100 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  (BL).*** POTENTI
1f110 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
1f120 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e 30 61  TY with Tcl 8.0a
1f130 32 20 62 75 74 20 6e 6f 74 20 77 69 74 68 20 54  2 but not with T
1f140 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a 34 2f 31 30  cl 7.6 ***..4/10
1f150 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20  /97 (bug fixes) 
1f160 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 63 6f  Fixed various co
1f170 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61 74 65  mpilation-relate
1f180 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20 22 55  d bugs:.    - "U
1f190 70 64 61 74 65 53 74 72 69 6e 67 4f 66 43 6d 64  pdateStringOfCmd
1f1a0 4e 61 6d 65 20 73 68 6f 75 6c 64 20 6e 65 76 65  Name should neve
1f1b0 72 20 62 65 20 69 6e 76 6f 6b 65 64 22 20 70 61  r be invoked" pa
1f1c0 6e 69 63 2e 0a 20 20 20 20 2d 20 42 61 64 20 63  nic..    - Bad c
1f1d0 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f  ode generated fo
1f1e0 72 20 65 78 70 72 65 73 73 69 6f 6e 73 20 6e 6f  r expressions no
1f1f0 74 20 69 6e 20 7b 7d 27 73 20 69 6e 73 69 64 65  t in {}'s inside
1f200 20 63 61 74 63 68 20 63 6f 6d 6d 61 6e 64 73 2e   catch commands.
1f210 0a 20 20 20 20 2d 20 53 65 67 6d 65 6e 74 61 74  .    - Segmentat
1f220 69 6f 6e 20 66 61 75 6c 74 20 69 6e 20 73 6f 6d  ion fault in som
1f230 65 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64  e command proced
1f240 75 72 65 73 20 77 68 65 6e 20 74 77 6f 20 61 72  ures when two ar
1f250 67 75 6d 65 6e 74 0a 20 20 20 20 20 20 6f 62 6a  gument.      obj
1f260 65 63 74 20 70 6f 69 6e 74 65 72 73 20 72 65 66  ect pointers ref
1f270 65 72 20 74 6f 20 74 68 65 20 73 61 6d 65 20 6f  er to the same o
1f280 62 6a 65 63 74 2e 0a 20 20 20 20 2d 20 53 65 63  bject..    - Sec
1f290 6f 6e 64 20 6c 65 76 65 6c 20 6f 66 20 73 75 62  ond level of sub
1f2a0 73 74 69 74 75 74 69 6f 6e 73 20 77 65 72 65 20  stitutions were 
1f2b0 6e 65 76 65 72 20 64 6f 6e 65 20 66 6f 72 20 65  never done for e
1f2c0 78 70 72 65 73 73 69 6f 6e 73 20 6e 6f 74 0a 20  xpressions not. 
1f2d0 20 20 20 20 20 69 6e 20 7b 7d 27 73 20 74 68 61       in {}'s tha
1f2e0 74 20 63 6f 6e 73 69 73 74 20 6f 66 20 61 20 73  t consist of a s
1f2f0 69 6e 67 6c 65 20 76 61 72 69 61 62 6c 65 20 72  ingle variable r
1f300 65 66 65 72 65 6e 63 65 3a 20 65 2e 67 2e 2c 0a  eference: e.g.,.
1f310 20 20 20 20 20 20 22 73 65 74 20 78 20 32 37 3b        "set x 27;
1f320 20 73 65 74 20 62 6f 6f 6c 20 7b 24 78 7d 3b 20   set bool {$x}; 
1f330 69 66 20 24 62 6f 6f 6c 20 7b 70 75 74 73 20 66  if $bool {puts f
1f340 6f 6f 7d 22 20 77 6f 75 6c 64 20 66 61 69 6c 20  oo}" would fail 
1f350 77 69 74 68 20 65 72 72 6f 72 2e 0a 20 20 20 20  with error..    
1f360 2d 20 42 61 64 20 63 6f 64 65 20 67 65 6e 65 72  - Bad code gener
1f370 61 74 65 64 20 77 68 65 6e 20 63 6f 64 65 20 73  ated when code s
1f380 74 6f 72 61 67 65 20 77 61 73 20 67 72 6f 77 6e  torage was grown
1f390 20 77 68 69 6c 65 20 63 6f 6d 70 69 6c 69 6e 67   while compiling
1f3a0 20 73 6f 6d 65 0a 20 20 20 20 20 20 65 78 70 72   some.      expr
1f3b0 65 73 73 69 6f 6e 73 3a 20 6f 6e 65 73 20 77 69  essions: ones wi
1f3c0 74 68 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 65  th compilation e
1f3d0 72 72 6f 72 73 20 6f 72 20 63 6f 6e 73 69 73 74  rrors or consist
1f3e0 69 6e 67 20 6f 66 20 6f 6e 6c 79 20 61 0a 20 20  ing of only a.  
1f3f0 20 20 20 20 76 61 72 69 61 62 6c 65 20 72 65 66      variable ref
1f400 65 72 65 6e 63 65 2e 0a 20 20 20 20 2d 20 42 75  erence..    - Bu
1f410 67 73 20 69 6e 76 6f 6c 76 69 6e 67 20 6d 75 6c  gs involving mul
1f420 74 69 70 6c 65 20 69 6e 74 65 72 70 72 65 74 65  tiple interprete
1f430 72 73 3a 20 77 61 73 6e 27 74 20 63 68 65 63 6b  rs: wasn't check
1f440 69 6e 67 20 74 68 61 74 20 61 0a 20 20 20 20 20  ing that a.     
1f450 20 70 72 6f 63 65 64 75 72 65 27 73 20 63 6f 64   procedure's cod
1f460 65 20 77 61 73 20 63 6f 6d 70 69 6c 65 64 20 66  e was compiled f
1f470 6f 72 20 74 68 65 20 73 61 6d 65 20 69 6e 74 65  or the same inte
1f480 72 70 72 65 74 65 72 20 61 73 20 74 68 65 20 6f  rpreter as the o
1f490 6e 65 0a 20 20 20 20 20 20 65 78 65 63 75 74 69  ne.      executi
1f4a0 6e 67 20 69 74 2c 20 61 6e 64 20 64 69 64 6e 27  ng it, and didn'
1f4b0 74 20 69 6e 76 61 6c 69 64 61 74 65 20 63 6f 64  t invalidate cod
1f4c0 65 20 6f 6e 20 68 69 64 64 65 6e 2d 65 78 70 6f  e on hidden-expo
1f4d0 73 65 64 20 63 6f 6d 6d 61 6e 64 0a 20 20 20 20  sed command.    
1f4e0 20 20 74 72 61 6e 73 69 74 69 6f 6e 73 2e 0a 20    transitions.. 
1f4f0 20 20 20 2d 20 22 42 61 64 20 73 74 61 63 6b 20     - "Bad stack 
1f500 74 6f 70 22 20 70 61 6e 69 63 20 77 68 65 6e 20  top" panic when 
1f510 65 78 65 63 75 74 69 6e 67 20 73 63 72 69 70 74  executing script
1f520 73 20 74 68 61 74 20 72 65 71 75 69 72 65 20 61  s that require a
1f530 20 68 75 67 65 0a 20 20 20 20 20 20 61 6d 6f 75   huge.      amou
1f540 6e 74 20 6f 66 20 73 74 61 63 6b 20 73 70 61 63  nt of stack spac
1f550 65 2e 0a 20 20 20 20 2d 20 49 6e 63 6f 72 72 65  e..    - Incorre
1f560 63 74 20 73 68 61 72 69 6e 67 20 6f 66 20 63 6f  ct sharing of co
1f570 64 65 20 66 6f 72 20 70 72 6f 63 65 64 75 72 65  de for procedure
1f580 20 62 6f 64 69 65 73 2c 20 61 6e 64 20 70 72 6f   bodies, and pro
1f590 63 65 64 75 72 65 20 63 6f 64 65 0a 20 20 20 20  cedure code.    
1f5a0 20 20 64 65 61 6c 6c 6f 63 61 74 65 64 20 62 65    deallocated be
1f5b0 66 6f 72 65 20 6c 61 73 74 20 65 78 65 63 75 74  fore last execut
1f5c0 69 6f 6e 20 6f 66 20 74 68 65 20 70 72 6f 63 65  ion of the proce
1f5d0 64 75 72 65 20 66 69 6e 69 73 68 65 64 2e 0a 20  dure finished.. 
1f5e0 20 20 20 2d 20 46 69 78 65 64 20 63 6f 6d 70 69     - Fixed compi
1f5f0 6c 61 74 69 6f 6e 20 6f 66 20 65 78 70 72 65 73  lation of expres
1f600 73 69 6f 6e 20 77 6f 72 64 73 20 69 6e 20 71 75  sion words in qu
1f610 6f 74 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c  otes. For exampl
1f620 65 2c 0a 20 20 20 20 20 20 69 66 20 22 30 20 3c  e,.      if "0 <
1f630 20 33 22 20 7b 70 75 74 73 20 66 6f 6f 7d 2e 0a   3" {puts foo}..
1f640 20 20 20 20 2d 20 46 69 78 65 64 20 70 65 72 66      - Fixed perf
1f650 6f 72 6d 61 6e 63 65 20 62 75 67 20 69 6e 20 61  ormance bug in a
1f660 72 72 61 79 20 73 65 74 20 63 6f 6d 6d 61 6e 64  rray set command
1f670 20 77 69 74 68 20 6c 61 72 67 65 20 61 73 73 69   with large assi
1f680 67 6e 6d 65 6e 74 73 2e 0a 20 20 20 20 2d 20 54  gnments..    - T
1f690 63 6c 5f 53 65 74 4f 62 6a 4c 65 6e 67 74 68 20  cl_SetObjLength 
1f6a0 73 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75  segmentation fau
1f6b0 6c 74 20 73 65 74 74 69 6e 67 20 6c 65 6e 67 74  lt setting lengt
1f6c0 68 20 6f 66 20 65 6d 70 74 79 20 6f 62 6a 65 63  h of empty objec
1f6d0 74 2e 0a 20 20 20 20 2d 20 49 66 20 54 63 6c 5f  t..    - If Tcl_
1f6e0 53 65 74 4f 62 6a 65 63 74 52 65 73 75 6c 74 20  SetObjectResult 
1f6f0 77 61 73 20 70 61 73 73 65 64 20 74 68 65 20 73  was passed the s
1f700 61 6d 65 20 6f 62 6a 65 63 74 20 61 73 20 74 68  ame object as th
1f710 65 20 69 6e 74 65 72 70 72 65 74 65 72 27 73 0a  e interpreter's.
1f720 20 20 20 20 20 20 72 65 73 75 6c 74 20 6f 62 6a        result obj
1f730 65 63 74 2c 20 69 74 20 66 72 65 65 64 20 74 68  ect, it freed th
1f740 65 20 6f 62 6a 65 63 74 20 69 6e 73 74 65 61 64  e object instead
1f750 20 6f 66 20 64 6f 69 6e 67 20 6e 6f 74 68 69 6e   of doing nothin
1f760 67 2e 20 42 75 67 20 66 69 78 0a 20 20 20 20 20  g. Bug fix.     
1f770 20 62 79 20 4d 69 63 68 61 65 6c 20 4a 2e 20 4d   by Michael J. M
1f780 63 4c 65 6e 6e 61 6e 2e 0a 20 20 20 20 2d 20 54  cLennan..    - T
1f790 63 6c 5f 4c 69 73 74 4f 62 6a 41 70 70 65 6e 64  cl_ListObjAppend
1f7a0 4c 69 73 74 20 69 6e 73 65 72 74 65 64 20 65 6c  List inserted el
1f7b0 65 6d 65 6e 74 73 20 66 72 6f 6d 20 74 68 65 20  ements from the 
1f7c0 77 72 6f 6e 67 20 6c 69 73 74 2e 20 42 75 67 20  wrong list. Bug 
1f7d0 66 69 78 0a 20 20 20 20 20 20 62 79 20 4d 69 63  fix.      by Mic
1f7e0 68 61 65 6c 20 4a 2e 20 4d 63 4c 65 6e 6e 61 6e  hael J. McLennan
1f7f0 2e 0a 20 20 20 20 2d 20 53 65 67 6d 65 6e 74 61  ..    - Segmenta
1f800 74 69 6f 6e 20 66 61 75 6c 74 20 69 66 20 65 6d  tion fault if em
1f810 70 74 79 20 76 61 72 69 61 62 6c 65 20 6c 69 73  pty variable lis
1f820 74 20 77 61 73 20 73 70 65 63 69 66 69 65 64 20  t was specified 
1f830 69 6e 20 61 20 66 6f 72 65 61 63 68 0a 20 20 20  in a foreach.   
1f840 20 20 20 63 6f 6d 6d 61 6e 64 2e 20 42 75 67 20     command. Bug 
1f850 66 69 78 20 62 79 20 4a 61 6e 20 4e 69 6a 74 6d  fix by Jan Nijtm
1f860 61 6e 73 2e 0a 20 20 20 20 2d 20 4e 55 4c 4c 20  ans..    - NULL 
1f870 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 77 61 73  command name was
1f880 20 61 6c 77 61 79 73 20 70 61 73 73 65 64 20 74   always passed t
1f890 6f 20 54 63 6c 5f 43 72 65 61 74 65 54 72 61 63  o Tcl_CreateTrac
1f8a0 65 20 63 61 6c 6c 62 61 63 6b 0a 20 20 20 20 20  e callback.     
1f8b0 20 70 72 6f 63 65 64 75 72 65 2e 0a 20 20 20 20   procedure..    
1f8c0 2d 20 57 72 6f 6e 67 20 73 74 72 69 6e 67 20 72  - Wrong string r
1f8d0 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 67 65  epresentation ge
1f8e0 6e 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20  nerated for the 
1f8f0 76 61 6c 75 65 20 4c 4f 4e 47 5f 4d 49 4e 2e 0a  value LONG_MIN..
1f900 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70 6c        For exampl
1f910 65 2c 20 65 78 70 72 20 31 3c 3c 33 31 20 70 72  e, expr 1<<31 pr
1f920 69 6e 74 65 64 20 69 6e 63 6f 72 72 65 63 74 6c  inted incorrectl
1f930 79 20 6f 6e 20 61 20 33 32 20 62 69 74 20 6d 61  y on a 32 bit ma
1f940 63 68 69 6e 65 2e 0a 20 20 20 20 2d 20 22 73 65  chine..    - "se
1f950 74 20 7b 61 28 24 78 29 7d 20 31 22 20 73 74 6f  t {a($x)} 1" sto
1f960 72 65 64 20 76 61 6c 75 65 20 69 6e 20 77 72 6f  red value in wro
1f970 6e 67 20 76 61 72 69 61 62 6c 65 2e 0a 20 20 20  ng variable..   
1f980 20 2d 20 54 63 6c 5f 47 65 74 42 6f 6f 6c 65 61   - Tcl_GetBoolea
1f990 6e 46 72 6f 6d 4f 62 6a 20 77 61 73 20 6e 6f 74  nFromObj was not
1f9a0 20 63 68 65 63 6b 69 6e 67 20 66 6f 72 20 67 61   checking for ga
1f9b0 72 62 61 67 65 20 61 66 74 65 72 20 61 20 6e 75  rbage after a nu
1f9c0 6d 65 72 69 63 0a 20 20 20 20 20 20 76 61 6c 75  meric.      valu
1f9d0 65 2e 0a 20 20 20 20 2d 20 47 61 72 62 6c 65 64  e..    - Garbled
1f9e0 20 22 62 61 64 20 6f 70 65 72 61 6e 64 20 74 79   "bad operand ty
1f9f0 70 65 22 20 65 72 72 6f 72 20 6d 65 73 73 61 67  pe" error messag
1fa00 65 20 77 68 65 6e 20 65 76 61 6c 75 61 74 69 6e  e when evaluatin
1fa10 67 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20 20  g expressions.  
1fa20 20 20 20 20 6e 6f 74 20 73 75 72 72 6f 75 6e 64      not surround
1fa30 65 64 20 62 79 20 7b 7d 27 73 2e 20 28 42 4c 29  ed by {}'s. (BL)
1fa40 0a 0a 34 2f 31 36 2f 39 37 20 28 6e 65 77 20 66  ..4/16/97 (new f
1fa50 65 61 74 75 72 65 29 20 54 68 65 20 65 78 70 72  eature) The expr
1fa60 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 68 61 73   command now has
1fa70 20 74 68 65 20 22 72 61 6e 64 28 29 22 20 61 6e   the "rand()" an
1fa80 64 0a 22 73 72 61 6e 64 28 29 22 20 66 75 6e 63  d."srand()" func
1fa90 74 69 6f 6e 73 20 66 6f 72 20 67 65 74 74 69 6e  tions for gettin
1faa0 67 20 72 61 6e 64 6f 6d 20 6e 75 6d 62 65 72 73  g random numbers
1fab0 20 69 6e 20 65 78 70 72 2e 20 28 52 4a 29 0a 0a   in expr. (RJ)..
1fac0 34 2f 32 33 2f 39 37 20 28 62 75 67 20 66 69 78  4/23/97 (bug fix
1fad0 29 20 46 69 78 65 64 20 63 6f 72 65 20 64 75 6d  ) Fixed core dum
1fae0 70 20 69 6e 20 62 67 65 72 72 6f 72 20 77 68 65  p in bgerror whe
1faf0 6e 20 74 68 65 20 65 72 72 6f 72 20 68 61 6e 64  n the error hand
1fb00 6c 65 72 20 63 6f 6d 6d 61 6e 64 0a 64 65 6c 65  ler command.dele
1fb10 74 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20  tes the current 
1fb20 69 6e 74 65 72 70 72 65 74 65 72 2e 20 46 6f 75  interpreter. Fou
1fb30 6e 64 20 62 79 20 4a 75 65 72 67 65 6e 20 53 63  nd by Juergen Sc
1fb40 68 6f 65 6e 77 61 6c 64 2e 20 28 4a 4c 29 0a 0a  hoenwald. (JL)..
1fb50 34 2f 32 33 2f 39 37 20 28 66 65 61 74 75 72 65  4/23/97 (feature
1fb60 20 63 68 61 6e 67 65 29 20 54 68 65 20 6e 6f 74   change) The not
1fb70 69 66 69 65 72 20 69 6e 74 65 72 66 61 63 65 73  ifier interfaces
1fb80 20 68 61 76 65 20 62 65 65 6e 20 72 65 64 65 73   have been redes
1fb90 69 67 6e 65 64 0a 74 6f 20 6d 61 6b 65 20 65 6d  igned.to make em
1fba0 62 65 64 64 69 6e 67 20 69 6e 20 61 70 70 6c 69  bedding in appli
1fbb0 63 61 74 69 6f 6e 73 20 77 69 74 68 20 65 78 74  cations with ext
1fbc0 65 72 6e 61 6c 20 65 76 65 6e 74 20 6c 6f 6f 70  ernal event loop
1fbd0 73 20 70 6f 73 73 69 62 6c 65 2e 0a 41 20 6e 75  s possible..A nu
1fbe0 6d 62 65 72 20 6f 66 20 69 6e 74 65 72 66 61 63  mber of interfac
1fbf0 65 73 20 69 6e 20 74 68 65 20 6e 6f 74 69 66 69  es in the notifi
1fc00 65 72 20 61 6e 64 20 74 68 65 20 63 68 61 6e 6e  er and the chann
1fc10 65 6c 20 64 72 69 76 65 72 73 20 68 61 76 65 0a  el drivers have.
1fc20 63 68 61 6e 67 65 64 2e 20 20 52 65 66 65 72 20  changed.  Refer 
1fc30 74 6f 20 74 68 65 20 4e 6f 74 69 66 69 65 72 2e  to the Notifier.
1fc40 33 20 61 6e 64 20 43 72 74 43 68 61 6e 6e 65 6c  3 and CrtChannel
1fc50 2e 33 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65  .3 manual entrie
1fc60 73 20 66 6f 72 0a 6d 6f 72 65 20 64 65 74 61 69  s for.more detai
1fc70 6c 73 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54  ls. (SS).*** POT
1fc80 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
1fc90 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33  BILITY ***..4/23
1fca0 2f 39 37 20 28 72 65 6d 6f 76 65 64 20 66 65 61  /97 (removed fea
1fcb0 74 75 72 65 29 20 54 68 65 20 54 63 6c 5f 46 69  ture) The Tcl_Fi
1fcc0 6c 65 20 69 6e 74 65 72 66 61 63 65 73 20 68 61  le interfaces ha
1fcd0 76 65 20 62 65 65 6e 20 72 65 6d 6f 76 65 64 2e  ve been removed.
1fce0 0a 54 68 65 20 54 63 6c 5f 43 72 65 61 74 65 46  .The Tcl_CreateF
1fcf0 69 6c 65 48 61 6e 64 6c 65 72 2f 54 63 6c 5f 44  ileHandler/Tcl_D
1fd00 65 6c 65 74 65 46 69 6c 65 48 61 6e 64 6c 65 72  eleteFileHandler
1fd10 20 69 6e 74 65 72 66 61 63 65 73 20 6e 6f 77 20   interfaces now 
1fd20 74 61 6b 65 0a 55 6e 69 78 20 66 64 27 73 20 61  take.Unix fd's a
1fd30 6e 64 20 61 72 65 20 6f 6e 6c 79 20 73 75 70 70  nd are only supp
1fd40 6f 72 74 65 64 20 6f 6e 20 74 68 65 20 55 6e 69  orted on the Uni
1fd50 78 20 70 6c 61 74 66 6f 72 6d 2e 0a 54 63 6c 5f  x platform..Tcl_
1fd60 47 65 74 43 68 61 6e 6e 65 6c 46 69 6c 65 20 68  GetChannelFile h
1fd70 61 73 20 62 65 65 6e 20 72 65 70 6c 61 63 65 64  as been replaced
1fd80 20 77 69 74 68 20 54 63 6c 5f 47 65 74 43 68 61   with Tcl_GetCha
1fd90 6e 6e 65 6c 48 61 6e 64 6c 65 2e 0a 54 63 6c 5f  nnelHandle..Tcl_
1fda0 4d 61 6b 65 46 69 6c 65 43 68 61 6e 6e 65 6c 20  MakeFileChannel 
1fdb0 6e 6f 77 20 74 61 6b 65 73 20 61 20 70 6c 61 74  now takes a plat
1fdc0 66 6f 72 6d 20 73 70 65 63 69 66 69 63 20 66 69  form specific fi
1fdd0 6c 65 20 68 61 6e 64 6c 65 2e 20 28 53 53 29 0a  le handle. (SS).
1fde0 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
1fdf0 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
1fe00 2a 0a 0a 34 2f 32 33 2f 39 37 20 28 72 65 6d 6f  *..4/23/97 (remo
1fe10 76 65 64 20 66 65 61 74 75 72 65 29 20 54 68 65  ved feature) The
1fe20 20 6d 6f 64 61 6c 20 74 69 6d 65 6f 75 74 20 69   modal timeout i
1fe30 6e 74 65 72 66 61 63 65 20 68 61 73 20 62 65 65  nterface has bee
1fe40 6e 0a 72 65 6d 6f 76 65 64 20 28 54 63 6c 5f 43  n.removed (Tcl_C
1fe50 72 65 61 74 65 4d 6f 64 61 6c 54 69 6d 65 6f 75  reateModalTimeou
1fe60 74 2f 54 63 6c 5f 44 65 6c 65 74 65 4d 6f 64 61  t/Tcl_DeleteModa
1fe70 6c 54 69 6d 65 6f 75 74 29 20 28 53 53 29 0a 2a  lTimeout) (SS).*
1fe80 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
1fe90 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
1fea0 0a 0a 34 2f 32 33 2f 39 37 20 28 66 65 61 74 75  ..4/23/97 (featu
1feb0 72 65 20 63 68 61 6e 67 65 29 20 43 68 61 6e 6e  re change) Chann
1fec0 65 6c 20 64 72 69 76 65 72 73 20 61 72 65 20 6e  el drivers are n
1fed0 6f 77 20 72 65 71 75 69 72 65 64 20 74 6f 20 63  ow required to c
1fee0 6f 72 72 65 63 74 6c 79 0a 69 6d 70 6c 65 6d 65  orrectly.impleme
1fef0 6e 74 20 62 6c 6f 63 6b 69 6e 67 20 62 65 68 61  nt blocking beha
1ff00 76 69 6f 72 20 77 68 65 6e 20 74 68 65 79 20 61  vior when they a
1ff10 72 65 20 69 6e 20 62 6c 6f 63 6b 69 6e 67 20 6d  re in blocking m
1ff20 6f 64 65 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f  ode. (SS).*** PO
1ff30 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
1ff40 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32  IBILITY ***..4/2
1ff50 33 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72  3/97 (new featur
1ff60 65 29 20 41 64 64 65 64 20 74 68 65 20 22 62 69  e) Added the "bi
1ff70 6e 61 72 79 22 20 63 6f 6d 6d 61 6e 64 20 66 6f  nary" command fo
1ff80 72 20 6d 61 6e 69 70 75 6c 61 74 69 6e 67 0a 62  r manipulating.b
1ff90 69 6e 61 72 79 20 73 74 72 69 6e 67 73 2e 20 41  inary strings. A
1ffa0 6c 73 6f 2c 20 63 68 61 6e 67 65 64 20 74 68 65  lso, changed the
1ffb0 20 22 70 75 74 73 22 2c 20 22 67 65 74 73 22 2c   "puts", "gets",
1ffc0 20 61 6e 64 20 22 72 65 61 64 22 20 63 6f 6d 6d   and "read" comm
1ffd0 61 6e 64 73 0a 74 6f 20 70 72 65 73 65 72 76 65  ands.to preserve
1ffe0 20 65 6d 62 65 64 64 65 64 20 6e 75 6c 6c 73 2e   embedded nulls.
1fff0 20 20 28 53 53 29 0a 0a 34 2f 32 33 2f 39 37 20    (SS)..4/23/97 
20000 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
20010 64 65 64 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d  ded tcl_platform
20020 28 62 79 74 65 4f 72 64 65 72 29 20 65 6c 65 6d  (byteOrder) elem
20030 65 6e 74 20 74 6f 20 74 68 65 0a 74 63 6c 5f 70  ent to the.tcl_p
20040 6c 61 74 66 6f 72 6d 20 61 72 72 61 79 20 74 6f  latform array to
20050 20 69 64 65 6e 74 69 66 79 20 74 68 65 20 6e 61   identify the na
20060 74 69 76 65 20 62 79 74 65 20 6f 72 64 65 72 20  tive byte order 
20070 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 0a  for the current.
20080 68 6f 73 74 2e 20 28 53 53 29 0a 0a 34 2f 32 33  host. (SS)..4/23
20090 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
200a0 78 65 64 20 62 75 67 20 69 6e 20 64 61 74 65 20  xed bug in date 
200b0 70 61 72 73 69 6e 67 20 61 72 6f 75 6e 64 20 79  parsing around y
200c0 65 61 72 20 62 6f 75 6e 64 61 72 69 65 73 2e 20  ear boundaries. 
200d0 28 53 53 29 0a 0a 34 2f 32 34 2f 39 37 20 28 62  (SS)..4/24/97 (b
200e0 75 67 20 66 69 78 29 20 49 6e 20 74 68 65 20 70  ug fix) In the p
200f0 72 6f 63 65 73 73 20 6f 66 20 63 6f 70 79 69 6e  rocess of copyin
20100 67 20 61 20 66 69 6c 65 20 6f 77 6e 65 64 20 62  g a file owned b
20110 79 20 61 6e 6f 74 68 65 72 20 75 73 65 72 2c 0a  y another user,.
20120 54 63 6c 20 77 61 73 20 63 68 61 6e 67 69 6e 67  Tcl was changing
20130 20 74 68 65 20 6f 77 6e 65 72 20 6f 66 20 74 68   the owner of th
20140 65 20 63 6f 70 79 20 62 61 63 6b 20 74 6f 20 74  e copy back to t
20150 68 65 20 6f 77 6e 65 72 20 6f 66 20 74 68 65 20  he owner of the 
20160 6f 72 69 67 69 6e 61 6c 0a 66 69 6c 65 2c 20 74  original.file, t
20170 68 65 72 65 66 6f 72 65 20 63 61 75 73 69 6e 67  herefore causing
20180 20 66 75 72 74 68 65 72 20 66 69 6c 65 20 6f 70   further file op
20190 65 72 61 74 69 6f 6e 73 20 74 6f 20 66 61 69 6c  erations to fail
201a0 20 62 65 63 61 75 73 65 20 74 68 65 20 63 75 72   because the cur
201b0 72 65 6e 74 0a 75 73 65 72 20 64 69 64 6e 27 74  rent.user didn't
201c0 20 6f 77 6e 20 74 68 65 20 63 6f 70 79 20 61 6e   own the copy an
201d0 79 6d 6f 72 65 2e 20 20 54 68 65 20 6f 77 6e 65  ymore.  The owne
201e0 72 20 6f 66 20 74 68 65 20 63 6f 70 79 20 69 73  r of the copy is
201f0 20 6e 6f 77 20 6c 65 66 74 20 61 73 20 74 68 65   now left as the
20200 0a 63 75 72 72 65 6e 74 20 75 73 65 72 2e 20 28  .current user. (
20210 43 43 53 29 0a 0a 34 2f 32 34 2f 39 37 20 28 66  CCS)..4/24/97 (f
20220 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 55  eature change) U
20230 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 64 6f  nder Windows, do
20240 6e 27 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c  n't automaticall
20250 79 20 75 70 70 65 72 63 61 73 65 20 74 68 65 0a  y uppercase the.
20260 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69  environment vari
20270 61 62 6c 65 20 22 77 69 6e 64 69 72 22 20 2d 2d  able "windir" --
20280 20 69 74 27 73 20 73 75 70 70 6f 73 65 64 20 74   it's supposed t
20290 6f 20 62 65 20 6c 6f 77 65 72 20 63 61 73 65 2e  o be lower case.
202a0 20 20 28 43 43 53 29 0a 0a 34 2f 32 39 2f 39 37    (CCS)..4/29/97
202b0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
202c0 64 64 65 64 20 6e 61 6d 65 73 70 61 63 65 20 73  dded namespace s
202d0 75 70 70 6f 72 74 20 62 61 73 65 64 20 6f 6e 20  upport based on 
202e0 61 20 6e 61 6d 65 73 70 61 63 65 0a 69 6d 70 6c  a namespace.impl
202f0 65 6d 65 6e 74 61 74 69 6f 6e 20 62 79 20 4d 69  ementation by Mi
20300 63 68 61 65 6c 20 4a 2e 20 4d 63 4c 65 6e 6e 61  chael J. McLenna
20310 6e 20 6f 66 20 4c 75 63 65 6e 74 20 54 65 63 68  n of Lucent Tech
20320 6e 6f 6c 6f 67 69 65 73 2e 20 41 20 6e 61 6d 65  nologies. A name
20330 73 70 61 63 65 0a 65 6e 63 61 70 73 75 6c 61 74  space.encapsulat
20340 65 73 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20  es a collection 
20350 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20  of commands and 
20360 76 61 72 69 61 62 6c 65 73 20 74 6f 20 65 6e 73  variables to ens
20370 75 72 65 20 74 68 61 74 20 74 68 65 79 0a 77 6f  ure that they.wo
20380 6e 27 74 20 69 6e 74 65 72 66 65 72 65 20 74 68  n't interfere th
20390 65 20 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 76  e commands and v
203a0 61 72 69 61 62 6c 65 73 20 6f 66 20 6f 74 68 65  ariables of othe
203b0 72 20 6e 61 6d 65 73 70 61 63 65 73 2e 20 54 68  r namespaces. Th
203c0 65 20 67 6c 6f 62 61 6c 0a 6e 61 6d 65 73 70 61  e global.namespa
203d0 63 65 20 68 6f 6c 64 73 20 61 6c 6c 20 67 6c 6f  ce holds all glo
203e0 62 61 6c 20 76 61 72 69 61 62 6c 65 73 20 61 6e  bal variables an
203f0 64 20 63 6f 6d 6d 61 6e 64 73 2e 20 41 64 64 69  d commands. Addi
20400 74 69 6f 6e 61 6c 20 6e 61 6d 65 73 70 61 63 65  tional namespace
20410 73 20 61 72 65 0a 63 72 65 61 74 65 64 20 77 69  s are.created wi
20420 74 68 20 74 68 65 20 6e 65 77 20 6e 61 6d 65 73  th the new names
20430 70 61 63 65 20 63 6f 6d 6d 61 6e 64 2e 20 54 68  pace command. Th
20440 65 20 6e 65 77 20 76 61 72 69 61 62 6c 65 20 63  e new variable c
20450 6f 6d 6d 61 6e 64 20 6c 65 74 73 20 79 6f 75 0a  ommand lets you.
20460 63 72 65 61 74 65 20 54 63 6c 20 76 61 72 69 61  create Tcl varia
20470 62 6c 65 73 20 69 6e 73 69 64 65 20 61 20 6e 61  bles inside a na
20480 6d 65 73 70 61 63 65 2e 20 54 68 65 20 6e 61 6d  mespace. The nam
20490 65 73 20 6f 66 20 54 63 6c 20 76 61 72 69 61 62  es of Tcl variab
204a0 6c 65 73 20 61 6e 64 0a 63 6f 6d 6d 61 6e 64 73  les and.commands
204b0 20 6d 61 79 20 6e 6f 77 20 62 65 20 71 75 61 6c   may now be qual
204c0 69 66 69 65 64 20 62 79 20 74 68 65 20 6e 61 6d  ified by the nam
204d0 65 20 6f 66 20 74 68 65 20 6e 61 6d 65 73 70 61  e of the namespa
204e0 63 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68  ce containing th
204f0 65 6d 2e 0a 54 68 65 20 6b 65 79 20 6e 61 6d 65  em..The key name
20500 73 70 61 63 65 2d 72 65 6c 61 74 65 64 20 63 6f  space-related co
20510 6d 6d 61 6e 64 73 20 61 72 65 20 73 75 6d 6d 61  mmands are summa
20520 72 69 7a 65 64 20 62 65 6c 6f 77 3a 0a 20 20 20  rized below:.   
20530 20 2d 20 6e 61 6d 65 73 70 61 63 65 20 3f 65 76   - namespace ?ev
20540 61 6c 3f 20 6e 61 6d 65 20 61 72 67 20 3f 61 72  al? name arg ?ar
20550 67 2e 2e 2e 3f 0a 20 20 20 20 20 20 20 20 20 55  g...?.         U
20560 73 65 64 20 74 6f 20 64 65 66 69 6e 65 20 74 68  sed to define th
20570 65 20 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 76  e commands and v
20580 61 72 69 61 62 6c 65 73 20 69 6e 20 61 20 6e 61  ariables in a na
20590 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 20 20 20  mespace..       
205a0 20 20 4f 70 74 69 6f 6e 61 6c 6c 79 20 63 72 65    Optionally cre
205b0 61 74 65 73 20 74 68 65 20 6e 61 6d 65 73 70 61  ates the namespa
205c0 63 65 2e 0a 20 20 20 20 2d 20 6e 61 6d 65 73 70  ce..    - namesp
205d0 61 63 65 20 65 78 70 6f 72 74 20 3f 2d 63 6c 65  ace export ?-cle
205e0 61 72 3f 20 3f 70 61 74 74 65 72 6e 20 70 61 74  ar? ?pattern pat
205f0 74 65 72 6e 2e 2e 2e 3f 0a 20 20 20 20 20 20 20  tern...?.       
20600 20 20 53 70 65 63 69 66 69 65 73 20 77 68 69 63    Specifies whic
20610 68 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20 65  h commands are e
20620 78 70 6f 72 74 65 64 20 66 72 6f 6d 20 61 20 6e  xported from a n
20630 61 6d 65 73 70 61 63 65 2e 20 54 68 65 73 65 0a  amespace. These.
20640 20 20 20 20 20 20 20 20 20 61 72 65 20 74 68 65           are the
20650 20 6f 6e 65 73 20 74 68 61 74 20 63 61 6e 20 62   ones that can b
20660 65 20 69 6d 70 6f 72 74 65 64 20 69 6e 74 6f 20  e imported into 
20670 61 6e 6f 74 68 65 72 20 6e 61 6d 65 73 70 61 63  another namespac
20680 65 2e 0a 20 20 20 20 2d 20 6e 61 6d 65 73 70 61  e..    - namespa
20690 63 65 20 69 6d 70 6f 72 74 20 3f 2d 66 6f 72 63  ce import ?-forc
206a0 65 3f 20 3f 70 61 74 74 65 72 6e 20 70 61 74 74  e? ?pattern patt
206b0 65 72 6e 2e 2e 2e 3f 0a 20 20 20 20 20 20 20 20  ern...?.        
206c0 20 4d 61 6b 65 73 20 74 68 65 20 73 70 65 63 69   Makes the speci
206d0 66 69 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61 63  fied commands ac
206e0 63 65 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20  cessible in the 
206f0 63 75 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63  current namespac
20700 65 2e 0a 20 20 20 20 2d 20 6e 61 6d 65 73 70 61  e..    - namespa
20710 63 65 20 63 75 72 72 65 6e 74 0a 20 20 20 20 20  ce current.     
20720 20 20 20 20 52 65 74 75 72 6e 73 20 74 68 65 20      Returns the 
20730 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 75 72 72  name of the curr
20740 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20  ent namespace.. 
20750 20 20 20 2d 20 76 61 72 69 61 62 6c 65 20 6e 61     - variable na
20760 6d 65 20 3f 76 61 6c 75 65 3f 20 3f 6e 61 6d 65  me ?value? ?name
20770 20 3f 76 61 6c 75 65 3f 2e 2e 2e 3f 0a 20 20 20   ?value?...?.   
20780 20 20 20 20 20 20 43 72 65 61 74 65 73 20 6f 6e        Creates on
20790 65 20 6f 72 20 6d 6f 72 65 20 6e 61 6d 65 73 70  e or more namesp
207a0 61 63 65 20 76 61 72 69 61 62 6c 65 73 2e 20 28  ace variables. (
207b0 42 54 4c 29 0a 0a 35 2f 31 2f 39 37 20 28 62 75  BTL)..5/1/97 (bu
207c0 67 20 66 69 78 29 20 55 6e 64 65 72 20 57 69 6e  g fix) Under Win
207d0 64 6f 77 73 2c 20 66 69 6c 65 20 74 69 6d 65 73  dows, file times
207e0 20 77 65 72 65 20 72 65 70 6f 72 74 65 64 20 69   were reported i
207f0 6e 20 47 4d 54 2e 20 20 53 68 6f 75 6c 64 20 62  n GMT.  Should b
20800 65 0a 72 65 70 6f 72 74 65 64 20 69 6e 20 6c 6f  e.reported in lo
20810 63 61 6c 20 74 69 6d 65 2e 20 28 43 43 53 29 0a  cal time. (CCS).
20820 0a 35 2f 32 2f 39 37 20 28 66 65 61 74 75 72 65  .5/2/97 (feature
20830 20 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64   change) Changed
20840 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65   the name of the
20850 20 74 77 6f 20 54 63 6c 20 76 61 72 69 61 62 6c   two Tcl variabl
20860 65 73 20 75 73 65 64 20 66 6f 72 0a 74 72 61 63  es used for.trac
20870 69 6e 67 20 62 79 74 65 63 6f 64 65 20 63 6f 6d  ing bytecode com
20880 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 65 78 65  pilation and exe
20890 63 75 74 69 6f 6e 20 74 6f 20 74 63 6c 5f 74 72  cution to tcl_tr
208a0 61 63 65 43 6f 6d 70 69 6c 65 20 61 6e 64 0a 74  aceCompile and.t
208b0 63 6c 5f 74 72 61 63 65 45 78 65 63 20 72 65 73  cl_traceExec res
208c0 70 65 63 74 69 76 65 6c 79 2e 20 54 68 65 73 65  pectively. These
208d0 20 76 61 72 69 61 62 6c 65 73 20 61 72 65 20 6e   variables are n
208e0 6f 77 20 64 6f 63 75 6d 65 6e 74 65 64 20 69 6e  ow documented in
208f0 20 74 68 65 0a 74 63 6c 76 61 72 73 20 6d 61 6e   the.tclvars man
20900 20 70 61 67 65 2e 20 28 42 4c 29 0a 0a 35 2f 35   page. (BL)..5/5
20910 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65  /97 (new feature
20920 29 20 53 75 70 70 6f 72 74 20 22 65 6e 64 22 20  ) Support "end" 
20930 61 73 20 74 68 65 20 69 6e 64 65 78 20 66 6f 72  as the index for
20940 20 22 6c 73 6f 72 74 20 2d 69 6e 64 65 78 22 2e   "lsort -index".
20950 20 28 42 57 29 0a 0a 35 2f 35 2f 39 37 20 28 62   (BW)..5/5/97 (b
20960 75 67 20 66 69 78 65 73 29 20 43 6c 65 61 6e 65  ug fixes) Cleane
20970 64 20 75 70 20 74 68 65 20 77 61 79 20 74 68 65  d up the way the
20980 20 68 74 74 70 20 70 61 63 6b 61 67 65 20 72 65   http package re
20990 73 65 74 73 20 63 6f 6e 6e 65 63 74 69 6f 6e 73  sets connections
209a0 20 28 42 57 29 0a 0a 35 2f 38 2f 39 37 20 28 66   (BW)..5/8/97 (f
209b0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 4e  eature change) N
209c0 65 77 6c 79 20 63 72 65 61 74 65 64 20 54 63 6c  ewly created Tcl
209d0 20 6f 62 6a 65 63 74 73 20 6e 6f 77 20 68 61 76   objects now hav
209e0 65 20 61 20 72 65 66 65 72 65 6e 63 65 20 63 6f  e a reference co
209f0 75 6e 74 0a 6f 66 20 7a 65 72 6f 20 69 6e 73 74  unt.of zero inst
20a00 65 61 64 20 6f 66 20 6f 6e 65 2e 20 54 68 69 73  ead of one. This
20a10 20 73 69 6d 70 6c 69 66 69 65 73 20 43 20 63 6f   simplifies C co
20a20 64 65 20 74 68 61 74 20 73 74 6f 72 65 73 20 6e  de that stores n
20a30 65 77 6c 79 20 63 72 65 61 74 65 64 0a 6f 62 6a  ewly created.obj
20a40 65 63 74 73 20 69 6e 20 54 63 6c 20 76 61 72 69  ects in Tcl vari
20a50 61 62 6c 65 73 20 6f 72 20 69 6e 20 64 61 74 61  ables or in data
20a60 20 73 74 72 75 63 74 75 72 65 73 20 73 75 63 68   structures such
20a70 20 61 73 20 6c 69 73 74 20 6f 62 6a 65 63 74 73   as list objects
20a80 2e 20 54 68 61 74 20 43 0a 63 6f 64 65 20 6d 75  . That C.code mu
20a90 73 74 20 69 6e 63 72 65 6d 65 6e 74 20 74 68 65  st increment the
20aa0 20 6e 65 77 20 6f 62 6a 65 63 74 27 73 20 72 65   new object's re
20ab0 66 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 73 69  ference count si
20ac0 6e 63 65 20 74 68 65 20 76 61 72 69 61 62 6c 65  nce the variable
20ad0 20 6f 72 0a 64 61 74 61 20 73 74 72 75 63 74 75   or.data structu
20ae0 72 65 20 77 69 6c 6c 20 63 6f 6e 74 61 69 6e 20  re will contain 
20af0 61 20 6c 6f 6e 67 2d 74 65 72 6d 20 72 65 66 65  a long-term refe
20b00 72 65 6e 63 65 20 74 6f 20 74 68 65 20 6f 62 6a  rence to the obj
20b10 65 63 74 2e 20 46 6f 72 6d 65 72 6c 79 2c 0a 77  ect. Formerly,.w
20b20 68 65 6e 20 6e 65 77 20 6f 62 6a 65 63 74 73 20  hen new objects 
20b30 73 74 61 72 74 65 64 20 6f 75 74 20 77 69 74 68  started out with
20b40 20 72 65 66 65 72 65 6e 63 65 20 63 6f 75 6e 74   reference count
20b50 20 6f 6e 65 2c 20 69 74 20 77 61 73 20 6e 65 63   one, it was nec
20b60 65 73 73 61 72 79 20 74 6f 0a 64 65 63 72 65 6d  essary to.decrem
20b70 65 6e 74 20 74 68 65 20 6e 65 77 20 6f 62 6a 65  ent the new obje
20b80 63 74 27 73 20 72 65 66 65 72 65 6e 63 65 20 63  ct's reference c
20b90 6f 75 6e 74 20 61 66 74 65 72 20 74 68 65 20 73  ount after the s
20ba0 74 6f 72 65 20 74 6f 20 6d 61 6b 65 20 73 75 72  tore to make sur
20bb0 65 20 69 74 0a 77 61 73 20 6c 65 66 74 20 77 69  e it.was left wi
20bc0 74 68 20 74 68 65 20 63 6f 72 72 65 63 74 20 76  th the correct v
20bd0 61 6c 75 65 3b 20 74 68 69 73 20 69 73 20 6e 6f  alue; this is no
20be0 20 6c 6f 6e 67 65 72 20 6e 65 63 65 73 73 61 72   longer necessar
20bf0 79 2e 20 28 42 4c 29 0a 0a 35 2f 39 2f 39 37 20  y. (BL)..5/9/97 
20c00 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
20c10 64 65 64 20 74 68 65 20 54 63 6c 5f 47 65 74 73  ded the Tcl_Gets
20c20 4f 62 6a 20 69 6e 74 65 72 66 61 63 65 20 74 68  Obj interface th
20c30 61 74 20 74 61 6b 65 73 20 61 6e 0a 6f 62 6a 65  at takes an.obje
20c40 63 74 20 72 65 66 65 72 65 6e 63 65 20 69 6e 73  ct reference ins
20c50 74 65 61 64 20 6f 66 20 61 20 64 79 6e 61 6d 69  tead of a dynami
20c60 63 20 73 74 72 69 6e 67 20 28 61 73 20 69 6e 20  c string (as in 
20c70 54 63 6c 5f 47 65 74 73 29 2e 20 28 53 53 29 0a  Tcl_Gets). (SS).
20c80 0a 35 2f 31 32 2f 39 37 20 28 6e 65 77 20 66 65  .5/12/97 (new fe
20c90 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c  ature) Added Tcl
20ca0 5f 43 72 65 61 74 65 41 6c 69 61 73 4f 62 6a 20  _CreateAliasObj 
20cb0 61 6e 64 20 54 63 6c 5f 47 65 74 41 6c 69 61 73  and Tcl_GetAlias
20cc0 4f 62 6a 20 43 20 41 50 49 73 0a 74 6f 20 61 6c  Obj C APIs.to al
20cd0 6c 6f 77 20 61 6e 20 61 6c 69 61 73 20 63 6f 6d  low an alias com
20ce0 6d 61 6e 64 20 74 6f 20 62 65 20 63 72 65 61 74  mand to be creat
20cf0 65 64 20 77 69 74 68 20 61 20 76 65 63 74 6f 72  ed with a vector
20d00 20 6f 66 20 54 63 6c 5f 4f 62 6a 20 73 74 72 75   of Tcl_Obj stru
20d10 63 74 75 72 65 73 0a 61 6e 64 20 74 6f 20 67 65  ctures.and to ge
20d20 74 20 74 68 65 20 76 65 63 74 6f 72 20 62 61 63  t the vector bac
20d30 6b 20 6c 61 74 65 72 2e 20 28 4a 4c 29 0a 0a 35  k later. (JL)..5
20d40 2f 31 32 2f 39 37 20 28 66 65 61 74 75 72 65 20  /12/97 (feature 
20d50 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20  change) Changed 
20d60 54 63 6c 5f 45 78 70 6f 73 65 43 6f 6d 6d 61 6e  Tcl_ExposeComman
20d70 64 20 61 6e 64 20 54 63 6c 5f 48 69 64 65 43 6f  d and Tcl_HideCo
20d80 6d 6d 61 6e 64 20 74 6f 0a 6c 65 61 76 65 20 61  mmand to.leave a
20d90 6e 20 6f 62 6a 65 63 74 20 72 65 73 75 6c 74 20  n object result 
20da0 69 6e 73 74 65 61 64 20 6f 66 20 61 20 73 74 72  instead of a str
20db0 69 6e 67 20 72 65 73 75 6c 74 2e 20 28 4a 4c 29  ing result. (JL)
20dc0 0a 0a 35 2f 31 34 2f 39 37 20 28 66 65 61 74 75  ..5/14/97 (featu
20dd0 72 65 20 63 68 61 6e 67 65 29 20 49 6d 70 72 6f  re change) Impro
20de0 76 65 64 20 74 68 65 20 68 61 6e 64 6c 69 6e 67  ved the handling
20df0 20 6f 66 20 74 68 65 20 69 6e 74 65 72 70 72 65   of the interpre
20e00 74 65 72 20 72 65 73 75 6c 74 2e 0a 54 68 69 73  ter result..This
20e10 20 69 73 20 73 74 69 6c 6c 20 65 69 74 68 65 72   is still either
20e20 20 61 6e 20 6f 62 6a 65 63 74 20 6f 72 20 61 20   an object or a 
20e30 73 74 72 69 6e 67 2c 20 62 75 74 20 74 68 65 20  string, but the 
20e40 74 77 6f 20 76 61 6c 75 65 73 20 61 72 65 20 6e  two values are n
20e50 6f 77 20 6b 65 70 74 0a 63 6f 6e 73 69 73 74 65  ow kept.consiste
20e60 6e 74 20 75 6e 6c 65 73 73 20 73 6f 6d 65 20 43  nt unless some C
20e70 20 63 6f 64 65 20 72 65 61 64 73 20 6f 72 20 77   code reads or w
20e80 72 69 74 65 73 20 69 6e 74 65 72 70 2d 3e 72 65  rites interp->re
20e90 73 75 6c 74 20 64 69 72 65 63 74 6c 79 2e 20 53  sult directly. S
20ea0 65 65 0a 74 68 65 20 53 65 74 52 65 73 75 6c 74  ee.the SetResult
20eb0 20 6d 61 6e 20 70 61 67 65 20 66 6f 72 20 64 65   man page for de
20ec0 74 61 69 6c 73 2e 20 52 65 6d 6f 76 65 64 20 74  tails. Removed t
20ed0 68 65 20 54 63 6c 5f 52 65 73 65 74 4f 62 6a 52  he Tcl_ResetObjR
20ee0 65 73 75 6c 74 0a 70 72 6f 63 65 64 75 72 65 2e  esult.procedure.
20ef0 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BL).*** POTENT
20f00 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
20f10 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e 30  ITY with Tcl 8.0
20f20 61 32 20 2a 2a 2a 0a 0a 35 2f 31 36 2f 39 37 20  a2 ***..5/16/97 
20f30 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
20f40 64 65 64 20 22 66 63 6f 70 79 22 20 63 6f 6d 6d  ded "fcopy" comm
20f50 61 6e 64 20 74 6f 20 6d 6f 76 65 20 64 61 74 61  and to move data
20f60 20 62 65 74 77 65 65 6e 0a 63 68 61 6e 6e 65 6c   between.channel
20f70 73 2e 20 20 52 65 66 65 72 20 74 6f 20 74 68 65  s.  Refer to the
20f80 20 6d 61 6e 75 61 6c 20 70 61 67 65 20 66 6f 72   manual page for
20f90 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f   more informatio
20fa0 6e 2e 20 20 52 65 6d 6f 76 65 64 20 74 68 65 0a  n.  Removed the.
20fb0 22 75 6e 73 75 70 70 6f 72 74 65 64 30 22 20 63  "unsupported0" c
20fc0 6f 6d 6d 61 6e 64 20 73 69 6e 63 65 20 69 74 20  ommand since it 
20fd0 69 73 20 6f 62 73 6f 6c 65 74 65 20 6e 6f 77 2e  is obsolete now.
20fe0 20 20 28 53 53 29 0a 0a 35 2f 31 36 2f 39 37 20    (SS)..5/16/97 
20ff0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
21000 64 65 64 20 54 63 6c 5f 47 65 74 53 74 72 69 6e  ded Tcl_GetStrin
21010 67 52 65 73 75 6c 74 20 70 72 6f 63 65 64 75 72  gResult procedur
21020 65 20 74 6f 20 61 6c 6c 6f 77 20 70 72 6f 67 72  e to allow progr
21030 61 6d 73 0a 74 6f 20 67 65 74 20 61 6e 20 69 6e  ams.to get an in
21040 74 65 72 70 72 65 74 65 72 27 73 20 72 65 73 75  terpreter's resu
21050 6c 74 20 61 73 20 61 20 73 74 72 69 6e 67 2e 20  lt as a string. 
21060 49 66 20 74 68 65 20 72 65 73 75 6c 74 20 77 61  If the result wa
21070 73 20 70 72 65 76 69 6f 75 73 6c 79 20 73 65 74  s previously set
21080 0a 74 6f 20 61 6e 20 6f 62 6a 65 63 74 2c 20 74  .to an object, t
21090 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 77 69  his procedure wi
210a0 6c 6c 20 63 6f 6e 76 65 72 74 20 74 68 65 20 6f  ll convert the o
210b0 62 6a 65 63 74 20 74 6f 20 61 20 73 74 72 69 6e  bject to a strin
210c0 67 2e 20 55 73 65 20 6f 66 0a 54 63 6c 5f 47 65  g. Use of.Tcl_Ge
210d0 74 53 74 72 69 6e 67 52 65 73 75 6c 74 20 69 73  tStringResult is
210e0 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 72 65 70   intended to rep
210f0 6c 61 63 65 20 64 69 72 65 63 74 20 61 63 63 65  lace direct acce
21100 73 73 20 74 6f 20 69 6e 74 65 72 70 2d 3e 72 65  ss to interp->re
21110 73 75 6c 74 2c 0a 77 68 69 63 68 20 69 73 20 6e  sult,.which is n
21120 6f 74 20 73 61 66 65 2e 20 28 42 4c 29 0a 0a 35  ot safe. (BL)..5
21130 2f 32 30 2f 39 37 20 28 6e 65 77 20 66 65 61 74  /20/97 (new feat
21140 75 72 65 73 29 20 46 69 78 65 64 20 22 66 63 6f  ures) Fixed "fco
21150 70 79 22 20 74 6f 20 72 65 74 75 72 6e 20 74 68  py" to return th
21160 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65  e number of byte
21170 73 0a 74 72 61 6e 73 66 65 72 72 65 64 20 69 6e  s.transferred in
21180 20 74 68 65 20 62 6c 6f 63 6b 69 6e 67 20 63 61   the blocking ca
21190 73 65 2e 20 20 55 70 64 61 74 65 64 20 74 68 65  se.  Updated the
211a0 20 68 74 74 70 20 70 61 63 6b 61 67 65 20 74 6f   http package to
211b0 20 75 73 65 0a 66 63 6f 70 79 20 69 6e 73 74 65   use.fcopy inste
211c0 61 64 20 6f 66 20 75 6e 73 75 70 70 6f 72 74 65  ad of unsupporte
211d0 64 30 2e 20 20 41 64 64 65 64 20 2d 74 69 6d 65  d0.  Added -time
211e0 6f 75 74 20 61 6e 64 20 2d 68 61 6e 64 6c 65 72  out and -handler
211f0 20 6f 70 74 69 6f 6e 73 20 74 6f 0a 68 74 74 70   options to.http
21200 5f 67 65 74 2e 20 20 68 74 74 70 5f 67 65 74 20  _get.  http_get 
21210 69 73 20 6e 6f 77 20 62 6c 6f 63 6b 69 6e 67 20  is now blocking 
21220 62 79 20 64 65 66 61 75 6c 74 2e 20 20 49 74 20  by default.  It 
21230 69 73 20 6f 6e 6c 79 20 6e 6f 6e 2d 62 6c 6f 63  is only non-bloc
21240 6b 69 6e 67 0a 69 66 20 79 6f 75 20 73 75 70 70  king.if you supp
21250 6c 79 20 61 20 2d 63 6f 6d 6d 61 6e 64 20 61 72  ly a -command ar
21260 67 75 6d 65 6e 74 2e 20 28 42 57 29 0a 0a 35 2f  gument. (BW)..5/
21270 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  22/97 (bug fix) 
21280 46 69 78 65 64 20 73 65 76 65 72 61 6c 20 62 75  Fixed several bu
21290 67 73 20 69 6e 20 74 68 65 20 22 6c 73 6f 72 74  gs in the "lsort
212a0 22 20 63 6f 6d 6d 61 6e 64 20 68 61 76 69 6e 67  " command having
212b0 20 74 6f 20 64 6f 0a 77 69 74 68 20 74 68 65 20   to do.with the 
212c0 2d 64 69 63 74 69 6f 6e 61 72 79 20 6f 70 74 69  -dictionary opti
212d0 6f 6e 20 61 6e 64 20 74 68 65 20 70 72 65 73 65  on and the prese
212e0 6e 63 65 20 6f 66 20 6e 75 6d 62 65 72 73 20 65  nce of numbers e
212f0 6d 62 65 64 64 65 64 20 69 6e 20 74 68 65 0a 73  mbedded in the.s
21300 74 72 69 6e 67 73 2e 20 20 28 4a 4f 29 0a 0a 2d  trings.  (JO)..-
21310 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
21320 20 52 65 6c 65 61 73 65 64 20 38 2e 30 62 31 2c   Released 8.0b1,
21330 20 35 2f 32 37 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d   5/27/97 -------
21340 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
21350 0a 0a 36 2f 32 2f 39 37 20 28 62 75 67 20 66 69  ..6/2/97 (bug fi
21360 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  x) Fixed bug in 
21370 73 74 61 72 74 75 70 20 63 6f 64 65 20 74 68 61  startup code tha
21380 74 20 63 61 75 73 65 64 20 61 20 70 72 6f 62 6c  t caused a probl
21390 65 6d 20 69 6e 0a 66 69 6e 64 69 6e 67 20 74 68  em in.finding th
213a0 65 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 20  e library files 
213b0 77 68 65 6e 20 74 68 65 79 20 61 72 65 20 69 6e  when they are in
213c0 73 74 61 6c 6c 65 64 20 69 6e 20 61 20 64 69 72  stalled in a dir
213d0 65 63 74 6f 72 79 0a 63 6f 6e 74 61 69 6e 69 6e  ectory.containin
213e0 67 20 61 20 73 70 61 63 65 20 69 6e 20 74 68 65  g a space in the
213f0 20 6e 61 6d 65 2e 20 28 53 53 29 0a 0a 36 2f 32   name. (SS)..6/2
21400 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
21410 78 65 64 20 62 75 67 20 69 6e 20 55 6e 69 78 20  xed bug in Unix 
21420 6e 6f 74 69 66 69 65 72 20 77 68 65 72 65 20 74  notifier where t
21430 68 65 20 73 65 6c 65 63 74 20 6d 61 73 6b 20 77  he select mask w
21440 61 73 0a 6e 6f 74 20 62 65 69 6e 67 20 63 6c 65  as.not being cle
21450 61 72 65 64 20 75 6e 64 65 72 20 73 6f 6d 65 20  ared under some 
21460 63 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 20 28  circumstances. (
21470 53 53 29 0a 0a 36 2f 34 2f 39 37 20 28 62 75 67  SS)..6/4/97 (bug
21480 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
21490 74 68 61 74 20 70 72 65 76 65 6e 74 65 64 20 63  that prevented c
214a0 72 65 61 74 69 6f 6e 20 6f 66 20 54 6b 20 77 69  reation of Tk wi
214b0 64 67 65 74 73 20 69 6e 0a 6e 61 6d 65 73 70 61  dgets in.namespa
214c0 63 65 73 2e 20 54 63 6c 5f 43 72 65 61 74 65 4f  ces. Tcl_CreateO
214d0 62 6a 43 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63  bjCommand and Tc
214e0 6c 5f 43 72 65 61 74 65 43 6f 6d 6d 61 6e 64 20  l_CreateCommand 
214f0 6e 6f 77 20 61 6c 77 61 79 73 20 63 72 65 61 74  now always creat
21500 65 0a 63 6f 6d 6d 61 6e 64 73 20 69 6e 20 74 68  e.commands in th
21510 65 20 67 6c 6f 62 61 6c 20 6e 61 6d 65 73 70 61  e global namespa
21520 63 65 20 75 6e 6c 65 73 73 20 74 68 65 20 63 6f  ce unless the co
21530 6d 6d 61 6e 64 20 6e 61 6d 65 73 20 61 72 65 20  mmand names are 
21540 71 75 61 6c 69 66 69 65 64 2e 20 54 63 6c 0a 70  qualified. Tcl.p
21550 72 6f 63 65 64 75 72 65 73 20 63 6f 6e 74 69 6e  rocedures contin
21560 75 65 20 74 6f 20 62 65 20 63 72 65 61 74 65 64  ue to be created
21570 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20   in the current 
21580 6e 61 6d 65 73 70 61 63 65 20 62 79 20 64 65 66  namespace by def
21590 61 75 6c 74 2e 20 28 42 4c 29 0a 0a 36 2f 36 2f  ault. (BL)..6/6/
215a0 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 73  97 (new features
215b0 29 20 41 64 64 65 64 20 6e 65 77 20 6e 61 6d 65  ) Added new name
215c0 73 70 61 63 65 20 41 50 49 20 70 72 6f 63 65 64  space API proced
215d0 75 72 65 73 0a 54 63 6c 5f 41 70 70 65 6e 64 45  ures.Tcl_AppendE
215e0 78 70 6f 72 74 4c 69 73 74 20 61 6e 64 20 54 63  xportList and Tc
215f0 6c 5f 45 78 70 6f 72 74 20 74 6f 20 61 6c 6c 6f  l_Export to allo
21600 77 20 43 20 63 6f 64 65 20 74 6f 20 67 65 74 20  w C code to get 
21610 61 6e 64 20 73 65 74 20 61 0a 6e 61 6d 65 73 70  and set a.namesp
21620 61 63 65 27 73 20 65 78 70 6f 72 74 20 6c 69 73  ace's export lis
21630 74 2e 20 28 42 4c 29 0a 0a 36 2f 31 31 2f 39 37  t. (BL)..6/11/97
21640 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
21650 64 64 65 64 20 54 63 6c 5f 43 6f 6e 63 61 74 4f  dded Tcl_ConcatO
21660 62 6a 2e 20 54 68 69 73 20 6f 62 6a 65 63 74 2d  bj. This object-
21670 62 61 73 65 64 20 72 6f 75 74 69 6e 65 0a 70 61  based routine.pa
21680 72 61 6c 6c 65 6c 73 20 74 68 65 20 73 74 72 69  rallels the stri
21690 6e 67 2d 62 61 73 65 64 20 72 6f 75 74 69 6e 65  ng-based routine
216a0 20 54 63 6c 5f 43 6f 6e 63 61 74 2e 20 28 53 52   Tcl_Concat. (SR
216b0 50 29 0a 0a 36 2f 31 31 2f 39 37 20 28 6e 65 77  P)..6/11/97 (new
216c0 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
216d0 54 63 6c 5f 53 65 74 4f 62 6a 45 72 72 6f 72 43  Tcl_SetObjErrorC
216e0 6f 64 65 2e 20 54 68 69 73 20 6f 62 6a 65 63 74  ode. This object
216f0 2d 62 61 73 65 64 0a 72 6f 75 74 69 6e 65 73 20  -based.routines 
21700 70 61 72 61 6c 6c 65 6c 73 20 74 68 65 20 73 74  parallels the st
21710 72 69 6e 67 2d 62 61 73 65 64 20 72 6f 75 74 69  ring-based routi
21720 6e 65 20 54 63 6c 5f 53 65 74 45 72 72 6f 72 43  ne Tcl_SetErrorC
21730 6f 64 65 2e 20 28 53 52 50 29 0a 0a 36 2f 31 32  ode. (SRP)..6/12
21740 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
21750 78 20 74 68 65 20 22 75 6e 6b 6e 6f 77 6e 22 20  x the "unknown" 
21760 70 72 6f 63 65 64 75 72 65 20 73 6f 20 74 68 61  procedure so tha
21770 74 20 77 69 73 68 20 75 6e 64 65 72 20 57 69 6e  t wish under Win
21780 64 6f 77 73 0a 77 69 6c 6c 20 65 78 65 63 20 61  dows.will exec a
21790 6e 20 65 78 74 65 72 6e 61 6c 20 70 72 6f 67 72  n external progr
217a0 61 6d 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 61  am, instead of a
217b0 6c 77 61 79 73 20 63 6f 6d 70 6c 61 69 6e 69 6e  lways complainin
217c0 67 20 22 63 6f 6e 73 6f 6c 65 31 20 6e 6f 74 0a  g "console1 not.
217d0 6f 70 65 6e 65 64 20 66 6f 72 20 77 72 69 74 69  opened for writi
217e0 6e 67 22 2e 20 28 43 43 53 29 0a 0a 36 2f 31 32  ng". (CCS)..6/12
217f0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
21800 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 65 78  xed core dump ex
21810 70 65 72 69 65 6e 63 65 64 20 62 79 20 74 68 65  perienced by the
21820 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 69 6d 70 6c   following simpl
21830 65 0a 73 63 72 69 70 74 3a 0a 09 69 6e 74 65 72  e.script:..inter
21840 70 20 63 72 65 61 74 65 20 78 0a 09 78 20 61 6c  p create x..x al
21850 69 61 73 20 65 78 65 63 20 65 78 65 63 0a 09 69  ias exec exec..i
21860 6e 74 65 72 70 20 64 65 6c 65 74 65 20 78 0a 54  nterp delete x.T
21870 68 69 73 20 70 61 6e 69 63 20 77 61 73 20 63 61  his panic was ca
21880 75 73 65 64 20 62 79 20 6e 6f 74 20 69 6e 73 74  used by not inst
21890 61 6c 6c 69 6e 67 20 74 68 65 20 6e 65 77 20 43  alling the new C
218a0 6d 64 44 65 6c 65 74 65 50 72 6f 63 20 77 68 65  mdDeleteProc whe
218b0 6e 20 65 78 65 63 0a 67 6f 74 20 72 65 64 65 66  n exec.got redef
218c0 69 6e 65 64 20 62 79 20 74 68 65 20 61 6c 69 61  ined by the alia
218d0 73 20 63 72 65 61 74 69 6f 6e 20 73 74 65 70 2e  s creation step.
218e0 20 52 65 70 6f 72 74 65 64 20 62 79 20 4c 69 6e   Reported by Lin
218f0 64 73 61 79 20 4d 61 72 73 68 61 6c 20 28 4a 4c  dsay Marshal (JL
21900 29 0a 0a 36 2f 31 33 2f 39 37 20 28 6e 65 77 20  )..6/13/97 (new 
21910 66 65 61 74 75 72 65 73 29 20 54 63 6c 20 6f 62  features) Tcl ob
21920 6a 65 63 74 73 20 6e 65 77 6c 79 20 63 72 65 61  jects newly crea
21930 74 65 64 20 62 79 20 54 63 6c 5f 4e 65 77 4f 62  ted by Tcl_NewOb
21940 6a 20 6e 6f 77 20 68 61 76 65 20 61 0a 73 74 72  j now have a.str
21950 69 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69  ing representati
21960 6f 6e 20 74 68 61 74 20 70 6f 69 6e 74 73 20 74  on that points t
21970 6f 20 61 20 73 68 61 72 65 64 20 68 65 61 70 20  o a shared heap 
21980 73 74 72 69 6e 67 20 6f 66 20 6c 65 6e 67 74 68  string of length
21990 20 31 2e 20 28 54 68 65 79 0a 75 73 65 64 20 74   1. (They.used t
219a0 6f 20 68 61 76 65 20 4e 55 4c 4c 20 62 79 74 65  o have NULL byte
219b0 73 20 61 6e 64 20 74 79 70 65 50 74 72 20 66 69  s and typePtr fi
219c0 65 6c 64 73 2e 20 54 68 69 73 20 77 61 73 20 74  elds. This was t
219d0 72 65 61 74 65 64 20 61 73 20 61 20 73 70 65 63  reated as a spec
219e0 69 61 6c 0a 63 61 73 65 20 74 6f 20 69 6e 64 69  ial.case to indi
219f0 63 61 74 65 20 61 6e 20 65 6d 70 74 79 20 73 74  cate an empty st
21a00 72 69 6e 67 2c 20 62 75 74 20 6d 61 64 65 20 74  ring, but made t
21a10 79 70 65 20 6d 61 6e 61 67 65 72 20 69 6d 70 6c  ype manager impl
21a20 65 6d 65 6e 74 61 74 69 6f 6e 73 0a 63 6f 6d 70  ementations.comp
21a30 6c 65 78 20 61 6e 64 20 65 72 72 6f 72 20 70 72  lex and error pr
21a40 6f 6e 65 2e 29 20 54 68 65 20 6e 65 77 20 70 72  one.) The new pr
21a50 6f 63 65 64 75 72 65 20 54 63 6c 5f 49 6e 76 61  ocedure Tcl_Inva
21a60 6c 69 64 61 74 65 53 74 72 69 6e 67 52 65 70 20  lidateStringRep 
21a70 69 73 20 75 73 65 64 0a 74 6f 20 6d 61 72 6b 20  is used.to mark 
21a80 61 6e 20 6f 62 6a 65 63 74 27 73 20 73 74 72 69  an object's stri
21a90 6e 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f  ng representatio
21aa0 6e 20 69 6e 76 61 6c 69 64 20 61 6e 64 20 74 6f  n invalid and to
21ab0 20 66 72 65 65 20 61 6e 79 20 73 74 6f 72 61 67   free any storag
21ac0 65 0a 61 73 73 6f 63 69 61 74 65 64 20 77 69 74  e.associated wit
21ad0 68 20 74 68 65 20 6f 6c 64 20 73 74 72 69 6e 67  h the old string
21ae0 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e   representation.
21af0 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BL).*** POTENT
21b00 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
21b10 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e 30  ITY with Tcl 8.0
21b20 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69 74 68  b1, but not with
21b30 20 54 63 6c 37 2e 36 20 2a 2a 2a 0a 0a 36 2f 31   Tcl7.6 ***..6/1
21b40 36 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 54  6/97 (bug fix) T
21b50 63 6c 5f 53 63 61 6e 43 6f 75 6e 74 65 64 45 6c  cl_ScanCountedEl
21b60 65 6d 65 6e 74 20 63 6f 75 6c 64 20 6c 65 61 76  ement could leav
21b70 65 20 62 72 61 63 65 73 20 75 6e 6d 61 74 63 68  e braces unmatch
21b80 65 64 0a 69 66 20 74 68 65 20 73 74 72 69 6e 67  ed.if the string
21b90 20 65 6e 64 65 64 20 77 69 74 68 20 61 20 62 61   ended with a ba
21ba0 63 6b 73 6c 61 73 68 2e 20 28 4a 4f 29 0a 0a 36  ckslash. (JO)..6
21bb0 2f 31 37 2f 39 37 20 28 62 75 67 20 66 69 78 29  /17/97 (bug fix)
21bc0 20 46 69 78 65 64 20 63 68 61 6e 6e 65 6c 20 65   Fixed channel e
21bd0 76 65 6e 74 20 62 75 67 20 77 68 65 72 65 20 72  vent bug where r
21be0 65 61 64 61 62 6c 65 20 65 76 65 6e 74 73 20 77  eadable events w
21bf0 6f 75 6c 64 20 62 65 0a 6c 6f 73 74 20 64 75 72  ould be.lost dur
21c00 69 6e 67 20 72 65 63 75 72 73 69 76 65 20 65 76  ing recursive ev
21c10 65 6e 74 73 20 6c 6f 6f 70 73 20 69 66 20 74 68  ents loops if th
21c20 65 20 69 6e 70 75 74 20 62 75 66 66 65 72 73 20  e input buffers 
21c30 63 6f 6e 74 61 69 6e 65 64 0a 64 61 74 61 2e 20  contained.data. 
21c40 28 53 53 29 0a 0a 36 2f 31 37 2f 39 37 20 28 62  (SS)..6/17/97 (b
21c50 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
21c60 67 20 69 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63  g in Windows soc
21c70 6b 65 74 20 63 6f 64 65 20 74 68 61 74 20 64 69  ket code that di
21c80 64 6e 27 74 0a 72 65 65 6e 61 62 6c 65 20 72 65  dn't.reenable re
21c90 61 64 20 65 76 65 6e 74 73 20 69 6e 20 74 68 65  ad events in the
21ca0 20 63 61 73 65 20 77 68 65 72 65 20 61 6e 20 65   case where an e
21cb0 78 74 65 72 6e 61 6c 20 65 6e 74 69 74 79 20 69  xternal entity i
21cc0 73 20 61 6c 73 6f 0a 72 65 61 64 69 6e 67 20 66  s also.reading f
21cd0 72 6f 6d 20 74 68 65 20 73 6f 63 6b 65 74 2e 20  rom the socket. 
21ce0 28 53 53 29 0a 0a 36 2f 31 38 2f 39 37 20 28 62  (SS)..6/18/97 (b
21cf0 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
21d00 69 6e 69 74 69 61 6c 20 73 65 74 74 69 6e 67 20  initial setting 
21d10 6f 66 20 74 68 65 20 6e 6f 74 69 66 69 65 72 20  of the notifier 
21d20 73 65 72 76 69 63 65 20 6d 6f 64 65 0a 74 6f 20  service mode.to 
21d30 54 43 4c 5f 53 45 52 56 49 43 45 5f 4e 4f 4e 45  TCL_SERVICE_NONE
21d40 20 74 6f 20 61 76 6f 69 64 20 75 6e 65 78 70 65   to avoid unexpe
21d50 63 74 65 64 20 65 76 65 6e 74 20 68 61 6e 64 6c  cted event handl
21d60 69 6e 67 20 64 75 72 69 6e 67 0a 69 6e 69 74 69  ing during.initi
21d70 61 6c 69 7a 61 74 69 6f 6e 2e 20 28 53 53 29 0a  alization. (SS).
21d80 0a 36 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69  .6/19/97 (bug fi
21d90 78 2f 66 65 61 74 75 72 65 20 63 68 61 6e 67 65  x/feature change
21da0 29 20 54 68 65 20 63 6f 6d 6d 61 6e 64 20 63 61  ) The command ca
21db0 6c 6c 62 61 63 6b 20 74 6f 20 66 63 6f 70 79 20  llback to fcopy 
21dc0 69 73 20 6e 6f 77 0a 63 61 6c 6c 65 64 20 69 6e  is now.called in
21dd0 20 63 61 73 65 20 6f 66 20 65 72 72 6f 72 73 20   case of errors 
21de0 64 75 72 69 6e 67 20 74 68 65 20 62 61 63 6b 67  during the backg
21df0 72 6f 75 6e 64 20 63 6f 70 79 2e 20 20 54 68 69  round copy.  Thi
21e00 73 20 61 64 64 73 20 61 20 73 65 63 6f 6e 64 2c  s adds a second,
21e10 0a 6f 70 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65  .optional argume
21e20 6e 74 20 74 6f 20 74 68 65 20 63 61 6c 6c 62 61  nt to the callba
21e30 63 6b 20 74 68 61 74 20 69 73 20 74 68 65 20 65  ck that is the e
21e40 72 72 6f 72 20 73 74 72 69 6e 67 2e 20 20 54 68  rror string.  Th
21e50 65 20 63 61 6c 6c 62 61 63 6b 0a 69 6e 20 63 61  e callback.in ca
21e60 73 65 20 6f 66 20 65 72 72 6f 72 73 20 69 73 20  se of errors is 
21e70 72 65 71 75 69 72 65 64 20 66 6f 72 20 70 72 6f  required for pro
21e80 70 65 72 20 63 6c 65 61 6e 75 70 20 62 79 20 74  per cleanup by t
21e90 68 65 20 75 73 65 72 20 6f 66 20 66 63 6f 70 79  he user of fcopy
21ea0 2e 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (BW).*** POTEN
21eb0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
21ec0 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e  LITY with Tcl 8.
21ed0 30 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69 74  0b1, but not wit
21ee0 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a 36  h Tcl 7.6 ***..6
21ef0 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  /19/97 (bug fix)
21f00 20 46 69 78 65 64 20 61 20 70 61 6e 69 63 20 64   Fixed a panic d
21f10 75 65 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77  ue to the follow
21f20 69 6e 67 20 66 6f 75 72 20 6c 69 6e 65 20 73 63  ing four line sc
21f30 72 69 70 74 3a 0a 09 69 6e 74 65 72 70 20 63 72  ript:..interp cr
21f40 65 61 74 65 20 78 0a 09 78 20 61 6c 69 61 73 20  eate x..x alias 
21f50 66 6f 6f 20 62 61 72 0a 09 78 20 65 76 61 6c 20  foo bar..x eval 
21f60 72 65 6e 61 6d 65 20 66 6f 6f 20 62 6c 6f 74 7a  rename foo blotz
21f70 0a 09 78 20 61 6c 69 61 73 20 66 6f 6f 20 7b 7d  ..x alias foo {}
21f80 0a 54 68 65 20 70 72 6f 62 6c 65 6d 20 77 61 73  .The problem was
21f90 20 74 68 61 74 20 74 68 65 20 69 6e 74 65 72 70   that the interp
21fa0 20 63 6f 64 65 20 77 61 73 20 6e 6f 74 20 75 73   code was not us
21fb0 69 6e 67 20 74 68 65 20 61 63 74 75 61 6c 20 63  ing the actual c
21fc0 75 72 72 65 6e 74 20 6e 61 6d 65 0a 6f 66 20 74  urrent name.of t
21fd0 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65  he command to be
21fe0 20 64 65 6c 65 74 65 64 20 61 73 20 61 20 72 65   deleted as a re
21ff0 73 75 6c 74 20 6f 66 20 75 6e 2d 61 6c 69 61 73  sult of un-alias
22000 69 6e 67 20 66 6f 6f 2e 20 28 4a 4c 29 0a 0a 36  ing foo. (JL)..6
22010 2f 31 39 2f 39 37 20 28 66 65 61 74 75 72 65 20  /19/97 (feature 
22020 63 68 61 6e 67 65 29 20 50 61 73 73 20 69 6e 74  change) Pass int
22030 65 72 70 20 64 6f 77 6e 20 74 6f 20 74 68 65 20  erp down to the 
22040 43 68 61 6e 6e 65 6c 4f 70 74 69 6f 6e 20 61 6e  ChannelOption an
22050 64 0a 64 72 69 76 65 72 20 73 70 65 63 69 66 69  d.driver specifi
22060 63 20 63 61 6c 6c 73 20 73 6f 20 73 79 73 74 65  c calls so syste
22070 6d 20 65 72 72 6f 72 73 20 63 61 6e 20 62 65 20  m errors can be 
22080 64 69 66 66 65 72 65 6e 74 69 61 74 65 64 20 66  differentiated f
22090 72 6f 6d 20 73 79 6e 74 61 78 0a 6f 6e 65 73 2e  rom syntax.ones.
220a0 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 44 72 69   Changed Tcl_Dri
220b0 76 65 72 47 65 74 4f 70 74 69 6f 6e 50 72 6f 63  verGetOptionProc
220c0 20 74 79 70 65 2e 20 41 66 66 65 63 74 73 20 54   type. Affects T
220d0 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 4f 70 74  cl_GetChannelOpt
220e0 69 6f 6e 2c 0a 54 63 70 47 65 74 4f 70 74 69 6f  ion,.TcpGetOptio
220f0 6e 50 72 6f 63 2c 20 20 54 74 79 47 65 74 4f 70  nProc,  TtyGetOp
22100 74 69 6f 6e 50 72 6f 63 2c 20 65 74 63 2e 20 28  tionProc, etc. (
22110 44 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  DL).*** POTENTIA
22120 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
22130 59 20 2a 2a 2a 0a 0a 36 2f 31 39 2f 39 37 20 28  Y ***..6/19/97 (
22140 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
22150 65 64 20 54 63 6c 5f 42 61 64 43 68 61 6e 6e 65  ed Tcl_BadChanne
22160 6c 4f 70 74 69 6f 6e 20 66 6f 72 20 75 73 65 20  lOption for use 
22170 62 79 20 62 79 20 64 72 69 76 65 72 0a 73 70 65  by by driver.spe
22180 63 69 66 69 63 20 6f 70 74 69 6f 6e 20 70 72 6f  cific option pro
22190 63 65 64 75 72 65 73 20 28 53 65 74 20 61 6e 64  cedures (Set and
221a0 20 47 65 74 29 20 74 6f 20 72 65 74 75 72 6e 20   Get) to return 
221b0 61 20 63 6f 6d 70 6c 65 74 65 20 61 6e 64 0a 6d  a complete and.m
221c0 65 61 6e 69 6e 67 66 75 6c 20 65 72 72 6f 72 20  eaningful error 
221d0 6d 65 73 73 61 67 65 2e 20 28 44 4c 29 0a 0a 36  message. (DL)..6
221e0 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 65  /19/97 (bug fixe
221f0 73 29 20 49 66 20 61 20 73 79 73 74 65 6d 20 63  s) If a system c
22200 61 6c 6c 20 65 72 72 6f 72 20 6f 63 63 75 72 73  all error occurs
22210 20 77 68 69 6c 65 20 64 6f 69 6e 67 20 61 6e 0a   while doing an.
22220 66 63 6f 6e 66 69 67 75 72 65 20 6f 6e 20 74 63  fconfigure on tc
22230 70 20 6f 72 20 74 74 79 2f 63 6f 6d 20 63 68 61  p or tty/com cha
22240 6e 6e 65 6c 3a 20 72 65 74 75 72 6e 20 74 68 65  nnel: return the
22250 20 61 70 70 72 6f 70 72 69 61 74 65 20 65 72 72   appropriate err
22260 6f 72 0a 6d 65 73 73 61 67 65 20 28 69 6e 73 74  or.message (inst
22270 65 61 64 20 6f 66 20 74 68 65 20 73 79 6e 74 61  ead of the synta
22280 78 20 65 72 72 6f 72 20 6f 6e 65 20 6f 72 20 6e  x error one or n
22290 6f 6e 65 29 2e 20 28 46 69 78 65 64 20 66 6f 72  one). (Fixed for
222a0 20 55 6e 69 78 20 61 6e 64 0a 6d 6f 73 74 20 6f   Unix and.most o
222b0 66 20 74 68 65 20 57 69 6e 20 61 6e 64 20 4d 61  f the Win and Ma
222c0 63 20 64 72 69 76 65 72 73 29 2e 20 28 44 4c 29  c drivers). (DL)
222d0 0a 0a 36 2f 32 30 2f 39 37 20 28 66 65 61 74 75  ..6/20/97 (featu
222e0 72 65 20 63 68 61 6e 67 65 29 20 45 76 61 6c 20  re change) Eval 
222f0 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 61 73 73  is no longer ass
22300 75 6d 65 64 20 61 73 20 74 68 65 20 73 75 62 63  umed as the subc
22310 6f 6d 6d 61 6e 64 20 6e 61 6d 65 0a 69 6e 20 6e  ommand name.in n
22320 61 6d 65 73 70 61 63 65 20 63 6f 6d 6d 61 6e 64  amespace command
22330 73 3a 20 79 6f 75 20 6d 75 73 74 20 6e 6f 77 20  s: you must now 
22340 77 72 69 74 65 20 22 6e 61 6d 65 73 70 61 63 65  write "namespace
22350 20 65 76 61 6c 20 6e 73 4e 61 6d 65 20 7b 2e 2e   eval nsName {..
22360 2e 7d 22 2e 0a 41 62 62 72 65 76 69 61 74 69 6f  .}"..Abbreviatio
22370 6e 73 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 20  ns of namespace 
22380 73 75 62 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 73  subcommand names
22390 20 61 72 65 20 6e 6f 77 20 61 6c 6c 6f 77 65 64   are now allowed
223a0 2e 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (BL).*** POTEN
223b0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
223c0 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e  LITY with Tcl 8.
223d0 30 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69 74  0b1, but not wit
223e0 68 20 54 63 6c 37 2e 36 20 2a 2a 2a 0a 0a 36 2f  h Tcl7.6 ***..6/
223f0 32 30 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  20/97 (feature c
22400 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 74  hange) Changed t
22410 68 65 20 65 72 72 6f 72 49 6e 66 6f 20 74 72 61  he errorInfo tra
22420 63 65 62 61 63 6b 20 6d 65 73 73 61 67 65 20 66  ceback message f
22430 6f 72 0a 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 65  or.compilation e
22440 72 72 6f 72 73 20 66 72 6f 6d 20 22 69 6e 76 6f  rrors from "invo
22450 6b 65 64 20 66 72 6f 6d 20 77 69 74 68 69 6e 22  ked from within"
22460 20 74 6f 20 22 77 68 69 6c 65 20 63 6f 6d 70 69   to "while compi
22470 6c 69 6e 67 22 2e 20 28 42 4c 29 0a 0a 36 2f 32  ling". (BL)..6/2
22480 30 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29  0/97 (bug fixes)
22490 20 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 63   Fixed various c
224a0 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61 74  ompilation-relat
224b0 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20 22  ed bugs:.    - "
224c0 55 70 64 61 74 65 53 74 72 69 6e 67 4f 66 43 6d  UpdateStringOfCm
224d0 64 4e 61 6d 65 20 73 68 6f 75 6c 64 20 6e 65 76  dName should nev
224e0 65 72 20 62 65 20 63 61 6c 6c 65 64 22 20 61 6e  er be called" an
224f0 64 0a 20 20 20 20 20 20 22 55 70 64 61 74 65 53  d.      "UpdateS
22500 74 72 69 6e 67 4f 66 42 79 74 65 43 6f 64 65 20  tringOfByteCode 
22510 73 68 6f 75 6c 64 20 6e 65 76 65 72 20 62 65 20  should never be 
22520 63 61 6c 6c 65 64 22 20 70 61 6e 69 63 73 2e 0a  called" panics..
22530 20 20 20 20 2d 20 53 65 67 66 61 75 6c 74 20 69      - Segfault i
22540 6e 20 54 63 6c 4f 62 6a 49 6e 74 65 72 70 50 72  n TclObjInterpPr
22550 6f 63 20 67 65 74 74 69 6e 67 20 70 72 6f 63 65  oc getting proce
22560 64 75 72 65 20 6e 61 6d 65 20 61 66 74 65 72 20  dure name after 
22570 65 76 61 6c 75 61 74 69 6f 6e 0a 20 20 20 20 20  evaluation.     
22580 20 73 74 61 63 6b 20 69 73 20 72 65 61 6c 6c 6f   stack is reallo
22590 63 61 74 65 64 20 28 67 72 6f 77 6e 29 2e 0a 20  cated (grown).. 
225a0 20 20 20 2d 20 43 6f 75 6c 64 20 6e 6f 74 20 75     - Could not u
225b0 73 65 20 22 3a 22 20 61 74 20 65 6e 64 20 6f 66  se ":" at end of
225c0 20 76 61 72 69 61 62 6c 65 20 61 6e 64 20 63 6f   variable and co
225d0 6d 6d 61 6e 64 20 6e 61 6d 65 73 2e 0a 20 20 20  mmand names..   
225e0 20 2d 20 42 61 64 20 63 6f 64 65 20 67 65 6e 65   - Bad code gene
225f0 72 61 74 65 64 20 66 6f 72 20 77 68 69 6c 65 20  rated for while 
22600 61 6e 64 20 66 6f 72 20 63 6f 6d 6d 61 6e 64 73  and for commands
22610 20 77 69 74 68 20 74 65 73 74 20 65 78 70 72 65   with test expre
22620 73 73 69 6f 6e 73 0a 20 20 20 20 20 20 65 6e 63  ssions.      enc
22630 6c 6f 73 65 64 20 69 6e 20 71 75 6f 74 65 73 3a  losed in quotes:
22640 20 65 2e 67 2e 2c 20 22 73 65 74 20 69 20 30 3b   e.g., "set i 0;
22650 20 77 68 69 6c 65 20 22 24 69 20 3e 20 35 22 20   while "$i > 5" 
22660 7b 7d 22 2e 0a 20 20 20 20 2d 20 43 6f 6d 6d 61  {}"..    - Comma
22670 6e 64 20 74 72 61 63 65 20 70 72 6f 63 65 64 75  nd trace procedu
22680 72 65 73 20 77 6f 75 6c 64 20 63 72 61 73 68 20  res would crash 
22690 69 66 20 74 68 65 79 20 64 69 64 20 61 20 54 63  if they did a Tc
226a0 6c 5f 45 76 61 6c 4f 62 6a 20 74 68 61 74 0a 20  l_EvalObj that. 
226b0 20 20 20 20 20 72 65 61 6c 6c 6f 63 61 74 65 64       reallocated
226c0 20 74 68 65 20 65 76 61 6c 75 61 74 69 6f 6e 20   the evaluation 
226d0 73 74 61 63 6b 2e 0a 20 20 20 20 2d 20 42 72 65  stack..    - Bre
226e0 61 6b 20 61 6e 64 20 63 6f 6e 74 69 6e 75 65 20  ak and continue 
226f0 63 6f 6d 6d 61 6e 64 73 20 64 69 64 20 6e 6f 74  commands did not
22700 20 72 65 73 65 74 20 74 68 65 20 69 6e 74 65 72   reset the inter
22710 70 72 65 74 65 72 20 72 65 73 75 6c 74 2e 0a 20  preter result.. 
22720 20 20 20 2d 20 54 68 65 20 54 63 6c 5f 45 78 70     - The Tcl_Exp
22730 72 58 58 58 20 72 6f 75 74 69 6e 65 73 2c 20 62  rXXX routines, b
22740 6f 74 68 20 73 74 72 69 6e 67 2d 20 6f 72 20 6f  oth string- or o
22750 62 6a 65 63 74 2d 62 61 73 65 64 2c 20 61 6c 77  bject-based, alw
22760 61 79 73 0a 20 20 20 20 20 20 6d 6f 64 69 66 69  ays.      modifi
22770 65 64 20 74 68 65 20 69 6e 74 65 72 70 72 65 74  ed the interpret
22780 65 72 20 72 65 73 75 6c 74 20 65 76 65 6e 20 69  er result even i
22790 66 20 74 68 65 72 65 20 77 61 73 20 6e 6f 20 65  f there was no e
227a0 72 72 6f 72 2e 0a 20 20 20 20 2d 20 54 68 65 20  rror..    - The 
227b0 61 72 67 75 6d 65 6e 74 20 70 61 72 73 69 6e 67  argument parsing
227c0 20 70 72 6f 63 65 64 75 72 65 20 75 73 65 64 20   procedure used 
227d0 62 79 20 73 65 76 65 72 61 6c 20 63 6f 6d 70 69  by several compi
227e0 6c 65 20 70 72 6f 63 65 64 75 72 65 73 0a 20 20  le procedures.  
227f0 20 20 20 20 61 6c 77 61 79 73 20 74 72 65 61 74      always treat
22800 65 64 20 22 5d 22 20 61 73 20 65 6e 64 20 6f 66  ed "]" as end of
22810 20 61 20 63 6f 6d 6d 61 6e 64 3a 20 65 2e 67 2e   a command: e.g.
22820 2c 20 22 73 65 74 20 61 20 5d 22 20 77 6f 75 6c  , "set a ]" woul
22830 64 20 66 61 69 6c 2e 0a 20 20 20 20 2d 20 43 68  d fail..    - Ch
22840 61 6e 67 65 64 20 65 72 72 6f 72 49 6e 66 6f 20  anged errorInfo 
22850 74 72 61 63 65 62 61 63 6b 20 6d 65 73 73 61 67  traceback messag
22860 65 20 66 6f 72 20 63 6f 6d 70 69 6c 61 74 69 6f  e for compilatio
22870 6e 20 65 72 72 6f 72 73 20 66 72 6f 6d 0a 20 20  n errors from.  
22880 20 20 20 20 22 69 6e 76 6f 6b 65 64 20 66 72 6f      "invoked fro
22890 6d 20 77 69 74 68 69 6e 22 20 74 6f 20 22 77 68  m within" to "wh
228a0 69 6c 65 20 63 6f 6d 70 69 6c 69 6e 67 22 2e 0a  ile compiling"..
228b0 20 20 20 20 2d 20 50 72 6f 62 6c 65 6d 20 69 6e      - Problem in
228c0 69 74 69 61 6c 69 7a 69 6e 67 20 54 63 6c 20 6f  itializing Tcl o
228d0 62 6a 65 63 74 20 6d 61 6e 61 67 65 72 73 20 64  bject managers d
228e0 75 72 69 6e 67 20 69 6e 74 65 72 70 72 65 74 65  uring interprete
228f0 72 20 63 72 65 61 74 69 6f 6e 2e 0a 20 20 20 20  r creation..    
22900 2d 20 41 64 64 65 64 20 63 68 65 63 6b 20 61 6e  - Added check an
22910 64 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20  d error message 
22920 69 66 20 66 6f 72 6d 61 6c 20 70 61 72 61 6d 65  if formal parame
22930 74 65 72 20 74 6f 20 61 20 70 72 6f 63 65 64 75  ter to a procedu
22940 72 65 20 69 73 0a 20 20 20 20 20 20 61 6e 20 61  re is.      an a
22950 72 72 61 79 20 65 6c 65 6d 65 6e 74 2e 20 28 42  rray element. (B
22960 4c 29 0a 0a 36 2f 32 33 2f 39 37 20 28 6e 65 77  L)..6/23/97 (new
22970 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
22980 22 72 65 67 69 73 74 72 79 22 20 70 61 63 6b 61  "registry" packa
22990 67 65 20 74 6f 20 61 6c 6c 6f 77 20 6d 61 6e 69  ge to allow mani
229a0 70 75 6c 61 74 69 6f 6e 0a 6f 66 20 74 68 65 20  pulation.of the 
229b0 57 69 6e 64 6f 77 73 20 73 79 73 74 65 6d 20 72  Windows system r
229c0 65 67 69 73 74 72 79 2e 20 20 53 65 65 20 6d 61  egistry.  See ma
229d0 6e 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 64  nual entry for d
229e0 65 74 61 69 6c 73 2e 20 28 53 53 29 0a 0a 36 2f  etails. (SS)..6/
229f0 32 34 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  24/97 (feature c
22a00 68 61 6e 67 65 29 20 43 6f 6e 76 65 72 74 65 64  hange) Converted
22a10 20 68 74 74 70 20 74 6f 20 61 20 70 61 63 6b 61   http to a packa
22a20 67 65 20 61 6e 64 20 61 64 64 65 64 20 74 68 65  ge and added the
22a30 0a 68 74 74 70 31 2e 30 20 73 75 62 64 69 72 65  .http1.0 subdire
22a40 63 74 6f 72 79 20 6f 66 20 74 68 65 20 54 63 6c  ctory of the Tcl
22a50 20 73 63 72 69 70 74 20 6c 69 62 72 61 72 79 2e   script library.
22a60 20 20 54 68 69 73 20 6d 65 61 6e 73 20 79 6f 75    This means you
22a70 20 68 61 76 65 0a 74 6f 20 64 6f 20 61 20 22 70   have.to do a "p
22a80 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 68  ackage require h
22a90 74 74 70 22 20 74 6f 20 75 73 65 20 74 68 69 73  ttp" to use this
22aa0 2c 20 61 73 20 61 64 76 65 72 74 69 73 65 64 20  , as advertised 
22ab0 69 6e 20 74 68 65 20 6d 61 6e 20 70 61 67 65 2e  in the man page.
22ac0 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BW).*** POTENT
22ad0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
22ae0 49 54 59 20 77 69 74 68 20 54 63 6c 20 38 2e 30  ITY with Tcl 8.0
22af0 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69 74 68  b1, but not with
22b00 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a 36 2f   Tcl 7.6 ***..6/
22b10 32 34 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  24/97 (bug fix) 
22b20 45 6e 73 75 72 65 20 74 68 61 74 20 54 63 6c 5f  Ensure that Tcl_
22b30 53 65 74 2f 47 65 74 56 61 72 20 43 20 41 50 49  Set/GetVar C API
22b40 73 2c 20 77 68 65 6e 20 63 61 6c 6c 65 64 20 77  s, when called w
22b50 69 74 68 6f 75 74 0a 54 43 4c 5f 4c 45 41 56 45  ithout.TCL_LEAVE
22b60 5f 45 52 52 5f 4d 53 47 2c 20 64 6f 6e 27 74 20  _ERR_MSG, don't 
22b70 74 6f 75 63 68 20 74 68 65 20 69 6e 74 65 72 70  touch the interp
22b80 20 72 65 73 75 6c 74 2e 20 28 44 4c 29 0a 0a 36   result. (DL)..6
22b90 2f 32 36 2f 39 37 20 28 66 65 61 74 75 72 65 20  /26/97 (feature 
22ba0 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20  change) Changed 
22bb0 6e 61 6d 65 20 6f 66 20 54 63 6c 5f 45 78 70 72  name of Tcl_Expr
22bc0 53 74 72 69 6e 67 4f 62 6a 20 74 6f 0a 54 63 6c  StringObj to.Tcl
22bd0 5f 45 78 70 72 4f 62 6a 2e 20 28 42 4c 29 0a 2a  _ExprObj. (BL).*
22be0 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
22bf0 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
22c00 68 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74  h Tcl 8.0b1, but
22c10 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e   not with Tcl 7.
22c20 36 20 2a 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  6 ***..---------
22c30 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
22c40 64 20 38 2e 30 62 32 2c 20 36 2f 33 30 2f 39 37  d 8.0b2, 6/30/97
22c50 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
22c60 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 37 2f 31 2f 39 37  --------..7/1/97
22c70 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 54   (new feature) T
22c80 43 4c 5f 42 55 49 4c 44 5f 53 48 41 52 45 44 20  CL_BUILD_SHARED 
22c90 66 6c 61 67 20 73 65 74 20 69 6e 20 74 63 6c 43  flag set in tclC
22ca0 6f 6e 66 69 67 2e 73 68 0a 77 68 65 6e 20 54 63  onfig.sh.when Tc
22cb0 6c 20 68 61 73 20 62 65 65 6e 20 62 75 69 6c 74  l has been built
22cc0 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65 2d 73   with --enable-s
22cd0 68 61 72 65 64 2e 20 41 20 6e 65 77 20 74 63 6c  hared. A new tcl
22ce0 4c 69 62 4f 62 6a 73 0a 6d 61 6b 65 20 74 61 72  LibObjs.make tar
22cf0 67 65 74 2c 20 65 63 68 6f 69 6e 67 20 74 68 65  get, echoing the
22d00 20 6c 69 73 74 20 6f 66 20 74 68 65 20 2e 6f 27   list of the .o'
22d10 73 20 6e 65 65 64 65 64 20 74 6f 20 62 75 69 6c  s needed to buil
22d20 64 20 61 20 74 63 6c 0a 6c 69 62 72 61 72 79 2c  d a tcl.library,
22d30 20 69 73 20 6e 6f 77 20 70 72 6f 76 69 64 65 64   is now provided
22d40 2e 20 28 44 4c 29 0a 0a 37 2f 31 2f 39 37 20 28  . (DL)..7/1/97 (
22d50 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
22d60 63 6f 6d 70 61 74 2f 67 65 74 63 77 64 2e 63 20  compat/getcwd.c 
22d70 72 65 6d 6f 76 65 64 20 61 6e 64 20 63 68 61 6e  removed and chan
22d80 67 65 64 20 74 68 65 0a 6f 6e 6c 79 20 70 6c 61  ged the.only pla
22d90 63 65 20 77 68 65 72 65 20 67 65 74 63 77 64 20  ce where getcwd 
22da0 69 73 20 75 73 65 64 20 73 6f 20 61 20 6e 65 77  is used so a new
22db0 20 55 53 45 47 45 54 57 44 20 66 6c 61 67 20 73   USEGETWD flag s
22dc0 65 6c 65 63 74 73 0a 74 68 65 20 75 73 65 20 6f  elects.the use o
22dd0 66 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e  f the replacemen
22de0 74 20 22 67 65 74 77 64 22 2e 20 41 64 64 69 6e  t "getwd". Addin
22df0 67 20 74 68 69 73 20 66 6c 61 67 20 69 73 20 72  g this flag is r
22e00 65 63 6f 6d 6d 65 6e 64 65 64 0a 66 6f 72 20 53  ecommended.for S
22e10 75 6e 4f 53 20 34 20 28 62 65 63 61 75 73 65 20  unOS 4 (because 
22e20 67 65 74 63 77 64 20 6f 6e 20 53 75 6e 4f 53 20  getcwd on SunOS 
22e30 34 20 75 73 65 73 20 61 20 70 69 70 65 20 74 6f  4 uses a pipe to
22e40 20 70 77 64 28 31 29 21 29 2e 20 28 44 4c 29 0a   pwd(1)!). (DL).
22e50 0a 37 2f 37 2f 39 37 20 28 66 65 61 74 75 72 65  .7/7/97 (feature
22e60 20 63 68 61 6e 67 65 29 20 54 68 65 20 73 70 6c   change) The spl
22e70 69 74 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 73  it command now s
22e80 75 70 70 6f 72 74 73 20 62 69 6e 61 72 79 20 64  upports binary d
22e90 61 74 61 20 28 69 2e 65 2e 2c 0a 6e 75 6c 6c 20  ata (i.e.,.null 
22ea0 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 73 74  characters in st
22eb0 72 69 6e 67 73 29 2e 20 28 42 4c 29 0a 0a 37 2f  rings). (BL)..7/
22ec0 37 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 73  7/97 (bug fix) s
22ed0 74 72 69 6e 67 20 66 69 72 73 74 20 72 65 74 75  tring first retu
22ee0 72 6e 65 64 20 74 68 65 20 77 72 6f 6e 67 20 72  rned the wrong r
22ef0 65 73 75 6c 74 20 69 66 20 74 68 65 20 66 69 72  esult if the fir
22f00 73 74 0a 61 72 67 75 6d 65 6e 74 20 73 74 72 69  st.argument stri
22f10 6e 67 20 77 61 73 20 65 6d 70 74 79 2e 20 28 42  ng was empty. (B
22f20 4c 29 0a 0a 37 2f 38 2f 39 37 20 28 62 75 67 20  L)..7/8/97 (bug 
22f30 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20  fix) Fixed core 
22f40 64 75 6d 70 20 69 6e 20 66 63 6f 70 79 20 74 68  dump in fcopy th
22f50 61 74 20 63 6f 75 6c 64 20 6f 63 63 75 72 20 77  at could occur w
22f60 68 65 6e 20 61 20 63 6f 6d 6d 61 6e 64 0a 63 61  hen a command.ca
22f70 6c 6c 62 61 63 6b 20 77 61 73 20 73 75 70 70 6c  llback was suppl
22f80 69 65 64 20 61 6e 64 20 61 6e 20 65 72 72 6f 72  ied and an error
22f90 20 6f 72 20 65 6f 66 20 63 6f 6e 64 69 74 69 6f   or eof conditio
22fa0 6e 20 63 61 75 73 65 64 20 6e 6f 20 62 61 63 6b  n caused no back
22fb0 67 72 6f 75 6e 64 0a 61 63 74 69 76 69 74 79 2e  ground.activity.
22fc0 20 20 41 20 72 65 66 63 6f 75 6e 74 20 62 75 67    A refcount bug
22fd0 20 74 72 69 67 67 65 72 65 64 20 61 20 70 61 6e   triggered a pan
22fe0 69 63 20 69 6e 20 54 63 6c 5f 4c 69 73 74 4f 62  ic in Tcl_ListOb
22ff0 6a 41 70 70 65 6e 64 45 6c 65 6d 65 6e 74 2e 20  jAppendElement. 
23000 28 42 57 29 0a 0a 37 2f 38 2f 39 37 20 28 62 75  (BW)..7/8/97 (bu
23010 67 20 66 69 78 29 20 52 65 6c 61 78 65 64 20 74  g fix) Relaxed t
23020 68 65 20 70 61 74 74 65 72 6e 20 6d 61 74 63 68  he pattern match
23030 69 6e 67 20 6f 6e 20 68 74 74 70 5f 67 65 74 20  ing on http_get 
23040 73 6f 20 79 6f 75 20 64 6f 20 6e 6f 74 0a 6e 65  so you do not.ne
23050 65 64 20 61 20 74 72 61 69 6c 69 6e 67 20 70 61  ed a trailing pa
23060 74 68 20 63 6f 6d 70 6f 6e 65 6e 74 2e 20 20 59  th component.  Y
23070 6f 75 20 63 61 6e 20 6e 6f 77 20 67 65 74 20 61  ou can now get a
23080 77 61 79 20 77 69 74 68 20 6a 75 73 74 0a 68 74  way with just.ht
23090 74 70 5f 67 65 74 20 77 77 77 2e 73 63 72 69 70  tp_get www.scrip
230a0 74 69 63 73 2e 63 6f 6d 09 09 09 09 09 28 42 57  tics.com.....(BW
230b0 29 0a 0a 37 2f 39 2f 39 37 20 28 62 75 67 20 66  )..7/9/97 (bug f
230c0 69 78 29 20 43 72 65 61 74 69 6e 67 20 61 6e 6f  ix) Creating ano
230d0 6e 79 6d 6f 75 73 20 69 6e 74 65 72 70 72 65 74  nymous interpret
230e0 65 72 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 73 6d  ers no longer sm
230f0 61 73 68 65 73 20 65 78 69 73 74 69 6e 67 0a 63  ashes existing.c
23100 6f 6d 6d 61 6e 64 73 20 77 69 74 68 20 6e 61 6d  ommands with nam
23110 65 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68  es similar to th
23120 65 20 67 65 6e 65 72 61 74 65 64 20 6e 61 6d 65  e generated name
23130 2e 20 50 72 65 76 69 6f 75 73 6c 79 20 63 72 65  . Previously cre
23140 61 74 69 6e 67 20 61 6e 0a 61 6e 6f 6e 79 6d 6f  ating an.anonymo
23150 75 73 20 69 6e 74 65 72 70 72 65 74 65 72 20 63  us interpreter c
23160 6f 75 6c 64 20 73 6d 61 73 68 20 61 6e 20 65 78  ould smash an ex
23170 69 73 74 69 6e 67 20 63 6f 6d 6d 61 6e 64 2c 20  isting command, 
23180 6e 6f 77 20 69 74 20 73 6b 69 70 73 20 75 6e 74  now it skips unt
23190 69 6c 0a 69 74 20 66 69 6e 64 73 20 61 20 63 6f  il.it finds a co
231a0 6d 6d 61 6e 64 20 6e 61 6d 65 20 74 68 61 74 20  mmand name that 
231b0 69 73 6e 27 74 20 62 65 69 6e 67 20 75 73 65 64  isn't being used
231c0 2e 20 28 4a 4c 29 0a 0a 37 2f 39 2f 39 37 20 28  . (JL)..7/9/97 (
231d0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
231e0 52 65 6d 6f 76 65 64 20 74 68 65 20 70 6f 6c 69  Removed the poli
231f0 63 79 20 6d 61 6e 61 67 65 6d 65 6e 74 20 6d 65  cy management me
23200 63 68 61 6e 69 73 6d 20 66 72 6f 6d 20 74 68 65  chanism from the
23210 0a 53 61 66 65 20 42 61 73 65 3b 20 6c 65 66 74  .Safe Base; left
23220 20 74 68 65 20 61 6c 69 61 73 65 73 20 74 6f 20   the aliases to 
23230 73 6f 75 72 63 65 20 61 6e 64 20 6c 6f 61 64 20  source and load 
23240 6d 6f 64 75 6c 65 73 2c 20 61 6e 64 20 74 6f 20  modules, and to 
23250 64 6f 20 61 20 6c 69 6d 69 74 65 64 0a 66 6f 72  do a limited.for
23260 6d 20 6f 66 20 74 68 65 20 22 66 69 6c 65 22 20  m of the "file" 
23270 63 6f 6d 6d 61 6e 64 2e 20 53 65 65 20 65 6e 74  command. See ent
23280 72 79 20 6f 66 20 31 31 2f 31 35 2f 39 36 2e 20  ry of 11/15/96. 
23290 28 4a 4c 29 0a 0a 37 2f 39 2f 39 37 20 28 62 75  (JL)..7/9/97 (bu
232a0 67 20 66 69 78 65 73 29 20 46 69 78 65 64 20 76  g fixes) Fixed v
232b0 61 72 69 6f 75 73 20 63 6f 6d 70 69 6c 61 74 69  arious compilati
232c0 6f 6e 2d 72 65 6c 61 74 65 64 20 62 75 67 73 3a  on-related bugs:
232d0 0a 20 20 20 20 2d 20 4c 69 6e 65 20 6e 75 6d 62  .    - Line numb
232e0 65 72 73 20 69 6e 20 65 72 72 6f 72 49 6e 66 6f  ers in errorInfo
232f0 20 6e 6f 77 20 61 72 65 20 74 68 65 20 73 61 6d   now are the sam
23300 65 20 61 73 20 74 68 6f 73 65 20 69 6e 20 54 63  e as those in Tc
23310 6c 37 2e 36 20 75 6e 6c 65 73 73 0a 74 68 65 72  l7.6 unless.ther
23320 65 20 61 72 65 20 63 6f 6d 70 69 6c 61 74 69 6f  e are compilatio
23330 6e 20 65 72 72 6f 72 73 2e 20 43 6f 6d 70 69 6c  n errors. Compil
23340 61 74 69 6f 6e 20 65 72 72 6f 72 20 6d 65 73 73  ation error mess
23350 61 67 65 73 20 6e 6f 77 20 69 6e 63 6c 75 64 65  ages now include
23360 20 74 68 65 0a 65 6e 74 69 72 65 20 63 6f 6d 6d   the.entire comm
23370 61 6e 64 20 69 6e 20 65 72 72 6f 72 2e 0a 20 20  and in error..  
23380 20 20 2d 20 54 72 61 69 6c 69 6e 67 20 3a 3a 73    - Trailing ::s
23390 20 61 66 74 65 72 20 6e 61 6d 65 73 70 61 63 65   after namespace
233a0 20 6e 61 6d 65 73 20 77 65 72 65 6e 27 74 20 62   names weren't b
233b0 65 69 6e 67 20 69 67 6e 6f 72 65 64 2e 0a 20 20  eing ignored..  
233c0 20 20 2d 20 43 6f 75 6c 64 20 6e 6f 74 20 72 65    - Could not re
233d0 66 65 72 20 74 6f 20 61 6e 20 6e 61 6d 65 73 70  fer to an namesp
233e0 61 63 65 20 76 61 72 69 61 62 6c 65 20 77 69 74  ace variable wit
233f0 68 20 61 6e 20 65 6d 70 74 79 20 6e 61 6d 65 20  h an empty name 
23400 75 73 69 6e 67 20 61 0a 6e 61 6d 65 20 6f 66 20  using a.name of 
23410 74 68 65 20 66 6f 72 6d 20 22 6e 3a 3a 22 2e 20  the form "n::". 
23420 28 42 4c 29 0a 0a 37 2f 39 2f 39 37 20 28 62 75  (BL)..7/9/97 (bu
23430 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
23440 20 69 6e 20 54 63 6c 5f 45 78 70 6f 72 74 20 74   in Tcl_Export t
23450 68 61 74 20 70 72 65 76 65 6e 74 65 64 20 79 6f  hat prevented yo
23460 75 20 66 72 6f 6d 20 65 78 70 6f 72 74 69 6e 67  u from exporting
23470 0a 66 72 6f 6d 20 6f 74 68 65 72 20 74 68 61 6e  .from other than
23480 20 74 68 65 20 63 75 72 72 65 6e 74 20 6e 61 6d   the current nam
23490 65 73 70 61 63 65 2e 20 28 42 4c 29 0a 0a 37 2f  espace. (BL)..7/
234a0 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 65  9/97 (bug fix) e
234b0 6e 76 2e 74 65 73 74 20 77 61 73 20 72 65 6d 6f  nv.test was remo
234c0 76 69 6e 67 20 65 6e 76 20 76 61 72 20 6e 65 65  ving env var nee
234d0 64 65 64 20 66 6f 72 20 70 72 6f 70 65 72 20 66  ded for proper f
234e0 69 6e 64 69 6e 67 0a 6f 66 20 6c 69 62 72 61 72  inding.of librar
234f0 69 65 73 20 69 6e 20 63 68 69 6c 64 20 70 72 6f  ies in child pro
23500 63 65 73 73 2e 20 28 44 4c 29 0a 0a 37 2f 31 30  cess. (DL)..7/10
23510 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 2f 6e  /97 (bug fixes/n
23520 65 77 20 66 65 61 74 75 72 65 29 20 43 6c 65 61  ew feature) Clea
23530 6e 75 70 20 69 6e 20 54 63 6c 5f 4d 61 6b 65 53  nup in Tcl_MakeS
23540 61 66 65 2e 20 4c 65 73 73 20 69 6e 66 6f 72 6d  afe. Less inform
23550 61 74 69 6f 6e 0a 69 73 20 6c 65 61 6b 65 64 20  ation.is leaked 
23560 74 6f 20 73 61 66 65 20 69 6e 74 65 72 70 73 2e  to safe interps.
23570 20 45 72 72 6f 72 20 6d 65 73 73 61 67 65 20 66   Error message f
23580 69 78 65 73 20 66 6f 72 20 69 6e 74 65 72 70 20  ixes for interp 
23590 73 75 62 20 63 6f 6d 6d 61 6e 64 73 2e 0a 4c 69  sub commands..Li
235a0 6b 65 77 69 73 65 20 63 68 61 6e 67 65 73 20 69  kewise changes i
235b0 6e 20 73 61 66 65 61 6c 69 61 73 2e 74 63 6c 3b  n safealias.tcl;
235c0 20 74 63 6c 5f 73 61 66 65 43 72 65 61 74 65 49   tcl_safeCreateI
235d0 6e 74 65 72 70 20 63 61 6e 20 6e 6f 77 20 62 65  nterp can now be
235e0 20 63 61 6c 6c 65 64 0a 77 69 74 68 6f 75 74 20   called.without 
235f0 61 72 67 75 6d 65 6e 74 20 74 6f 20 67 65 6e 65  argument to gene
23600 72 61 74 65 20 74 68 65 20 73 6c 61 76 65 20 6e  rate the slave n
23610 61 6d 65 20 28 6c 69 6b 65 20 69 6e 20 69 6e 74  ame (like in int
23620 65 72 70 20 63 72 65 61 74 65 29 2e 20 28 44 4c  erp create). (DL
23630 29 0a 0a 37 2f 31 30 2f 39 37 20 28 62 75 67 20  )..7/10/97 (bug 
23640 66 69 78 65 73 29 20 42 79 74 65 63 6f 64 65 20  fixes) Bytecode 
23650 63 6f 6d 70 69 6c 65 72 20 6e 6f 77 20 67 65 6e  compiler now gen
23660 65 72 61 74 65 73 20 6d 6f 72 65 20 64 65 74 61  erates more deta
23670 69 6c 65 64 0a 63 6f 6d 6d 61 6e 64 20 6c 6f 63  iled.command loc
23680 61 74 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f  ation informatio
23690 6e 3a 20 73 75 62 63 6f 6d 6d 61 6e 64 73 20 61  n: subcommands a
236a0 73 20 77 65 6c 6c 20 61 73 20 63 6f 6d 6d 61 6e  s well as comman
236b0 64 73 20 6e 6f 77 20 68 61 76 65 0a 6c 6f 63 61  ds now have.loca
236c0 74 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  tion information
236d0 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 63 6f 6d  . This means com
236e0 6d 61 6e 64 20 74 72 61 63 65 20 70 72 6f 63 65  mand trace proce
236f0 64 75 72 65 73 20 6e 6f 77 20 67 65 74 20 74 68  dures now get th
23700 65 0a 63 6f 72 72 65 63 74 20 73 6f 75 72 63 65  e.correct source
23710 20 73 74 72 69 6e 67 20 66 6f 72 20 65 61 63 68   string for each
23720 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 74 68 65 69   command in thei
23730 72 20 63 6f 6d 6d 61 6e 64 20 70 61 72 61 6d 65  r command parame
23740 74 65 72 2e 20 28 42 4c 29 0a 0a 37 2f 32 32 2f  ter. (BL)..7/22/
23750 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20 50  97 (bug fixes) P
23760 65 72 66 6f 72 6d 61 6e 63 65 20 69 6d 70 72 6f  erformance impro
23770 76 65 6d 65 6e 74 20 69 6e 20 53 61 66 65 20 69  vement in Safe i
23780 6e 74 65 72 70 72 65 74 65 72 73 0a 68 61 6e 64  nterpreters.hand
23790 6c 69 6e 67 2e 20 41 64 64 65 64 20 6e 65 77 20  ling. Added new 
237a0 6d 61 73 6b 20 76 61 6c 75 65 20 74 6f 20 28 74  mask value to (t
237b0 63 6c 49 6e 74 2e 68 29 20 49 6e 74 65 72 70 2e  clInt.h) Interp.
237c0 66 6c 61 67 73 20 72 65 63 6f 72 64 2e 20 28 44  flags record. (D
237d0 4c 29 0a 0a 37 2f 32 32 2f 39 37 20 28 62 75 67  L)..7/22/97 (bug
237e0 20 66 69 78 29 20 46 69 78 65 64 20 70 61 6e 69   fix) Fixed pani
237f0 63 20 69 6e 20 27 69 6e 74 65 72 70 20 74 61 72  c in 'interp tar
23800 67 65 74 20 7b 7d 20 66 6f 6f 27 2e 20 54 68 69  get {} foo'. Thi
23810 73 20 62 75 67 0a 77 61 73 20 70 72 65 73 65 6e  s bug.was presen
23820 74 20 73 69 6e 63 65 20 54 63 6c 20 37 2e 36 2e  t since Tcl 7.6.
23830 20 28 4a 4c 29 0a 0a 37 2f 32 32 2f 39 37 20 28   (JL)..7/22/97 (
23840 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
23850 75 67 20 69 6e 20 63 6f 6d 70 69 6c 61 74 69 6f  ug in compilatio
23860 6e 20 6f 66 20 70 72 6f 63 65 64 75 72 65 73 20  n of procedures 
23870 69 6e 20 6e 61 6d 65 73 70 61 63 65 73 3a 20 74  in namespaces: t
23880 68 65 0a 70 72 6f 63 65 64 75 72 65 27 73 20 6e  he.procedure's n
23890 61 6d 65 73 70 61 63 65 20 6d 75 73 74 20 62 65  amespace must be
238a0 20 75 73 65 64 20 74 6f 20 6c 6f 6f 6b 20 75 70   used to look up
238b0 20 63 6f 6d 70 69 6c 65 20 70 72 6f 63 65 64 75   compile procedu
238c0 72 65 73 2c 20 6e 6f 74 20 74 68 65 0a 63 75 72  res, not the.cur
238d0 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2e 20  rent namespace. 
238e0 28 42 4c 29 0a 0a 37 2f 32 32 2f 39 37 20 28 62  (BL)..7/22/97 (b
238f0 75 67 20 66 69 78 29 20 55 73 65 20 6f 66 20 74  ug fix) Use of t
23900 68 65 20 2d 63 68 61 6e 6e 65 6c 20 6f 70 74 69  he -channel opti
23910 6f 6e 20 6f 66 20 68 74 74 70 5f 67 65 74 20 77  on of http_get w
23920 61 73 20 6e 6f 74 20 73 65 74 74 69 6e 67 0a 74  as not setting.t
23930 68 65 20 65 6e 64 20 6f 66 20 6c 69 6e 65 20 74  he end of line t
23940 72 61 6e 73 6c 61 74 69 6f 6e 73 20 6d 6f 64 65  ranslations mode
23950 20 6f 6e 20 74 68 65 20 63 68 61 6e 6e 65 6c 2c   on the channel,
23960 20 73 6f 20 63 6f 70 79 69 6e 67 20 62 69 6e 61   so copying bina
23970 72 79 20 64 61 74 61 0a 77 69 74 68 20 74 68 65  ry data.with the
23980 20 2d 63 68 61 6e 6e 65 6c 20 6f 70 74 69 6f 6e   -channel option
23990 20 77 61 73 20 63 6f 72 72 75 70 74 69 6e 67 20   was corrupting 
239a0 74 68 65 20 72 65 73 75 6c 74 20 6f 6e 20 6e 6f  the result on no
239b0 6e 2d 75 6e 69 78 20 70 6c 61 74 66 6f 72 6d 73  n-unix platforms
239c0 2e 20 28 42 57 29 0a 0a 37 2f 32 32 2f 39 37 20  . (BW)..7/22/97 
239d0 28 62 75 67 20 66 69 78 65 73 29 20 66 69 6c 65  (bug fixes) file
239e0 20 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 7e 75   commands and ~u
239f0 73 65 72 20 28 73 65 67 20 66 61 75 6c 74 20 61  ser (seg fault a
23a00 6e 64 20 6f 74 68 65 72 0a 69 6d 70 72 6f 70 65  nd other.imprope
23a10 72 20 72 65 74 75 72 6e 73 29 2e 20 28 44 4c 29  r returns). (DL)
23a20 0a 0a 37 2f 32 33 2f 39 37 20 28 66 65 61 74 75  ..7/23/97 (featu
23a30 72 65 20 63 68 61 6e 67 65 29 20 52 65 65 6e 61  re change) Reena
23a40 62 6c 65 64 20 22 76 77 61 69 74 22 20 69 6e 20  bled "vwait" in 
23a50 53 61 66 65 20 42 61 73 65 2e 20 28 4a 4c 29 0a  Safe Base. (JL).
23a60 0a 37 2f 32 33 2f 39 37 20 28 62 75 67 20 66 69  .7/23/97 (bug fi
23a70 78 65 73 29 20 46 69 78 65 64 20 74 77 6f 20 62  xes) Fixed two b
23a80 75 67 73 20 69 6e 76 6f 6c 76 69 6e 67 20 72 65  ugs involving re
23a90 61 64 20 74 72 61 63 65 73 20 6f 6e 20 61 72 72  ad traces on arr
23aa0 61 79 20 76 61 72 69 61 62 6c 65 73 0a 69 6e 20  ay variables.in 
23ab0 70 72 6f 63 65 64 75 72 65 73 3a 20 74 72 61 63  procedures: trac
23ac0 65 20 70 72 6f 63 65 64 75 72 65 73 20 77 65 72  e procedures wer
23ad0 65 20 73 6f 6d 65 74 69 6d 65 73 20 6e 6f 74 20  e sometimes not 
23ae0 63 61 6c 6c 65 64 2c 20 61 6e 64 20 72 65 61 64  called, and read
23af0 69 6e 67 0a 6e 6f 6e 65 78 69 73 74 61 6e 74 20  ing.nonexistant 
23b00 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 64  array elements d
23b10 69 64 6e 27 74 20 63 72 65 61 74 65 20 75 6e 64  idn't create und
23b20 65 66 69 6e 65 64 20 65 6c 65 6d 65 6e 74 20 76  efined element v
23b30 61 72 69 61 62 6c 65 73 20 74 68 61 74 0a 63 6f  ariables that.co
23b40 75 6c 64 20 6c 61 74 65 72 20 62 65 20 64 65 66  uld later be def
23b50 69 6e 65 64 20 62 79 20 74 72 61 63 65 20 70 72  ined by trace pr
23b60 6f 63 65 64 75 72 65 73 2e 20 28 42 4c 29 0a 0a  ocedures. (BL)..
23b70 37 2f 32 34 2f 39 37 20 28 62 75 67 20 66 69 78  7/24/97 (bug fix
23b80 29 20 57 69 6e 64 6f 77 73 20 6d 65 6d 6f 72 79  ) Windows memory
23b90 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 70 65 72 66   allocation perf
23ba0 6f 72 6d 61 6e 63 65 20 77 61 73 0a 73 75 70 65  ormance was.supe
23bb0 72 6c 69 6e 65 61 72 20 69 6e 20 73 6f 6d 65 20  rlinear in some 
23bc0 63 61 73 65 73 2e 20 20 4d 61 64 65 20 74 68 65  cases.  Made the
23bd0 20 4d 61 63 20 61 6c 6c 6f 63 61 74 6f 72 20 67   Mac allocator g
23be0 65 6e 65 72 69 63 20 61 6e 64 20 63 68 61 6e 67  eneric and chang
23bf0 65 64 0a 62 6f 74 68 20 74 68 65 20 4d 61 63 20  ed.both the Mac 
23c00 61 6e 64 20 57 69 6e 64 6f 77 73 20 70 6c 61 74  and Windows plat
23c10 66 6f 72 6d 73 20 74 6f 20 75 73 65 20 74 68 65  forms to use the
23c20 20 6e 65 77 20 61 6c 6c 6f 63 61 74 6f 72 20 69   new allocator i
23c30 6e 73 74 65 61 64 20 6f 66 0a 6d 61 6c 6c 6f 63  nstead of.malloc
23c40 20 61 6e 64 20 66 72 65 65 2e 20 28 53 53 29 0a   and free. (SS).
23c50 0a 37 2f 32 34 2f 39 37 20 2d 20 38 2f 31 32 2f  .7/24/97 - 8/12/
23c60 39 37 20 28 62 75 67 20 66 69 78 65 73 2f 63 68  97 (bug fixes/ch
23c70 61 6e 67 65 20 6f 66 20 66 65 61 74 75 72 65 73  ange of features
23c80 29 20 43 6f 6d 70 6c 65 74 65 6c 79 20 72 65 76  ) Completely rev
23c90 61 6d 70 65 64 20 73 61 66 65 0a 73 6f 75 72 63  amped safe.sourc
23ca0 69 6e 67 2f 6c 6f 61 64 69 6e 67 20 28 73 65 65  ing/loading (see
23cb0 20 73 61 66 65 2e 6e 29 20 74 6f 20 68 69 64 65   safe.n) to hide
23cc0 20 70 61 74 68 6e 61 6d 65 73 2c 20 75 73 65 20   pathnames, use 
23cd0 76 69 72 74 75 61 6c 0a 70 61 74 68 73 20 74 6f  virtual.paths to
23ce0 6b 65 6e 73 20 69 6e 73 74 65 61 64 2c 20 69 6d  kens instead, im
23cf0 70 72 6f 76 65 64 20 73 65 63 75 72 69 74 79 20  proved security 
23d00 69 6e 20 73 65 76 65 72 61 6c 20 72 65 73 70 65  in several respe
23d10 63 74 73 20 61 6e 64 20 6d 61 64 65 20 69 74 0a  cts and made it.
23d20 6d 6f 72 65 20 74 75 6e 61 62 6c 65 2e 20 4d 75  more tunable. Mu
23d30 6c 74 69 20 6c 65 76 65 6c 20 69 6e 74 65 72 70  lti level interp
23d40 20 6c 6f 61 64 69 6e 67 20 63 61 6e 20 77 6f 72   loading can wor
23d50 6b 20 74 6f 6f 20 6e 6f 77 2e 20 50 61 63 6b 61  k too now. Packa
23d60 67 65 20 61 75 74 6f 0a 6c 6f 61 64 69 6e 67 20  ge auto.loading 
23d70 6e 6f 77 20 77 6f 72 6b 73 20 69 6e 20 73 61 66  now works in saf
23d80 65 20 69 6e 74 65 72 70 73 20 61 73 20 6c 6f 6e  e interps as lon
23d90 67 20 61 73 20 74 68 65 20 70 61 63 6b 61 67 65  g as the package
23da0 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 69 6e   directory is in
23db0 0a 74 68 65 20 61 75 74 6f 5f 70 61 74 68 20 28  .the auto_path (
23dc0 6e 6f 20 64 65 65 70 20 63 72 61 77 6c 69 6e 67  no deep crawling
23dd0 20 61 6c 6c 6f 77 65 64 20 69 6e 20 73 61 66 65   allowed in safe
23de0 20 69 6e 74 65 72 70 73 29 2e 20 28 44 4c 29 0a   interps). (DL).
23df0 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
23e00 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
23e10 74 68 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68  th previous alph
23e20 61 20 61 6e 64 20 62 65 74 61 20 72 65 6c 65 61  a and beta relea
23e30 73 65 73 20 2a 2a 2a 0a 0a 37 2f 32 34 2f 39 37  ses ***..7/24/97
23e40 20 28 62 75 67 20 66 69 78 65 73 29 20 4d 61 64   (bug fixes) Mad
23e50 65 20 54 63 6c 5f 53 65 74 56 61 72 2a 20 61 6e  e Tcl_SetVar* an
23e60 64 20 54 63 6c 5f 4e 65 77 53 74 72 69 6e 67 2a  d Tcl_NewString*
23e70 20 74 72 65 61 74 20 61 20 4e 55 4c 4c 20 76 61   treat a NULL va
23e80 6c 75 65 0a 61 73 20 61 6e 20 65 6d 70 74 79 20  lue.as an empty 
23e90 73 74 72 69 6e 67 2e 20 28 54 68 69 73 20 66 69  string. (This fi
23ea0 78 65 73 20 68 61 69 72 79 20 63 72 61 73 68 20  xes hairy crash 
23eb0 63 61 73 65 20 77 68 65 72 65 20 79 6f 75 20 77  case where you w
23ec0 6f 75 6c 64 20 63 72 61 73 68 0a 62 65 63 61 75  ould crash.becau
23ed0 73 65 20 6c 6f 61 64 20 63 6f 6d 6d 61 6e 64 20  se load command 
23ee0 66 6f 72 20 6f 74 68 65 72 20 69 6e 74 65 72 70  for other interp
23ef0 73 20 61 73 73 75 6d 65 64 20 70 72 65 73 65 6e  s assumed presen
23f00 63 65 20 6f 66 0a 65 72 72 6f 72 49 6e 66 6f 2e  ce of.errorInfo.
23f10 2e 2e 29 2e 20 28 44 4c 29 0a 0a 37 2f 32 38 2f  ..). (DL)..7/28/
23f20 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
23f30 65 64 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74  ed pkg_mkIndex t
23f40 6f 20 75 6e 64 65 72 73 74 61 6e 64 20 6e 61 6d  o understand nam
23f50 65 73 70 61 63 65 73 2e 20 20 49 74 20 77 69 6c  espaces.  It wil
23f60 6c 0a 75 73 65 20 74 68 65 20 65 78 70 6f 72 74  l.use the export
23f70 20 6c 69 73 74 20 6f 66 20 61 20 6e 61 6d 65 73   list of a names
23f80 70 61 63 65 20 61 6e 64 20 63 72 65 61 74 65 20  pace and create 
23f90 61 75 74 6f 5f 69 6e 64 65 78 20 65 6e 74 72 69  auto_index entri
23fa0 65 73 20 66 6f 72 0a 61 6c 6c 20 65 78 70 6f 72  es for.all expor
23fb0 74 20 63 6f 6d 6d 61 6e 64 73 2e 20 20 54 68 6f  t commands.  Tho
23fc0 73 65 20 6e 61 6d 65 73 20 61 72 65 20 69 6e 20  se names are in 
23fd0 74 68 65 69 72 20 66 75 6c 6c 79 20 71 75 61 6c  their fully qual
23fe0 69 66 69 65 64 20 66 6f 72 6d 20 69 6e 20 74 68  ified form in th
23ff0 65 0a 61 75 74 6f 5f 69 6e 64 65 78 2e 20 20 54  e.auto_index.  T
24000 68 65 72 65 66 6f 72 65 2c 20 49 20 74 77 65 61  herefore, I twea
24010 6b 65 64 20 75 6e 6b 6e 6f 77 6e 20 74 6f 20 74  ked unknown to t
24020 72 79 20 62 6f 74 68 20 24 63 6d 64 20 61 6e 64  ry both $cmd and
24030 20 3a 3a 24 63 6d 64 2e 0a 41 6c 73 6f 20 66 69   ::$cmd..Also fi
24040 78 65 64 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20  xed pkg_mkIndex 
24050 73 6f 20 79 6f 75 20 63 61 6e 20 68 61 76 65 20  so you can have 
24060 22 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65  "package require
24070 22 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 73 69 64  " commands insid
24080 65 0a 79 6f 75 72 20 70 61 63 6b 61 67 65 73 2e  e.your packages.
24090 20 20 54 68 65 73 65 20 63 6f 6d 6d 61 6e 64 73    These commands
240a0 20 61 72 65 20 69 67 6e 6f 72 65 64 2c 20 77 68   are ignored, wh
240b0 69 63 68 20 69 73 20 6d 6f 73 74 6c 79 20 6f 6b  ich is mostly ok
240c0 20 65 78 63 65 70 74 0a 77 68 65 6e 20 79 6f 75   except.when you
240d0 20 6d 75 73 74 20 6c 6f 61 64 20 61 6e 6f 74 68   must load anoth
240e0 65 72 20 70 61 63 6b 61 67 65 20 62 65 66 6f 72  er package befor
240f0 65 20 6c 6f 61 64 69 6e 67 20 79 6f 75 72 73 20  e loading yours 
24100 62 65 63 61 75 73 65 20 6f 66 0a 6c 69 6e 6b 69  because of.linki
24110 6e 67 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e  ng dependencies.
24120 20 28 42 57 29 0a 0a 37 2f 32 38 2f 39 37 20 28   (BW)..7/28/97 (
24130 62 75 67 20 66 69 78 29 20 41 20 76 61 72 69 61  bug fix) A varia
24140 62 6c 65 20 63 72 65 61 74 65 64 20 62 79 20 74  ble created by t
24150 68 65 20 76 61 72 69 61 62 6c 65 20 63 6f 6d 6d  he variable comm
24160 61 6e 64 20 6e 6f 77 20 70 65 72 73 69 73 74 73  and now persists
24170 0a 75 6e 74 69 6c 20 74 68 65 20 6e 61 6d 65 73  .until the names
24180 70 61 63 65 20 69 73 20 64 65 73 74 72 6f 79 65  pace is destroye
24190 64 20 6f 72 20 74 68 65 20 76 61 72 69 61 62 6c  d or the variabl
241a0 65 20 69 73 20 75 6e 73 65 74 2e 20 54 68 69 73  e is unset. This
241b0 20 69 73 20 74 72 75 65 20 65 76 65 6e 0a 69 66   is true even.if
241c0 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 68 61   the variable ha
241d0 73 20 6e 6f 74 20 62 65 65 6e 20 69 6e 69 74 69  s not been initi
241e0 61 6c 69 7a 65 64 3b 20 74 68 65 73 65 20 76 61  alized; these va
241f0 72 69 61 62 6c 65 73 20 75 73 65 64 20 74 6f 20  riables used to 
24200 62 65 0a 64 65 73 74 72 6f 79 65 64 20 69 66 20  be.destroyed if 
24210 61 6e 20 65 72 72 6f 72 20 6f 63 63 75 72 72 65  an error occurre
24220 64 20 77 68 65 6e 20 61 63 63 65 73 73 69 6e 67  d when accessing
24230 20 74 68 65 6d 2e 20 49 6e 20 61 64 64 69 74 69   them. In additi
24240 6f 6e 2c 20 74 68 65 20 22 69 6e 66 6f 0a 76 61  on, the "info.va
24250 72 73 22 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74  rs" command list
24260 73 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20  s uninitialized 
24270 6e 61 6d 65 73 70 61 63 65 20 76 61 72 69 61 62  namespace variab
24280 6c 65 73 2c 20 77 68 69 6c 65 20 74 68 65 20 22  les, while the "
24290 69 6e 66 6f 0a 65 78 69 73 74 73 22 20 63 6f 6d  info.exists" com
242a0 6d 61 6e 64 20 72 65 74 75 72 6e 73 20 30 20 66  mand returns 0 f
242b0 6f 72 20 74 68 65 6d 2e 20 28 42 4c 29 0a 0a 37  or them. (BL)..7
242c0 2f 32 39 2f 39 37 20 28 66 65 61 74 75 72 65 20  /29/97 (feature 
242d0 63 68 61 6e 67 65 29 20 20 43 68 61 6e 67 65 64  change)  Changed
242e0 20 74 68 65 20 68 74 74 70 20 70 61 63 6b 61 67   the http packag
242f0 65 20 74 6f 20 75 73 65 20 74 68 65 20 3a 3a 68  e to use the ::h
24300 74 74 70 0a 6e 61 6d 65 73 70 61 63 65 2e 20 68  ttp.namespace. h
24310 74 74 70 5f 67 65 74 20 72 65 6e 61 6d 65 64 20  ttp_get renamed 
24320 74 6f 20 68 74 74 70 3a 3a 67 65 74 75 72 6c 2c  to http::geturl,
24330 20 68 74 74 70 5f 63 6f 6e 66 69 67 20 72 65 6e   http_config ren
24340 61 6d 65 64 20 74 6f 0a 68 74 74 70 3a 3a 63 6f  amed to.http::co
24350 6e 66 69 67 2c 20 68 74 74 70 5f 66 6f 72 6d 61  nfig, http_forma
24360 74 51 75 65 72 79 20 72 65 6e 61 6d 65 64 20 74  tQuery renamed t
24370 6f 20 68 74 74 70 3a 3a 66 6f 72 6d 61 74 51 75  o http::formatQu
24380 65 72 79 2e 0a 49 74 20 6e 6f 77 20 70 72 6f 76  ery..It now prov
24390 69 64 65 73 20 74 68 65 20 32 2e 30 20 76 65 72  ides the 2.0 ver
243a0 73 69 6f 6e 20 6f 66 20 74 68 65 20 70 61 63 6b  sion of the pack
243b0 61 67 65 2e 0a 54 68 65 20 31 2e 30 20 76 65 72  age..The 1.0 ver
243c0 73 69 6f 6e 20 69 73 20 73 74 69 6c 6c 20 61 76  sion is still av
243d0 61 69 6c 61 62 6c 65 20 77 69 74 68 20 74 68 65  ailable with the
243e0 20 6f 6c 64 20 6e 61 6d 65 73 2e 0a 2a 2a 2a 20   old names..*** 
243f0 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
24400 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54  ATIBILITY with T
24410 63 6c 20 38 2e 30 62 32 20 62 75 74 20 6e 6f 74  cl 8.0b2 but not
24420 20 77 69 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a   with Tcl 7.6 **
24430 2a 0a 0a 37 2f 32 39 2f 39 37 20 28 62 75 67 20  *..7/29/97 (bug 
24440 66 69 78 2c 20 6e 65 77 20 66 65 61 74 75 72 65  fix, new feature
24450 29 20 54 63 6c 5f 4d 61 69 6e 20 6e 6f 77 20 75  ) Tcl_Main now u
24460 73 65 73 20 54 63 6c 20 6f 62 6a 65 63 74 73 20  ses Tcl objects 
24470 69 6e 74 65 72 6e 61 6c 6c 79 20 74 6f 0a 70 72  internally to.pr
24480 65 73 65 72 76 65 20 4e 55 4c 4c 73 20 69 6e 20  eserve NULLs in 
24490 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 63 6f 6d  commands and com
244a0 6d 61 6e 64 20 6f 75 74 70 75 74 2e 20 41 64 64  mand output. Add
244b0 65 64 20 6e 65 77 20 41 50 49 20 70 72 6f 63 65  ed new API proce
244c0 64 75 72 65 0a 54 63 6c 5f 52 65 63 6f 72 64 41  dure.Tcl_RecordA
244d0 6e 64 45 76 61 6c 4f 62 6a 20 74 68 61 74 20 72  ndEvalObj that r
244e0 65 73 65 6d 62 6c 65 73 20 54 63 6c 5f 52 65 63  esembles Tcl_Rec
244f0 6f 72 64 41 6e 64 45 76 61 6c 20 62 75 74 20 74  ordAndEval but t
24500 61 6b 65 73 20 61 6e 20 6f 62 6a 65 63 74 0a 63  akes an object.c
24510 6f 6e 74 61 69 6e 69 6e 67 20 61 20 63 6f 6d 6d  ontaining a comm
24520 61 6e 64 2e 20 28 42 4c 29 0a 0a 37 2f 33 30 2f  and. (BL)..7/30/
24530 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63 6c  97 (bug fix) Tcl
24540 20 66 72 65 65 64 20 73 74 72 69 6e 67 73 20 69   freed strings i
24550 6e 20 74 68 65 20 65 6e 76 69 72 6f 6e 20 61 72  n the environ ar
24560 72 61 79 20 65 76 65 6e 20 69 66 20 69 74 0a 64  ray even if it.d
24570 69 64 20 6e 6f 74 20 61 6c 6c 6f 63 61 74 65 20  id not allocate 
24580 74 68 65 6d 2e 20 28 53 53 29 0a 0a 37 2f 33 30  them. (SS)..7/30
24590 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 49 66  /97 (bug fix) If
245a0 20 61 20 70 72 6f 63 65 64 75 72 65 20 69 73 20   a procedure is 
245b0 72 65 6e 61 6d 65 64 20 69 6e 74 6f 20 61 20 64  renamed into a d
245c0 69 66 66 65 72 65 6e 74 20 6e 61 6d 65 73 70 61  ifferent namespa
245d0 63 65 2c 20 69 74 0a 6e 6f 77 20 65 78 65 63 75  ce, it.now execu
245e0 74 65 73 20 69 6e 20 74 68 65 20 63 6f 6e 74 65  tes in the conte
245f0 78 74 20 6f 66 20 74 68 61 74 20 6e 61 6d 65 73  xt of that names
24600 70 61 63 65 2e 20 28 42 4c 29 0a 0a 37 2f 33 30  pace. (BL)..7/30
24610 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 50 72  /97 (bug fix) Pr
24620 65 76 65 6e 74 20 72 65 6e 61 6d 69 6e 67 20 6f  event renaming o
24630 66 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 74 6f 20  f commands into 
24640 61 6e 64 20 66 72 6f 6d 20 6e 61 6d 65 73 70 61  and from namespa
24650 63 65 73 20 61 73 0a 70 61 72 74 20 6f 66 20 68  ces as.part of h
24660 69 64 69 6e 67 20 74 68 65 6d 2e 20 28 4a 4c 29  iding them. (JL)
24670 0a 0a 37 2f 33 31 2f 39 37 20 28 66 65 61 74 75  ..7/31/97 (featu
24680 72 65 20 63 68 61 6e 67 65 29 20 4d 6f 76 65 64  re change) Moved
24690 20 74 68 65 20 68 69 73 74 6f 72 79 20 63 6f 6d   the history com
246a0 6d 61 6e 64 20 66 72 6f 6d 20 43 20 74 6f 20 74  mand from C to t
246b0 63 6c 2e 0a 54 68 69 73 20 75 73 65 73 20 74 68  cl..This uses th
246c0 65 20 3a 3a 68 69 73 74 6f 72 79 20 6e 61 6d 65  e ::history name
246d0 73 70 61 63 65 2e 20 20 54 68 65 20 22 77 6f 72  space.  The "wor
246e0 64 73 22 20 61 6e 64 20 22 73 75 62 73 74 69 74  ds" and "substit
246f0 75 74 65 22 20 6f 70 74 69 6f 6e 73 0a 61 72 65  ute" options.are
24700 20 6e 6f 20 6c 6f 6e 67 65 72 20 73 75 70 70 6f   no longer suppo
24710 72 74 65 64 2e 20 20 49 6e 20 61 64 64 69 74 69  rted.  In additi
24720 6f 6e 2c 20 74 68 65 20 22 6b 65 65 70 22 20 6f  on, the "keep" o
24730 70 74 69 6f 6e 20 77 69 74 68 6f 75 74 20 61 20  ption without a 
24740 76 61 6c 75 65 0a 72 65 74 75 72 6e 73 20 74 68  value.returns th
24750 65 20 63 75 72 72 65 6e 74 20 6b 65 65 70 20 6c  e current keep l
24760 69 6d 69 74 2e 20 20 54 68 65 72 65 20 69 73 20  imit.  There is 
24770 61 20 6e 65 77 20 22 63 6c 65 61 72 22 20 6f 70  a new "clear" op
24780 74 69 6f 6e 2e 0a 54 68 65 20 75 6e 6b 6e 6f 77  tion..The unknow
24790 6e 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 73 75  n command now su
247a0 70 70 6f 72 74 73 20 21 21 20 61 67 61 69 6e 2e  pports !! again.
247b0 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BW).*** POTENT
247c0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
247d0 54 59 20 20 2a 2a 2a 0a 0a 37 2f 33 30 2f 39 37  TY  ***..7/30/97
247e0 20 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20   (bug fix) Made 
247f0 73 75 72 65 20 74 68 61 74 20 61 20 73 6c 61 76  sure that a slav
24800 65 20 63 61 6e 20 6e 6f 74 20 66 6f 6f 6c 20 74  e can not fool t
24810 68 65 20 6d 61 73 74 65 72 20 69 6e 74 6f 0a 68  he master into.h
24820 69 64 69 6e 67 20 74 68 65 20 77 72 6f 6e 67 20  iding the wrong 
24830 63 6f 6d 6d 61 6e 64 2e 20 4d 61 64 65 20 73 75  command. Made su
24840 72 65 20 77 65 20 64 6f 6e 27 74 20 63 72 61 73  re we don't cras
24850 68 20 69 6e 20 68 69 64 69 6e 67 20 2b 20 6e 61  h in hiding + na
24860 6d 65 73 70 61 63 65 73 0a 69 73 73 75 65 73 2e  mespaces.issues.
24870 20 28 44 4c 29 0a 0a 38 2f 34 2f 39 37 20 28 62   (DL)..8/4/97 (b
24880 75 67 20 66 69 78 29 20 43 6f 6e 63 61 74 2c 20  ug fix) Concat, 
24890 65 76 61 6c 2c 20 75 70 6c 65 76 65 6c 2c 20 61  eval, uplevel, a
248a0 6e 64 20 73 69 6d 69 6c 61 72 20 63 6f 6d 6d 61  nd similar comma
248b0 6e 64 73 20 77 65 72 65 0a 69 6e 63 6f 72 72 65  nds were.incorre
248c0 63 74 6c 79 20 74 72 69 6d 6d 69 6e 67 20 74 72  ctly trimming tr
248d0 61 69 6c 69 6e 67 20 73 70 61 63 65 20 63 68 61  ailing space cha
248e0 72 61 63 74 65 72 73 20 66 72 6f 6d 20 74 68 65  racters from the
248f0 69 72 20 61 72 67 75 6d 65 6e 74 73 0a 65 76 65  ir arguments.eve
24900 6e 20 77 68 65 6e 20 74 68 65 20 73 70 61 63 65  n when the space
24910 20 63 68 61 72 61 63 74 65 72 73 20 77 65 72 65   characters were
24920 20 70 72 65 63 65 64 65 64 20 62 79 20 61 20 62   preceded by a b
24930 61 63 6b 73 6c 61 73 68 2e 20 28 4a 4f 29 0a 0a  ackslash. (JO)..
24940 38 2f 34 2f 39 37 20 28 62 75 67 20 66 69 78 29  8/4/97 (bug fix)
24950 20 52 65 6d 6f 76 65 64 20 74 68 65 20 68 61 72   Removed the har
24960 64 20 6c 69 6e 6b 20 62 65 74 77 65 65 6e 20 62  d link between b
24970 67 65 72 72 6f 72 20 61 6e 64 20 74 6b 65 72 72  gerror and tkerr
24980 6f 72 2e 0a 4f 6e 6c 79 20 62 67 65 72 72 6f 72  or..Only bgerror
24990 20 69 73 20 73 75 70 70 6f 72 74 65 64 20 69 6e   is supported in
249a0 20 74 63 6c 20 63 6f 72 65 2e 20 54 6b 20 77 69   tcl core. Tk wi
249b0 6c 6c 20 73 74 69 6c 6c 20 6c 6f 6f 6b 20 66 6f  ll still look fo
249c0 72 20 61 0a 74 6b 65 72 72 6f 72 20 62 75 74 20  r a.tkerror but 
249d0 75 73 69 6e 67 20 72 65 67 75 6c 61 72 20 74 63  using regular tc
249e0 6c 20 63 6f 64 65 20 66 6f 72 20 74 68 61 74 20  l code for that 
249f0 66 65 61 74 75 72 65 2e 20 28 44 4c 29 0a 2a 2a  feature. (DL).**
24a00 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
24a10 4d 50 41 54 49 42 49 4c 54 59 20 77 69 74 68 20  MPATIBILTY with 
24a20 63 6f 64 65 20 72 65 6c 79 69 6e 67 20 6f 6e 20  code relying on 
24a30 74 68 65 20 68 61 72 64 20 6c 69 6e 6b 20 2a 2a  the hard link **
24a40 2a 0a 0a 38 2f 36 2f 39 37 20 28 62 75 67 20 66  *..8/6/97 (bug f
24a50 69 78 29 20 52 65 64 75 63 65 64 20 73 69 7a 65  ix) Reduced size
24a60 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 63 6f   required for co
24a70 6d 70 69 6c 65 64 20 62 79 74 65 63 6f 64 65 73  mpiled bytecodes
24a80 20 62 79 20 75 73 69 6e 67 20 61 0a 6d 6f 72 65   by using a.more
24a90 20 63 6f 6d 70 61 63 74 20 65 6e 63 6f 64 69 6e   compact encodin
24aa0 67 20 66 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e  g for the comman
24ab0 64 20 70 63 2d 74 6f 2d 73 6f 75 72 63 65 20 6d  d pc-to-source m
24ac0 61 70 2e 20 28 42 4c 29 0a 0a 38 2f 36 2f 39 37  ap. (BL)..8/6/97
24ad0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
24ae0 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
24af0 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70   additional comp
24b00 69 6c 61 74 69 6f 6e 20 61 6e 64 20 65 78 65 63  ilation and exec
24b10 75 74 69 6f 6e 0a 73 74 61 74 69 73 74 69 63 73  ution.statistics
24b20 20 77 68 65 6e 20 54 63 6c 20 69 73 20 63 6f 6d   when Tcl is com
24b30 70 69 6c 65 64 20 77 69 74 68 20 74 68 65 20 54  piled with the T
24b40 43 4c 5f 43 4f 4d 50 49 4c 45 5f 53 54 41 54 53  CL_COMPILE_STATS
24b50 20 66 6c 61 67 2e 20 28 42 4c 29 0a 0a 38 2f 37   flag. (BL)..8/7
24b60 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 45 78  /97 (bug fix) Ex
24b70 70 72 65 73 73 69 6f 6e 73 20 6e 6f 74 20 69 6e  pressions not in
24b80 20 7b 7d 73 20 74 68 61 74 20 68 61 76 65 20 61   {}s that have a
24b90 20 63 6f 6d 70 61 72 69 73 6f 6e 20 6f 70 65 72   comparison oper
24ba0 61 74 6f 72 20 61 73 0a 74 68 65 20 74 6f 70 6d  ator as.the topm
24bb0 6f 73 74 20 6f 70 65 72 61 74 6f 72 20 6d 75 73  ost operator mus
24bc0 74 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 6f 75  t be compiled ou
24bd0 74 2d 6f 66 2d 6c 69 6e 65 20 28 63 61 6c 6c 20  t-of-line (call 
24be0 74 68 65 20 65 78 70 72 20 63 6d 64 20 61 74 0a  the expr cmd at.
24bf0 72 75 6e 74 69 6d 65 29 20 74 6f 20 70 72 6f 70  runtime) to prop
24c00 65 72 6c 79 20 73 75 70 70 6f 72 74 20 65 78 70  erly support exp
24c10 72 27 73 20 74 77 6f 2d 6c 65 76 65 6c 20 73 75  r's two-level su
24c20 62 73 74 69 74 75 74 69 6f 6e 20 73 65 6d 61 6e  bstitution seman
24c30 74 69 63 73 2e 20 41 6e 0a 65 78 61 6d 70 6c 65  tics. An.example
24c40 20 69 73 20 22 73 65 74 20 61 20 32 3b 20 73 65   is "set a 2; se
24c50 74 20 62 20 7b 24 61 7d 3b 20 70 75 74 73 20 5b  t b {$a}; puts [
24c60 65 78 70 72 20 24 62 20 3d 3d 20 32 5d 22 2e 20  expr $b == 2]". 
24c70 28 42 4c 29 0a 0a 38 2f 31 31 2f 39 37 20 28 62  (BL)..8/11/97 (b
24c80 75 67 20 66 69 78 29 20 54 68 65 20 63 61 74 63  ug fix) The catc
24c90 68 20 63 6f 6d 6d 61 6e 64 20 77 6f 75 6c 64 20  h command would 
24ca0 73 6f 6d 65 74 69 6d 65 73 20 63 72 61 73 68 20  sometimes crash 
24cb0 69 66 20 61 20 76 61 72 69 61 62 6c 65 20 6e 61  if a variable na
24cc0 6d 65 0a 77 61 73 20 67 69 76 65 6e 20 61 6e 64  me.was given and
24cd0 20 74 68 65 20 62 79 74 65 63 6f 64 65 20 65 76   the bytecode ev
24ce0 61 6c 75 61 74 69 6f 6e 20 73 74 61 63 6b 20 77  aluation stack w
24cf0 61 73 20 67 72 6f 77 6e 20 77 68 65 6e 20 65 78  as grown when ex
24d00 65 63 75 74 69 6e 67 20 74 68 65 0a 61 72 67 75  ecuting the.argu
24d10 6d 65 6e 74 20 73 63 72 69 70 74 2e 20 28 42 4c  ment script. (BL
24d20 29 0a 0a 38 2f 31 32 2f 39 37 20 28 66 65 61 74  )..8/12/97 (feat
24d30 75 72 65 20 63 68 61 6e 67 65 29 20 52 65 69 6e  ure change) Rein
24d40 73 74 61 74 65 64 20 74 68 65 20 76 61 72 69 61  stated the varia
24d50 62 6c 65 20 74 63 6c 5f 70 72 65 63 69 73 69 6f  ble tcl_precisio
24d60 6e 20 74 6f 20 63 6f 6e 74 72 6f 6c 0a 74 68 65  n to control.the
24d70 20 6e 75 6d 62 65 72 20 6f 66 20 64 69 67 69 74   number of digit
24d80 73 20 75 73 65 64 20 77 68 65 6e 20 66 6c 6f 61  s used when floa
24d90 74 69 6e 67 2d 70 6f 69 6e 74 20 76 61 6c 75 65  ting-point value
24da0 73 20 61 72 65 20 63 6f 6e 76 65 72 74 65 64 20  s are converted 
24db0 74 6f 0a 73 74 72 69 6e 67 73 2c 20 77 69 74 68  to.strings, with
24dc0 20 64 65 66 61 75 6c 74 20 6f 66 20 31 32 20 64   default of 12 d
24dd0 69 67 69 74 73 2e 20 20 48 6f 77 65 76 65 72 2c  igits.  However,
24de0 20 68 61 64 20 74 6f 20 6d 61 6b 65 20 74 63 6c   had to make tcl
24df0 5f 70 72 65 63 69 73 69 6f 6e 0a 73 68 61 72 65  _precision.share
24e00 64 20 61 6d 6f 6e 67 20 61 6c 6c 20 69 6e 74 65  d among all inte
24e10 72 70 72 65 74 65 72 73 20 28 65 78 63 65 70 74  rpreters (except
24e20 20 74 68 61 74 20 73 61 66 65 20 69 6e 74 65 72   that safe inter
24e30 70 72 65 74 65 72 73 20 63 61 6e 27 74 0a 6d 6f  preters can't.mo
24e40 64 69 66 79 20 69 74 29 2e 20 20 54 68 69 73 20  dify it).  This 
24e50 6d 61 6b 65 73 20 74 68 65 20 54 63 6c 20 38 2e  makes the Tcl 8.
24e60 30 20 62 65 68 61 76 69 6f 72 20 61 6c 6d 6f 73  0 behavior almos
24e70 74 20 69 64 65 6e 74 69 63 61 6c 20 74 6f 20 37  t identical to 7
24e80 2e 36 0a 65 78 63 65 70 74 20 74 68 61 74 20 74  .6.except that t
24e90 68 65 20 64 65 66 61 75 6c 74 20 70 72 65 63 69  he default preci
24ea0 73 69 6f 6e 20 69 73 20 31 32 20 69 6e 73 74 65  sion is 12 inste
24eb0 61 64 20 6f 66 20 36 2e 20 28 4a 4f 29 0a 2a 2a  ad of 6. (JO).**
24ec0 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
24ed0 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a  MPATIBILITY ***.
24ee0 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
24ef0 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 30 2c  -- Released 8.0,
24f00 20 38 2f 31 38 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d   8/18/97 -------
24f10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
24f20 0a 0a 38 2f 31 39 2f 39 37 20 28 62 75 67 20 66  ..8/19/97 (bug f
24f30 69 78 29 20 4d 69 6e 69 6d 61 6c 20 66 69 78 20  ix) Minimal fix 
24f40 66 6f 72 20 67 6c 6f 62 20 2d 6e 6f 63 6f 6d 70  for glob -nocomp
24f50 6c 61 69 6e 20 62 75 67 73 3a 0a 22 67 6c 6f 62  lain bugs:."glob
24f60 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e 20 75 6e 72   -nocomplain unr
24f70 65 61 64 61 62 6c 65 44 69 72 2f 2a 22 20 77 61  eadableDir/*" wa
24f80 73 20 67 65 6e 65 72 61 74 69 6e 67 20 61 6e 20  s generating an 
24f90 61 6e 6f 6e 79 6d 6f 75 73 0a 65 72 72 6f 72 2e  anonymous.error.
24fa0 20 4d 6f 72 65 20 69 6e 20 64 65 70 74 68 20 66   More in depth f
24fb0 69 78 65 73 20 77 69 6c 6c 20 63 6f 6d 65 20 77  ixes will come w
24fc0 69 74 68 20 38 2e 31 2e 20 28 44 4c 29 2e 0a 0a  ith 8.1. (DL)...
24fd0 38 2f 32 30 2f 39 37 20 28 62 75 67 20 66 69 78  8/20/97 (bug fix
24fe0 29 20 52 65 6d 6f 76 65 64 20 63 68 65 63 6b 20  ) Removed check 
24ff0 66 6f 72 20 46 4c 54 5f 4d 49 4e 20 69 6e 20 62  for FLT_MIN in b
25000 69 6e 61 72 79 20 63 6f 6d 6d 61 6e 64 20 73 6f  inary command so
25010 0a 75 6e 64 65 72 66 6c 6f 77 20 63 6f 6e 64 69  .underflow condi
25020 74 69 6f 6e 73 20 61 72 65 20 68 61 6e 64 6c 65  tions are handle
25030 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65  d by the compile
25040 72 20 61 75 74 6f 6d 61 74 69 63 0a 63 6f 6e 76  r automatic.conv
25050 65 72 73 69 6f 6e 73 2e 20 28 53 53 29 0a 0a 38  ersions. (SS)..8
25060 2f 32 30 2f 39 37 20 28 62 75 67 20 66 69 78 65  /20/97 (bug fixe
25070 73 29 20 46 69 78 65 64 20 73 65 76 65 72 61 6c  s) Fixed several
25080 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c   compilation-rel
25090 61 74 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d  ated bugs:.    -
250a0 20 41 72 72 61 79 20 63 6d 64 20 77 61 73 6e 27   Array cmd wasn'
250b0 74 20 64 65 74 65 63 74 69 6e 67 20 61 72 72 61  t detecting arra
250c0 79 73 20 74 68 61 74 2c 20 77 68 69 6c 65 20 63  ys that, while c
250d0 6f 6d 70 69 6c 65 64 2c 20 64 6f 20 6e 6f 74 20  ompiled, do not 
250e0 79 65 74 0a 20 20 20 20 20 20 65 78 69 73 74 20  yet.      exist 
250f0 28 65 2e 67 2e 2c 20 61 72 65 20 6d 61 72 6b 65  (e.g., are marke
25100 64 20 75 6e 64 65 66 69 6e 65 64 20 73 69 6e 63  d undefined sinc
25110 65 20 74 68 65 79 20 68 61 76 65 6e 27 74 20 62  e they haven't b
25120 65 65 6e 20 61 73 73 69 67 6e 65 64 0a 20 20 20  een assigned.   
25130 20 20 20 74 6f 20 79 65 74 29 2e 0a 20 20 20 20     to yet)..    
25140 2d 20 54 68 65 20 47 65 74 54 6f 6b 65 6e 20 70  - The GetToken p
25150 72 6f 63 65 64 75 72 65 20 69 6e 20 74 63 6c 43  rocedure in tclC
25160 6f 6d 70 45 78 70 72 2e 63 20 77 61 73 6e 27 74  ompExpr.c wasn't
25170 20 72 65 63 6f 67 6e 69 7a 69 6e 67 20 70 72 6f   recognizing pro
25180 70 65 72 6c 79 0a 20 20 20 20 20 20 77 68 65 74  perly.      whet
25190 68 65 72 20 61 6e 20 69 6e 74 65 67 65 72 20 74  her an integer t
251a0 6f 6b 65 6e 20 77 61 73 20 69 6e 76 61 6c 69 64  oken was invalid
251b0 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 22  . For example, "
251c0 30 78 24 22 20 69 73 20 6e 6f 74 0a 20 20 20 20  0x$" is not.    
251d0 20 20 61 20 76 61 6c 69 64 20 69 6e 74 65 67 65    a valid intege
251e0 72 2e 0a 20 20 20 20 2d 20 50 65 72 66 6f 72 6d  r..    - Perform
251f0 61 6e 63 65 20 62 75 67 20 69 6e 20 54 63 6c 45  ance bug in TclE
25200 78 65 63 75 74 65 42 79 74 65 43 6f 64 65 3a 20  xecuteByteCode: 
25210 74 68 65 20 73 69 7a 65 20 6f 66 20 69 74 73 20  the size of its 
25220 73 74 61 63 6b 20 66 72 61 6d 65 0a 20 20 20 20  stack frame.    
25230 20 20 77 61 73 20 72 65 64 75 63 65 64 20 62 79    was reduced by
25240 20 6f 76 65 72 20 32 30 25 20 62 79 20 6d 6f 76   over 20% by mov
25250 69 6e 67 20 65 72 72 6f 72 49 6e 66 6f 20 63 6f  ing errorInfo co
25260 64 65 20 65 6c 73 65 77 68 65 72 65 2e 0a 20 20  de elsewhere..  
25270 20 20 2d 20 55 6e 69 6e 69 74 69 61 6c 69 7a 65    - Uninitialize
25280 64 20 6d 65 6d 6f 72 79 20 72 65 61 64 20 65 72  d memory read er
25290 72 6f 72 20 69 6e 20 74 63 6c 43 6f 6d 70 69 6c  ror in tclCompil
252a0 65 2e 63 2e 20 28 42 4c 29 0a 0a 38 2f 32 31 2f  e.c. (BL)..8/21/
252b0 39 37 20 28 62 75 67 20 66 69 78 29 20 73 61 66  97 (bug fix) saf
252c0 65 3a 3a 69 6e 74 65 72 70 43 6f 6e 66 69 67 75  e::interpConfigu
252d0 72 65 20 6e 6f 77 20 62 65 68 61 76 65 20 6c 69  re now behave li
252e0 6b 65 20 54 6b 20 77 69 64 67 65 74 27 73 0a 63  ke Tk widget's.c
252f0 6f 6e 66 69 67 75 72 65 20 3a 20 69 74 20 63 68  onfigure : it ch
25300 61 6e 67 65 73 20 6f 6e 6c 79 20 74 68 65 20 6f  anges only the o
25310 70 74 69 6f 6e 73 20 79 6f 75 20 70 72 6f 76 69  ptions you provi
25320 64 65 20 61 6e 64 20 79 6f 75 20 63 61 6e 20 67  de and you can g
25330 65 74 0a 74 68 65 20 63 75 72 72 65 6e 74 20 76  et.the current v
25340 61 6c 75 65 20 6f 66 20 61 6e 79 20 73 69 6e 67  alue of any sing
25350 6c 65 20 6f 70 74 69 6f 6e 2e 20 4e 65 77 20 3f  le option. New ?
25360 2d 6e 65 73 74 65 64 20 62 6f 6f 6c 65 61 6e 3f  -nested boolean?
25370 20 61 6e 64 0a 3f 2d 73 74 61 74 69 63 73 20 62   and.?-statics b
25380 6f 6f 6c 65 61 6e 3f 20 66 6f 72 20 61 6c 6c 20  oolean? for all 
25390 73 61 66 65 3a 3a 69 6e 74 65 72 70 2a 20 63 6f  safe::interp* co
253a0 6d 6d 61 6e 64 73 20 62 75 74 20 77 65 20 73 74  mmands but we st
253b0 69 6c 6c 0a 61 63 63 65 70 74 20 28 75 70 77 61  ill.accept (upwa
253c0 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79  rd compatibility
253d0 29 20 74 68 65 20 70 72 65 76 69 6f 75 73 6c 79  ) the previously
253e0 20 64 65 66 69 6e 65 64 20 6e 6f 6e 20 76 61 6c   defined non val
253f0 75 65 64 0a 66 6c 61 67 73 20 3f 2d 6e 6f 53 74  ued.flags ?-noSt
25400 61 74 69 63 73 3f 20 61 6e 64 20 3f 2d 6e 65 73  atics? and ?-nes
25410 74 65 64 4c 6f 61 64 4f 6b 3f 2e 20 49 6d 70 72  tedLoadOk?. Impr
25420 6f 76 65 64 20 74 68 65 20 64 6f 63 75 6d 65 6e  oved the documen
25430 74 61 74 69 6f 6e 2e 20 28 44 4c 29 2e 0a 0a 38  tation. (DL)...8
25440 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29  /22/97 (bug fix)
25450 20 55 70 64 61 74 65 64 20 50 72 69 6e 74 44 62   Updated PrintDb
25460 6c 2e 33 20 74 6f 20 72 65 66 6c 65 63 74 20 74  l.3 to reflect t
25470 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65  he fact that the
25480 0a 74 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20 76  .tcl_precision v
25490 61 72 69 61 62 6c 65 20 69 73 20 73 74 69 6c 6c  ariable is still
254a0 20 75 73 65 64 20 61 6e 64 20 74 68 61 74 20 69   used and that i
254b0 74 20 69 73 20 6e 6f 77 20 73 68 61 72 65 64 20  t is now shared 
254c0 62 79 20 61 6c 6c 0a 69 6e 74 65 72 70 72 65 74  by all.interpret
254d0 65 72 73 2e 20 28 42 4c 29 0a 0a 38 2f 32 35 2f  ers. (BL)..8/25/
254e0 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
254f0 65 64 20 61 72 72 61 79 20 61 63 63 65 73 73 20  ed array access 
25500 62 75 67 20 69 6e 20 49 6c 6c 65 67 61 6c 45 78  bug in IllegalEx
25510 70 72 4f 70 65 72 61 6e 64 54 79 70 65 0a 70 72  prOperandType.pr
25520 6f 63 65 64 75 72 65 20 69 6e 20 74 63 6c 45 78  ocedure in tclEx
25530 65 63 75 74 65 2e 63 3a 20 69 74 20 77 61 73 20  ecute.c: it was 
25540 6e 6f 74 20 70 72 6f 70 65 72 6c 79 20 73 75 70  not properly sup
25550 70 6f 72 74 69 6e 67 20 74 68 65 20 7c 7c 20 61  porting the || a
25560 6e 64 20 26 26 0a 6f 70 65 72 61 74 6f 72 73 2e  nd &&.operators.
25570 20 28 42 4c 29 0a 0a 38 2f 32 37 2f 39 37 20 28   (BL)..8/27/97 (
25580 62 75 67 20 66 69 78 29 20 49 6e 20 63 61 73 65  bug fix) In case
25590 73 20 77 68 65 72 65 20 61 20 63 68 61 6e 6e 65  s where a channe
255a0 6c 20 68 61 6e 64 6c 65 72 20 77 61 73 20 63 72  l handler was cr
255b0 65 61 74 65 64 20 77 69 74 68 20 61 6e 0a 65 6d  eated with an.em
255c0 70 74 79 20 65 76 65 6e 74 20 6d 61 73 6b 20 77  pty event mask w
255d0 68 69 6c 65 20 64 61 74 61 20 77 61 73 20 73 74  hile data was st
255e0 69 6c 6c 20 62 75 66 66 65 72 65 64 20 69 6e 20  ill buffered in 
255f0 74 68 65 20 63 68 61 6e 6e 65 6c 2c 20 74 68 65  the channel, the
25600 0a 63 68 61 6e 6e 65 6c 20 63 6f 64 65 20 77 6f  .channel code wo
25610 75 6c 64 20 67 65 74 20 73 74 75 63 6b 20 73 70  uld get stuck sp
25620 69 6e 6e 69 6e 67 20 6f 6e 20 61 20 74 69 6d 65  inning on a time
25630 72 20 74 68 61 74 20 77 6f 75 6c 64 20 73 74 61  r that would sta
25640 72 76 65 0a 69 64 6c 65 20 68 61 6e 64 6c 65 72  rve.idle handler
25650 73 2e 20 20 54 68 69 73 20 6d 6f 73 74 6c 79 20  s.  This mostly 
25660 68 61 70 70 65 6e 65 64 20 69 6e 20 54 6b 20 77  happened in Tk w
25670 68 65 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d  hen reading from
25680 20 73 74 64 69 6e 2e 20 28 53 53 29 0a 0a 39 2f   stdin. (SS)..9/
25690 34 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 53  4/97 (bug fix) S
256a0 6c 61 76 65 20 69 6e 74 65 72 70 73 20 6e 6f 77  lave interps now
256b0 20 69 6e 68 65 72 69 74 20 74 68 65 20 6d 61 78   inherit the max
256c0 69 6d 75 6d 20 72 65 63 75 72 73 69 6f 6e 20 6c  imum recursion l
256d0 69 6d 69 74 0a 6f 66 20 74 68 65 69 72 20 70 61  imit.of their pa
256e0 72 65 6e 74 20 69 6e 73 74 65 61 64 20 6f 66 20  rent instead of 
256f0 73 74 61 72 74 69 6e 67 20 62 61 63 6b 20 61 74  starting back at
25700 20 74 68 65 20 64 65 66 61 75 6c 74 2e 20 7b 6e   the default. {n
25710 62 3a 20 74 68 69 73 20 73 74 69 6c 6c 0a 64 6f  b: this still.do
25720 65 73 20 6e 6f 74 20 70 72 65 76 65 6e 74 20 73  es not prevent s
25730 74 61 63 6b 20 6f 76 65 72 66 6c 6f 77 20 62 79  tack overflow by
25740 20 6d 75 6c 74 69 2d 69 6e 74 65 72 70 73 20 72   multi-interps r
25750 65 63 75 72 73 69 6f 6e 20 6f 72 20 61 6c 69 61  ecursion or alia
25760 73 69 6e 67 7d 20 28 44 4c 29 0a 0a 39 2f 31 31  sing} (DL)..9/11
25770 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 41 6e  /97 (bug fix) An
25780 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20 76   uninitialized v
25790 61 72 69 61 62 6c 65 20 69 6e 20 54 63 6c 5f 57  ariable in Tcl_W
257a0 61 69 74 50 69 64 20 63 61 75 73 65 64 0a 70 69  aitPid caused.pi
257b0 70 65 73 20 74 6f 20 66 61 69 6c 20 74 6f 20 72  pes to fail to r
257c0 65 70 6f 72 74 20 65 6f 66 20 70 72 6f 70 65 72  eport eof proper
257d0 6c 79 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73  ly under Windows
257e0 2e 20 28 53 53 29 0a 0a 39 2f 31 32 2f 39 37 20  . (SS)..9/12/97 
257f0 28 62 75 67 20 66 69 78 29 20 22 65 78 65 63 22  (bug fix) "exec"
25800 20 77 61 73 20 6d 69 73 69 64 65 6e 74 69 66 79   was misidentify
25810 69 6e 67 20 73 6f 6d 65 20 44 4f 53 20 65 78 65  ing some DOS exe
25820 63 75 74 61 62 6c 65 73 20 61 73 20 6e 6f 74 0a  cutables as not.
25830 65 78 65 63 75 74 61 62 6c 65 2e 20 28 43 43 53  executable. (CCS
25840 29 0a 0a 39 2f 31 34 2f 39 37 20 28 62 75 67 20  )..9/14/97 (bug 
25850 66 69 78 29 20 57 61 73 20 75 73 69 6e 67 20 74  fix) Was using t
25860 68 65 20 77 72 6f 6e 67 20 73 74 72 75 63 74 75  he wrong structu
25870 72 65 20 69 6e 20 73 69 7a 65 6f 66 20 6f 70 65  re in sizeof ope
25880 72 61 74 69 6f 6e 20 69 6e 0a 74 63 6c 55 6e 69  ration in.tclUni
25890 78 43 68 61 6e 2e 63 2e 20 28 4a 4c 29 0a 0a 39  xChan.c. (JL)..9
258a0 2f 31 35 2f 39 37 20 28 62 75 67 20 66 69 78 29  /15/97 (bug fix)
258b0 20 46 69 78 65 64 20 6e 6f 74 69 66 69 65 72 20   Fixed notifier 
258c0 74 6f 20 62 72 65 61 6b 20 6f 75 74 20 6f 66 20  to break out of 
258d0 64 6f 2d 6f 6e 65 2d 65 76 65 6e 74 20 6c 6f 6f  do-one-event loo
258e0 70 20 69 66 0a 54 63 6c 5f 57 61 69 74 46 6f 72  p if.Tcl_WaitFor
258f0 45 76 65 6e 74 20 72 65 74 75 72 6e 73 20 31 2c  Event returns 1,
25900 20 73 6f 20 74 68 61 74 20 63 61 6c 6c 65 72 73   so that callers
25910 20 6f 66 20 54 63 6c 5f 44 6f 4f 6e 65 45 76 65   of Tcl_DoOneEve
25920 6e 74 20 77 69 6c 6c 20 67 65 74 0a 61 20 63 68  nt will get.a ch
25930 61 6e 63 65 20 74 6f 20 63 68 65 63 6b 20 77 68  ance to check wh
25940 65 74 68 65 72 20 74 68 65 20 65 76 65 6e 74 20  ether the event 
25950 6a 75 73 74 20 68 61 6e 64 6c 65 64 20 69 73 20  just handled is 
25960 73 69 67 6e 69 66 69 63 61 6e 74 2e 20 54 68 69  significant. Thi
25970 73 0a 61 66 66 65 63 74 65 64 20 6d 61 69 6e 6c  s.affected mainl
25980 79 20 72 65 63 75 72 73 69 76 65 20 63 61 6c 6c  y recursive call
25990 73 20 74 6f 20 54 63 6c 5f 56 57 61 69 74 43 6d  s to Tcl_VWaitCm
259a0 64 3b 20 74 68 65 73 65 20 64 69 64 20 6e 6f 74  d; these did not
259b0 20 67 65 74 20 61 0a 63 68 61 6e 63 65 20 74 6f   get a.chance to
259c0 20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65   notice that the
259d0 20 76 61 72 69 61 62 6c 65 20 74 68 65 79 20 77   variable they w
259e0 65 72 65 20 77 61 69 74 69 6e 67 20 66 6f 72 20  ere waiting for 
259f0 68 61 73 20 62 65 65 6e 20 73 65 74 0a 61 6e 64  has been set.and
25a00 20 74 68 75 73 20 74 68 65 79 20 64 69 64 6e 27   thus they didn'
25a10 74 20 74 65 72 6d 69 6e 61 74 65 20 74 68 65 20  t terminate the 
25a20 76 77 61 69 74 2e 20 28 4a 4c 2c 20 44 4c 2c 20  vwait. (JL, DL, 
25a30 53 53 29 0a 0a 39 2f 31 35 2f 39 37 20 28 62 75  SS)..9/15/97 (bu
25a40 67 20 66 69 78 29 20 41 6c 69 67 6e 6d 65 6e 74  g fix) Alignment
25a50 20 70 72 6f 62 6c 65 6d 73 20 69 6e 20 22 62 69   problems in "bi
25a60 6e 61 72 79 20 66 6f 72 6d 61 74 22 20 77 6f 75  nary format" wou
25a70 6c 64 20 63 61 75 73 65 20 61 0a 63 72 61 73 68  ld cause a.crash
25a80 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72   on some platfor
25a90 6d 73 20 77 68 65 6e 20 66 6f 72 6d 61 74 74 69  ms when formatti
25aa0 6e 67 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e  ng floating poin
25ab0 74 20 6e 75 6d 62 65 72 73 2e 20 28 53 53 29 0a  t numbers. (SS).
25ac0 0a 39 2f 31 35 2f 39 37 20 28 62 75 67 20 66 69  .9/15/97 (bug fi
25ad0 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  x) Fixed bug in 
25ae0 4d 61 63 69 6e 74 6f 73 68 20 73 6f 63 6b 65 74  Macintosh socket
25af0 20 63 6f 64 65 2e 20 20 4e 6f 77 20 70 61 73 73   code.  Now pass
25b00 65 73 20 61 6c 6c 0a 74 65 73 74 73 20 69 6e 20  es all.tests in 
25b10 73 6f 63 6b 65 74 2e 74 65 73 74 20 74 68 61 74  socket.test that
25b20 20 61 72 65 20 6e 6f 74 20 70 6c 61 74 66 6f 72   are not platfor
25b30 6d 20 73 70 65 63 69 66 69 63 2e 20 28 54 68 61  m specific. (Tha
25b40 6e 6b 73 20 74 6f 20 4d 61 72 6b 0a 52 6f 73 65  nks to Mark.Rose
25b50 6d 61 6e 20 66 6f 72 20 74 68 65 20 70 6f 69 6e  man for the poin
25b60 74 65 72 20 6f 6e 20 74 68 65 20 66 69 78 2e 29  ter on the fix.)
25b70 20 20 28 52 4a 29 0a 0a 39 2f 31 38 2f 39 37 20    (RJ)..9/18/97 
25b80 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
25b90 62 75 67 20 2d 64 69 63 74 69 6f 6e 61 72 79 20  bug -dictionary 
25ba0 6f 70 74 69 6f 6e 20 6f 66 20 6c 73 6f 72 74 20  option of lsort 
25bb0 74 68 61 74 20 63 6f 75 6c 64 0a 63 61 75 73 65  that could.cause
25bc0 20 74 68 65 20 63 6f 6d 70 61 72 65 20 66 75 6e   the compare fun
25bd0 63 74 69 6f 6e 20 74 6f 20 72 75 6e 20 6f 66 66  ction to run off
25be0 20 74 68 65 20 65 6e 64 20 6f 66 20 61 6e 20 61   the end of an a
25bf0 72 72 61 79 20 69 66 20 74 68 65 0a 6e 75 6d 62  rray if the.numb
25c00 65 72 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e 65  er only containe
25c10 64 20 30 27 73 2e 20 28 54 68 61 6e 6b 73 20 74  d 0's. (Thanks t
25c20 6f 20 47 72 65 67 20 43 6f 75 63 68 20 66 6f 72  o Greg Couch for
25c30 20 74 68 65 20 72 65 70 6f 72 74 2e 29 20 28 52   the report.) (R
25c40 4a 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75 67  J)..9/18/97 (bug
25c50 20 66 69 78 29 20 54 63 6c 46 69 6e 61 6c 69 7a   fix) TclFinaliz
25c60 65 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 77 61 73  eEnvironment was
25c70 20 6e 6f 74 20 63 6c 65 61 6e 69 6e 67 20 75 70   not cleaning up
25c80 0a 70 72 6f 70 65 72 6c 79 2e 20 28 44 4c 2c 20  .properly. (DL, 
25c90 4a 49 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75  JI)..9/18/97 (bu
25ca0 67 20 66 69 78 29 20 46 69 78 65 64 20 6c 6f 6e  g fix) Fixed lon
25cb0 67 2d 73 74 61 6e 64 69 6e 67 20 62 75 67 20 77  g-standing bug w
25cc0 68 65 72 65 20 61 6e 20 22 61 72 72 61 79 20 67  here an "array g
25cd0 65 74 22 20 63 6f 6d 6d 61 6e 64 0a 64 69 64 20  et" command.did 
25ce0 6e 6f 74 20 74 72 69 67 67 65 72 20 74 72 61 63  not trigger trac
25cf0 65 73 20 6f 6e 20 74 68 65 20 61 72 72 61 79 20  es on the array 
25d00 6f 72 20 69 74 73 20 65 6c 65 6d 65 6e 74 73 2e  or its elements.
25d10 20 28 42 4c 29 0a 0a 39 2f 31 38 2f 39 37 20 28   (BL)..9/18/97 (
25d20 62 75 67 20 66 69 78 65 73 29 20 46 69 78 65 64  bug fixes) Fixed
25d30 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c   compilation-rel
25d40 61 74 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d  ated bugs:.    -
25d50 20 46 69 78 65 64 20 65 72 72 6f 72 49 6e 66 6f   Fixed errorInfo
25d60 20 74 72 61 63 65 62 61 63 6b 20 69 6e 66 6f 72   traceback infor
25d70 6d 61 74 69 6f 6e 20 66 6f 72 20 74 6f 70 6c 65  mation for tople
25d80 76 65 6c 20 63 6f 6f 6d 61 6e 64 73 20 74 68 61  vel coomands tha
25d90 74 0a 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 20  t.      contain 
25da0 6e 65 73 74 65 64 20 63 6f 6d 6d 61 6e 64 73 2e  nested commands.
25db0 0a 20 20 20 20 2d 20 49 6e 20 74 68 65 20 65 78  .    - In the ex
25dc0 70 72 20 63 6f 6d 6d 61 6e 64 2c 20 26 26 20 61  pr command, && a
25dd0 6e 64 20 7c 7c 20 6e 6f 77 20 61 63 63 65 70 74  nd || now accept
25de0 20 62 6f 6f 6c 65 61 6e 20 6f 70 65 72 61 6e 64   boolean operand
25df0 73 20 61 73 20 77 65 6c 6c 0a 20 20 20 20 20 20  s as well.      
25e00 61 73 20 6e 75 6d 65 72 69 63 20 6f 6e 65 73 2e  as numeric ones.
25e10 20 28 42 4c 29 0a 0a 39 2f 32 32 2f 39 37 20 28   (BL)..9/22/97 (
25e20 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
25e30 75 67 20 74 68 61 74 20 70 72 65 76 65 6e 74 65  ug that prevente
25e40 64 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f  d translation mo
25e50 64 65 73 20 66 72 6f 6d 20 62 65 69 6e 67 0a 73  des from being.s
25e60 65 74 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79  et independently
25e70 20 66 6f 72 20 69 6e 70 75 74 20 61 6e 64 20 6f   for input and o
25e80 75 74 70 75 74 20 6f 6e 20 73 6f 63 6b 65 74 73  utput on sockets
25e90 20 69 66 20 69 6e 70 75 74 20 77 61 73 20 22 61   if input was "a
25ea0 75 74 6f 22 2e 20 28 4a 4c 29 0a 0a 39 2f 32 34  uto". (JL)..9/24
25eb0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63  /97 (bug fix) Tc
25ec0 6c 5f 45 76 61 6c 46 69 6c 65 28 33 29 20 61 6e  l_EvalFile(3) an
25ed0 64 20 74 68 75 73 20 73 6f 75 72 63 65 28 6e 29  d thus source(n)
25ee0 20 6e 6f 77 20 77 6f 72 6b 73 20 66 69 6e 65 20   now works fine 
25ef0 6f 6e 0a 66 69 6c 65 73 20 63 6f 6e 74 61 69 6e  on.files contain
25f00 69 6e 67 20 4e 55 4c 20 63 68 61 72 73 2e 20 28  ing NUL chars. (
25f10 44 4c 29 0a 0a 39 2f 32 36 2f 39 37 20 28 62 75  DL)..9/26/97 (bu
25f20 67 20 66 69 78 29 20 46 69 78 65 64 20 75 73 65  g fix) Fixed use
25f30 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65   of uninitialize
25f40 64 20 6d 65 6d 6f 72 79 20 69 6e 20 74 68 65 20  d memory in the 
25f50 65 6e 76 69 72 6f 6e 20 61 72 72 61 79 0a 74 68  environ array.th
25f60 61 74 20 6c 61 74 65 72 20 63 6f 75 6c 64 20 63  at later could c
25f70 61 75 73 65 20 72 61 6e 64 6f 6d 20 63 6f 72 65  ause random core
25f80 20 64 75 6d 70 73 2e 20 41 70 70 6c 69 65 73 20   dumps. Applies 
25f90 74 6f 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73  to all platforms
25fa0 2e 20 28 4a 4c 29 0a 0a 39 2f 32 36 2f 39 37 20  . (JL)..9/26/97 
25fb0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
25fc0 75 73 65 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c  use of uninitial
25fd0 69 7a 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 73  ized memory in s
25fe0 6f 63 6b 65 74 20 61 64 64 72 65 73 73 20 64 61  ocket address da
25ff0 74 61 0a 73 74 72 75 63 74 75 72 65 20 75 6e 64  ta.structure und
26000 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74  er some circumst
26010 61 6e 63 65 73 2e 20 54 68 69 73 20 63 6f 75 6c  ances. This coul
26020 64 20 63 61 75 73 65 20 72 61 6e 64 6f 6d 20 63  d cause random c
26030 6f 72 65 20 64 75 6d 70 73 2e 0a 54 68 69 73 20  ore dumps..This 
26040 61 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20  applies only to 
26050 55 6e 69 78 2e 20 28 4a 4c 29 0a 0a 39 2f 32 36  Unix. (JL)..9/26
26060 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4f 70  /97 (bug fix) Op
26070 65 6e 69 6e 67 20 66 69 6c 65 73 20 6f 6e 20 50  ening files on P
26080 43 2d 4e 46 53 20 76 6f 6c 75 6d 65 73 20 77 6f  C-NFS volumes wo
26090 75 6c 64 20 63 61 75 73 65 20 61 20 68 61 6e 67  uld cause a hang
260a0 0a 75 6e 74 69 6c 20 74 68 65 20 73 79 73 74 65  .until the syste
260b0 6d 20 74 69 6d 65 64 20 61 66 74 65 72 20 74 68  m timed after th
260c0 65 20 66 69 6c 65 20 77 61 73 20 63 6c 6f 73 65  e file was close
260d0 64 2e 20 28 53 53 29 0a 0a 31 30 2f 36 2f 39 37  d. (SS)..10/6/97
260e0 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 6a   (bug fix) The j
260f0 6f 69 6e 28 6e 29 20 63 6f 6d 6d 61 6e 64 2c 20  oin(n) command, 
26100 74 68 6f 75 67 68 20 6f 62 6a 65 63 74 69 66 69  though objectifi
26110 65 64 2c 20 77 61 73 20 6c 6f 6f 73 69 6e 67 0a  ed, was loosing.
26120 4e 55 4c 73 20 69 6e 20 74 68 65 20 6a 6f 69 6e  NULs in the join
26130 53 74 72 69 6e 67 20 61 6e 64 20 69 6e 20 6c 69  String and in li
26140 73 74 20 65 6c 65 6d 65 6e 74 73 20 61 66 74 65  st elements afte
26150 72 20 74 68 65 20 32 6e 64 20 6f 6e 65 2e 0a 4e  r the 2nd one..N
26160 6f 77 20 79 6f 75 20 63 61 6e 20 22 6a 6f 69 6e  ow you can "join
26170 20 24 6c 69 73 74 20 5c 30 22 20 66 6f 72 20 69   $list \0" for i
26180 6e 73 74 61 6e 63 65 2e 20 28 44 4c 29 0a 0a 31  nstance. (DL)..1
26190 30 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  0/9/97 (bug fix)
261a0 20 55 6e 64 65 72 20 77 69 6e 64 6f 77 73 2c 20   Under windows, 
261b0 69 66 20 65 6e 76 28 54 4d 50 29 20 6f 72 20 65  if env(TMP) or e
261c0 6e 76 28 54 45 4d 50 29 20 72 65 66 65 72 72 65  nv(TEMP) referre
261d0 64 20 74 6f 20 61 0a 6e 6f 6e 2d 65 78 69 73 74  d to a.non-exist
261e0 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 65  ent directory, e
261f0 78 65 63 20 77 6f 75 6c 64 20 66 61 69 6c 20 77  xec would fail w
26200 68 65 6e 20 74 72 79 69 6e 67 20 74 6f 20 63 72  hen trying to cr
26210 65 61 74 65 20 69 74 73 20 74 65 6d 70 6f 72 61  eate its tempora
26220 72 79 0a 66 69 6c 65 73 2e 20 28 43 43 53 29 0a  ry.files. (CCS).
26230 0a 31 30 2f 39 2f 39 37 20 28 62 75 67 20 66 69  .10/9/97 (bug fi
26240 78 29 20 55 6e 64 65 72 20 6d 61 63 20 61 6e 64  x) Under mac and
26250 20 77 69 6e 64 6f 77 73 2c 20 22 69 6e 66 6f 20   windows, "info 
26260 68 6f 73 74 6e 61 6d 65 22 20 77 6f 75 6c 64 20  hostname" would 
26270 63 72 61 73 68 20 69 66 0a 73 6f 63 6b 65 74 73  crash if.sockets
26280 20 77 65 72 65 20 69 6e 73 74 61 6c 6c 65 64 20   were installed 
26290 62 75 74 20 74 68 65 20 68 6f 73 74 6e 61 6d 65  but the hostname
262a0 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 65   could not be de
262b0 74 65 72 6d 69 6e 65 64 20 61 6e 79 68 6f 77 2e  termined anyhow.
262c0 0a 54 63 6c 5f 47 65 74 48 6f 73 74 4e 61 6d 65  .Tcl_GetHostName
262d0 28 29 20 77 61 73 20 72 65 74 75 72 6e 69 6e 67  () was returning
262e0 20 4e 55 4c 4c 20 77 68 65 6e 20 69 74 20 73 68   NULL when it sh
262f0 6f 75 6c 64 20 68 61 76 65 20 62 65 65 6e 20 72  ould have been r
26300 65 74 75 72 6e 69 6e 67 0a 61 6e 20 65 6d 70 74  eturning.an empt
26310 79 20 73 74 72 69 6e 67 2e 20 28 43 43 53 29 0a  y string. (CCS).
26320 0a 31 30 2f 31 30 2f 39 37 20 28 62 75 67 20 66  .10/10/97 (bug f
26330 69 78 29 20 22 66 69 6c 65 20 61 74 74 72 69 62  ix) "file attrib
26340 75 74 65 20 2f 22 20 72 65 74 75 72 6e 65 64 20  ute /" returned 
26350 65 72 72 6f 72 20 6f 6e 20 77 69 6e 64 6f 77 73  error on windows
26360 2e 20 28 43 43 53 29 0a 0a 31 30 2f 31 30 2f 39  . (CCS)..10/10/9
26370 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  7 (bug fix) Fixe
26380 64 20 74 68 65 20 61 75 74 6f 5f 6c 6f 61 64 20  d the auto_load 
26390 70 72 6f 63 65 64 75 72 65 20 74 6f 20 68 61 6e  procedure to han
263a0 64 6c 65 20 70 72 6f 63 65 64 75 72 65 73 0a 64  dle procedures.d
263b0 65 66 69 6e 65 64 20 69 6e 20 6e 61 6d 65 73 70  efined in namesp
263c0 61 63 65 73 20 62 65 74 74 65 72 2e 20 20 41 6c  aces better.  Al
263d0 73 6f 20 66 69 78 65 64 20 70 67 6b 5f 6d 6b 49  so fixed pgk_mkI
263e0 6e 64 65 78 20 73 6f 20 69 74 20 73 65 65 73 20  ndex so it sees 
263f0 70 72 6f 63 65 64 75 72 65 73 0a 64 65 66 69 6e  procedures.defin
26400 65 64 20 69 6e 20 6e 65 73 74 65 64 20 6e 61 6d  ed in nested nam
26410 65 73 70 61 63 65 73 2e 20 20 49 6e 64 65 78 20  espaces.  Index 
26420 65 6e 74 72 69 65 73 20 61 72 65 20 73 74 69 6c  entries are stil
26430 6c 20 6f 6e 6c 79 20 6d 61 64 65 20 66 6f 72 0a  l only made for.
26440 65 78 70 6f 72 74 65 64 20 70 72 6f 63 65 64 75  exported procedu
26450 72 65 73 2e 20 28 42 57 29 0a 0a 31 30 2f 31 33  res. (BW)..10/13
26460 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4f 6e  /97 (bug fix) On
26470 20 75 6e 69 78 2c 20 66 6f 72 20 66 69 6c 65 73   unix, for files
26480 20 77 69 74 68 20 75 6e 6b 6e 6f 77 6e 20 67 72   with unknown gr
26490 6f 75 70 20 6f 72 20 6f 77 6e 65 72 0a 61 74 74  oup or owner.att
264a0 72 69 62 75 74 65 73 2c 20 71 75 65 72 79 69 6e  ributes, queryin
264b0 67 20 74 68 65 20 22 66 69 6c 65 20 61 74 74 72  g the "file attr
264c0 69 62 75 74 65 73 22 20 77 6f 75 6c 64 20 72 65  ibutes" would re
264d0 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 72 61  turn an error ra
264e0 74 68 65 72 20 74 68 61 6e 0a 72 65 74 75 72 6e  ther than.return
264f0 69 6e 67 20 74 68 65 20 67 72 6f 75 70 27 73 20  ing the group's 
26500 6f 72 20 6f 77 6e 65 72 27 73 20 69 64 20 6e 75  or owner's id nu
26510 6d 62 65 72 2c 20 61 6c 74 68 6f 75 67 68 20 74  mber, although t
26520 68 61 20 63 6f 6d 6d 61 6e 64 20 61 63 63 65 70  ha command accep
26530 74 73 0a 6e 75 6d 62 65 72 73 20 77 68 65 6e 20  ts.numbers when 
26540 73 65 74 74 69 6e 67 20 74 68 65 20 66 69 6c 65  setting the file
26550 27 73 20 67 72 6f 75 70 20 6f 72 20 6f 77 6e 65  's group or owne
26560 72 2e 20 20 28 43 43 53 29 0a 0a 31 30 2f 32 32  r.  (CCS)..10/22
26570 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 22 66  /97 (bug fix) "f
26580 63 6f 70 79 22 20 64 69 64 20 6e 6f 74 20 65 76  copy" did not ev
26590 61 6c 20 74 68 65 20 63 61 6c 6c 62 61 63 6b 20  al the callback 
265a0 73 63 72 69 70 74 20 61 74 20 74 68 65 0a 67 6c  script at the.gl
265b0 6f 62 61 6c 20 73 63 6f 70 65 2e 20 28 53 53 29  obal scope. (SS)
265c0 0a 0a 31 30 2f 32 32 2f 39 37 20 28 62 75 67 20  ..10/22/97 (bug 
265d0 66 69 78 29 20 46 69 78 65 64 20 74 68 65 20 73  fix) Fixed the s
265e0 69 67 6e 61 74 75 72 65 20 6f 66 20 74 68 65 20  ignature of the 
265f0 43 6f 70 79 44 6f 6e 65 20 63 61 6c 6c 62 61 63  CopyDone callbac
26600 6b 20 75 73 65 64 20 69 6e 0a 74 68 65 20 68 74  k used in.the ht
26610 74 70 20 70 61 63 6b 61 67 65 28 73 29 20 73 6f  tp package(s) so
26620 20 74 68 65 79 20 63 61 6e 20 68 61 6e 64 6c 65   they can handle
26630 20 65 72 72 6f 72 20 63 61 73 65 73 20 70 72 6f   error cases pro
26640 70 65 72 6c 79 2e 20 28 42 57 29 0a 0a 31 30 2f  perly. (BW)..10/
26650 32 38 2f 39 37 20 28 62 75 67 20 66 69 78 65 73  28/97 (bug fixes
26660 29 20 46 69 78 65 64 20 61 20 70 72 6f 62 6c 65  ) Fixed a proble
26670 6d 20 77 68 65 72 65 20 6c 61 70 70 65 6e 64 20  m where lappend 
26680 77 6f 75 6c 64 20 66 72 65 65 20 74 68 65 20 54  would free the T
26690 63 6c 20 6f 62 6a 65 63 74 0a 69 6e 20 61 20 76  cl object.in a v
266a0 61 72 69 61 62 6c 65 20 69 66 20 61 20 54 63 6c  ariable if a Tcl
266b0 5f 4f 62 6a 53 65 74 56 61 72 32 20 66 61 69 6c  _ObjSetVar2 fail
266c0 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 61 6e  ed because of an
266d0 20 65 72 72 6f 72 20 63 61 6c 6c 69 6e 67 20 61   error calling a
266e0 20 74 72 61 63 65 0a 6f 6e 20 74 68 65 20 76 61   trace.on the va
266f0 72 69 61 62 6c 65 2e 20 28 42 4c 29 0a 0a 31 30  riable. (BL)..10
26700 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69 78 29  /28/97 (bug fix)
26710 20 43 68 61 6e 67 65 64 20 62 69 6e 61 72 79 20   Changed binary 
26720 73 63 61 6e 20 74 6f 20 70 72 6f 70 65 72 6c 79  scan to properly
26730 20 68 61 6e 64 6c 65 20 73 69 67 6e 0a 65 78 74   handle sign.ext
26740 65 6e 73 69 6f 6e 20 6f 66 20 69 6e 74 65 67 65  ension of intege
26750 72 73 20 6f 6e 20 36 34 2d 62 69 74 20 6f 72 20  rs on 64-bit or 
26760 6c 61 72 67 65 72 20 6d 61 63 68 69 6e 65 73 2e  larger machines.
26770 20 28 53 53 29 0a 0a 31 31 2f 33 2f 39 37 20 28   (SS)..11/3/97 (
26780 62 75 67 20 66 69 78 65 73 29 20 46 69 78 65 64  bug fixes) Fixed
26790 20 73 65 76 65 72 61 6c 20 62 75 67 73 3a 0a 20   several bugs:. 
267a0 20 20 20 2d 20 65 78 70 72 65 73 73 69 6f 6e 73     - expressions
267b0 20 73 75 63 68 20 61 73 20 22 65 78 70 72 20 28   such as "expr (
267c0 24 78 29 22 20 6d 75 73 74 20 62 65 20 63 6f 6d  $x)" must be com
267d0 70 69 6c 65 64 20 6f 75 74 2d 6f 66 2d 6c 69 6e  piled out-of-lin
267e0 65 0a 20 20 20 20 20 20 28 63 61 6c 6c 20 74 68  e.      (call th
267f0 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64 20 70  e expr command p
26800 72 6f 63 65 64 75 72 65 20 61 74 20 72 75 6e 74  rocedure at runt
26810 69 6d 65 29 20 74 6f 20 65 6e 73 75 72 65 20 74  ime) to ensure t
26820 68 65 20 63 6f 72 72 65 63 74 0a 20 20 20 20 20  he correct.     
26830 20 62 65 68 61 76 69 6f 72 20 77 68 65 6e 20 22   behavior when "
26840 24 78 22 20 69 73 20 61 6e 20 65 78 70 72 65 73  $x" is an expres
26850 73 69 6f 6e 20 73 75 63 68 20 61 73 20 22 35 2b  sion such as "5+
26860 31 30 22 2e 0a 20 20 20 20 2d 20 22 61 72 72 61  10"..    - "arra
26870 79 20 73 65 74 20 61 20 7b 7d 22 20 6e 6f 77 20  y set a {}" now 
26880 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 61 72  creates a new ar
26890 72 61 79 20 76 61 72 20 77 69 74 68 20 61 6e 20  ray var with an 
268a0 65 6d 70 74 79 20 61 72 72 61 79 0a 20 20 20 20  empty array.    
268b0 20 20 76 61 6c 75 65 20 69 66 20 74 68 65 20 76    value if the v
268c0 61 72 20 64 69 64 6e 27 74 20 61 6c 72 65 61 64  ar didn't alread
268d0 79 20 65 78 69 73 74 2e 0a 20 20 20 20 2d 20 22  y exist..    - "
268e0 6c 72 65 70 6c 61 63 65 20 24 66 6f 6f 20 65 6e  lreplace $foo en
268f0 64 20 65 6e 64 22 20 6e 6f 20 6c 6f 6e 67 65 72  d end" no longer
26900 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f   returns an erro
26910 72 20 28 6a 75 73 74 20 61 6e 20 65 6d 70 74 79  r (just an empty
26920 0a 20 20 20 20 20 20 6c 69 73 74 29 20 69 66 20  .      list) if 
26930 66 6f 6f 20 69 73 20 65 6d 70 74 79 2e 0a 20 20  foo is empty..  
26940 20 20 2d 20 75 70 76 61 72 20 77 69 6c 6c 20 6e    - upvar will n
26950 6f 20 6c 6f 6e 67 65 72 20 63 72 65 61 74 65 20  o longer create 
26960 61 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61 20  a variable in a 
26970 6e 61 6d 65 73 70 61 63 65 20 74 68 61 74 20 72  namespace that r
26980 65 66 65 72 73 0a 20 20 20 20 20 20 74 6f 20 61  efers.      to a
26990 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61 20 70   variable in a p
269a0 72 6f 63 65 64 75 72 65 2e 0a 20 20 20 20 2d 20  rocedure..    - 
269b0 64 65 6c 65 74 69 6e 67 20 61 20 63 6f 6d 6d 61  deleting a comma
269c0 6e 64 20 74 72 61 63 65 20 77 69 74 68 69 6e 20  nd trace within 
269d0 61 20 63 6f 6d 6d 61 6e 64 20 74 72 61 63 65 20  a command trace 
269e0 63 61 6c 6c 62 61 63 6b 20 77 6f 75 6c 64 0a 20  callback would. 
269f0 20 20 20 20 20 6d 61 6b 65 20 74 68 65 20 63 6f       make the co
26a00 64 65 20 74 68 61 74 20 63 61 6c 6c 73 20 74 72  de that calls tr
26a10 61 63 65 73 20 74 6f 20 72 65 66 65 72 65 6e 63  aces to referenc
26a20 65 20 66 72 65 65 64 20 6d 65 6d 6f 72 79 2e 0a  e freed memory..
26a30 20 20 20 20 2d 20 73 69 67 6e 69 66 69 63 61 6e      - significan
26a40 74 6c 79 20 73 70 65 64 20 75 70 20 22 73 74 72  tly sped up "str
26a50 69 6e 67 20 66 69 72 73 74 22 20 61 6e 64 20 22  ing first" and "
26a60 73 74 72 69 6e 67 20 6c 61 73 74 22 20 28 66 69  string last" (fi
26a70 78 20 66 72 6f 6d 0a 20 20 20 20 20 20 64 61 72  x from.      dar
26a80 72 65 6c 40 67 65 6d 73 74 6f 6e 65 2e 63 6f 6d  [email protected]
26a90 29 2e 0a 20 20 20 20 2d 20 73 65 67 20 66 61 75  )..    - seg fau
26aa0 6c 74 20 69 6e 20 54 63 6c 5f 4e 65 77 53 74 72  lt in Tcl_NewStr
26ab0 69 6e 67 4f 62 6a 28 29 20 77 68 65 6e 20 61 20  ingObj() when a 
26ac0 4e 55 4c 4c 20 69 73 20 70 61 73 73 65 64 20 61  NULL is passed a
26ad0 73 20 74 68 65 20 62 79 74 65 0a 20 20 20 20 20  s the byte.     
26ae0 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d 65 6e   pointer argumen
26af0 74 20 61 6e 64 20 54 63 6c 20 69 73 20 63 6f 6d  t and Tcl is com
26b00 70 69 6c 65 64 20 77 69 74 68 20 2d 44 54 43 4c  piled with -DTCL
26b10 5f 4d 45 4d 5f 44 45 42 55 47 2e 0a 20 20 20 20  _MEM_DEBUG..    
26b20 2d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20  - documentation 
26b30 61 6e 64 20 65 72 72 6f 72 20 6d 73 67 20 66 69  and error msg fi
26b40 78 65 73 2e 20 28 42 4c 29 0a 0a 31 31 2f 33 2f  xes. (BL)..11/3/
26b50 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78  97 (bug fix) Fix
26b60 65 64 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 49  ed a number of I
26b70 2f 4f 20 62 75 67 73 20 72 65 6c 61 74 65 64 20  /O bugs related 
26b80 74 6f 20 77 6f 72 64 20 73 69 7a 65 73 20 6f 6e  to word sizes on
26b90 0a 36 34 2d 62 69 74 20 6d 61 63 68 69 6e 65 73  .64-bit machines
26ba0 2e 20 28 53 53 29 0a 0a 31 31 2f 36 2f 39 37 20  . (SS)..11/6/97 
26bb0 28 62 75 67 20 66 69 78 29 20 54 68 65 20 65 78  (bug fix) The ex
26bc0 69 74 20 63 6f 64 65 20 6f 66 20 74 68 65 20 66  it code of the f
26bd0 69 72 73 74 20 70 72 6f 63 65 73 73 20 63 72 65  irst process cre
26be0 61 74 65 64 20 62 79 20 54 63 6c 0a 6f 6e 20 57  ated by Tcl.on W
26bf0 69 6e 64 6f 77 73 20 77 61 73 20 6e 6f 74 20 70  indows was not p
26c00 72 6f 70 65 72 6c 79 20 72 65 70 6f 72 74 65 64  roperly reported
26c10 20 64 75 65 20 74 6f 20 61 6e 20 69 6e 69 74 69   due to an initi
26c20 61 6c 69 7a 61 74 69 6f 6e 0a 70 72 6f 62 6c 65  alization.proble
26c30 6d 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d 2d  m. (SS)..-------
26c40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
26c50 73 65 64 20 38 2e 30 70 31 2c 20 31 31 2f 37 2f  sed 8.0p1, 11/7/
26c60 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  97 -------------
26c70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 31 2f 31  ----------..11/1
26c80 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  9/97 (bug fix) F
26c90 69 78 65 64 20 62 75 67 20 69 6e 20 6c 69 6e 73  ixed bug in lins
26ca0 65 72 74 20 77 68 65 72 65 20 69 74 20 73 6f 6d  ert where it som
26cb0 65 74 69 6d 65 73 20 61 63 63 69 64 65 6e 74 6c  etimes accidentl
26cc0 79 0a 63 6c 65 61 72 65 64 20 6f 75 74 20 61 20  y.cleared out a 
26cd0 73 68 61 72 65 64 20 61 72 67 75 6d 65 6e 74 20  shared argument 
26ce0 6c 69 73 74 20 6f 62 6a 65 63 74 2e 20 28 42 4c  list object. (BL
26cf0 29 2e 0a 0a 31 31 2f 31 39 2f 39 37 20 28 62 75  )...11/19/97 (bu
26d00 67 20 66 69 78 29 20 41 75 74 6f 6c 6f 61 64 69  g fix) Autoloadi
26d10 6e 67 20 69 6e 20 6e 61 6d 65 73 70 61 63 65 73  ng in namespaces
26d20 20 77 61 73 20 6e 6f 74 20 77 6f 72 6b 69 6e 67   was not working
26d30 20 70 72 6f 70 65 72 6c 79 2e 0a 61 75 74 6f 5f   properly..auto_
26d40 6d 6b 69 6e 64 65 78 20 69 73 20 73 74 69 6c 6c  mkindex is still
26d50 20 6e 6f 74 20 72 65 61 6c 6c 79 20 6e 61 6d 65   not really name
26d60 73 70 61 63 65 20 61 77 61 72 65 20 62 75 74 20  space aware but 
26d70 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 0a 63 61 73 65  most common.case
26d80 73 20 73 68 6f 75 6c 64 20 6e 6f 77 20 62 65 20  s should now be 
26d90 68 61 6e 64 6c 65 64 20 70 72 6f 70 65 72 6c 79  handled properly
26da0 20 28 73 65 65 20 69 6e 69 74 2e 74 65 73 74 29   (see init.test)
26db0 2e 20 28 42 57 2c 20 44 4c 29 0a 0a 31 31 2f 32  . (BW, DL)..11/2
26dc0 30 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65 6e  0/97 (enhancemen
26dd0 74 29 20 4d 61 64 65 20 74 68 65 20 63 68 61 6e  t) Made the chan
26de0 67 65 73 20 72 65 71 75 69 72 65 64 20 62 79 20  ges required by 
26df0 74 68 65 20 6e 65 77 20 41 70 70 6c 65 0a 55 6e  the new Apple.Un
26e00 69 76 65 72 73 61 6c 20 48 65 61 64 65 72 73 20  iversal Headers 
26e10 56 2e 33 2e 30 2c 20 73 6f 20 74 68 61 74 20 54  V.3.0, so that T
26e20 63 6c 20 77 69 6c 6c 20 63 6f 6d 70 69 6c 65 20  cl will compile 
26e30 77 69 74 68 20 43 57 20 50 72 6f 20 32 2e 0a 0a  with CW Pro 2...
26e40 31 31 2f 32 34 2f 39 37 20 28 62 75 67 20 66 69  11/24/97 (bug fi
26e50 78 29 20 46 69 78 65 64 20 74 65 73 74 73 20 69  x) Fixed tests i
26e60 6e 20 63 6c 6f 63 6b 20 74 65 73 74 20 73 75 69  n clock test sui
26e70 74 65 20 74 68 61 74 20 6e 65 65 64 65 64 20 74  te that needed t
26e80 68 65 0a 2d 67 6d 74 20 66 6c 61 67 20 73 65 74  he.-gmt flag set
26e90 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 4a 61 6e  .  Thanks to Jan
26ea0 20 4e 69 6a 74 6d 61 6e 73 20 66 6f 72 20 72 65   Nijtmans for re
26eb0 70 6f 72 74 69 6e 67 20 74 68 65 20 70 72 6f 62  porting the prob
26ec0 6c 65 6d 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d  lem. (RJ)..-----
26ed0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
26ee0 65 61 73 65 64 20 38 2e 30 70 32 2c 20 31 31 2f  eased 8.0p2, 11/
26ef0 32 35 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  25/97 ----------
26f00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31  -------------..1
26f10 32 2f 33 2f 39 37 20 28 62 75 67 20 66 69 78 2f  2/3/97 (bug fix/
26f20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20 52 65  optimization) Re
26f30 6d 6f 76 65 64 20 75 6e 65 65 64 65 64 20 61 6e  moved uneeded an
26f40 64 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20 64 61  d potentially da
26f50 6e 67 65 72 6f 75 73 0a 69 6e 73 74 61 6e 63 65  ngerous.instance
26f60 73 20 6f 66 20 64 6f 75 62 6c 65 20 65 76 61 6c  s of double eval
26f70 75 61 74 69 6f 6e 73 20 69 66 20 22 69 66 22 20  uations if "if" 
26f80 61 6e 64 20 22 65 78 70 72 22 20 73 74 61 74 65  and "expr" state
26f90 6d 65 6e 74 73 20 66 72 6f 6d 0a 74 68 65 20 6c  ments from.the l
26fa0 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 49 74  ibrary files. It
26fb0 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20   is recommended 
26fc0 74 68 61 74 20 75 6e 6c 65 73 73 20 79 6f 75 20  that unless you 
26fd0 6e 65 65 64 20 61 20 64 6f 75 62 6c 65 0a 65 76  need a double.ev
26fe0 61 6c 75 61 74 69 6f 6e 20 79 6f 75 20 61 6c 77  aluation you alw
26ff0 61 79 73 20 75 73 65 20 22 65 78 70 72 20 7b 2e  ays use "expr {.
27000 2e 2e 7d 22 20 69 6e 73 74 65 61 64 20 6f 66 20  ..}" instead of 
27010 22 65 78 70 72 20 2e 2e 2e 22 20 61 6e 64 0a 22  "expr ..." and."
27020 69 66 20 7b 2e 2e 2e 7d 20 2e 2e 2e 22 20 69 6e  if {...} ..." in
27030 73 74 65 61 64 20 6f 66 20 22 69 66 20 2e 2e 2e  stead of "if ...
27040 20 2e 2e 2e 22 2e 20 49 74 20 77 69 6c 6c 20 61   ...". It will a
27050 6c 73 6f 20 62 65 20 66 61 73 74 65 72 0a 74 68  lso be faster.th
27060 61 6e 6b 73 20 74 6f 20 74 68 65 20 62 79 74 65  anks to the byte
27070 20 63 6f 6d 70 69 6c 65 72 2e 20 28 44 4c 29 0a   compiler. (DL).
27080 0a 2d 2d 2d 2d 20 53 68 69 70 70 65 64 20 61 73  .---- Shipped as
27090 20 70 61 72 74 20 6f 66 20 74 68 65 20 70 6c 75   part of the plu
270a0 67 69 6e 32 2e 30 62 35 20 61 73 20 38 2e 30 70  gin2.0b5 as 8.0p
270b0 32 50 6c 75 67 69 6e 31 2c 20 44 65 63 20 38 74  2Plugin1, Dec 8t
270c0 68 20 39 37 20 2d 2d 2d 2d 0a 0a 31 32 2f 38 2f  h 97 ----..12/8/
270d0 39 37 20 28 62 75 67 20 66 69 78 29 20 4e 65 65  97 (bug fix) Nee
270e0 64 20 74 6f 20 70 72 6f 74 65 63 74 20 74 68 65  d to protect the
270f0 20 6e 65 77 6c 79 20 61 63 63 65 70 74 65 64 20   newly accepted 
27100 63 68 61 6e 6e 65 6c 20 69 6e 20 61 6e 0a 61 63  channel in an.ac
27110 63 65 70 74 20 63 61 6c 6c 62 61 63 6b 20 6f 6e  cept callback on
27120 20 61 20 73 6f 63 6b 65 74 2c 20 6f 74 68 65 72   a socket, other
27130 77 69 73 65 20 74 68 65 20 63 61 6c 6c 62 61 63  wise the callbac
27140 6b 20 6d 61 79 20 63 6c 6f 73 65 20 69 74 20 61  k may close it a
27150 6e 64 0a 63 61 75 73 65 20 61 6e 20 65 72 72 6f  nd.cause an erro
27160 72 2c 20 77 68 69 63 68 20 77 6f 75 6c 64 20 63  r, which would c
27170 61 75 73 65 20 74 68 65 20 43 20 63 6f 64 65 20  ause the C code 
27180 74 6f 20 61 74 74 65 6d 70 74 20 74 6f 20 63 6c  to attempt to cl
27190 6f 73 65 20 74 68 65 0a 6e 6f 77 20 64 65 6c 65  ose the.now dele
271a0 74 65 64 20 63 68 61 6e 6e 65 6c 2e 20 42 75 6d  ted channel. Bum
271b0 70 69 6e 67 20 74 68 65 20 72 65 66 63 6f 75 6e  ping the refcoun
271c0 74 20 61 73 73 75 72 65 73 20 74 68 61 74 20 74  t assures that t
271d0 68 65 20 63 68 61 6e 6e 65 6c 20 73 74 69 63 6b  he channel stick
271e0 73 0a 61 72 6f 75 6e 64 20 74 6f 20 62 65 20 72  s.around to be r
271f0 65 61 6c 6c 79 20 63 6c 6f 73 65 64 20 69 6e 20  eally closed in 
27200 74 68 69 73 20 63 61 73 65 2e 20 28 4a 4c 29 0a  this case. (JL).
27210 0a 31 32 2f 38 2f 39 37 20 28 62 75 67 20 66 69  .12/8/97 (bug fi
27220 78 29 20 4e 65 65 64 20 74 6f 20 70 72 6f 74 65  x) Need to prote
27230 63 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 69  ct the channel i
27240 6e 20 61 20 66 69 6c 65 65 76 65 6e 74 20 73 6f  n a fileevent so
27250 20 74 68 61 74 20 69 74 0a 69 73 20 6e 6f 74 20   that it.is not 
27260 64 65 6c 65 74 65 64 20 62 65 66 6f 72 65 20 74  deleted before t
27270 68 65 20 66 69 6c 65 65 76 65 6e 74 20 68 61 6e  he fileevent han
27280 64 6c 65 72 20 72 65 74 75 72 6e 73 2e 20 28 43  dler returns. (C
27290 53 2c 20 4a 4c 29 0a 0a 31 32 2f 31 38 2f 39 37  S, JL)..12/18/97
272a0 20 28 62 75 67 20 66 69 78 29 20 49 6e 20 74 68   (bug fix) In th
272b0 65 20 6f 70 74 20 61 72 67 75 6d 65 6e 74 20 70  e opt argument p
272c0 61 72 73 69 6e 67 20 70 61 63 6b 61 67 65 3a 20  arsing package: 
272d0 69 66 20 74 68 65 20 64 65 73 63 72 69 70 74 69  if the descripti
272e0 6f 6e 0a 68 61 64 20 6f 6e 6c 79 20 66 6c 61 67  on.had only flag
272f0 73 2c 20 74 68 65 20 22 74 6f 6f 20 6d 61 6e 79  s, the "too many
27300 20 61 72 67 75 6d 65 6e 74 73 22 20 63 61 73 65   arguments" case
27310 20 77 61 73 20 6e 6f 74 20 64 65 74 65 63 74 65   was not detecte
27320 64 2e 20 54 68 65 20 64 65 66 61 75 6c 74 0a 76  d. The default.v
27330 61 6c 75 65 20 77 61 73 20 6e 6f 74 20 75 73 65  alue was not use
27340 64 20 66 6f 72 20 74 68 65 20 73 70 65 63 69 61  d for the specia
27350 6c 20 22 61 72 67 73 22 20 65 6e 64 69 6e 67 20  l "args" ending 
27360 61 72 67 75 6d 65 6e 74 2e 20 28 44 4c 29 0a 0a  argument. (DL)..
27370 31 2f 31 35 2f 39 38 20 28 69 6d 70 72 6f 76 65  1/15/98 (improve
27380 6d 65 6e 74 29 20 4d 6f 76 65 64 20 63 6f 6d 6d  ment) Moved comm
27390 6f 6e 20 70 61 72 74 20 6f 66 20 69 6e 69 74 53  on part of initS
273a0 63 72 69 70 74 20 69 6e 20 63 6f 6d 6d 6f 6e 20  cript in common 
273b0 66 69 6c 65 2e 0a 4d 6f 76 65 64 20 77 69 6e 64  file..Moved wind
273c0 6f 77 73 20 73 70 65 63 69 66 69 63 20 69 6e 69  ows specific ini
273d0 74 69 61 6c 69 7a 61 74 69 6f 6e 20 74 6f 20 69  tialization to i
273e0 6e 69 74 2e 74 63 6c 20 73 6f 20 79 6f 75 20 63  nit.tcl so you c
273f0 61 6e 20 69 6e 69 74 69 61 6c 69 7a 65 0a 54 63  an initialize.Tc
27400 6c 20 69 6e 20 77 69 6e 64 6f 77 73 20 77 69 74  l in windows wit
27410 68 6f 75 74 20 68 61 76 69 6e 67 20 74 6f 20 63  hout having to c
27420 61 6c 6c 20 54 63 6c 5f 49 6e 69 74 20 77 68 69  all Tcl_Init whi
27430 63 68 20 69 73 20 6e 6f 77 20 6f 6e 6c 79 0a 73  ch is now only.s
27440 65 61 72 63 68 69 6e 67 20 66 6f 72 20 69 6e 69  earching for ini
27450 74 2e 74 63 6c 20 7b 62 61 63 6b 20 70 6f 72 74  t.tcl {back port
27460 65 64 20 66 72 6f 6d 20 38 2e 31 7d 2e 20 28 44  ed from 8.1}. (D
27470 4c 29 0a 0a 2d 2d 2d 2d 20 53 68 69 70 70 65 64  L)..---- Shipped
27480 20 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20   as part of the 
27490 70 6c 75 67 69 6e 20 61 73 20 38 2e 30 70 32 50  plugin as 8.0p2P
274a0 6c 75 67 69 6e 32 2c 20 4a 61 6e 20 31 35 74 68  lugin2, Jan 15th
274b0 20 39 38 20 2d 2d 2d 2d 0a 0a 35 2f 32 37 2f 39   98 ----..5/27/9
274c0 38 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64  8 (bug fix) Wind
274d0 6f 77 73 20 73 6f 63 6b 65 74 20 64 72 69 76 65  ows socket drive
274e0 72 20 64 69 64 20 6e 6f 74 20 6e 6f 74 69 63 65  r did not notice
274f0 20 6e 65 77 20 64 61 74 61 20 61 72 72 69 76 69   new data arrivi
27500 6e 67 0a 6f 6e 20 6e 6f 6e 62 6c 6f 63 6b 69 6e  ng.on nonblockin
27510 67 20 73 6f 63 6b 65 74 73 20 75 6e 74 69 6c 20  g sockets until 
27520 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70 20 77  the event loop w
27530 61 73 20 65 6e 74 65 72 65 64 2e 20 28 53 53 29  as entered. (SS)
27540 0a 0a 35 2f 32 37 2f 39 38 20 28 62 75 67 20 66  ..5/27/98 (bug f
27550 69 78 29 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b  ix) Windows sock
27560 65 74 20 64 72 69 76 65 72 20 75 73 65 64 20 46  et driver used F
27570 49 4f 4e 52 45 41 44 2c 20 77 68 69 63 68 20 69  IONREAD, which i
27580 73 20 6e 6f 74 0a 73 75 70 70 6f 72 74 65 64 20  s not.supported 
27590 63 6f 72 72 65 63 74 6c 79 20 62 79 20 57 69 6e  correctly by Win
275a0 53 6f 63 6b 2e 20 28 53 53 29 0a 0a 36 2f 39 2f  Sock. (SS)..6/9/
275b0 39 38 20 28 62 75 67 20 66 69 78 29 20 47 65 6e  98 (bug fix) Gen
275c0 65 72 69 63 20 63 68 61 6e 6e 65 6c 20 63 6f 64  eric channel cod
275d0 65 20 66 61 69 6c 65 64 20 74 6f 20 72 65 70 6f  e failed to repo
275e0 72 74 20 72 65 61 64 61 62 6c 65 20 66 69 6c 65  rt readable file
275f0 0a 65 76 65 6e 74 73 20 6f 6e 20 62 75 66 66 65  .events on buffe
27600 72 65 64 20 64 61 74 61 20 74 68 61 74 20 77 61  red data that wa
27610 73 20 6c 65 66 74 20 62 65 68 69 6e 64 20 62 79  s left behind by
27620 20 61 20 67 65 74 73 20 6f 72 20 72 65 61 64 20   a gets or read 
27630 74 68 61 74 0a 64 69 64 20 6e 6f 74 20 63 6f 6e  that.did not con
27640 73 75 6d 65 20 61 6c 6c 20 61 76 61 69 6c 61 62  sume all availab
27650 6c 65 20 64 61 74 61 2e 20 28 53 53 29 0a 0a 36  le data. (SS)..6
27660 2f 31 38 2f 39 38 20 28 62 75 67 20 66 69 78 29  /18/98 (bug fix)
27670 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 66 20   Compilation of 
27680 6c 6f 6f 70 20 65 78 70 72 65 73 73 69 6f 6e 73  loop expressions
27690 20 77 61 73 20 74 6f 6f 20 61 67 67 72 65 73 73   was too aggress
276a0 69 76 65 0a 61 6e 64 20 69 6e 63 6f 72 72 65 63  ive.and incorrec
276b0 74 6c 79 20 69 6e 6c 69 6e 65 64 20 6e 6f 6e 2d  tly inlined non-
276c0 6c 69 74 65 72 61 6c 20 65 78 70 72 65 73 73 69  literal expressi
276d0 6f 6e 73 2e 20 28 53 53 29 0a 0a 36 2f 31 38 2f  ons. (SS)..6/18/
276e0 39 38 20 28 62 75 67 20 66 69 78 29 20 22 69 6e  98 (bug fix) "in
276f0 66 6f 20 76 61 72 22 20 61 6e 64 20 22 69 6e 66  fo var" and "inf
27700 6f 20 6c 6f 63 61 6c 73 22 20 69 6e 63 6f 72 72  o locals" incorr
27710 65 63 74 6c 79 20 72 65 70 6f 72 74 65 64 0a 74  ectly reported.t
27720 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66 20  he existence of 
27730 63 6f 6d 70 69 6c 65 72 20 74 65 6d 70 6f 72 61  compiler tempora
27740 72 79 20 76 61 72 69 61 62 6c 65 73 2e 20 28 53  ry variables. (S
27750 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75 67  S)..6/18/98 (bug
27760 20 66 69 78 29 20 44 69 63 74 69 6f 6e 61 72 79   fix) Dictionary
27770 20 73 6f 72 74 69 6e 67 20 75 73 65 64 20 73 69   sorting used si
27780 67 6e 65 64 20 63 68 61 72 61 63 74 65 72 0a 63  gned character.c
27790 6f 6d 70 61 72 69 73 6f 6e 73 2e 20 28 53 53 29  omparisons. (SS)
277a0 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75 67 20 66  ..6/18/98 (bug f
277b0 69 78 29 20 43 6f 6d 70 69 6c 65 20 70 72 6f 63  ix) Compile proc
277c0 73 20 63 6f 72 72 75 70 74 65 64 20 74 68 65 20  s corrupted the 
277d0 65 78 63 65 70 74 69 6f 6e 20 73 74 61 63 6b 20  exception stack 
277e0 69 6e 20 73 6f 6d 65 0a 63 61 73 65 73 2e 20 28  in some.cases. (
277f0 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75  SS)..6/18/98 (bu
27800 67 20 66 69 78 29 20 41 72 72 61 79 20 73 65 74  g fix) Array set
27810 20 68 61 64 20 65 72 72 61 74 69 63 20 62 65 68   had erratic beh
27820 61 76 69 6f 72 20 77 68 65 6e 20 69 6e 69 74 69  avior when initi
27830 61 6c 69 7a 69 6e 67 20 61 0a 76 61 72 69 61 62  alizing a.variab
27840 6c 65 20 66 72 6f 6d 20 61 6e 20 65 6d 70 74 79  le from an empty
27850 20 76 61 6c 75 65 20 6c 69 73 74 2e 20 28 53 53   value list. (SS
27860 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75 67 20  )..6/18/98 (bug 
27870 66 69 78 29 20 54 68 65 20 57 69 6e 64 6f 77 73  fix) The Windows
27880 20 72 65 67 69 73 74 72 79 20 70 61 63 6b 61 67   registry packag
27890 65 20 68 61 64 20 61 20 62 61 64 20 62 6f 75 6e  e had a bad boun
278a0 64 73 20 63 68 65 63 6b 0a 74 68 61 74 20 63 6f  ds check.that co
278b0 75 6c 64 20 6c 65 61 64 20 74 6f 20 61 20 63 72  uld lead to a cr
278c0 61 73 68 2e 20 28 53 53 29 0a 0a 36 2f 31 38 2f  ash. (SS)..6/18/
278d0 39 38 20 28 62 75 67 20 66 69 78 29 20 54 68 65  98 (bug fix) The
278e0 20 66 6f 72 65 61 63 68 20 63 6f 6d 70 69 6c 65   foreach compile
278f0 20 70 72 6f 63 20 64 69 64 20 6e 6f 74 20 63 6f   proc did not co
27900 72 72 65 63 74 6c 79 20 68 61 6e 64 6c 65 0a 6e  rrectly handle.n
27910 6f 6e 2d 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c  on-local variabl
27920 65 20 72 65 66 65 72 65 6e 63 65 73 2e 20 28 53  e references. (S
27930 53 29 0a 0a 36 2f 32 35 2f 39 38 20 28 6e 65 77  S)..6/25/98 (new
27940 20 66 65 61 74 75 72 65 73 29 20 41 64 64 65 64   features) Added
27950 20 6e 61 6d 65 20 72 65 73 6f 6c 75 74 69 6f 6e   name resolution
27960 20 68 6f 6f 6b 73 20 74 6f 20 73 75 70 70 6f 72   hooks to suppor
27970 74 20 5b 69 6e 63 72 20 54 63 6c 5d 2e 0a 54 68  t [incr Tcl]..Th
27980 65 72 65 20 61 72 65 20 6e 65 77 20 69 6e 74 65  ere are new inte
27990 72 6e 61 6c 20 54 63 6c 5f 2a 52 65 73 6f 6c 76  rnal Tcl_*Resolv
279a0 65 72 2a 20 41 50 49 73 20 74 6f 20 61 64 64 2c  er* APIs to add,
279b0 20 71 75 65 72 79 20 61 6e 64 20 72 65 6d 6f 76   query and remov
279c0 65 20 74 68 65 20 68 6f 6f 6b 73 2e 0a 57 69 74  e the hooks..Wit
279d0 68 20 74 68 69 73 20 63 68 61 6e 67 65 73 20 69  h this changes i
279e0 74 20 73 68 6f 75 6c 64 20 62 65 20 70 6f 73 73  t should be poss
279f0 69 62 6c 65 20 74 6f 20 64 79 6e 61 6d 69 63 61  ible to dynamica
27a00 6c 6c 79 20 6c 6f 61 64 20 5b 69 6e 63 72 20 54  lly load [incr T
27a10 63 6c 5d 0a 61 73 20 61 6e 20 65 78 74 65 6e 73  cl].as an extens
27a20 69 6f 6e 2e 20 28 4d 4d 29 0a 0a 37 2f 31 2f 39  ion. (MM)..7/1/9
27a30 37 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  7 (bug fix) The 
27a40 63 6f 6d 6d 61 6e 64 73 20 22 69 6e 66 6f 20 61  commands "info a
27a50 72 67 73 2c 20 62 6f 64 79 2c 20 64 65 66 61 75  rgs, body, defau
27a60 6c 74 2c 20 70 72 6f 63 73 22 20 64 69 64 0a 6e  lt, procs" did.n
27a70 6f 74 20 63 6f 72 72 65 63 74 6c 79 20 68 61 6e  ot correctly han
27a80 64 6c 65 20 69 6d 70 6f 72 74 65 64 20 70 72 6f  dle imported pro
27a90 63 65 64 75 72 65 73 2e 20 28 52 4a 29 0a 0a 37  cedures. (RJ)..7
27aa0 2f 36 2f 39 38 20 28 69 6d 70 72 6f 76 65 6d 65  /6/98 (improveme
27ab0 6e 74 29 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20  nt) pkg_mkIndex 
27ac0 6e 6f 77 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74  now implements t
27ad0 68 65 20 22 70 61 63 6b 61 67 65 20 72 65 71 75  he "package requ
27ae0 69 72 65 22 0a 63 6f 6d 6d 61 6e 64 2e 20 20 54  ire".command.  T
27af0 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 6f 73  his makes it pos
27b00 73 69 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20  sible to create 
27b10 69 6e 64 65 78 20 66 69 6c 65 73 20 66 6f 72 20  index files for 
27b20 70 61 63 6b 61 67 65 73 0a 74 68 61 74 20 72 65  packages.that re
27b30 71 75 69 72 65 20 61 6e 6f 74 68 65 72 20 70 61  quire another pa
27b40 63 6b 61 67 65 20 61 6e 64 20 74 68 65 6e 20 65  ckage and then e
27b50 78 65 63 75 74 65 20 63 6f 64 65 20 66 72 6f 6d  xecute code from
27b60 20 74 68 61 74 20 70 61 63 6b 61 67 65 20 69 6e   that package in
27b70 0a 74 68 65 69 72 20 66 69 6c 65 2e 20 50 72 65  .their file. Pre
27b80 76 69 6f 75 73 6c 79 2c 20 74 68 69 73 20 77 6f  viously, this wo
27b90 75 6c 64 20 74 68 72 6f 77 20 61 6e 20 65 72 72  uld throw an err
27ba0 6f 72 20 62 65 63 61 75 73 65 20 74 68 65 20 72  or because the r
27bb0 65 71 75 69 72 65 64 0a 70 61 63 6b 61 67 65 20  equired.package 
27bc0 68 61 64 20 6e 6f 74 20 62 65 65 6e 20 6c 6f 61  had not been loa
27bd0 64 65 64 2e 20 20 54 68 65 20 2d 6e 6f 70 6b 67  ded.  The -nopkg
27be0 72 65 71 75 69 65 64 20 66 6c 61 67 20 69 73 20  requied flag is 
27bf0 70 72 6f 76 69 64 65 64 20 74 6f 0a 72 65 76 65  provided to.reve
27c00 72 74 20 62 61 63 6b 20 74 6f 20 74 68 65 20 6f  rt back to the o
27c10 6c 64 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79  ld functionality
27c20 2e 20 28 45 4d 53 29 0a 0a 37 2f 36 2f 39 38 20  . (EMS)..7/6/98 
27c30 28 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20 62 61  (improvement) ba
27c40 63 6b 2d 70 6f 72 74 65 64 20 74 68 65 20 2d 64  ck-ported the -d
27c50 69 72 65 63 74 20 66 6c 61 67 20 66 72 6f 6d 20  irect flag from 
27c60 38 2e 31 20 69 6e 74 6f 0a 70 6b 67 5f 6d 6b 49  8.1 into.pkg_mkI
27c70 6e 64 65 78 2e 20 20 54 68 69 73 20 72 65 73 75  ndex.  This resu
27c80 6c 74 73 20 69 6e 20 70 6b 67 49 6e 64 65 78 2e  lts in pkgIndex.
27c90 74 63 6c 20 66 69 6c 65 73 20 74 68 61 74 20 63  tcl files that c
27ca0 6f 6e 74 61 69 6e 20 64 69 72 65 63 74 0a 73 6f  ontain direct.so
27cb0 75 72 63 65 20 6f 72 20 6c 6f 61 64 20 63 6f 6d  urce or load com
27cc0 6d 61 6e 64 73 20 69 6e 73 74 65 61 64 20 6f 66  mands instead of
27cd0 20 74 63 6c 50 6b 67 53 65 74 75 70 20 63 6f 6d   tclPkgSetup com
27ce0 6d 61 6e 64 73 2e 20 28 45 4d 53 29 0a 0a 37 2f  mands. (EMS)..7/
27cf0 36 2f 39 38 20 28 69 6d 70 72 6f 76 65 6d 65 6e  6/98 (improvemen
27d00 74 29 20 6d 61 64 65 20 63 68 61 6e 67 65 73 20  t) made changes 
27d10 74 6f 20 74 68 65 20 41 75 78 44 61 74 61 20 69  to the AuxData i
27d20 74 65 6d 73 20 73 74 72 75 63 74 75 72 65 73 20  tems structures 
27d30 74 6f 20 73 75 70 70 6f 72 74 0a 73 74 6f 72 61  to support.stora
27d40 67 65 20 6f 66 20 63 6f 6d 70 69 6c 65 64 20 73  ge of compiled s
27d50 63 72 69 70 74 73 20 6f 6e 20 64 69 73 6b 2e 20  cripts on disk. 
27d60 41 6c 73 6f 20 73 6f 6d 65 20 72 65 6c 61 74 65  Also some relate
27d70 64 20 6d 69 6e 6f 72 20 63 68 61 6e 67 65 73 20  d minor changes 
27d80 69 6e 0a 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  in.the compilati
27d90 6f 6e 20 61 6e 64 20 65 78 65 63 75 74 69 6f 6e  on and execution
27da0 20 65 6e 67 69 6e 65 2e 20 28 45 4d 53 29 0a 0a   engine. (EMS)..
27db0 36 2f 34 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d  6/4/98 (enhancem
27dc0 65 6e 74 29 20 41 64 64 65 64 20 6e 65 77 20 69  ent) Added new i
27dd0 6e 74 65 72 6e 61 6c 20 72 6f 75 74 69 6e 65 73  nternal routines
27de0 20 74 6f 20 73 75 70 70 6f 72 74 20 69 6e 73 65   to support inse
27df0 72 74 69 6e 67 0a 61 6e 64 20 64 65 6c 65 74 69  rting.and deleti
27e00 6e 67 20 66 72 6f 6d 20 74 68 65 20 73 74 61 74  ng from the stat
27e10 2c 20 61 63 63 65 73 73 2c 20 61 6e 64 20 6f 70  , access, and op
27e20 65 6e 2d 66 69 6c 65 2d 63 68 61 6e 6e 65 6c 20  en-file-channel 
27e30 6d 65 63 68 61 6e 69 73 6d 73 2e 0a 54 63 6c 41  mechanisms..TclA
27e40 63 63 65 73 73 49 6e 73 65 72 74 50 72 6f 63 2c  ccessInsertProc,
27e50 20 54 63 6c 53 74 61 74 49 6e 73 65 72 74 50 72   TclStatInsertPr
27e60 6f 63 2c 20 26 20 54 63 6c 4f 70 65 6e 46 69 6c  oc, & TclOpenFil
27e70 65 43 68 61 6e 6e 65 6c 49 6e 73 65 72 74 50 72  eChannelInsertPr
27e80 6f 63 0a 69 6e 73 65 72 74 20 70 6f 69 6e 74 65  oc.insert pointe
27e90 72 73 20 74 6f 20 73 75 63 68 20 72 6f 75 74 69  rs to such routi
27ea0 6e 65 73 3b 20 54 63 6c 41 63 63 65 73 73 44 65  nes; TclAccessDe
27eb0 6c 65 74 65 50 72 6f 63 2c 20 54 63 6c 53 74 61  leteProc, TclSta
27ec0 74 44 65 6c 65 74 65 50 72 6f 63 2c 0a 26 20 54  tDeleteProc,.& T
27ed0 63 6c 4f 70 65 6e 46 69 6c 65 43 68 61 6e 6e 65  clOpenFileChanne
27ee0 6c 44 65 6c 65 74 65 50 72 6f 63 20 64 65 6c 65  lDeleteProc dele
27ef0 74 65 20 70 6f 69 6e 74 65 72 73 20 74 6f 20 73  te pointers to s
27f00 75 63 68 20 72 6f 75 74 69 6e 65 73 2e 20 20 53  uch routines.  S
27f10 65 65 0a 74 68 65 20 66 69 6c 65 20 67 65 6e 65  ee.the file gene
27f20 72 69 63 2f 74 63 6c 49 4f 55 74 69 6c 73 2e 63  ric/tclIOUtils.c
27f30 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c   for more detail
27f40 73 2e 20 28 53 4b 53 29 0a 0a 37 2f 31 2f 39 38  s. (SKS)..7/1/98
27f50 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 41   (enhancement) A
27f60 64 64 65 64 20 61 20 6e 65 77 20 69 6e 74 65 72  dded a new inter
27f70 6e 61 6c 20 43 20 76 61 72 69 61 62 6c 65 0a 74  nal C variable.t
27f80 63 6c 50 72 65 49 6e 69 74 53 63 72 69 70 74 2e  clPreInitScript.
27f90 20 20 54 68 69 73 20 69 73 20 61 20 70 6f 69 6e    This is a poin
27fa0 74 65 72 20 74 6f 20 61 20 73 74 72 69 6e 67 20  ter to a string 
27fb0 74 68 61 74 20 6d 61 79 20 68 6f 6c 64 20 61 6e  that may hold an
27fc0 0a 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20  .initialization 
27fd0 73 63 72 69 70 74 3b 20 49 66 20 74 68 69 73 20  script; If this 
27fe0 70 6f 69 6e 74 65 72 20 69 73 20 6e 6f 6e 2d 4e  pointer is non-N
27ff0 55 4c 4c 20 69 74 20 69 73 20 65 76 61 6c 75 61  ULL it is evalua
28000 74 65 64 20 69 6e 0a 54 63 6c 5f 49 6e 69 74 28  ted in.Tcl_Init(
28010 29 20 70 72 69 6f 72 20 74 6f 20 74 68 65 20 62  ) prior to the b
28020 75 69 6c 74 2d 69 6e 20 69 6e 69 74 69 61 6c 69  uilt-in initiali
28030 7a 61 74 69 6f 6e 20 73 63 72 69 70 74 20 64 65  zation script de
28040 66 69 6e 65 64 20 69 6e 20 74 68 65 0a 66 69 6c  fined in the.fil
28050 65 20 67 65 6e 65 72 69 63 2f 74 63 6c 49 6e 69  e generic/tclIni
28060 74 53 63 72 69 70 74 2e 68 2e 20 20 28 53 4b 53  tScript.h.  (SKS
28070 29 0a 0a 37 2f 36 2f 39 38 20 28 62 75 67 20 66  )..7/6/98 (bug f
28080 69 78 29 20 52 65 6d 6f 76 65 64 20 64 65 61 64  ix) Removed dead
28090 20 63 6f 64 65 20 69 6e 20 50 6c 61 74 66 6f 72   code in Platfor
280a0 6d 49 6e 69 74 45 78 69 74 48 61 6e 64 6c 65 72  mInitExitHandler
280b0 20 73 6f 20 74 68 61 74 0a 74 68 65 20 54 43 4c   so that.the TCL
280c0 5f 4c 49 42 52 41 52 59 20 76 61 6c 75 65 20 63  _LIBRARY value c
280d0 61 6e 20 62 65 20 73 61 66 65 6c 79 20 70 61 74  an be safely pat
280e0 63 68 65 64 20 69 6e 20 62 69 6e 61 72 69 65 73  ched in binaries
280f0 2e 20 28 42 57 29 0a 0a 37 2f 32 34 2f 39 38 20  . (BW)..7/24/98 
28100 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 49 6e  (enhancement) In
28110 63 6f 72 70 6f 72 61 74 65 64 20 61 20 6e 65 77  corporated a new
28120 20 76 65 72 73 69 6f 6e 20 6f 66 20 61 75 74 6f   version of auto
28130 5f 6d 6b 69 6e 64 65 78 20 74 68 61 74 0a 63 61  _mkindex that.ca
28140 6e 20 73 75 70 70 6f 72 74 20 74 68 65 20 5b 69  n support the [i
28150 6e 63 72 20 54 63 6c 5d 20 63 6c 61 73 73 20 73  ncr Tcl] class s
28160 74 72 75 63 74 75 72 65 73 2e 20 20 54 68 69 73  tructures.  This
28170 20 76 65 72 73 69 6f 6e 20 77 69 6c 6c 20 69 6e   version will in
28180 64 65 78 0a 61 6c 6c 20 70 72 6f 63 65 64 75 72  dex.all procedur
28190 65 73 20 69 6e 20 61 20 73 6f 75 72 63 65 20 66  es in a source f
281a0 69 6c 65 2c 20 6e 6f 74 20 6a 75 73 74 20 74 68  ile, not just th
281b0 6f 73 65 20 77 68 65 72 65 20 22 70 72 6f 63 22  ose where "proc"
281c0 20 73 74 61 72 74 73 0a 61 74 20 74 68 65 20 62   starts.at the b
281d0 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20  eginning of the 
281e0 6c 69 6e 65 2e 20 20 49 66 20 79 6f 75 20 77 61  line.  If you wa
281f0 6e 74 20 74 68 65 20 6f 6c 64 20 62 65 68 61 76  nt the old behav
28200 69 6f 72 2c 20 75 73 65 20 74 68 65 0a 61 75 74  ior, use the.aut
28210 6f 5f 6d 6b 69 6e 64 65 78 5f 6f 6c 64 20 70 72  o_mkindex_old pr
28220 6f 63 65 64 75 72 65 2e 20 28 4d 4d 29 0a 0a 37  ocedure. (MM)..7
28230 2f 32 34 2f 39 38 20 28 66 65 61 74 75 72 65 20  /24/98 (feature 
28240 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20  change) Changed 
28250 74 68 65 20 57 69 6e 64 6f 77 73 20 72 65 67 69  the Windows regi
28260 73 74 72 79 20 6b 65 79 20 74 6f 20 62 65 0a 48  stry key to be.H
28270 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
28280 45 5c 53 6f 66 74 77 61 72 65 5c 53 63 72 69 70  E\Software\Scrip
28290 74 69 63 73 5c 54 63 6c 5c 38 2e 30 2c 20 61 6e  tics\Tcl\8.0, an
282a0 64 20 74 6f 20 73 74 6f 72 65 20 74 68 65 20 70  d to store the p
282b0 61 74 68 0a 69 6e 20 74 68 65 20 64 65 66 61 75  ath.in the defau
282c0 6c 74 20 76 61 6c 75 65 20 69 6e 73 74 65 61 64  lt value instead
282d0 20 6f 66 20 22 52 6f 6f 74 22 2e 20 20 41 6c 73   of "Root".  Als
282e0 6f 2c 20 74 68 69 73 20 6b 65 79 20 63 61 6e 20  o, this key can 
282f0 62 65 0a 73 70 65 63 69 66 69 65 64 20 61 74 20  be.specified at 
28300 63 6f 6d 70 69 6c 65 20 74 69 6d 65 20 69 6e 20  compile time in 
28310 63 61 73 65 20 54 63 6c 20 69 73 20 62 65 69 6e  case Tcl is bein
28320 67 20 75 73 65 64 20 69 6e 20 61 20 64 69 66 66  g used in a diff
28330 65 72 65 6e 74 0a 63 6f 6e 74 65 78 74 20 77 68  erent.context wh
28340 65 72 65 20 69 74 20 6e 65 65 64 73 20 61 6e 20  ere it needs an 
28350 61 6c 74 65 72 6e 61 74 65 20 6c 69 62 72 61 72  alternate librar
28360 79 20 70 61 74 68 20 66 72 6f 6d 20 74 68 65 20  y path from the 
28370 73 74 61 6e 64 61 72 64 20 54 63 6c 0a 69 6e 73  standard Tcl.ins
28380 74 61 6c 6c 61 74 69 6f 6e 2e 20 28 53 53 29 0a  tallation. (SS).
28390 0a 37 2f 32 34 2f 39 38 20 28 66 65 61 74 75 72  .7/24/98 (featur
283a0 65 20 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65  e change) Change
283b0 64 20 74 68 65 20 73 65 61 72 63 68 20 6f 72 64  d the search ord
283c0 65 72 20 66 6f 72 20 69 6e 69 74 2e 74 63 6c 2e  er for init.tcl.
283d0 20 20 54 68 65 0a 74 63 6c 5f 6c 69 62 72 61 72    The.tcl_librar
283e0 79 20 76 61 72 69 61 62 6c 65 20 63 61 6e 20 6e  y variable can n
283f0 6f 77 20 62 65 20 73 65 74 20 62 65 66 6f 72 65  ow be set before
28400 20 63 61 6c 6c 69 6e 67 20 54 63 6c 5f 49 6e 69   calling Tcl_Ini
28410 74 20 74 6f 20 61 76 6f 69 64 0a 64 6f 69 6e 67  t to avoid.doing
28420 20 61 6e 79 20 73 65 61 72 63 68 65 73 2e 20 20   any searches.  
28430 49 66 20 69 74 20 69 73 6e 27 74 20 73 65 74 2c  If it isn't set,
28440 20 74 68 65 6e 20 54 63 6c 20 63 68 65 63 6b 73   then Tcl checks
28450 0a 65 6e 76 28 54 43 4c 5f 4c 49 42 52 41 52 59  .env(TCL_LIBRARY
28460 29 2c 20 74 68 65 20 73 74 61 74 69 63 20 76 61  ), the static va
28470 6c 75 65 20 73 65 74 20 61 74 20 63 6f 6d 70 69  lue set at compi
28480 6c 65 20 74 69 6d 65 2c 20 61 6e 20 69 6e 73 74  le time, an inst
28490 61 6c 6c 0a 64 69 72 65 63 74 6f 72 79 20 72 65  all.directory re
284a0 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 65 78  lative to the ex
284b0 65 63 75 74 61 62 6c 65 2c 20 61 20 73 6f 75 72  ecutable, a sour
284c0 63 65 20 64 69 72 65 63 74 6f 72 79 20 72 65 6c  ce directory rel
284d0 61 74 69 76 65 20 74 6f 0a 74 68 65 20 65 78 65  ative to.the exe
284e0 63 75 74 61 62 6c 65 2c 20 61 6e 64 20 61 20 74  cutable, and a t
284f0 63 6c 20 64 69 72 65 63 74 6f 72 79 20 72 65 6c  cl directory rel
28500 61 74 69 76 65 20 74 6f 20 74 68 65 20 73 6f 75  ative to the sou
28510 72 63 65 20 68 65 69 72 61 72 63 68 79 0a 63 6f  rce heirarchy.co
28520 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 65 78 65  ntaining the exe
28530 63 75 74 61 62 6c 65 2e 20 20 53 65 65 20 74 68  cutable.  See th
28540 65 20 63 6f 6d 6d 65 6e 74 20 61 74 20 74 68 65  e comment at the
28550 20 74 6f 70 20 6f 66 0a 67 65 6e 65 72 69 63 2f   top of.generic/
28560 74 63 6c 49 6e 69 74 53 63 72 69 70 74 2e 68 20  tclInitScript.h 
28570 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73  for more details
28580 2e 20 28 53 53 29 0a 0a 37 2f 32 37 2f 39 38 20  . (SS)..7/27/98 
28590 28 63 6f 6e 66 69 67 20 63 68 61 6e 67 65 29 20  (config change) 
285a0 43 68 61 6e 67 65 64 20 74 68 65 20 75 73 65 20  Changed the use 
285b0 6f 66 20 74 68 65 20 44 42 47 58 20 66 6c 61 67  of the DBGX flag
285c0 20 69 6e 20 63 6f 6e 66 69 67 75 72 65 2e 69 6e   in configure.in
285d0 0a 61 6e 64 20 74 68 65 20 6d 61 6b 65 66 69 6c  .and the makefil
285e0 65 20 74 6f 20 62 65 20 54 43 4c 5f 44 42 47 58  e to be TCL_DBGX
285f0 2e 20 20 55 73 65 72 73 20 6f 66 20 74 63 6c 43  .  Users of tclC
28600 6f 6e 66 69 67 2e 73 68 20 6d 61 79 20 6e 65 65  onfig.sh may nee
28610 64 20 74 6f 20 70 61 73 73 0a 74 68 69 73 20 74  d to pass.this t
28620 68 72 6f 75 67 68 20 74 68 65 69 72 20 63 6f 6e  hrough their con
28630 66 69 67 75 72 65 20 66 69 6c 65 73 20 77 69 74  figure files wit
28640 68 20 41 43 5f 53 55 42 53 54 2e 20 28 42 57 29  h AC_SUBST. (BW)
28650 0a 0a 37 32 39 2f 39 38 20 28 62 75 67 20 66 69  ..729/98 (bug fi
28660 78 29 20 43 68 61 6e 67 65 64 20 5b 69 6e 66 6f  x) Changed [info
28670 20 62 6f 64 79 5d 20 74 6f 20 72 65 74 75 72 6e   body] to return
28680 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 62   a copy of the b
28690 6f 64 79 20 6f 66 20 61 0a 63 6f 6d 70 69 6c 65  ody of a.compile
286a0 64 20 70 72 6f 63 65 64 75 72 65 20 69 6e 73 74  d procedure inst
286b0 65 61 64 20 6f 66 20 74 68 65 20 62 6f 64 79 20  ead of the body 
286c0 69 74 73 65 6c 66 2c 20 74 6f 20 61 76 6f 69 64  itself, to avoid
286d0 20 69 6e 76 61 6c 69 64 61 74 69 6f 6e 0a 6f 66   invalidation.of
286e0 20 74 68 65 20 69 6e 74 65 72 6e 61 6c 20 72 65   the internal re
286f0 70 20 61 6e 64 20 6c 6f 73 73 20 6f 66 20 74 68  p and loss of th
28700 65 20 62 79 74 65 2d 63 6f 64 65 73 2e 20 28 45  e byte-codes. (E
28710 4d 53 29 0a 0a 38 2f 35 2f 39 38 20 28 62 75 67  MS)..8/5/98 (bug
28720 20 66 69 78 29 20 54 68 65 20 70 6c 61 74 66 6f   fix) The platfo
28730 72 6d 20 69 6e 69 74 20 63 6f 64 65 20 63 6f 75  rm init code cou
28740 6c 64 20 77 61 6c 6b 20 6f 66 66 20 74 68 65 20  ld walk off the 
28750 65 6e 64 20 6f 66 20 61 0a 62 75 66 66 65 72 20  end of a.buffer 
28760 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65  when reading the
28770 20 50 6b 67 50 61 74 68 20 72 65 67 69 73 74 72   PkgPath registr
28780 79 20 76 61 6c 75 65 20 6f 6e 20 57 69 6e 64 6f  y value on Windo
28790 77 73 2e 20 28 53 53 29 0a 0a 38 2f 35 2f 39 38  ws. (SS)..8/5/98
287a0 20 28 57 69 6e 64 6f 77 73 20 6d 61 6b 65 66 69   (Windows makefi
287b0 6c 65 20 63 68 61 6e 67 65 29 20 49 6e 74 72 6f  le change) Intro
287c0 64 75 63 65 64 20 61 20 73 65 74 20 6f 66 20 6d  duced a set of m
287d0 61 63 72 6f 73 20 74 6f 20 64 65 61 6c 20 77 69  acros to deal wi
287e0 74 68 0a 65 78 70 6f 72 74 69 6e 67 20 73 79 6d  th.exporting sym
287f0 62 6f 6c 73 20 77 68 65 6e 20 63 6f 6d 70 69 6c  bols when compil
28800 69 6e 67 20 44 4c 4c 53 20 6f 6e 20 57 69 6e 64  ing DLLS on Wind
28810 6f 77 73 2e 20 53 65 65 20 77 69 6e 2f 52 45 41  ows. See win/REA
28820 44 4d 45 20 66 6f 72 0a 64 65 74 61 69 6c 73 2e  DME for.details.
28830 20 28 45 4d 53 29 0a 0a 38 2f 35 2f 39 38 20 28   (EMS)..8/5/98 (
28840 61 64 64 65 6e 64 75 6d 29 20 41 64 64 65 64 20  addendum) Added 
28850 61 20 73 65 63 6f 6e 64 20 57 69 6e 64 6f 77 73  a second Windows
28860 20 72 65 67 69 73 74 72 79 20 6b 65 79 20 75 6e   registry key un
28870 64 65 72 0a 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d  der.HKEY_LOCAL_M
28880 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 5c  ACHINE\Software\
28890 53 63 72 69 70 74 69 63 73 5c 54 63 6c 5c 38 2e  Scriptics\Tcl\8.
288a0 30 2c 20 6e 61 6d 65 64 20 22 70 6b 67 50 61 74  0, named "pkgPat
288b0 68 22 2e 0a 54 68 69 73 20 69 73 20 61 20 6d 75  h"..This is a mu
288c0 6c 74 69 2d 73 74 72 69 6e 67 20 76 61 6c 75 65  lti-string value
288d0 20 75 73 65 64 20 74 6f 20 69 6e 69 74 69 61 6c   used to initial
288e0 69 7a 65 20 74 68 65 20 74 63 6c 5f 70 6b 67 50  ize the tcl_pkgP
288f0 61 74 68 0a 76 61 72 69 61 62 6c 65 2e 20 54 68  ath.variable. Th
28900 69 73 20 69 73 20 72 65 71 75 69 72 65 64 20 69  is is required i
28910 66 20 65 78 74 65 6e 73 69 6f 6e 20 44 4c 4c 73  f extension DLLs
28920 20 61 72 65 20 69 6e 20 61 72 63 68 69 74 65 63   are in architec
28930 74 75 72 65 20 73 70 65 63 69 66 69 63 0a 73 75  ture specific.su
28940 62 64 69 72 65 63 74 6f 72 69 65 73 2e 20 28 53  bdirectories. (S
28950 53 29 0a 0a 38 2f 36 2f 39 38 20 28 6e 65 77 20  S)..8/6/98 (new 
28960 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 74  feature) Added t
28970 63 6c 5f 66 69 6e 64 4c 69 62 72 61 72 79 20 74  cl_findLibrary t
28980 6f 20 69 6e 69 74 2e 74 63 6c 20 66 6f 72 20 75  o init.tcl for u
28990 73 65 20 62 79 0a 65 78 74 65 6e 73 69 6f 6e 73  se by.extensions
289a0 2c 20 69 6e 63 6c 75 64 69 6e 67 20 54 6b 2e 20  , including Tk. 
289b0 20 54 68 69 73 20 73 65 61 72 63 68 65 73 20 69   This searches i
289c0 6e 20 61 20 63 61 6e 6f 6e 69 63 61 6c 20 77 61  n a canonical wa
289d0 79 20 66 6f 72 0a 61 6e 20 65 78 74 65 6e 73 69  y for.an extensi
289e0 6f 6e 73 20 6c 69 62 72 61 72 79 20 64 69 72 65  ons library dire
289f0 63 74 6f 72 79 20 61 6e 64 20 69 6e 69 74 69 61  ctory and initia
28a00 6c 69 7a 61 74 69 6f 6e 20 66 69 6c 65 2e 20 28  lization file. (
28a10 42 57 29 0a 0a 38 2f 31 30 2f 39 38 20 28 62 75  BW)..8/10/98 (bu
28a20 67 20 66 69 78 29 20 49 6d 70 6f 72 74 65 64 20  g fix) Imported 
28a30 63 6f 6d 6d 61 6e 64 73 20 75 73 65 64 20 74 6f  commands used to
28a40 20 67 65 74 20 6c 6f 73 74 20 69 66 20 74 68 65   get lost if the
28a50 20 74 61 72 67 65 74 0a 6f 66 20 74 68 65 20 69   target.of the i
28a60 6d 70 6f 72 74 20 77 61 73 20 72 65 64 65 66 69  mport was redefi
28a70 6e 65 64 2e 20 20 54 63 6c 5f 43 72 65 61 74 65  ned.  Tcl_Create
28a80 43 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63 6c 5f  Command and Tcl_
28a90 43 72 65 61 74 65 4f 62 6a 43 6f 6d 6d 61 6e 64  CreateObjCommand
28aa0 0a 77 65 72 65 20 75 70 64 61 74 65 64 20 74 6f  .were updated to
28ab0 20 72 65 73 74 6f 72 65 20 69 6d 70 6f 72 74 20   restore import 
28ac0 6c 69 6e 6b 73 2e 20 28 4e 6f 74 65 20 74 68 61  links. (Note tha
28ad0 74 20 69 66 20 79 6f 75 20 72 65 6e 61 6d 65 20  t if you rename 
28ae0 61 20 63 6f 6d 6d 61 6e 64 2c 0a 74 68 65 20 69  a command,.the i
28af0 6d 70 6f 72 74 20 6c 69 6e 6b 73 20 6d 6f 76 65  mport links move
28b00 20 74 6f 20 74 68 65 20 6e 65 77 20 6e 61 6d 65   to the new name
28b10 2c 20 61 6e 64 20 69 66 20 79 6f 75 20 64 65 6c  , and if you del
28b20 65 74 65 20 61 20 63 6f 6d 6d 61 6e 64 20 74 68  ete a command th
28b30 65 6e 0a 74 68 65 20 69 6d 70 6f 72 74 20 6c 69  en.the import li
28b40 6e 6b 73 20 67 65 74 20 6c 6f 73 74 2e 20 54 68  nks get lost. Th
28b50 65 73 65 20 73 65 6d 61 6e 74 69 63 73 20 68 61  ese semantics ha
28b60 76 65 20 6e 6f 74 20 63 68 61 6e 67 65 64 2e 29  ve not changed.)
28b70 20 28 4d 43 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 20   (MC)..-------- 
28b80 52 65 6c 65 61 73 65 64 20 38 2e 30 2e 33 20 74  Released 8.0.3 t
28b90 6f 20 74 68 65 20 54 63 6c 20 43 6f 6e 73 6f 72  o the Tcl Consor
28ba0 74 69 75 6d 20 43 44 2d 52 4f 4d 20 70 72 6f 6a  tium CD-ROM proj
28bb0 65 63 74 2c 20 38 2f 31 30 2f 39 38 20 2d 2d 2d  ect, 8/10/98 ---
28bc0 2d 2d 2d 0a 0a 39 2f 33 2f 39 38 20 28 62 75 67  ---..9/3/98 (bug
28bd0 20 66 69 78 29 20 54 63 6c 5f 52 65 61 6c 6c 6f   fix) Tcl_Reallo
28be0 63 20 77 61 73 20 66 61 69 6c 69 6e 67 20 75 6e  c was failing un
28bf0 64 65 72 20 57 69 6e 64 6f 77 73 20 62 65 63 61  der Windows beca
28c00 75 73 65 20 74 68 65 0a 47 6c 6f 62 61 6c 52 65  use the.GlobalRe
28c10 41 6c 6c 6f 63 20 41 50 49 20 77 61 73 20 6e 6f  Alloc API was no
28c20 74 20 63 6f 72 72 65 63 74 6c 79 20 72 65 2d 61  t correctly re-a
28c30 6c 6c 6f 63 61 74 69 6e 67 20 62 6c 6f 63 6b 73  llocating blocks
28c40 20 74 68 61 74 20 77 65 72 65 0a 33 32 6b 2b 2e   that were.32k+.
28c50 20 20 54 68 65 20 66 69 78 20 77 61 73 20 74 6f    The fix was to
28c60 20 75 73 65 20 6e 65 77 65 72 20 57 69 6e 33 32   use newer Win32
28c70 20 41 50 49 73 20 28 48 65 61 70 41 6c 6c 6f 63   APIs (HeapAlloc
28c80 2c 20 48 65 61 70 46 72 65 65 2c 20 61 6e 64 0a  , HeapFree, and.
28c90 48 65 61 70 52 65 41 6c 6c 6f 63 2e 29 20 28 42  HeapReAlloc.) (B
28ca0 53 29 0a 0a 31 30 2f 35 2f 39 38 20 28 62 75 67  S)..10/5/98 (bug
28cb0 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
28cc0 69 6e 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74  in pkg_mkIndex t
28cd0 68 61 74 20 63 61 75 73 65 64 20 73 6f 6d 65 20  hat caused some 
28ce0 66 69 6c 65 73 20 74 68 61 74 20 64 6f 0a 61 20  files that do.a 
28cf0 22 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65  "package require
28d00 22 20 6f 66 20 70 61 63 6b 61 67 65 73 20 69 6e  " of packages in
28d10 20 74 68 65 20 54 63 6c 20 6c 69 62 72 61 72 69   the Tcl librari
28d20 65 73 20 74 6f 20 67 69 76 65 20 61 20 77 61 72  es to give a war
28d30 6e 69 6e 67 20 6c 69 6b 65 0a 09 77 61 72 6e 69  ning like..warni
28d40 6e 67 3a 20 22 78 78 2e 74 63 6c 22 20 70 72 6f  ng: "xx.tcl" pro
28d50 76 69 64 65 73 20 6d 6f 72 65 20 74 68 61 6e 20  vides more than 
28d60 6f 6e 65 20 70 61 63 6b 61 67 65 20 28 7b 78 78  one package ({xx
28d70 20 32 2e 30 7d 20 7b 79 79 20 30 2e 33 7d 29 0a   2.0} {yy 0.3}).
28d80 61 6e 64 20 67 65 6e 65 72 61 74 65 20 61 20 62  and generate a b
28d90 72 6f 6b 65 6e 20 70 6b 67 49 6e 64 65 78 2e 74  roken pkgIndex.t
28da0 63 6c 20 66 69 6c 65 2e 20 28 45 4d 53 29 0a 0a  cl file. (EMS)..
28db0 31 30 2f 35 2f 39 38 20 28 62 75 67 20 66 69 78  10/5/98 (bug fix
28dc0 29 20 50 6b 67 5f 6d 6b 49 6e 64 65 78 20 77 61  ) Pkg_mkIndex wa
28dd0 73 20 6e 6f 74 20 64 6f 69 6e 67 20 61 20 63 61  s not doing a ca
28de0 73 65 2d 69 6e 73 65 6e 73 69 74 69 76 65 20 63  se-insensitive c
28df0 6f 6d 70 61 72 69 73 6f 6e 0a 6f 66 20 65 78 74  omparison.of ext
28e00 65 6e 73 69 6f 6e 73 20 74 6f 20 64 65 74 65 72  ensions to deter
28e10 6d 69 6e 65 20 77 68 65 74 68 65 72 20 74 6f 20  mine whether to 
28e20 6c 6f 61 64 20 6f 72 20 73 6f 75 72 63 65 20 61  load or source a
28e30 20 66 69 6c 65 2e 20 54 68 75 73 2c 20 75 6e 64   file. Thus, und
28e40 65 72 0a 57 69 6e 64 6f 77 73 2c 20 4d 59 44 4c  er.Windows, MYDL
28e50 4c 4e 41 4d 45 2e 44 4c 4c 20 77 61 73 20 73 6f  LNAME.DLL was so
28e60 75 72 63 65 64 2c 20 61 6e 64 20 6d 79 64 6c 6c  urced, and mydll
28e70 6e 61 6d 65 2e 64 6c 6c 20 6c 6f 61 64 65 64 2e  name.dll loaded.
28e80 20 28 45 4d 53 29 0a 0a 31 30 2f 35 2f 39 38 20   (EMS)..10/5/98 
28e90 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 43 72  (new feature) Cr
28ea0 65 61 74 65 64 20 61 20 6e 65 77 20 54 63 6c 5f  eated a new Tcl_
28eb0 4f 62 6a 20 74 79 70 65 2c 20 22 70 72 6f 63 62  Obj type, "procb
28ec0 6f 64 79 22 2e 20 54 68 69 73 20 6f 62 6a 65 63  ody". This objec
28ed0 74 27 73 0a 69 6e 74 65 72 6e 61 6c 20 72 65 70  t's.internal rep
28ee0 72 65 73 65 6e 74 61 74 69 6f 6e 20 68 6f 6c 64  resentation hold
28ef0 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 61  s a pointer to a
28f00 20 50 72 6f 63 20 73 74 72 75 63 74 75 72 65 2e   Proc structure.
28f10 20 45 78 74 65 6e 64 65 64 0a 54 63 6c 43 72 65   Extended.TclCre
28f20 61 74 65 50 72 6f 63 20 74 6f 20 74 61 6b 65 20  ateProc to take 
28f30 62 6f 74 68 20 73 74 72 69 6e 67 73 20 61 6e 64  both strings and
28f40 20 22 70 72 6f 63 62 6f 64 79 22 2e 20 28 45 4d   "procbody". (EM
28f50 53 29 0a 0a 31 30 2f 31 33 2f 39 38 20 28 62 75  S)..10/13/98 (bu
28f60 67 20 66 69 78 29 20 54 68 65 20 22 69 6e 66 6f  g fix) The "info
28f70 20 63 6f 6d 70 6c 65 74 65 22 20 63 6f 6d 6d 61   complete" comma
28f80 6e 64 20 63 61 6e 20 6e 6f 77 20 68 61 6e 64 6c  nd can now handl
28f90 65 20 73 74 72 69 6e 67 73 0a 77 69 74 68 20 4e  e strings.with N
28fa0 55 4c 4c 73 20 65 6d 62 65 64 64 65 64 2e 20 20  ULLs embedded.  
28fb0 54 68 61 6e 6b 73 20 74 6f 20 63 6f 6c 69 6e 40  Thanks to [email protected]
28fc0 66 69 65 6c 64 2e 6d 65 64 69 63 69 6e 65 2e 61  field.medicine.a
28fd0 64 65 6c 61 69 64 65 2e 65 64 75 2e 61 75 0a 66  delaide.edu.au.f
28fe0 6f 72 20 70 72 6f 76 69 64 69 6e 67 20 74 68 69  or providing thi
28ff0 73 20 66 69 78 2e 20 28 52 4a 29 0a 0a 31 30 2f  s fix. (RJ)..10/
29000 31 33 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  13/98 (bug fix) 
29010 54 68 65 20 22 6c 73 6f 72 74 20 2d 64 69 63 74  The "lsort -dict
29020 69 6f 6e 61 72 79 22 20 63 6f 6d 6d 61 6e 64 20  ionary" command 
29030 64 69 64 20 6e 6f 74 20 70 72 6f 70 65 72 6c 79  did not properly
29040 0a 68 61 6e 64 6c 65 20 73 6f 6d 65 20 6e 75 6d  .handle some num
29050 62 65 72 73 20 73 74 61 72 74 69 6e 67 20 77 69  bers starting wi
29060 74 68 20 30 2e 20 20 54 68 61 6e 6b 73 20 74 6f  th 0.  Thanks to
29070 20 52 69 63 68 61 72 64 20 48 69 70 70 0a 3c 64   Richard Hipp.<d
29080 72 68 40 61 63 6d 2e 6f 72 67 3e 20 66 6f 72 20  [email protected]> for 
29090 73 75 62 6d 69 74 74 69 6e 67 20 74 68 65 20 66  submitting the f
290a0 69 78 20 74 6f 20 53 63 72 69 70 74 69 63 73 2e  ix to Scriptics.
290b0 20 28 52 4a 29 0a 0a 31 30 2f 31 33 2f 39 38 20   (RJ)..10/13/98 
290c0 28 62 75 67 20 66 69 78 29 20 54 68 65 20 66 75  (bug fix) The fu
290d0 6e 63 74 69 6f 6e 20 54 63 6c 5f 53 65 74 4c 69  nction Tcl_SetLi
290e0 73 74 4f 62 6a 20 77 61 73 20 63 72 65 61 74 69  stObj was creati
290f0 6e 67 20 61 6e 20 69 6e 76 61 6c 69 64 0a 54 63  ng an invalid.Tc
29100 6c 5f 4f 62 6a 20 69 66 20 74 68 65 20 6c 69 73  l_Obj if the lis
29110 74 20 68 61 64 20 7a 65 72 6f 20 65 6c 65 6d 65  t had zero eleme
29120 6e 74 73 20 28 64 65 73 70 69 74 65 20 77 68 61  nts (despite wha
29130 74 20 74 68 65 20 63 6f 6d 6d 65 6e 74 73 20 73  t the comments s
29140 61 69 64 0a 69 74 20 77 6f 75 6c 64 20 64 6f 29  aid.it would do)
29150 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 53 65 62  .  Thanks to Seb
29160 61 73 74 69 61 6e 20 57 61 6e 67 6e 69 63 6b 20  astian Wangnick 
29170 66 6f 72 20 72 65 70 6f 72 74 69 6e 67 20 74 68  for reporting th
29180 65 0a 70 72 6f 62 6c 65 6d 2e 20 28 52 4a 29 0a  e.problem. (RJ).
29190 0a 31 30 2f 32 30 2f 39 38 20 28 6e 65 77 20 66  .10/20/98 (new f
291a0 65 61 74 75 72 65 29 20 41 64 64 65 64 20 74 63  eature) Added tc
291b0 6c 5f 70 6c 61 74 66 6f 72 6d 28 64 65 62 75 67  l_platform(debug
291c0 29 20 65 6c 65 6d 65 6e 74 20 74 6f 20 74 68 65  ) element to the
291d0 0a 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 20 61 72  .tcl_platform ar
291e0 72 61 79 20 6f 6e 20 57 69 6e 64 6f 77 73 20 70  ray on Windows p
291f0 6c 61 74 66 6f 72 6d 2e 20 20 54 68 65 20 65 78  latform.  The ex
29200 69 73 74 65 6e 63 65 20 6f 66 20 74 68 65 20 64  istence of the d
29210 65 62 75 67 0a 65 6c 65 6d 65 6e 74 20 6f 66 20  ebug.element of 
29220 74 68 65 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d  the tcl_platform
29230 20 61 72 72 61 79 20 69 6e 64 69 63 61 74 65 73   array indicates
29240 20 74 68 61 74 20 74 68 65 20 70 61 72 74 69 63   that the partic
29250 75 6c 61 72 20 54 63 6c 0a 73 68 65 6c 6c 20 68  ular Tcl.shell h
29260 61 73 20 62 65 65 6e 20 63 6f 6d 70 69 6c 65 64  as been compiled
29270 20 77 69 74 68 20 64 65 62 75 67 20 69 6e 66 6f   with debug info
29280 72 6d 61 74 69 6f 6e 2e 20 20 55 73 69 6e 67 0a  rmation.  Using.
29290 22 69 6e 66 6f 20 65 78 69 73 74 73 20 74 63 6c  "info exists tcl
292a0 5f 70 6c 61 74 66 6f 72 6d 28 64 65 62 75 67 29  _platform(debug)
292b0 22 20 61 20 54 63 6c 20 73 63 72 69 70 74 20 63  " a Tcl script c
292c0 61 6e 20 64 69 72 65 63 74 20 74 68 65 0a 69 6e  an direct the.in
292d0 74 65 72 70 72 65 74 65 72 20 74 6f 20 6c 6f 61  terpreter to loa
292e0 64 20 64 65 62 75 67 20 76 65 72 73 69 6f 6e 73  d debug versions
292f0 20 6f 66 20 44 4c 4c 73 20 77 69 74 68 20 74 68   of DLLs with th
29300 65 20 6c 6f 61 64 0a 63 6f 6d 6d 61 6e 64 2e 20  e load.command. 
29310 28 53 4b 53 29 0a 0a 31 30 2f 32 30 2f 39 38 20  (SKS)..10/20/98 
29320 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
29330 20 54 68 65 20 4d 61 6b 65 66 69 6c 65 20 61 6e   The Makefile an
29340 64 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69  d configure scri
29350 70 74 73 20 68 61 76 65 20 62 65 65 6e 0a 63 68  pts have been.ch
29360 61 6e 67 65 64 20 66 6f 72 20 49 52 49 58 20 74  anged for IRIX t
29370 6f 20 62 75 69 6c 64 20 6e 33 32 20 62 69 6e 61  o build n32 bina
29380 72 69 65 73 20 69 6e 73 74 65 61 64 20 6f 66 20  ries instead of 
29390 74 68 65 20 6f 6c 64 20 33 32 20 61 62 69 0a 66  the old 32 abi.f
293a0 6f 72 6d 61 74 2e 20 20 49 66 20 79 6f 75 20 68  ormat.  If you h
293b0 61 76 65 20 65 78 74 65 6e 73 69 6f 6e 73 20 62  ave extensions b
293c0 75 69 6c 74 20 77 69 74 68 20 74 68 65 20 6f 33  uilt with the o3
293d0 32 20 61 62 69 27 73 20 79 6f 75 20 77 69 6c 6c  2 abi's you will
293e0 20 6e 65 65 64 0a 74 6f 20 75 70 64 61 74 65 20   need.to update 
293f0 74 68 65 6d 20 74 6f 20 6e 33 32 20 66 6f 72 20  them to n32 for 
29400 74 68 65 6d 20 74 6f 20 77 6f 72 6b 20 77 69 74  them to work wit
29410 68 20 54 63 6c 2e 20 20 28 52 4a 29 0a 2a 2a 2a  h Tcl.  (RJ).***
29420 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
29430 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
29440 31 30 2f 32 33 2f 39 38 20 28 62 75 67 20 66 69  10/23/98 (bug fi
29450 78 29 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72 61  x) tcl_findLibra
29460 72 79 20 68 61 64 20 61 20 73 74 72 61 79 20 5d  ry had a stray ]
29470 20 69 6e 20 6f 6e 65 20 6f 66 20 74 68 65 0a 70   in one of the.p
29480 61 74 68 6e 61 6d 65 73 20 69 74 20 73 65 61 72  athnames it sear
29490 63 68 65 64 20 66 6f 72 20 74 68 65 20 69 6e 69  ched for the ini
294a0 74 69 61 6c 69 7a 61 74 69 6f 6e 20 73 63 72 69  tialization scri
294b0 70 74 2e 20 20 74 63 6c 49 6e 69 74 53 63 72 69  pt.  tclInitScri
294c0 70 74 2e 68 0a 77 61 73 20 69 6e 63 6f 72 72 65  pt.h.was incorre
294d0 63 74 6c 79 20 61 64 64 69 6e 67 20 74 68 65 20  ctly adding the 
294e0 70 61 72 65 6e 74 20 6f 66 20 74 63 6c 5f 6c 69  parent of tcl_li
294f0 62 72 61 72 79 20 74 6f 20 74 63 6c 5f 70 6b 67  brary to tcl_pkg
29500 50 61 74 68 2e 20 20 54 68 69 73 0a 6c 6f 67 69  Path.  This.logi
29510 63 20 77 61 73 20 6d 6f 76 65 64 20 69 6e 74 6f  c was moved into
29520 20 69 6e 69 74 2e 74 63 6c 2c 20 61 6e 64 20 74   init.tcl, and t
29530 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  he initializatio
29540 6e 20 6f 66 20 61 75 74 6f 5f 70 61 74 68 20 77  n of auto_path w
29550 61 73 0a 64 6f 63 75 6d 65 6e 74 65 64 2e 20 20  as.documented.  
29560 54 68 61 6e 6b 73 20 74 6f 20 44 6f 6e 61 6c 64  Thanks to Donald
29570 20 50 6f 72 74 65 72 20 61 6e 64 20 54 6f 6d 20   Porter and Tom 
29580 53 69 6c 76 61 20 66 6f 72 20 72 65 6c 61 74 65  Silva for relate
29590 64 0a 70 61 74 63 68 65 73 2e 20 28 42 57 29 0a  d.patches. (BW).
295a0 0a 31 30 2f 32 39 2f 39 38 20 28 62 75 67 20 66  .10/29/98 (bug f
295b0 69 78 29 20 46 69 78 65 64 20 54 63 6c 5f 4e 6f  ix) Fixed Tcl_No
295c0 74 69 66 79 43 68 61 6e 6e 65 6c 20 74 6f 20 75  tifyChannel to u
295d0 73 65 20 54 63 6c 5f 50 72 65 73 65 72 76 65 20  se Tcl_Preserve 
295e0 69 6e 73 74 65 61 64 0a 6f 66 20 54 63 6c 5f 52  instead.of Tcl_R
295f0 65 67 69 73 74 65 72 43 68 61 6e 6e 65 6c 20 73  egisterChannel s
29600 6f 20 74 68 61 74 20 31 29 20 75 6e 72 65 67 69  o that 1) unregi
29610 73 74 65 72 65 64 20 63 68 61 6e 6e 65 6c 73 20  stered channels 
29620 64 6f 20 6e 6f 74 20 67 65 74 0a 63 6c 6f 73 65  do not get.close
29630 64 20 61 66 74 65 72 20 74 68 65 69 72 20 66 69  d after their fi
29640 72 73 74 20 66 69 6c 65 65 76 65 6e 74 2c 20 61  rst fileevent, a
29650 6e 64 20 32 29 20 65 72 72 6f 72 73 20 74 68 61  nd 2) errors tha
29660 74 20 6f 63 63 75 72 20 64 75 72 69 6e 67 0a 63  t occur during.c
29670 6c 6f 73 65 20 69 6e 20 61 20 66 69 6c 65 65 76  lose in a fileev
29680 65 6e 74 20 73 63 72 69 70 74 20 61 72 65 20 61  ent script are a
29690 63 74 75 61 6c 6c 79 20 72 65 66 6c 65 63 74 65  ctually reflecte
296a0 64 20 62 79 20 74 68 65 20 63 6c 6f 73 65 0a 63  d by the close.c
296b0 6f 6d 6d 61 6e 64 2e 20 28 42 57 29 0a 0a 31 30  ommand. (BW)..10
296c0 2f 33 30 2f 39 38 20 28 62 75 67 20 66 69 78 29  /30/98 (bug fix)
296d0 20 4f 76 65 72 68 61 75 6c 20 6f 66 20 70 6b 67   Overhaul of pkg
296e0 5f 6d 6b 49 6e 64 65 78 20 74 6f 20 64 65 61 6c  _mkIndex to deal
296f0 20 77 69 74 68 20 74 72 61 6e 73 69 74 69 76 65   with transitive
29700 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65  .package require
29710 73 20 61 6e 64 20 70 61 63 6b 61 67 65 73 20 73  s and packages s
29720 70 6c 69 74 20 61 6d 6f 6e 67 20 73 63 72 69 70  plit among scrip
29730 74 73 20 61 6e 64 20 62 69 6e 61 72 79 20 66 69  ts and binary fi
29740 6c 65 73 2e 0a 41 6c 73 6f 20 66 69 78 65 64 20  les..Also fixed 
29750 6f 6d 6d 69 73 69 6f 6e 20 6f 66 20 67 6c 6f 62  ommision of glob
29760 61 6c 20 66 6f 72 20 65 72 72 6f 72 49 6e 66 6f  al for errorInfo
29770 20 69 6e 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72   in tcl_findLibr
29780 61 72 79 2e 20 28 42 57 29 0a 0a 31 31 2f 30 38  ary. (BW)..11/08
29790 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 46 69  /98 (bug fix) Fi
297a0 78 65 64 20 74 68 65 20 72 65 73 6f 75 72 63 65  xed the resource
297b0 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 77 61   command to alwa
297c0 79 73 20 64 65 74 65 63 74 0a 74 68 65 20 63 61  ys detect.the ca
297d0 73 65 20 77 68 65 72 65 20 61 20 66 69 6c 65 20  se where a file 
297e0 69 73 20 6f 70 65 6e 65 64 20 61 20 73 65 63 6f  is opened a seco
297f0 6e 64 20 74 69 6d 65 20 77 69 74 68 20 74 68 65  nd time with the
29800 20 73 61 6d 65 0a 70 65 72 6d 69 73 73 69 6f 6e   same.permission
29810 73 2e 20 20 49 4d 20 63 6c 61 69 6d 73 20 74 68  s.  IM claims th
29820 61 74 20 74 68 69 73 20 77 69 6c 6c 20 61 6c 77  at this will alw
29830 61 79 73 20 63 61 75 73 65 20 74 68 65 20 73 61  ays cause the sa
29840 6d 65 0a 46 69 6c 65 52 65 66 20 74 6f 20 62 65  me.FileRef to be
29850 20 72 65 74 75 72 6e 65 64 2c 20 62 75 74 20 69   returned, but i
29860 6e 20 4d 61 63 4f 53 20 38 2e 31 2b 2c 20 74 68  n MacOS 8.1+, th
29870 69 73 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20  is is no longer 
29880 74 68 65 20 63 61 73 65 2c 0a 73 6f 20 77 65 20  the case,.so we 
29890 68 61 76 65 20 74 6f 20 74 65 73 74 20 66 6f 72  have to test for
298a0 20 74 68 69 73 20 65 78 70 6c 69 63 69 74 6c 79   this explicitly
298b0 2e 20 28 4a 49 29 0a 0a 31 31 2f 31 30 2f 39 38  . (JI)..11/10/98
298c0 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
298d0 29 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  ) When compiling
298e0 20 77 69 74 68 20 4d 65 74 72 6f 77 65 72 6b 27   with Metrowerk'
298f0 73 20 4d 53 4c 2c 20 75 73 65 20 74 68 65 0a 65  s MSL, use the.e
29900 78 69 74 20 66 75 6e 63 74 69 6f 6e 20 66 72 6f  xit function fro
29910 6d 20 4d 53 4c 20 72 61 74 68 65 72 20 74 68 61  m MSL rather tha
29920 6e 20 45 78 69 74 54 6f 53 68 65 6c 6c 2e 20 20  n ExitToShell.  
29930 54 68 69 73 20 61 6c 6c 6f 77 73 20 4d 53 4c 20  This allows MSL 
29940 74 6f 0a 63 6c 65 61 6e 20 75 70 20 69 74 73 20  to.clean up its 
29950 74 65 6d 70 6f 72 61 72 79 20 66 69 6c 65 73 2e  temporary files.
29960 20 54 68 61 6e 6b 73 20 74 6f 20 56 69 6e 63 65   Thanks to Vince
29970 20 44 61 72 6c 65 79 20 66 6f 72 20 74 68 69 73   Darley for this
29980 0a 69 6d 70 72 6f 76 65 6d 65 6e 74 2e 20 28 4a  .improvement. (J
29990 49 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  I)..------------
299a0 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38  ----- Released 8
299b0 2e 30 2e 34 2c 20 31 31 2f 31 39 2f 39 38 20 2d  .0.4, 11/19/98 -
299c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
299d0 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 31 2f 32 30 2f  --------..11/20/
299e0 39 38 20 28 62 75 67 20 66 69 78 29 20 48 61 6e  98 (bug fix) Han
299f0 64 6c 65 20 70 6f 73 73 69 62 6c 65 20 4e 55 4c  dle possible NUL
29a00 4c 20 72 65 74 75 72 6e 20 69 6e 20 54 63 6c 47  L return in TclG
29a10 65 74 53 74 64 46 69 6c 65 73 2e 20 28 52 4a 29  etStdFiles. (RJ)
29a20 0a 0a 31 31 2f 32 30 2f 39 38 20 28 62 75 67 20  ..11/20/98 (bug 
29a30 66 69 78 29 20 54 68 65 20 64 6c 74 65 73 74 73  fix) The dltests
29a40 20 77 6f 75 6c 64 20 6e 6f 74 20 62 75 69 6c 64   would not build
29a50 20 6f 6e 20 53 47 49 2e 20 20 54 68 65 79 20 72   on SGI.  They r
29a60 65 70 6f 72 74 65 64 0a 74 68 61 74 20 79 6f 75  eported.that you
29a70 20 63 6f 75 6c 64 20 6e 6f 74 20 6d 69 78 20 6e   could not mix n
29a80 33 32 20 77 69 74 68 20 30 33 32 20 62 69 6e 61  32 with 032 bina
29a90 72 69 65 73 2e 20 20 54 68 65 20 63 6f 6e 66 69  ries.  The confi
29aa0 67 75 72 65 20 73 63 72 69 70 74 0a 68 61 73 20  gure script.has 
29ab0 62 65 65 6e 20 6d 6f 64 69 66 69 65 64 20 74 6f  been modified to
29ac0 20 67 65 74 20 74 68 65 20 45 58 54 52 41 5f 43   get the EXTRA_C
29ad0 46 4c 41 47 53 20 66 72 6f 6d 20 74 68 65 20 74  FLAGS from the t
29ae0 63 6c 20 63 6f 6e 66 69 67 75 72 65 0a 73 63 72  cl configure.scr
29af0 69 70 74 2e 20 20 5b 42 75 67 20 69 64 3a 20 38  ipt.  [Bug id: 8
29b00 34 30 5d 20 28 52 4a 29 0a 0a 31 32 2f 33 2f 39  40] (RJ)..12/3/9
29b10 38 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64  8 (bug fix) Wind
29b20 6f 77 73 20 4e 54 20 63 72 65 61 74 65 73 20 73  ows NT creates s
29b30 6f 63 6b 65 74 73 20 73 6f 20 74 68 65 79 20 61  ockets so they a
29b40 72 65 20 69 6e 68 65 72 69 74 61 62 6c 65 0a 62  re inheritable.b
29b50 79 20 64 65 66 61 75 6c 74 2e 20 20 46 69 78 65  y default.  Fixe
29b60 64 20 73 6f 63 6b 65 74 20 63 6f 64 65 20 73 6f  d socket code so
29b70 20 69 74 20 74 75 72 6e 73 20 6f 66 66 20 74 68   it turns off th
29b80 69 73 20 62 69 74 20 72 69 67 68 74 20 61 66 74  is bit right aft
29b90 65 72 0a 63 72 65 61 74 69 6f 6e 20 73 6f 20 73  er.creation so s
29ba0 6f 63 6b 65 74 73 20 61 72 65 6e 27 74 20 6b 65  ockets aren't ke
29bb0 70 74 20 6f 70 65 6e 20 62 79 20 65 78 65 63 27  pt open by exec'
29bc0 65 64 20 70 72 6f 63 65 73 73 65 73 2e 20 5b 42  ed processes. [B
29bd0 75 67 3a 20 38 39 32 5d 0a 54 68 61 6e 6b 73 20  ug: 892].Thanks 
29be0 74 6f 20 4b 65 76 69 6e 20 4b 65 6e 6e 79 20 66  to Kevin Kenny f
29bf0 6f 72 20 74 68 69 73 20 66 69 78 2e 20 20 28 53  or this fix.  (S
29c00 53 29 0a 0a 31 2f 31 31 2f 39 38 20 28 62 75 67  S)..1/11/98 (bug
29c10 20 66 69 78 29 20 20 4f 6e 20 48 50 2c 20 22 69   fix)  On HP, "i
29c20 6e 66 6f 20 73 68 61 72 65 64 6c 69 62 65 78 74  nfo sharedlibext
29c30 65 6e 73 69 6f 6e 22 20 77 61 73 20 72 65 74 75  ension" was retu
29c40 72 6e 69 6e 67 0a 65 6d 70 74 79 20 73 74 72 69  rning.empty stri
29c50 6e 67 20 6f 6e 20 73 74 61 74 69 63 20 61 70 70  ng on static app
29c60 73 2e 20 20 49 74 20 6e 6f 77 20 61 6c 77 61 79  s.  It now alway
29c70 73 20 72 65 74 75 72 6e 73 20 22 2e 73 6c 22 2e  s returns ".sl".
29c80 20 20 28 52 4a 29 0a 0a 31 2f 32 38 2f 39 39 20    (RJ)..1/28/99 
29c90 28 63 6f 6e 66 69 67 75 72 65 20 63 68 61 6e 67  (configure chang
29ca0 65 29 20 4e 6f 77 20 73 75 70 70 6f 72 74 20 2d  e) Now support -
29cb0 70 69 70 65 20 6f 70 74 69 6f 6e 20 6f 6e 20 67  pipe option on g
29cc0 63 63 2e 20 20 28 52 4a 29 0a 0a 32 2f 32 2f 39  cc.  (RJ)..2/2/9
29cd0 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
29ce0 64 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  d initialization
29cf0 20 70 72 6f 62 6c 65 6d 20 6f 6e 20 57 69 6e 64   problem on Wind
29d00 6f 77 73 20 77 68 65 72 65 20 6e 6f 0a 73 65 61  ows where no.sea
29d10 72 63 68 69 6e 67 20 66 6f 72 20 69 6e 69 74 2e  rching for init.
29d20 74 63 6c 20 77 6f 75 6c 64 20 62 65 20 70 65 72  tcl would be per
29d30 66 6f 72 6d 65 64 20 69 66 20 74 68 65 20 72 65  formed if the re
29d40 67 69 73 74 72 79 20 6b 65 79 73 20 77 65 72 65  gistry keys were
29d50 0a 6d 69 73 73 69 6e 67 2e 20 20 28 73 74 61 6e  .missing.  (stan
29d60 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75  ton)..2/2/99 (bu
29d70 67 20 66 69 78 29 20 41 64 64 65 64 20 73 75 70  g fix) Added sup
29d80 70 6f 72 74 20 66 6f 72 20 48 4b 45 59 5f 50 45  port for HKEY_PE
29d90 52 46 4f 52 4d 41 4e 43 45 5f 44 41 54 41 20 61  RFORMANCE_DATA a
29da0 6e 64 0a 48 4b 45 59 5f 44 59 4e 5f 44 41 54 41  nd.HKEY_DYN_DATA
29db0 20 6b 65 79 73 20 69 6e 20 74 68 65 20 22 72 65   keys in the "re
29dc0 67 69 73 74 72 79 22 20 63 6f 6d 6d 61 6e 64 2e  gistry" command.
29dd0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f   (stanton)..2/2/
29de0 39 39 20 28 62 75 67 20 66 69 78 29 20 45 4e 4f  99 (bug fix) ENO
29df0 54 53 55 50 20 61 6e 64 20 45 4f 50 4e 4f 54 53  TSUP and EOPNOTS
29e00 55 50 50 20 63 6c 61 73 68 65 64 20 6f 6e 20 73  UPP clashed on s
29e10 6f 6d 65 20 4c 69 6e 75 78 0a 76 61 72 69 61 6e  ome Linux.varian
29e20 74 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32  ts. (stanton)..2
29e30 2f 32 2f 39 39 20 28 65 6e 68 61 6e 63 65 6d 65  /2/99 (enhanceme
29e40 6e 74 29 20 54 68 65 20 22 6f 70 65 6e 22 20 63  nt) The "open" c
29e50 6f 6d 6d 61 6e 64 20 68 61 73 20 62 65 65 6e 20  ommand has been 
29e60 63 68 61 6e 67 65 64 20 74 6f 20 75 73 65 20 74  changed to use t
29e70 68 65 0a 6f 62 6a 65 63 74 20 69 6e 74 65 72 66  he.object interf
29e80 61 63 65 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  aces. (stanton).
29e90 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66 69 78  .2/2/99 (bug fix
29ea0 29 20 49 6e 20 73 6f 6d 65 20 63 61 73 65 73 20  ) In some cases 
29eb0 54 63 6c 20 77 6f 75 6c 64 20 63 72 61 73 68 20  Tcl would crash 
29ec0 64 75 65 20 74 6f 20 61 6e 20 6f 76 65 72 66 6c  due to an overfl
29ed0 6f 77 20 6f 66 0a 74 68 65 20 65 78 63 65 70 74  ow of.the except
29ee0 69 6f 6e 20 73 74 61 63 6b 20 72 65 73 75 6c 74  ion stack result
29ef0 69 6e 67 20 66 72 6f 6d 20 61 20 6d 69 73 73 69  ing from a missi
29f00 6e 67 20 62 79 74 65 20 63 6f 64 65 20 69 6e 20  ng byte code in 
29f10 73 6f 6d 65 0a 65 78 70 72 65 73 73 69 6f 6e 73  some.expressions
29f20 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32  . (stanton)..2/2
29f30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 43 68  /99 (bug fix) Ch
29f40 61 6e 67 65 64 20 63 6f 6e 66 69 67 75 72 65 20  anged configure 
29f50 73 6f 20 4c 69 6e 75 78 20 61 6e 64 20 49 52 49  so Linux and IRI
29f60 58 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 69  X shared librari
29f70 65 73 0a 61 72 65 20 6c 69 6e 6b 65 64 20 77 69  es.are linked wi
29f80 74 68 20 74 68 65 20 73 79 73 74 65 6d 20 6c 69  th the system li
29f90 62 72 61 72 69 65 73 2e 20 28 73 74 61 6e 74 6f  braries. (stanto
29fa0 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20  n)..2/2/99 (bug 
29fb0 66 69 78 29 20 41 64 64 65 64 20 73 75 70 70 6f  fix) Added suppo
29fc0 72 74 20 66 6f 72 20 42 53 44 49 20 34 2e 78 20  rt for BSDI 4.x 
29fd0 28 42 53 44 2f 4f 53 2d 34 2a 29 20 74 6f 20 74  (BSD/OS-4*) to t
29fe0 68 65 0a 63 6f 6e 66 69 67 75 72 65 20 73 63 72  he.configure scr
29ff0 69 70 74 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ipt. (stanton)..
2a000 32 2f 32 2f 39 39 20 28 62 75 67 20 66 69 78 29  2/2/99 (bug fix)
2a010 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
2a020 20 75 70 76 61 72 20 63 6f 75 6c 64 20 72 65 73   upvar could res
2a030 75 72 72 65 63 74 20 61 20 6e 61 6d 65 73 70 61  urrect a namespa
2a040 63 65 0a 76 61 72 69 61 62 6c 65 20 61 66 74 65  ce.variable afte
2a050 72 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20  r the namespace 
2a060 68 61 64 20 62 65 65 6e 20 64 65 6c 65 74 65 64  had been deleted
2a070 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32  . (stanton)..2/2
2a080 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 49 6e  /99 (bug fix) In
2a090 20 73 6f 6d 65 20 63 61 73 65 73 20 77 68 65 6e   some cases when
2a0a0 20 63 72 65 61 74 69 6e 67 20 76 61 72 69 61 62   creating variab
2a0b0 6c 65 73 2c 20 74 68 65 0a 69 6e 74 65 72 70 72  les, the.interpr
2a0c0 65 74 65 72 20 72 65 73 75 6c 74 20 77 61 73 20  eter result was 
2a0d0 62 65 69 6e 67 20 6d 6f 64 69 66 69 65 64 20 65  being modified e
2a0e0 76 65 6e 20 69 66 20 74 68 65 20 54 43 4c 5f 4c  ven if the TCL_L
2a0f0 45 41 56 45 5f 45 52 52 5f 4d 53 47 0a 66 6c 61  EAVE_ERR_MSG.fla
2a100 67 20 77 61 73 20 73 65 74 2e 20 28 73 74 61 6e  g was set. (stan
2a110 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75  ton)..2/2/99 (bu
2a120 67 20 66 69 78 20 26 20 6e 65 77 20 66 65 61 74  g fix & new feat
2a130 75 72 65 29 20 43 68 61 6e 67 65 64 20 74 68 65  ure) Changed the
2a140 20 73 6f 63 6b 65 74 20 64 72 69 76 65 72 73 20   socket drivers 
2a150 74 6f 20 70 72 6f 70 65 72 6c 79 0a 68 61 6e 64  to properly.hand
2a160 6c 65 20 66 61 69 6c 75 72 65 73 20 64 75 72 69  le failures duri
2a170 6e 67 20 61 6e 20 61 73 79 6e 63 20 73 6f 63 6b  ng an async sock
2a180 65 74 20 63 6f 6e 6e 65 63 74 69 6f 6e 2e 20 20  et connection.  
2a190 41 64 64 65 64 20 61 20 6e 65 77 0a 66 63 6f 6e  Added a new.fcon
2a1a0 66 69 67 75 72 65 20 6f 70 74 69 6f 6e 20 22 2d  figure option "-
2a1b0 65 72 72 6f 72 22 20 74 6f 20 72 65 74 72 69 65  error" to retrie
2a1c0 76 65 20 74 68 65 20 66 61 69 6c 75 72 65 20 6d  ve the failure m
2a1d0 65 73 73 61 67 65 2e 20 20 53 65 65 20 74 68 65  essage.  See the
2a1e0 0a 73 6f 63 6b 65 74 2e 6e 20 6d 61 6e 75 61 6c  .socket.n manual
2a1f0 20 65 6e 74 72 79 20 66 6f 72 20 64 65 74 61 69   entry for detai
2a200 6c 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32  ls. (stanton)..2
2a210 2f 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /2/99 (bug fix) 
2a220 44 65 6c 65 74 69 6e 67 20 61 20 72 65 6e 61 6d  Deleting a renam
2a230 65 64 20 69 6e 74 65 72 70 20 61 6c 69 61 73 20  ed interp alias 
2a240 63 6f 75 6c 64 20 72 65 73 75 6c 74 20 69 6e 20  could result in 
2a250 61 0a 70 61 6e 69 63 2e 20 28 73 74 61 6e 74 6f  a.panic. (stanto
2a260 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 66 65 61 74  n)..2/2/99 (feat
2a270 75 72 65 20 63 68 61 6e 67 65 2f 62 75 67 20 66  ure change/bug f
2a280 69 78 29 20 43 68 61 6e 67 65 64 20 74 68 65 20  ix) Changed the 
2a290 62 65 68 61 76 69 6f 72 20 6f 66 20 22 66 69 6c  behavior of "fil
2a2a0 65 0a 65 78 74 65 6e 73 69 6f 6e 22 20 73 6f 20  e.extension" so 
2a2b0 74 68 61 74 20 69 74 20 73 70 6c 69 74 73 20 61  that it splits a
2a2c0 74 20 74 68 65 20 6c 61 73 74 20 70 65 72 69 6f  t the last perio
2a2d0 64 2e 20 20 4e 6f 77 20 74 68 65 20 65 78 74 65  d.  Now the exte
2a2e0 6e 73 69 6f 6e 20 6f 66 0a 61 20 66 69 6c 65 20  nsion of.a file 
2a2f0 6c 69 6b 65 20 22 66 6f 6f 2e 2e 6f 22 20 69 73  like "foo..o" is
2a300 20 22 2e 6f 22 20 69 6e 73 74 65 61 64 20 6f 66   ".o" instead of
2a310 20 22 2e 2e 6f 22 20 61 73 20 69 6e 20 70 72 65   "..o" as in pre
2a320 76 69 6f 75 73 20 76 65 72 73 69 6f 6e 73 2e 0a  vious versions..
2a330 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
2a340 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
2a350 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  *..-------------
2a360 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  ---- Released 8.
2a370 30 2e 35 2c 20 33 2f 39 2f 39 39 20 2d 2d 2d 2d  0.5, 3/9/99 ----
2a380 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2a390 2d 2d 2d 2d 2d 0a 0a 3d 3d 3d 3d 3d 3d 3d 3d 20  -----..======== 
2a3a0 43 68 61 6e 67 65 73 20 66 6f 72 20 38 2e 30 20  Changes for 8.0 
2a3b0 67 6f 20 61 62 6f 76 65 20 74 68 69 73 20 6c 69  go above this li
2a3c0 6e 65 20 3d 3d 3d 3d 3d 3d 3d 3d 0a 3d 3d 3d 3d  ne ========.====
2a3d0 3d 3d 3d 3d 20 43 68 61 6e 67 65 73 20 66 6f 72  ==== Changes for
2a3e0 20 38 2e 31 20 67 6f 20 62 65 6c 6f 77 20 74 68   8.1 go below th
2a3f0 69 73 20 6c 69 6e 65 20 3d 3d 3d 3d 3d 3d 3d 3d  is line ========
2a400 0a 0a 36 2f 31 38 2f 39 37 20 28 6e 65 77 20 66  ..6/18/97 (new f
2a410 65 61 74 75 72 65 29 20 54 63 6c 20 6e 6f 77 20  eature) Tcl now 
2a420 73 75 70 70 6f 72 74 73 20 69 6e 74 65 72 6e 61  supports interna
2a430 74 69 6f 6e 61 6c 20 63 68 61 72 61 63 74 65 72  tional character
2a440 20 73 65 74 73 3a 0a 20 20 20 20 2d 20 41 6c 6c   sets:.    - All
2a450 20 43 20 41 50 49 73 20 6e 6f 77 20 61 63 63 65   C APIs now acce
2a460 70 74 20 55 54 46 2d 38 20 73 74 72 69 6e 67 73  pt UTF-8 strings
2a470 20 69 6e 73 74 65 61 64 20 6f 66 20 69 73 6f 38   instead of iso8
2a480 38 35 39 2d 31 20 73 74 72 69 6e 67 73 2c 0a 20  859-1 strings,. 
2a490 20 20 20 20 20 77 68 65 72 65 76 65 72 20 79 6f       wherever yo
2a4a0 75 20 73 65 65 20 22 63 68 61 72 20 2a 22 2c 20  u see "char *", 
2a4b0 75 6e 6c 65 73 73 20 65 78 70 6c 69 63 69 74 6c  unless explicitl
2a4c0 79 20 6e 6f 74 65 64 20 6f 74 68 65 72 77 69 73  y noted otherwis
2a4d0 65 2e 0a 20 20 20 20 2d 20 41 6c 6c 20 54 63 6c  e..    - All Tcl
2a4e0 20 73 74 72 69 6e 67 73 20 72 65 70 72 65 73 65   strings represe
2a4f0 6e 74 65 64 20 69 6e 20 55 54 46 2d 38 2c 20 77  nted in UTF-8, w
2a500 68 69 63 68 20 69 73 20 61 20 63 6f 6e 76 65 6e  hich is a conven
2a510 69 65 6e 74 0a 20 20 20 20 20 20 6d 75 6c 74 69  ient.      multi
2a520 2d 62 79 74 65 20 65 6e 63 6f 64 69 6e 67 20 6f  -byte encoding o
2a530 66 20 55 6e 69 63 6f 64 65 2e 20 20 56 61 72 69  f Unicode.  Vari
2a540 61 62 6c 65 20 6e 61 6d 65 73 2c 20 70 72 6f 63  able names, proc
2a550 65 64 75 72 65 20 6e 61 6d 65 73 2c 0a 20 20 20  edure names,.   
2a560 20 20 20 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72     and all other
2a570 20 76 61 6c 75 65 73 20 69 6e 20 54 63 6c 20 6d   values in Tcl m
2a580 61 79 20 69 6e 63 6c 75 64 65 20 61 72 62 69 74  ay include arbit
2a590 72 61 72 79 20 55 6e 69 63 6f 64 65 20 63 68 61  rary Unicode cha
2a5a0 72 61 63 74 65 72 73 2e 0a 20 20 20 20 20 20 46  racters..      F
2a5b0 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20  or example, the 
2a5c0 54 63 6c 20 63 6f 6d 6d 61 6e 64 20 22 73 74 72  Tcl command "str
2a5d0 69 6e 67 20 6c 65 6e 67 74 68 22 20 72 65 74 75  ing length" retu
2a5e0 72 6e 73 20 68 6f 77 20 6d 61 6e 79 0a 20 20 20  rns how many.   
2a5f0 20 20 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61     Unicode chara
2a600 63 74 65 72 73 20 61 72 65 20 69 6e 20 74 68 65  cters are in the
2a610 20 61 72 67 75 6d 65 6e 74 20 73 74 72 69 6e 67   argument string
2a620 2e 0a 20 20 20 20 2d 20 46 6f 72 20 4a 61 76 61  ..    - For Java
2a630 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c 20   compatibility, 
2a640 65 6d 62 65 64 64 65 64 20 6e 75 6c 6c 20 62 79  embedded null by
2a650 74 65 73 20 69 6e 20 43 20 73 74 72 69 6e 67 73  tes in C strings
2a660 20 61 72 65 0a 20 20 20 20 20 20 72 65 70 72 65   are.      repre
2a670 73 65 6e 74 65 64 20 61 73 20 5c 78 43 30 38 30  sented as \xC080
2a680 20 69 6e 20 55 54 46 2d 38 20 73 74 72 69 6e 67   in UTF-8 string
2a690 73 2c 20 62 75 74 20 74 68 65 20 6e 75 6c 6c 20  s, but the null 
2a6a0 62 79 74 65 20 61 74 20 74 68 65 20 65 6e 64 0a  byte at the end.
2a6b0 20 20 20 20 20 20 6f 66 20 61 20 55 54 46 2d 38        of a UTF-8
2a6c0 20 73 74 72 69 6e 67 20 72 65 6d 61 69 6e 73 20   string remains 
2a6d0 5c 30 2e 20 20 54 68 75 73 20 54 63 6c 20 73 74  \0.  Thus Tcl st
2a6e0 72 69 6e 67 73 20 6f 6e 63 65 20 61 67 61 69 6e  rings once again
2a6f0 20 64 6f 20 6e 6f 74 0a 20 20 20 20 20 20 63 6f   do not.      co
2a700 6e 74 61 69 6e 20 6e 75 6c 6c 20 62 79 74 65 73  ntain null bytes
2a710 2c 20 65 78 63 65 70 74 20 66 6f 72 20 74 65 72  , except for ter
2a720 6d 69 6e 61 74 69 6f 6e 20 62 79 74 65 73 2e 0a  mination bytes..
2a730 20 20 20 20 2d 20 46 6f 72 20 4a 61 76 61 20 63      - For Java c
2a740 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c 20 22 5c  ompatibility, "\
2a750 75 58 58 58 58 22 20 69 73 20 75 73 65 64 20 69  uXXXX" is used i
2a760 6e 20 54 63 6c 20 74 6f 20 65 6e 74 65 72 20 61  n Tcl to enter a
2a770 20 55 6e 69 63 6f 64 65 0a 20 20 20 20 20 20 63   Unicode.      c
2a780 68 61 72 61 63 74 65 72 2e 20 20 22 5c 75 30 30  haracter.  "\u00
2a790 30 30 22 20 74 68 72 6f 75 67 68 20 22 5c 75 66  00" through "\uf
2a7a0 66 66 66 22 20 61 72 65 20 61 63 63 65 70 74 61  fff" are accepta
2a7b0 62 6c 65 20 55 6e 69 63 6f 64 65 0a 20 20 20 20  ble Unicode.    
2a7c0 20 20 63 68 61 72 61 63 74 65 72 73 2e 0a 20 20    characters..  
2a7d0 20 20 2d 20 22 5c 78 58 58 22 20 69 73 20 75 73    - "\xXX" is us
2a7e0 65 64 20 74 6f 20 65 6e 74 65 72 20 61 20 73 6d  ed to enter a sm
2a7f0 61 6c 6c 20 55 6e 69 63 6f 64 65 20 63 68 61 72  all Unicode char
2a800 61 63 74 65 72 20 28 62 65 74 77 65 65 6e 20 30  acter (between 0
2a810 20 61 6e 64 20 32 35 35 29 0a 20 20 20 20 20 20   and 255).      
2a820 69 6e 20 54 63 6c 2e 0a 20 20 20 20 2d 20 54 63  in Tcl..    - Tc
2a830 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20  l automatically 
2a840 74 72 61 6e 73 6c 61 74 65 73 20 62 65 74 77 65  translates betwe
2a850 65 6e 20 55 54 46 2d 38 20 61 6e 64 20 74 68 65  en UTF-8 and the
2a860 20 6e 6f 72 6d 61 6c 20 65 6e 63 6f 64 69 6e 67   normal encoding
2a870 20 66 6f 72 0a 20 20 20 20 20 20 74 68 65 20 70   for.      the p
2a880 6c 61 74 66 6f 72 6d 20 64 75 72 69 6e 67 20 69  latform during i
2a890 6e 74 65 72 61 63 74 69 6f 6e 73 20 77 69 74 68  nteractions with
2a8a0 20 74 68 65 20 73 79 73 74 65 6d 2e 0a 20 20 20   the system..   
2a8b0 20 2d 20 54 68 65 20 66 63 6f 6e 66 69 67 75 72   - The fconfigur
2a8c0 65 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 73 75  e command now su
2a8d0 70 70 6f 72 74 73 20 61 20 2d 65 6e 63 6f 64 69  pports a -encodi
2a8e0 6e 67 20 6f 70 74 69 6f 6e 20 66 6f 72 20 73 70  ng option for sp
2a8f0 65 63 69 66 79 69 6e 67 0a 20 20 20 20 20 20 74  ecifying.      t
2a900 68 65 20 65 6e 63 6f 64 69 6e 67 20 6f 66 20 61  he encoding of a
2a910 6e 20 6f 70 65 6e 20 66 69 6c 65 20 6f 72 20 73  n open file or s
2a920 6f 63 6b 65 74 2e 20 20 54 63 6c 20 77 69 6c 6c  ocket.  Tcl will
2a930 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 20   automatically. 
2a940 20 20 20 20 20 74 72 61 6e 73 6c 61 74 65 20 62       translate b
2a950 65 74 77 65 65 6e 20 74 68 65 20 73 70 65 63 69  etween the speci
2a960 66 69 65 64 20 65 6e 63 6f 64 69 6e 67 20 61 6e  fied encoding an
2a970 64 20 55 54 46 2d 38 20 64 75 72 69 6e 67 20 49  d UTF-8 during I
2a980 2f 4f 2e 0a 20 20 20 20 20 20 53 65 65 20 74 68  /O..      See th
2a990 65 20 64 69 72 65 63 74 6f 72 79 20 6c 69 62 72  e directory libr
2a9a0 61 72 79 2f 65 6e 63 6f 64 69 6e 67 20 74 6f 20  ary/encoding to 
2a9b0 66 69 6e 64 20 6f 75 74 20 77 68 61 74 20 65 6e  find out what en
2a9c0 63 6f 64 69 6e 67 73 20 61 72 65 0a 20 20 20 20  codings are.    
2a9d0 20 20 73 75 70 70 6f 72 74 65 64 20 28 65 76 65    supported (eve
2a9e0 6e 74 75 61 6c 6c 79 20 74 68 65 72 65 20 77 69  ntually there wi
2a9f0 6c 6c 20 62 65 20 61 6e 20 22 65 6e 63 6f 64 69  ll be an "encodi
2aa00 6e 67 22 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74  ng" command that
2aa10 0a 20 20 20 20 20 20 6d 61 6b 65 73 20 74 68 69  .      makes thi
2aa20 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6d 6f  s information mo
2aa30 72 65 20 61 63 63 65 73 73 69 62 6c 65 29 2e 0a  re accessible)..
2aa40 20 20 20 20 2d 20 54 68 65 72 65 20 61 72 65 20      - There are 
2aa50 73 65 76 65 72 61 6c 20 6e 65 77 20 43 20 41 50  several new C AP
2aa60 49 73 20 74 68 61 74 20 73 75 70 70 6f 72 74 20  Is that support 
2aa70 55 54 46 2d 38 20 61 6e 64 20 76 61 72 69 6f 75  UTF-8 and variou
2aa80 73 20 65 6e 63 6f 64 69 6e 67 73 2e 0a 20 20 20  s encodings..   
2aa90 20 20 20 53 65 65 20 55 74 66 2e 33 20 66 6f 72     See Utf.3 for
2aaa0 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61 74   procedures that
2aab0 20 74 72 61 6e 73 6c 61 74 65 20 62 65 74 77 65   translate betwe
2aac0 65 6e 20 55 6e 69 63 6f 64 65 20 61 6e 64 20 55  en Unicode and U
2aad0 54 46 2d 38 0a 20 20 20 20 20 20 61 6e 64 20 6d  TF-8.      and m
2aae0 61 6e 69 70 75 6c 61 74 65 20 55 54 46 2d 38 20  anipulate UTF-8 
2aaf0 73 74 72 69 6e 67 73 2e 20 53 65 65 20 45 6e 63  strings. See Enc
2ab00 6f 64 69 6e 67 2e 33 20 66 6f 72 20 70 72 6f 63  oding.3 for proc
2ab10 65 64 75 72 65 73 20 74 68 61 74 0a 20 20 20 20  edures that.    
2ab20 20 20 63 72 65 61 74 65 20 6e 65 77 20 65 6e 63    create new enc
2ab30 6f 64 69 6e 67 73 20 61 6e 64 20 74 72 61 6e 73  odings and trans
2ab40 6c 61 74 65 20 62 65 74 77 65 65 6e 20 65 6e 63  late between enc
2ab50 6f 64 69 6e 67 73 2e 20 20 53 65 65 0a 20 20 20  odings.  See.   
2ab60 20 20 20 54 6f 55 70 70 65 72 2e 33 20 66 6f 72     ToUpper.3 for
2ab70 20 70 72 6f 63 65 64 75 72 65 73 20 74 68 61 74   procedures that
2ab80 20 70 65 72 66 6f 72 6d 20 63 61 73 65 20 63 6f   perform case co
2ab90 6e 76 65 72 73 69 6f 6e 73 20 6f 6e 20 55 54 46  nversions on UTF
2aba0 2d 38 0a 20 20 20 20 20 20 73 74 72 69 6e 67 73  -8.      strings
2abb0 2e 0a 0a 39 2f 31 38 2f 39 37 20 28 65 6e 68 61  ...9/18/97 (enha
2abc0 6e 63 65 6d 65 6e 74 29 20 4c 69 74 65 72 61 6c  ncement) Literal
2abd0 20 6f 62 6a 65 63 74 73 20 61 72 65 20 6e 6f 77   objects are now
2abe0 20 73 68 61 72 65 64 20 62 79 20 74 68 65 20 42   shared by the B
2abf0 79 74 65 43 6f 64 65 0a 73 74 72 75 63 74 75 72  yteCode.structur
2ac00 65 73 20 63 72 65 61 74 65 64 20 77 68 65 6e 20  es created when 
2ac10 63 6f 6d 70 69 6c 65 64 20 64 69 66 66 65 72 65  compiled differe
2ac20 6e 74 20 73 63 72 69 70 74 73 2e 20 54 68 69 73  nt scripts. This
2ac30 20 73 61 76 65 73 20 75 70 20 74 6f 20 34 35 25   saves up to 45%
2ac40 0a 6f 66 20 74 68 65 20 74 6f 74 61 6c 20 6d 65  .of the total me
2ac50 6d 6f 72 79 20 6e 65 65 64 65 64 20 66 6f 72 20  mory needed for 
2ac60 61 6c 6c 20 6c 69 74 65 72 61 6c 73 2e 20 28 42  all literals. (B
2ac70 4c 29 0a 0a 39 2f 32 34 2f 39 37 20 28 62 75 67  L)..9/24/97 (bug
2ac80 20 66 69 78 65 73 29 20 46 69 78 65 64 20 54 63   fixes) Fixed Tc
2ac90 6c 5f 50 61 72 73 65 43 6f 6d 6d 61 6e 64 20 70  l_ParseCommand p
2aca0 61 72 73 69 6e 67 20 6f 66 20 62 61 63 6b 73 6c  arsing of backsl
2acb0 61 73 68 2d 6e 65 77 6c 69 6e 65 0a 73 65 71 75  ash-newline.sequ
2acc0 65 6e 63 65 73 20 61 74 20 73 74 61 72 74 20 6f  ences at start o
2acd0 66 20 63 6f 6d 6d 61 6e 64 20 77 6f 72 64 73 2e  f command words.
2ace0 20 53 75 70 70 72 65 73 73 65 64 20 54 63 6c 5f   Suppressed Tcl_
2acf0 45 76 61 6c 44 69 72 65 63 74 20 65 72 72 6f 72  EvalDirect error
2ad00 20 6c 6f 67 67 69 6e 67 0a 69 66 20 6e 6f 6e 2d   logging.if non-
2ad10 54 43 4c 5f 4f 4b 20 72 65 73 75 6c 74 20 77 61  TCL_OK result wa
2ad20 73 6e 27 74 20 61 6e 20 65 72 72 6f 72 2e 20 28  sn't an error. (
2ad30 42 4c 29 0a 0a 31 30 2f 31 37 2f 39 37 20 28 66  BL)..10/17/97 (f
2ad40 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
2ad50 6e 74 29 20 22 7e 75 73 65 72 6e 61 6d 65 22 20  nt) "~username" 
2ad60 6e 6f 77 20 72 65 66 65 72 73 20 74 6f 20 74 68  now refers to th
2ad70 65 20 75 73 65 72 73 27 20 68 6f 6d 65 0a 64 69  e users' home.di
2ad80 72 65 63 74 6f 72 79 20 6f 6e 20 57 69 6e 64 6f  rectory on Windo
2ad90 77 73 20 28 70 72 65 76 69 6f 75 73 6c 79 20 61  ws (previously a
2ada0 6c 77 61 79 73 20 72 65 74 75 72 6e 65 64 20 66  lways returned f
2adb0 61 69 6c 75 72 65 29 2e 20 28 43 43 53 29 0a 0a  ailure). (CCS)..
2adc0 31 30 2f 32 30 2f 39 37 20 28 69 6d 70 6c 65 6d  10/20/97 (implem
2add0 65 6e 74 61 74 69 6f 6e 20 63 68 61 6e 67 65 29  entation change)
2ade0 20 54 68 65 20 54 63 6c 20 70 61 72 73 65 72 20   The Tcl parser 
2adf0 68 61 73 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74  has been complet
2ae00 65 6c 79 20 72 65 77 72 69 74 74 65 6e 0a 74 6f  ely rewritten.to
2ae10 20 6d 61 6b 65 20 69 74 20 6d 6f 72 65 20 6d 6f   make it more mo
2ae20 64 75 6c 61 72 2e 20 20 49 74 20 63 61 6e 20 6e  dular.  It can n
2ae30 6f 77 20 62 65 20 75 73 65 64 20 74 6f 20 70 61  ow be used to pa
2ae40 72 73 65 20 61 20 73 63 72 69 70 74 20 77 69 74  rse a script wit
2ae50 68 6f 75 74 20 61 63 74 75 61 6c 6c 79 0a 65 78  hout actually.ex
2ae60 65 63 75 74 69 6e 67 20 69 74 2e 20 20 54 68 65  ecuting it.  The
2ae70 20 41 50 49 73 20 66 6f 72 20 74 68 65 20 6e 65   APIs for the ne
2ae80 77 20 70 61 72 73 65 72 20 61 72 65 20 6e 6f 74  w parser are not
2ae90 20 63 6f 72 72 65 63 74 6c 79 20 65 78 70 6f 72   correctly expor
2aea0 74 65 64 2c 20 62 75 74 0a 74 68 65 79 20 77 69  ted, but.they wi
2aeb0 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65  ll eventually be
2aec0 20 65 78 70 6f 72 74 65 64 20 61 6e 64 20 61 75   exported and au
2aed0 67 6d 65 6e 74 65 64 20 77 69 74 68 20 54 63 6c  gmented with Tcl
2aee0 20 63 6f 6d 6d 61 6e 64 73 20 73 6f 20 74 68 61   commands so tha
2aef0 74 0a 54 63 6c 20 73 63 72 69 70 74 73 20 63 61  t.Tcl scripts ca
2af00 6e 20 70 61 72 73 65 20 6f 74 68 65 72 20 54 63  n parse other Tc
2af10 6c 20 73 63 72 69 70 74 73 2e 20 28 4a 4f 29 0a  l scripts. (JO).
2af20 0a 31 30 2f 32 31 2f 39 37 20 28 41 50 49 20 63  .10/21/97 (API c
2af30 68 61 6e 67 65 29 20 41 64 64 65 64 20 22 66 6c  hange) Added "fl
2af40 61 67 73 22 20 61 72 67 75 6d 65 6e 74 20 74 6f  ags" argument to
2af50 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 2c 20 72 65   Tcl_EvalObj, re
2af60 6d 6f 76 65 64 0a 54 63 6c 5f 47 6c 6f 62 61 6c  moved.Tcl_Global
2af70 45 76 61 6c 4f 62 6a 20 70 72 6f 63 65 64 75 72  EvalObj procedur
2af80 65 2e 20 20 41 64 64 65 64 20 6e 65 77 20 70 72  e.  Added new pr
2af90 6f 63 65 64 75 72 65 73 20 54 63 6c 5f 45 76 61  ocedures Tcl_Eva
2afa0 6c 32 20 61 6e 64 0a 54 63 6c 5f 45 76 61 6c 4f  l2 and.Tcl_EvalO
2afb0 62 6a 76 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f  bjv. (JO).*** PO
2afc0 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
2afd0 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 30 2f  IBILITY ***..10/
2afe0 32 32 2f 39 37 20 28 41 50 49 20 63 68 61 6e 67  22/97 (API chang
2aff0 65 29 20 52 65 6e 61 6d 65 64 20 54 63 6c 5f 4f  e) Renamed Tcl_O
2b000 62 6a 53 65 74 56 61 72 32 20 61 6e 64 20 54 63  bjSetVar2 and Tc
2b010 6c 5f 4f 62 6a 47 65 74 56 61 72 32 20 74 6f 0a  l_ObjGetVar2 to.
2b020 54 63 6c 5f 53 65 74 4f 62 6a 56 61 72 32 20 61  Tcl_SetObjVar2 a
2b030 6e 64 20 54 63 6c 5f 47 65 74 4f 62 6a 56 61 72  nd Tcl_GetObjVar
2b040 32 20 28 66 6f 72 20 63 6f 6e 73 69 73 74 65 6e  2 (for consisten
2b050 63 79 20 77 69 74 68 20 6f 74 68 65 72 20 43 20  cy with other C 
2b060 41 50 49 73 29 0a 61 6e 64 20 63 68 61 6e 67 65  APIs).and change
2b070 64 20 74 68 65 20 6e 61 6d 65 20 61 72 67 75 6d  d the name argum
2b080 65 6e 74 73 20 74 6f 20 62 65 20 73 74 72 69 6e  ents to be strin
2b090 67 73 20 69 6e 73 74 65 61 64 20 6f 66 20 6f 62  gs instead of ob
2b0a0 6a 65 63 74 73 2e 20 20 28 4a 4f 29 0a 2a 2a 2a  jects.  (JO).***
2b0b0 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
2b0c0 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
2b0d0 31 30 2f 32 37 2f 39 37 20 28 65 6e 68 61 6e 63  10/27/97 (enhanc
2b0e0 65 6d 65 6e 74 29 20 42 79 74 65 63 6f 64 65 20  ement) Bytecode 
2b0f0 63 6f 6d 70 69 6c 65 72 20 72 65 77 72 69 74 74  compiler rewritt
2b100 65 6e 20 74 6f 20 75 73 65 20 74 68 65 20 6e 65  en to use the ne
2b110 77 20 54 63 6c 0a 70 61 72 73 65 72 2e 20 28 42  w Tcl.parser. (B
2b120 4c 29 0a 0a 31 31 2f 33 2f 39 37 20 28 4e 65 77  L)..11/3/97 (New
2b130 20 72 6f 75 74 69 6e 65 73 29 20 41 64 64 65 64   routines) Added
2b140 20 54 63 6c 5f 41 70 70 65 6e 64 4f 62 6a 54 6f   Tcl_AppendObjTo
2b150 4f 62 6a 2c 20 77 68 69 63 68 20 61 70 70 65 6e  Obj, which appen
2b160 64 73 20 74 68 65 0a 73 74 72 69 6e 67 20 72 65  ds the.string re
2b170 70 20 6f 66 20 6f 6e 65 20 54 63 6c 5f 4f 62 6a  p of one Tcl_Obj
2b180 20 74 6f 20 61 6e 6f 74 68 65 72 2e 20 41 64 64   to another. Add
2b190 65 64 20 54 63 6c 5f 47 65 74 49 6e 64 65 78 46  ed Tcl_GetIndexF
2b1a0 72 6f 6d 4f 62 6a 53 74 72 75 63 74 2c 0a 77 68  romObjStruct,.wh
2b1b0 69 63 68 20 69 73 20 73 69 6d 69 6c 61 72 20 74  ich is similar t
2b1c0 6f 20 54 63 6c 5f 47 65 74 49 6e 64 65 78 46 72  o Tcl_GetIndexFr
2b1d0 6f 6d 4f 62 6a 2c 20 65 78 63 65 70 74 20 74 68  omObj, except th
2b1e0 61 74 20 79 6f 75 20 63 61 6e 20 67 69 76 65 20  at you can give 
2b1f0 61 6e 0a 6f 66 66 73 65 74 20 62 65 74 77 65 65  an.offset betwee
2b200 6e 20 73 74 72 69 6e 67 73 2e 20 54 68 69 73 20  n strings. This 
2b210 61 6c 6c 6f 77 73 20 54 63 6c 5f 47 65 74 49 6e  allows Tcl_GetIn
2b220 64 65 78 46 72 6f 6d 4f 62 6a 53 74 72 75 63 74  dexFromObjStruct
2b230 20 74 6f 20 62 65 0a 63 61 6c 6c 65 64 20 77 69   to be.called wi
2b240 74 68 20 61 20 74 61 62 6c 65 20 6f 66 20 72 65  th a table of re
2b250 63 6f 72 64 73 20 77 68 69 63 68 20 68 61 76 65  cords which have
2b260 20 73 74 72 69 6e 67 73 20 69 6e 20 74 68 65 6d   strings in them
2b270 2e 20 28 53 52 50 29 0a 0a 31 32 2f 34 2f 39 37  . (SRP)..12/4/97
2b280 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 4e   (enhancement) N
2b290 65 77 20 54 63 6c 20 65 78 70 72 65 73 73 69 6f  ew Tcl expressio
2b2a0 6e 20 70 61 72 73 65 72 20 61 64 64 65 64 2e 20  n parser added. 
2b2b0 41 64 64 65 64 20 6e 65 77 20 70 72 6f 63 65 64  Added new proced
2b2c0 75 72 65 0a 54 63 6c 5f 50 61 72 73 65 45 78 70  ure.Tcl_ParseExp
2b2d0 72 20 61 6e 64 20 6e 65 77 20 74 6f 6b 65 6e 20  r and new token 
2b2e0 74 79 70 65 73 20 54 43 4c 5f 54 4f 4b 45 4e 5f  types TCL_TOKEN_
2b2f0 53 55 42 5f 45 58 50 52 20 61 6e 64 0a 54 43 4c  SUB_EXPR and.TCL
2b300 5f 54 4f 4b 45 4e 5f 4f 50 45 52 41 54 4f 52 2e  _TOKEN_OPERATOR.
2b310 20 45 78 70 72 65 73 73 69 6f 6e 20 63 6f 6d 70   Expression comp
2b320 69 6c 65 72 20 69 73 20 72 65 69 6d 70 6c 65 6d  iler is reimplem
2b330 65 6e 74 65 64 20 74 6f 20 75 73 65 20 74 68 69  ented to use thi
2b340 73 0a 70 61 72 73 65 72 2e 20 28 42 4c 29 0a 0a  s.parser. (BL)..
2b350 31 32 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78  12/9/97 (bug fix
2b360 29 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 28 29 20  ) Tcl_EvalObj() 
2b370 69 6e 63 72 65 6d 65 6e 74 73 2f 64 65 63 72 65  increments/decre
2b380 6d 65 6e 74 73 20 74 68 65 20 72 65 66 63 6f 75  ments the refcou
2b390 6e 74 20 6f 66 20 74 68 65 0a 73 63 72 69 70 74  nt of the.script
2b3a0 20 6f 62 6a 65 63 74 20 74 6f 20 70 72 65 76 65   object to preve
2b3b0 6e 74 20 74 68 65 20 6f 62 6a 65 63 74 20 66 72  nt the object fr
2b3c0 6f 6d 20 64 65 6c 65 74 69 6e 67 20 69 74 73 65  om deleting itse
2b3d0 6c 66 20 77 68 69 6c 65 20 69 6e 20 74 68 65 0a  lf while in the.
2b3e0 6d 69 64 64 6c 65 20 6f 66 20 62 65 69 6e 67 20  middle of being 
2b3f0 65 76 61 6c 75 61 74 65 64 2e 20 28 43 43 53 29  evaluated. (CCS)
2b400 0a 0a 31 32 2f 39 2f 39 37 20 28 62 75 67 20 66  ..12/9/97 (bug f
2b410 69 78 29 20 4d 65 6d 6f 72 79 20 6c 65 61 6b 20  ix) Memory leak 
2b420 69 6e 20 54 63 6c 5f 47 65 74 73 4f 62 6a 43 6d  in Tcl_GetsObjCm
2b430 64 28 29 2e 20 28 43 43 53 29 0a 0a 31 32 2f 31  d(). (CCS)..12/1
2b440 31 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 45  1/97 (bug fix) E
2b450 6e 76 69 72 6f 6e 6d 65 6e 74 20 61 72 72 61 79  nvironment array
2b460 20 6c 65 61 6b 65 64 20 6d 65 6d 6f 72 79 20 77   leaked memory w
2b470 68 65 6e 20 63 6f 6d 70 69 6c 65 64 20 77 69 74  hen compiled wit
2b480 68 0a 56 69 73 75 61 6c 20 43 2b 2b 2e 20 28 53  h.Visual C++. (S
2b490 53 29 0a 0a 31 32 2f 31 31 2f 39 37 20 28 62 75  S)..12/11/97 (bu
2b4a0 67 20 66 69 78 29 20 46 69 6c 65 20 65 76 65 6e  g fix) File even
2b4b0 74 73 20 61 6e 64 20 6e 6f 6e 2d 62 6c 6f 63 6b  ts and non-block
2b4c0 69 6e 67 20 49 2f 4f 20 64 69 64 20 6e 6f 74 20  ing I/O did not 
2b4d0 77 6f 72 6b 20 6f 6e 0a 70 69 70 65 73 20 75 6e  work on.pipes un
2b4e0 64 65 72 20 57 69 6e 64 6f 77 73 2e 20 20 43 68  der Windows.  Ch
2b4f0 61 6e 67 65 64 20 74 6f 20 75 73 65 20 74 68 72  anged to use thr
2b500 65 61 64 73 20 74 6f 20 61 63 68 69 65 76 65 20  eads to achieve 
2b510 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 0a 62 65 68  non-blocking.beh
2b520 61 76 69 6f 72 2e 20 28 53 53 29 0a 0a 31 32 2f  avior. (SS)..12/
2b530 31 38 2f 39 37 20 28 62 75 67 20 66 69 78 65 73  18/97 (bug fixes
2b540 29 20 46 69 78 65 64 20 73 65 67 66 61 75 6c 74  ) Fixed segfault
2b550 20 69 6e 20 22 6e 61 6d 65 73 70 61 63 65 20 69   in "namespace i
2b560 6d 70 6f 72 74 22 3b 20 69 6d 70 6f 72 74 69 6e  mport"; importin
2b570 67 20 61 0a 70 72 6f 63 65 64 75 72 65 20 74 68  g a.procedure th
2b580 61 74 20 63 61 75 73 65 73 20 61 20 63 79 63 6c  at causes a cycl
2b590 65 20 6e 6f 77 20 72 65 74 75 72 6e 73 20 61 6e  e now returns an
2b5a0 20 65 72 72 6f 72 2e 20 4d 6f 64 69 66 69 65 64   error. Modified
2b5b0 20 22 69 6e 66 6f 20 70 72 6f 63 73 22 2c 0a 22   "info procs",."
2b5c0 69 6e 66 6f 20 61 72 67 73 22 2c 20 22 69 6e 66  info args", "inf
2b5d0 6f 20 62 6f 64 79 22 2c 20 61 6e 64 20 22 69 6e  o body", and "in
2b5e0 66 6f 20 64 65 66 61 75 6c 74 22 20 74 6f 20 72  fo default" to r
2b5f0 65 74 75 72 6e 20 69 6e 66 6f 72 6d 61 74 69 6f  eturn informatio
2b600 6e 20 61 62 6f 75 74 0a 69 6d 70 6f 72 74 65 64  n about.imported
2b610 20 70 72 6f 63 65 64 75 72 65 73 20 61 73 20 77   procedures as w
2b620 65 6c 6c 20 61 73 20 70 72 6f 63 65 64 75 72 65  ell as procedure
2b630 73 20 64 65 66 69 6e 65 64 20 69 6e 20 61 20 6e  s defined in a n
2b640 61 6d 65 73 70 61 63 65 2e 20 28 42 4c 29 0a 0a  amespace. (BL)..
2b650 31 32 2f 31 39 2f 39 37 20 28 65 6e 68 61 6e 63  12/19/97 (enhanc
2b660 65 6d 65 6e 74 29 20 41 64 64 65 64 20 6e 65 77  ement) Added new
2b670 20 54 63 6c 5f 47 65 74 53 74 72 69 6e 67 28 29   Tcl_GetString()
2b680 20 70 72 6f 63 65 64 75 72 65 20 74 68 61 74 20   procedure that 
2b690 63 61 6e 20 62 65 20 75 73 65 64 0a 69 6e 20 70  can be used.in p
2b6a0 6c 61 63 65 20 6f 66 20 54 63 6c 5f 47 65 74 53  lace of Tcl_GetS
2b6b0 74 72 69 6e 67 46 72 6f 6d 4f 62 6a 28 29 20 69  tringFromObj() i
2b6c0 66 20 74 68 65 20 73 74 72 69 6e 67 20 72 65 70  f the string rep
2b6d0 72 65 73 65 6e 74 61 74 69 6f 6e 27 73 20 6c 65  resentation's le
2b6e0 6e 67 74 68 0a 69 73 6e 27 74 20 6e 65 65 64 65  ngth.isn't neede
2b6f0 64 2e 20 28 42 4c 29 0a 0a 31 32 2f 31 38 2f 39  d. (BL)..12/18/9
2b700 37 20 28 62 75 67 20 66 69 78 29 20 49 6e 20 74  7 (bug fix) In t
2b710 68 65 20 6f 70 74 20 61 72 67 75 6d 65 6e 74 20  he opt argument 
2b720 70 61 72 73 69 6e 67 20 70 61 63 6b 61 67 65 3a  parsing package:
2b730 20 69 66 20 74 68 65 20 64 65 73 63 72 69 70 74   if the descript
2b740 69 6f 6e 0a 68 61 64 20 6f 6e 6c 79 20 66 6c 61  ion.had only fla
2b750 67 73 2c 20 74 68 65 20 22 74 6f 6f 20 6d 61 6e  gs, the "too man
2b760 79 20 61 72 67 75 6d 65 6e 74 73 22 20 63 61 73  y arguments" cas
2b770 65 20 77 61 73 20 6e 6f 74 20 64 65 74 65 63 74  e was not detect
2b780 65 64 2e 20 54 68 65 20 64 65 66 61 75 6c 74 0a  ed. The default.
2b790 76 61 6c 75 65 20 77 61 73 20 6e 6f 74 20 75 73  value was not us
2b7a0 65 64 20 66 6f 72 20 74 68 65 20 73 70 65 63 69  ed for the speci
2b7b0 61 6c 20 22 61 72 67 73 22 20 65 6e 64 69 6e 67  al "args" ending
2b7c0 20 61 72 67 75 6d 65 6e 74 2e 20 28 44 4c 29 0a   argument. (DL).
2b7d0 0a 31 2f 37 2f 39 38 20 28 63 6c 65 61 6e 20 75  .1/7/98 (clean u
2b7e0 70 29 20 4d 6f 76 65 64 20 65 76 65 72 79 74 68  p) Moved everyth
2b7f0 69 6e 67 20 6e 6f 74 20 61 62 73 6f 6c 75 74 6c  ing not absolutl
2b800 79 20 6e 65 63 65 73 73 61 72 79 20 6f 75 74 20  y necessary out 
2b810 6f 66 20 69 6e 69 74 2e 74 63 6c 0a 70 72 6f 63  of init.tcl.proc
2b820 73 20 6e 6f 77 20 69 6e 20 61 75 74 6f 2e 74 63  s now in auto.tc
2b830 6c 20 61 6e 64 20 70 61 63 6b 61 67 65 2e 74 63  l and package.tc
2b840 6c 20 63 61 6e 20 62 65 20 61 75 74 6f 6c 6f 61  l can be autoloa
2b850 64 65 64 20 69 66 20 6e 65 65 64 65 64 2e 20 28  ded if needed. (
2b860 44 4c 29 0a 0a 31 2f 37 2f 39 38 20 28 65 6e 68  DL)..1/7/98 (enh
2b870 61 6e 63 65 6d 65 6e 74 29 20 74 63 6c 74 65 73  ancement) tcltes
2b880 74 20 6d 61 64 65 20 61 74 20 69 6e 73 74 61 6c  t made at instal
2b890 6c 20 74 69 6d 65 20 77 69 6c 6c 20 73 65 61 72  l time will sear
2b8a0 63 68 20 66 6f 72 20 69 74 27 73 0a 69 6e 69 74  ch for it's.init
2b8b0 2e 74 63 6c 20 77 68 65 72 65 20 69 74 20 69 73  .tcl where it is
2b8c0 2c 20 65 76 65 6e 20 77 68 65 6e 20 75 73 69 6e  , even when usin
2b8d0 67 20 76 69 72 74 75 61 6c 20 70 61 74 68 20 63  g virtual path c
2b8e0 6f 6d 70 69 6c 61 74 69 6f 6e 2e 20 28 44 4c 29  ompilation. (DL)
2b8f0 0a 0a 31 2f 38 2f 39 38 20 28 6f 73 20 62 75 67  ..1/8/98 (os bug
2b900 20 77 6f 72 6b 61 72 6f 75 6e 64 29 20 77 68 65   workaround) whe
2b910 6e 20 6e 65 65 64 65 64 2c 20 75 73 69 6e 67 20  n needed, using 
2b920 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 66 6f  a replacement fo
2b930 72 20 6d 65 6d 63 6d 70 20 73 6f 0a 73 74 72 69  r memcmp so.stri
2b940 6e 67 20 63 6f 6d 70 61 72 65 20 22 63 68 61 72  ng compare "char
2b950 20 77 69 74 68 20 68 69 67 68 20 62 69 74 20 73   with high bit s
2b960 65 74 22 20 22 63 68 61 72 20 77 2f 6f 20 68 69  et" "char w/o hi
2b970 67 68 20 62 69 74 20 73 65 74 22 20 72 65 74 75  gh bit set" retu
2b980 72 6e 73 0a 74 68 65 20 65 78 70 65 63 74 65 64  rns.the expected
2b990 20 76 61 6c 75 65 20 6f 6e 20 61 6c 6c 20 70 6c   value on all pl
2b9a0 61 74 66 6f 72 6d 73 2e 20 28 44 4c 29 0a 0a 31  atforms. (DL)..1
2b9b0 2f 38 2f 39 38 20 28 75 6e 69 78 20 70 6f 72 74  /8/98 (unix port
2b9c0 61 62 69 6c 69 74 79 2f 63 6f 6e 66 69 67 75 72  ability/configur
2b9d0 65 29 20 62 75 69 6c 64 69 6e 67 20 66 72 6f 6d  e) building from
2b9e0 20 2e 2e 2e 2f 75 6e 69 78 2f 74 61 72 67 65 74   .../unix/target
2b9f0 4e 61 6d 65 2f 0a 73 75 62 64 69 72 65 63 74 6f  Name/.subdirecto
2ba00 72 69 65 73 20 61 6e 64 20 73 69 6d 70 6c 79 20  ries and simply 
2ba10 75 73 69 6e 67 20 22 2e 2e 2f 63 6f 6e 66 69 67  using "../config
2ba20 75 72 65 22 20 73 68 6f 75 6c 64 20 6e 6f 77 20  ure" should now 
2ba30 77 6f 72 6b 20 66 69 6e 65 2e 20 28 44 4c 29 0a  work fine. (DL).
2ba40 0a 31 2f 31 34 2f 39 38 20 28 65 6e 68 61 6e 63  .1/14/98 (enhanc
2ba50 65 6d 65 6e 74 29 20 41 64 64 65 64 20 6e 65 77  ement) Added new
2ba60 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
2ba70 69 6f 6e 20 70 61 63 6b 61 67 65 20 74 68 61 74  ion package that
2ba80 0a 73 75 70 70 6f 72 74 73 20 41 52 45 73 2c 20  .supports AREs, 
2ba90 45 52 45 73 2c 20 61 6e 64 20 42 52 45 73 2e 20  EREs, and BREs. 
2baa0 20 54 68 65 20 6e 65 77 20 70 61 63 6b 61 67 65   The new package
2bab0 20 69 6e 63 6c 75 64 65 73 20 6e 65 77 20 65 73   includes new es
2bac0 63 61 70 65 0a 63 68 61 72 61 63 74 65 72 73 2c  cape.characters,
2bad0 20 6d 65 74 61 2d 73 79 6e 74 61 78 2c 20 61 6e   meta-syntax, an
2bae0 64 20 63 68 61 72 61 63 74 65 72 20 63 6c 61 73  d character clas
2baf0 73 65 73 20 69 6e 73 69 64 65 20 62 72 61 63 6b  ses inside brack
2bb00 65 74 73 2e 0a 52 65 67 65 78 70 73 20 69 6e 76  ets..Regexps inv
2bb10 6f 6c 76 69 6e 67 20 62 61 63 6b 73 6c 61 73 68  olving backslash
2bb20 65 73 20 6d 61 79 20 62 65 68 61 76 65 20 64 69  es may behave di
2bb30 66 66 65 72 65 6e 74 6c 79 2e 20 20 28 4d 48 29  fferently.  (MH)
2bb40 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
2bb50 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
2bb60 2a 2a 0a 0a 31 2f 31 36 2f 39 38 20 28 6f 73 20  **..1/16/98 (os 
2bb70 77 6f 72 6b 61 72 6f 75 6e 64 29 20 55 6e 64 65  workaround) Unde
2bb80 72 20 77 69 6e 64 6f 77 73 2c 20 22 66 69 6c 65  r windows, "file
2bb90 20 76 6f 6c 75 6d 65 22 20 77 61 73 20 63 61 75   volume" was cau
2bba0 73 69 6e 67 20 63 68 61 74 74 65 72 0a 61 6e 64  sing chatter.and
2bbb0 2f 6f 72 20 73 65 76 65 72 61 6c 20 73 65 63 6f  /or several seco
2bbc0 6e 64 73 20 6f 66 20 68 61 6e 67 69 6e 67 20 77  nds of hanging w
2bbd0 68 65 6e 20 71 75 65 72 79 69 6e 67 20 65 6d 70  hen querying emp
2bbe0 74 79 20 66 6c 6f 70 70 79 20 64 72 69 76 65 73  ty floppy drives
2bbf0 2e 0a 43 68 61 6e 67 65 64 20 69 6d 70 6c 65 6d  ..Changed implem
2bc00 65 6e 74 61 74 69 6f 6e 20 74 6f 20 63 61 6c 6c  entation to call
2bc10 20 61 6e 20 65 6d 70 69 72 69 63 61 6c 6c 79 2d   an empirically-
2bc20 64 65 72 69 76 65 64 20 66 75 6e 63 74 69 6f 6e  derived function
2bc30 20 74 68 61 74 20 64 6f 65 73 6e 27 74 0a 63 61   that doesn't.ca
2bc40 75 73 65 20 74 68 69 73 2e 20 28 43 43 53 29 0a  use this. (CCS).
2bc50 0a 31 2f 31 36 2f 39 38 20 28 65 6e 68 61 6e 63  .1/16/98 (enhanc
2bc60 65 6d 65 6e 74 29 20 43 6f 6e 76 65 72 74 65 64  ement) Converted
2bc70 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
2bc80 69 6f 6e 73 20 74 6f 20 61 20 54 63 6c 5f 4f 62  ions to a Tcl_Ob
2bc90 6a 20 74 79 70 65 20 73 6f 0a 74 68 65 69 72 20  j type so.their 
2bca0 63 6f 6d 70 69 6c 65 64 20 66 6f 72 6d 20 67 65  compiled form ge
2bcb0 74 73 20 63 61 63 68 65 64 20 61 75 74 6f 6d 61  ts cached automa
2bcc0 74 69 63 61 6c 6c 79 2e 20 20 52 65 64 75 63 65  tically.  Reduce
2bcd0 64 20 4e 53 55 42 45 58 50 20 66 72 6f 6d 20 31  d NSUBEXP from 1
2bce0 30 30 0a 74 6f 20 32 30 2e 20 28 42 57 29 0a 0a  00.to 20. (BW)..
2bcf0 31 2f 31 36 2f 39 38 20 28 64 6f 63 75 6d 65 6e  1/16/98 (documen
2bd00 74 61 74 69 6f 6e 29 20 43 68 61 6e 67 65 20 75  tation) Change u
2bd10 6e 63 6c 65 61 72 20 64 6f 63 75 6d 65 6e 74 61  nclear documenta
2bd20 74 69 6f 6e 20 61 6e 64 20 63 6f 6d 6d 65 6e 74  tion and comment
2bd30 73 20 66 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 20  s for.functions 
2bd40 6c 69 6b 65 20 54 63 6c 5f 54 72 61 6e 73 6c 61  like Tcl_Transla
2bd50 74 65 46 69 6c 65 4e 61 6d 65 28 29 20 61 6e 64  teFileName() and
2bd60 20 54 63 6c 5f 45 78 74 65 72 6e 61 6c 54 6f 55   Tcl_ExternalToU
2bd70 74 66 44 53 74 72 69 6e 67 28 29 2e 20 20 4e 6f  tfDString().  No
2bd80 77 0a 69 74 20 65 78 70 6c 69 63 69 74 6c 79 20  w.it explicitly 
2bd90 73 61 79 73 20 74 68 65 79 20 74 61 6b 65 20 61  says they take a
2bda0 6e 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20  n uninitialized 
2bdb0 6f 72 20 66 72 65 65 20 44 53 74 72 69 6e 67 2e  or free DString.
2bdc0 20 20 41 20 44 53 74 72 69 6e 67 0a 74 68 61 74    A DString.that
2bdd0 20 69 73 20 22 65 6d 70 74 79 22 20 6f 72 20 22   is "empty" or "
2bde0 6e 6f 74 20 68 6f 6c 64 69 6e 67 20 61 6e 79 74  not holding anyt
2bdf0 68 69 6e 67 22 20 63 6f 75 6c 64 20 68 61 76 65  hing" could have
2be00 20 62 65 65 6e 20 69 6e 74 65 72 70 72 65 74 65   been interprete
2be10 64 20 61 73 20 6f 6e 65 0a 63 75 72 72 65 6e 74  d as one.current
2be20 6c 79 20 77 69 74 68 20 61 20 7a 65 72 6f 20 6c  ly with a zero l
2be30 65 6e 67 74 68 2c 20 62 75 74 20 77 69 74 68 20  ength, but with 
2be40 61 20 6c 61 72 67 65 20 64 79 6e 61 6d 69 63 61  a large dynamica
2be50 6c 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 62 75  lly allocated bu
2be60 66 66 65 72 2e 0a 28 43 43 53 29 0a 0a 2d 2d 2d  ffer..(CCS)..---
2be70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
2be80 65 6c 65 61 73 65 64 20 38 2e 31 61 31 2c 20 31  eleased 8.1a1, 1
2be90 2f 32 32 2f 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /22/98 ---------
2bea0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
2beb0 31 2f 32 38 2f 39 38 20 28 6e 65 77 20 66 65 61  1/28/98 (new fea
2bec0 74 75 72 65 29 20 41 64 64 65 64 20 61 20 22 2d  ture) Added a "-
2bed0 64 69 72 65 63 74 22 20 6f 70 74 69 6f 6e 61 6c  direct" optional
2bee0 20 66 6c 61 67 20 74 6f 20 70 6b 67 5f 6d 6b 49   flag to pkg_mkI
2bef0 6e 64 65 78 0a 74 6f 20 67 65 6e 65 72 61 74 65  ndex.to generate
2bf00 20 64 69 72 65 63 74 20 6c 6f 61 64 69 6e 67 20   direct loading 
2bf10 70 61 63 6b 61 67 65 20 69 6e 64 65 78 65 73 20  package indexes 
2bf20 28 73 75 63 68 20 74 68 6f 73 65 20 79 6f 75 20  (such those you 
2bf30 6e 65 65 64 0a 69 66 20 79 6f 75 20 75 73 65 20  need.if you use 
2bf40 6e 61 6d 65 73 70 61 63 65 73 20 61 6e 64 20 70  namespaces and p
2bf50 6c 61 6e 20 6f 6e 20 75 73 69 6e 67 20 6e 61 6d  lan on using nam
2bf60 65 73 70 61 63 65 20 69 6d 70 6f 72 74 20 6a 75  espace import ju
2bf70 73 74 20 61 66 74 65 72 0a 70 61 63 6b 61 67 65  st after.package
2bf80 20 72 65 71 75 69 72 65 29 2e 20 70 6b 67 5f 6d   require). pkg_m
2bf90 6b 49 6e 64 65 78 20 73 74 69 6c 6c 20 68 61 73  kIndex still has
2bfa0 20 6c 69 6d 69 74 61 74 69 6f 6e 73 20 72 65 67   limitations reg
2bfb0 61 72 64 69 6e 67 0a 70 61 63 6b 61 67 65 20 64  arding.package d
2bfc0 65 70 65 6e 64 65 6e 63 69 65 73 20 62 75 74 20  ependencies but 
2bfd0 65 72 72 6f 72 73 20 61 72 65 20 6e 6f 77 20 69  errors are now i
2bfe0 67 6e 6f 72 65 64 20 61 6e 64 20 77 69 74 68 20  gnored and with 
2bff0 2d 64 69 72 65 63 74 2c 20 63 6f 72 72 65 63 74  -direct, correct
2c000 0a 70 61 63 6b 61 67 65 20 69 6e 64 65 78 65 73  .package indexes
2c010 20 63 61 6e 20 62 65 20 67 65 6e 65 72 61 74 65   can be generate
2c020 64 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20  d even if there 
2c030 61 72 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73  are dependencies
2c040 20 61 73 20 6c 6f 6e 67 0a 61 73 20 74 68 65 20   as long.as the 
2c050 22 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65  "package provide
2c060 22 20 61 72 65 20 64 6f 6e 65 20 65 61 72 6c 79  " are done early
2c070 20 65 6e 6f 75 67 68 20 69 6e 20 74 68 65 20 66   enough in the f
2c080 69 6c 65 73 2e 20 28 44 4c 29 0a 0a 31 2f 32 38  iles. (DL)..1/28
2c090 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /98 (enhancement
2c0a0 29 20 50 65 72 66 6f 72 6d 61 6e 63 65 20 74 75  ) Performance tu
2c0b0 6e 69 6e 67 20 6f 66 20 72 65 67 65 78 70 20 61  ning of regexp a
2c0c0 6e 64 20 72 65 67 73 75 62 2e 20 28 43 43 53 29  nd regsub. (CCS)
2c0d0 0a 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66  ..1/28/98 (bug f
2c0e0 69 78 29 20 72 65 67 65 78 70 20 61 6e 64 20 72  ix) regexp and r
2c0f0 65 67 73 75 62 20 77 69 74 68 20 22 2d 69 6e 64  egsub with "-ind
2c100 69 63 65 73 22 20 72 65 74 75 72 6e 65 64 20 74  ices" returned t
2c110 68 65 20 62 79 74 65 2d 6f 66 66 73 65 74 73 0a  he byte-offsets.
2c120 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72  of the character
2c130 73 20 69 6e 20 74 68 65 20 55 54 46 2d 38 20 72  s in the UTF-8 r
2c140 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2c 20 6e  epresentation, n
2c150 6f 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72  ot the character
2c160 20 6f 66 66 73 65 74 73 0a 74 68 65 6d 73 65 6c   offsets.themsel
2c170 76 65 73 2e 20 28 43 43 53 29 0a 0a 31 2f 32 38  ves. (CCS)..1/28
2c180 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 22 63  /98 (bug fix) "c
2c190 6c 6f 63 6b 20 66 6f 72 6d 61 74 20 30 20 2d 66  lock format 0 -f
2c1a0 6f 72 6d 61 74 20 25 5a 20 2d 67 6d 74 20 31 22  ormat %Z -gmt 1"
2c1b0 20 77 6f 75 6c 64 20 72 65 74 75 72 6e 20 74 68   would return th
2c1c0 65 20 6c 6f 63 61 6c 0a 74 69 6d 65 7a 6f 6e 65  e local.timezone
2c1d0 20 73 74 72 69 6e 67 20 69 6e 73 74 65 61 64 20   string instead 
2c1e0 6f 66 20 22 47 4d 54 22 20 6f 6e 20 53 6f 6c 61  of "GMT" on Sola
2c1f0 72 69 73 20 61 6e 64 20 57 69 6e 64 6f 77 73 2e  ris and Windows.
2c200 0a 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66  ..1/28/98 (bug f
2c210 69 78 29 20 52 65 73 74 6f 72 65 20 74 74 79 20  ix) Restore tty 
2c220 73 65 74 74 69 6e 67 73 20 77 68 65 6e 20 63 6c  settings when cl
2c230 6f 73 69 6e 67 20 73 65 72 69 61 6c 20 64 65 76  osing serial dev
2c240 69 63 65 20 6f 6e 20 55 6e 69 78 2e 0a 54 68 69  ice on Unix..Thi
2c250 73 20 69 73 20 67 6f 6f 64 20 62 65 68 61 76 69  s is good behavi
2c260 6f 72 20 77 68 65 6e 20 63 6c 6f 73 69 6e 67 20  or when closing 
2c270 72 65 61 6c 20 73 65 72 69 61 6c 20 64 65 76 69  real serial devi
2c280 63 65 73 2c 20 65 73 73 65 6e 74 69 61 6c 20 77  ces, essential w
2c290 68 65 6e 0a 63 6c 6f 73 69 6e 67 20 74 68 65 20  hen.closing the 
2c2a0 70 73 65 75 64 6f 2d 64 65 76 69 63 65 20 2f 64  pseudo-device /d
2c2b0 65 76 2f 74 74 79 20 62 65 63 61 75 73 65 20 74  ev/tty because t
2c2c0 68 65 20 75 73 65 72 27 73 20 74 65 72 6d 69 6e  he user's termin
2c2d0 61 6c 20 73 65 74 74 69 6e 67 73 0a 77 6f 75 6c  al settings.woul
2c2e0 64 20 62 65 20 6c 65 66 74 20 75 73 65 6c 65 73  d be left useles
2c2f0 73 2c 20 69 6e 20 72 61 77 20 6d 6f 64 65 2c 20  s, in raw mode, 
2c300 77 68 65 6e 20 74 63 6c 20 71 75 69 74 2e 20 28  when tcl quit. (
2c310 43 43 53 29 0a 0a 31 2f 32 38 2f 39 38 20 28 62  CCS)..1/28/98 (b
2c320 75 67 20 66 69 78 29 20 54 63 6c 5f 4f 70 65 6e  ug fix) Tcl_Open
2c330 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29  CommandChannel()
2c340 20 77 61 73 20 6d 6f 64 69 66 79 69 6e 67 20 74   was modifying t
2c350 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74  he contents of t
2c360 68 65 0a 61 72 67 76 20 61 72 72 61 79 20 70 61  he.argv array pa
2c370 73 73 65 64 20 74 6f 20 69 74 2c 20 63 61 75 73  ssed to it, caus
2c380 69 6e 67 20 70 72 6f 62 6c 65 6d 73 20 66 6f 72  ing problems for
2c390 20 61 6e 79 20 63 61 6c 6c 65 72 20 74 68 61 74   any caller that
2c3a0 20 77 61 6e 74 65 64 20 74 6f 0a 63 6f 6e 74 69   wanted to.conti
2c3b0 6e 75 65 20 74 6f 20 75 73 65 20 74 68 65 20 61  nue to use the a
2c3c0 72 67 76 20 61 72 72 61 79 20 61 66 74 65 72 20  rgv array after 
2c3d0 63 61 6c 6c 69 6e 67 20 54 63 6c 5f 4f 70 65 6e  calling Tcl_Open
2c3e0 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29  CommandChannel()
2c3f0 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20  . (CCS)..2/1/98 
2c400 28 62 75 67 20 66 69 78 29 20 4d 6f 72 65 20 62  (bug fix) More b
2c410 75 67 73 20 77 69 74 68 20 25 5a 20 69 6e 20 66  ugs with %Z in f
2c420 6f 72 6d 61 74 20 73 74 72 69 6e 67 20 61 72 67  ormat string arg
2c430 75 6d 65 6e 74 20 74 6f 20 73 74 72 66 74 69 6d  ument to strftim
2c440 65 28 29 3a 0a 31 2e 20 42 6f 72 6c 61 6e 64 20  e():.1. Borland 
2c450 61 6c 77 61 79 73 20 72 65 74 75 72 6e 65 64 20  always returned 
2c460 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 32 2e  empty string..2.
2c470 20 4d 53 56 43 20 61 6c 77 61 79 73 20 72 65 74   MSVC always ret
2c480 75 72 6e 65 64 20 74 68 65 20 74 69 6d 65 7a 6f  urned the timezo
2c490 6e 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68  ne string for th
2c4a0 65 20 63 75 72 72 65 6e 74 20 74 69 6d 65 2c 20  e current time, 
2c4b0 6e 6f 74 20 74 68 65 0a 20 20 20 74 69 6d 65 7a  not the.   timez
2c4c0 6f 6e 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74  one string for t
2c4d0 68 65 20 73 70 65 63 69 66 69 65 64 20 74 69 6d  he specified tim
2c4e0 65 2e 0a 33 2e 20 57 69 74 68 20 4d 53 56 43 2c  e..3. With MSVC,
2c4f0 20 22 63 6c 6f 63 6b 20 66 6f 72 6d 61 74 20 30   "clock format 0
2c500 20 2d 66 6f 72 6d 61 74 20 25 5a 20 2d 67 6d 74   -format %Z -gmt
2c510 20 31 22 20 77 6f 75 6c 64 20 72 65 74 75 72 6e   1" would return
2c520 20 22 47 4d 54 22 20 74 68 65 20 66 69 72 73 74   "GMT" the first
2c530 0a 20 20 20 74 69 6d 65 20 69 74 20 77 61 73 20  .   time it was 
2c540 63 61 6c 6c 65 64 2c 20 62 75 74 20 77 6f 75 6c  called, but woul
2c550 64 20 72 65 74 75 72 6e 20 74 68 65 20 63 75 72  d return the cur
2c560 72 65 6e 74 20 74 69 6d 65 7a 6f 6e 65 20 73 74  rent timezone st
2c570 72 69 6e 67 20 6f 6e 20 61 6c 6c 0a 20 20 20 73  ring on all.   s
2c580 75 62 73 65 71 75 65 6e 74 20 63 61 6c 6c 73 2e  ubsequent calls.
2c590 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20 28   (CCS)..2/1/98 (
2c5a0 62 75 67 20 66 69 78 29 20 22 66 69 6c 65 20 73  bug fix) "file s
2c5b0 74 61 74 22 20 77 61 73 20 62 72 6f 6b 65 6e 20  tat" was broken 
2c5c0 6f 6e 20 57 69 6e 64 6f 77 73 2e 0a 31 2e 20 22  on Windows..1. "
2c5d0 66 69 6c 65 20 73 74 61 74 22 20 6f 66 20 61 20  file stat" of a 
2c5e0 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 20 28  root directory (
2c5f0 6c 6f 63 61 6c 20 6f 72 20 6e 65 74 77 6f 72 6b  local or network
2c600 29 20 6f 72 20 61 20 72 65 6c 61 74 69 76 65 20  ) or a relative 
2c610 70 61 74 68 20 74 68 61 74 0a 20 20 20 72 65 73  path that.   res
2c620 6f 6c 76 65 64 20 74 6f 20 61 20 72 6f 6f 74 20  olved to a root 
2c630 64 69 72 65 63 74 6f 72 79 20 28 63 3a 2e 20 77  directory (c:. w
2c640 68 65 6e 20 69 6e 20 70 77 64 20 77 61 73 20 63  hen in pwd was c
2c650 3a 2f 29 20 77 61 73 20 72 65 74 75 72 6e 69 6e  :/) was returnin
2c660 67 20 65 72 72 6f 72 2e 0a 32 2e 20 22 66 69 6c  g error..2. "fil
2c670 65 20 73 74 61 74 22 20 6f 6e 20 61 20 72 65 67  e stat" on a reg
2c680 75 6c 61 72 20 66 69 6c 65 20 28 53 5f 49 46 52  ular file (S_IFR
2c690 45 47 29 2c 20 74 68 65 20 73 74 5f 6d 6f 64 65  EG), the st_mode
2c6a0 20 77 61 73 20 73 69 67 6e 20 65 78 74 65 6e 64   was sign extend
2c6b0 65 64 20 74 6f 0a 20 20 20 61 20 6e 65 67 61 74  ed to.   a negat
2c6c0 69 76 65 20 69 6e 74 20 69 66 20 74 68 65 20 70  ive int if the p
2c6d0 6c 61 74 66 6f 72 6d 2d 64 65 70 65 6e 64 61 6e  latform-dependan
2c6e0 74 20 74 79 70 65 20 22 6d 6f 64 65 5f 74 22 20  t type "mode_t" 
2c6f0 77 61 73 20 64 65 63 6c 61 72 65 64 20 61 73 20  was declared as 
2c700 61 0a 20 20 20 73 68 6f 72 74 20 69 6e 73 74 65  a.   short inste
2c710 61 64 20 6f 66 20 61 6e 20 75 6e 73 69 67 6e 65  ad of an unsigne
2c720 64 20 73 68 6f 72 74 2e 0a 33 2e 20 22 66 69 6c  d short..3. "fil
2c730 65 20 73 74 61 74 22 20 6f 66 20 61 20 6e 65 74  e stat" of a net
2c740 77 6f 72 6b 20 64 69 72 65 63 74 6f 72 79 2c 20  work directory, 
2c750 74 68 65 20 73 74 5f 64 65 76 20 77 61 73 20 69  the st_dev was i
2c760 6e 63 6f 72 72 65 63 74 6c 79 20 72 65 70 6f 72  ncorrectly repor
2c770 74 65 64 0a 20 20 20 61 73 20 74 68 65 20 69 64  ted.   as the id
2c780 20 6f 66 20 74 68 65 20 6c 61 73 74 20 61 63 63   of the last acc
2c790 65 73 73 65 64 20 6c 6f 63 61 6c 20 64 72 69 76  essed local driv
2c7a0 65 20 72 61 74 68 65 72 20 74 68 61 6e 20 74 68  e rather than th
2c7b0 65 20 69 64 20 6f 66 20 74 68 65 0a 20 20 20 6e  e id of the.   n
2c7c0 65 74 77 6f 72 6b 20 64 72 69 76 65 2e 20 28 43  etwork drive. (C
2c7d0 43 53 29 0a 0a 32 2f 31 2f 39 38 20 28 62 75 67  CS)..2/1/98 (bug
2c7e0 20 66 69 78 29 20 22 66 69 6c 65 20 61 74 74 72   fix) "file attr
2c7f0 69 62 75 74 65 73 22 20 6f 66 20 61 20 72 65 6c  ibutes" of a rel
2c800 61 74 69 76 65 20 70 61 74 68 20 74 68 61 74 20  ative path that 
2c810 72 65 73 6f 6c 76 65 64 20 74 6f 20 61 0a 72 6f  resolved to a.ro
2c820 6f 74 20 64 69 72 65 63 74 6f 72 79 20 77 61 73  ot directory was
2c830 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72   returning error
2c840 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20  . (CCS)..2/1/98 
2c850 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
2c860 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 77   error message w
2c870 68 65 6e 20 22 66 69 6c 65 20 61 74 74 72 69 62  hen "file attrib
2c880 75 74 65 22 20 63 6f 75 6c 64 20 6e 6f 74 0a 64  ute" could not.d
2c890 65 74 65 72 6d 69 6e 65 20 74 68 65 20 61 74 74  etermine the att
2c8a0 72 69 62 75 74 65 73 20 66 6f 72 20 61 20 66 69  ributes for a fi
2c8b0 6c 65 2e 20 20 50 72 65 76 69 6f 75 73 6c 79 20  le.  Previously 
2c8c0 69 74 20 77 6f 75 6c 64 20 72 65 74 75 72 6e 20  it would return 
2c8d0 64 69 66 66 65 72 65 6e 74 0a 65 72 72 6f 72 20  different.error 
2c8e0 6d 65 73 73 61 67 65 73 20 6f 6e 20 55 6e 69 78  messages on Unix
2c8f0 20 76 73 2e 20 20 57 69 6e 64 6f 77 73 20 76 73   vs.  Windows vs
2c900 2e 20 4d 61 63 2e 20 28 43 43 53 29 0a 0a 32 2f  . Mac. (CCS)..2/
2c910 34 2f 39 38 20 28 62 75 67 20 66 69 78 65 73 29  4/98 (bug fixes)
2c920 20 46 69 78 65 64 20 73 65 76 65 72 61 6c 20 69   Fixed several i
2c930 6e 73 74 61 6e 63 65 73 20 6f 66 20 62 75 67 73  nstances of bugs
2c940 20 77 68 65 72 65 20 74 68 65 20 70 61 72 73 65   where the parse
2c950 72 2f 63 6f 6d 70 69 6c 65 72 0a 77 6f 75 6c 64  r/compiler.would
2c960 20 72 65 61 63 68 20 6f 75 74 73 69 64 65 20 74   reach outside t
2c970 68 65 20 72 61 6e 67 65 20 6f 66 20 61 6c 6c 6f  he range of allo
2c980 63 61 74 65 64 20 6d 65 6d 6f 72 79 2e 20 49 6d  cated memory. Im
2c990 70 72 6f 76 65 64 20 74 68 65 20 61 72 72 61 79  proved the array
2c9a0 0a 6c 6f 6f 6b 75 70 20 61 6c 67 6f 72 69 74 68  .lookup algorith
2c9b0 6d 20 69 6e 20 73 65 74 20 63 6f 6d 70 69 6c 61  m in set compila
2c9c0 74 69 6f 6e 2e 20 28 44 4c 29 0a 0a 32 2f 35 2f  tion. (DL)..2/5/
2c9d0 39 38 20 28 63 68 61 6e 67 65 29 20 54 68 65 20  98 (change) The 
2c9e0 54 43 4c 5f 50 41 52 53 45 5f 50 41 52 54 31 20  TCL_PARSE_PART1 
2c9f0 66 6c 61 67 20 66 6f 72 20 53 65 74 2f 47 65 74  flag for Set/Get
2ca00 28 4f 62 6a 29 56 61 72 32 20 43 20 41 50 49 73  (Obj)Var2 C APIs
2ca10 20 69 73 20 6e 6f 77 0a 64 65 70 72 65 63 61 74   is now.deprecat
2ca20 65 64 20 61 6e 64 20 69 67 6e 6f 72 65 64 2e 20  ed and ignored. 
2ca30 54 68 65 20 70 61 72 74 31 20 69 73 20 61 6c 77  The part1 is alw
2ca40 61 79 73 20 70 61 72 73 65 64 20 77 68 65 6e 20  ays parsed when 
2ca50 74 68 65 20 70 61 72 74 32 20 61 72 67 75 6d 65  the part2 argume
2ca60 6e 74 0a 69 73 20 4e 55 4c 4c 2e 20 54 68 69 73  nt.is NULL. This
2ca70 20 69 73 20 74 6f 20 61 76 6f 69 64 20 61 20 70   is to avoid a p
2ca80 61 74 74 65 72 6e 20 6f 66 20 65 72 72 6f 72 73  attern of errors
2ca90 20 66 6f 72 20 65 78 74 65 6e 73 69 6f 6e 20 77   for extension w
2caa0 72 69 74 65 72 73 20 63 6f 6e 76 65 72 74 69 6e  riters convertin
2cab0 67 0a 66 72 6f 6d 20 73 74 72 69 6e 67 20 62 61  g.from string ba
2cac0 73 65 64 20 54 63 6c 5f 53 65 74 56 61 72 28 29  sed Tcl_SetVar()
2cad0 20 74 6f 20 6e 65 77 20 54 63 6c 5f 53 65 74 4f   to new Tcl_SetO
2cae0 62 6a 56 61 72 32 28 29 20 61 6e 64 20 77 68 6f  bjVar2() and who
2caf0 20 63 6f 75 6c 64 20 65 61 73 69 6c 79 0a 66 6f   could easily.fo
2cb00 72 67 65 74 20 74 6f 20 70 72 6f 76 69 64 65 20  rget to provide 
2cb10 74 68 65 20 66 6c 61 67 20 61 6e 64 20 74 68 75  the flag and thu
2cb20 73 20 67 65 74 20 63 6f 64 65 20 77 6f 72 6b 69  s get code worki
2cb30 6e 67 20 66 6f 72 20 6e 6f 72 6d 61 6c 20 76 61  ng for normal va
2cb40 72 69 61 62 6c 65 73 0a 62 75 74 20 6e 6f 74 20  riables.but not 
2cb50 66 6f 72 20 61 72 72 61 79 20 65 6c 65 6d 65 6e  for array elemen
2cb60 74 73 2e 20 54 68 65 20 70 65 72 66 6f 72 6d 61  ts. The performa
2cb70 6e 63 65 20 68 69 74 20 69 73 20 6d 69 6e 69 6d  nce hit is minim
2cb80 61 6c 2e 20 41 20 73 69 64 65 20 65 66 66 65 63  al. A side effec
2cb90 74 0a 6f 66 20 74 68 61 74 20 63 68 61 6e 67 65  t.of that change
2cba0 20 69 73 20 74 68 61 74 20 69 73 20 69 73 20 6e   is that is is n
2cbb0 6f 20 6c 6f 6e 67 65 72 20 70 6f 73 73 69 62 6c  o longer possibl
2cbc0 65 20 74 6f 20 63 72 65 61 74 65 20 73 63 61 6c  e to create scal
2cbd0 61 72 20 76 61 72 69 61 62 6c 65 73 0a 74 68 61  ar variables.tha
2cbe0 74 20 63 61 6e 27 74 20 62 65 20 61 63 63 65 73  t can't be acces
2cbf0 73 65 64 20 62 79 20 74 63 6c 20 73 63 72 69 70  sed by tcl scrip
2cc00 74 73 20 62 65 63 61 75 73 65 20 6f 66 20 74 68  ts because of th
2cc10 65 69 72 20 69 6e 76 61 6c 69 64 20 6e 61 6d 65  eir invalid name
2cc20 0a 28 65 6e 64 69 6e 67 20 77 69 74 68 20 70 61  .(ending with pa
2cc30 72 65 6e 74 68 65 73 69 73 29 2e 20 4c 69 6b 65  renthesis). Like
2cc40 77 69 73 65 20 69 74 20 69 73 20 61 6c 73 6f 20  wise it is also 
2cc50 70 61 72 73 65 64 20 61 6e 64 20 63 68 65 63 6b  parsed and check
2cc60 65 64 20 74 6f 0a 65 6e 73 75 72 65 20 74 68 61  ed to.ensure tha
2cc70 74 20 79 6f 75 20 64 6f 6e 27 74 20 63 72 65 61  t you don't crea
2cc80 74 65 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74  te array element
2cc90 73 20 6f 66 20 61 72 72 61 79 20 77 68 6f 73 65  s of array whose
2cca0 20 6e 61 6d 65 20 69 73 20 61 20 76 61 6c 69 64   name is a valid
2ccb0 0a 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 20 62  .array element b
2ccc0 65 63 61 75 73 65 20 74 68 65 79 20 77 6f 75 6c  ecause they woul
2ccd0 64 20 6e 6f 74 20 62 65 20 61 63 63 65 73 73 69  d not be accessi
2cce0 62 6c 65 20 66 72 6f 6d 20 73 63 72 69 70 74 73  ble from scripts
2ccf0 20 61 6e 79 77 61 79 2e 0a 4e 6f 74 65 3a 20 54   anyway..Note: T
2cd00 68 65 72 65 20 69 73 20 73 74 69 6c 6c 20 64 75  here is still du
2cd10 70 6c 69 63 61 74 65 20 61 72 72 61 79 20 65 6c  plicate array el
2cd20 65 6d 65 6e 74 73 20 70 61 72 73 69 6e 67 20 63  ements parsing c
2cd30 6f 64 65 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50 4f  ode. (DL).*** PO
2cd40 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
2cd50 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 2f 31  IBILITY ***..2/1
2cd60 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 53  1/98 (bug fix) S
2cd70 68 61 72 69 6e 67 20 6f 62 6a 65 63 74 73 20 62  haring objects b
2cd80 65 74 77 65 65 6e 20 69 6e 74 65 72 70 73 2c 20  etween interps, 
2cd90 73 75 63 68 20 61 73 20 62 79 20 22 69 6e 74 65  such as by "inte
2cda0 72 70 0a 65 76 61 6c 22 20 6f 72 20 22 73 65 6e  rp.eval" or "sen
2cdb0 64 22 20 63 6f 75 6c 64 20 63 61 75 73 65 20 61  d" could cause a
2cdc0 20 63 72 61 73 68 20 6c 61 74 65 72 20 77 68 65   crash later whe
2cdd0 6e 20 64 65 72 65 66 65 72 65 6e 63 69 6e 67 20  n dereferencing 
2cde0 61 6e 20 69 6e 74 65 72 70 0a 74 68 61 74 20 68  an interp.that h
2cdf0 61 64 20 62 65 65 6e 20 64 65 6c 65 74 65 64 2c  ad been deleted,
2ce00 20 67 69 76 65 6e 20 63 6f 64 65 20 73 75 63 68   given code such
2ce10 20 61 73 3a 0a 09 73 65 74 20 61 20 7b 73 65 74   as:..set a {set
2ce20 20 78 20 79 7d 0a 09 69 6e 74 65 72 70 20 63 72   x y}..interp cr
2ce30 65 61 74 65 20 66 6f 6f 0a 09 69 6e 74 65 72 70  eate foo..interp
2ce40 20 65 76 61 6c 20 66 6f 6f 20 24 61 0a 09 69 6e   eval foo $a..in
2ce50 74 65 72 70 20 64 65 6c 65 74 65 20 66 6f 6f 0a  terp delete foo.
2ce60 09 75 6e 73 65 74 20 61 0a 49 6e 74 65 72 70 20  .unset a.Interp 
2ce70 22 66 6f 6f 22 20 77 61 73 20 67 6f 6e 65 2c 20  "foo" was gone, 
2ce80 62 75 74 20 22 61 22 20 68 61 64 20 61 20 69 6e  but "a" had a in
2ce90 74 65 72 6e 61 6c 20 72 65 70 20 63 6f 6e 73 69  ternal rep consi
2cea0 73 74 69 6e 67 20 6f 66 20 62 79 74 65 63 6f 64  sting of bytecod
2ceb0 65 73 0a 63 6f 6e 74 61 69 6e 69 6e 67 20 61 20  es.containing a 
2cec0 64 61 6e 67 6c 69 6e 67 20 70 6f 69 6e 74 65 72  dangling pointer
2ced0 20 74 6f 20 22 66 6f 6f 22 2e 20 20 55 6e 73 65   to "foo".  Unse
2cee0 74 74 69 6e 67 20 22 61 22 20 77 6f 75 6c 64 20  tting "a" would 
2cef0 61 74 74 65 6d 70 74 20 74 6f 0a 72 65 74 75 72  attempt to.retur
2cf00 6e 20 72 65 73 6f 75 72 63 65 73 20 62 61 63 6b  n resources back
2cf10 20 74 6f 20 22 66 6f 6f 22 2c 20 63 61 75 73 69   to "foo", causi
2cf20 6e 67 20 61 20 63 72 61 73 68 20 61 73 20 72 61  ng a crash as ra
2cf30 6e 64 6f 6d 20 6d 65 6d 6f 72 79 20 77 61 73 0a  ndom memory was.
2cf40 61 63 63 65 73 73 65 64 2e 20 20 54 68 65 20 6c  accessed.  The l
2cf50 65 73 73 6f 6e 20 69 73 20 74 68 61 74 20 74 68  esson is that th
2cf60 61 74 20 69 66 20 61 6e 20 6f 62 6a 65 63 74 27  at if an object'
2cf70 73 20 69 6e 74 65 72 6e 61 6c 20 72 65 70 20 64  s internal rep d
2cf80 65 70 65 6e 64 73 20 6f 6e 0a 61 6e 20 69 6e 74  epends on.an int
2cf90 65 72 70 20 28 6f 72 20 61 6e 79 20 6f 74 68 65  erp (or any othe
2cfa0 72 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65  r data structure
2cfb0 29 20 69 74 20 6d 75 73 74 20 70 72 65 73 65 72  ) it must preser
2cfc0 76 65 20 74 68 61 74 20 64 61 74 61 20 69 6e 0a  ve that data in.
2cfd0 73 6f 6d 65 20 66 61 73 68 69 6f 6e 2e 20 28 43  some fashion. (C
2cfe0 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28 65 6e  CS)..2/11/98 (en
2cff0 68 61 6e 63 65 6d 65 6e 74 29 20 54 68 65 20 22  hancement) The "
2d000 69 6e 74 65 72 70 22 20 63 6f 6d 6d 61 6e 64 20  interp" command 
2d010 77 61 73 20 72 65 74 75 72 6e 69 6e 67 20 69 6e  was returning in
2d020 63 6f 6e 73 69 73 74 65 6e 74 20 65 72 72 6f 72  consistent error
2d030 0a 6d 65 73 73 61 67 65 73 20 77 68 65 6e 20 74  .messages when t
2d040 68 65 20 73 70 65 63 69 66 69 65 64 20 73 6c 61  he specified sla
2d050 76 65 20 69 6e 74 65 72 70 20 63 6f 75 6c 64 20  ve interp could 
2d060 6e 6f 74 20 62 65 20 66 6f 75 6e 64 2e 20 28 43  not be found. (C
2d070 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75  CS)..2/11/98 (bu
2d080 67 20 66 69 78 29 20 52 65 73 75 6c 74 20 63 6f  g fix) Result co
2d090 64 65 73 20 6c 69 6b 65 20 54 43 4c 5f 42 52 45  des like TCL_BRE
2d0a0 41 4b 20 61 6e 64 20 54 43 4c 5f 43 4f 4e 54 49  AK and TCL_CONTI
2d0b0 4e 55 45 20 77 65 72 65 20 6e 6f 74 0a 70 72 6f  NUE were not.pro
2d0c0 70 61 67 61 74 69 6e 67 20 74 68 72 6f 75 67 68  pagating through
2d0d0 20 74 68 65 20 6d 61 73 74 65 72 2f 73 6c 61 76   the master/slav
2d0e0 65 20 69 6e 74 65 72 70 20 62 6f 75 6e 64 61 72  e interp boundar
2d0f0 69 65 73 2c 20 73 75 63 68 20 61 73 20 22 69 6e  ies, such as "in
2d100 74 65 72 70 0a 65 76 61 6c 22 20 61 6e 64 20 22  terp.eval" and "
2d110 69 6e 74 65 72 70 20 61 6c 69 61 73 22 2e 20 20  interp alias".  
2d120 54 43 4c 5f 4f 4b 2c 20 54 43 4c 5f 45 52 52 4f  TCL_OK, TCL_ERRO
2d130 52 2c 20 61 6e 64 20 6e 6f 6e 2d 73 74 61 6e 64  R, and non-stand
2d140 61 72 64 20 63 6f 64 65 73 20 6c 69 6b 65 0a 74  ard codes like.t
2d150 65 68 20 69 6e 74 65 67 65 72 20 35 37 20 77 6f  eh integer 57 wo
2d160 72 6b 2e 20 20 54 68 65 72 65 20 69 73 20 73 74  rk.  There is st
2d170 69 6c 6c 20 61 20 71 75 65 73 74 69 6f 6e 20 61  ill a question a
2d180 73 20 74 6f 20 77 68 65 74 68 65 72 20 54 43 4c  s to whether TCL
2d190 5f 52 45 54 55 52 4e 0a 63 61 6e 2f 73 68 6f 75  _RETURN.can/shou
2d1a0 6c 64 20 70 72 6f 70 61 67 61 74 65 2e 20 28 43  ld propagate. (C
2d1b0 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75  CS)..2/11/98 (bu
2d1c0 67 20 66 69 78 29 20 54 63 6c 43 6f 6d 70 69 6c  g fix) TclCompil
2d1d0 65 53 63 72 69 70 74 28 29 20 77 61 73 20 64 65  eScript() was de
2d1e0 72 65 66 65 72 69 6e 67 20 6d 65 6d 6f 72 79 20  refering memory 
2d1f0 31 20 62 79 74 65 20 62 65 66 6f 72 65 0a 73 74  1 byte before.st
2d200 61 72 74 20 6f 66 20 74 68 65 20 73 74 72 69 6e  art of the strin
2d210 67 20 74 6f 20 63 6f 6d 70 69 6c 65 2c 20 6c 6f  g to compile, lo
2d220 6f 6b 69 6e 67 20 66 6f 72 20 27 5d 27 2e 20 28  oking for ']'. (
2d230 43 43 53 2c 44 4c 29 0a 0a 32 2f 31 31 2f 39 38  CCS,DL)..2/11/98
2d240 20 28 62 75 67 20 66 69 78 29 20 54 63 6c 5f 45   (bug fix) Tcl_E
2d250 76 61 6c 32 28 29 20 77 61 73 20 64 65 72 65 66  val2() was deref
2d260 65 72 69 6e 67 20 6d 65 6d 6f 72 79 20 31 20 62  ering memory 1 b
2d270 79 74 65 20 62 65 66 6f 72 65 20 73 74 61 72 74  yte before start
2d280 0a 6f 66 20 74 68 65 20 73 74 72 69 6e 67 20 74  .of the string t
2d290 6f 20 65 76 61 6c 2c 20 6c 6f 6f 6b 69 6e 67 20  o eval, looking 
2d2a0 66 6f 72 20 27 5d 27 2e 20 28 43 43 53 2c 44 4c  for ']'. (CCS,DL
2d2b0 29 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75 67 20  )..2/11/98 (bug 
2d2c0 66 69 78 29 20 43 6f 6d 70 69 6c 69 6e 67 20 22  fix) Compiling "
2d2d0 73 65 74 20 61 28 62 22 20 77 61 73 20 72 75 6e  set a(b" was run
2d2e0 6e 69 6e 67 20 6f 66 66 20 65 6e 64 20 6f 66 20  ning off end of 
2d2f0 73 74 72 69 6e 67 2e 20 28 43 43 53 2c 44 4c 29  string. (CCS,DL)
2d300 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75 67 20 66  ..2/11/98 (bug f
2d310 69 78 29 20 57 69 6e 64 6f 77 73 20 69 6e 69 74  ix) Windows init
2d320 69 61 6c 69 7a 61 74 69 6f 6e 20 63 6f 64 65 20  ialization code 
2d330 77 61 73 20 64 65 72 65 66 65 72 65 6e 63 69 6e  was dereferencin
2d340 67 0a 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20  g.uninitialized 
2d350 6d 65 6d 6f 72 79 20 69 66 20 54 43 4c 5f 4c 49  memory if TCL_LI
2d360 42 52 41 52 59 20 65 6e 76 69 72 6f 6e 6d 65 6e  BRARY environmen
2d370 74 20 64 69 64 6e 27 74 20 65 78 69 73 74 2e 20  t didn't exist. 
2d380 28 43 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28  (CCS)..2/11/98 (
2d390 62 75 67 20 66 69 78 29 20 57 69 6e 64 6f 77 73  bug fix) Windows
2d3a0 20 22 72 65 67 69 73 74 72 79 22 20 63 6f 6d 6d   "registry" comm
2d3b0 61 6e 64 20 77 61 73 20 64 65 72 65 66 65 72 65  and was derefere
2d3c0 6e 63 69 6e 67 0a 75 6e 69 6e 69 74 69 61 6c 69  ncing.uninitiali
2d3d0 7a 65 64 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20  zed memory when 
2d3e0 63 6f 6e 73 74 72 75 63 74 69 6e 67 20 74 68 65  constructing the
2d3f0 20 24 65 72 72 6f 72 43 6f 64 65 20 66 6f 72 20   $errorCode for 
2d400 61 20 66 61 69 6c 65 64 0a 72 65 67 69 73 74 72  a failed.registr
2d410 79 20 63 61 6c 6c 2e 20 28 43 43 53 29 0a 0a 32  y call. (CCS)..2
2d420 2f 31 31 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d  /11/98 (enhancem
2d430 65 6e 74 29 20 45 6c 69 6d 69 6e 61 74 65 20 74  ent) Eliminate t
2d440 68 65 20 54 43 4c 5f 55 53 45 5f 54 49 4d 45 5a  he TCL_USE_TIMEZ
2d450 4f 4e 45 5f 56 41 52 20 64 65 66 69 6e 69 74 69  ONE_VAR definiti
2d460 6f 6e 20 66 72 6f 6d 0a 63 6f 6e 66 69 67 75 72  on from.configur
2d470 65 2e 69 6e 2c 20 62 65 63 61 75 73 65 20 69 74  e.in, because it
2d480 20 77 61 73 20 74 68 65 20 73 61 6d 65 20 69 6e   was the same in
2d490 66 6f 72 6d 61 74 69 6f 6e 20 61 73 20 74 68 65  formation as the
2d4a0 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 69 6e   already existin
2d4b0 67 0a 48 41 56 45 5f 54 4d 5f 5a 4f 4e 45 20 64  g.HAVE_TM_ZONE d
2d4c0 65 66 69 6e 69 74 69 6f 6e 2e 20 20 54 68 65 20  efinition.  The 
2d4d0 6c 61 63 6b 20 6f 66 20 48 41 56 45 5f 54 4d 5f  lack of HAVE_TM_
2d4e0 5a 4f 4e 45 20 69 73 20 75 73 65 64 20 74 6f 20  ZONE is used to 
2d4f0 77 6f 72 6b 20 61 72 6f 75 6e 64 20 61 0a 53 6f  work around a.So
2d500 6c 61 72 69 73 20 61 6e 64 20 57 69 6e 64 6f 77  laris and Window
2d510 73 20 62 75 67 20 77 68 65 72 65 20 22 63 6c 6f  s bug where "clo
2d520 63 6b 20 66 6f 72 6d 61 74 20 5b 63 6c 6f 63 6b  ck format [clock
2d530 20 73 65 63 5d 20 2d 66 6f 72 6d 61 74 20 25 5a   sec] -format %Z
2d540 20 2d 67 6d 74 20 31 22 0a 70 72 6f 64 75 63 65   -gmt 1".produce
2d550 73 20 74 68 65 20 6c 6f 63 61 6c 20 74 69 6d 65  s the local time
2d560 7a 6f 6e 65 20 73 74 72 69 6e 67 20 69 6e 73 74  zone string inst
2d570 65 61 64 20 6f 66 20 22 47 4d 54 22 2e 20 28 43  ead of "GMT". (C
2d580 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75  CS)..2/11/98 (bu
2d590 67 20 66 69 78 29 20 4d 65 6d 6c 65 61 6b 73 20  g fix) Memleaks 
2d5a0 61 6e 64 20 64 65 72 65 66 65 72 65 6e 63 69 6e  and dereferencin
2d5b0 67 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c 69 7a  g of uninitializ
2d5c0 65 64 20 6d 65 6d 6f 72 79 20 69 6e 0a 72 65 67  ed memory in.reg
2d5d0 65 78 70 20 69 66 20 61 6e 20 65 72 72 6f 72 20  exp if an error 
2d5e0 6f 63 63 75 72 72 65 64 20 77 68 69 6c 65 20 63  occurred while c
2d5f0 6f 6d 70 69 6c 69 6e 67 20 61 20 72 65 67 75 6c  ompiling a regul
2d600 61 72 20 65 78 70 72 65 73 73 69 6f 6e 2e 20 28  ar expression. (
2d610 43 43 53 29 2e 0a 0a 32 2f 31 38 2f 39 38 20 28  CCS)...2/18/98 (
2d620 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
2d630 65 64 20 6d 75 74 65 78 65 73 20 61 6e 64 20 74  ed mutexes and t
2d640 68 72 65 61 64 20 6c 6f 63 61 6c 20 73 74 6f 72  hread local stor
2d650 61 67 65 20 69 6e 20 6f 72 64 65 72 0a 74 6f 20  age in order.to 
2d660 6d 61 6b 65 20 54 63 6c 20 74 68 72 65 61 64 20  make Tcl thread 
2d670 73 61 66 65 2e 20 20 46 6f 72 20 74 65 73 74 69  safe.  For testi
2d680 6e 67 20 70 75 72 70 6f 73 65 73 2c 20 74 68 65  ng purposes, the
2d690 72 65 20 69 73 20 61 20 74 65 73 74 74 68 72 65  re is a testthre
2d6a0 61 64 0a 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20  ad.command that 
2d6b0 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 74 68  creates a new th
2d6c0 72 65 61 64 20 61 6e 64 20 61 6e 20 69 6e 74 65  read and an inte
2d6d0 72 70 72 65 74 65 72 20 69 6e 73 69 64 65 20 69  rpreter inside i
2d6e0 74 2e 20 20 53 65 65 0a 74 68 72 65 61 64 2e 74  t.  See.thread.t
2d6f0 65 73 74 20 66 6f 72 20 65 78 61 6d 70 6c 65 73  est for examples
2d700 2c 20 62 75 74 20 74 68 69 73 20 73 63 72 69 70  , but this scrip
2d710 74 2d 6c 65 76 65 6c 20 69 6e 74 65 72 66 61 63  t-level interfac
2d720 65 20 69 73 20 6e 6f 74 20 66 69 78 65 64 2e 0a  e is not fixed..
2d730 45 61 63 68 20 74 68 72 65 61 64 20 68 61 73 20  Each thread has 
2d740 69 74 73 20 6f 77 6e 20 6e 6f 74 69 66 69 65 72  its own notifier
2d750 20 69 6e 73 74 61 6e 63 65 20 74 6f 20 6d 61 6e   instance to man
2d760 61 67 65 20 69 74 73 20 6f 77 6e 20 65 76 65 6e  age its own even
2d770 74 73 2c 0a 61 6e 64 20 74 68 72 65 61 64 73 20  ts,.and threads 
2d780 63 61 6e 20 70 6f 73 74 20 6d 65 73 73 61 67 65  can post message
2d790 73 20 74 6f 20 65 61 63 68 20 6f 74 68 65 72 27  s to each other'
2d7a0 73 20 6d 65 73 73 61 67 65 20 71 75 65 75 65 2e  s message queue.
2d7b0 0a 54 68 69 73 20 75 73 65 73 20 70 74 68 72 65  .This uses pthre
2d7c0 61 64 73 20 6f 6e 20 55 4e 49 58 2c 20 61 6e 64  ads on UNIX, and
2d7d0 20 6e 61 74 69 76 65 20 74 68 72 65 61 64 20 73   native thread s
2d7e0 75 70 70 6f 72 74 20 6f 6e 20 6f 74 68 65 72 20  upport on other 
2d7f0 70 6c 61 74 66 6f 72 6d 73 2e 0a 59 6f 75 20 65  platforms..You e
2d800 6e 61 62 6c 65 20 74 68 69 73 20 62 79 20 63 6f  nable this by co
2d810 6e 66 69 67 75 72 69 6e 67 20 77 69 74 68 20 2d  nfiguring with -
2d820 2d 65 6e 61 62 6c 65 2d 74 68 72 65 61 64 73 2e  -enable-threads.
2d830 20 20 4e 6f 74 65 20 74 68 61 74 20 61 74 0a 74    Note that at.t
2d840 68 69 73 20 74 69 6d 65 20 2a 54 6b 2a 20 69 73  his time *Tk* is
2d850 20 73 74 69 6c 6c 20 6e 6f 74 20 74 68 72 65 61   still not threa
2d860 64 20 73 61 66 65 2e 20 53 70 65 63 69 61 6c 20  d safe. Special 
2d870 74 68 61 6e 6b 73 20 74 6f 0a 52 69 63 68 61 72  thanks to.Richar
2d880 64 20 48 69 70 70 3a 20 68 69 73 20 65 61 72 6c  d Hipp: his earl
2d890 69 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ier implementati
2d8a0 6f 6e 20 69 6e 73 70 69 72 65 64 20 74 68 69 73  on inspired this
2d8b0 20 77 6f 72 6b 2e 20 28 42 57 2c 20 53 53 2c 20   work. (BW, SS, 
2d8c0 4a 49 29 0a 0a 32 2f 31 38 2f 39 38 20 28 68 69  JI)..2/18/98 (hi
2d8d0 64 64 65 6e 20 66 65 61 74 75 72 65 20 63 68 61  dden feature cha
2d8e0 6e 67 65 29 20 54 68 65 20 77 61 79 20 74 68 65  nge) The way the
2d8f0 20 65 6e 76 28 29 20 61 72 72 61 79 20 69 73 20   env() array is 
2d900 73 68 61 72 65 64 20 61 6d 6f 6e 67 0a 69 6e 74  shared among.int
2d910 65 72 70 72 65 74 65 72 73 20 63 68 61 6e 67 65  erpreters change
2d920 64 2e 20 20 55 70 64 61 74 65 73 20 74 6f 20 65  d.  Updates to e
2d930 6e 76 20 75 73 65 64 20 74 6f 20 74 72 69 67 67  nv used to trigg
2d940 65 72 20 77 72 69 74 65 20 74 72 61 63 65 73 20  er write traces 
2d950 69 6e 0a 6f 74 68 65 72 20 69 6e 74 65 72 70 72  in.other interpr
2d960 65 74 65 72 73 2e 20 20 54 68 69 73 20 75 6e 64  eters.  This und
2d970 6f 63 75 6d 65 6e 74 65 64 20 66 65 61 74 75 72  ocumented featur
2d980 65 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 69  e is no longer i
2d990 6d 70 6c 65 6d 65 6e 74 65 64 2e 0a 49 6e 73 74  mplemented..Inst
2d9a0 65 61 64 2c 20 76 61 72 69 61 62 6c 65 20 74 72  ead, variable tr
2d9b0 61 63 69 6e 67 20 69 73 20 75 73 65 64 20 74 6f  acing is used to
2d9c0 20 6b 65 65 70 20 74 68 65 20 43 2d 6c 65 76 65   keep the C-leve
2d9d0 6c 20 65 6e 76 69 72 6f 6e 20 61 72 72 61 79 20  l environ array 
2d9e0 69 6e 20 73 79 6e 63 0a 77 69 74 68 20 74 68 65  in sync.with the
2d9f0 20 54 63 6c 2d 6c 65 76 65 6c 20 65 6e 76 20 61   Tcl-level env a
2da00 72 72 61 79 2e 20 54 68 69 73 20 72 65 71 75 69  rray. This requi
2da10 72 65 64 20 61 64 64 69 6e 67 20 54 43 4c 5f 54  red adding TCL_T
2da20 52 41 43 45 5f 41 52 52 41 59 20 73 75 70 70 6f  RACE_ARRAY suppo
2da30 72 74 0a 74 6f 20 54 63 6c 5f 54 72 61 63 65 56  rt.to Tcl_TraceV
2da40 61 72 32 20 73 6f 20 74 68 61 74 20 61 72 72 61  ar2 so that arra
2da50 79 20 6e 61 6d 65 73 20 77 6f 72 6b 73 20 70 72  y names works pr
2da60 6f 70 65 72 6c 79 2e 20 28 42 57 29 0a 2a 2a 2a  operly. (BW).***
2da70 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
2da80 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
2da90 32 2f 31 38 2f 39 38 20 28 65 6e 68 61 6e 63 65  2/18/98 (enhance
2daa0 6d 65 6e 74 29 20 43 6f 6e 64 69 74 69 6f 6e 61  ment) Conditiona
2dab0 6c 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 66 6f  l compilation fo
2dac0 72 20 75 6e 69 78 20 73 79 73 74 65 6d 73 20 28  r unix systems (
2dad0 65 2e 67 2e 2c 0a 49 52 49 58 2c 20 53 43 4f 29  e.g.,.IRIX, SCO)
2dae0 20 74 68 61 74 20 75 73 65 20 66 5f 62 73 69 7a   that use f_bsiz
2daf0 65 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74 5f  e instead of st_
2db00 62 6c 6b 73 69 7a 65 20 74 6f 20 64 65 74 65 72  blksize to deter
2db10 6d 69 6e 65 20 64 69 73 6b 20 62 6c 6f 63 6b 0a  mine disk block.
2db20 73 69 7a 65 2e 20 28 43 43 53 29 0a 0a 32 2f 32  size. (CCS)..2/2
2db30 33 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 46  3/98 (bug fix) F
2db40 69 78 65 64 20 74 68 65 20 65 6d 75 6c 61 74 69  ixed the emulati
2db50 6f 6e 20 6f 66 20 70 6f 6c 6c 69 6e 67 20 73 65  on of polling se
2db60 6c 65 63 74 73 20 69 6e 20 74 68 65 20 74 68 72  lects in the thr
2db70 65 61 64 65 64 0a 76 65 72 73 69 6f 6e 20 6f 66  eaded.version of
2db80 20 74 68 65 20 55 6e 69 78 20 6e 6f 74 69 66 69   the Unix notifi
2db90 65 72 2e 20 20 54 68 65 20 62 75 67 20 77 61 73  er.  The bug was
2dba0 20 73 68 6f 77 69 6e 67 20 75 70 20 6f 6e 20 61   showing up on a
2dbb0 20 6d 75 6c 74 69 70 72 6f 63 65 73 73 6f 72 0a   multiprocessor.
2dbc0 61 73 20 73 74 61 72 76 61 74 69 6f 6e 20 6f 66  as starvation of
2dbd0 20 74 68 65 20 6e 6f 74 69 66 69 65 72 20 74 68   the notifier th
2dbe0 72 65 61 64 2e 20 28 42 57 29 0a 0a 2d 2d 2d 2d  read. (BW)..----
2dbf0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
2dc00 6c 65 61 73 65 64 20 38 2e 31 61 32 2c 20 46 65  leased 8.1a2, Fe
2dc10 62 20 32 33 20 31 39 39 38 20 2d 2d 2d 2d 2d 2d  b 23 1998 ------
2dc20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2dc30 2d 0a 0a 39 2f 32 32 2f 39 38 20 28 62 75 67 20  -..9/22/98 (bug 
2dc40 66 69 78 29 20 43 68 61 6e 67 65 64 20 74 68 65  fix) Changed the
2dc50 20 76 61 6c 75 65 20 6f 66 20 54 43 4c 5f 54 52   value of TCL_TR
2dc60 41 43 45 5f 41 52 52 41 59 20 73 6f 20 69 74 20  ACE_ARRAY so it 
2dc70 6e 6f 20 6c 6f 6e 67 65 72 0a 63 6f 6e 66 6c 69  no longer.confli
2dc80 63 74 73 20 77 69 74 68 20 74 68 65 20 64 65 70  cts with the dep
2dc90 72 65 63 61 74 65 64 20 54 43 4c 5f 50 41 52 53  recated TCL_PARS
2dca0 45 5f 50 41 52 54 31 20 66 6c 61 67 2e 20 20 54  E_PART1 flag.  T
2dcb0 68 69 73 20 73 68 6f 75 6c 64 0a 69 6d 70 72 6f  his should.impro
2dcc0 76 65 20 70 6f 72 74 61 62 69 6c 69 74 79 20 6f  ve portability o
2dcd0 66 20 43 20 63 6f 64 65 2e 20 28 73 74 61 6e 74  f C code. (stant
2dce0 6f 6e 29 0a 0a 31 30 2f 36 2f 39 38 20 28 62 75  on)..10/6/98 (bu
2dcf0 67 20 66 69 78 29 20 54 68 65 20 63 6f 6d 70 69  g fix) The compi
2dd00 6c 65 20 70 72 6f 63 65 64 75 72 65 20 66 6f 72  le procedure for
2dd10 20 22 69 66 22 20 69 6e 63 6f 72 72 65 63 74 6c   "if" incorrectl
2dd20 79 20 61 74 74 65 6d 70 74 65 64 0a 74 6f 20 6d  y attempted.to m
2dd30 61 74 63 68 20 61 67 61 69 6e 73 74 20 74 68 65  atch against the
2dd40 20 6c 69 74 65 72 61 6c 20 73 74 72 69 6e 67 20   literal string 
2dd50 22 69 66 22 2c 20 72 65 73 75 6c 74 69 6e 67 20  "if", resulting 
2dd60 69 6e 20 61 20 73 74 61 63 6b 0a 6f 76 65 72 66  in a stack.overf
2dd70 6c 6f 77 20 77 68 65 6e 20 22 3a 3a 69 66 22 20  low when "::if" 
2dd80 77 61 73 20 63 6f 6d 70 69 6c 65 64 2e 20 20 49  was compiled.  I
2dd90 74 20 61 6c 73 6f 20 77 6f 75 6c 64 20 69 6e 63  t also would inc
2dda0 6f 72 72 65 63 74 6c 79 20 61 63 63 65 70 74 0a  orrectly accept.
2ddb0 22 69 66 22 20 69 6e 73 74 65 61 64 20 6f 66 20  "if" instead of 
2ddc0 22 65 6c 73 69 66 22 20 69 6e 20 6c 61 74 65 72  "elsif" in later
2ddd0 20 63 6c 61 75 73 65 73 2e 20 20 28 73 74 61 6e   clauses.  (stan
2dde0 74 6f 6e 29 0a 0a 31 30 2f 31 35 2f 39 38 20 28  ton)..10/15/98 (
2ddf0 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
2de00 65 64 20 61 20 22 74 6f 74 69 74 6c 65 22 20 73  ed a "totitle" s
2de10 75 62 63 6f 6d 6d 61 6e 64 20 74 6f 20 74 68 65  ubcommand to the
2de20 20 22 73 74 72 69 6e 67 22 0a 63 6f 6d 6d 61 6e   "string".comman
2de30 64 20 74 6f 20 63 6f 6e 76 65 72 74 20 73 74 72  d to convert str
2de40 69 6e 67 73 20 74 6f 20 63 61 70 69 74 61 6c 69  ings to capitali
2de50 7a 65 20 74 68 65 20 66 69 72 73 74 20 63 68 61  ze the first cha
2de60 72 61 63 74 65 72 20 6f 66 20 61 20 73 74 72 69  racter of a stri
2de70 6e 67 0a 61 6e 64 20 6c 6f 77 65 72 63 61 73 65  ng.and lowercase
2de80 20 61 6c 6c 20 6f 66 20 74 68 65 20 6f 74 68 65   all of the othe
2de90 72 20 63 68 61 72 61 63 74 65 72 73 2e 20 28 73  r characters. (s
2dea0 74 61 6e 74 6f 6e 29 0a 0a 31 30 2f 31 35 2f 39  tanton)..10/15/9
2deb0 38 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e  8 (bug fix) Chan
2dec0 67 65 64 20 72 65 67 65 78 70 20 61 6e 64 20 73  ged regexp and s
2ded0 74 72 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 74  tring commands t
2dee0 6f 20 70 72 6f 70 65 72 6c 79 0a 68 61 6e 64 6c  o properly.handl
2def0 65 20 63 61 73 65 20 66 6f 6c 64 69 6e 67 20 61  e case folding a
2df00 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20  ccording to the 
2df10 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65  Unicode characte
2df20 72 0a 74 61 62 6c 65 73 2e 20 28 73 74 61 6e 74  r.tables. (stant
2df30 6f 6e 29 0a 0a 31 30 2f 32 31 2f 39 38 20 28 6e  on)..10/21/98 (n
2df40 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
2df50 64 20 61 6e 20 22 65 6e 63 6f 64 69 6e 67 22 20  d an "encoding" 
2df60 63 6f 6d 6d 61 6e 64 20 74 6f 20 66 61 63 69 6c  command to facil
2df70 69 74 61 74 65 0a 74 72 61 6e 73 6c 61 74 69 6f  itate.translatio
2df80 6e 73 20 6f 66 20 73 74 72 69 6e 67 73 20 62 65  ns of strings be
2df90 74 77 65 65 6e 20 64 69 66 66 65 72 65 6e 74 20  tween different 
2dfa0 63 68 61 72 61 63 74 65 72 20 65 6e 63 6f 64 69  character encodi
2dfb0 6e 67 73 2e 20 20 53 65 65 0a 74 68 65 20 65 6e  ngs.  See.the en
2dfc0 63 6f 64 69 6e 67 2e 6e 20 6d 61 6e 75 61 6c 20  coding.n manual 
2dfd0 65 6e 74 72 79 20 66 6f 72 20 6d 6f 72 65 20 64  entry for more d
2dfe0 65 74 61 69 6c 73 2e 20 28 73 74 61 6e 74 6f 6e  etails. (stanton
2dff0 29 0a 0a 31 31 2f 33 2f 39 38 20 28 62 75 67 20  )..11/3/98 (bug 
2e000 66 69 78 29 20 54 68 65 20 72 65 67 75 6c 61 72  fix) The regular
2e010 20 65 78 70 72 65 73 73 69 6f 6e 20 63 68 61 72   expression char
2e020 61 63 74 65 72 20 63 6c 61 73 73 69 66 69 63 61  acter classifica
2e030 74 69 6f 6e 0a 73 79 6e 74 61 78 20 6e 6f 77 20  tion.syntax now 
2e040 69 6e 63 6c 75 64 65 73 20 55 6e 69 63 6f 64 65  includes Unicode
2e050 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 74   characters in t
2e060 68 65 20 73 75 70 70 6f 72 74 65 64 0a 63 6c 61  he supported.cla
2e070 73 73 65 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  sses. (stanton).
2e080 0a 31 31 2f 36 2f 39 38 20 28 62 75 67 20 66 69  .11/6/98 (bug fi
2e090 78 29 20 56 61 72 69 61 62 6c 65 20 74 72 61 63  x) Variable trac
2e0a0 65 73 20 77 65 72 65 20 63 61 75 73 69 6e 67 20  es were causing 
2e0b0 63 72 61 73 68 65 73 20 77 68 65 6e 20 75 70 76  crashes when upv
2e0c0 61 72 0a 76 61 72 69 61 62 6c 65 73 20 77 65 6e  ar.variables wen
2e0d0 74 20 6f 75 74 20 6f 66 20 73 63 6f 70 65 2e 20  t out of scope. 
2e0e0 5b 42 75 67 3a 20 37 39 36 5d 20 28 73 74 61 6e  [Bug: 796] (stan
2e0f0 74 6f 6e 29 0a 0a 31 31 2f 39 2f 39 38 20 28 62  ton)..11/9/98 (b
2e100 75 67 20 66 69 78 29 20 22 66 6f 72 6d 61 74 22  ug fix) "format"
2e110 20 6e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 68   now correctly h
2e120 61 6e 64 6c 65 73 20 6d 75 6c 74 69 62 79 74 65  andles multibyte
2e130 20 63 68 61 72 61 63 74 65 72 73 0a 69 6e 20 25   characters.in %
2e140 73 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67 73  s format strings
2e150 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f  . (stanton)..11/
2e160 31 30 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75  10/98 (new featu
2e170 72 65 29 20 22 72 65 67 65 78 70 22 20 6e 6f 77  re) "regexp" now
2e180 20 61 63 63 65 70 74 73 20 74 68 72 65 65 20 6e   accepts three n
2e190 65 77 20 73 77 69 74 63 68 65 73 0a 28 22 2d 6c  ew switches.("-l
2e1a0 69 6e 65 22 2c 20 22 2d 6c 69 6e 65 61 6e 63 68  ine", "-lineanch
2e1b0 6f 72 22 2c 20 61 6e 64 20 22 2d 6c 69 6e 65 73  or", and "-lines
2e1c0 74 6f 70 22 29 20 74 68 61 74 20 63 6f 6e 74 72  top") that contr
2e1d0 6f 6c 20 68 6f 77 20 72 65 67 75 6c 61 72 0a 65  ol how regular.e
2e1e0 78 70 72 65 73 73 69 6f 6e 73 20 74 72 65 61 74  xpressions treat
2e1f0 20 6c 69 6e 65 20 62 72 65 61 6b 73 2e 20 53 65   line breaks. Se
2e200 65 20 74 68 65 20 72 65 67 65 78 70 20 6d 61 6e  e the regexp man
2e210 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 6d 6f  ual entry for mo
2e220 72 65 0a 64 65 74 61 69 6c 73 2e 20 28 73 74 61  re.details. (sta
2e230 6e 74 6f 6e 29 0a 0a 31 31 2f 31 37 2f 39 38 20  nton)..11/17/98 
2e240 28 62 75 67 20 66 69 78 29 20 22 73 63 61 6e 22  (bug fix) "scan"
2e250 20 6e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 68   now correctly h
2e260 61 6e 64 6c 65 73 20 55 6e 69 63 6f 64 65 0a 63  andles Unicode.c
2e270 68 61 72 61 63 74 65 72 73 2e 20 28 73 74 61 6e  haracters. (stan
2e280 74 6f 6e 29 0a 0a 31 31 2f 31 37 2f 39 38 20 28  ton)..11/17/98 (
2e290 6e 65 77 20 66 65 61 74 75 72 65 29 20 22 73 63  new feature) "sc
2e2a0 61 6e 22 20 6e 6f 77 20 73 75 70 70 6f 72 74 73  an" now supports
2e2b0 20 58 50 47 33 20 70 6f 73 69 74 69 6f 6e 20 73   XPG3 position s
2e2c0 70 65 63 69 66 69 65 72 73 0a 61 6e 64 20 74 68  pecifiers.and th
2e2d0 65 20 22 25 6e 22 20 63 6f 6e 76 65 72 73 69 6f  e "%n" conversio
2e2e0 6e 20 63 68 61 72 61 63 74 65 72 2e 20 20 53 65  n character.  Se
2e2f0 65 20 74 68 65 20 22 73 63 61 6e 22 20 6d 61 6e  e the "scan" man
2e300 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 0a 6d 6f  ual entry for.mo
2e310 72 65 20 64 65 74 61 69 6c 73 2e 20 28 73 74 61  re details. (sta
2e320 6e 74 6f 6e 29 0a 0a 31 31 2f 31 37 2f 39 38 20  nton)..11/17/98 
2e330 28 62 75 67 20 66 69 78 29 20 54 68 65 20 54 63  (bug fix) The Tc
2e340 6c 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74  l memory allocat
2e350 6f 72 20 6e 6f 77 20 72 65 74 75 72 6e 73 20 38  or now returns 8
2e360 2d 62 79 74 65 20 61 6c 69 67 6e 65 64 0a 63 68  -byte aligned.ch
2e370 75 6e 6b 73 20 6f 66 20 6d 65 6d 6f 72 79 20 77  unks of memory w
2e380 68 69 63 68 20 69 6d 70 72 6f 76 65 73 20 70 65  hich improves pe
2e390 72 66 6f 72 6d 61 6e 63 65 20 6f 6e 20 57 69 6e  rformance on Win
2e3a0 64 6f 77 73 20 61 6e 64 20 61 76 6f 69 64 73 0a  dows and avoids.
2e3b0 63 72 61 73 68 65 73 20 6f 6e 20 6f 74 68 65 72  crashes on other
2e3c0 20 70 6c 61 74 66 6f 72 6d 73 2e 20 5b 42 75 67   platforms. [Bug
2e3d0 3a 20 38 33 34 5d 20 28 73 74 61 6e 74 6f 6e 29  : 834] (stanton)
2e3e0 0a 0a 31 31 2f 32 33 2f 39 38 20 28 62 75 67 20  ..11/23/98 (bug 
2e3f0 66 69 78 29 20 41 70 70 6c 69 65 64 20 76 61 72  fix) Applied var
2e400 69 6f 75 73 20 72 65 67 75 6c 61 72 20 65 78 70  ious regular exp
2e410 72 65 73 73 69 6f 6e 20 70 65 72 66 6f 72 6d 61  ression performa
2e420 6e 63 65 20 62 75 67 0a 66 69 78 65 73 20 73 75  nce bug.fixes su
2e430 70 70 6c 69 65 64 20 62 79 20 48 65 6e 72 79 20  pplied by Henry 
2e440 53 70 65 6e 63 65 72 2e 20 28 73 74 61 6e 74 6f  Spencer. (stanto
2e450 6e 29 0a 0a 31 31 2f 33 30 2f 39 38 20 28 62 75  n)..11/30/98 (bu
2e460 67 20 66 69 78 29 20 46 69 78 65 64 20 76 61 72  g fix) Fixed var
2e470 69 6f 75 73 20 74 68 72 65 61 64 20 72 65 6c 61  ious thread rela
2e480 74 65 64 20 72 61 63 65 20 63 6f 6e 64 69 74 69  ted race conditi
2e490 6f 6e 73 2e 20 5b 42 75 67 3a 0a 38 38 30 20 26  ons. [Bug:.880 &
2e4a0 20 36 30 37 5d 20 28 73 74 61 6e 74 6f 6e 29 0a   607] (stanton).
2e4b0 0a 31 31 2f 33 30 2f 39 38 20 28 62 75 67 20 66  .11/30/98 (bug f
2e4c0 69 78 29 20 46 69 78 65 64 20 61 20 6e 75 6d 62  ix) Fixed a numb
2e4d0 65 72 20 6f 66 20 6d 65 6d 6f 72 79 20 6f 76 65  er of memory ove
2e4e0 72 66 6c 6f 77 20 61 6e 64 20 6c 65 61 6b 0a 62  rflow and leak.b
2e4f0 75 67 73 2e 20 5b 42 75 67 3a 20 35 38 34 5d 20  ugs. [Bug: 584] 
2e500 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 32 2f 31 2f  (stanton)..12/1/
2e510 39 38 20 28 6e 65 77 20 66 65 61 75 72 65 29 20  98 (new feaure) 
2e520 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f  Added support fo
2e530 72 20 4b 6f 72 65 61 6e 20 65 6e 63 6f 64 69 6e  r Korean encodin
2e540 67 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  gs. (stanton)..1
2e550 32 2f 31 2f 39 38 20 28 66 65 61 74 75 72 65 20  2/1/98 (feature 
2e560 63 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20  change) Changed 
2e570 74 68 65 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 76  the Tcl_EvalObjv
2e580 20 69 6e 74 65 72 66 61 63 65 20 74 6f 20 72 65   interface to re
2e590 6d 6f 76 65 0a 74 68 65 20 73 74 72 69 6e 67 20  move.the string 
2e5a0 61 6e 64 20 6c 65 6e 67 74 68 20 61 72 67 75 6d  and length argum
2e5b0 65 6e 74 73 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  ents..*** POTENT
2e5c0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2e5d0 49 54 59 20 77 69 74 68 20 70 72 65 76 69 6f 75  ITY with previou
2e5e0 73 20 61 6c 70 68 61 20 72 65 6c 65 61 73 65 73  s alpha releases
2e5f0 20 2a 2a 2a 0a 0a 31 32 2f 32 2f 39 38 20 28 62   ***..12/2/98 (b
2e600 75 67 20 66 69 78 29 20 46 69 78 65 64 20 76 61  ug fix) Fixed va
2e610 72 69 6f 75 73 20 62 75 67 73 20 72 65 6c 61 74  rious bugs relat
2e620 65 64 20 74 6f 20 6c 69 6e 65 20 66 65 65 64 0a  ed to line feed.
2e630 74 72 61 6e 73 6c 61 74 69 6f 6e 2e 20 5b 42 75  translation. [Bu
2e640 67 3a 20 38 38 37 5d 20 28 73 74 61 6e 74 6f 6e  g: 887] (stanton
2e650 29 0a 0a 31 32 2f 34 2f 39 38 20 28 6e 65 77 20  )..12/4/98 (new 
2e660 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 61  feature) Added a
2e670 20 6d 65 73 73 61 67 65 20 63 61 74 61 6c 6f 67   message catalog
2e680 20 66 61 63 69 6c 69 74 79 20 74 6f 20 68 65 6c   facility to hel
2e690 70 20 77 69 74 68 0a 6c 6f 63 61 6c 69 7a 69 6e  p with.localizin
2e6a0 67 20 54 63 6c 20 73 63 72 69 70 74 73 2e 20 20  g Tcl scripts.  
2e6b0 54 68 61 6e 6b 73 20 74 6f 20 4d 61 72 6b 20 48  Thanks to Mark H
2e6c0 61 72 72 69 73 6f 6e 20 66 6f 72 20 63 6f 6e 74  arrison for cont
2e6d0 72 69 62 75 74 69 6e 67 20 74 68 65 0a 69 6e 69  ributing the.ini
2e6e0 74 69 61 6c 20 69 6d 70 6c 65 6d 65 6e 74 61 74  tial implementat
2e6f0 69 6f 6e 20 6f 66 20 74 68 65 20 22 6d 73 67 63  ion of the "msgc
2e700 61 74 22 20 70 61 63 6b 61 67 65 2e 20 28 73 74  at" package. (st
2e710 61 6e 74 6f 6e 29 0a 0a 31 32 2f 37 2f 39 38 20  anton)..12/7/98 
2e720 28 62 75 67 20 66 69 78 29 20 54 68 65 20 6d 65  (bug fix) The me
2e730 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 6f 72 20 77  mory allocator w
2e740 61 73 20 66 61 69 6c 69 6e 67 20 74 6f 20 75 70  as failing to up
2e750 64 61 74 65 20 74 68 65 0a 62 6c 6f 63 6b 20 6c  date the.block l
2e760 69 73 74 20 66 6f 72 20 6c 61 72 67 65 20 6d 65  ist for large me
2e770 6d 6f 72 79 20 62 6c 6f 63 6b 73 20 74 68 61 74  mory blocks that
2e780 20 77 65 72 65 20 72 65 61 6c 6c 6f 63 61 74 65   were reallocate
2e790 64 20 69 6e 74 6f 20 61 0a 64 69 66 66 65 72 65  d into a.differe
2e7a0 6e 74 20 61 64 64 72 65 73 73 2e 20 5b 42 75 67  nt address. [Bug
2e7b0 3a 20 39 33 33 5d 20 28 73 74 61 6e 74 6f 6e 29  : 933] (stanton)
2e7c0 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
2e7d0 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 31  --- Released 8.1
2e7e0 62 31 2c 20 44 65 63 20 31 30 20 31 39 39 38 20  b1, Dec 10 1998 
2e7f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e800 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 32 2f 32 32 2f 39  -------..12/22/9
2e810 38 20 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 69  8 (performance i
2e820 6d 70 72 6f 76 65 6d 65 6e 74 29 20 49 6d 70 72  mprovement) Impr
2e830 6f 76 65 64 20 74 68 65 20 2d 63 6f 6d 6d 61 6e  oved the -comman
2e840 64 20 6f 70 74 69 6f 6e 20 6f 66 20 74 68 65 0a  d option of the.
2e850 6c 73 6f 72 74 20 63 6f 6d 6d 61 6e 64 20 74 6f  lsort command to
2e860 20 62 65 74 74 65 72 20 75 73 65 20 74 68 65 20   better use the 
2e870 6f 62 6a 65 63 74 20 73 79 73 74 65 6d 20 66 6f  object system fo
2e880 72 20 69 6d 70 72 6f 76 65 64 0a 70 65 72 66 6f  r improved.perfo
2e890 72 6d 61 6e 63 65 20 28 61 62 6f 75 74 20 35 78  rmance (about 5x
2e8a0 20 73 70 65 65 64 20 75 70 29 2e 20 20 54 68 61   speed up).  Tha
2e8b0 6e 6b 73 20 74 6f 20 53 79 64 20 50 6f 6c 6b 20  nks to Syd Polk 
2e8c0 66 6f 72 20 73 75 70 70 6c 69 6e 67 20 74 68 65  for suppling the
2e8d0 0a 70 61 74 63 68 2e 20 5b 52 46 45 3a 20 37 32  .patch. [RFE: 72
2e8e0 36 5d 20 28 72 6a 6f 68 6e 73 6f 6e 29 0a 0a 32  6] (rjohnson)..2
2e8f0 2f 31 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /10/99 (bug fix)
2e900 20 52 65 73 74 6f 72 65 64 20 74 68 65 20 54 63   Restored the Tc
2e910 6c 5f 4f 62 6a 53 65 74 56 61 72 32 2f 54 63 6c  l_ObjSetVar2/Tcl
2e920 5f 4f 62 6a 47 65 74 56 61 72 32 0a 69 6e 74 65  _ObjGetVar2.inte
2e930 72 66 61 63 65 73 20 66 72 6f 6d 20 38 2e 30 20  rfaces from 8.0 
2e940 61 6e 64 20 72 65 6e 61 6d 65 64 20 74 68 65 20  and renamed the 
2e950 54 63 6c 5f 47 65 74 4f 62 6a 56 61 72 32 2f 54  Tcl_GetObjVar2/T
2e960 63 6c 5f 53 65 74 4f 62 6a 56 61 72 32 0a 69 6e  cl_SetObjVar2.in
2e970 74 65 72 66 61 63 65 73 20 74 6f 20 54 63 6c 5f  terfaces to Tcl_
2e980 47 65 74 56 61 72 32 45 78 20 61 6e 64 20 54 63  GetVar2Ex and Tc
2e990 6c 5f 53 65 74 56 61 72 32 45 78 2e 20 20 54 68  l_SetVar2Ex.  Th
2e9a0 69 73 20 73 68 6f 75 6c 64 20 70 72 6f 76 69 64  is should provid
2e9b0 65 0a 62 65 74 74 65 72 20 63 6f 6d 70 61 74 69  e.better compati
2e9c0 62 69 6c 69 74 79 20 77 69 74 68 20 38 2e 30 2e  bility with 8.0.
2e9d0 20 28 73 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50   (stanton).*** P
2e9e0 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
2e9f0 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 70 72  TIBILITY with pr
2ea00 65 76 69 6f 75 73 20 61 6c 70 68 61 2f 62 65 74  evious alpha/bet
2ea10 61 20 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a  a releases ***..
2ea20 32 2f 31 30 2f 39 39 20 28 62 75 67 20 66 69 78  2/10/99 (bug fix
2ea30 29 20 4d 61 64 65 20 74 68 65 20 65 76 61 6c 20  ) Made the eval 
2ea40 69 6e 74 65 72 66 61 63 65 73 20 63 6f 6d 70 61  interfaces compa
2ea50 74 69 62 6c 65 20 77 69 74 68 20 38 2e 30 20 62  tible with 8.0 b
2ea60 79 0a 72 65 6e 61 6d 69 6e 67 20 54 63 6c 5f 45  y.renaming Tcl_E
2ea70 76 61 6c 4f 62 6a 20 74 6f 20 54 63 6c 5f 45 76  valObj to Tcl_Ev
2ea80 61 6c 4f 62 6a 45 78 2c 20 72 65 6e 61 6d 69 6e  alObjEx, renamin
2ea90 67 20 54 63 6c 5f 45 76 61 6c 32 20 74 6f 0a 54  g Tcl_Eval2 to.T
2eaa0 63 6c 5f 45 76 61 6c 45 78 20 61 6e 64 20 72 65  cl_EvalEx and re
2eab0 73 74 6f 72 69 6e 67 20 54 63 6c 5f 45 76 61 6c  storing Tcl_Eval
2eac0 4f 62 6a 20 61 6e 64 20 54 63 6c 5f 47 6c 6f 62  Obj and Tcl_Glob
2ead0 61 6c 45 76 61 6c 4f 62 6a 20 69 6e 74 65 72 66  alEvalObj interf
2eae0 61 63 65 73 0a 73 6f 20 74 68 65 79 20 6d 61 74  aces.so they mat
2eaf0 63 68 20 54 63 6c 20 38 2e 30 2e 20 28 73 74 61  ch Tcl 8.0. (sta
2eb00 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54  nton).*** POTENT
2eb10 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2eb20 49 54 59 20 77 69 74 68 20 70 72 65 76 69 6f 75  ITY with previou
2eb30 73 20 61 6c 70 68 61 2f 62 65 74 61 20 72 65 6c  s alpha/beta rel
2eb40 65 61 73 65 73 20 2a 2a 2a 0a 0a 32 2f 32 35 2f  eases ***..2/25/
2eb50 39 39 20 28 62 75 67 20 66 69 78 2f 6e 65 77 20  99 (bug fix/new 
2eb60 66 65 61 74 75 72 65 29 20 4f 6e 20 57 69 6e 64  feature) On Wind
2eb70 6f 77 73 2c 20 74 68 65 20 63 68 61 6e 6e 65 6c  ows, the channel
2eb80 20 64 72 69 76 65 72 73 20 66 6f 72 0a 63 6f 6e   drivers for.con
2eb90 73 6f 6c 65 73 20 61 6e 64 20 73 65 72 69 61 6c  soles and serial
2eba0 20 70 6f 72 74 73 20 6e 6f 77 20 63 6f 6d 70 6c   ports now compl
2ebb0 65 74 65 6c 79 20 73 75 70 70 6f 72 74 20 66 69  etely support fi
2ebc0 6c 65 20 65 76 65 6e 74 73 2e 20 28 72 65 64 6d  le events. (redm
2ebd0 61 6e 29 0a 0a 33 2f 35 2f 39 39 20 28 62 75 67  an)..3/5/99 (bug
2ebe0 20 66 69 78 29 20 49 6e 74 65 67 72 61 74 65 64   fix) Integrated
2ebf0 20 70 61 74 63 68 65 73 20 74 6f 20 66 69 78 20   patches to fix 
2ec00 76 61 72 69 6f 75 73 20 63 6f 6e 66 69 67 75 72  various configur
2ec10 65 20 70 72 6f 62 6c 65 6d 73 0a 74 68 61 74 20  e problems.that 
2ec20 61 66 66 65 63 74 65 64 20 48 50 2d 55 58 2d 31  affected HP-UX-1
2ec30 31 2c 20 36 34 2d 62 69 74 20 49 52 49 58 2c 20  1, 64-bit IRIX, 
2ec40 4c 69 6e 75 78 2c 20 61 6e 64 20 53 6f 6c 61 72  Linux, and Solar
2ec50 69 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 33  is. (stanton)..3
2ec60 2f 39 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /9/99 (bug fix) 
2ec70 49 6e 74 65 67 72 61 74 65 64 20 76 61 72 69 6f  Integrated vario
2ec80 75 73 20 41 49 58 20 72 65 6c 61 74 65 64 20 70  us AIX related p
2ec90 61 74 63 68 65 73 20 74 6f 20 69 6d 70 72 6f 76  atches to improv
2eca0 65 0a 73 75 70 70 6f 72 74 20 66 6f 72 20 73 68  e.support for sh
2ecb0 61 72 65 64 20 6c 69 62 72 61 72 69 65 73 2e 20  ared libraries. 
2ecc0 28 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f 39 2f 39  (stanton)..3/9/9
2ecd0 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  9 (new feature) 
2ece0 41 64 64 65 64 20 74 63 6c 5f 70 6c 61 74 66 6f  Added tcl_platfo
2ecf0 72 6d 28 75 73 65 72 29 20 74 6f 20 70 72 6f 76  rm(user) to prov
2ed00 69 64 65 20 61 20 70 6f 72 74 61 62 6c 65 0a 77  ide a portable.w
2ed10 61 79 20 74 6f 20 67 65 74 20 74 68 65 20 6e 61  ay to get the na
2ed20 6d 65 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e  me of the curren
2ed30 74 20 75 73 65 72 2e 20 28 77 65 6c 63 68 29 0a  t user. (welch).
2ed40 0a 33 2f 39 2f 39 39 20 28 6e 65 77 20 66 65 61  .3/9/99 (new fea
2ed50 74 75 72 65 29 20 49 6e 74 65 67 72 61 74 65 64  ture) Integrated
2ed60 20 74 68 65 20 73 74 75 62 20 6c 69 62 72 61 72   the stub librar
2ed70 79 20 6d 65 63 68 61 6e 69 73 6d 20 63 6f 6e 74  y mechanism cont
2ed80 72 69 62 75 74 65 64 0a 62 79 20 4a 61 6e 20 4e  ributed.by Jan N
2ed90 69 6a 74 6d 61 6e 73 2c 20 50 61 75 6c 20 44 75  ijtmans, Paul Du
2eda0 66 66 69 6e 2c 20 61 6e 64 20 4a 65 61 6e 2d 43  ffin, and Jean-C
2edb0 6c 61 75 64 65 20 57 69 70 70 6c 65 72 2e 20 20  laude Wippler.  
2edc0 54 68 69 73 20 66 65 61 74 75 72 65 0a 73 68 6f  This feature.sho
2edd0 75 6c 64 20 6d 61 6b 65 20 69 74 20 70 6f 73 73  uld make it poss
2ede0 69 62 6c 65 20 74 6f 20 77 72 69 74 65 20 65 78  ible to write ex
2edf0 74 65 6e 73 69 6f 6e 73 20 74 68 61 74 20 73 75  tensions that su
2ee00 70 70 6f 72 74 20 6d 75 6c 74 69 70 6c 65 0a 76  pport multiple.v
2ee10 65 72 73 69 6f 6e 73 20 6f 66 20 54 63 6c 20 73  ersions of Tcl s
2ee20 69 6d 75 6c 74 61 6e 65 6f 75 73 6c 79 2e 20 20  imultaneously.  
2ee30 49 74 20 61 6c 73 6f 20 6d 61 6b 65 73 20 69 74  It also makes it
2ee40 20 70 6f 73 73 69 62 6c 65 20 74 6f 0a 64 79 6e   possible to.dyn
2ee50 61 6d 69 63 61 6c 6c 79 20 6c 6f 61 64 20 65 78  amically load ex
2ee60 74 65 6e 73 69 6f 6e 73 20 69 6e 74 6f 20 73 74  tensions into st
2ee70 61 74 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20  atically linked 
2ee80 69 6e 74 65 72 70 72 65 74 65 72 73 2e 20 20 54  interpreters.  T
2ee90 68 69 73 0a 70 61 74 63 68 20 69 6e 63 6c 75 64  his.patch includ
2eea0 65 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  es the following
2eeb0 20 63 68 61 6e 67 65 73 3a 0a 20 20 20 20 20 20   changes:.      
2eec0 2d 09 41 64 64 65 64 20 61 20 54 63 6c 5f 49 6e  -.Added a Tcl_In
2eed0 69 74 53 74 75 62 73 28 29 20 69 6e 74 65 72 66  itStubs() interf
2eee0 61 63 65 0a 20 20 20 20 20 20 2d 09 41 64 64 65  ace.      -.Adde
2eef0 64 20 54 63 6c 5f 50 6b 67 50 72 6f 76 69 64 65  d Tcl_PkgProvide
2ef00 45 78 2c 20 54 63 6c 5f 50 6b 67 52 65 71 75 69  Ex, Tcl_PkgRequi
2ef10 72 65 45 78 2c 20 54 63 6c 5f 50 6b 67 50 72 65  reEx, Tcl_PkgPre
2ef20 73 65 6e 74 45 78 2c 0a 20 20 20 20 20 20 09 61  sentEx,.      .a
2ef30 6e 64 20 54 63 6c 5f 50 6b 67 50 72 65 73 65 6e  nd Tcl_PkgPresen
2ef40 74 2e 0a 20 20 20 20 20 20 2d 20 41 64 64 65 64  t..      - Added
2ef50 20 76 61 5f 6c 69 73 74 20 76 65 72 73 69 6f 6e   va_list version
2ef60 73 20 6f 66 20 61 6c 6c 20 56 41 52 41 52 47 53  s of all VARARGS
2ef70 20 66 75 6e 63 74 69 6f 6e 73 20 73 6f 20 74 68   functions so th
2ef80 65 79 20 63 61 6e 20 62 65 0a 09 69 6e 76 6f 6b  ey can be..invok
2ef90 65 64 20 66 72 6f 6d 20 77 72 61 70 70 65 72 20  ed from wrapper 
2efa0 66 75 6e 63 74 69 6f 6e 73 2e 0a 53 65 65 20 74  functions..See t
2efb0 68 65 20 6d 61 6e 75 61 6c 20 66 6f 72 20 6d 6f  he manual for mo
2efc0 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20  re information. 
2efd0 28 73 74 61 6e 74 6f 6e 29 0a 0a 0a 33 2f 31 30  (stanton)...3/10
2efe0 2f 39 39 20 28 66 65 61 74 75 72 65 20 63 68 61  /99 (feature cha
2eff0 6e 67 65 29 20 52 65 70 6c 61 63 65 64 20 54 63  nge) Replaced Tc
2f000 6c 5f 41 6c 65 72 74 4e 6f 74 69 66 69 65 72 20  l_AlertNotifier 
2f010 77 69 74 68 0a 54 63 6c 5f 54 68 72 65 61 64 41  with.Tcl_ThreadA
2f020 6c 65 72 74 20 73 69 6e 63 65 20 74 68 65 20 54  lert since the T
2f030 63 6c 5f 41 6c 65 72 74 4e 6f 74 69 66 69 65 72  cl_AlertNotifier
2f040 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 69 65 64   function relied
2f050 20 6f 6e 20 70 61 73 73 69 6e 67 0a 69 6e 74 65   on passing.inte
2f060 72 6e 61 6c 20 64 61 74 61 20 73 74 72 75 63 74  rnal data struct
2f070 75 72 65 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  ures. (stanton).
2f080 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
2f090 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
2f0a0 74 68 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68  th previous alph
2f0b0 61 2f 62 65 74 61 20 72 65 6c 65 61 73 65 73 20  a/beta releases 
2f0c0 2a 2a 2a 0a 0a 33 2f 31 30 2f 39 39 20 28 6e 65  ***..3/10/99 (ne
2f0d0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
2f0e0 20 61 20 54 63 6c 5f 47 65 74 56 65 72 73 69 6f   a Tcl_GetVersio
2f0f0 6e 20 41 50 49 20 74 6f 20 6d 61 6b 65 20 69 74  n API to make it
2f100 20 65 61 73 69 65 72 20 74 6f 0a 63 68 65 63 6b   easier to.check
2f110 20 74 68 65 20 54 63 6c 20 76 65 72 73 69 6f 6e   the Tcl version
2f120 20 61 6e 64 20 70 61 74 63 68 20 6c 65 76 65 6c   and patch level
2f130 20 66 72 6f 6d 20 43 2e 20 28 72 65 64 6d 61 6e   from C. (redman
2f140 29 0a 0a 33 2f 31 34 2f 39 39 20 28 66 65 61 74  )..3/14/99 (feat
2f150 75 72 65 20 63 68 61 6e 67 65 29 20 54 72 69 65  ure change) Trie
2f160 64 20 74 6f 20 75 6e 69 66 79 20 74 68 65 20 54  d to unify the T
2f170 63 6c 70 49 6e 69 74 4c 69 62 72 61 72 79 20 70  clpInitLibrary p
2f180 61 74 68 0a 72 6f 75 74 69 6e 65 73 20 74 6f 20  ath.routines to 
2f190 6c 6f 6f 6b 20 69 6e 20 73 69 6d 69 6c 61 72 20  look in similar 
2f1a0 70 6c 61 63 65 73 20 66 72 6f 6d 20 57 69 6e 64  places from Wind
2f1b0 6f 77 73 20 74 6f 20 55 4e 49 58 2e 20 20 54 68  ows to UNIX.  Th
2f1c0 65 20 6e 65 77 0a 6c 69 62 72 61 72 79 20 73 65  e new.library se
2f1d0 61 72 63 68 20 70 61 74 68 20 69 73 3a 20 54 43  arch path is: TC
2f1e0 4c 5f 4c 49 42 52 41 52 59 2c 20 54 43 4c 5f 4c  L_LIBRARY, TCL_L
2f1f0 49 42 52 41 52 59 2f 2e 2e 2f 74 63 6c 38 2e 31  IBRARY/../tcl8.1
2f200 2c 20 72 65 6c 61 74 69 76 65 0a 74 6f 20 44 4c  , relative.to DL
2f210 4c 20 28 57 69 6e 64 6f 77 73 20 4f 6e 6c 79 29  L (Windows Only)
2f220 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 6e 73   relative to ins
2f230 74 61 6c 6c 65 64 20 65 78 65 63 75 74 61 62 6c  talled executabl
2f240 65 2c 20 72 65 6c 61 74 69 76 65 20 74 6f 0a 64  e, relative to.d
2f250 65 76 65 6c 6f 70 20 65 78 65 63 75 74 61 62 6c  evelop executabl
2f260 65 2c 20 61 6e 64 20 72 65 6c 61 74 69 76 65 20  e, and relative 
2f270 74 6f 20 63 6f 6d 70 69 6c 65 64 2d 69 6e 20 69  to compiled-in i
2f280 6e 20 6c 6f 63 61 74 69 6f 6e 20 28 55 4e 49 58  n location (UNIX
2f290 0a 4f 6e 6c 79 2e 29 20 20 54 68 69 73 20 66 69  .Only.)  This fi
2f2a0 78 20 69 6e 63 6c 75 64 65 64 3a 0a 20 20 20 20  x included:.    
2f2b0 2d 20 44 65 66 69 6e 69 6e 67 20 61 20 54 63 6c  - Defining a Tcl
2f2c0 70 46 69 6e 64 45 78 65 63 75 74 61 62 6c 65 0a  pFindExecutable.
2f2d0 20 20 20 20 2d 20 4d 6f 76 69 6e 67 20 54 63 6c      - Moving Tcl
2f2e0 5f 46 69 6e 64 45 78 65 63 75 74 61 62 6c 65 20  _FindExecutable 
2f2f0 74 6f 20 61 20 63 6f 6d 6d 6f 6e 20 61 72 65 61  to a common area
2f300 20 69 6e 20 74 63 6c 45 6e 63 6f 64 69 6e 67 2e   in tclEncoding.
2f310 63 0a 20 20 20 20 2d 20 4d 6f 64 69 66 79 69 6e  c.    - Modifyin
2f320 67 20 74 68 65 20 54 63 6c 70 49 6e 69 74 4c 69  g the TclpInitLi
2f330 62 72 61 72 79 50 61 74 68 20 72 6f 75 74 69 6e  braryPath routin
2f340 65 73 2e 0a 28 73 75 72 6c 65 73 29 0a 0a 33 2f  es..(surles)..3/
2f350 31 34 2f 39 39 20 28 66 65 61 74 75 72 65 20 63  14/99 (feature c
2f360 68 61 6e 67 65 29 20 41 64 64 65 64 20 68 6f 6f  hange) Added hoo
2f370 6b 73 20 66 6f 72 20 54 63 6c 50 72 6f 20 57 72  ks for TclPro Wr
2f380 61 70 70 65 72 20 74 6f 20 69 6e 69 74 69 61 6c  apper to initial
2f390 69 7a 65 0a 74 68 65 20 6c 6f 63 61 74 69 6f 6e  ize.the location
2f3a0 20 6f 66 20 74 68 65 20 65 6e 63 6f 64 69 6e 67   of the encoding
2f3b0 20 66 69 6c 65 73 20 61 6e 64 20 6c 69 62 72 61   files and libra
2f3c0 72 69 65 73 2e 20 20 54 68 69 73 20 66 69 78 20  ries.  This fix 
2f3d0 69 6e 63 6c 75 64 65 64 3a 0a 20 20 20 20 2d 20  included:.    - 
2f3e0 41 64 64 69 6e 67 20 74 68 65 20 54 63 6c 53 65  Adding the TclSe
2f3f0 74 50 65 72 49 6e 69 74 53 63 72 69 70 74 20 72  tPerInitScript r
2f400 6f 75 74 69 6e 65 2e 0a 20 20 20 20 2d 20 4d 6f  outine..    - Mo
2f410 64 69 66 79 69 6e 67 20 74 68 65 20 54 63 6c 5f  difying the Tcl_
2f420 49 6e 69 74 20 72 6f 75 74 69 6e 65 73 20 74 6f  Init routines to
2f430 20 65 76 61 6c 75 61 74 65 20 74 68 65 20 6e 6f   evaluate the no
2f440 6e 2d 4e 55 4c 4c 0a 20 20 20 20 20 20 70 72 65  n-NULL.      pre
2f450 2d 69 6e 69 74 20 73 63 72 69 70 74 2e 0a 20 20  -init script..  
2f460 20 20 2d 20 41 64 64 69 6e 67 20 74 68 65 20 54    - Adding the T
2f470 63 6c 5f 53 65 74 64 65 66 61 75 6c 74 45 6e 63  cl_SetdefaultEnc
2f480 6f 64 69 6e 67 44 69 72 20 61 6e 64 20 54 63 6c  odingDir and Tcl
2f490 5f 47 65 74 44 65 66 61 75 6c 74 45 6e 63 6f 64  _GetDefaultEncod
2f4a0 69 6e 67 44 69 72 0a 20 20 20 20 20 20 72 6f 75  ingDir.      rou
2f4b0 74 69 6e 65 73 2e 0a 20 20 20 20 2d 20 4d 6f 64  tines..    - Mod
2f4c0 69 66 79 69 6e 67 20 74 68 65 20 54 63 6c 70 49  ifying the TclpI
2f4d0 6e 69 74 4c 69 62 72 61 72 79 20 72 6f 75 74 69  nitLibrary routi
2f4e0 6e 65 73 20 74 6f 20 61 70 70 65 6e 64 20 74 68  nes to append th
2f4f0 65 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20  e default.      
2f500 65 6e 63 6f 64 69 6e 67 20 64 69 72 2e 0a 28 73  encoding dir..(s
2f510 75 72 6c 65 73 29 0a 0a 33 2f 31 34 2f 39 39 20  urles)..3/14/99 
2f520 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
2f530 20 54 65 73 74 20 73 75 69 74 65 20 6e 6f 77 20   Test suite now 
2f540 75 73 65 73 20 22 74 65 73 74 22 20 6e 61 6d 65  uses "test" name
2f550 73 70 61 63 65 20 74 6f 0a 64 65 66 69 6e 65 20  space to.define 
2f560 74 68 65 20 74 65 73 74 20 70 72 6f 63 65 64 75  the test procedu
2f570 72 65 20 61 6e 64 20 6f 74 68 65 72 20 61 75 78  re and other aux
2f580 69 6c 69 61 72 79 20 70 72 6f 63 65 64 75 72 65  iliary procedure
2f590 73 20 61 73 20 77 65 6c 6c 20 61 73 0a 67 6c 6f  s as well as.glo
2f5a0 62 61 6c 20 76 61 72 69 61 62 6c 65 73 2e 0a 20  bal variables.. 
2f5b0 20 20 20 2d 20 47 6c 6f 62 61 6c 20 61 72 72 61     - Global arra
2f5c0 79 20 74 65 73 74 43 6f 6e 66 69 67 65 20 69 73  y testConfige is
2f5d0 20 6e 6f 77 20 63 61 6c 6c 65 64 20 3a 3a 74 65   now called ::te
2f5e0 73 74 3a 3a 74 65 73 74 43 6f 6e 66 69 67 2e 0a  st::testConfig..
2f5f0 20 20 20 20 2d 20 47 6c 6f 62 61 6c 20 76 61 72      - Global var
2f600 69 61 62 6c 65 20 56 45 52 42 4f 53 45 20 69 73  iable VERBOSE is
2f610 20 6e 6f 77 20 63 61 6c 6c 65 64 20 3a 3a 74 65   now called ::te
2f620 73 74 3a 3a 76 65 72 62 6f 73 65 2c 20 61 6e 64  st::verbose, and
2f630 0a 20 20 20 20 20 20 3a 3a 74 65 73 74 3a 3a 76  .      ::test::v
2f640 65 72 62 6f 73 65 20 6e 6f 20 6c 6f 6e 67 65 72  erbose no longer
2f650 20 77 6f 72 6b 73 20 77 69 74 68 20 6e 75 6d 65   works with nume
2f660 72 69 63 61 6c 20 76 61 6c 75 65 73 2e 20 20 57  rical values.  W
2f670 65 27 76 65 0a 20 20 20 20 20 20 73 77 69 74 63  e've.      switc
2f680 68 65 64 20 74 6f 20 61 20 62 69 74 77 69 73 65  hed to a bitwise
2f690 20 63 68 61 72 61 63 74 65 72 20 73 74 72 69 6e   character strin
2f6a0 67 2e 20 20 59 6f 75 20 63 61 6e 20 73 65 74 0a  g.  You can set.
2f6b0 20 20 20 20 20 20 3a 3a 74 65 73 74 3a 3a 76 65        ::test::ve
2f6c0 72 62 6f 73 65 20 62 79 20 75 73 69 6e 67 20 74  rbose by using t
2f6d0 68 65 20 2d 76 65 72 62 6f 73 65 20 6f 70 74 69  he -verbose opti
2f6e0 6f 6e 20 6f 6e 20 74 68 65 20 54 63 6c 20 63 6f  on on the Tcl co
2f6f0 6d 6d 61 6e 64 0a 20 20 20 20 20 20 6c 69 6e 65  mmand.      line
2f700 2e 0a 20 20 20 20 2d 20 47 6c 6f 62 61 6c 20 76  ..    - Global v
2f710 61 72 69 61 62 6c 65 20 54 45 53 54 53 20 69 73  ariable TESTS is
2f720 20 6e 6f 77 20 63 61 6c 6c 65 64 20 3a 3a 74 65   now called ::te
2f730 73 74 3a 3a 6d 61 74 63 68 69 6e 67 54 65 73 74  st::matchingTest
2f740 73 2c 20 61 6e 64 0a 20 20 20 20 20 20 63 61 6e  s, and.      can
2f750 20 62 65 20 73 65 74 20 6f 6e 20 74 68 65 20 54   be set on the T
2f760 63 6c 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20  cl command line 
2f770 76 69 61 20 74 68 65 20 2d 6d 61 74 63 68 20 6f  via the -match o
2f780 70 74 69 6f 6e 2e 0a 20 20 20 20 2d 20 54 68 65  ption..    - The
2f790 72 65 20 69 73 20 6e 6f 77 20 61 20 3a 3a 74 65  re is now a ::te
2f7a0 73 74 3a 3a 73 6b 69 70 54 65 73 74 73 20 76 61  st::skipTests va
2f7b0 72 69 61 62 6c 65 20 28 77 6f 72 6b 73 20 73 69  riable (works si
2f7c0 6d 69 6c 61 72 6c 79 20 74 6f 0a 20 20 20 20 20  milarly to.     
2f7d0 20 3a 3a 74 65 73 74 3a 3a 6d 61 74 63 68 54 65   ::test::matchTe
2f7e0 73 74 73 29 20 74 68 61 74 20 63 61 6e 20 62 65  sts) that can be
2f7f0 20 73 65 74 20 6f 6e 20 74 68 65 20 54 63 6c 20   set on the Tcl 
2f800 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 76 69 61  command line via
2f810 0a 20 20 20 20 20 20 74 68 65 20 2d 6d 61 74 63  .      the -matc
2f820 68 20 6f 70 74 69 6f 6e 2e 0a 20 20 20 20 2d 20  h option..    - 
2f830 54 68 65 20 74 65 73 74 20 73 75 69 74 65 20 63  The test suite c
2f840 61 6e 20 6e 6f 77 20 62 65 20 72 75 6e 20 69 6e  an now be run in
2f850 20 61 6e 79 20 77 6f 72 6b 69 6e 67 20 64 69 72   any working dir
2f860 65 63 74 6f 72 79 2e 20 20 57 68 65 6e 0a 20 20  ectory.  When.  
2f870 20 20 20 20 79 6f 75 20 72 75 6e 20 22 6d 61 6b      you run "mak
2f880 65 20 74 65 73 74 22 2c 20 74 68 65 20 77 6f 72  e test", the wor
2f890 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 20 69  king directory i
2f8a0 73 20 6e 6f 6c 6f 6e 67 65 72 20 73 77 69 74 63  s nolonger switc
2f8b0 68 65 64 0a 20 20 20 20 20 20 74 6f 20 2e 2e 2f  hed.      to ../
2f8c0 74 65 73 74 73 2e 0a 28 68 69 72 73 63 68 6c 29  tests..(hirschl)
2f8d0 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
2f8e0 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
2f8f0 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  **..------------
2f900 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 31  --- Released 8.1
2f910 62 32 2c 20 4d 61 72 63 68 20 31 36 2c 20 31 39  b2, March 16, 19
2f920 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  99 -------------
2f930 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 31 38 2f  ---------..3/18/
2f940 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
2f950 65 64 20 6d 69 73 73 69 6e 67 2f 69 6e 63 6f 72  ed missing/incor
2f960 72 65 63 74 20 63 68 61 72 61 63 74 65 72 73 20  rect characters 
2f970 69 6e 20 73 68 69 66 74 2d 6a 69 73 20 74 61 62  in shift-jis tab
2f980 6c 65 0a 28 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f  le.(stanton)..3/
2f990 31 38 2f 39 39 20 28 66 65 61 74 75 72 65 20 63  18/99 (feature c
2f9a0 68 61 6e 67 65 29 20 54 68 65 20 67 6c 6f 62 20  hange) The glob 
2f9b0 63 6f 6d 6d 61 6e 64 20 69 67 6e 6f 72 65 73 20  command ignores 
2f9c0 74 68 65 0a 46 53 5f 43 41 53 45 5f 49 53 5f 50  the.FS_CASE_IS_P
2f9d0 52 45 53 45 52 56 45 44 20 62 69 74 20 6f 6e 20  RESERVED bit on 
2f9e0 66 69 6c 65 20 73 79 73 74 65 73 6d 20 61 6e 64  file systesm and
2f9f0 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 0a   always returns.
2fa00 65 78 61 63 74 6c 79 20 77 68 61 74 20 69 74 20  exactly what it 
2fa10 67 65 74 73 20 66 72 6f 6d 20 74 68 65 20 73 79  gets from the sy
2fa20 73 74 65 6d 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  stem. (stanton).
2fa30 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
2fa40 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
2fa50 2a 0a 0a 33 2f 31 39 2f 39 39 20 28 6e 65 77 20  *..3/19/99 (new 
2fa60 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 73  feature) Added s
2fa70 75 70 70 6f 72 74 20 66 6f 72 20 2d 2d 65 6e 61  upport for --ena
2fa80 62 6c 65 2d 36 34 62 69 74 2e 20 20 46 6f 72 20  ble-64bit.  For 
2fa90 6e 6f 77 2c 0a 74 68 69 73 20 69 73 20 6f 6e 6c  now,.this is onl
2faa0 79 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20 53  y supported on S
2fab0 6f 6c 61 72 69 73 20 37 20 36 34 62 69 74 20 28  olaris 7 64bit (
2fac0 53 75 6e 4f 53 20 35 2e 37 29 20 75 73 69 6e 67  SunOS 5.7) using
2fad0 20 74 68 65 20 53 75 6e 0a 63 6f 6d 70 69 6c 65   the Sun.compile
2fae0 72 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f 32  r. (redman)..3/2
2faf0 33 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46  3/99 (bug fix) F
2fb00 69 78 65 64 20 66 69 6c 65 65 76 65 6e 74 73 20  ixed fileevents 
2fb10 61 6e 64 20 67 65 74 73 20 6f 6e 20 57 69 6e 64  and gets on Wind
2fb20 6f 77 73 20 63 6f 6e 73 6f 6c 65 73 20 61 6e 64  ows consoles and
2fb30 0a 73 65 72 69 61 6c 20 64 65 76 69 63 65 73 20  .serial devices 
2fb40 73 6f 20 74 68 61 74 20 6e 6f 6e 2d 62 6c 6f 63  so that non-bloc
2fb50 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 73 20 64 6f  king channels do
2fb60 20 6e 6f 74 20 62 6c 6f 63 6b 20 6f 6e 20 70 61   not block on pa
2fb70 72 74 69 61 6c 0a 69 6e 70 75 74 20 6c 69 6e 65  rtial.input line
2fb80 73 2e 20 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f  s.  (redman)..3/
2fb90 32 33 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  23/99 (bug fix) 
2fba0 41 64 64 65 64 20 61 20 6e 65 77 20 54 63 6c 5f  Added a new Tcl_
2fbb0 53 65 72 76 69 63 65 4d 6f 64 65 48 6f 6f 6b 20  ServiceModeHook 
2fbc0 69 6e 74 65 72 66 61 63 65 2e 0a 54 68 69 73 20  interface..This 
2fbd0 69 73 20 75 73 65 64 20 6f 6e 20 57 69 6e 64 6f  is used on Windo
2fbe0 77 73 20 74 6f 20 61 76 6f 69 64 20 74 68 65 20  ws to avoid the 
2fbf0 76 61 72 69 6f 75 73 20 70 72 6f 62 6c 65 6d 73  various problems
2fc00 20 74 68 61 74 20 70 65 6f 70 6c 65 0a 68 61 76   that people.hav
2fc10 65 20 62 65 65 6e 20 73 65 65 69 6e 67 20 77 68  e been seeing wh
2fc20 65 72 65 20 74 68 65 20 73 79 73 74 65 6d 20 68  ere the system h
2fc30 61 6e 67 73 20 77 68 65 6e 20 74 63 6c 73 68 20  angs when tclsh 
2fc40 69 73 20 72 75 6e 6e 69 6e 67 0a 6f 75 74 73 69  is running.outsi
2fc50 64 65 20 6f 66 20 74 68 65 20 65 76 65 6e 74 20  de of the event 
2fc60 6c 6f 6f 70 2e 20 41 73 20 70 61 72 74 20 6f 66  loop. As part of
2fc70 20 74 68 69 73 2c 20 72 65 6e 61 6d 65 64 0a 54   this, renamed.T
2fc80 63 6c 70 41 6c 65 72 74 4e 6f 74 69 66 69 65 72  clpAlertNotifier
2fc90 20 62 61 63 6b 20 74 6f 20 54 63 6c 5f 41 6c 65   back to Tcl_Ale
2fca0 72 74 4e 6f 74 69 66 69 65 72 20 73 69 6e 63 65  rtNotifier since
2fcb0 20 69 74 20 69 73 20 70 75 62 6c 69 63 2e 0a 28   it is public..(
2fcc0 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f 32 33 2f 39  stanton)..3/23/9
2fcd0 39 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  9 (feature chang
2fce0 65 29 20 54 65 73 74 20 73 75 69 74 65 20 6e 6f  e) Test suite no
2fcf0 77 20 75 73 65 73 20 22 74 63 6c 74 65 73 74 22  w uses "tcltest"
2fd00 20 6e 61 6d 65 73 70 61 63 65 20 74 6f 0a 64 65   namespace to.de
2fd10 66 69 6e 65 20 74 68 65 20 74 65 73 74 20 70 72  fine the test pr
2fd20 6f 63 65 64 75 72 65 20 61 6e 64 20 6f 74 68 65  ocedure and othe
2fd30 72 20 61 75 78 69 6c 69 61 72 79 20 70 72 6f 63  r auxiliary proc
2fd40 65 64 75 72 65 73 20 61 73 20 77 65 6c 6c 20 61  edures as well a
2fd50 73 0a 67 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c  s.global variabl
2fd60 65 73 2e 20 20 54 68 65 20 70 72 65 76 69 6f 75  es.  The previou
2fd70 73 6c 79 20 63 68 6f 73 65 6e 20 22 74 65 73 74  sly chosen "test
2fd80 22 20 6e 61 6d 65 73 70 61 63 65 20 77 61 73 20  " namespace was 
2fd90 74 68 6f 75 67 68 74 0a 74 6f 20 62 65 20 74 6f  thought.to be to
2fda0 6f 20 67 65 6e 65 72 69 63 20 61 6e 64 20 6c 69  o generic and li
2fdb0 6b 65 6c 79 20 74 6f 20 63 72 65 61 74 65 20 63  kely to create c
2fdc0 6f 6e 66 6c 69 74 73 2e 0a 28 68 69 72 73 63 68  onflits..(hirsch
2fdd0 6c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  l).*** POTENTIAL
2fde0 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
2fdf0 20 2a 2a 2a 0a 0a 33 2f 32 34 2f 39 39 20 28 62   ***..3/24/99 (b
2fe00 75 67 20 66 69 78 29 20 4d 61 6b 65 20 73 6f 63  ug fix) Make soc
2fe10 6b 65 74 73 20 74 68 72 65 61 64 20 73 61 66 65  kets thread safe
2fe20 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 0a 28 72 65   on Windows..(re
2fe30 64 6d 61 6e 29 0a 0a 33 2f 32 34 2f 39 39 20 28  dman)..3/24/99 (
2fe40 62 75 67 20 66 69 78 29 20 46 69 78 20 63 61 73  bug fix) Fix cas
2fe50 65 73 20 77 68 65 72 65 20 65 78 70 72 20 77 6f  es where expr wo
2fe60 75 6c 64 20 69 6e 63 6f 72 72 65 63 74 20 72 65  uld incorrect re
2fe70 74 75 72 6e 0a 61 20 66 6c 6f 61 74 69 6e 67 20  turn.a floating 
2fe80 70 6f 69 6e 74 20 76 61 6c 75 65 20 69 6e 73 74  point value inst
2fe90 65 61 64 20 6f 66 20 61 6e 20 69 6e 74 65 67 65  ead of an intege
2fea0 72 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f  r. (stanton)..3/
2feb0 32 35 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  25/99 (bug fix) 
2fec0 41 64 64 65 64 20 41 53 43 49 49 20 74 6f 20 62  Added ASCII to b
2fed0 69 67 35 20 61 6e 64 20 67 62 32 33 31 32 20 65  ig5 and gb2312 e
2fee0 6e 63 6f 64 69 6e 67 73 2e 0a 28 73 74 61 6e 74  ncodings..(stant
2fef0 6f 6e 29 0a 0a 33 2f 32 35 2f 39 39 20 28 66 65  on)..3/25/99 (fe
2ff00 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43 68  ature change) Ch
2ff10 61 6e 67 65 64 20 73 6f 20 61 6c 69 61 73 65 73  anged so aliases
2ff20 20 61 72 65 20 69 6e 76 6f 6b 65 64 20 61 74 20   are invoked at 
2ff30 63 75 72 72 65 6e 74 0a 73 63 6f 70 65 20 69 6e  current.scope in
2ff40 20 74 68 65 20 74 61 72 67 65 74 20 69 6e 74 65   the target inte
2ff50 72 70 72 65 74 65 72 20 69 6e 73 74 65 61 64 20  rpreter instead 
2ff60 6f 66 20 61 74 20 74 68 65 20 67 6c 6f 62 61 6c  of at the global
2ff70 20 73 63 6f 70 65 2e 20 20 54 68 69 73 0a 77 61   scope.  This.wa
2ff80 73 20 61 6e 20 69 6e 63 6f 6d 70 61 74 69 62 69  s an incompatibi
2ff90 6c 69 74 79 20 69 6e 74 72 6f 64 75 63 65 64 20  lity introduced 
2ffa0 69 6e 20 38 2e 31 20 74 68 61 74 20 69 73 20 62  in 8.1 that is b
2ffb0 65 69 6e 67 20 72 65 6d 6f 76 65 64 2e 0a 28 73  eing removed..(s
2ffc0 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45  tanton).*** POTE
2ffd0 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
2ffe0 49 4c 49 54 59 20 77 69 74 68 20 70 72 65 76 69  ILITY with previ
2fff0 6f 75 73 20 62 65 74 61 20 72 65 6c 65 61 73 65  ous beta release
30000 73 20 2a 2a 2a 0a 0a 33 2f 32 36 2f 39 39 20 28  s ***..3/26/99 (
30010 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
30020 2d 2d 65 6e 61 62 6c 65 2d 73 68 61 72 65 64 20  --enable-shared 
30030 69 73 20 6e 6f 77 20 74 68 65 20 64 65 66 61 75  is now the defau
30040 6c 74 20 61 6e 64 20 62 75 69 6c 64 0a 54 63 6c  lt and build.Tcl
30050 20 61 73 20 61 20 73 68 61 72 65 64 20 6c 69 62   as a shared lib
30060 72 61 72 79 3b 20 73 70 65 63 69 66 79 20 2d 2d  rary; specify --
30070 64 69 73 61 62 6c 65 2d 73 68 61 72 65 64 20 74  disable-shared t
30080 6f 20 62 75 69 6c 64 20 61 20 73 74 61 74 69 63  o build a static
30090 20 54 63 6c 0a 6c 69 62 72 61 72 79 20 61 6e 64   Tcl.library and
300a0 20 73 68 65 6c 6c 2e 0a 2a 2a 2a 20 50 4f 54 45   shell..*** POTE
300b0 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
300c0 49 4c 49 54 59 20 2a 2a 2a 0a 0a 33 2f 32 39 2f  ILITY ***..3/29/
300d0 39 39 20 28 62 75 67 20 66 69 78 29 20 20 52 65  99 (bug fix)  Re
300e0 6d 6f 76 65 64 20 74 68 65 20 73 74 75 62 20 66  moved the stub f
300f0 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 63 68 61  unctions and cha
30100 6e 67 65 64 20 74 68 65 20 73 74 75 62 0a 6d 61  nged the stub.ma
30110 63 72 6f 73 20 74 6f 20 6a 75 73 74 20 75 73 65  cros to just use
30120 20 74 68 65 20 6e 61 6d 65 20 77 69 74 68 6f 75   the name withou
30130 74 20 70 61 72 61 6d 73 2e 20 50 61 73 73 20 26  t params. Pass &
30140 74 63 6c 53 74 75 62 73 20 69 6e 74 6f 20 74 68  tclStubs into th
30150 65 0a 69 6e 74 65 72 70 20 28 64 6f 6e 27 74 20  e.interp (don't 
30160 75 73 65 20 74 63 6c 53 74 75 62 73 50 74 72 20  use tclStubsPtr 
30170 62 65 63 61 75 73 65 20 6f 66 20 63 6f 6c 6c 69  because of colli
30180 73 69 6f 6e 73 20 77 69 74 68 20 74 68 65 20 73  sions with the s
30190 74 75 62 73 20 6f 6e 0a 53 6f 6c 61 72 69 73 29  tubs on.Solaris)
301a0 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f 33 30  . (redman)..3/30
301b0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 4c 6f  /99 (bug fix) Lo
301c0 61 64 61 62 6c 65 20 6d 6f 64 75 6c 65 73 20 61  adable modules a
301d0 72 65 20 6e 6f 77 20 75 6e 6c 6f 61 64 65 64 20  re now unloaded 
301e0 61 74 20 74 68 65 20 6c 61 73 74 0a 70 6f 73 73  at the last.poss
301f0 69 62 6c 65 20 6d 6f 6d 65 6e 74 20 64 75 72 69  ible moment duri
30200 6e 67 20 54 63 6c 5f 46 69 6e 61 6c 69 7a 65 20  ng Tcl_Finalize 
30210 74 6f 20 66 69 78 20 76 61 72 69 6f 75 73 20 65  to fix various e
30220 78 69 74 2d 74 69 6d 65 20 63 72 61 73 68 65 73  xit-time crashes
30230 2e 0a 28 77 65 6c 63 68 29 0a 0a 33 2f 33 30 2f  ..(welch)..3/30/
30240 39 39 20 28 62 75 67 20 66 69 78 29 20 54 63 6c  99 (bug fix) Tcl
30250 20 6e 6f 20 6c 6f 6e 67 65 72 20 63 61 6c 6c 73   no longer calls
30260 20 73 65 74 6c 6f 63 61 6c 65 28 29 2e 20 20 49   setlocale().  I
30270 74 20 6c 6f 6f 6b 73 20 61 74 0a 65 6e 76 28 4c  t looks at.env(L
30280 41 4e 47 29 20 61 6e 64 20 65 6e 76 28 4c 43 5f  ANG) and env(LC_
30290 54 59 50 45 29 20 69 6e 73 74 65 61 64 2e 20 20  TYPE) instead.  
302a0 28 73 74 61 6e 74 6f 6e 29 0a 0a 34 2f 31 2f 39  (stanton)..4/1/9
302b0 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
302c0 64 20 74 68 65 20 55 6c 74 72 69 78 20 6d 75 6c  d the Ultrix mul
302d0 74 69 70 6c 65 20 73 79 6d 62 6f 6c 20 64 65 66  tiple symbol def
302e0 69 6e 69 74 69 6f 6e 20 70 72 6f 62 6c 65 6d 2e  inition problem.
302f0 0a 4e 6f 77 2c 20 65 76 65 6e 20 54 63 6c 20 69  .Now, even Tcl i
30300 6e 63 6c 75 64 65 73 20 61 20 63 6f 70 79 20 6f  ncludes a copy o
30310 66 20 74 68 65 20 54 63 6c 20 73 74 75 62 20 6c  f the Tcl stub l
30320 69 62 72 61 72 79 2e 20 28 72 65 64 6d 61 6e 29  ibrary. (redman)
30330 0a 0a 34 2f 31 2f 39 39 20 28 62 75 67 20 66 69  ..4/1/99 (bug fi
30340 78 29 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61 6c  x) International
30350 69 7a 65 64 20 74 68 65 20 72 65 67 69 73 74 72  ized the registr
30360 79 20 70 61 63 6b 61 67 65 2e 0a 0a 34 2f 31 2f  y package...4/1/
30370 39 39 20 28 62 75 67 20 66 69 78 29 20 43 68 61  99 (bug fix) Cha
30380 6e 67 65 64 20 74 68 65 20 69 6d 70 6c 65 6d 65  nged the impleme
30390 6e 61 74 69 6f 6e 20 6f 66 20 54 63 6c 5f 43 6f  nation of Tcl_Co
303a0 6e 64 69 74 69 6f 6e 57 61 69 74 20 61 6e 64 0a  nditionWait and.
303b0 54 63 6c 5f 43 6f 6e 64 69 74 69 6f 6e 4e 6f 74  Tcl_ConditionNot
303c0 69 66 79 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 20  ify on Windows. 
303d0 20 54 68 65 20 6e 65 77 20 61 6c 67 6f 72 69 74   The new algorit
303e0 68 6d 20 65 6c 69 6d 69 6e 61 74 65 73 20 61 20  hm eliminates a 
303f0 72 61 63 65 0a 63 6f 6e 64 69 74 69 6f 6e 20 61  race.condition a
30400 6e 64 20 77 61 73 20 73 75 67 67 65 73 74 65 64  nd was suggested
30410 20 62 79 20 4a 69 6d 20 44 61 76 69 64 73 6f 6e   by Jim Davidson
30420 2e 20 28 77 65 6c 63 68 29 0a 0a 34 2f 32 2f 39  . (welch)..4/2/9
30430 39 20 28 6e 65 77 20 61 70 69 73 29 20 20 4d 61  9 (new apis)  Ma
30440 64 65 20 76 61 72 69 6f 75 73 20 55 6e 69 63 6f  de various Unico
30450 64 65 20 75 74 69 6c 69 74 79 20 66 75 6e 63 74  de utility funct
30460 69 6f 6e 73 20 70 75 62 6c 69 63 2e 0a 54 63 6c  ions public..Tcl
30470 5f 55 74 66 54 6f 55 6e 69 43 68 61 72 44 53 74  _UtfToUniCharDSt
30480 72 69 6e 67 2c 20 54 63 6c 5f 55 6e 69 43 68 61  ring, Tcl_UniCha
30490 72 54 6f 55 74 66 44 53 74 72 69 6e 67 2c 20 54  rToUtfDString, T
304a0 63 6c 5f 55 6e 69 43 68 61 72 4c 65 6e 2c 0a 54  cl_UniCharLen,.T
304b0 63 6c 5f 55 6e 69 43 68 61 72 4e 63 6d 70 2c 20  cl_UniCharNcmp, 
304c0 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 41 6c 6e  Tcl_UniCharIsAln
304d0 75 6d 2c 20 54 63 6c 5f 55 6e 69 43 68 61 72 49  um, Tcl_UniCharI
304e0 73 41 6c 70 68 61 2c 0a 54 63 6c 5f 55 6e 69 43  sAlpha,.Tcl_UniC
304f0 68 61 72 49 73 44 69 67 69 74 2c 20 54 63 6c 5f  harIsDigit, Tcl_
30500 55 6e 69 43 68 61 72 49 73 4c 6f 77 65 72 2c 20  UniCharIsLower, 
30510 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 53 70 61  Tcl_UniCharIsSpa
30520 63 65 2c 0a 54 63 6c 5f 55 6e 69 43 68 61 72 49  ce,.Tcl_UniCharI
30530 73 55 70 70 65 72 2c 20 54 63 6c 5f 55 6e 69 43  sUpper, Tcl_UniC
30540 68 61 72 49 73 57 6f 72 64 43 68 61 72 2c 20 54  harIsWordChar, T
30550 63 6c 5f 57 69 6e 55 74 66 54 6f 54 43 68 61 72  cl_WinUtfToTChar
30560 2c 0a 54 63 6c 5f 57 69 6e 54 43 68 61 72 54 6f  ,.Tcl_WinTCharTo
30570 55 74 66 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34  Utf (stanton)..4
30580 2f 32 2f 39 39 20 28 66 65 61 74 75 72 65 20 63  /2/99 (feature c
30590 68 61 6e 67 65 29 20 41 64 64 20 6e 65 77 20 44  hange) Add new D
305a0 44 45 20 70 61 63 6b 61 67 65 20 61 6e 64 20 72  DE package and r
305b0 65 6d 6f 76 65 64 20 74 68 65 20 54 6b 0a 73 65  emoved the Tk.se
305c0 6e 64 20 63 6f 6d 6d 61 6e 64 20 66 72 6f 6d 20  nd command from 
305d0 74 68 65 20 57 69 6e 64 6f 77 73 20 76 65 72 73  the Windows vers
305e0 69 6f 6e 2e 20 20 43 68 61 6e 67 65 64 20 44 44  ion.  Changed DD
305f0 45 2d 62 61 73 65 64 20 73 65 6e 64 0a 63 6f 64  E-based send.cod
30600 65 20 69 6e 74 6f 20 22 64 64 65 20 65 76 61 6c  e into "dde eval
30610 22 20 63 6f 6d 6d 61 6e 64 2e 20 20 54 68 65 20  " command.  The 
30620 44 44 45 20 70 61 63 6b 61 67 65 20 63 61 6e 20  DDE package can 
30630 62 65 20 6c 6f 61 64 65 64 0a 69 6e 74 6f 20 74  be loaded.into t
30640 63 6c 73 68 2c 20 6e 6f 74 20 6a 75 73 74 20 77  clsh, not just w
30650 69 73 68 2e 20 20 57 69 6e 64 6f 77 73 20 6f 6e  ish.  Windows on
30660 6c 79 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 34 2f  ly. (redman)..4/
30670 35 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 43  5/99 (bug fix) C
30680 68 61 6e 67 65 64 20 73 61 66 65 2d 74 63 6c 20  hanged safe-tcl 
30690 73 6f 20 74 68 61 74 20 74 68 65 20 65 6e 63 6f  so that the enco
306a0 64 69 6e 67 20 63 6f 6d 6d 61 6e 64 0a 69 73 20  ding command.is 
306b0 61 6e 20 61 6c 69 61 73 20 74 68 61 74 20 6d 61  an alias that ma
306c0 73 6b 73 20 6f 75 74 20 74 68 65 20 22 65 6e 63  sks out the "enc
306d0 6f 64 69 6e 67 20 73 79 73 74 65 6d 22 20 73 75  oding system" su
306e0 62 63 6f 6d 6d 61 6e 64 2e 0a 28 72 65 64 6d 61  bcommand..(redma
306f0 6e 29 0a 0a 34 2f 35 2f 39 39 20 28 62 75 67 20  n)..4/5/99 (bug 
30700 66 69 78 29 20 43 6f 6e 66 69 67 75 72 65 20 70  fix) Configure p
30710 61 74 63 68 65 73 20 74 6f 20 69 6d 70 72 6f 76  atches to improv
30720 65 20 73 75 70 70 6f 72 74 20 66 6f 72 0a 4f 53  e support for.OS
30730 2f 33 39 30 20 61 6e 64 20 42 53 44 2f 4f 53 20  /390 and BSD/OS 
30740 34 2e 2a 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  4.*. (stanton)..
30750 34 2f 35 2f 39 39 20 28 62 75 67 20 66 69 78 29  4/5/99 (bug fix)
30760 20 46 69 78 65 64 20 63 72 61 73 68 20 69 6e 20   Fixed crash in 
30770 74 68 65 20 63 6c 6f 63 6b 20 63 6f 6d 6d 61 6e  the clock comman
30780 64 20 74 68 61 74 20 6f 63 63 75 72 72 65 64 0a  d that occurred.
30790 77 69 74 68 20 6e 65 67 61 74 69 76 65 20 74 69  with negative ti
307a0 6d 65 20 76 61 6c 75 65 73 20 69 6e 20 74 69 6d  me values in tim
307b0 65 7a 6f 6e 65 73 20 65 61 73 74 20 6f 66 20 47  ezones east of G
307c0 4d 54 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34  MT. (stanton)..4
307d0 2f 36 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  /6/99 (bug fix) 
307e0 4d 6f 76 65 64 20 74 68 65 20 22 61 72 72 61 79  Moved the "array
307f0 20 73 65 74 22 20 43 20 6c 65 76 65 6c 20 63 6f   set" C level co
30800 64 65 20 69 6e 74 6f 20 61 20 63 6f 6d 6d 6f 6e  de into a common
30810 0a 72 6f 75 74 69 6e 65 20 28 54 63 6c 41 72 72  .routine (TclArr
30820 61 79 53 65 74 29 2e 20 20 54 68 65 20 54 63 6c  aySet).  The Tcl
30830 53 65 74 75 70 45 6e 76 20 72 6f 75 74 69 6e 65  SetupEnv routine
30840 20 6e 6f 77 20 75 73 65 73 20 74 68 69 73 20 41   now uses this A
30850 50 49 20 74 6f 0a 63 72 65 61 74 65 20 61 6e 20  PI to.create an 
30860 65 6e 76 20 61 72 72 61 79 20 77 2f 20 6e 6f 20  env array w/ no 
30870 65 6c 65 6d 65 6e 74 73 2e 20 20 54 68 69 73 20  elements.  This 
30880 66 69 78 65 73 20 74 68 65 20 62 75 67 20 63 61  fixes the bug ca
30890 75 73 65 64 20 77 68 65 6e 0a 65 76 65 72 79 20  used when.every 
308a0 65 6e 76 69 72 6f 6e 20 76 61 72 61 69 62 6c 65  environ varaible
308b0 20 69 73 20 72 65 6d 6f 76 65 64 2c 20 61 6e 64   is removed, and
308c0 20 74 68 65 20 54 63 6c 20 65 6e 76 20 76 61 72   the Tcl env var
308d0 69 61 62 6c 65 20 69 73 0a 73 79 6e 63 68 65 64  iable is.synched
308e0 2e 20 20 49 66 20 6e 6f 20 65 6e 76 69 72 6f 6e  .  If no environ
308f0 20 76 61 72 73 20 65 78 69 73 74 65 64 2c 20 74   vars existed, t
30900 68 65 20 54 63 6c 20 65 6e 76 20 76 61 72 20 77  he Tcl env var w
30910 6f 75 6c 64 20 6e 65 76 65 72 20 62 65 0a 63 72  ould never be.cr
30920 65 61 74 65 64 2e 20 28 73 75 72 6c 65 73 29 0a  eated. (surles).
30930 0a 34 2f 36 2f 39 39 20 28 62 75 67 20 66 69 78  .4/6/99 (bug fix
30940 29 20 4d 61 64 65 20 74 68 65 20 45 6e 76 20 6d  ) Made the Env m
30950 6f 64 75 6c 65 20 49 31 38 4e 20 63 6f 6d 70 6c  odule I18N compl
30960 69 61 6e 74 2e 20 28 73 75 72 6c 65 73 29 0a 0a  iant. (surles)..
30970 34 2f 36 2f 39 39 20 28 62 75 67 20 66 69 78 29  4/6/99 (bug fix)
30980 20 43 68 61 6e 67 65 64 20 74 68 65 20 46 69 6e   Changed the Fin
30990 64 56 61 72 69 61 62 6c 65 20 72 6f 75 74 69 6e  dVariable routin
309a0 65 20 74 6f 20 54 63 6c 70 46 69 6e 64 56 61 72  e to TclpFindVar
309b0 69 61 62 6c 65 2c 0a 74 68 61 74 20 6e 6f 77 20  iable,.that now 
309c0 64 6f 65 73 20 61 20 63 61 73 65 20 69 6e 73 65  does a case inse
309d0 6e 73 69 74 69 76 65 20 73 74 72 69 6e 67 20 63  nsitive string c
309e0 6f 6d 70 61 72 69 73 6f 6e 20 6f 6e 20 57 69 6e  omparison on Win
309f0 64 6f 77 73 2c 20 61 6e 64 20 6e 6f 74 0a 6f 6e  dows, and not.on
30a00 20 55 4e 49 58 2e 20 28 73 75 72 6c 65 73 29 0a   UNIX. (surles).
30a10 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
30a20 20 52 65 6c 65 61 73 65 64 20 38 2e 31 62 33 2c   Released 8.1b3,
30a30 20 41 70 72 69 6c 20 36 2c 20 31 39 39 39 20 2d   April 6, 1999 -
30a40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
30a50 2d 2d 2d 2d 2d 0a 0a 34 2f 39 2f 39 39 20 28 62  -----..4/9/99 (b
30a60 75 67 20 66 69 78 29 20 20 46 69 78 65 64 20 6e  ug fix)  Fixed n
30a70 6f 74 69 66 69 65 72 20 64 65 61 64 6c 6f 63 6b  otifier deadlock
30a80 20 73 69 74 75 61 74 69 6f 6e 20 77 68 65 6e 20   situation when 
30a90 74 68 65 20 70 69 70 65 20 75 73 65 64 0a 74 6f  the pipe used.to
30aa0 20 74 61 6c 6b 20 62 61 63 6b 20 6e 6f 74 69 66   talk back notif
30ab0 69 65 72 20 74 68 72 65 61 64 20 69 73 20 66 69  ier thread is fi
30ac0 6c 6c 65 64 20 77 69 74 68 20 64 61 74 61 2e 20  lled with data. 
30ad0 20 46 6f 75 6e 64 20 61 73 20 61 20 72 65 73 75   Found as a resu
30ae0 6c 74 20 6f 66 20 74 68 65 0a 66 6f 63 75 73 2e  lt of the.focus.
30af0 74 65 73 74 20 66 6f 72 20 54 6b 20 68 61 6e 67  test for Tk hang
30b00 69 6e 67 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 34  ing. (redman)..4
30b10 2f 31 33 2f 39 39 20 28 62 75 67 20 66 69 78 29  /13/99 (bug fix)
30b20 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
30b30 20 73 6f 63 6b 65 74 20 2d 61 73 79 6e 63 20 63   socket -async c
30b40 6f 6d 62 69 6e 65 64 20 77 69 74 68 0a 66 69 6c  ombined with.fil
30b50 65 65 76 65 6e 74 20 66 6f 72 20 77 72 69 74 69  eevent for writi
30b60 6e 67 20 64 69 64 20 6e 6f 74 20 77 6f 72 6b 20  ng did not work 
30b70 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20 4e 54  under Windows NT
30b80 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 31 33  . (redman)..4/13
30b90 2f 39 39 20 28 65 6e 63 6f 64 69 6e 67 20 66 69  /99 (encoding fi
30ba0 78 29 20 52 65 73 74 6f 72 65 64 20 74 68 65 20  x) Restored the 
30bb0 64 6f 75 62 6c 65 20 62 79 74 65 20 64 65 66 69  double byte defi
30bc0 6e 69 74 69 6f 6e 20 6f 66 20 47 42 32 33 31 32  nition of GB2312
30bd0 0a 61 6e 64 20 61 64 64 65 64 20 74 68 65 20 45  .and added the E
30be0 55 43 2d 43 4e 20 65 6e 63 6f 64 69 6e 67 2e 20  UC-CN encoding. 
30bf0 20 45 55 43 2d 43 4e 20 69 73 20 61 20 76 61 72   EUC-CN is a var
30c00 69 61 6e 74 20 6f 66 20 47 42 32 33 31 32 20 74  iant of GB2312 t
30c10 68 61 74 0a 73 68 69 66 74 73 20 74 68 65 20 63  hat.shifts the c
30c20 68 61 72 61 63 74 65 72 73 20 69 6e 74 6f 20 62  haracters into b
30c30 79 74 65 73 20 77 69 74 68 20 74 68 65 20 68 69  ytes with the hi
30c40 67 68 20 62 69 74 20 73 65 74 20 61 6e 64 20 69  gh bit set and i
30c50 6e 63 6c 75 64 65 73 0a 41 53 43 49 49 20 61 73  ncludes.ASCII as
30c60 20 61 20 73 75 62 73 65 74 2e 20 28 73 74 61 6e   a subset. (stan
30c70 74 6f 6e 29 0a 0a 34 2f 32 37 2f 39 39 20 28 62  ton)..4/27/99 (b
30c80 75 67 20 66 69 78 29 20 41 64 64 65 64 20 27 65  ug fix) Added 'e
30c90 78 74 65 72 6e 20 22 43 22 20 7b 7d 27 20 62 6c  xtern "C" {}' bl
30ca0 6f 63 6b 20 61 72 6f 75 6e 64 20 74 68 65 20 73  ock around the s
30cb0 74 75 62 20 74 61 62 6c 65 0a 70 6f 69 6e 74 65  tub table.pointe
30cc0 72 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 73 6f  r declaration so
30cd0 20 74 68 65 20 73 74 75 62 20 6c 69 62 72 61 72   the stub librar
30ce0 79 20 63 61 6e 20 62 65 20 75 73 65 64 20 66 72  y can be used fr
30cf0 6f 6d 20 43 2b 2b 2e 20 28 73 74 61 6e 74 6f 6e  om C++. (stanton
30d00 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  )..-------------
30d10 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 31 20  -- Released 8.1 
30d20 66 69 6e 61 6c 2c 20 41 70 72 69 6c 20 32 39 2c  final, April 29,
30d30 20 31 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   1999 ----------
30d40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 34 2f  ------------..4/
30d50 32 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  22/99 (bug fix) 
30d60 43 68 61 6e 67 65 64 20 57 69 6e 64 6f 77 73 20  Changed Windows 
30d70 4e 54 20 73 6f 63 6b 65 74 20 69 6d 70 6c 65 6d  NT socket implem
30d80 65 6e 74 61 74 69 6f 6e 20 74 6f 20 61 76 6f 69  entation to avoi
30d90 64 0a 63 72 65 61 74 69 6e 67 20 61 20 63 6f 6d  d.creating a com
30da0 6d 75 6e 69 63 61 74 69 6f 6e 20 77 69 6e 64 6f  munication windo
30db0 77 2e 20 20 54 68 69 73 20 61 76 6f 69 64 73 20  w.  This avoids 
30dc0 74 68 65 20 70 72 6f 62 6c 65 6d 20 77 68 65 72  the problem wher
30dd0 65 20 74 68 65 0a 73 79 73 74 65 6d 20 68 61 6e  e the.system han
30de0 67 73 20 77 61 69 74 69 6e 67 20 66 6f 72 20 74  gs waiting for t
30df0 63 6c 73 68 20 74 6f 20 72 65 73 70 6f 6e 64 20  clsh to respond 
30e00 74 6f 20 61 20 73 79 73 74 65 6d 2d 77 69 64 65  to a system-wide
30e10 20 73 79 6e 63 68 72 6f 6e 6f 75 73 0a 62 72 6f   synchronous.bro
30e20 61 64 63 61 73 74 20 28 65 2e 67 2e 20 69 66 20  adcast (e.g. if 
30e30 79 6f 75 20 63 68 61 6e 67 65 20 73 79 73 74 65  you change syste
30e40 6d 20 63 6f 6c 6f 72 73 29 2e 20 28 72 65 64 6d  m colors). (redm
30e50 61 6e 29 0a 0a 34 2f 32 32 2f 39 39 20 28 62 75  an)..4/22/99 (bu
30e60 67 20 66 69 78 29 20 41 64 64 65 64 20 63 61 6c  g fix) Added cal
30e70 6c 20 74 6f 20 54 63 6c 57 69 6e 49 6e 69 74 20  l to TclWinInit 
30e80 66 72 6f 6d 20 54 63 6c 70 49 6e 69 74 50 6c 61  from TclpInitPla
30e90 74 66 6f 72 6d 20 77 68 65 6e 0a 62 75 69 6c 64  tform when.build
30ea0 69 6e 67 20 61 20 73 74 61 74 69 63 20 6c 69 62  ing a static lib
30eb0 72 61 72 79 20 73 69 6e 63 65 20 44 6c 6c 4d 61  rary since DllMa
30ec0 69 6e 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 69  in will not be i
30ed0 6e 76 6f 6b 65 64 2e 20 20 54 68 69 73 0a 63 6f  nvoked.  This.co
30ee0 75 6c 64 20 62 72 65 61 6b 20 6f 6c 64 20 63 6f  uld break old co
30ef0 64 65 20 74 68 61 74 20 65 78 70 6c 69 63 69 74  de that explicit
30f00 6c 79 20 63 61 6c 6c 65 64 20 54 63 6c 57 69 6e  ly called TclWin
30f10 49 6e 69 74 2c 20 62 75 74 20 73 68 6f 75 6c 64  Init, but should
30f20 20 62 65 0a 73 69 6d 70 6c 65 72 20 69 6e 20 74   be.simpler in t
30f30 68 65 20 6c 6f 6e 67 20 72 75 6e 2e 20 28 73 74  he long run. (st
30f40 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45 4e  anton).*** POTEN
30f50 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
30f60 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33 2f 39  LITY ***..4/23/9
30f70 39 20 28 62 75 67 20 66 69 78 29 20 41 64 64 65  9 (bug fix) Adde
30f80 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68  d support for th
30f90 65 20 6b 6f 69 38 2d 72 20 43 79 72 69 6c 6c 69  e koi8-r Cyrilli
30fa0 63 0a 65 6e 63 6f 64 69 6e 67 2e 20 5b 42 75 67  c.encoding. [Bug
30fb0 3a 20 31 37 37 31 5d 20 28 73 74 61 6e 74 6f 6e  : 1771] (stanton
30fc0 29 0a 0a 34 2f 32 38 2f 39 39 20 28 62 75 67 20  )..4/28/99 (bug 
30fd0 66 69 78 29 20 43 68 61 6e 67 65 64 20 69 6e 74  fix) Changed int
30fe0 65 72 6e 61 6c 20 54 63 6c 5f 4f 62 6a 20 75 73  ernal Tcl_Obj us
30ff0 61 67 65 20 74 6f 20 61 76 6f 69 64 20 66 72 65  age to avoid fre
31000 65 69 6e 67 20 74 68 65 0a 69 6e 74 65 72 6e 61  eing the.interna
31010 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e  l representation
31020 20 61 66 74 65 72 20 74 68 65 20 73 74 72 69 6e   after the strin
31030 67 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e  g representation
31040 20 68 61 73 20 62 65 65 6e 0a 66 72 65 65 64 2e   has been.freed.
31050 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20    This makes it 
31060 65 61 73 69 65 72 20 74 6f 20 64 65 62 75 67 20  easier to debug 
31070 65 78 74 65 6e 73 69 6f 6e 73 2e 20 28 73 74 61  extensions. (sta
31080 6e 74 6f 6e 29 0a 0a 34 2f 33 30 2f 39 39 20 28  nton)..4/30/99 (
31090 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61  bug fix) Fixed a
310a0 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 20 69 6e 20   memory leak in 
310b0 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65 74 65 2e  CommandComplete.
310c0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f 33 2f   (stanton)..5/3/
310d0 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
310e0 65 64 20 61 20 62 75 67 20 77 68 65 72 65 20 74  ed a bug where t
310f0 68 65 20 54 63 6c 5f 4f 62 6a 54 79 70 65 20 77  he Tcl_ObjType w
31100 61 73 20 6e 6f 74 20 62 65 69 6e 67 20 73 65 74  as not being set
31110 0a 69 6e 20 61 20 64 75 70 6c 69 63 61 74 65 64  .in a duplicated
31120 20 54 63 6c 5f 4f 62 6a 2e 20 5b 42 75 67 3a 20   Tcl_Obj. [Bug: 
31130 31 39 37 35 2c 20 32 30 34 37 5d 20 28 73 74 61  1975, 2047] (sta
31140 6e 74 6f 6e 29 0a 0a 35 2f 33 2f 39 39 20 28 62  nton)..5/3/99 (b
31150 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
31160 54 63 6c 5f 50 61 72 73 65 43 6f 6d 6d 61 6e 64  Tcl_ParseCommand
31170 20 74 6f 20 61 76 6f 69 64 20 6d 6f 64 69 66 79   to avoid modify
31180 69 6e 67 20 65 76 61 6c 27 65 64 0a 73 74 72 69  ing eval'ed.stri
31190 6e 67 73 20 74 68 61 74 20 61 72 65 20 61 6c 72  ngs that are alr
311a0 65 61 64 79 20 6e 75 6c 6c 20 74 65 72 6d 69 6e  eady null termin
311b0 61 74 65 64 2e 20 20 5b 42 75 67 3a 20 31 37 39  ated.  [Bug: 179
311c0 33 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f  3] (stanton)..5/
311d0 33 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72  3/99 (new featur
311e0 65 29 20 41 70 70 6c 69 65 64 20 4a 65 66 66 20  e) Applied Jeff 
311f0 48 6f 62 62 73 27 73 20 73 74 72 69 6e 67 20 70  Hobbs's string p
31200 61 74 63 68 20 77 68 69 63 68 20 69 6e 63 6c 75  atch which inclu
31210 64 65 73 0a 74 68 65 20 66 6f 6c 6c 6f 77 69 6e  des.the followin
31220 67 20 63 68 61 6e 67 65 73 3a 0a 20 20 20 20 2d  g changes:.    -
31230 20 61 64 64 65 64 20 6e 65 77 20 73 75 62 63 6f   added new subco
31240 6d 6d 61 6e 64 73 3a 20 65 71 75 61 6c 2c 20 72  mmands: equal, r
31250 65 70 65 61 74 2c 20 6d 61 70 2c 20 69 73 2c 20  epeat, map, is, 
31260 72 65 70 6c 61 63 65 0a 20 20 20 20 2d 20 61 64  replace.    - ad
31270 64 65 64 20 2d 6c 65 6e 67 74 68 20 6f 70 74 69  ded -length opti
31280 6f 6e 20 74 6f 20 22 73 74 72 69 6e 67 20 63 6f  on to "string co
31290 6d 70 61 72 65 7c 65 71 75 61 6c 22 0a 20 20 20  mpare|equal".   
312a0 20 2d 20 61 64 64 65 64 20 2d 6e 6f 63 61 73 65   - added -nocase
312b0 20 6f 70 74 69 6f 6e 20 74 6f 20 22 73 74 72 69   option to "stri
312c0 6e 67 20 63 6f 6d 70 61 72 65 7c 65 71 75 61 6c  ng compare|equal
312d0 7c 6d 61 74 63 68 22 0a 20 20 20 20 2d 20 73 74  |match".    - st
312e0 72 69 6e 67 20 61 6e 64 20 6c 69 73 74 20 69 6e  ring and list in
312f0 64 69 63 65 73 20 63 61 6e 20 62 65 20 61 6e 20  dices can be an 
31300 69 6e 74 65 67 65 72 20 6f 72 20 65 6e 64 3f 2d  integer or end?-
31310 69 6e 74 65 67 65 72 3f 2e 0a 20 20 20 20 2d 20  integer?..    - 
31320 61 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 66  added optional f
31330 69 72 73 74 20 61 6e 64 20 6c 61 73 74 20 69 6e  irst and last in
31340 64 65 78 20 61 72 67 73 20 74 6f 20 73 74 72 69  dex args to stri
31350 6e 67 20 74 6f 75 70 70 65 72 2c 20 65 74 20 61  ng toupper, et a
31360 6c 2e 0a 53 65 65 20 74 68 65 20 73 74 72 69 6e  l..See the strin
31370 67 2e 6e 20 6d 61 6e 75 61 6c 20 65 6e 74 72 79  g.n manual entry
31380 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c   for more detail
31390 73 20 61 62 6f 75 74 20 74 68 65 20 6e 65 77 20  s about the new 
313a0 73 74 72 69 6e 67 0a 66 65 61 74 75 72 65 73 2e  string.features.
313b0 20 20 5b 42 75 67 3a 20 31 38 34 35 5d 20 28 73    [Bug: 1845] (s
313c0 74 61 6e 74 6f 6e 29 0a 0a 35 2f 36 2f 39 39 20  tanton)..5/6/99 
313d0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
313e0 64 65 64 20 54 63 6c 5f 55 74 66 4e 63 6d 70 20  ded Tcl_UtfNcmp 
313f0 61 6e 64 20 54 63 6c 5f 55 74 66 4e 63 61 73 65  and Tcl_UtfNcase
31400 63 6d 70 20 74 6f 20 6d 61 6b 65 20 55 74 66 0a  cmp to make Utf.
31410 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 69 73 69  string comparisi
31420 6f 6e 20 65 61 73 69 65 72 2e 20 28 73 74 61 6e  on easier. (stan
31430 74 6f 6e 29 0a 0a 35 2f 37 2f 39 39 20 28 62 75  ton)..5/7/99 (bu
31440 67 20 66 69 78 29 20 49 6d 70 72 6f 76 65 64 20  g fix) Improved 
31450 4f 53 2f 33 39 30 20 73 75 70 70 6f 72 74 2e 20  OS/390 support. 
31460 5b 42 75 67 3a 20 31 39 37 36 2c 20 31 39 39 37  [Bug: 1976, 1997
31470 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f 31  ] (stanton)..5/1
31480 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 43  2/99 (bug fix) C
31490 68 61 6e 67 65 64 20 57 69 6e 64 6f 77 73 20 69  hanged Windows i
314a0 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 63 6f  nitialization co
314b0 64 65 20 74 6f 20 61 76 6f 69 64 20 75 73 69 6e  de to avoid usin
314c0 67 0a 47 65 74 55 73 65 72 4e 61 6d 65 20 73 79  g.GetUserName sy
314d0 73 74 65 6d 20 63 61 6c 6c 20 69 6e 20 66 61 76  stem call in fav
314e0 6f 72 20 6f 66 20 74 68 65 20 65 6e 76 28 55 53  or of the env(US
314f0 45 52 4e 41 4d 45 29 20 76 61 72 69 61 62 6c 65  ERNAME) variable
31500 2e 20 20 54 68 69 73 0a 70 72 6f 76 69 64 65 73  .  This.provides
31510 20 61 20 73 69 67 6e 69 66 69 63 61 6e 74 20 73   a significant s
31520 74 61 72 74 75 70 20 73 70 65 65 64 20 69 6d 70  tartup speed imp
31530 72 6f 76 65 6d 65 6e 74 2e 20 28 73 74 61 6e 74  rovement. (stant
31540 6f 6e 29 0a 0a 35 2f 31 32 2f 39 39 20 28 62 75  on)..5/12/99 (bu
31550 67 20 66 69 78 29 20 52 65 70 6c 61 63 65 64 20  g fix) Replaced 
31560 74 68 65 20 70 65 72 2d 69 6e 74 65 72 70 72 65  the per-interpre
31570 74 65 72 20 72 65 67 65 78 70 20 63 61 63 68 65  ter regexp cache
31580 20 77 69 74 68 20 61 0a 70 65 72 2d 74 68 72 65   with a.per-thre
31590 61 64 20 63 61 63 68 65 2e 20 20 43 68 61 6e 67  ad cache.  Chang
315a0 65 64 20 74 68 65 20 52 65 67 65 78 70 20 6f 62  ed the Regexp ob
315b0 6a 65 63 74 20 74 6f 20 74 61 6b 65 20 61 64 76  ject to take adv
315c0 61 6e 74 61 67 65 20 6f 66 20 74 68 69 73 0a 65  antage of this.e
315d0 78 74 72 61 20 63 61 63 68 65 2e 20 20 41 64 64  xtra cache.  Add
315e0 65 64 20 61 20 72 65 66 65 72 65 6e 63 65 20 63  ed a reference c
315f0 6f 75 6e 74 20 74 6f 20 74 68 65 20 54 63 6c 52  ount to the TclR
31600 65 67 65 78 70 20 74 79 70 65 20 73 6f 20 72 65  egexp type so re
31610 67 65 78 70 73 0a 63 61 6e 20 62 65 20 73 68 61  gexps.can be sha
31620 72 65 64 20 62 79 20 6d 75 6c 74 69 70 6c 65 20  red by multiple 
31630 6f 62 6a 65 63 74 73 2e 20 20 52 65 6d 6f 76 65  objects.  Remove
31640 64 20 74 68 65 20 70 65 72 2d 69 6e 74 65 72 70  d the per-interp
31650 20 72 65 67 65 78 70 20 63 61 63 68 65 0a 66 72   regexp cache.fr
31660 6f 6d 20 74 68 65 20 69 6e 74 65 72 70 72 65 74  om the interpret
31670 65 72 2e 20 20 4e 6f 77 20 72 65 67 65 78 70 73  er.  Now regexps
31680 20 63 61 6e 20 62 65 20 75 73 65 64 20 77 69 74   can be used wit
31690 68 20 6e 6f 20 6e 65 65 64 20 66 6f 72 20 61 6e  h no need for an
316a0 0a 69 6e 74 65 72 70 72 65 74 65 72 2e 20 54 68  .interpreter. Th
316b0 69 73 20 73 65 74 20 6f 66 20 63 68 61 6e 67 65  is set of change
316c0 73 20 73 68 6f 75 6c 64 20 70 72 6f 76 69 64 65  s should provide
316d0 20 73 69 67 6e 69 66 69 63 61 6e 74 20 73 70 65   significant spe
316e0 65 64 0a 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20  ed.improvements 
316f0 66 6f 72 20 6d 61 6e 79 20 54 63 6c 20 73 63 72  for many Tcl scr
31700 69 70 74 73 2e 20 20 5b 42 75 67 3a 20 31 30 36  ipts.  [Bug: 106
31710 33 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f  3] (stanton)..5/
31720 31 34 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  14/99 (bug fix) 
31730 44 75 72 69 6e 69 6e 67 20 69 6e 69 74 69 61 6c  Durining initial
31740 69 7a 61 74 69 6f 6e 20 6f 6e 20 55 6e 69 78 2c  ization on Unix,
31750 20 54 63 6c 20 6e 6f 77 20 65 78 74 72 61 63 74   Tcl now extract
31760 73 20 74 68 65 0a 65 6e 63 6f 64 69 6e 67 20 73  s the.encoding s
31770 75 62 66 69 65 6c 64 20 66 72 6f 6d 20 74 68 65  ubfield from the
31780 20 4c 41 4e 47 2f 4c 43 5f 41 4c 4c 20 65 6e 76   LANG/LC_ALL env
31790 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c  ironment variabl
317a0 65 73 20 69 6e 20 63 61 73 65 73 0a 77 68 65 72  es in cases.wher
317b0 65 20 74 68 65 20 6c 6f 63 61 6c 65 20 69 73 20  e the locale is 
317c0 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 74 68 65  not found in the
317d0 20 62 75 69 6c 74 2d 69 6e 20 6c 6f 63 61 6c 65   built-in locale
317e0 20 74 61 62 6c 65 2e 20 20 49 74 20 61 6c 73 6f   table.  It also
317f0 0a 61 74 74 65 6d 70 74 73 20 74 6f 20 69 6e 69  .attempts to ini
31800 74 69 61 6c 69 7a 65 20 74 68 65 20 6c 6f 63 61  tialize the loca
31810 6c 65 20 73 75 62 73 79 73 74 65 6d 20 73 6f 20  le subsystem so 
31820 58 31 31 20 69 73 20 68 61 70 70 79 2e 20 5b 42  X11 is happy. [B
31830 75 67 3a 20 31 39 38 39 5d 0a 28 73 74 61 6e 74  ug: 1989].(stant
31840 6f 6e 29 0a 0a 35 2f 31 34 2f 39 39 20 28 62 75  on)..5/14/99 (bu
31850 67 20 66 69 78 29 20 41 70 70 6c 69 65 64 20 74  g fix) Applied t
31860 68 65 20 70 61 74 63 68 20 74 6f 20 66 69 78 20  he patch to fix 
31870 31 30 30 2d 79 65 61 72 20 61 6e 64 20 34 30 30  100-year and 400
31880 2d 79 65 61 72 0a 62 6f 75 6e 64 61 72 69 65 73  -year.boundaries
31890 20 69 6e 20 6c 65 61 70 20 79 65 61 72 20 63 6f   in leap year co
318a0 64 65 2c 20 66 72 6f 6d 20 49 73 61 61 63 20 48  de, from Isaac H
318b0 6f 6c 6c 61 6e 64 65 72 2e 20 20 5b 42 75 67 3a  ollander.  [Bug:
318c0 20 32 30 36 36 5d 20 28 72 65 64 6d 61 6e 29 0a   2066] (redman).
318d0 0a 35 2f 31 34 2f 39 39 20 28 62 75 67 20 66 69  .5/14/99 (bug fi
318e0 78 29 20 46 69 78 65 64 20 61 20 63 72 61 73 68  x) Fixed a crash
318f0 20 63 61 75 73 65 64 20 62 79 20 61 20 66 61 69   caused by a fai
31900 6c 75 72 65 20 74 6f 20 72 65 73 65 74 20 74 68  lure to reset th
31910 65 20 72 65 73 75 6c 74 0a 62 65 66 6f 72 65 20  e result.before 
31920 65 76 61 6c 75 61 74 69 6e 67 20 74 68 65 20 74  evaluating the t
31930 65 73 74 20 65 78 70 72 65 73 73 69 6f 6e 20 69  est expression i
31940 6e 20 61 6e 20 75 6e 63 6f 6d 70 69 6c 65 64 20  n an uncompiled 
31950 66 6f 72 0a 73 74 61 74 65 6d 65 6e 74 2e 20 28  for.statement. (
31960 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f 31 38 2f 39  stanton)..5/18/9
31970 39 20 28 62 75 67 20 66 69 78 29 20 4d 6f 64 69  9 (bug fix) Modi
31980 66 69 65 64 20 69 6e 69 74 69 61 6c 69 7a 61 74  fied initializat
31990 69 6f 6e 20 63 6f 64 65 20 6f 6e 20 57 69 6e 64  ion code on Wind
319a0 6f 77 73 20 74 6f 20 61 76 6f 69 64 0a 69 6e 68  ows to avoid.inh
319b0 65 72 65 6e 74 69 6e 67 20 63 6c 6f 73 65 64 20  erenting closed 
319c0 6f 72 20 69 6e 76 61 6c 69 64 20 63 68 61 6e 6e  or invalid chann
319d0 65 6c 73 2e 20 20 49 66 20 74 68 65 20 73 74 61  els.  If the sta
319e0 6e 64 61 72 64 20 69 6e 70 75 74 20 69 73 0a 61  ndard input is.a
319f0 6e 79 74 68 69 6e 67 20 6f 74 68 65 72 20 74 68  nything other th
31a00 61 6e 20 61 20 63 6f 6e 73 6f 6c 65 2c 20 66 69  an a console, fi
31a10 6c 65 2c 20 73 65 72 69 61 6c 20 70 6f 72 74 2c  le, serial port,
31a20 20 6f 72 20 70 69 70 65 2c 20 74 68 65 6e 20 77   or pipe, then w
31a30 65 20 66 61 6c 6c 0a 62 61 63 6b 20 74 6f 20 74  e fall.back to t
31a40 68 65 20 73 74 61 6e 64 61 72 64 20 54 6b 20 77  he standard Tk w
31a50 69 6e 64 6f 77 20 63 6f 6e 73 6f 6c 65 2e 20 28  indow console. (
31a60 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f 31 39 2f 39  stanton)..5/19/9
31a70 39 20 28 62 75 67 20 66 69 78 29 20 41 64 64 65  9 (bug fix) Adde
31a80 64 20 61 6e 20 65 78 74 65 72 6e 20 22 43 22 20  d an extern "C" 
31a90 62 6c 6f 63 6b 20 61 72 6f 75 6e 64 20 74 68 65  block around the
31aa0 20 65 6e 74 69 72 65 20 74 63 6c 2e 68 0a 68 65   entire tcl.h.he
31ab0 61 64 65 72 20 66 69 6c 65 20 74 6f 20 61 76 6f  ader file to avo
31ac0 69 64 20 43 2b 2b 20 6c 69 6e 6b 61 67 65 20 69  id C++ linkage i
31ad0 73 73 75 65 73 2e 20 28 72 65 64 6d 61 6e 29 0a  ssues. (redman).
31ae0 0a 35 2f 31 39 2f 39 39 20 28 6e 65 77 20 66 65  .5/19/99 (new fe
31af0 61 74 75 72 65 29 20 41 70 70 6c 69 65 64 20 4a  ature) Applied J
31b00 65 66 66 20 48 6f 62 62 27 73 20 70 61 74 63 68  eff Hobb's patch
31b10 20 74 6f 20 61 64 64 0a 54 63 6c 5f 53 74 72 69   to add.Tcl_Stri
31b20 6e 67 43 61 73 65 4d 61 74 63 68 20 74 6f 20 73  ngCaseMatch to s
31b30 75 70 70 6f 72 74 20 63 61 73 65 20 69 6e 73 65  upport case inse
31b40 6e 73 69 74 69 76 65 20 67 6c 6f 62 20 73 74 79  nsitive glob sty
31b50 6c 65 20 6d 61 74 63 68 69 6e 67 20 61 6e 64 0a  le matching and.
31b60 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 2a 20 63  Tcl_UniCharIs* c
31b70 68 61 72 61 63 74 65 72 20 63 6c 61 73 73 69 66  haracter classif
31b80 69 63 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e  ication function
31b90 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35 2f  s. (stanton)..5/
31ba0 32 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  20/99 (bug fix) 
31bb0 41 64 64 65 64 20 74 68 65 20 64 69 72 65 63 74  Added the direct
31bc0 6f 72 79 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74  ory containing t
31bd0 68 65 20 65 78 65 63 75 74 75 62 6c 65 20 61 6e  he executuble an
31be0 64 20 74 68 65 0a 2e 2e 2f 6c 69 62 20 64 69 72  d the.../lib dir
31bf0 65 63 74 6f 72 79 20 72 65 6c 61 74 69 76 65 20  ectory relative 
31c00 74 6f 20 74 68 61 74 20 74 6f 20 74 68 65 20 61  to that to the a
31c10 75 74 6f 5f 70 61 74 68 20 76 61 72 69 61 62 6c  uto_path variabl
31c20 65 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 2d 2d 2d  e. (redman)..---
31c30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
31c40 65 61 73 65 64 20 38 2e 31 2e 31 2c 20 4d 61 79  eased 8.1.1, May
31c50 20 32 35 2c 20 31 39 39 39 20 2d 2d 2d 2d 2d 2d   25, 1999 ------
31c60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
31c70 0a 0a 35 2f 32 31 2f 39 39 20 28 62 75 67 20 66  ..5/21/99 (bug f
31c80 69 78 29 20 46 69 78 65 64 20 6c 61 75 6e 63 68  ix) Fixed launch
31c90 69 6e 67 20 63 6f 6d 6d 61 6e 64 2e 63 6f 6d 20  ing command.com 
31ca0 6f 6e 20 57 69 6e 39 35 2f 39 38 2c 20 6e 6f 20  on Win95/98, no 
31cb0 6c 6f 6e 67 65 72 0a 68 61 6e 67 73 2e 20 5b 42  longer.hangs. [B
31cc0 75 67 3a 20 32 31 30 35 5d 20 28 72 65 64 6d 61  ug: 2105] (redma
31cd0 6e 29 0a 0a 35 2f 32 38 2f 39 39 20 28 62 75 67  n)..5/28/99 (bug
31ce0 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
31cf0 77 68 65 72 65 20 64 64 65 20 63 61 6c 6c 73 20  where dde calls 
31d00 77 65 72 65 20 62 65 69 6e 67 20 70 61 73 73 65  were being passe
31d10 64 20 61 6e 0a 69 6e 76 61 6c 69 64 20 64 64 65  d an.invalid dde
31d20 20 68 61 6e 64 6c 65 2e 20 5b 42 75 67 3a 20 32   handle. [Bug: 2
31d30 31 32 34 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  124] (stanton)..
31d40 36 2f 31 2f 39 39 20 20 28 62 75 67 20 66 69 78  6/1/99  (bug fix
31d50 29 20 53 6d 61 6c 6c 20 63 6f 6e 66 69 67 75 72  ) Small configur
31d60 65 2e 69 6e 20 70 61 74 63 68 65 73 2e 20 5b 42  e.in patches. [B
31d70 75 67 3a 20 32 31 32 31 5d 20 28 73 74 61 6e 74  ug: 2121] (stant
31d80 6f 6e 29 0a 0a 36 2f 31 2f 39 39 20 20 28 62 75  on)..6/1/99  (bu
31d90 67 20 66 69 78 29 20 41 70 70 6c 69 65 64 20 6c  g fix) Applied l
31da0 61 74 65 73 74 20 72 65 67 75 6c 61 72 20 65 78  atest regular ex
31db0 70 72 65 73 73 69 6f 6e 20 70 61 74 63 68 65 73  pression patches
31dc0 20 74 6f 20 66 69 78 20 61 6e 0a 69 6e 66 69 6e   to fix an.infin
31dd0 69 74 65 20 6c 6f 6f 70 20 62 75 67 20 61 6e 64  ite loop bug and
31de0 20 61 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72   add support for
31df0 20 74 65 73 74 69 6e 67 20 77 68 65 74 68 65 72   testing whether
31e00 20 61 20 73 74 72 69 6e 67 20 63 6f 75 6c 64 0a   a string could.
31e10 6d 61 74 63 68 20 77 69 74 68 20 61 64 64 69 74  match with addit
31e20 69 6f 6e 61 6c 20 69 6e 70 75 74 2e 20 5b 42 75  ional input. [Bu
31e30 67 3a 20 32 31 31 37 5d 20 28 73 74 61 6e 74 6f  g: 2117] (stanto
31e40 6e 29 0a 0a 36 2f 32 2f 39 39 20 20 28 62 75 67  n)..6/2/99  (bug
31e50 20 66 69 78 29 20 46 69 78 65 64 20 69 6e 63 6f   fix) Fixed inco
31e60 72 72 65 63 74 20 63 6f 6d 70 75 74 61 74 69 6f  rrect computatio
31e70 6e 20 6f 66 20 72 65 6c 61 74 69 76 65 20 6f 72  n of relative or
31e80 64 65 72 69 6e 67 20 69 6e 0a 55 74 66 20 63 61  dering in.Utf ca
31e90 73 65 2d 69 6e 73 65 6e 73 69 74 69 76 65 20 63  se-insensitive c
31ea0 6f 6d 70 61 72 69 73 6f 6e 2e 20 5b 42 75 67 3a  omparison. [Bug:
31eb0 20 32 31 33 35 5d 20 28 73 74 61 6e 74 6f 6e 29   2135] (stanton)
31ec0 0a 0a 36 2f 33 2f 39 39 20 20 28 62 75 67 20 66  ..6/3/99  (bug f
31ed0 69 78 29 20 46 78 69 65 64 20 62 75 67 20 77 68  ix) Fxied bug wh
31ee0 65 72 65 20 73 74 72 69 6e 67 20 65 71 75 61 6c  ere string equal
31ef0 2f 63 6f 6d 70 61 72 65 20 2d 6e 6f 63 61 73 65  /compare -nocase
31f00 0a 72 65 70 6f 72 74 65 64 20 77 72 6f 6e 67 20  .reported wrong 
31f10 72 65 73 75 6c 74 20 6f 6e 20 6e 75 6c 6c 20 73  result on null s
31f20 74 72 69 6e 67 73 2e 20 5b 42 75 67 3a 20 32 31  trings. [Bug: 21
31f30 33 38 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36  38] (stanton)..6
31f40 2f 34 2f 39 39 20 20 28 6e 65 77 20 66 65 61 74  /4/99  (new feat
31f50 75 72 65 29 20 57 69 6e 64 6f 77 73 20 62 75 69  ure) Windows bui
31f60 6c 64 20 6e 6f 77 20 75 73 65 73 20 43 79 67 77  ld now uses Cygw
31f70 69 6e 20 74 6f 6f 6c 73 20 70 6c 75 73 20 47 4e  in tools plus GN
31f80 55 0a 6d 61 6b 65 20 61 6e 64 20 61 75 74 6f 63  U.make and autoc
31f90 6f 6e 66 20 74 6f 20 62 75 69 6c 64 20 73 74 61  onf to build sta
31fa0 74 69 63 2f 64 79 6e 61 6d 69 63 20 61 6e 64 20  tic/dynamic and 
31fb0 64 65 62 75 67 2f 6e 6f 64 65 62 75 67 2e 20 28  debug/nodebug. (
31fc0 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 37 2f 39 39  stanton)..6/7/99
31fd0 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20    (new feature) 
31fe0 4f 70 74 69 6d 69 7a 65 64 20 73 74 72 69 6e 67  Optimized string
31ff0 20 69 6e 64 65 78 2c 20 6c 65 6e 67 74 68 2c 20   index, length, 
32000 72 61 6e 67 65 2c 20 61 6e 64 0a 61 70 70 65 6e  range, and.appen
32010 64 20 63 6f 6d 6d 61 6e 64 73 2e 20 41 64 64 65  d commands. Adde
32020 64 20 61 20 6e 65 77 20 55 6e 69 63 6f 64 65 20  d a new Unicode 
32030 6f 62 6a 65 63 74 20 74 79 70 65 2e 20 28 68 65  object type. (he
32040 72 73 68 65 79 29 0a 0a 36 2f 38 2f 39 39 20 20  rshey)..6/8/99  
32050 28 62 75 67 20 66 69 78 29 20 52 6f 6c 6c 65 64  (bug fix) Rolled
32060 20 62 61 63 6b 20 57 69 6e 64 6f 77 73 20 73 6f   back Windows so
32070 63 6b 65 74 20 64 72 69 76 65 72 20 74 6f 20 38  cket driver to 8
32080 2e 31 2e 30 0a 76 65 72 73 69 6f 6e 2e 20 28 73  .1.0.version. (s
32090 74 61 6e 74 6f 6e 29 0a 0a 36 2f 39 2f 39 39 20  tanton)..6/9/99 
320a0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
320b0 64 64 65 64 20 54 63 6c 5f 52 65 67 45 78 70 4d  dded Tcl_RegExpM
320c0 61 74 63 68 4f 62 6a 20 61 6e 64 20 54 63 6c 5f  atchObj and Tcl_
320d0 52 65 67 45 78 70 47 65 74 49 6e 66 6f 0a 74 6f  RegExpGetInfo.to
320e0 20 70 75 62 6c 69 63 20 54 63 6c 20 41 50 49 2c   public Tcl API,
320f0 20 74 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73   these functions
32100 20 61 72 65 20 6e 65 65 64 65 64 20 62 79 20 45   are needed by E
32110 78 70 65 63 74 2e 20 20 43 68 61 6e 67 65 64 0a  xpect.  Changed.
32120 74 6f 6f 6c 73 2f 67 65 6e 53 74 75 62 73 2e 74  tools/genStubs.t
32130 63 6c 20 74 6f 20 61 6c 77 61 79 73 20 77 72 69  cl to always wri
32140 74 65 20 6f 75 74 70 75 74 20 69 6e 20 4c 46 20  te output in LF 
32150 6d 6f 64 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  mode. (stanton).
32160 0a 36 2f 31 34 2f 39 39 20 28 6e 65 77 20 66 65  .6/14/99 (new fe
32170 61 74 75 72 65 29 20 4d 65 72 67 65 64 20 73 74  ature) Merged st
32180 72 69 6e 67 20 61 6e 64 20 55 6e 69 63 6f 64 65  ring and Unicode
32190 20 6f 62 6a 65 63 74 20 74 79 70 65 73 2e 20 20   object types.  
321a0 41 64 64 65 64 0a 6e 65 77 20 70 75 62 6c 69 63  Added.new public
321b0 20 54 63 6c 20 41 50 49 20 66 75 6e 63 74 69 6f   Tcl API functio
321c0 6e 73 3a 20 20 54 63 6c 5f 4e 65 77 55 6e 69 63  ns:  Tcl_NewUnic
321d0 6f 64 65 4f 62 6a 2c 20 54 63 6c 5f 53 65 74 55  odeObj, Tcl_SetU
321e0 6e 69 63 6f 64 65 4f 62 6a 2c 0a 54 63 6c 5f 47  nicodeObj,.Tcl_G
321f0 65 74 55 6e 69 63 6f 64 65 2c 20 54 63 6c 5f 47  etUnicode, Tcl_G
32200 65 74 55 6e 69 43 68 61 72 2c 20 54 63 6c 5f 47  etUniChar, Tcl_G
32210 65 74 43 68 61 72 4c 65 6e 67 74 68 2c 20 54 63  etCharLength, Tc
32220 6c 5f 47 65 74 52 61 6e 67 65 2c 0a 54 63 6c 5f  l_GetRange,.Tcl_
32230 41 70 70 65 6e 64 55 6e 69 63 6f 64 65 54 6f 4f  AppendUnicodeToO
32240 62 6a 2e 20 28 68 65 72 73 68 65 79 29 0a 0a 36  bj. (hershey)..6
32250 2f 31 36 2f 39 39 20 28 6e 65 77 20 66 65 61 74  /16/99 (new feat
32260 75 72 65 29 20 43 68 61 6e 67 65 64 20 74 6f 20  ure) Changed to 
32270 63 6f 6e 66 6f 72 6d 20 74 6f 20 54 45 41 20 73  conform to TEA s
32280 70 65 63 69 66 69 63 61 74 69 6f 6e 2c 20 61 64  pecification, ad
32290 64 65 64 0a 74 63 6c 2e 6d 34 20 61 6e 64 20 61  ded.tcl.m4 and a
322a0 63 6c 6f 63 61 6c 2e 6d 34 20 6d 61 63 72 6f 20  clocal.m4 macro 
322b0 6c 69 62 72 61 72 69 65 73 20 66 6f 72 20 63 6f  libraries for co
322c0 6e 66 69 67 75 72 65 2e 20 20 28 77 61 72 74 29  nfigure.  (wart)
322d0 0a 0a 36 2f 31 37 2f 39 39 20 28 6e 65 77 20 66  ..6/17/99 (new f
322e0 65 61 74 75 72 65 29 20 41 64 64 65 64 20 6e 65  eature) Added ne
322f0 77 20 72 65 67 65 78 70 20 69 6e 74 65 72 66 61  w regexp interfa
32300 63 65 73 3a 20 2d 65 78 70 61 6e 64 65 64 2c 20  ces: -expanded, 
32310 2d 6c 69 6e 65 2c 0a 2d 6c 69 6e 65 73 74 6f 70  -line,.-linestop
32320 2c 20 61 6e 64 20 2d 6c 69 6e 65 61 6e 63 68 6f  , and -lineancho
32330 72 20 73 77 69 74 63 68 65 73 2e 20 20 52 65 6e  r switches.  Ren
32340 61 6d 65 64 20 54 63 6c 5f 52 65 67 45 78 70 4d  amed Tcl_RegExpM
32350 61 74 63 68 4f 62 6a 20 74 6f 0a 54 63 6c 5f 52  atchObj to.Tcl_R
32360 65 67 45 78 70 45 78 65 63 4f 62 6a 20 61 6e 64  egExpExecObj and
32370 20 61 64 64 65 64 20 6e 65 77 20 54 63 6c 5f 52   added new Tcl_R
32380 65 67 45 78 70 4d 61 74 63 68 4f 62 6a 20 74 68  egExpMatchObj th
32390 61 74 20 69 73 20 65 71 75 69 76 61 6c 65 6e 74  at is equivalent
323a0 0a 74 6f 20 54 63 6c 5f 52 65 67 45 78 70 4d 61  .to Tcl_RegExpMa
323b0 74 63 68 2e 20 20 41 64 64 65 64 20 70 75 62 6c  tch.  Added publ
323c0 69 63 20 6d 61 63 72 6f 73 20 66 6f 72 20 72 65  ic macros for re
323d0 67 65 78 70 20 66 6c 61 67 73 2e 20 20 41 64 64  gexp flags.  Add
323e0 65 64 0a 52 45 47 5f 42 4f 53 4f 4e 4c 59 20 66  ed.REG_BOSONLY f
323f0 6c 61 67 20 74 6f 20 61 6c 6c 6f 77 20 45 78 70  lag to allow Exp
32400 65 63 74 20 74 6f 20 69 74 65 72 61 74 65 20 74  ect to iterate t
32410 68 72 6f 75 67 68 20 61 20 73 74 72 69 6e 67 20  hrough a string 
32420 61 6e 64 20 6f 6e 6c 79 0a 66 69 6e 64 20 6d 61  and only.find ma
32430 74 63 68 65 73 20 74 68 61 74 20 73 74 61 72 74  tches that start
32440 20 61 74 20 74 68 65 20 63 75 72 72 65 6e 74 20   at the current 
32450 70 6f 73 69 74 69 6f 6e 20 77 69 74 68 69 6e 20  position within 
32460 74 68 65 0a 73 74 72 69 6e 67 2e 20 28 73 74 61  the.string. (sta
32470 6e 74 6f 6e 29 0a 0a 36 2f 32 31 2f 39 39 20 28  nton)..6/21/99 (
32480 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 6d  bug fix) Fixed m
32490 65 6d 6f 72 79 20 6c 65 61 6b 20 69 6e 20 54 63  emory leak in Tc
324a0 6c 70 54 68 72 65 61 64 43 72 65 61 74 65 20 77  lpThreadCreate w
324b0 68 65 72 65 20 74 68 72 65 61 64 0a 61 74 74 72  here thread.attr
324c0 69 62 75 74 65 73 20 77 65 72 65 20 6e 6f 74 20  ibutes were not 
324d0 62 65 69 6e 67 20 72 65 6c 65 61 73 65 64 2e 20  being released. 
324e0 20 5b 42 75 67 3a 20 32 32 35 34 5d 20 28 73 74   [Bug: 2254] (st
324f0 61 6e 74 6f 6e 29 0a 0a 36 2f 32 33 2f 39 39 20  anton)..6/23/99 
32500 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 55 70  (new feature) Up
32510 64 61 74 65 64 20 55 6e 69 63 6f 64 65 20 63 68  dated Unicode ch
32520 61 72 61 63 74 65 72 20 74 61 62 6c 65 73 20 74  aracter tables t
32530 6f 20 72 65 66 6c 65 63 74 0a 55 6e 69 63 6f 64  o reflect.Unicod
32540 65 20 32 2e 31 20 64 61 74 61 2e 20 28 73 74 61  e 2.1 data. (sta
32550 6e 74 6f 6e 29 0a 0a 36 2f 32 35 2f 39 39 20 28  nton)..6/25/99 (
32560 6e 65 77 20 66 65 61 74 75 72 65 29 20 46 69 78  new feature) Fix
32570 65 64 20 62 75 67 73 20 69 6e 20 6e 6f 6e 2d 67  ed bugs in non-g
32580 72 65 65 64 79 20 71 75 61 6e 74 69 66 69 65 72  reedy quantifier
32590 73 20 66 6f 72 20 72 65 67 75 6c 61 72 0a 65 78  s for regular.ex
325a0 70 72 65 73 73 69 6f 6e 20 63 6f 64 65 2e 20 28  pression code. (
325b0 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 32 35 2f 39  stanton)..6/25/9
325c0 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  9 (new feature) 
325d0 41 64 64 65 64 20 69 6e 69 74 69 61 6c 20 69 6d  Added initial im
325e0 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20  plementation of 
325f0 6e 65 77 20 54 63 6c 20 74 65 73 74 0a 68 61 72  new Tcl test.har
32600 6e 65 73 73 20 70 61 63 6b 61 67 65 2e 20 20 4d  ness package.  M
32610 6f 64 69 66 69 65 64 20 74 65 73 74 20 66 69 6c  odified test fil
32620 65 73 20 74 6f 20 75 73 65 20 6e 65 77 20 74 63  es to use new tc
32630 6c 74 65 73 74 20 70 61 63 6b 61 67 65 2e 0a 28  ltest package..(
32640 6a 65 6e 6e 29 0a 0a 36 2f 32 36 2f 39 39 20 28  jenn)..6/26/99 (
32650 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 70 70  new feature) App
32660 6c 69 65 64 20 70 61 74 63 68 20 66 72 6f 6d 20  lied patch from 
32670 50 65 74 65 72 20 48 61 72 64 69 65 20 74 6f 20  Peter Hardie to 
32680 61 64 64 20 70 6f 6b 65 0a 63 6f 6d 6d 61 6e 64  add poke.command
32690 20 74 6f 20 64 64 65 20 61 6e 64 20 63 68 61 6e   to dde and chan
326a0 67 65 64 20 74 68 65 20 64 64 65 20 70 61 63 6b  ged the dde pack
326b0 61 67 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62  age version numb
326c0 65 72 20 74 6f 0a 31 2e 31 2e 20 28 72 65 64 6d  er to.1.1. (redm
326d0 61 6e 29 0a 0a 36 2f 32 38 2f 39 39 20 28 62 75  an)..6/28/99 (bu
326e0 67 20 66 69 78 29 20 41 70 70 6c 69 65 64 20 70  g fix) Applied p
326f0 61 74 63 68 20 66 72 6f 6d 20 50 65 74 65 72 20  atch from Peter 
32700 48 61 72 64 69 65 20 74 6f 20 66 69 78 20 70 72  Hardie to fix pr
32710 6f 62 6c 65 6d 20 69 6e 0a 54 63 6c 5f 47 65 74  oblem in.Tcl_Get
32720 49 6e 64 65 78 46 72 6f 6d 4f 62 6a 28 29 20 77  IndexFromObj() w
32730 68 65 6e 20 74 68 65 20 6b 65 79 20 62 65 69 6e  hen the key bein
32740 67 20 70 61 73 73 65 64 20 69 73 20 74 68 65 20  g passed is the 
32750 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 5b 42  empty string..[B
32760 75 67 3a 20 31 37 33 38 5d 20 28 72 65 64 6d 61  ug: 1738] (redma
32770 6e 29 0a 0a 36 2f 32 39 2f 39 39 20 28 6e 65 77  n)..6/29/99 (new
32780 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
32790 6f 70 74 69 6f 6e 73 20 74 6f 20 74 63 6c 74 65  options to tclte
327a0 73 74 20 70 61 63 6b 61 67 65 3a 20 2d 70 72 65  st package: -pre
327b0 73 65 72 76 65 63 6f 72 65 2c 0a 2d 6c 69 6d 69  servecore,.-limi
327c0 74 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 2d 68  tconstraints, -h
327d0 65 6c 70 2c 20 2d 66 69 6c 65 2c 20 2d 6e 6f 74  elp, -file, -not
327e0 66 69 6c 65 2c 20 61 6e 64 20 66 6c 61 67 73 2e  file, and flags.
327f0 20 20 28 6a 65 6e 6e 29 0a 0a 37 2f 33 2f 39 39    (jenn)..7/3/99
32800 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20    (new feature) 
32810 43 68 61 6e 67 65 64 20 70 61 72 73 69 6e 67 20  Changed parsing 
32820 6f 66 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65  of variable name
32830 73 20 74 6f 20 61 6c 6c 6f 77 20 65 6d 70 74 79  s to allow empty
32840 0a 61 72 72 61 79 20 6e 61 6d 65 73 2e 20 20 4e  .array names.  N
32850 6f 77 20 22 24 28 66 6f 6f 29 22 20 69 73 20 61  ow "$(foo)" is a
32860 20 76 61 72 69 61 62 6c 65 20 72 65 66 65 72 65   variable refere
32870 6e 63 65 2e 20 20 50 72 65 76 69 6f 75 73 6c 79  nce.  Previously
32880 20 79 6f 75 0a 68 61 64 20 74 6f 20 75 73 65 20   you.had to use 
32890 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6e 65 20 24  something line $
328a0 3a 3a 28 66 6f 6f 29 2c 20 77 68 69 63 68 20 69  ::(foo), which i
328b0 73 20 73 6c 6f 77 65 72 2e 20 20 54 68 69 73 20  s slower.  This 
328c0 63 68 61 6e 67 65 20 77 61 73 0a 72 65 71 75 65  change was.reque
328d0 73 74 65 64 20 62 79 20 4a 65 61 6e 2d 4c 75 63  sted by Jean-Luc
328e0 20 46 6f 6e 74 61 69 6e 65 20 66 6f 72 20 68 69   Fontaine for hi
328f0 73 20 53 54 4f 4f 4f 50 20 70 61 63 6b 61 67 65  s STOOOP package
32900 2e 20 28 77 65 6c 63 68 29 0a 0a 37 2f 33 2f 39  . (welch)..7/3/9
32910 39 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  9  (new feature)
32920 20 41 64 64 65 64 20 54 63 6c 5f 53 65 74 4e 6f   Added Tcl_SetNo
32930 74 69 66 69 65 72 20 28 70 75 62 6c 69 63 20 41  tifier (public A
32940 50 49 29 20 61 6e 64 0a 61 73 73 6f 63 69 61 74  PI) and.associat
32950 65 64 20 68 6f 6f 6b 20 70 6f 69 6e 74 73 20 69  ed hook points i
32960 6e 20 74 68 65 20 6e 6f 74 69 66 69 65 72 73 20  n the notifiers 
32970 74 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 72 65  to be able to re
32980 70 6c 61 63 65 20 74 68 65 0a 6e 6f 74 69 66 69  place the.notifi
32990 65 72 20 63 61 6c 6c 73 20 61 74 20 72 75 6e 74  er calls at runt
329a0 69 6d 65 2e 20 54 68 65 20 58 74 20 6e 6f 74 69  ime. The Xt noti
329b0 66 69 65 72 20 61 6e 64 20 74 65 73 74 20 70 72  fier and test pr
329c0 6f 67 72 61 6d 20 75 73 65 20 74 68 69 73 0a 68  ogram use this.h
329d0 6f 6f 6b 2e 20 20 28 77 65 6c 63 68 29 0a 0a 37  ook.  (welch)..7
329e0 2f 33 2f 39 39 20 20 28 6e 65 77 20 66 65 61 74  /3/99  (new feat
329f0 75 72 65 29 20 41 64 64 65 64 20 61 20 6e 65 77  ure) Added a new
32a00 20 76 61 72 69 61 6e 74 20 6f 66 20 74 68 65 20   variant of the 
32a10 22 54 72 66 20 63 6f 72 65 20 70 61 74 63 68 22  "Trf core patch"
32a20 20 66 72 6f 6d 0a 41 6e 64 72 65 61 73 20 4b 75   from.Andreas Ku
32a30 70 72 69 65 73 20 74 68 61 74 20 61 64 64 73 20  pries that adds 
32a40 6e 65 77 20 43 20 41 50 49 73 20 54 63 6c 5f 53  new C APIs Tcl_S
32a50 74 61 63 6b 43 68 61 6e 6e 65 6c 2c 0a 54 63 6c  tackChannel,.Tcl
32a60 5f 55 6e 73 74 61 63 6b 43 68 61 6e 6e 65 6c 2c  _UnstackChannel,
32a70 20 61 6e 64 20 54 63 6c 5f 47 65 74 53 74 61 63   and Tcl_GetStac
32a80 6b 65 64 43 68 61 6e 6e 65 6c 2e 20 20 54 68 69  kedChannel.  Thi
32a90 73 20 61 6c 6c 6f 77 73 20 74 68 65 20 54 72 66  s allows the Trf
32aa0 0a 65 78 74 65 6e 73 69 6f 6e 20 74 6f 20 77 6f  .extension to wo
32ab0 72 6b 20 77 69 74 68 6f 75 74 20 61 70 70 6c 79  rk without apply
32ac0 69 6e 67 20 70 61 74 63 68 65 73 20 74 6f 20 74  ing patches to t
32ad0 68 65 20 54 63 6c 20 63 6f 72 65 2e 20 28 77 65  he Tcl core. (we
32ae0 6c 63 68 29 0a 0a 37 2f 36 2f 39 39 20 20 28 6e  lch)..7/6/99  (n
32af0 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
32b00 64 20 2d 74 69 6d 65 6f 75 74 20 6f 70 74 69 6f  d -timeout optio
32b10 6e 20 74 6f 20 68 74 74 70 2e 74 63 6c 20 74 6f  n to http.tcl to
32b20 20 68 61 6e 64 6c 65 0a 74 69 6d 65 6f 75 74 73   handle.timeouts
32b30 20 74 68 61 74 20 6f 63 63 75 72 20 64 75 72 69   that occur duri
32b40 6e 67 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 61 74  ng connection at
32b50 74 65 6d 70 74 73 20 74 6f 20 68 6f 73 74 73 20  tempts to hosts 
32b60 74 68 61 74 20 61 72 65 0a 64 6f 77 6e 2e 20 28  that are.down. (
32b70 77 65 6c 63 68 29 0a 0a 37 2f 36 2f 39 39 20 20  welch)..7/6/99  
32b80 28 62 75 67 20 66 69 78 29 20 41 70 70 6c 69 65  (bug fix) Applie
32b90 64 20 6e 65 77 20 69 6d 70 6c 65 6d 65 6e 74 61  d new implementa
32ba0 74 69 6f 6e 20 6f 66 20 74 68 65 20 57 69 6e 64  tion of the Wind
32bb0 6f 77 73 20 73 65 72 69 61 6c 0a 70 6f 72 74 20  ows serial.port 
32bc0 64 72 69 76 65 72 20 66 72 6f 6d 20 52 6f 6c 66  driver from Rolf
32bd0 20 53 63 68 72 6f 65 64 74 65 72 20 74 68 61 74   Schroedter that
32be0 20 66 69 78 65 73 20 72 65 61 64 69 6e 67 20 6f   fixes reading o
32bf0 6e 6c 79 20 6f 6e 65 20 62 79 74 65 20 66 72 6f  nly one byte fro
32c00 6d 0a 74 68 65 20 70 6f 72 74 20 61 74 20 61 20  m.the port at a 
32c10 74 69 6d 65 2e 20 20 55 73 65 73 20 70 6f 6c 6c  time.  Uses poll
32c20 69 6e 67 20 65 76 65 72 79 20 31 30 6d 73 20 74  ing every 10ms t
32c30 6f 20 69 6d 70 6c 65 6d 65 6e 74 0a 66 69 6c 65  o implement.file
32c40 65 76 65 6e 74 73 2e 20 5b 42 75 67 3a 20 31 39  events. [Bug: 19
32c50 38 30 20 32 32 31 37 5d 20 28 72 65 64 6d 61 6e  80 2217] (redman
32c60 29 0a 0a 37 2f 38 2f 39 39 20 20 28 62 75 67 20  )..7/8/99  (bug 
32c70 66 69 78 29 20 41 70 70 6c 69 65 64 20 66 69 78  fix) Applied fix
32c80 20 66 6f 72 20 62 75 67 20 69 6e 20 44 46 41 20   for bug in DFA 
32c90 73 74 61 74 65 20 63 61 63 68 69 6e 67 20 75 6e  state caching un
32ca0 64 65 72 0a 6c 6f 6f 6b 61 68 65 61 64 20 63 6f  der.lookahead co
32cb0 6e 64 69 74 69 6f 6e 73 20 28 72 65 67 75 6c 61  nditions (regula
32cc0 72 20 65 78 70 72 65 73 73 69 6f 6e 73 29 2e 20  r expressions). 
32cd0 20 5b 42 75 67 3a 20 32 33 31 38 5d 20 28 73 74   [Bug: 2318] (st
32ce0 61 6e 74 6f 6e 29 0a 0a 37 2f 38 2f 39 39 20 20  anton)..7/8/99  
32cf0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
32d00 62 75 67 20 69 6e 20 73 74 72 69 6e 67 20 72 61  bug in string ra
32d10 6e 67 65 20 62 6f 75 6e 64 73 20 63 68 65 63 6b  nge bounds check
32d20 69 6e 67 0a 63 6f 64 65 2e 20 28 73 74 61 6e 74  ing.code. (stant
32d30 6f 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  on)..-----------
32d40 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  ---- Released 8.
32d50 32 62 31 2c 20 4a 75 6c 79 20 31 34 2c 20 31 39  2b1, July 14, 19
32d60 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  99 -------------
32d70 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 37 2f 31 36 2f  ---------..7/16/
32d80 39 39 20 28 62 75 67 20 66 69 78 29 20 41 64 64  99 (bug fix) Add
32d90 65 64 20 54 63 6c 5f 53 65 74 4e 6f 74 69 66 69  ed Tcl_SetNotifi
32da0 65 72 20 74 6f 20 73 74 75 62 20 74 61 62 6c 65  er to stub table
32db0 2e 20 5b 42 75 67 3a 20 32 33 36 34 5d 0a 41 64  . [Bug: 2364].Ad
32dc0 64 65 64 20 63 68 65 63 6b 20 66 6f 72 20 41 6c  ded check for Al
32dd0 70 68 61 2f 4c 69 6e 75 78 20 74 6f 20 63 6f 72  pha/Linux to cor
32de0 72 65 63 74 20 74 68 65 20 49 45 45 45 20 20 66  rect the IEEE  f
32df0 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 66 6c  loating point fl
32e00 61 67 2c 0a 70 61 74 63 68 20 66 72 6f 6d 20 44  ag,.patch from D
32e10 6f 6e 20 50 6f 72 74 65 72 2e 20 28 72 65 64 6d  on Porter. (redm
32e20 61 6e 29 0a 0a 37 2f 32 30 2f 39 39 20 28 62 75  an)..7/20/99 (bu
32e30 67 20 66 69 78 29 20 4d 65 72 67 65 64 20 38 2e  g fix) Merged 8.
32e40 30 2e 35 20 63 6f 64 65 20 74 6f 20 68 61 6e 64  0.5 code to hand
32e50 6c 65 20 74 63 6c 5f 6c 69 62 72 61 72 79 20 70  le tcl_library p
32e60 72 6f 70 65 72 6c 79 2c 0a 61 6c 73 6f 20 66 69  roperly,.also fi
32e70 78 65 64 20 61 20 62 75 67 20 74 68 61 74 20 63  xed a bug that c
32e80 61 75 73 65 64 20 54 43 4c 5f 4c 49 42 52 41 52  aused TCL_LIBRAR
32e90 59 20 74 6f 20 62 65 20 69 67 6e 6f 72 65 64 2e  Y to be ignored.
32ea0 20 28 68 65 72 73 68 65 79 29 0a 0a 37 2f 32 31   (hershey)..7/21
32eb0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 49 6d  /99 (bug fix) Im
32ec0 70 6c 65 6d 65 6e 74 65 64 20 6d 6f 64 69 66 69  plemented modifi
32ed0 65 64 20 73 6f 63 6b 65 74 20 64 72 69 76 65 72  ed socket driver
32ee0 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 74 68 61   for Windows tha
32ef0 74 0a 75 73 65 73 20 61 20 74 68 72 65 61 64 20  t.uses a thread 
32f00 74 6f 20 6d 61 6e 61 67 65 20 74 68 65 20 73 6f  to manage the so
32f10 63 6b 65 74 20 65 76 65 6e 74 20 77 69 6e 64 6f  cket event windo
32f20 77 2e 20 20 43 6f 64 65 20 77 6f 72 6b 73 20 74  w.  Code works t
32f30 68 65 20 73 61 6d 65 0a 6f 6e 20 61 6c 6c 20 73  he same.on all s
32f40 75 70 70 6f 72 74 65 64 20 76 65 72 73 69 6f 6e  upported version
32f50 73 20 6f 66 20 57 69 6e 64 6f 77 73 20 61 6e 64  s of Windows and
32f60 20 77 61 73 20 62 61 73 65 64 20 6f 6e 20 6f 72   was based on or
32f70 69 67 69 6e 61 6c 20 38 2e 31 2e 30 0a 63 6f 64  iginal 8.1.0.cod
32f80 65 2e 20 20 5b 42 75 67 3a 20 32 31 37 38 20 32  e.  [Bug: 2178 2
32f90 32 35 36 20 32 32 35 39 20 32 33 32 39 20 32 33  256 2259 2329 23
32fa0 32 33 20 32 33 35 35 5d 20 28 72 65 64 6d 61 6e  23 2355] (redman
32fb0 29 0a 0a 37 2f 32 31 2f 39 39 20 28 6e 65 77 20  )..7/21/99 (new 
32fc0 66 65 61 74 75 72 65 29 20 41 70 70 6c 69 65 64  feature) Applied
32fd0 20 70 61 74 63 68 20 66 72 6f 6d 20 52 6f 6c 66   patch from Rolf
32fe0 20 53 63 68 72 6f 65 64 74 65 72 20 74 6f 20 61   Schroedter to a
32ff0 64 64 0a 2d 70 6f 6c 6c 69 6e 74 65 72 76 61 6c  dd.-pollinterval
33000 20 6f 70 74 69 6f 6e 20 74 6f 20 66 63 6f 6e 66   option to fconf
33010 69 67 75 72 65 20 66 6f 72 20 57 69 6e 64 6f 77  igure for Window
33020 73 20 73 65 72 69 61 6c 20 70 6f 72 74 73 2e 20  s serial ports. 
33030 20 41 6c 6c 6f 77 73 0a 74 68 65 20 6d 61 78 62   Allows.the maxb
33040 6c 6f 63 6b 74 69 6d 65 20 74 6f 20 62 65 20 6d  locktime to be m
33050 6f 64 69 66 69 65 64 20 74 6f 20 63 6f 6e 74 72  odified to contr
33060 6f 6c 20 68 6f 77 20 6f 66 74 65 6e 20 73 65 72  ol how often ser
33070 69 61 6c 20 70 6f 72 74 73 20 61 72 65 0a 63 68  ial ports are.ch
33080 65 63 6b 65 64 20 66 6f 72 20 66 69 6c 65 65 76  ecked for fileev
33090 65 6e 74 73 2e 20 20 41 6c 73 6f 20 61 64 64 65  ents.  Also adde
330a0 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20  d documentation 
330b0 66 6f 72 20 5c 5c 2e 5c 63 6f 6d 58 0a 6e 6f 74  for \\.\comX.not
330c0 61 74 69 6f 6e 20 66 6f 72 20 6f 70 65 6e 69 6e  ation for openin
330d0 67 20 73 65 72 69 61 6c 20 70 6f 72 74 73 20 6f  g serial ports o
330e0 6e 20 57 69 6e 64 6f 77 73 2e 20 20 28 72 65 64  n Windows.  (red
330f0 6d 61 6e 29 0a 0a 37 2f 32 31 2f 39 39 20 28 62  man)..7/21/99 (b
33100 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
33110 41 50 49 73 20 69 6e 20 73 74 75 62 20 74 61 62  APIs in stub tab
33120 6c 65 73 20 74 6f 20 75 73 65 20 22 75 6e 73 69  les to use "unsi
33130 67 6e 65 64 20 6c 6f 6e 67 22 0a 69 6e 73 74 65  gned long".inste
33140 61 64 20 6f 66 20 74 68 65 20 70 6c 61 74 66 6f  ad of the platfo
33150 72 6d 2d 73 70 65 63 69 66 69 63 20 22 73 69 7a  rm-specific "siz
33160 65 5f 74 22 2c 20 70 72 69 6d 61 72 69 6c 79 20  e_t", primarily 
33170 61 66 74 65 72 20 53 75 6e 4f 53 20 34 0a 75 73  after SunOS 4.us
33180 65 72 73 20 63 6f 75 6c 64 20 6e 6f 20 6c 6f 6e  ers could no lon
33190 67 65 72 20 63 6f 6d 70 69 6c 65 2e 20 28 72 65  ger compile. (re
331a0 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39 20 28  dman)..7/22/99 (
331b0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63  bug fix) Fixed c
331c0 72 61 73 68 69 6e 67 20 64 75 72 69 6e 67 20 22  rashing during "
331d0 61 72 72 61 79 20 73 65 74 20 61 28 62 29 20 7b  array set a(b) {
331e0 7d 22 2e 0a 5b 42 75 67 3a 20 32 34 32 37 5d 20  }"..[Bug: 2427] 
331f0 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39  (redman)..7/22/9
33200 39 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  9 (bug fix) The 
33210 69 6e 73 74 61 6c 6c 2d 73 68 20 73 63 72 69 70  install-sh scrip
33220 74 20 6d 75 73 74 20 62 65 20 67 69 76 65 6e 20  t must be given 
33230 65 78 65 63 75 74 65 0a 70 65 72 6d 69 73 73 69  execute.permissi
33240 6f 6e 73 20 70 72 69 6f 72 20 74 6f 20 72 75 6e  ons prior to run
33250 6e 69 6e 67 2e 20 20 5b 42 75 67 3a 20 32 34 31  ning.  [Bug: 241
33260 33 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32  3] (redman)..7/2
33270 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41  2/99 (bug fix) A
33280 70 70 6c 69 65 64 20 70 61 74 63 68 20 66 72 6f  pplied patch fro
33290 6d 20 55 6c 72 69 63 68 20 52 69 6e 67 20 74 6f  m Ulrich Ring to
332a0 20 72 65 6d 6f 76 65 20 41 4e 53 49 2d 73 74 79   remove ANSI-sty
332b0 6c 65 0a 70 72 6f 74 6f 74 79 70 65 73 20 69 6e  le.prototypes in
332c0 20 74 68 65 20 63 6f 64 65 2e 20 20 5b 42 75 67   the code.  [Bug
332d0 3a 20 32 33 39 31 5d 20 28 72 65 64 6d 61 6e 29  : 2391] (redman)
332e0 0a 0a 37 2f 32 32 2f 39 39 20 28 62 75 67 20 66  ..7/22/99 (bug f
332f0 69 78 29 20 41 64 64 65 64 20 23 69 66 20 62 6c  ix) Added #if bl
33300 6f 63 6b 73 20 61 72 6f 75 6e 64 20 23 69 6e 63  ocks around #inc
33310 6c 75 64 65 73 20 6f 66 20 73 79 73 2f 2a 2e 68  ludes of sys/*.h
33320 20 68 65 61 64 65 72 0a 66 69 6c 65 73 2c 20 74   header.files, t
33330 6f 20 61 6c 6c 6f 77 20 61 6e 20 65 78 74 65 6e  o allow an exten
33340 73 69 6f 6e 20 61 75 74 68 6f 72 20 6f 6e 20 57  sion author on W
33350 69 6e 64 6f 77 73 20 74 6f 20 75 73 65 20 74 68  indows to use th
33360 65 20 4d 65 74 72 6f 57 65 72 6b 73 0a 63 6f 6d  e MetroWerks.com
33370 70 69 6c 65 72 2e 20 5b 42 75 67 3a 20 32 33 38  piler. [Bug: 238
33380 35 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32  5] (redman)..7/2
33390 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46  2/99 (bug fix) F
333a0 69 78 65 64 20 72 75 6e 6e 69 6e 67 20 74 68 65  ixed running the
333b0 20 73 61 66 65 2e 74 65 73 74 20 74 65 73 74 20   safe.test test 
333c0 73 75 69 74 65 2c 20 6f 6e 65 20 63 68 61 6e 67  suite, one chang
333d0 65 0a 74 6f 20 74 68 65 20 57 69 6e 64 6f 77 73  e.to the Windows
333e0 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20   Makefile.in to 
333f0 66 69 78 20 70 61 74 68 73 20 61 6e 64 20 61 6e  fix paths and an
33400 6f 74 68 65 72 20 69 6e 20 73 61 66 65 2e 74 65  other in safe.te
33410 73 74 20 74 6f 0a 63 68 65 63 6b 20 66 6f 72 20  st to.check for 
33420 74 68 65 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d  the tcl_platform
33430 28 74 68 72 65 61 64 65 64 29 20 76 61 72 69 61  (threaded) varia
33440 62 6c 65 20 70 72 6f 70 65 72 6c 79 2e 20 28 72  ble properly. (r
33450 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39 20  edman)..7/22/99 
33460 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
33470 68 61 6e 67 69 6e 67 20 69 6e 20 6e 65 77 20 57  hanging in new W
33480 69 6e 33 32 20 73 6f 63 6b 65 74 20 64 72 69 76  in32 socket driv
33490 65 72 20 77 69 74 68 0a 74 68 72 65 61 64 73 20  er with.threads 
334a0 65 6e 61 62 6c 65 64 2e 20 28 72 65 64 6d 61 6e  enabled. (redman
334b0 29 0a 0a 37 2f 32 36 2f 39 39 20 28 62 75 67 20  )..7/26/99 (bug 
334c0 66 69 78 29 20 46 69 78 65 64 20 74 65 72 6d 69  fix) Fixed termi
334d0 6e 61 74 69 6e 67 20 6f 66 20 68 65 6c 70 65 72  nating of helper
334e0 20 74 68 72 65 61 64 73 20 62 79 20 68 6f 6c 64   threads by hold
334f0 69 6e 67 20 61 6e 79 0a 6d 75 74 65 78 65 73 20  ing any.mutexes 
33500 66 72 6f 6d 20 74 68 65 20 70 72 69 6d 61 72 79  from the primary
33510 20 74 68 72 65 61 64 20 77 68 69 6c 65 20 77 61   thread while wa
33520 69 74 69 6e 67 20 66 6f 72 20 74 68 65 20 68 65  iting for the he
33530 6c 70 65 72 20 74 68 72 65 61 64 20 74 6f 0a 74  lper thread to.t
33540 65 72 6d 69 6e 61 74 65 2e 20 20 46 69 78 65 73  erminate.  Fixes
33550 20 64 75 61 6c 2d 43 50 55 20 57 69 6e 4e 54 20   dual-CPU WinNT 
33560 68 61 6e 67 73 2c 20 6f 6e 6c 79 20 6f 6e 65 20  hangs, only one 
33570 72 61 72 65 20 73 70 6f 72 61 64 69 63 20 68 61  rare sporadic ha
33580 6e 67 0a 74 68 61 74 20 73 74 69 6c 6c 20 65 78  ng.that still ex
33590 69 73 74 73 20 77 69 74 68 20 64 75 61 6c 2d 43  ists with dual-C
335a0 50 55 20 57 69 6e 4e 54 2e 20 20 41 6c 73 6f 20  PU WinNT.  Also 
335b0 66 69 78 65 64 20 74 65 73 74 20 63 61 73 65 73  fixed test cases
335c0 20 73 6f 20 74 68 61 74 0a 74 68 65 79 20 77 6f   so that.they wo
335d0 75 6c 64 20 6e 6f 74 20 64 65 70 65 6e 64 20 61  uld not depend a
335e0 73 20 6d 75 63 68 20 6f 6e 20 74 69 6d 69 6e 67  s much on timing
335f0 20 66 6f 72 20 64 75 61 6c 2d 43 50 55 20 57 69   for dual-CPU Wi
33600 6e 4e 54 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 37  nNT. (redman)..7
33610 2f 32 37 2f 39 39 20 28 62 75 67 20 66 69 78 29  /27/99 (bug fix)
33620 20 53 6f 6d 65 20 74 65 73 74 20 73 75 69 74 65   Some test suite
33630 20 63 6c 65 61 6e 75 70 2e 20 28 6a 65 6e 6e 29   cleanup. (jenn)
33640 0a 0a 37 2f 32 39 2f 39 39 20 28 62 75 67 20 66  ..7/29/99 (bug f
33650 69 78 29 20 41 70 70 6c 69 65 64 20 70 61 74 63  ix) Applied patc
33660 68 20 74 6f 20 66 69 78 20 74 79 70 6f 20 69 6e  h to fix typo in
33670 20 2e 53 48 20 4e 41 4d 45 20 6c 69 6e 65 20 69   .SH NAME line i
33680 6e 0a 64 6f 63 2f 45 6e 63 6f 64 69 6e 67 2e 6e  n.doc/Encoding.n
33690 20 5b 42 75 67 3a 20 32 34 35 31 5d 2e 20 20 41   [Bug: 2451].  A
336a0 70 70 6c 69 65 64 20 70 61 74 63 68 20 74 6f 20  pplied patch to 
336b0 61 76 6f 69 64 20 6c 69 6e 6b 69 6e 67 20 70 61  avoid linking pa
336c0 63 6b 2e 6e 20 74 6f 0a 70 61 63 6b 2d 6f 6c 64  ck.n to.pack-old
336d0 2e 6e 20 5b 42 75 67 3a 20 32 34 36 39 5d 2e 20  .n [Bug: 2469]. 
336e0 50 61 74 63 68 65 73 20 66 72 6f 6d 20 44 6f 6e  Patches from Don
336f0 20 50 6f 72 74 65 72 2e 20 28 72 65 64 6d 61 6e   Porter. (redman
33700 29 0a 0a 37 2f 32 39 2f 39 39 20 28 62 75 67 20  )..7/29/99 (bug 
33710 66 69 78 29 20 41 6c 6c 6f 77 20 74 63 6c 20 74  fix) Allow tcl t
33720 6f 20 6f 70 65 6e 20 43 4f 4e 20 61 6e 64 20 4e  o open CON and N
33730 55 4c 2c 20 65 76 65 6e 20 66 6f 72 20 72 65 64  UL, even for red
33740 69 72 65 63 74 69 6f 6e 0a 6f 66 20 73 74 64 20  irection.of std 
33750 63 68 61 6e 6e 65 6c 73 2e 20 20 5b 42 75 67 3a  channels.  [Bug:
33760 20 32 33 39 33 20 32 33 39 32 20 32 32 30 39 20   2393 2392 2209 
33770 32 34 35 38 5d 20 28 72 65 64 6d 61 6e 29 0a 0a  2458] (redman)..
33780 37 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  7/30/99 (bug fix
33790 29 20 41 70 70 6c 69 65 64 20 66 69 78 65 64 20  ) Applied fixed 
337a0 54 72 66 20 70 61 74 63 68 20 66 72 6f 6d 20 41  Trf patch from A
337b0 6e 64 72 65 61 73 20 4b 75 70 72 69 65 73 2e 0a  ndreas Kupries..
337c0 5b 42 75 67 3a 20 32 33 38 36 5d 20 28 68 6f 62  [Bug: 2386] (hob
337d0 62 73 29 0a 0a 37 2f 33 30 2f 39 39 20 28 62 75  bs)..7/30/99 (bu
337e0 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
337f0 20 69 6e 20 69 6e 66 6f 20 63 6f 6d 70 6c 65 74   in info complet
33800 65 2e 20 5b 42 75 67 3a 20 32 33 38 33 20 32 34  e. [Bug: 2383 24
33810 36 36 5d 20 28 68 6f 62 62 73 29 0a 0a 37 2f 33  66] (hobbs)..7/3
33820 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41  0/99 (bug fix) A
33830 70 70 6c 69 65 64 20 70 61 74 63 68 20 74 6f 20  pplied patch to 
33840 66 69 78 20 74 68 72 65 61 64 69 6e 67 20 6f 6e  fix threading on
33850 20 49 72 69 78 20 36 2e 35 2c 20 70 61 74 63 68   Irix 6.5, patch
33860 0a 70 72 6f 76 69 64 65 64 20 62 79 20 4a 61 6d  .provided by Jam
33870 65 73 20 44 65 6e 6e 65 74 74 2e 20 20 5b 42 75  es Dennett.  [Bu
33880 67 3a 20 32 34 35 30 5d 20 28 72 65 64 6d 61 6e  g: 2450] (redman
33890 29 0a 0a 37 2f 33 30 2f 39 39 20 28 62 75 67 20  )..7/30/99 (bug 
338a0 66 69 78 29 20 46 69 78 65 64 20 6c 61 75 6e 63  fix) Fixed launc
338b0 68 69 6e 67 20 6f 66 20 31 36 62 69 74 20 61 70  hing of 16bit ap
338c0 70 6c 69 63 61 74 69 6f 6e 73 20 6f 6e 20 57 69  plications on Wi
338d0 6e 39 78 20 66 72 6f 6d 0a 77 69 73 68 2e 20 20  n9x from.wish.  
338e0 54 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  The command line
338f0 20 77 61 73 20 62 65 69 6e 67 20 70 72 69 6d 65   was being prime
33900 64 20 77 69 74 68 20 74 63 6c 70 69 70 38 32 2e  d with tclpip82.
33910 64 6c 6c 2c 20 62 75 74 20 69 74 20 77 61 73 0a  dll, but it was.
33920 69 67 6e 6f 72 65 64 20 6c 61 74 65 72 2e 0a 0a  ignored later...
33930 37 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  7/30/99 (bug fix
33940 29 20 41 64 64 65 64 20 66 75 6e 63 74 69 6f 6e  ) Added function
33950 73 20 74 6f 20 73 74 75 62 20 74 61 62 6c 65 2c  s to stub table,
33960 20 70 61 74 63 68 20 70 72 6f 76 69 64 65 64 20   patch provided 
33970 62 79 20 4a 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e  by Jan.Nijtmans.
33980 20 5b 42 75 67 3a 20 32 34 34 35 5d 20 28 68 6f   [Bug: 2445] (ho
33990 62 62 73 29 0a 0a 38 2f 31 2f 39 39 20 20 28 62  bbs)..8/1/99  (b
339a0 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
339b0 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64  Windows socket d
339c0 72 69 76 65 72 20 74 6f 20 74 65 72 6d 69 6e 61  river to termina
339d0 74 65 20 74 68 72 65 61 64 73 0a 62 79 20 73 65  te threads.by se
339e0 6e 64 69 6e 67 20 61 20 6d 65 73 73 61 67 65 20  nding a message 
339f0 74 6f 20 74 68 65 20 77 69 6e 64 6f 77 20 72 61  to the window ra
33a00 74 68 65 72 20 74 68 61 6e 20 63 61 6c 6c 69 6e  ther than callin
33a10 67 0a 54 65 72 6d 69 6e 61 74 65 54 68 72 65 61  g.TerminateThrea
33a20 64 28 29 2c 20 77 68 69 63 68 20 73 65 65 6d 73  d(), which seems
33a30 20 74 6f 20 6c 65 61 6b 20 61 62 6f 75 74 20 34   to leak about 4
33a40 6b 20 66 72 6f 6d 20 74 68 65 20 68 65 6c 70 65  k from the helpe
33a50 72 0a 74 68 72 65 61 64 27 73 20 73 74 61 63 6b  r.thread's stack
33a60 20 73 70 61 63 65 2e 20 28 72 65 64 6d 61 6e 29   space. (redman)
33a70 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
33a80 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32 62 32  - Released 8.2b2
33a90 2c 20 41 75 67 75 73 74 20 35 2c 20 31 39 39 39  , August 5, 1999
33aa0 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
33ab0 2d 2d 2d 2d 2d 2d 2d 0a 0a 38 2f 34 2f 39 39 20  -------..8/4/99 
33ac0 28 62 75 67 20 66 69 78 29 20 41 70 70 6c 69 65  (bug fix) Applie
33ad0 64 20 70 61 74 63 68 65 73 20 73 75 70 70 6c 69  d patches suppli
33ae0 65 64 20 62 79 20 48 65 6e 72 79 20 53 70 65 6e  ed by Henry Spen
33af0 63 65 72 20 74 6f 20 67 72 65 61 74 6c 79 0a 65  cer to greatly.e
33b00 6e 68 61 6e 63 65 20 70 65 72 66 6f 72 6d 61 6e  nhance performan
33b10 63 65 20 6f 66 20 63 65 72 74 61 69 6e 20 63 6c  ce of certain cl
33b20 61 73 73 65 73 20 6f 66 20 72 65 67 75 6c 61 72  asses of regular
33b30 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 0a 5b 42   expressions..[B
33b40 75 67 3a 20 32 34 34 30 20 32 34 34 37 5d 20 28  ug: 2440 2447] (
33b50 73 74 61 6e 74 6f 6e 29 0a 0a 38 2f 35 2f 39 39  stanton)..8/5/99
33b60 20 28 64 6f 63 20 63 68 61 6e 67 65 29 20 4d 61   (doc change) Ma
33b70 64 65 20 69 74 20 63 6c 65 61 72 20 74 68 61 74  de it clear that
33b80 20 74 63 6c 5f 70 6b 67 50 61 74 68 20 77 61 73   tcl_pkgPath was
33b90 20 6e 6f 74 20 73 65 74 20 66 6f 72 0a 57 69 6e   not set for.Win
33ba0 64 6f 77 73 2e 20 5b 42 75 67 3a 20 32 34 35 35  dows. [Bug: 2455
33bb0 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35 2f 39  ] (hobbs)..8/5/9
33bc0 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
33bd0 64 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 62  d reference to b
33be0 79 74 65 73 20 74 68 61 74 20 6d 69 67 68 74 20  ytes that might 
33bf0 6e 6f 74 20 62 65 20 6e 75 6c 6c 0a 74 65 72 6d  not be null.term
33c00 69 6e 61 74 65 64 20 69 6e 20 74 63 6c 4c 69 74  inated in tclLit
33c10 65 72 61 6c 2e 63 2e 20 5b 42 75 67 3a 20 32 34  eral.c. [Bug: 24
33c20 39 36 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35  96] (hobbs)..8/5
33c30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69  /99 (bug fix) Fi
33c40 78 65 64 20 74 79 70 6f 20 69 6e 20 68 74 74 70  xed typo in http
33c50 2e 74 63 6c 2e 20 5b 42 75 67 3a 20 32 35 30 32  .tcl. [Bug: 2502
33c60 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39 2f 39  ] (hobbs)..8/9/9
33c70 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
33c80 64 20 74 65 73 74 20 73 75 69 74 65 20 74 6f 20  d test suite to 
33c90 68 61 6e 64 6c 65 20 6c 61 72 67 65 72 20 69 6e  handle larger in
33ca0 74 65 67 65 72 73 0a 28 36 34 62 69 74 29 2e 20  tegers.(64bit). 
33cb0 50 61 74 63 68 20 66 72 6f 6d 20 44 6f 6e 20 50  Patch from Don P
33cc0 6f 72 74 65 72 2e 20 28 68 6f 62 62 73 29 0a 0a  orter. (hobbs)..
33cd0 38 2f 39 2f 39 39 20 28 64 6f 63 75 6d 65 6e 74  8/9/99 (document
33ce0 61 74 69 6f 6e 20 66 69 78 29 20 43 6c 61 72 69  ation fix) Clari
33cf0 66 69 65 64 20 54 63 6c 5f 44 65 63 72 52 65 66  fied Tcl_DecrRef
33d00 43 6f 75 6e 74 20 64 6f 63 73 0a 5b 42 75 67 3a  Count docs.[Bug:
33d10 20 31 39 35 32 5d 2e 20 43 6c 61 72 69 66 69 65   1952]. Clarifie
33d20 64 20 61 72 72 61 79 20 70 61 74 74 65 72 6e 20  d array pattern 
33d30 64 6f 63 73 20 5b 42 75 67 3a 20 31 33 33 30 5d  docs [Bug: 1330]
33d40 2e 20 46 69 78 65 64 20 63 6c 6f 63 6b 20 64 6f  . Fixed clock do
33d50 63 73 0a 5b 42 75 67 3a 20 36 39 33 5d 2e 20 46  cs.[Bug: 693]. F
33d60 69 78 65 64 20 66 6f 72 6d 61 74 74 69 6e 67 20  ixed formatting 
33d70 65 72 72 6f 72 73 20 5b 42 75 67 3a 20 32 31 38  errors [Bug: 218
33d80 38 20 32 31 38 39 5d 2e 20 46 69 78 65 64 20 64  8 2189]. Fixed d
33d90 6f 63 20 65 72 72 6f 72 0a 69 6e 20 74 63 6c 76  oc error.in tclv
33da0 61 72 73 2e 6e 20 5b 42 75 67 3a 20 32 30 34 32  ars.n [Bug: 2042
33db0 5d 2e 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39 2f  ]. (hobbs)..8/9/
33dc0 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78  99 (bug fix) Fix
33dd0 65 64 20 70 61 74 68 20 68 61 6e 64 6c 69 6e 67  ed path handling
33de0 20 69 6e 20 61 75 74 6f 5f 65 78 65 63 6f 6b 20   in auto_execok 
33df0 5b 42 75 67 3a 20 31 32 37 36 5d 20 28 68 6f 62  [Bug: 1276] (hob
33e00 62 73 29 0a 0a 38 2f 39 2f 39 39 20 28 69 6e 74  bs)..8/9/99 (int
33e10 65 72 6e 61 6c 20 61 70 69 20 63 68 61 6e 67 65  ernal api change
33e20 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20 54 63  ) Removed the Tc
33e30 6c 70 4d 75 74 65 78 4c 6f 63 6b 20 61 6e 64 20  lpMutexLock and 
33e40 54 63 6c 70 4d 75 74 65 78 55 6e 6c 6f 63 6b 0a  TclpMutexUnlock.
33e50 41 50 49 73 20 61 6e 64 20 61 64 64 65 64 20 61  APIs and added a
33e60 20 6e 65 77 20 65 78 70 6f 72 74 65 64 20 61 70   new exported ap
33e70 69 2c 20 54 63 6c 5f 47 65 74 41 6c 6c 6f 63 4d  i, Tcl_GetAllocM
33e80 75 74 65 78 2e 20 54 68 65 73 65 20 41 50 49 73  utex. These APIs
33e90 20 61 72 65 20 61 6c 6c 20 66 6f 72 0a 74 68 65   are all for.the
33ea0 20 6d 75 74 65 78 20 75 73 65 64 20 69 6e 20 74   mutex used in t
33eb0 68 65 20 73 69 6d 70 6c 65 20 6d 65 6d 6f 72 79  he simple memory
33ec0 20 61 6c 6c 6f 63 61 74 6f 72 73 2e 20 20 42 79   allocators.  By
33ed0 20 6d 61 6b 69 6e 67 20 74 68 69 73 20 63 68 61   making this cha
33ee0 6e 67 65 0a 77 65 20 61 72 65 20 61 62 6c 65 20  nge.we are able 
33ef0 74 6f 20 73 75 62 73 74 69 74 75 74 65 20 64 69  to substitute di
33f00 66 66 65 72 65 6e 74 20 69 6d 70 6c 65 6d 65 6e  fferent implemen
33f10 74 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 74  tations of the t
33f20 68 72 65 61 64 2d 72 65 6c 61 74 65 64 0a 41 50  hread-related.AP
33f30 49 73 20 77 69 74 68 6f 75 74 20 68 61 76 69 6e  Is without havin
33f40 67 20 74 6f 20 72 65 63 6f 6d 70 69 6c 65 20 74  g to recompile t
33f50 68 65 20 54 63 6c 20 63 6f 72 65 2e 20 28 77 65  he Tcl core. (we
33f60 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 6e 65  lch)..8/9/99 (ne
33f70 77 20 43 20 41 50 49 29 20 54 63 6c 5f 47 65 74  w C API) Tcl_Get
33f80 43 68 61 6e 6e 65 6c 4e 61 6d 65 73 20 72 65 74  ChannelNames ret
33f90 75 72 6e 73 20 61 20 6c 69 73 74 20 6f 66 20 6f  urns a list of o
33fa0 70 65 6e 20 63 68 61 6e 6e 65 6c 0a 6e 61 6d 65  pen channel.name
33fb0 73 20 69 6e 20 74 68 65 20 69 6e 74 65 72 70 72  s in the interpr
33fc0 65 74 65 72 20 72 65 73 75 6c 74 2e 20 20 53 74  eter result.  St
33fd0 69 6c 6c 20 6e 6f 20 54 63 6c 2d 6c 65 76 65 6c  ill no Tcl-level
33fe0 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 69 73   version of this
33ff0 2c 0a 62 75 74 20 73 65 72 76 65 72 2d 6c 69 6b  ,.but server-lik
34000 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 63  e applications c
34010 61 6e 20 75 73 65 20 74 68 69 73 20 74 6f 20 63  an use this to c
34020 6c 65 61 6e 20 75 70 20 66 69 6c 65 73 20 77 69  lean up files wi
34030 74 68 6f 75 74 0a 64 65 6c 65 74 69 6e 67 20 69  thout.deleting i
34040 6e 74 65 72 70 72 65 74 65 72 73 2e 20 28 77 65  nterpreters. (we
34050 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 62 75  lch)..8/9/99 (bu
34060 67 20 66 69 78 29 20 54 72 61 63 65 73 20 77 65  g fix) Traces we
34070 72 65 20 6e 6f 74 20 66 69 72 69 6e 67 20 6f 6e  re not firing on
34080 20 22 69 6e 66 6f 20 65 78 69 73 74 73 22 2c 20   "info exists", 
34090 77 68 69 63 68 20 75 73 65 64 20 74 6f 0a 68 61  which used to.ha
340a0 70 70 65 6e 20 69 6e 20 54 63 6c 20 37 2e 36 20  ppen in Tcl 7.6 
340b0 61 6e 64 20 65 61 72 6c 69 65 72 2e 20 41 6e 20  and earlier. An 
340c0 22 69 6e 66 6f 20 65 78 69 73 74 73 22 20 6e 6f  "info exists" no
340d0 77 20 66 69 72 65 73 20 61 20 72 65 61 64 20 74  w fires a read t
340e0 72 61 63 65 2c 0a 69 66 20 64 65 66 69 6e 65 64  race,.if defined
340f0 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74  .  This makes it
34100 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 66 75 6c   possible to ful
34110 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 20 76 61 72  ly implement var
34120 69 61 62 6c 65 73 20 74 68 61 74 0a 61 72 65 20  iables that.are 
34130 64 65 66 69 6e 65 64 20 76 69 61 20 74 72 61 63  defined via trac
34140 65 73 2e 20 28 77 65 6c 63 68 29 0a 0a 38 2f 31  es. (welch)..8/1
34150 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46  0/99 (bug fix) F
34160 69 78 65 64 20 42 72 65 6e 74 27 73 20 63 68 61  ixed Brent's cha
34170 6e 67 65 73 20 73 6f 20 74 68 61 74 20 74 68 65  nges so that the
34180 79 20 77 6f 72 6b 20 6f 6e 0a 57 69 6e 64 6f 77  y work on.Window
34190 73 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 2d 2d 2d  s. (redman)..---
341a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
341b0 65 61 73 65 64 20 38 2e 32 62 33 2c 20 41 75 67  eased 8.2b3, Aug
341c0 75 73 74 20 31 31 2c 20 31 39 39 39 20 2d 2d 2d  ust 11, 1999 ---
341d0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
341e0 2d 2d 2d 0a 0a 38 2f 31 32 2f 39 39 20 28 4d 61  ---..8/12/99 (Ma
341f0 63 29 20 52 65 61 72 72 61 6e 67 65 20 70 72 6f  c) Rearrange pro
34200 6a 65 63 74 73 20 69 6e 20 74 63 6c 4d 61 63 50  jects in tclMacP
34210 72 6f 6a 65 63 74 73 2e 73 65 61 2e 68 71 78 20  rojects.sea.hqx 
34220 73 6f 20 74 68 61 74 20 74 68 65 0a 62 75 69 6c  so that the.buil
34230 64 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 73  d directory is s
34240 65 70 61 72 61 74 65 20 66 72 6f 6d 20 74 68 65  eparate from the
34250 20 73 6f 75 72 63 65 73 2e 20 28 4a 69 6d 20 49   sources. (Jim I
34260 6e 67 68 61 6d 29 0a 0a 38 2f 31 32 2f 39 39 20  ngham)..8/12/99 
34270 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
34280 62 75 67 20 69 6e 20 54 63 6c 5f 45 76 61 6c 45  bug in Tcl_EvalE
34290 78 20 77 68 65 72 65 20 74 68 65 20 74 65 72 6d  x where the term
342a0 4f 66 66 73 65 74 20 77 61 73 20 6e 6f 74 0a 62  Offset was not.b
342b0 65 69 6e 67 20 75 70 64 61 74 65 64 20 69 6e 20  eing updated in 
342c0 63 61 73 65 73 20 77 68 65 72 65 20 74 68 65 20  cases where the 
342d0 65 76 61 6c 75 61 74 69 6f 6e 20 72 65 74 75 72  evaluation retur
342e0 6e 65 64 20 61 20 6e 6f 6e 20 54 43 4c 5f 4f 4b  ned a non TCL_OK
342f0 0a 65 72 72 6f 72 20 63 6f 64 65 2e 20 5b 42 75  .error code. [Bu
34300 67 3a 20 32 35 33 35 5d 20 28 73 74 61 6e 74 6f  g: 2535] (stanto
34310 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  n)..------------
34320 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32  --- Released 8.2
34330 2e 30 2c 20 41 75 67 75 73 74 20 31 37 2c 20 31  .0, August 17, 1
34340 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  999 ------------
34350 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32 31  ----------..9/21
34360 2f 39 39 20 28 63 6f 6e 66 69 67 20 66 69 78 65  /99 (config fixe
34370 73 29 20 66 69 78 65 64 20 73 65 76 65 72 61 6c  s) fixed several
34380 20 41 49 58 20 63 6f 6e 66 69 67 75 72 61 74 69   AIX configurati
34390 6f 6e 20 69 73 73 75 65 73 2e 20 20 67 63 63 20  on issues.  gcc 
343a0 61 6e 64 0a 74 68 72 65 61 64 69 6e 67 20 6d 61  and.threading ma
343b0 79 20 73 74 69 6c 6c 20 63 61 75 73 65 20 70 72  y still cause pr
343c0 6f 62 6c 65 6d 73 20 6f 6e 20 41 49 58 2e 20 28  oblems on AIX. (
343d0 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39 20  hobbs)..9/21/99 
343e0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
343f0 65 78 70 72 20 64 6f 75 62 6c 65 2d 65 76 61 6c  expr double-eval
34400 20 70 72 6f 62 6c 65 6d 2e 20 5b 42 75 67 3a 20   problem. [Bug: 
34410 37 33 32 5d 20 28 68 6f 62 62 73 29 0a 0a 39 2f  732] (hobbs)..9/
34420 32 31 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  21/99 (bug fix) 
34430 66 69 78 65 64 20 73 74 61 74 69 63 20 62 75 66  fixed static buf
34440 66 65 72 20 6f 76 65 72 66 6c 6f 77 20 70 72 6f  fer overflow pro
34450 62 6c 65 6d 2e 20 5b 42 75 67 3a 20 32 34 38 33  blem. [Bug: 2483
34460 5d 20 28 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f  ] (hobbs)..9/21/
34470 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69 78  99 (bug fix) fix
34480 65 64 20 65 6e 64 2d 69 6e 74 20 6c 69 6e 73 65  ed end-int linse
34490 72 74 20 69 6e 74 65 72 70 72 65 74 61 74 69 6f  rt interpretatio
344a0 6e 2e 20 5b 42 75 67 3a 20 32 36 39 33 5d 20 28  n. [Bug: 2693] (
344b0 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39 20  hobbs)..9/21/99 
344c0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
344d0 62 75 67 20 77 68 65 6e 20 73 65 74 74 69 6e 67  bug when setting
344e0 20 61 72 72 61 79 20 69 6e 20 6e 6f 6e 2d 65 78   array in non-ex
344f0 69 73 74 65 6e 74 0a 6e 61 6d 65 73 70 61 63 65  istent.namespace
34500 2e 20 5b 42 75 67 3a 20 32 36 31 33 5d 20 28 68  . [Bug: 2613] (h
34510 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61  obbs)..--- Relea
34520 73 65 64 20 38 2e 32 2e 31 2c 20 4f 63 74 6f 62  sed 8.2.1, Octob
34530 65 72 20 30 34 2c 20 31 39 39 39 20 2d 2d 2d 20  er 04, 1999 --- 
34540 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f  See ChangeLog fo
34550 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 31  r details ---..1
34560 30 2f 33 30 2f 39 39 20 28 66 65 61 74 75 72 65  0/30/99 (feature
34570 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 6e 65   enhancement) ne
34580 77 20 72 65 67 65 78 70 20 65 6e 67 69 6e 65 20  w regexp engine 
34590 66 72 6f 6d 20 48 65 6e 72 79 20 53 70 65 6e 63  from Henry Spenc
345a0 65 72 0a 77 61 73 20 70 61 74 63 68 65 64 20 69  er.was patched i
345b0 6e 20 2d 20 73 68 6f 75 6c 64 20 67 72 65 61 74  n - should great
345c0 6c 79 20 72 65 64 75 63 65 20 73 74 61 63 6b 20  ly reduce stack 
345d0 73 70 61 63 65 20 75 73 61 67 65 2e 20 28 73 70  space usage. (sp
345e0 65 6e 63 65 72 29 0a 0a 31 30 2f 33 30 2f 39 39  encer)..10/30/99
345f0 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
34600 20 50 75 72 69 66 79 20 72 65 70 6f 72 74 65 64   Purify reported
34610 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 73 20 69 6e   memory leaks in
34620 20 66 69 6e 64 65 78 65 63 75 74 61 62 6c 65 0a   findexecutable.
34630 74 65 73 74 20 63 6f 6d 6d 61 6e 64 2c 20 54 63  test command, Tc
34640 6c 70 43 72 65 61 74 65 50 72 6f 63 65 73 73 20  lpCreateProcess 
34650 6f 6e 20 55 6e 69 78 2c 20 69 6e 20 68 61 6e 64  on Unix, in hand
34660 6c 69 6e 67 20 6f 66 20 43 20 65 6e 76 69 72 6f  ling of C enviro
34670 6e 20 61 72 72 61 79 2c 0a 61 6e 64 20 69 6e 20  n array,.and in 
34680 74 65 73 74 74 68 72 65 61 64 20 63 6f 64 65 2e  testthread code.
34690 20 20 4e 6f 20 6d 6f 72 65 20 6b 6e 6f 77 6e 20    No more known 
346a0 28 72 65 70 6f 72 74 65 64 29 20 6d 65 6d 20 6c  (reported) mem l
346b0 65 61 6b 73 20 66 6f 72 20 54 63 6c 0a 62 75 69  eaks for Tcl.bui
346c0 6c 74 20 75 73 69 6e 67 20 67 63 63 20 6f 6e 20  lt using gcc on 
346d0 53 6f 6c 61 72 69 73 20 32 2e 35 2e 31 2e 20 20  Solaris 2.5.1.  
346e0 41 6c 73 6f 20 6e 6f 6e 65 20 72 65 70 6f 72 74  Also none report
346f0 65 64 20 66 6f 72 20 54 63 6c 20 6f 6e 20 4e 54  ed for Tcl on NT
34700 0a 28 75 73 69 6e 67 20 50 75 72 69 66 79 20 36  .(using Purify 6
34710 2e 30 29 2e 20 28 68 6f 62 62 73 29 0a 0a 31 30  .0). (hobbs)..10
34720 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /30/99 (bug fix)
34730 20 66 69 78 65 64 20 69 6d 70 72 6f 70 65 72 20   fixed improper 
34740 62 79 74 65 63 6f 64 65 20 68 61 6e 64 6c 69 6e  bytecode handlin
34750 67 20 6f 66 0a 27 65 76 61 6c 20 7b 73 65 74 20  g of.'eval {set 
34760 61 72 72 61 79 28 24 75 6e 6b 6e 6f 77 6e 76 61  array($unknownva
34770 72 29 20 35 7d 27 20 28 61 6c 73 6f 20 66 6f 72  r) 5}' (also for
34780 20 69 6e 63 72 29 20 28 68 6f 62 62 73 29 0a 0a   incr) (hobbs)..
34790 31 30 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69  10/30/99 (bug fi
347a0 78 29 20 66 69 78 65 64 20 65 76 65 6e 74 2f 69  x) fixed event/i
347b0 6f 20 74 68 72 65 61 64 69 6e 67 20 70 72 6f 62  o threading prob
347c0 6c 65 6d 73 20 62 79 20 6d 61 6b 69 6e 67 0a 74  lems by making.t
347d0 72 69 67 67 65 72 50 69 70 65 20 6e 6f 6e 2d 62  riggerPipe non-b
347e0 6c 6f 63 6b 69 6e 67 20 28 6e 69 63 6b 20 6b 69  locking (nick ki
347f0 73 73 65 72 62 65 74 68 29 0a 0a 31 30 2f 33 30  sserbeth)..10/30
34800 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69  /99 (bug fix) fi
34810 78 65 64 20 54 63 6c 5f 41 70 70 65 6e 64 53 74  xed Tcl_AppendSt
34820 72 69 6e 67 73 54 6f 4f 62 6a 56 41 20 61 6e 64  ringsToObjVA and
34830 20 54 63 6c 5f 41 70 70 65 6e 64 52 65 73 75 6c   Tcl_AppendResul
34840 74 56 41 0a 74 6f 20 6f 6e 6c 79 09 69 74 65 72  tVA.to only.iter
34850 61 74 65 73 20 6f 6e 63 65 20 6f 76 65 72 20 74  ates once over t
34860 68 65 20 76 61 5f 6c 69 73 74 20 28 61 76 6f 69  he va_list (avoi
34870 64 69 6e 67 20 6e 6f 6e 2d 70 6f 72 74 61 62 6c  ding non-portabl
34880 65 20 6d 65 6d 63 70 79 29 2e 0a 28 6a 6f 65 20  e memcpy)..(joe 
34890 65 6e 67 6c 69 73 68 2c 20 68 6f 62 62 73 29 0a  english, hobbs).
348a0 0a 31 30 2f 33 30 2f 39 39 20 28 62 75 67 20 66  .10/30/99 (bug f
348b0 69 78 29 20 72 65 6d 6f 76 65 64 20 73 61 76 65  ix) removed save
348c0 64 43 68 61 72 20 74 72 69 63 6b 20 69 6e 20 74  dChar trick in t
348d0 63 6c 43 6f 6d 70 69 6c 65 2e 63 20 74 68 61 74  clCompile.c that
348e0 20 61 70 70 65 61 72 65 64 0a 74 6f 20 62 65 20   appeared.to be 
348f0 63 61 75 73 69 6e 67 20 61 20 73 65 67 76 20 77  causing a segv w
34900 68 65 6e 20 74 68 65 20 6c 69 74 65 72 61 6c 20  hen the literal 
34910 74 61 62 6c 65 20 77 61 73 20 72 65 6c 65 61 73  table was releas
34920 65 64 2e 0a 5b 42 75 67 3a 20 32 34 35 39 2c 20  ed..[Bug: 2459, 
34930 32 35 31 35 5d 20 28 44 61 76 69 64 20 57 68 69  2515] (David Whi
34940 74 65 68 6f 75 73 65 29 0a 0a 31 30 2f 33 30 2f  tehouse)..10/30/
34950 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69 78  99 (bug fix) fix
34960 65 64 20 5b 73 74 72 69 6e 67 20 69 6e 64 65 78  ed [string index
34970 5d 20 74 6f 20 72 65 74 75 72 6e 20 42 79 74 65  ] to return Byte
34980 41 72 72 61 79 4f 62 6a 0a 77 68 65 6e 20 69 6e  ArrayObj.when in
34990 64 65 78 69 6e 67 20 69 6e 74 6f 20 6f 6e 65 20  dexing into one 
349a0 28 74 65 73 74 20 63 61 73 65 20 73 74 72 69 6e  (test case strin
349b0 67 2d 35 2e 31 36 29 20 5b 42 75 67 3a 20 32 38  g-5.16) [Bug: 28
349c0 37 31 5d 20 28 68 6f 62 62 73 29 0a 0a 31 30 2f  71] (hobbs)..10/
349d0 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  30/99 (bug fix) 
349e0 66 69 78 65 73 20 66 6f 72 20 6d 61 63 20 55 54  fixes for mac UT
349f0 46 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e 64 6c  F filename handl
34a00 69 6e 67 20 28 69 6e 67 68 61 6d 29 0a 0a 2d 2d  ing (ingham)..--
34a10 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32 2e 32  - Released 8.2.2
34a20 2c 20 4e 6f 76 65 6d 62 65 72 20 30 34 2c 20 31  , November 04, 1
34a30 39 39 39 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e  999 --- See Chan
34a40 67 65 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c  geLog for detail
34a50 73 20 2d 2d 2d 0a 0a 31 31 2f 31 39 2f 39 39 20  s ---..11/19/99 
34a60 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
34a70 6d 65 6e 74 29 20 62 75 67 20 66 69 78 65 73 20  ment) bug fixes 
34a80 66 6f 72 20 68 74 74 70 20 70 61 63 6b 61 67 65  for http package
34a90 20 61 73 20 77 65 6c 6c 20 61 73 0a 70 61 74 63   as well as.patc
34aa0 68 20 72 65 71 75 69 72 65 64 20 62 79 20 54 4c  h required by TL
34ab0 53 20 28 53 53 4c 29 20 65 78 74 65 6e 73 69 6f  S (SSL) extensio
34ac0 6e 20 74 68 61 74 20 61 64 64 73 20 68 74 74 70  n that adds http
34ad0 3a 3a 28 75 6e 29 72 65 67 69 73 74 65 72 0a 61  ::(un)register.a
34ae0 6e 64 20 2d 74 79 70 65 20 74 6f 20 68 74 74 70  nd -type to http
34af0 3a 3a 67 65 74 75 72 6c 2e 20 20 55 70 27 64 20  ::geturl.  Up'd 
34b00 68 74 74 70 20 70 6b 67 20 76 65 72 73 69 6f 6e  http pkg version
34b10 20 74 6f 20 32 2e 32 2e 0a 0a 31 31 2f 31 39 2f   to 2.2...11/19/
34b20 39 39 20 28 62 75 67 20 66 69 78 29 20 72 65 6d  99 (bug fix) rem
34b30 6f 76 65 64 20 65 78 74 72 61 20 64 65 63 72 20  oved extra decr 
34b40 6f 66 20 6e 75 6d 4c 65 76 65 6c 73 20 69 6e 20  of numLevels in 
34b50 54 63 6c 5f 45 76 61 6c 4f 62 6a 45 78 0a 74 68  Tcl_EvalObjEx.th
34b60 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65 20 73  at could cause s
34b70 65 67 20 66 61 75 6c 74 20 28 6d 6a 61 6e 73 65  eg fault (mjanse
34b80 6e 40 77 65 6e 64 74 2e 64 65 29 0a 0a 31 31 2f  [email protected])..11/
34b90 31 39 2f 39 39 20 28 62 75 67 20 66 69 78 65 73  19/99 (bug fixes
34ba0 29 20 6e 75 6d 65 72 6f 75 73 20 6d 69 6e 6f 72  ) numerous minor
34bb0 20 62 69 67 20 66 69 78 65 73 2c 20 69 6e 63 6c   big fixes, incl
34bc0 75 64 69 6e 67 20 63 6f 72 72 65 63 74 69 6e 67  uding correcting
34bd0 20 74 68 65 0a 69 6e 73 74 61 6c 6c 61 74 69 6f   the.installatio
34be0 6e 20 6f 66 20 74 68 65 20 6b 6f 69 38 2d 72 20  n of the koi8-r 
34bf0 65 6e 63 6f 64 69 6e 67 20 61 6e 64 20 74 63 6c  encoding and tcl
34c00 74 65 73 74 31 2e 30 20 6f 6e 20 57 69 6e 64 6f  test1.0 on Windo
34c10 77 73 2e 0a 0a 31 31 2f 33 30 2f 39 39 20 28 62  ws...11/30/99 (b
34c20 75 67 20 66 69 78 29 20 66 69 78 65 73 20 73 63  ug fix) fixes sc
34c30 61 6e 20 77 68 65 72 65 20 25 5b 2e 2e 5d 20 64  an where %[..] d
34c40 69 64 6e 27 74 20 6d 61 74 63 68 20 61 6e 79 74  idn't match anyt
34c50 68 69 6e 67 0a 0a 31 31 2f 33 30 2f 39 39 20 28  hing..11/30/99 (
34c60 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20 73  bug fix) fixed s
34c70 65 74 74 69 6e 67 20 6f 66 20 69 73 4e 6f 6e 42  etting of isNonB
34c80 6c 6f 63 6b 69 6e 67 20 66 6c 61 67 20 69 6e 20  locking flag in 
34c90 50 69 70 65 42 6c 6f 63 6b 4d 6f 64 65 50 72 6f  PipeBlockModePro
34ca0 63 0a 73 6f 20 79 6f 75 20 63 61 6e 20 6e 6f 77  c.so you can now
34cb0 20 63 6c 6f 73 65 20 61 20 6e 6f 6e 2d 62 6c 6f   close a non-blo
34cc0 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20 77 69  cking channel wi
34cd0 74 68 6f 75 74 20 77 61 69 74 69 6e 67 2e 0a 0a  thout waiting...
34ce0 31 31 2f 33 30 2f 39 39 20 28 62 75 67 20 77 6f  11/30/99 (bug wo
34cf0 72 6b 2d 61 72 6f 75 6e 64 29 20 70 72 65 76 65  rk-around) preve
34d00 6e 74 65 64 20 74 68 65 20 75 6e 6c 6f 61 64 69  nted the unloadi
34d10 6e 67 20 6f 66 20 44 4c 4c 73 20 66 6f 72 20 55  ng of DLLs for U
34d20 6e 69 78 20 69 6e 0a 54 63 6c 46 69 6e 61 6c 69  nix in.TclFinali
34d30 7a 65 4c 6f 61 64 2e 20 20 54 68 69 73 20 73 74  zeLoad.  This st
34d40 6f 70 73 20 74 68 65 20 73 65 67 20 66 61 75 6c  ops the seg faul
34d50 74 20 6f 6e 20 65 78 69 74 20 74 68 61 74 20 73  t on exit that s
34d60 6f 6d 65 20 75 73 65 72 73 20 77 6f 75 6c 64 0a  ome users would.
34d70 73 65 65 20 28 69 65 20 77 69 74 68 20 6f 72 61  see (ie with ora
34d80 74 63 6c 29 20 77 68 65 6e 20 75 73 69 6e 67 20  tcl) when using 
34d90 44 4c 4c 73 20 74 68 61 74 20 64 6f 20 6e 61 73  DLLs that do nas
34da0 74 79 20 74 68 69 6e 67 73 20 6c 69 6b 65 20 72  ty things like r
34db0 65 67 69 73 74 65 72 0a 61 74 65 78 69 74 20 68  egister.atexit h
34dc0 61 6e 64 6c 65 72 73 2e 0a 0a 31 32 2f 30 37 2f  andlers...12/07/
34dd0 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69 78  99 (bug fix) fix
34de0 65 73 20 66 6f 72 20 27 65 78 70 72 20 2b 20 7b  es for 'expr + {
34df0 5b 69 6e 63 72 5d 7d 27 20 61 6e 64 20 27 65 78  [incr]}' and 'ex
34e00 70 72 20 2b 20 7b 5b 65 72 72 6f 72 5d 7d 27 0a  pr + {[error]}'.
34e10 63 61 73 65 73 20 28 64 69 66 66 65 72 65 6e 74  cases (different
34e20 20 63 61 75 73 65 73 29 2e 0a 0a 2d 2d 2d 20 52   causes)...--- R
34e30 65 6c 65 61 73 65 64 20 38 2e 32 2e 33 2c 20 44  eleased 8.2.3, D
34e40 65 63 65 6d 62 65 72 20 31 36 2c 20 31 39 39 39  ecember 16, 1999
34e50 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e 67 65 4c   --- See ChangeL
34e60 6f 67 20 66 6f 72 20 64 65 74 61 69 6c 73 20 2d  og for details -
34e70 2d 2d 0a 0a 31 39 39 39 2d 30 39 2d 31 34 20 28  --..1999-09-14 (
34e80 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
34e90 65 6e 74 29 20 61 64 64 65 64 20 2d 73 74 61 72  ent) added -star
34ea0 74 20 73 77 69 74 63 68 20 74 6f 20 72 65 67 65  t switch to rege
34eb0 78 70 20 61 6e 64 20 72 65 67 73 75 62 2e 0a 0a  xp and regsub...
34ec0 31 39 39 39 2d 30 39 2d 31 35 20 28 66 65 61 74  1999-09-15 (feat
34ed0 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
34ee0 20 61 64 64 20 27 61 72 72 61 79 20 75 6e 73 65   add 'array unse
34ef0 74 27 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 39 39  t' command...199
34f00 39 2d 30 39 2d 31 35 20 28 66 65 61 74 75 72 65  9-09-15 (feature
34f10 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 72 65   enhancement) re
34f20 77 72 6f 74 65 20 72 75 6e 74 69 6d 65 20 6c 69  wrote runtime li
34f30 62 72 61 72 69 65 73 20 74 6f 20 75 73 65 20 6e  braries to use n
34f40 65 77 0a 73 74 72 69 6e 67 20 66 75 6e 63 74 69  ew.string functi
34f50 6f 6e 73 0a 0a 31 39 39 39 2d 30 38 2d 31 38 20  ons..1999-08-18 
34f60 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
34f70 6d 65 6e 74 29 20 61 64 64 65 64 20 27 66 69 6c  ment) added 'fil
34f80 65 20 63 68 61 6e 6e 65 6c 73 27 20 63 6f 6d 6d  e channels' comm
34f90 61 6e 64 2c 20 61 6c 6f 6e 67 20 77 69 74 68 0a  and, along with.
34fa0 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 4e 61  Tcl_GetChannelNa
34fb0 6d 65 73 28 45 78 29 20 70 75 62 6c 69 63 20 43  mes(Ex) public C
34fc0 20 41 50 49 73 2e 0a 0a 31 39 39 39 2d 31 30 2d   APIs...1999-10-
34fd0 31 39 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  19 (feature enha
34fe0 6e 63 65 6d 65 6e 74 29 20 65 6e 68 61 6e 63 65  ncement) enhance
34ff0 64 20 74 63 6c 74 65 73 74 20 70 61 63 6b 61 67  d tcltest packag
35000 65 0a 0a 31 39 39 39 2d 30 39 2d 31 36 20 28 66  e..1999-09-16 (f
35010 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
35020 6e 74 29 20 61 64 64 65 64 20 2d 6d 69 6c 6c 69  nt) added -milli
35030 73 65 63 6f 6e 64 73 20 73 77 69 74 63 68 20 74  seconds switch t
35040 6f 20 27 63 6c 6f 63 6b 20 63 6c 69 63 6b 73 27  o 'clock clicks'
35050 0a 0a 31 39 39 39 2d 31 30 2d 32 38 20 28 66 65  ..1999-10-28 (fe
35060 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
35070 74 29 20 61 64 64 65 64 20 73 75 70 70 6f 72 74  t) added support
35080 20 66 6f 72 20 69 6e 6c 69 6e 65 20 27 73 63 61   for inline 'sca
35090 6e 27 0a 0a 31 39 39 39 2d 31 30 2d 32 38 20 28  n'..1999-10-28 (
350a0 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
350b0 65 6e 74 29 20 61 64 64 65 64 20 73 75 70 70 6f  ent) added suppo
350c0 72 74 20 66 6f 72 20 74 6f 75 63 68 20 66 75 6e  rt for touch fun
350d0 63 74 69 6f 6e 61 6c 69 74 79 20 62 79 0a 65 78  ctionality by.ex
350e0 74 65 6e 64 65 64 69 6e 67 20 27 66 69 6c 65 20  tendeding 'file 
350f0 61 74 69 6d 65 27 20 61 6e 64 20 27 66 69 6c 65  atime' and 'file
35100 20 6d 74 69 6d 65 27 20 74 6f 20 74 61 6b 65 20   mtime' to take 
35110 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 69 6d 65  an optional time
35120 20 61 72 67 75 6d 65 6e 74 0a 0a 31 39 39 39 2d   argument..1999-
35130 31 31 2d 32 34 20 28 66 65 61 74 75 72 65 20 65  11-24 (feature e
35140 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64 65  nhancement) adde
35150 64 20 27 66 63 6f 6e 66 69 67 75 72 65 20 24 73  d 'fconfigure $s
35160 6f 63 6b 20 2d 6c 61 73 74 65 72 72 6f 72 27 0a  ock -lasterror'.
35170 63 6f 6d 6d 61 6e 64 20 74 6f 20 57 69 6e 64 6f  command to Windo
35180 77 73 20 74 6f 20 71 75 65 72 79 20 74 68 65 20  ws to query the 
35190 6c 61 73 74 20 65 72 72 6f 72 20 72 65 63 65 69  last error recei
351a0 76 65 64 20 6f 6e 20 61 20 73 65 72 69 61 6c 20  ved on a serial 
351b0 73 6f 63 6b 65 74 2e 0a 0a 31 39 39 39 2d 31 31  socket...1999-11
351c0 2d 33 30 20 28 62 75 67 20 66 69 78 29 20 66 69  -30 (bug fix) fi
351d0 78 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f 66 20  xed handling of 
351e0 25 5a 20 6f 6e 20 4e 54 20 66 6f 72 20 74 69 6d  %Z on NT for tim
351f0 65 7a 6f 6e 65 73 20 74 68 61 74 20 64 6f 6e 27  ezones that don'
35200 74 0a 68 61 76 65 20 44 53 54 0a 0a 31 39 39 39  t.have DST..1999
35210 2d 31 32 2d 30 33 20 28 66 65 61 74 75 72 65 20  -12-03 (feature 
35220 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69 6d 70  enhancement) imp
35230 72 6f 76 65 64 20 65 72 72 6f 72 20 6d 65 73 73  roved error mess
35240 61 67 65 20 69 6e 20 62 61 64 20 6f 63 74 61 6c  age in bad octal
35250 20 63 61 73 65 73 0a 61 6e 64 20 69 6d 70 72 6f   cases.and impro
35260 70 65 72 20 75 73 65 20 6f 66 20 63 6f 6d 6d 65  per use of comme
35270 6e 74 73 2e 20 28 68 6f 62 62 73 29 0a 0a 31 39  nts. (hobbs)..19
35280 39 39 2d 31 32 2d 30 37 20 28 62 75 67 20 66 69  99-12-07 (bug fi
35290 78 29 20 66 69 78 65 64 20 54 63 6c 5f 53 63 61  x) fixed Tcl_Sca
352a0 6e 43 6f 75 6e 74 65 64 45 6c 65 6d 65 6e 74 20  nCountedElement 
352b0 74 6f 20 6e 6f 74 20 73 74 65 70 0a 62 65 79 6f  to not step.beyo
352c0 6e 64 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68  nd the end of th
352d0 65 20 63 6f 75 6e 74 65 64 20 73 74 72 69 6e 67  e counted string
352e0 0a 0a 31 39 39 39 2d 31 32 2d 30 39 20 28 66 65  ..1999-12-09 (fe
352f0 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
35300 74 29 20 72 65 6d 6f 76 65 64 20 61 6c 6c 20 72  t) removed all r
35310 65 66 65 72 65 6e 63 65 73 20 74 6f 20 31 36 20  eferences to 16 
35320 62 69 74 0a 63 6f 6d 70 61 74 69 62 69 6c 69 74  bit.compatibilit
35330 79 20 63 6f 64 65 20 66 6f 72 20 57 69 6e 64 6f  y code for Windo
35340 77 73 20 28 68 6f 62 62 73 29 0a 0a 31 39 39 39  ws (hobbs)..1999
35350 2d 31 32 2d 31 30 20 28 62 75 67 20 66 69 78 29  -12-10 (bug fix)
35360 20 72 65 6d 6f 76 65 64 20 63 68 65 63 6b 20 66   removed check f
35370 6f 72 20 76 66 6f 72 6b 20 2d 20 54 63 6c 20 6e  or vfork - Tcl n
35380 6f 77 20 75 73 65 73 20 6f 6e 6c 79 20 66 6f 72  ow uses only for
35390 6b 20 69 6e 0a 65 78 65 63 2e 20 28 68 6f 62 62  k in.exec. (hobb
353a0 73 29 0a 0a 31 39 39 39 2d 31 32 2d 31 30 20 28  s)..1999-12-10 (
353b0 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20 63 68  optimization) ch
353c0 61 6e 67 65 64 20 54 63 6c 5f 43 6f 6e 63 61 74  anged Tcl_Concat
353d0 4f 62 6a 20 74 6f 20 72 65 74 75 72 6e 20 61 20  Obj to return a 
353e0 6c 69 73 74 0a 6f 62 6a 65 63 74 20 77 68 65 6e  list.object when
353f0 20 69 74 20 72 65 63 65 69 76 65 73 20 61 6c 6c   it receives all
35400 20 70 75 72 65 20 6c 69 73 74 20 6f 62 6a 65 63   pure list objec
35410 74 73 20 61 73 20 69 6e 70 75 74 20 28 75 73 65  ts as input (use
35420 64 20 62 79 20 27 63 6f 6e 63 61 74 27 29 2c 0a  d by 'concat'),.
35430 61 64 64 65 64 20 6f 70 74 69 6d 69 7a 61 74 69  added optimizati
35440 6f 6e 73 20 69 6e 20 54 63 6c 5f 45 76 61 6c 4f  ons in Tcl_EvalO
35450 62 6a 45 78 20 66 6f 72 20 70 75 72 65 20 6c 69  bjEx for pure li
35460 73 74 20 63 61 73 65 2c 20 61 6e 64 20 6f 70 74  st case, and opt
35470 69 6d 69 7a 65 64 0a 49 4e 53 54 5f 54 52 59 5f  imized.INST_TRY_
35480 43 56 54 5f 54 4f 5f 4e 55 4d 45 52 49 43 20 69  CVT_TO_NUMERIC i
35490 6e 20 54 63 6c 45 78 65 63 75 74 65 42 79 74 65  n TclExecuteByte
354a0 43 6f 64 65 20 66 6f 72 20 62 6f 6f 6c 65 61 6e  Code for boolean
354b0 20 6f 62 6a 65 63 74 73 2e 0a 28 6f 61 6b 6c 65   objects..(oakle
354c0 79 2c 20 68 6f 62 62 73 29 0a 0a 31 39 39 39 2d  y, hobbs)..1999-
354d0 31 32 2d 31 32 20 28 66 65 61 74 75 72 65 20 65  12-12 (feature e
354e0 6e 68 61 6e 63 65 6d 65 6e 74 29 20 65 6e 68 61  nhancement) enha
354f0 6e 63 65 64 20 67 6c 6f 62 20 63 6f 6d 6d 61 6e  nced glob comman
35500 64 20 77 69 74 68 20 2d 74 79 70 65 2c 20 2d 70  d with -type, -p
35510 61 74 68 2c 0a 2d 64 69 72 65 63 74 6f 72 79 20  ath,.-directory 
35520 61 6e 64 20 2d 6a 6f 69 6e 20 73 77 69 74 63 68  and -join switch
35530 65 73 2e 20 28 64 61 72 6c 65 79 2c 20 68 6f 62  es. (darley, hob
35540 62 73 29 0a 0a 31 39 39 39 2d 31 32 2d 32 31 20  bs)..1999-12-21 
35550 28 62 75 67 20 66 69 78 29 20 63 68 61 6e 67 65  (bug fix) change
35560 64 20 43 72 65 61 74 65 54 68 72 65 61 64 20 74  d CreateThread t
35570 6f 20 5f 62 65 67 69 6e 74 68 72 65 61 64 65 78  o _beginthreadex
35580 20 61 6e 64 0a 45 78 69 74 54 68 72 65 61 64 20   and.ExitThread 
35590 74 6f 20 5f 65 6e 64 74 68 72 65 61 64 65 78 20  to _endthreadex 
355a0 74 6f 20 70 72 65 76 65 6e 74 20 34 4b 20 6d 65  to prevent 4K me
355b0 6d 20 6c 65 61 6b 20 28 67 72 61 76 65 72 65 61  m leak (graverea
355c0 75 78 29 0a 0a 31 39 39 39 2d 31 32 2d 32 31 20  ux)..1999-12-21 
355d0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
355e0 61 70 70 6c 65 73 63 72 69 70 74 20 66 6f 72 20  applescript for 
355f0 49 31 38 4e 0a 0a 31 39 39 39 2d 31 32 2d 32 31  I18N..1999-12-21
35600 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
35610 65 6d 65 6e 74 29 20 61 64 64 65 64 20 2d 75 6e  ement) added -un
35620 69 71 75 65 20 6f 70 74 69 6f 6e 20 74 6f 20 6c  ique option to l
35630 73 6f 72 74 20 28 68 6f 62 62 73 29 0a 0a 31 39  sort (hobbs)..19
35640 39 39 2d 31 32 2d 32 31 20 28 62 75 67 20 66 69  99-12-21 (bug fi
35650 78 29 20 63 68 61 6e 67 65 64 20 74 68 72 65 61  x) changed threa
35660 64 20 69 64 73 20 74 6f 20 6c 6f 6e 67 73 20 28  d ids to longs (
35670 66 6f 72 20 36 34 62 69 74 20 73 79 73 74 65 6d  for 64bit system
35680 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64  s)..--- Released
35690 20 38 2e 33 62 31 2c 20 44 65 63 65 6d 62 65 72   8.3b1, December
356a0 20 32 32 2c 20 31 39 39 39 20 2d 2d 2d 20 53 65   22, 1999 --- Se
356b0 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20  e ChangeLog for 
356c0 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30  details ---..200
356d0 30 2d 30 31 2d 31 30 20 28 66 65 61 74 75 72 65  0-01-10 (feature
356e0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 63 6c   enhancement) cl
356f0 6f 63 6b 20 73 63 61 6e 20 6e 6f 77 20 73 75 70  ock scan now sup
35700 70 6f 72 74 73 20 74 68 65 20 63 6f 6d 6d 6f 6e  ports the common
35710 0a 49 53 4f 20 38 36 30 31 20 64 61 74 65 2f 74  .ISO 8601 date/t
35720 69 6d 65 20 66 6f 72 6d 61 74 73 2e 20 20 53 65  ime formats.  Se
35730 65 20 64 6f 63 73 20 66 6f 72 20 64 65 74 61 69  e docs for detai
35740 6c 73 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30  ls. (melski)..20
35750 30 30 2d 30 31 2d 31 30 20 28 62 75 67 20 66 69  00-01-10 (bug fi
35760 78 29 20 70 72 65 76 65 6e 74 65 64 20 5c 6f 6f  x) prevented \oo
35770 6f 20 73 75 62 73 74 69 74 75 74 69 6f 6e 20 66  o substitution f
35780 72 6f 6d 20 61 63 63 65 70 74 69 6e 67 0a 6e 6f  rom accepting.no
35790 6e 2d 6f 63 74 61 6c 20 64 69 67 69 74 73 20 5b  n-octal digits [
357a0 42 75 67 3a 20 33 39 37 35 5d 20 28 68 6f 62 62  Bug: 3975] (hobb
357b0 73 29 0a 0a 32 30 30 30 2d 30 31 2d 31 31 20 28  s)..2000-01-11 (
357c0 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20 69  bug fix) fixed i
357d0 6d 70 72 6f 70 65 72 20 68 61 6e 64 6c 69 6e 67  mproper handling
357e0 20 6f 66 20 44 53 54 20 62 79 20 63 6c 6f 63 6b   of DST by clock
357f0 20 77 68 65 6e 0a 75 73 69 6e 67 20 72 65 6c 61   when.using rela
35800 74 69 76 65 20 74 69 6d 65 73 20 28 6c 69 6b 65  tive times (like
35810 20 22 31 20 6d 6f 6e 74 68 22 20 6f 72 20 22 74   "1 month" or "t
35820 6f 6d 6f 72 72 6f 77 22 29 2e 20 28 6d 65 6c 73  omorrow"). (mels
35830 6b 69 29 0a 0a 32 30 30 30 2d 30 31 2d 31 32 20  ki)..2000-01-12 
35840 28 62 75 67 20 66 69 78 29 20 69 6d 70 72 6f 76  (bug fix) improv
35850 65 64 20 62 75 69 6c 64 20 73 75 70 70 6f 72 74  ed build support
35860 20 66 6f 72 20 54 72 75 36 34 20 76 35 2c 20 4e   for Tru64 v5, N
35870 65 74 42 53 44 0a 61 6e 64 20 52 65 6c 69 61 6e  etBSD.and Relian
35880 74 20 55 6e 69 78 20 28 68 6f 62 62 73 29 0a 0a  t Unix (hobbs)..
35890 32 30 30 30 2d 30 31 2d 31 32 20 28 62 75 67 20  2000-01-12 (bug 
358a0 66 69 78 29 20 6d 61 64 65 20 69 6d 70 6f 72 74  fix) made import
358b0 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61 6c 73 6f  ed commands also
358c0 20 69 6d 70 6f 72 74 20 74 68 65 69 72 0a 63 6f   import their.co
358d0 6d 70 69 6c 65 20 70 72 6f 63 65 64 75 72 65 20  mpile procedure 
358e0 28 64 75 66 66 69 6e 29 0a 0a 32 30 30 30 2d 30  (duffin)..2000-0
358f0 31 2d 31 32 20 28 62 75 67 20 66 69 78 29 20 66  1-12 (bug fix) f
35900 69 78 65 64 20 27 69 6e 66 6f 20 70 72 6f 63 73  ixed 'info procs
35910 20 3a 3a 6e 61 6d 65 73 70 3a 3a 2a 27 20 62 65   ::namesp::*' be
35920 68 61 76 69 6f 72 20 74 6f 20 72 65 74 75 72 6e  havior to return
35930 0a 70 72 6f 63 73 20 69 6e 20 61 20 6e 61 6d 65  .procs in a name
35940 73 70 61 63 65 20 28 64 65 6a 6f 6e 67 29 0a 0a  space (dejong)..
35950 32 30 30 30 2d 30 31 2d 31 32 20 28 66 65 61 74  2000-01-12 (feat
35960 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
35970 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   added support f
35980 6f 72 20 73 65 74 74 69 6e 67 20 70 65 72 6d 69  or setting permi
35990 73 73 69 6f 6e 73 0a 73 79 6d 62 6f 6c 69 63 6c  ssions.symbolicl
359a0 79 20 28 6c 69 6b 65 20 63 68 6d 6f 64 29 20 69  y (like chmod) i
359b0 6e 20 5b 66 69 6c 65 20 61 74 74 72 69 62 75 74  n [file attribut
359c0 65 73 20 24 66 69 6c 65 20 2d 70 65 72 6d 69 73  es $file -permis
359d0 73 69 6f 6e 73 20 2e 2e 2e 5d 20 28 73 63 68 6f  sions ...] (scho
359e0 65 62 65 6c 29 0a 0a 32 30 30 30 2d 30 31 2d 31  ebel)..2000-01-1
359f0 33 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65  3 (bug fix) fixe
35a00 64 20 6c 73 6f 72 74 20 2d 64 69 63 74 69 6f 6e  d lsort -diction
35a10 61 72 79 20 70 72 6f 62 6c 65 6d 20 77 68 65 6e  ary problem when
35a20 20 73 6f 72 74 69 6e 67 0a 63 68 61 72 61 63 74   sorting.charact
35a30 65 72 73 20 62 65 74 77 65 65 6e 20 27 5a 27 20  ers between 'Z' 
35a40 61 6e 64 20 27 61 27 20 28 66 6c 61 77 65 64 20  and 'a' (flawed 
35a50 75 70 70 65 72 2f 6c 6f 77 65 72 20 63 6f 6d 70  upper/lower comp
35a60 61 72 69 73 6f 6e 20 6c 6f 67 69 63 29 20 28 6d  arison logic) (m
35a70 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52 65 6c 65  elski)..--- Rele
35a80 61 73 65 64 20 38 2e 33 62 32 2c 20 4a 61 6e 75  ased 8.3b2, Janu
35a90 61 72 79 20 31 33 2c 20 32 30 30 30 20 2d 2d 2d  ary 13, 2000 ---
35aa0 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66   See ChangeLog f
35ab0 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a  or details ---..
35ac0 32 30 30 30 2d 30 31 2d 31 34 20 28 66 65 61 74  2000-01-14 (feat
35ad0 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
35ae0 20 63 6c 6f 63 6b 20 66 6f 72 6d 61 74 20 25 51   clock format %Q
35af0 20 61 64 64 65 64 2c 20 63 6c 6f 63 6b 20 73 63   added, clock sc
35b00 61 6e 20 75 70 64 61 74 65 64 0a 0a 32 30 30 30  an updated..2000
35b10 2d 30 31 2d 32 30 20 28 62 75 67 20 66 69 78 29  -01-20 (bug fix)
35b20 20 63 6f 72 72 65 63 74 65 64 20 63 6f 6d 70 6c   corrected compl
35b30 65 78 20 61 72 72 61 79 20 65 6c 65 6d 20 63 6f  ex array elem co
35b40 6d 70 69 6c 69 6e 67 20 28 53 70 6a 75 74 68 29  mpiling (Spjuth)
35b50 0a 0a 32 30 30 30 2d 30 31 2d 32 30 20 28 62 75  ..2000-01-20 (bu
35b60 67 20 66 69 78 29 20 6d 61 64 65 20 5b 69 6e 66  g fix) made [inf
35b70 6f 20 62 6f 64 79 5d 20 61 6c 77 61 79 73 20 72  o body] always r
35b80 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67 20 74  eturn a string t
35b90 79 70 65 20 61 72 67 2c 0a 74 6f 20 70 72 65 76  ype arg,.to prev
35ba0 65 6e 74 20 70 6f 73 73 69 62 6c 65 20 6d 69 73  ent possible mis
35bb0 75 73 65 20 6f 66 20 62 79 74 65 63 6f 64 65 73  use of bytecodes
35bc0 20 69 6e 20 74 68 65 20 77 72 6f 6e 67 20 63 6f   in the wrong co
35bd0 6e 74 65 78 74 20 28 68 6f 62 62 73 29 0a 0a 32  ntext (hobbs)..2
35be0 30 30 30 2d 30 31 2d 32 30 20 28 62 75 67 20 66  000-01-20 (bug f
35bf0 69 78 65 73 29 20 73 65 76 65 72 61 6c 20 66 69  ixes) several fi
35c00 78 65 73 20 74 6f 20 76 61 72 69 61 62 6c 65 20  xes to variable 
35c10 68 61 6e 64 6c 69 6e 67 20 74 6f 20 70 72 65 76  handling to prev
35c20 65 6e 74 0a 70 6f 73 73 69 62 6c 65 20 63 72 61  ent.possible cra
35c30 73 68 65 73 2c 20 61 6e 64 20 66 75 72 74 68 65  shes, and furthe
35c40 72 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20  r definition of 
35c50 63 6f 72 72 65 63 74 20 62 65 68 61 76 69 6f 72  correct behavior
35c60 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d   (melski)..2000-
35c70 30 31 2d 32 35 20 28 62 75 67 20 66 69 78 65 73  01-25 (bug fixes
35c80 29 20 69 6d 70 72 6f 76 65 64 20 51 4e 58 2c 20  ) improved QNX, 
35c90 55 6c 74 72 69 78 20 61 6e 64 20 4f 53 46 31 20  Ultrix and OSF1 
35ca0 28 54 72 75 36 34 29 20 63 6f 6e 66 69 67 20 61  (Tru64) config a
35cb0 6e 64 0a 63 6f 6d 70 61 74 69 62 69 6c 69 74 79  nd.compatibility
35cc0 20 28 65 64 67 65 2c 20 66 75 72 75 6b 61 77 61   (edge, furukawa
35cd0 29 0a 0a 32 30 30 30 2d 30 31 2d 32 35 20 28 62  )..2000-01-25 (b
35ce0 75 67 20 66 69 78 29 20 66 69 78 65 64 20 6d 65  ug fix) fixed me
35cf0 6d 20 6c 65 61 6b 20 77 68 65 6e 20 63 61 6c 6c  m leak when call
35d00 69 6e 67 20 6c 73 6f 72 74 20 77 69 74 68 20 61  ing lsort with a
35d10 20 62 61 64 20 2d 63 6f 6d 6d 61 6e 64 0a 61 72   bad -command.ar
35d20 67 75 6d 65 6e 74 20 28 68 6f 62 62 73 29 0a 0a  gument (hobbs)..
35d30 32 30 30 30 2d 30 31 2d 32 37 20 28 66 65 61 74  2000-01-27 (feat
35d40 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
35d50 20 70 61 63 6b 61 67 65 20 6d 65 63 68 61 6e 69   package mechani
35d60 73 6d 20 6f 76 65 72 68 61 75 6c 3a 20 63 68 61  sm overhaul: cha
35d70 6e 67 65 64 0a 62 65 68 61 76 69 6f 72 20 6f 66  nged.behavior of
35d80 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f 20   pkg_mkIndex to 
35d90 64 6f 20 2d 64 69 72 65 63 74 20 62 79 20 64 65  do -direct by de
35da0 66 61 75 6c 74 2c 20 61 64 64 65 64 20 2d 6c 61  fault, added -la
35db0 7a 79 20 6f 70 74 69 6f 6e 2e 0a 46 69 78 65 64  zy option..Fixed
35dc0 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74 6f 20   pkg_mkIndex to 
35dd0 68 61 6e 64 6c 65 20 6f 64 64 20 70 72 6f 63 20  handle odd proc 
35de0 6e 61 6d 65 73 20 61 6e 64 20 61 75 74 6f 5f 6d  names and auto_m
35df0 6b 49 6e 64 65 78 20 74 6f 20 75 73 65 20 70 6c  kIndex to use pl
35e00 61 74 66 6f 72 6d 0a 69 6e 64 65 70 65 6e 64 65  atform.independe
35e10 6e 74 20 66 69 6c 65 20 70 61 74 68 73 2e 20 20  nt file paths.  
35e20 4f 74 68 65 72 20 66 69 78 65 73 20 66 6f 72 20  Other fixes for 
35e30 6f 64 64 20 70 61 63 6b 61 67 65 20 71 75 69 72  odd package quir
35e40 6b 73 2e 20 20 41 64 64 65 64 0a 3a 3a 70 6b 67  ks.  Added.::pkg
35e50 20 6e 61 6d 65 73 70 61 63 65 20 61 6e 64 20 3a   namespace and :
35e60 3a 70 6b 67 3a 3a 63 72 65 61 74 65 20 68 65 6c  :pkg::create hel
35e70 70 65 72 20 66 75 6e 63 74 69 6f 6e 2e 20 28 6d  per function. (m
35e80 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 32 2d  elski)..2000-02-
35e90 30 31 20 28 62 75 67 20 66 69 78 29 20 66 69 78  01 (bug fix) fix
35ea0 65 64 20 70 72 6f 62 6c 65 6d 20 77 68 65 72 65  ed problem where
35eb0 20 68 74 74 70 20 50 4f 53 54 20 77 6f 75 6c 64   http POST would
35ec0 20 73 65 6e 64 20 6f 6e 65 20 65 78 74 72 61 0a   send one extra.
35ed0 6e 65 77 6c 69 6e 65 20 28 76 61 73 69 6c 6a 65  newline (vasilje
35ee0 76 69 63 29 0a 0a 32 30 30 30 2d 30 32 2d 30 32  vic)..2000-02-02
35ef0 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
35f00 65 6d 65 6e 74 29 20 61 64 64 65 64 20 64 6f 63  ement) added doc
35f10 73 20 66 6f 72 20 6e 65 77 20 72 65 67 65 78 70  s for new regexp
35f20 20 2d 69 6e 6c 69 6e 65 20 61 6e 64 0a 2d 61 6c   -inline and.-al
35f30 6c 20 73 77 69 74 63 68 65 73 2e 20 28 68 6f 62  l switches. (hob
35f40 62 73 29 0a 0a 32 30 30 30 2d 30 32 2d 30 38 20  bs)..2000-02-08 
35f50 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
35f60 74 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f 66 20  ted handling of 
35f70 22 6e 65 78 74 20 6d 6f 6e 74 68 6e 61 6d 65 22  "next monthname"
35f80 20 69 6e 20 63 6c 6f 63 6b 20 73 63 61 6e 0a 28   in clock scan.(
35f90 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 32  melski)..2000-02
35fa0 2d 30 39 20 28 62 75 67 20 66 69 78 29 20 72 65  -09 (bug fix) re
35fb0 73 74 6f 72 65 64 20 4d 61 63 20 73 6f 75 72 63  stored Mac sourc
35fc0 65 20 74 6f 20 62 75 69 6c 64 20 72 65 61 64 69  e to build readi
35fd0 6e 65 73 73 20 61 6e 64 20 70 72 65 76 65 6e 74  ness and prevent
35fe0 65 64 0a 6d 61 63 20 70 61 6e 69 63 20 66 72 6f  ed.mac panic fro
35ff0 6d 20 61 6e 20 65 72 72 6f 72 20 77 68 65 6e 20  m an error when 
36000 63 6c 6f 73 69 6e 67 20 61 6e 20 61 73 79 6e 63  closing an async
36010 20 73 6f 63 6b 65 74 20 28 73 74 65 66 66 65 6e   socket (steffen
36020 2c 20 69 6e 67 68 61 6d 29 0a 0a 32 30 30 30 2d  , ingham)..2000-
36030 30 32 2d 31 30 20 28 66 65 61 74 75 72 65 20 65  02-10 (feature e
36040 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69 6d 70 72  nhancement) impr
36050 6f 76 65 64 20 65 72 72 6f 72 20 72 65 70 6f 72  oved error repor
36060 74 69 6e 67 20 66 6f 72 20 66 61 69 6c 65 64 0a  ting for failed.
36070 6c 6f 61 64 73 20 6f 6e 20 57 69 6e 64 6f 77 73  loads on Windows
36080 20 28 64 65 6a 6f 6e 67 2c 20 68 6f 62 62 73 29   (dejong, hobbs)
36090 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38  ..--- Released 8
360a0 2e 33 2e 30 2c 20 46 65 62 72 75 61 72 79 20 31  .3.0, February 1
360b0 30 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65 65 20  0, 2000 --- See 
360c0 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65  ChangeLog for de
360d0 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30 2d  tails ---..2000-
360e0 30 33 20 28 62 75 67 20 66 69 78 65 73 2c 20 66  03 (bug fixes, f
360f0 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65  eature enhanceme
36100 6e 74 29 20 6f 76 65 72 68 61 75 6c 20 6f 66 20  nt) overhaul of 
36110 68 74 74 70 20 70 61 63 6b 61 67 65 20 66 6f 72  http package for
36120 0a 70 72 6f 70 65 72 20 68 61 6e 64 6c 69 6e 67  .proper handling
36130 20 6f 66 20 61 73 79 6e 63 20 63 61 6c 6c 62 61   of async callba
36140 63 6b 73 20 28 6e 65 77 20 6f 70 74 69 6f 6e 73  cks (new options
36150 29 2c 20 76 65 72 73 69 6f 6e 20 69 73 20 6e 6f  ), version is no
36160 77 20 61 74 20 32 2e 33 0a 28 74 61 6d 68 61 6e  w at 2.3.(tamhan
36170 6b 61 72 2c 20 77 65 6c 63 68 29 0a 0a 32 30 30  kar, welch)..200
36180 30 2d 30 33 20 28 70 65 72 66 6f 72 6d 61 6e 63  0-03 (performanc
36190 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 73  e enhancement) s
361a0 70 65 65 64 75 70 20 69 6e 20 57 69 6e 64 6f 77  peedup in Window
361b0 73 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e 64 6c  s filename handl
361c0 69 6e 67 20 28 6e 65 77 6d 61 6e 29 0a 61 6e 64  ing (newman).and
361d0 20 3d 3d 2f 21 3d 20 65 6d 70 74 79 20 73 74 72   ==/!= empty str
361e0 69 6e 67 20 69 6e 20 65 78 70 72 73 2e 20 28 68  ing in exprs. (h
361f0 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32  obbs)..2000-03-2
36200 37 20 28 62 75 67 20 66 69 78 29 20 61 64 64 65  7 (bug fix) adde
36210 64 20 75 6e 69 71 27 69 6e 67 20 74 65 73 74 20  d uniq'ing test 
36220 74 6f 20 6e 61 6d 65 73 70 61 63 65 20 65 78 70  to namespace exp
36230 6f 72 74 20 6c 69 73 74 20 74 6f 0a 70 72 65 76  ort list to.prev
36240 65 6e 74 20 75 6e 6e 65 63 65 73 73 61 72 79 20  ent unnecessary 
36250 6d 65 6d 20 67 72 6f 77 74 68 20 28 68 6f 62 62  mem growth (hobb
36260 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39 20 28  s)..2000-03-29 (
36270 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20 6d  bug fix) fixed m
36280 65 6d 20 6c 65 61 6b 20 77 68 65 6e 20 72 65 70  em leak when rep
36290 65 61 74 65 64 6c 79 20 73 6f 75 72 63 69 6e 67  eatedly sourcing
362a0 20 74 68 65 20 73 61 6d 65 0a 62 79 74 65 63 6f   the same.byteco
362b0 6d 70 69 6c 65 64 20 28 74 62 63 29 20 63 6f 64  mpiled (tbc) cod
362c0 65 20 72 65 70 65 61 74 65 64 6c 79 20 61 63 72  e repeatedly acr
362d0 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20 69 6e  oss different in
362e0 74 65 72 70 72 65 74 65 72 73 20 28 68 6f 62 62  terpreters (hobb
362f0 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39 20 28  s)..2000-03-29 (
36300 63 6f 6e 66 69 67 20 65 6e 68 61 6e 63 65 6d 65  config enhanceme
36310 6e 74 29 20 69 6d 70 72 6f 76 65 64 20 62 75 69  nt) improved bui
36320 6c 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 67  ld support for g
36330 63 63 2f 6d 69 6e 67 77 20 6f 6e 0a 57 69 6e 64  cc/mingw on.Wind
36340 6f 77 73 20 28 6e 69 6a 74 6d 61 6e 73 2c 20 68  ows (nijtmans, h
36350 6f 62 62 73 29 20 61 6e 64 20 61 64 64 65 64 20  obbs) and added 
36360 52 50 4d 20 74 61 72 67 65 74 20 28 6d 65 6c 73  RPM target (mels
36370 6b 69 29 0a 0a 32 30 30 30 2d 30 33 2d 33 31 20  ki)..2000-03-31 
36380 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
36390 74 65 64 20 64 61 74 61 20 65 6e 63 6f 64 69 6e  ted data encodin
363a0 67 20 70 72 6f 62 6c 65 6d 20 77 68 65 6e 20 75  g problem when u
363b0 73 69 6e 67 0a 22 65 78 65 63 20 3c 3c 20 24 64  sing."exec << $d
363c0 61 74 61 22 20 63 6f 6e 73 74 72 75 63 74 20 28  ata" construct (
363d0 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 34  melski)..2000-04
363e0 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
363f0 65 6d 65 6e 74 29 20 6f 76 65 72 68 61 75 6c 20  ement) overhaul 
36400 6f 66 20 74 68 72 65 61 64 69 6e 67 20 6d 65 63  of threading mec
36410 68 61 6e 69 73 6d 20 74 6f 20 62 65 74 74 65 72  hanism to better
36420 0a 73 75 70 70 6f 72 74 20 74 63 6c 20 6c 65 76  .support tcl lev
36430 65 6c 20 74 68 72 65 61 64 20 63 6f 6d 6d 61 6e  el thread comman
36440 64 20 28 6e 65 77 20 41 50 49 73 20 54 63 6c 5f  d (new APIs Tcl_
36450 43 6f 6e 64 69 74 69 6f 6e 46 69 6e 61 6c 69 7a  ConditionFinaliz
36460 65 2c 0a 54 63 6c 5f 4d 75 74 65 78 46 69 6e 61  e,.Tcl_MutexFina
36470 6c 69 7a 65 2c 20 54 63 6c 5f 43 72 65 61 74 65  lize, Tcl_Create
36480 54 68 72 65 61 64 2c 20 65 74 63 2c 20 61 6c 6c  Thread, etc, all
36490 20 64 6f 63 73 20 69 6e 20 54 68 72 65 61 64 2e   docs in Thread.
364a0 33 29 2e 0a 28 6b 75 70 72 69 65 73 2c 20 67 72  3)..(kupries, gr
364b0 61 76 65 72 61 75 78 29 0a 54 68 69 73 20 65 6e  averaux).This en
364c0 61 62 6c 65 73 20 74 68 65 20 74 63 6c 20 6c 65  ables the tcl le
364d0 76 65 6c 20 74 68 72 65 61 64 20 65 78 74 65 6e  vel thread exten
364e0 73 69 6f 6e 2e 20 28 77 65 6c 63 68 29 0a 0a 32  sion. (welch)..2
364f0 30 30 30 2d 30 34 2d 31 30 20 28 62 75 67 20 66  000-04-10 (bug f
36500 69 78 29 20 66 69 78 65 64 20 69 6e 66 69 6e 69  ix) fixed infini
36510 74 65 20 6c 6f 6f 70 20 63 61 73 65 20 69 6e 20  te loop case in 
36520 72 65 67 65 78 70 20 2d 61 6c 6c 20 28 6d 65 6c  regexp -all (mel
36530 73 6b 69 29 0a 0a 32 30 30 30 2d 30 34 2d 31 33  ski)..2000-04-13
36540 20 28 63 6f 6e 66 69 67 20 65 6e 68 61 6e 63 65   (config enhance
36550 6d 65 6e 74 29 20 61 64 64 65 64 20 73 75 70 70  ment) added supp
36560 6f 72 74 20 66 6f 72 20 2d 2d 65 6e 61 62 6c 65  ort for --enable
36570 2d 36 34 62 69 74 2d 76 69 73 0a 53 70 61 72 63  -64bit-vis.Sparc
36580 20 74 61 72 67 65 74 2e 20 28 68 6f 62 62 73 29   target. (hobbs)
36590 0a 0a 32 30 30 30 2d 30 34 2d 31 38 20 28 62 75  ..2000-04-18 (bu
365a0 67 20 66 69 78 29 20 6d 6f 76 65 64 20 74 63 6c  g fix) moved tcl
365b0 4c 69 62 72 61 72 79 50 61 74 68 20 74 6f 20 74  LibraryPath to t
365c0 68 72 65 61 64 2d 6c 6f 63 61 6c 20 73 74 6f 72  hread-local stor
365d0 61 67 65 20 74 6f 20 66 69 78 0a 70 6f 73 73 69  age to fix.possi
365e0 62 6c 65 20 72 61 63 65 20 63 6f 6e 64 69 74 69  ble race conditi
365f0 6f 6e 20 6f 6e 20 4d 50 20 6d 61 63 68 69 6e 65  on on MP machine
36600 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d  s (hobbs)..2000-
36610 30 34 2d 31 38 20 28 63 6f 6e 66 69 67 20 65 6e  04-18 (config en
36620 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64  hancement) added
36630 20 4d 61 63 4f 53 20 58 20 62 75 69 6c 64 20 74   MacOS X build t
36640 61 72 67 65 74 20 61 6e 64 0a 74 63 6c 4c 6f 61  arget and.tclLoa
36650 64 44 79 6c 64 2e 63 20 64 6c 20 74 79 70 65 2e  dDyld.c dl type.
36660 20 28 73 61 6e 63 68 65 7a 29 0a 0a 32 30 30 30   (sanchez)..2000
36670 2d 30 34 2d 32 33 20 28 62 75 67 20 66 69 78 29  -04-23 (bug fix)
36680 20 73 65 76 65 72 61 6c 20 4d 61 63 20 73 6f 63   several Mac soc
36690 6b 65 74 20 66 69 78 65 73 20 28 69 6e 67 68 61  ket fixes (ingha
366a0 6d 29 0a 0a 32 30 30 30 2d 30 34 2d 32 34 20 28  m)..2000-04-24 (
366b0 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20 68  bug fix) fixed h
366c0 61 6e 67 20 69 6e 20 74 68 72 65 61 64 65 64 20  ang in threaded 
366d0 55 6e 69 78 20 63 61 73 65 20 77 68 65 6e 20 62  Unix case when b
366e0 61 63 6b 67 72 6f 75 6e 64 65 64 0a 65 78 65 63  ackgrounded.exec
366f0 20 70 72 6f 63 65 73 73 20 77 61 73 20 72 75 6e   process was run
36700 6e 69 6e 67 20 28 64 65 6a 6f 6e 67 29 0a 0a 2d  ning (dejong)..-
36710 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 33 2e  -- Released 8.3.
36720 31 2c 20 41 70 72 69 6c 20 32 36 2c 20 32 30 30  1, April 26, 200
36730 30 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e 67 65  0 --- See Change
36740 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c 73 20  Log for details 
36750 2d 2d 2d 0a 0a 32 30 30 30 2d 30 34 2d 32 36 20  ---..2000-04-26 
36760 28 64 6f 63 20 66 69 78 29 20 75 70 64 61 74 65  (doc fix) update
36770 64 2f 61 64 64 65 64 20 64 6f 63 75 6d 65 6e 74  d/added document
36780 61 74 69 6f 6e 20 66 6f 72 20 6d 61 6e 79 20 41  ation for many A
36790 50 49 27 73 20 61 6e 64 0a 63 6f 6d 6d 61 6e 64  PI's and.command
367a0 73 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30  s (melski)..2000
367b0 2d 30 35 2d 30 32 20 28 66 65 61 74 75 72 65 20  -05-02 (feature 
367c0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64  enhancement) add
367d0 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 6a  ed support for j
367e0 6f 69 6e 61 62 6c 65 20 74 68 72 65 61 64 73 3b  oinable threads;
367f0 0a 65 78 74 65 6e 64 65 64 20 41 50 49 27 73 20  .extended API's 
36800 66 6f 72 20 63 68 61 6e 6e 65 6c 73 20 74 6f 20  for channels to 
36810 61 6c 6c 6f 77 20 63 68 61 6e 6e 65 6c 73 20 74  allow channels t
36820 6f 20 6d 6f 76 65 20 62 65 74 77 65 65 6e 20 74  o move between t
36830 68 72 65 61 64 73 0a 28 6b 75 70 72 69 65 73 29  hreads.(kupries)
36840 0a 0a 32 30 30 30 2d 30 35 2d 30 32 20 28 66 65  ..2000-05-02 (fe
36850 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
36860 74 29 20 63 68 61 6e 67 65 64 20 65 72 72 6f 72  t) changed error
36870 20 72 65 74 75 72 6e 20 66 6f 72 20 70 72 6f 63   return for proc
36880 65 64 75 72 65 73 0a 77 69 74 68 20 69 6e 63 6f  edures.with inco
36890 72 72 65 63 74 20 61 72 67 73 20 74 6f 20 62 65  rrect args to be
368a0 20 6c 69 6b 65 20 74 68 65 20 54 63 6c 5f 57 72   like the Tcl_Wr
368b0 6f 6e 67 4e 75 6d 41 72 67 73 20 41 50 49 2c 20  ongNumArgs API, 
368c0 77 69 74 68 20 61 20 22 77 72 6f 6e 67 0a 23 20  with a "wrong.# 
368d0 61 72 67 73 3a 20 2e 2e 2e 22 20 6d 65 73 73 61  args: ..." messa
368e0 67 65 20 70 72 69 6e 74 65 64 2c 20 77 69 74 68  ge printed, with
368f0 20 61 6e 20 61 72 67 73 20 6c 69 73 74 20 28 68   an args list (h
36900 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 35 2d 30  obbs)..2000-05-0
36910 38 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  8 (feature enhan
36920 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 5b 61  cement) added [a
36930 72 72 61 79 20 73 74 61 74 69 73 74 69 63 73 5d  rray statistics]
36940 20 63 6f 6d 6d 61 6e 64 0a 0a 32 30 30 30 2d 30   command..2000-0
36950 35 2d 30 38 20 28 70 65 72 66 6f 72 6d 61 6e 63  5-08 (performanc
36960 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 72  e enhancement) r
36970 65 77 72 6f 74 65 20 54 63 6c 5f 53 74 72 69 6e  ewrote Tcl_Strin
36980 67 43 61 73 65 4d 61 74 63 68 0a 61 6c 67 6f 72  gCaseMatch.algor
36990 69 74 68 6d 20 66 6f 72 20 62 65 74 74 65 72 20  ithm for better 
369a0 70 65 72 66 6f 72 6d 61 6e 63 65 3b 20 74 68 69  performance; thi
369b0 73 20 61 66 66 65 63 74 73 20 74 68 65 20 5b 73  s affects the [s
369c0 74 72 69 6e 67 20 6d 61 74 63 68 5d 0a 63 6f 6d  tring match].com
369d0 6d 61 6e 64 3b 20 61 64 64 65 64 20 22 65 71 22  mand; added "eq"
369e0 20 61 6e 64 20 22 6e 65 22 20 6f 70 65 72 61 6e   and "ne" operan
369f0 64 73 20 74 6f 20 65 78 70 72 2c 20 66 6f 72 20  ds to expr, for 
36a00 74 65 73 74 69 6e 67 0a 73 74 72 69 6e 67 20 65  testing.string e
36a10 71 75 61 6c 69 74 79 20 61 6e 64 20 69 6e 65 71  quality and ineq
36a20 75 61 6c 69 74 79 20 28 68 6f 62 62 73 29 0a 0a  uality (hobbs)..
36a30 32 30 30 30 2d 30 35 2d 30 39 20 28 66 65 61 74  2000-05-09 (feat
36a40 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
36a50 20 65 78 74 65 6e 64 65 64 20 5b 6c 73 65 61 72   extended [lsear
36a60 63 68 5d 20 74 6f 20 73 75 70 70 6f 72 74 20 73  ch] to support s
36a70 6f 72 74 65 64 0a 6c 69 73 74 20 73 65 61 72 63  orted.list searc
36a80 68 65 73 20 61 6e 64 20 74 79 70 65 64 20 6c 69  hes and typed li
36a90 73 74 20 73 65 61 72 63 68 65 73 20 28 6d 65 6c  st searches (mel
36aa0 73 6b 69 29 0a 0a 32 30 30 30 2d 30 35 2d 31 30  ski)..2000-05-10
36ab0 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
36ac0 65 6d 65 6e 74 29 20 61 64 64 65 64 20 5b 6e 61  ement) added [na
36ad0 6d 65 73 70 61 63 65 20 65 78 69 73 74 73 5d 20  mespace exists] 
36ae0 63 6f 6d 6d 61 6e 64 0a 28 64 61 72 6c 65 79 29  command.(darley)
36af0 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20 28 62 75  ..2000-05-18 (bu
36b00 69 6c 64 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ild enhancement)
36b10 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   added support f
36b20 6f 72 20 6d 69 6e 67 77 20 63 6f 6d 70 69 6c 65  or mingw compile
36b30 20 65 6e 76 20 61 6e 64 0a 63 72 6f 73 73 2d 63   env and.cross-c
36b40 6f 6d 70 69 6c 69 6e 67 20 28 64 65 6a 6f 6e 67  ompiling (dejong
36b50 29 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20 28 62  )..2000-05-18 (b
36b60 75 67 20 66 69 78 29 20 63 6f 72 72 65 63 74 65  ug fix) correcte
36b70 64 20 63 6c 6f 63 6b 20 67 72 61 6d 6d 61 72 20  d clock grammar 
36b80 74 6f 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64  to properly hand
36b90 6c 65 20 74 68 65 0a 22 61 67 6f 22 20 6b 65 79  le the."ago" key
36ba0 77 6f 72 64 20 77 68 65 6e 20 69 74 20 66 6f 6c  word when it fol
36bb0 6c 6f 77 73 20 6d 75 6c 74 69 70 6c 65 20 72 65  lows multiple re
36bc0 6c 61 74 69 76 65 20 75 6e 69 74 20 73 70 65 63  lative unit spec
36bd0 69 66 69 65 72 73 0a 28 6d 65 6c 73 6b 69 29 0a  ifiers.(melski).
36be0 0a 32 30 30 30 2d 30 35 2d 32 32 20 28 63 6f 6d  .2000-05-22 (com
36bf0 70 69 6c 65 20 66 69 78 29 20 74 79 70 65 20 63  pile fix) type c
36c00 61 73 74 20 63 6c 65 61 6e 75 70 73 20 28 64 65  ast cleanups (de
36c10 6a 6f 6e 67 29 0a 0a 32 30 30 30 2d 30 35 2d 32  jong)..2000-05-2
36c20 33 20 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 65  3 (performance e
36c30 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64 65  nhancement) adde
36c40 64 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 0a  d byte-compiled.
36c50 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f  implementation o
36c60 66 20 5b 72 65 74 75 72 6e 5d 20 63 6f 6d 6d 61  f [return] comma
36c70 6e 64 20 61 6e 64 20 5b 73 74 72 69 6e 67 5d 20  nd and [string] 
36c80 63 6f 6d 6d 61 6e 64 20 28 6d 65 6c 73 6b 69 29  command (melski)
36c90 0a 0a 32 30 30 30 2d 30 35 2d 32 36 20 28 70 65  ..2000-05-26 (pe
36ca0 72 66 6f 72 6d 61 6e 63 65 20 65 6e 68 61 6e 63  rformance enhanc
36cb0 65 6d 65 6e 74 29 20 65 78 74 65 6e 64 65 64 20  ement) extended 
36cc0 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 20 5b 73  byte-compiled [s
36cd0 74 72 69 6e 67 5d 0a 63 6f 6d 6d 61 6e 64 20 77  tring].command w
36ce0 69 74 68 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ith support for 
36cf0 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 2f  [string compare/
36d00 69 6e 64 65 78 2f 6d 61 74 63 68 5d 20 28 68 6f  index/match] (ho
36d10 62 62 73 29 0a 0a 32 30 30 30 2d 30 35 2d 32 37  bbs)..2000-05-27
36d20 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
36d30 65 6d 65 6e 74 29 20 61 64 64 65 64 20 61 62 69  ement) added abi
36d40 6c 69 74 79 20 74 6f 20 73 65 74 20 5b 69 6e 66  lity to set [inf
36d50 6f 20 73 63 72 69 70 74 5d 0a 72 65 74 75 72 6e  o script].return
36d60 20 76 61 6c 75 65 20 28 5b 69 6e 66 6f 20 73 63   value ([info sc
36d70 72 69 70 74 20 3f 6e 65 77 46 69 6c 65 4e 61 6d  ript ?newFileNam
36d80 65 3f 5d 29 20 28 77 65 6c 63 68 29 0a 0a 32 30  e?]) (welch)..20
36d90 30 30 2d 30 35 2d 33 31 20 28 66 65 61 74 75 72  00-05-31 (featur
36da0 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61  e enhancement) a
36db0 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
36dc0 20 72 65 67 65 78 70 20 61 6e 64 20 65 78 61 63   regexp and exac
36dd0 74 0a 70 61 74 74 65 72 6e 20 6d 61 74 63 68 69  t.pattern matchi
36de0 6e 67 20 66 6f 72 20 5b 61 72 72 61 79 20 6e 61  ng for [array na
36df0 6d 65 73 5d 20 28 67 61 7a 65 74 74 61 29 0a 0a  mes] (gazetta)..
36e00 32 30 30 30 2d 30 35 2d 33 31 20 28 66 65 61 74  2000-05-31 (feat
36e10 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
36e20 20 61 64 64 65 64 20 2d 6e 6f 63 6f 6d 70 6c 61   added -nocompla
36e30 69 6e 20 61 6e 64 20 2d 2d 20 66 6c 61 67 73 20  in and -- flags 
36e40 74 6f 0a 5b 75 6e 73 65 74 5d 20 74 6f 20 61 6c  to.[unset] to al
36e50 6c 6f 77 20 66 6f 72 20 73 69 6c 65 6e 74 20 75  low for silent u
36e60 6e 73 65 74 20 6f 70 65 72 61 74 69 6f 6e 20 28  nset operation (
36e70 68 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65  hobbs)..--- Rele
36e80 61 73 65 64 20 38 2e 34 61 31 2c 20 4a 75 6e 65  ased 8.4a1, June
36e90 20 36 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65 65   6, 2000 --- See
36ea0 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64   ChangeLog for d
36eb0 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30  etails ---..2000
36ec0 2d 30 35 2d 32 39 20 28 62 75 67 20 66 69 78 29  -05-29 (bug fix)
36ed0 20 63 6f 72 72 65 63 74 65 64 20 72 65 73 6f 75   corrected resou
36ee0 72 63 65 20 63 6c 65 61 6e 75 70 20 69 6e 20 68  rce cleanup in h
36ef0 74 74 70 20 65 72 72 6f 72 20 63 61 73 65 73 2e  ttp error cases.
36f00 0a 49 6d 70 72 6f 76 65 64 20 68 61 6e 64 6c 69  .Improved handli
36f10 6e 67 20 6f 66 20 65 72 72 6f 72 20 63 61 73 65  ng of error case
36f20 73 20 69 6e 20 68 74 74 70 2e 20 28 74 61 6d 68  s in http. (tamh
36f30 61 6e 6b 61 72 29 0a 0a 32 30 30 30 2d 30 37 20  ankar)..2000-07 
36f40 28 66 65 61 74 75 72 65 20 72 65 77 72 69 74 65  (feature rewrite
36f50 29 20 63 6f 6d 70 6c 65 74 65 20 72 65 77 72 69  ) complete rewri
36f60 74 65 20 6f 66 20 74 68 65 20 54 63 6c 20 49 4f  te of the Tcl IO
36f70 20 63 68 61 6e 6e 65 6c 20 73 75 62 73 79 73 74   channel subsyst
36f80 65 6d 0a 74 6f 20 63 6f 72 72 65 63 74 20 70 72  em.to correct pr
36f90 6f 62 6c 65 6d 73 20 28 68 61 6e 67 73 2c 20 63  oblems (hangs, c
36fa0 6f 72 65 20 64 75 6d 70 73 29 20 77 69 74 68 20  ore dumps) with 
36fb0 74 68 65 20 69 6e 69 74 69 61 6c 20 73 74 61 63  the initial stac
36fc0 6b 65 64 20 63 68 61 6e 6e 65 6c 0a 69 6d 70 6c  ked channel.impl
36fd0 65 6d 65 6e 74 61 74 69 6f 6e 2e 20 20 54 68 65  ementation.  The
36fe0 20 6e 65 77 20 73 79 73 74 65 6d 20 68 61 73 20   new system has 
36ff0 6d 61 6e 79 20 6d 6f 72 65 20 74 65 73 74 73 20  many more tests 
37000 66 6f 72 20 72 6f 62 75 73 74 6e 65 73 73 20 61  for robustness a
37010 6e 64 0a 73 63 61 6c 61 62 69 6c 69 74 79 2e 20  nd.scalability. 
37020 20 54 68 65 72 65 20 61 72 65 20 6e 65 77 20 43   There are new C
37030 20 41 50 49 73 20 28 73 65 65 20 54 63 6c 5f 43   APIs (see Tcl_C
37040 72 65 61 74 65 43 68 61 6e 6e 65 6c 29 2c 20 62  reateChannel), b
37050 75 74 20 6f 6e 6c 79 0a 73 74 61 63 6b 65 64 20  ut only.stacked 
37060 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73 20  channel drivers 
37070 61 72 65 20 61 66 66 65 63 74 65 64 20 28 69 65  are affected (ie
37080 3a 20 54 4c 53 2c 20 54 72 66 2c 20 69 6f 67 74  : TLS, Trf, iogt
37090 29 2e 20 20 54 68 65 20 69 6f 67 74 0a 65 78 74  ).  The iogt.ext
370a0 65 6e 73 69 6f 6e 20 68 61 73 20 62 65 65 6e 20  ension has been 
370b0 61 64 64 65 64 20 74 6f 20 74 68 65 20 63 6f 72  added to the cor
370c0 65 20 74 65 73 74 20 63 6f 64 65 20 74 6f 20 74  e test code to t
370d0 65 73 74 20 74 68 65 20 73 79 73 74 65 6d 2e 0a  est the system..
370e0 28 68 6f 62 62 73 2c 20 6b 75 70 72 69 65 73 29  (hobbs, kupries)
370f0 0a 09 2a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  ..**** POTENTIAL
37100 20 49 4e 43 4f 4d 50 41 54 41 42 49 4c 49 54 59   INCOMPATABILITY
37110 20 2a 2a 2a 2a 0a 0a 32 30 30 30 2d 30 37 20 28   ****..2000-07 (
37120 62 75 69 6c 64 20 69 6d 70 72 6f 76 65 6d 65 6e  build improvemen
37130 74 73 29 20 63 6c 65 61 6e 75 70 20 6f 66 20 74  ts) cleanup of t
37140 68 65 20 6d 61 6b 65 66 69 6c 65 73 20 61 6e 64  he makefiles and
37150 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70   configure scrip
37160 74 73 0a 74 6f 20 63 6f 72 72 65 63 74 20 73 75  ts.to correct su
37170 70 70 6f 72 74 20 66 6f 72 20 62 75 69 6c 64 69  pport for buildi
37180 6e 67 20 75 6e 64 65 72 20 67 63 63 20 66 6f 72  ng under gcc for
37190 20 57 69 6e 64 6f 77 73 2e 20 28 64 65 6a 6f 6e   Windows. (dejon
371a0 67 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28  g)..2000-08-07 (
371b0 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63 74  bug fix) correct
371c0 65 64 20 73 69 7a 65 6f 66 20 65 72 72 6f 72 20  ed sizeof error 
371d0 69 6e 20 54 63 6c 5f 47 65 74 49 6e 64 65 78 46  in Tcl_GetIndexF
371e0 72 6f 6d 4f 62 6a 53 74 72 75 63 74 2e 0a 28 70  romObjStruct..(p
371f0 65 72 6b 69 6e 73 29 0a 0a 32 30 30 30 2d 30 38  erkins)..2000-08
37200 2d 30 37 20 28 62 75 67 20 66 69 78 29 20 63 6f  -07 (bug fix) co
37210 72 72 65 63 74 20 6f 66 66 2d 62 79 2d 6f 6e 65  rrect off-by-one
37220 20 65 72 72 6f 72 20 69 6e 20 48 69 73 74 49 6e   error in HistIn
37230 64 65 78 2c 20 77 68 69 63 68 20 77 61 73 0a 63  dex, which was.c
37240 61 75 73 69 6e 67 20 5b 68 69 73 74 6f 72 79 20  ausing [history 
37250 72 65 64 6f 5d 20 74 6f 20 73 74 61 72 74 20 69  redo] to start i
37260 74 73 20 73 65 61 72 63 68 20 61 74 20 74 68 65  ts search at the
37270 20 77 72 6f 6e 67 20 65 76 65 6e 74 20 69 6e 64   wrong event ind
37280 65 78 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30  ex. (melski)..20
37290 30 30 2d 30 38 2d 30 37 20 28 62 75 67 20 66 69  00-08-07 (bug fi
372a0 78 29 20 63 6f 72 72 65 63 74 65 64 20 73 65 74  x) corrected set
372b0 6c 6f 63 61 6c 65 20 63 61 6c 6c 73 20 66 6f 72  locale calls for
372c0 20 58 49 4d 20 73 75 70 70 6f 72 74 20 61 6e 64   XIM support and
372d0 20 6c 6f 63 61 6c 65 0a 69 73 73 75 65 73 20 69   locale.issues i
372e0 6e 20 73 74 61 72 74 75 70 2e 20 28 74 61 6b 61  n startup. (taka
372f0 68 61 73 68 69 29 0a 0a 32 30 30 30 2d 30 38 2d  hashi)..2000-08-
37300 30 37 20 28 62 75 67 20 66 69 78 29 20 63 6f 72  07 (bug fix) cor
37310 72 65 63 74 20 63 6f 64 65 20 74 6f 20 68 61 6e  rect code to han
37320 64 6c 65 20 6c 6f 63 61 6c 65 20 73 70 65 63 69  dle locale speci
37330 66 69 63 20 72 65 74 75 72 6e 20 76 61 6c 75 65  fic return value
37340 73 0a 66 72 6f 6d 20 73 74 72 66 74 69 6d 65 2c  s.from strftime,
37350 20 69 66 20 61 6e 79 2e 20 28 77 61 67 6e 65 72   if any. (wagner
37360 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28 62  )..2000-08-07 (b
37370 75 67 20 66 69 78 29 20 74 77 65 61 6b 65 64 20  ug fix) tweaked 
37380 67 72 61 6d 6d 61 72 20 74 6f 20 70 72 6f 70 65  grammar to prope
37390 72 6c 79 20 68 61 6e 64 6c 65 20 74 68 65 20 22  rly handle the "
373a0 61 67 6f 22 20 6b 65 79 77 6f 72 64 0a 77 68 65  ago" keyword.whe
373b0 6e 20 69 74 20 66 6f 6c 6c 6f 77 73 20 6d 75 6c  n it follows mul
373c0 74 69 70 6c 65 20 72 65 6c 61 74 69 76 65 20 75  tiple relative u
373d0 6e 69 74 20 73 70 65 63 69 66 69 65 72 73 2c 20  nit specifiers, 
373e0 61 73 20 69 6e 0a 22 32 20 64 61 79 73 20 32 20  as in."2 days 2 
373f0 68 6f 75 72 73 20 61 67 6f 22 2e 20 28 6d 65 6c  hours ago". (mel
37400 73 6b 69 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37  ski)..2000-08-07
37410 20 28 64 6f 63 20 66 69 78 65 73 29 20 6e 75 6d   (doc fixes) num
37420 65 72 6f 75 73 20 64 6f 63 20 66 69 78 65 73 20  erous doc fixes 
37430 74 6f 20 63 6f 72 72 65 63 74 20 53 45 45 20 41  to correct SEE A
37440 4c 53 4f 20 61 6e 64 20 4e 41 4d 45 0a 73 65 63  LSO and NAME.sec
37450 74 69 6f 6e 73 2e 20 28 65 6e 67 6c 69 73 68 29  tions. (english)
37460 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28 62 75  ..2000-08-07 (bu
37470 67 20 66 69 78 29 20 6e 65 77 20 6d 61 6e 20 70  g fix) new man p
37480 61 67 65 73 20 6d 65 6d 6f 72 79 2e 6e 2c 20 54  ages memory.n, T
37490 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 2e 33 2c 20  CL_MEM_DEBUG.3, 
374a0 49 6e 69 74 2e 33 20 61 6e 64 0a 44 75 6d 70 41  Init.3 and.DumpA
374b0 63 74 69 76 65 4d 65 6d 6f 72 79 2e 33 2e 20 28  ctiveMemory.3. (
374c0 6d 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52 65 6c  melski)..--- Rel
374d0 65 61 73 65 64 20 38 2e 33 2e 32 2c 20 41 75 67  eased 8.3.2, Aug
374e0 75 73 74 20 39 2c 20 32 30 30 30 20 2d 2d 2d 20  ust 9, 2000 --- 
374f0 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f  See ChangeLog fo
37500 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32  r details ---..2
37510 30 30 30 2d 30 36 20 74 68 72 75 20 32 30 30 30  000-06 thru 2000
37520 2d 31 31 20 28 62 75 69 6c 64 20 69 6d 70 72 6f  -11 (build impro
37530 76 65 6d 65 6e 74 73 29 20 41 64 64 65 64 20 73  vements) Added s
37540 75 70 70 6f 72 74 20 66 6f 72 20 6d 69 6e 67 77  upport for mingw
37550 20 28 67 63 63 20 6f 6e 0a 57 69 6e 64 6f 77 73   (gcc on.Windows
37560 29 2c 20 41 49 58 2d 35 20 61 6e 64 20 57 69 6e  ), AIX-5 and Win
37570 36 34 20 62 75 69 6c 64 73 20 28 64 65 6a 6f 6e  64 builds (dejon
37580 67 2c 20 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d  g, hobbs)..2000-
37590 30 36 2d 32 33 20 28 66 65 61 74 75 72 65 20 65  06-23 (feature e
375a0 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 62 69 6c  nhancement) abil
375b0 69 74 79 20 74 6f 20 75 73 65 20 54 63 6c 5f 4f  ity to use Tcl_O
375c0 62 6a 20 2a 73 20 61 73 20 68 61 73 68 20 6b 65  bj *s as hash ke
375d0 79 73 20 28 64 75 66 66 69 6e 29 0a 0a 32 30 30  ys (duffin)..200
375e0 30 2d 30 36 2d 32 39 20 28 6e 65 77 20 66 65 61  0-06-29 (new fea
375f0 74 75 72 65 73 29 20 61 64 64 65 64 20 5b 6d 63  tures) added [mc
37600 6d 61 78 5d 20 61 6e 64 20 5b 6d 63 6d 73 65 74  max] and [mcmset
37610 5d 20 61 6e 64 20 65 78 74 65 6e 64 65 64 20 5b  ] and extended [
37620 75 6e 6b 6e 6f 77 6e 5d 20 69 6e 0a 6d 73 67 63  unknown] in.msgc
37630 61 74 20 70 61 63 6b 61 67 65 20 28 64 75 70 65  at package (dupe
37640 72 76 61 6c 2c 20 6b 72 6f 6e 65 2c 20 6e 65 6c  rval, krone, nel
37650 73 6f 6e 29 0a 3d 3e 20 6d 73 67 63 61 74 20 31  son).=> msgcat 1
37660 2e 31 0a 0a 32 30 30 30 2d 30 38 20 74 68 72 75  .1..2000-08 thru
37670 20 32 30 30 30 2d 30 39 20 61 64 64 65 64 20 74   2000-09 added t
37680 63 6c 50 6c 61 74 44 65 63 6c 73 2e 68 20 74 6f  clPlatDecls.h to
37690 20 64 65 66 61 75 6c 74 20 69 6e 73 74 61 6c 6c   default install
376a0 20 28 6d 65 6c 73 6b 69 2c 20 68 6f 62 62 73 29   (melski, hobbs)
376b0 0a 0a 32 30 30 30 2d 30 38 2d 32 34 20 28 6e 65  ..2000-08-24 (ne
376c0 77 20 66 65 61 74 75 72 65 29 20 45 6e 68 61 6e  w feature) Enhan
376d0 63 65 64 20 74 72 61 63 65 20 73 79 6e 74 61 78  ced trace syntax
376e0 20 74 6f 20 61 64 64 3a 0a 09 74 72 61 63 65 20   to add:..trace 
376f0 7b 61 64 64 7c 72 65 6d 6f 76 65 7c 6c 69 73 74  {add|remove|list
37700 7d 20 7b 76 61 72 69 61 62 6c 65 7c 63 6f 6d 6d  } {variable|comm
37710 61 6e 64 7d 20 6e 61 6d 65 20 6f 70 73 20 63 6f  and} name ops co
37720 6d 6d 61 6e 64 0a 28 64 61 72 6c 65 79 2c 20 6d  mmand.(darley, m
37730 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d  elski)..2000-09-
37740 30 36 20 28 63 72 6f 73 73 2d 70 6c 61 74 66 6f  06 (cross-platfo
37750 72 6d 20 66 65 61 74 75 72 65 29 20 53 65 74 20  rm feature) Set 
37760 5e 5a 20 28 5c 33 32 29 20 61 73 20 64 65 66 61  ^Z (\32) as defa
37770 75 6c 74 20 45 4f 46 20 63 68 61 72 2e 20 28 68  ult EOF char. (h
37780 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 39 2d 30  obbs)..2000-09-0
37790 37 20 70 61 72 74 69 61 6c 20 66 69 78 20 66 6f  7 partial fix fo
377a0 72 20 62 75 67 20 32 34 36 30 20 74 6f 20 70 72  r bug 2460 to pr
377b0 65 76 65 6e 74 20 65 78 65 63 20 6d 65 6d 20 6c  event exec mem l
377c0 65 61 6b 20 6f 6e 20 57 69 6e 64 6f 77 73 20 66  eak on Windows f
377d0 6f 72 20 74 68 65 0a 63 6f 6d 6d 6f 6e 20 63 61  or the.common ca
377e0 73 65 20 28 67 72 61 76 65 72 65 61 75 78 29 0a  se (gravereaux).
377f0 0a 32 30 30 30 2d 30 39 2d 31 34 20 49 6d 70 72  .2000-09-14 Impr
37800 6f 76 65 64 20 73 74 72 69 6e 67 20 61 6c 6c 6f  oved string allo
37810 63 61 74 69 6f 6e 20 67 72 6f 77 74 68 20 66 6f  cation growth fo
37820 72 20 6c 61 72 67 65 20 73 74 72 69 6e 67 73 20  r large strings 
37830 28 68 69 6e 74 65 72 6d 61 79 65 72 2c 0a 6d 65  (hintermayer,.me
37840 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d 31  lski)..2000-09-1
37850 34 20 4e 65 77 20 6e 6f 6e 2d 70 61 6e 69 63 27  4 New non-panic'
37860 69 6e 67 20 6d 65 6d 20 61 6c 6c 6f 63 61 74 69  ing mem allocati
37870 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 54 63 6c  on functions Tcl
37880 5f 41 74 74 65 6d 70 74 41 6c 6c 6f 63 2c 0a 54  _AttemptAlloc,.T
37890 63 6c 5f 41 74 74 65 6d 70 74 52 65 61 6c 6c 6f  cl_AttemptReallo
378a0 63 2c 20 54 63 6c 5f 41 74 74 65 6d 70 74 53 65  c, Tcl_AttemptSe
378b0 74 4f 62 6a 4c 65 6e 67 74 68 20 28 6d 65 6c 73  tObjLength (mels
378c0 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d 32 30 20  ki)..2000-09-20 
378d0 28 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 63  (new features) c
378e0 6f 6d 70 6c 65 74 65 6c 79 20 6e 65 77 2c 20 65  ompletely new, e
378f0 6e 68 61 6e 63 65 64 20 73 79 6e 74 61 78 20 69  nhanced syntax i
37900 6e 20 74 63 6c 74 65 73 74 20 70 61 63 6b 61 67  n tcltest packag
37910 65 2e 0a 42 61 63 6b 77 61 72 64 73 20 63 6f 6d  e..Backwards com
37920 70 61 74 61 62 6c 65 20 77 69 74 68 20 74 63 6c  patable with tcl
37930 74 65 73 74 20 76 31 2e 20 28 68 6f 6d 29 0a 3d  test v1. (hom).=
37940 3e 20 74 63 6c 74 65 73 74 20 32 2e 30 0a 0a 32  > tcltest 2.0..2
37950 30 30 30 2d 30 39 2d 32 37 20 28 62 75 67 20 66  000-09-27 (bug f
37960 69 78 29 20 66 69 78 65 64 20 61 20 62 75 67 20  ix) fixed a bug 
37970 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20 61 20  introduced by a 
37980 70 61 72 74 69 61 6c 20 66 69 78 20 69 6e 20 38  partial fix in 8
37990 2e 33 2e 32 20 74 68 61 74 0a 64 69 64 6e 27 74  .3.2 that.didn't
379a0 20 73 65 74 20 6e 6f 6e 42 6c 6f 63 6b 69 6e 67   set nonBlocking
379b0 20 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e 20   correctly when 
379c0 72 65 73 65 74 74 69 6e 67 20 74 68 65 20 66 6c  resetting the fl
379d0 61 67 73 20 66 6f 72 20 74 68 65 20 77 72 69 74  ags for the writ
379e0 65 0a 73 69 64 65 20 28 6d 65 6d 20 6c 65 61 6b  e.side (mem leak
379f0 29 20 43 6f 72 72 65 63 74 20 6d 65 6d 20 6c 65  ) Correct mem le
37a00 61 6b 20 69 6e 20 63 68 61 6e 6e 65 6c 73 20 77  ak in channels w
37a10 68 65 6e 20 73 74 61 74 65 50 74 72 20 77 61 73  hen statePtr was
37a20 20 72 65 6c 65 61 73 65 64 0a 28 68 6f 62 62 73   released.(hobbs
37a30 29 0a 0a 32 30 30 30 2d 30 39 2d 32 39 20 28 62  )..2000-09-29 (b
37a40 75 67 20 66 69 78 29 20 63 6f 72 72 65 63 74 65  ug fix) correcte
37a50 64 20 72 65 70 6f 72 74 69 6e 67 20 6f 66 20 73  d reporting of s
37a60 70 61 63 65 20 70 61 72 69 74 79 20 6f 6e 20 57  pace parity on W
37a70 69 6e 64 6f 77 73 20 28 45 61 73 6f 6e 29 0a 0a  indows (Eason)..
37a80 32 30 30 30 2d 31 30 2d 30 36 20 28 62 75 67 20  2000-10-06 (bug 
37a90 66 69 78 29 20 63 6f 72 72 65 63 74 65 64 20 5b  fix) corrected [
37aa0 66 69 6c 65 20 63 68 61 6e 6e 65 6c 73 5d 20 74  file channels] t
37ab0 6f 20 6f 6e 6c 79 20 72 65 74 75 72 6e 20 63 68  o only return ch
37ac0 61 6e 6e 65 6c 73 20 69 6e 0a 74 68 65 20 63 75  annels in.the cu
37ad0 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65 74 65  rrent interprete
37ae0 72 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d  r (hobbs)..2000-
37af0 31 30 2d 32 30 20 28 70 65 72 66 6f 72 6d 61 6e  10-20 (performan
37b00 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  ce enhancement) 
37b10 63 61 6c 6c 20 73 74 61 74 20 6f 6e 6c 79 20 77  call stat only w
37b20 68 65 6e 20 6e 65 63 65 73 73 61 72 79 20 69 6e  hen necessary in
37b30 20 27 67 6c 6f 62 27 20 74 6f 0a 73 70 65 65 64   'glob' to.speed
37b40 20 75 70 20 63 6f 6d 6d 61 6e 64 20 73 69 67 6e   up command sign
37b50 69 66 69 63 61 6e 74 6c 79 20 69 6e 20 62 61 73  ificantly in bas
37b60 65 20 63 61 73 65 73 20 28 68 6f 62 62 73 29 0a  e cases (hobbs).
37b70 0a 32 30 30 30 2d 31 30 2d 32 37 20 46 69 78 65  .2000-10-27 Fixe
37b80 64 20 6d 65 6d 20 6c 65 61 6b 20 69 6e 20 54 63  d mem leak in Tc
37b90 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e 65 6c 2e  l_CreateChannel.
37ba0 20 52 65 2d 70 75 72 69 66 69 65 64 20 63 6f 72   Re-purified cor
37bb0 65 20 76 69 61 20 74 65 73 74 0a 73 75 69 74 65  e via test.suite
37bc0 73 2e 20 20 28 68 6f 62 62 73 29 0a 0a 32 30 30  s.  (hobbs)..200
37bd0 30 2d 31 30 2d 33 30 20 28 6e 65 77 20 66 65 61  0-10-30 (new fea
37be0 74 75 72 65 29 20 61 64 64 20 22 6a 61 5f 4a 50  ture) add "ja_JP
37bf0 2e 65 75 63 4a 50 22 20 6d 61 70 20 74 6f 20 22  .eucJP" map to "
37c00 65 75 63 2d 6a 70 22 20 65 6e 63 6f 64 69 6e 67  euc-jp" encoding
37c10 20 28 74 61 6b 61 68 61 73 68 69 29 0a 0a 32 30   (takahashi)..20
37c20 30 30 2d 31 31 2d 30 31 20 28 6d 65 6d 20 6c 65  00-11-01 (mem le
37c30 61 6b 29 20 43 6f 72 72 65 63 74 65 64 20 65 78  ak) Corrected ex
37c40 63 65 73 73 69 76 65 20 6d 65 6d 20 75 73 65 20  cessive mem use 
37c50 6f 66 20 69 6e 66 6f 20 65 78 69 73 74 73 20 6f  of info exists o
37c60 6e 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e 74  n a.non-existent
37c70 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 20 28   array element (
37c80 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 31 31 2d  hobbs)..2000-11-
37c90 30 32 20 28 62 75 67 20 66 69 78 29 20 43 6f 72  02 (bug fix) Cor
37ca0 72 65 63 74 65 64 20 73 68 61 72 69 6e 67 20 6f  rected sharing o
37cb0 66 20 74 63 6c 4c 69 62 72 61 72 79 50 61 74 68  f tclLibraryPath
37cc0 20 69 6e 20 74 68 72 65 61 64 65 64 0a 65 6e 76   in threaded.env
37cd0 69 72 6f 6e 6d 65 6e 74 20 28 67 72 61 76 65 72  ironment (graver
37ce0 65 61 75 78 29 0a 0a 32 30 30 30 2d 31 31 2d 30  eaux)..2000-11-0
37cf0 33 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  3 (new feature) 
37d00 54 63 6c 5f 53 65 74 4d 61 69 6e 4c 6f 6f 70 20  Tcl_SetMainLoop 
37d10 65 6e 61 62 6c 65 73 20 64 65 66 69 6e 69 6e 67  enables defining
37d20 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 20 66   an event loop f
37d30 6f 72 0a 74 63 6c 73 68 2e 20 20 54 68 69 73 20  or.tclsh.  This 
37d40 65 6e 61 62 6c 65 73 20 54 6b 20 61 73 20 61 20  enables Tk as a 
37d50 74 72 75 6c 79 20 6c 6f 61 64 61 62 6c 65 20 70  truly loadable p
37d60 61 63 6b 61 67 65 2e 20 28 68 6f 62 62 73 29 0a  ackage. (hobbs).
37d70 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  .--- Released 8.
37d80 34 61 32 2c 20 4e 6f 76 65 6d 62 65 72 20 33 2c  4a2, November 3,
37d90 20 32 30 30 30 20 2d 2d 2d 20 53 65 65 20 43 68   2000 --- See Ch
37da0 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65 74 61  angeLog for deta
37db0 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30 2d 30 39  ils ---..2000-09
37dc0 2d 32 37 20 28 62 75 67 20 66 69 78 29 20 66 69  -27 (bug fix) fi
37dd0 78 65 64 20 61 20 62 75 67 20 69 6e 74 72 6f 64  xed a bug introd
37de0 75 63 65 64 20 62 79 20 61 20 70 61 72 74 69 61  uced by a partia
37df0 6c 20 66 69 78 20 69 6e 20 38 2e 33 2e 32 20 74  l fix in 8.3.2 t
37e00 68 61 74 0a 64 69 64 6e 27 74 20 73 65 74 20 6e  hat.didn't set n
37e10 6f 6e 42 6c 6f 63 6b 69 6e 67 20 63 6f 72 72 65  onBlocking corre
37e20 63 74 6c 79 20 77 68 65 6e 20 72 65 73 65 74 74  ctly when resett
37e30 69 6e 67 20 74 68 65 20 66 6c 61 67 73 20 66 6f  ing the flags fo
37e40 72 20 74 68 65 20 77 72 69 74 65 0a 73 69 64 65  r the write.side
37e50 20 28 6d 65 6d 20 6c 65 61 6b 29 20 43 6f 72 72   (mem leak) Corr
37e60 65 63 74 20 6d 65 6d 20 6c 65 61 6b 20 69 6e 20  ect mem leak in 
37e70 63 68 61 6e 6e 65 6c 73 20 77 68 65 6e 20 73 74  channels when st
37e80 61 74 65 50 74 72 20 77 61 73 20 72 65 6c 65 61  atePtr was relea
37e90 73 65 64 0a 28 68 6f 62 62 73 29 0a 0a 32 30 30  sed.(hobbs)..200
37ea0 30 2d 30 39 2d 32 39 20 28 62 75 67 20 66 69 78  0-09-29 (bug fix
37eb0 29 20 63 6f 72 72 65 63 74 65 64 20 72 65 70 6f  ) corrected repo
37ec0 72 74 69 6e 67 20 6f 66 20 73 70 61 63 65 20 70  rting of space p
37ed0 61 72 69 74 79 20 6f 6e 20 57 69 6e 64 6f 77 73  arity on Windows
37ee0 20 28 45 61 73 6f 6e 29 0a 0a 32 30 30 30 2d 31   (Eason)..2000-1
37ef0 30 2d 30 36 20 28 62 75 67 20 66 69 78 29 20 63  0-06 (bug fix) c
37f00 6f 72 72 65 63 74 65 64 20 5b 66 69 6c 65 20 63  orrected [file c
37f10 68 61 6e 6e 65 6c 73 5d 20 74 6f 20 6f 6e 6c 79  hannels] to only
37f20 20 72 65 74 75 72 6e 20 63 68 61 6e 6e 65 6c 73   return channels
37f30 20 69 6e 0a 74 68 65 20 63 75 72 72 65 6e 74 20   in.the current 
37f40 69 6e 74 65 72 70 72 65 74 65 72 20 28 68 6f 62  interpreter (hob
37f50 62 73 29 0a 0a 32 30 30 30 2d 31 30 2d 32 30 20  bs)..2000-10-20 
37f60 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 65 6e 68  (performance enh
37f70 61 6e 63 65 6d 65 6e 74 29 20 63 61 6c 6c 20 73  ancement) call s
37f80 74 61 74 20 6f 6e 6c 79 20 77 68 65 6e 20 6e 65  tat only when ne
37f90 63 65 73 73 61 72 79 20 69 6e 20 27 67 6c 6f 62  cessary in 'glob
37fa0 27 20 74 6f 0a 73 70 65 65 64 20 75 70 20 63 6f  ' to.speed up co
37fb0 6d 6d 61 6e 64 20 73 69 67 6e 69 66 69 63 61 6e  mmand significan
37fc0 74 6c 79 20 69 6e 20 62 61 73 65 20 63 61 73 65  tly in base case
37fd0 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d  s (hobbs)..2000-
37fe0 31 31 2d 30 31 20 28 6d 65 6d 20 6c 65 61 6b 29  11-01 (mem leak)
37ff0 20 43 6f 72 72 65 63 74 65 64 20 65 78 63 65 73   Corrected exces
38000 73 69 76 65 20 6d 65 6d 20 75 73 65 20 6f 66 20  sive mem use of 
38010 69 6e 66 6f 20 65 78 69 73 74 73 20 6f 6e 20 61  info exists on a
38020 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20 61 72  .non-existent ar
38030 72 61 79 20 65 6c 65 6d 65 6e 74 20 28 68 6f 62  ray element (hob
38040 62 73 29 0a 0a 32 30 30 30 2d 31 31 2d 30 32 20  bs)..2000-11-02 
38050 28 62 75 67 20 66 69 78 29 20 43 6f 72 72 65 63  (bug fix) Correc
38060 74 65 64 20 73 68 61 72 69 6e 67 20 6f 66 20 74  ted sharing of t
38070 63 6c 4c 69 62 72 61 72 79 50 61 74 68 20 69 6e  clLibraryPath in
38080 20 74 68 72 65 61 64 65 64 0a 65 6e 76 69 72 6f   threaded.enviro
38090 6e 6d 65 6e 74 20 28 67 72 61 76 65 72 65 61 75  nment (gravereau
380a0 78 29 0a 0a 32 30 30 30 2d 31 31 2d 32 33 20 28  x)..2000-11-23 (
380b0 6d 65 6d 20 6c 65 61 6b 29 20 66 69 78 65 64 20  mem leak) fixed 
380c0 70 6f 74 65 6e 74 69 61 6c 20 6d 65 6d 6f 72 79  potential memory
380d0 20 6c 65 61 6b 20 69 6e 20 65 72 72 6f 72 20 63   leak in error c
380e0 61 73 65 20 6f 66 20 6c 73 6f 72 74 0a 28 66 65  ase of lsort.(fe
380f0 6c 6c 6f 77 73 29 0a 0a 32 30 30 30 2d 31 32 2d  llows)..2000-12-
38100 30 39 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  09 (feature enha
38110 6e 63 65 6d 65 6e 74 29 20 63 68 61 6e 67 65 64  ncement) changed
38120 20 25 6f 20 61 6e 64 20 25 78 20 74 6f 20 75 73   %o and %x to us
38130 65 20 73 74 72 74 6f 75 6c 20 69 6e 73 74 65 61  e strtoul instea
38140 64 0a 6f 66 20 73 74 72 74 6f 6c 20 74 6f 20 63  d.of strtol to c
38150 6f 72 72 65 63 74 6c 79 20 70 72 65 73 65 72 76  orrectly preserv
38160 65 20 73 63 61 6e 3c 3e 66 6f 72 6d 61 74 20 63  e scan<>format c
38170 6f 6e 76 65 72 73 69 6f 6e 20 6f 66 20 6c 61 72  onversion of lar
38180 67 65 20 69 6e 74 65 67 65 72 73 0a 28 68 6f 62  ge integers.(hob
38190 62 73 29 0a 46 69 78 65 64 20 68 61 6e 64 6c 69  bs).Fixed handli
381a0 6e 67 20 6f 66 20 7b 21 3c 62 6f 6f 6c 65 61 6e  ng of {!<boolean
381b0 3e 7d 20 69 6e 20 65 78 70 72 65 73 73 69 6f 6e  >} in expression
381c0 73 20 28 68 6f 62 62 73 2c 20 66 65 6c 6c 6f 77  s (hobbs, fellow
381d0 73 29 0a 0a 32 30 30 30 2d 31 32 2d 31 34 20 28  s)..2000-12-14 (
381e0 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
381f0 65 6e 74 29 20 69 6d 70 72 6f 76 65 64 20 28 73  ent) improved (s
38200 29 72 61 6e 64 20 66 6f 72 20 36 34 2d 62 69 74  )rand for 64-bit
38210 20 70 6c 61 74 66 6f 72 6d 73 0a 28 70 6f 72 74   platforms.(port
38220 65 72 29 0a 0a 32 30 30 31 2d 30 31 2d 30 34 20  er)..2001-01-04 
38230 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
38240 74 65 64 20 70 61 72 73 69 6e 67 20 6f 66 20 24  ted parsing of $
38250 74 63 6c 5f 6c 69 62 50 61 74 68 20 61 74 20 73  tcl_libPath at s
38260 74 61 72 74 75 70 20 6f 6e 0a 57 69 6e 64 6f 77  tartup on.Window
38270 73 20 28 70 6f 72 74 65 72 29 0a 0a 32 30 30 31  s (porter)..2001
38280 2d 30 31 2d 33 30 20 28 62 75 67 20 66 69 78 29  -01-30 (bug fix)
38290 20 46 69 78 65 64 20 70 6f 73 73 69 62 6c 65 20   Fixed possible 
382a0 68 61 6e 67 73 20 69 6e 20 66 63 6f 70 79 2e 20  hangs in fcopy. 
382b0 28 70 6f 72 74 65 72 29 0a 0a 32 30 30 31 2d 30  (porter)..2001-0
382c0 32 2d 31 35 20 28 70 65 72 66 6f 72 6d 61 6e 63  2-15 (performanc
382d0 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69  e enhancement) i
382e0 6d 70 72 6f 76 65 64 20 65 66 66 69 63 69 65 6e  mproved efficien
382f0 63 79 20 6f 66 20 5b 73 74 72 69 6e 67 20 73 70  cy of [string sp
38300 6c 69 74 5d 0a 28 66 65 6c 6c 6f 77 73 29 0a 0a  lit].(fellows)..
38310 32 30 30 31 2d 30 33 2d 31 33 20 28 62 75 67 20  2001-03-13 (bug 
38320 66 69 78 29 20 43 6f 72 72 65 63 74 6c 79 20 70  fix) Correctly p
38330 6f 73 73 69 62 6c 65 20 6d 65 6d 6f 72 79 20 63  ossible memory c
38340 6f 72 72 75 70 74 69 6f 6e 20 69 6e 20 73 74 72  orruption in str
38350 69 6e 67 20 6d 61 70 20 7b 7d 0a 24 73 74 72 20  ing map {}.$str 
38360 28 66 65 6c 6c 6f 77 73 29 0a 0a 32 30 30 31 2d  (fellows)..2001-
38370 30 33 2d 32 39 20 28 62 75 67 20 66 69 78 29 20  03-29 (bug fix) 
38380 70 72 65 76 65 6e 74 20 70 6f 74 65 6e 74 69 61  prevent potentia
38390 6c 20 72 61 63 65 20 63 6f 6e 64 69 74 69 6f 6e  l race condition
383a0 20 61 6e 64 20 73 65 63 75 72 69 74 79 20 6c 65   and security le
383b0 61 6b 20 69 6e 0a 74 6d 70 20 66 69 6c 65 6e 61  ak in.tmp filena
383c0 6d 65 20 63 72 65 61 74 69 6f 6e 20 6f 6e 20 55  me creation on U
383d0 6e 69 78 2e 20 28 6d 61 78 29 0a 46 69 78 65 64  nix. (max).Fixed
383e0 20 68 61 6e 64 6c 69 6e 67 20 6f 66 20 74 69 6d   handling of tim
383f0 65 6f 75 74 20 66 6f 72 20 74 68 72 65 61 64 73  eout for threads
38400 20 28 63 6f 72 72 65 63 74 73 20 65 78 63 65 73   (corrects exces
38410 73 69 76 65 20 43 50 55 20 75 73 61 67 65 20 69  sive CPU usage i
38420 73 73 75 65 0a 66 6f 72 20 54 6b 20 6f 6e 20 55  ssue.for Tk on U
38430 6e 69 78 20 69 6e 20 74 68 72 65 61 64 65 64 20  nix in threaded 
38440 54 63 6c 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 29  Tcl environment)
38450 2e 20 28 72