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 1cf5354f32e6ef0c9b8824c491e2d7f2d1c5b16c:


0000: 52 65 63 65 6e 74 20 75 73 65 72 2d 76 69 73 69  Recent user-visi
0010: 62 6c 65 20 63 68 61 6e 67 65 73 20 74 6f 20 54  ble changes to T
0020: 63 6c 3a 0a 0a 52 43 53 3a 20 40 28 23 29 20 24  cl:..RCS: @(#) $
0030: 49 64 3a 20 63 68 61 6e 67 65 73 2c 76 20 31 2e  Id: changes,v 1.
0040: 31 33 36 2e 32 2e 31 31 20 32 30 30 38 2f 31 32  136.2.11 2008/12
0050: 2f 32 31 20 32 30 3a 31 33 3a 34 38 20 64 67 70  /21 20:13:48 dgp
0060: 20 45 78 70 20 24 0a 0a 31 2e 20 4e 6f 20 6d 6f   Exp $..1. No mo
0070: 72 65 20 5b 63 6f 6d 6d 61 6e 64 31 5d 20 5b 63  re [command1] [c
0080: 6f 6d 6d 61 6e 64 32 5d 20 63 6f 6e 73 74 72 75  ommand2] constru
0090: 63 74 20 66 6f 72 20 67 72 6f 75 70 69 6e 67 20  ct for grouping 
00a0: 6d 75 6c 74 69 70 6c 65 0a 63 6f 6d 6d 61 6e 64  multiple.command
00b0: 73 20 6f 6e 20 61 20 73 69 6e 67 6c 65 20 63 6f  s on a single co
00c0: 6d 6d 61 6e 64 20 6c 69 6e 65 2e 0a 0a 32 2e 20  mmand line...2. 
00d0: 53 65 6d 69 2d 63 6f 6c 6f 6e 20 6e 6f 77 20 61  Semi-colon now a
00e0: 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 67 72 6f  vailable for gro
00f0: 75 70 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 6f  uping commands o
0100: 6e 20 61 20 6c 69 6e 65 2e 0a 0a 33 2e 20 46 6f  n a line...3. Fo
0110: 72 20 61 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73  r a command to s
0120: 70 61 6e 20 6d 75 6c 74 69 70 6c 65 20 6c 69 6e  pan multiple lin
0130: 65 73 2c 20 6d 75 73 74 20 6e 6f 77 20 75 73 65  es, must now use
0140: 20 62 61 63 6b 73 6c 61 73 68 2d 72 65 74 75 72   backslash-retur
0150: 6e 0a 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20  n.at the end of 
0160: 65 61 63 68 20 6c 69 6e 65 20 62 75 74 20 74 68  each line but th
0170: 65 20 6c 61 73 74 2e 0a 0a 34 2e 20 22 56 61 72  e last...4. "Var
0180: 22 20 63 6f 6d 6d 61 6e 64 20 68 61 73 20 62 65  " command has be
0190: 65 6e 20 63 68 61 6e 67 65 64 20 74 6f 20 22 73  en changed to "s
01a0: 65 74 22 2e 0a 0a 35 2e 20 44 6f 75 62 6c 65 2d  et"...5. Double-
01b0: 71 75 6f 74 65 73 20 6e 6f 77 20 61 76 61 69 6c  quotes now avail
01c0: 61 62 6c 65 20 61 73 20 61 6e 20 61 72 67 75 6d  able as an argum
01d0: 65 6e 74 20 67 72 6f 75 70 69 6e 67 20 63 68 61  ent grouping cha
01e0: 72 61 63 74 65 72 2e 0a 0a 36 2e 20 22 52 65 74  racter...6. "Ret
01f0: 75 72 6e 22 20 6d 61 79 20 62 65 20 75 73 65 64  urn" may be used
0200: 20 61 74 20 74 6f 70 2d 6c 65 76 65 6c 2e 0a 0a   at top-level...
0210: 37 2e 20 4d 6f 72 65 20 62 61 63 6b 73 6c 61 73  7. More backslas
0220: 68 20 73 65 71 75 65 6e 63 65 73 20 61 76 61 69  h sequences avai
0230: 6c 61 62 6c 65 20 6e 6f 77 2e 20 20 49 6e 20 70  lable now.  In p
0240: 61 72 74 69 63 75 6c 61 72 2c 20 62 61 63 6b 73  articular, backs
0250: 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 0a 6d 61 79  lash-newline.may
0260: 20 62 65 20 75 73 65 64 20 74 6f 20 6a 6f 69 6e   be used to join
0270: 20 6c 69 6e 65 73 20 69 6e 20 63 6f 6d 6d 61 6e   lines in comman
0280: 64 20 66 69 6c 65 73 2e 0a 0a 38 2e 20 4e 65 77  d files...8. New
0290: 20 6f 72 20 6d 6f 64 69 66 69 65 64 20 62 75 69   or modified bui
02a0: 6c 74 2d 69 6e 20 63 6f 6d 6d 61 6e 64 73 3a 20  lt-in commands: 
02b0: 20 63 61 73 65 2c 20 72 65 74 75 72 6e 2c 20 66   case, return, f
02c0: 6f 72 2c 20 67 6c 6f 62 2c 20 69 6e 66 6f 2c 0a  or, glob, info,.
02d0: 70 72 69 6e 74 2c 20 72 65 74 75 72 6e 2c 20 73  print, return, s
02e0: 65 74 2c 20 73 6f 75 72 63 65 2c 20 73 74 72 69  et, source, stri
02f0: 6e 67 2c 20 75 70 6c 65 76 65 6c 2e 0a 0a 39 2e  ng, uplevel...9.
0300: 20 41 66 74 65 72 20 61 6e 20 65 72 72 6f 72 2c   After an error,
0310: 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 22 65   the variable "e
0320: 72 72 6f 72 49 6e 66 6f 22 20 69 73 20 66 69 6c  rrorInfo" is fil
0330: 6c 65 64 20 77 69 74 68 20 61 20 73 74 61 63 6b  led with a stack
0340: 0a 74 72 61 63 65 20 73 68 6f 77 69 6e 67 20 77  .trace showing w
0350: 68 61 74 20 77 61 73 20 62 65 69 6e 67 20 65 78  hat was being ex
0360: 65 63 75 74 65 64 20 77 68 65 6e 20 74 68 65 20  ecuted when the 
0370: 65 72 72 6f 72 20 6f 63 63 75 72 72 65 64 2e 0a  error occurred..
0380: 0a 31 30 2e 20 43 6f 6d 6d 61 6e 64 20 61 62 62  .10. Command abb
0390: 72 65 76 69 61 74 69 6f 6e 73 20 61 72 65 20 61  reviations are a
03a0: 63 63 65 70 74 65 64 20 77 68 65 6e 20 70 61 72  ccepted when par
03b0: 73 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 2c 20 62  sing commands, b
03c0: 75 74 0a 61 72 65 20 6e 6f 74 20 72 65 63 6f 6d  ut.are not recom
03d0: 6d 65 6e 64 65 64 20 65 78 63 65 70 74 20 66 6f  mended except fo
03e0: 72 20 70 75 72 65 6c 79 2d 69 6e 74 65 72 61 63  r purely-interac
03f0: 74 69 76 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a  tive commands...
0400: 31 31 2e 20 24 2c 20 73 65 74 2c 20 61 6e 64 20  11. $, set, and 
0410: 65 78 70 72 20 61 6c 6c 20 63 6f 6d 70 6c 61 69  expr all complai
0420: 6e 20 6e 6f 77 20 69 66 20 61 20 6e 6f 6e 2d 65  n now if a non-e
0430: 78 69 73 74 65 6e 74 20 76 61 72 69 61 62 6c 65  xistent variable
0440: 20 69 73 0a 72 65 66 65 72 65 6e 63 65 64 2e 0a   is.referenced..
0450: 0a 31 32 2e 20 48 69 73 74 6f 72 79 20 66 61 63  .12. History fac
0460: 69 6c 69 74 69 65 73 20 65 78 69 73 74 20 6e 6f  ilities exist no
0470: 77 2e 20 20 53 65 65 20 54 63 6c 2e 6d 61 6e 20  w.  See Tcl.man 
0480: 61 6e 64 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e  and Tcl_RecordAn
0490: 64 45 76 61 6c 2e 6d 61 6e 2e 0a 0a 31 33 2e 20  dEval.man...13. 
04a0: 43 68 61 6e 67 65 64 20 74 6f 20 64 69 73 74 69  Changed to disti
04b0: 6e 67 75 69 73 68 20 62 65 74 77 65 65 6e 20 65  nguish between e
04c0: 6d 70 74 79 20 76 61 72 69 61 62 6c 65 73 20 61  mpty variables a
04d0: 6e 64 20 74 68 6f 73 65 20 74 68 61 74 20 64 6f  nd those that do
04e0: 6e 27 74 0a 65 78 69 73 74 20 61 74 20 61 6c 6c  n't.exist at all
04f0: 2e 20 20 49 6e 74 65 72 66 61 63 65 73 20 74 6f  .  Interfaces to
0500: 20 54 63 6c 5f 47 65 74 56 61 72 20 61 6e 64 20   Tcl_GetVar and 
0510: 54 63 6c 5f 50 61 72 73 65 56 61 72 20 68 61 76  Tcl_ParseVar hav
0520: 65 20 63 68 61 6e 67 65 64 0a 28 4e 55 4c 4c 20  e changed.(NULL 
0530: 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20  return value is 
0540: 6e 6f 77 20 70 6f 73 73 69 62 6c 65 29 2e 20 20  now possible).  
0550: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
0560: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
0570: 2a 0a 0a 31 34 2e 20 43 68 61 6e 67 65 64 20 6d  *..14. Changed m
0580: 65 61 6e 69 6e 67 20 6f 66 20 22 6c 65 76 65 6c  eaning of "level
0590: 22 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 22 75  " argument to "u
05a0: 70 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64 20  plevel" command 
05b0: 28 31 20 6e 6f 77 20 6d 65 61 6e 73 0a 22 67 6f  (1 now means."go
05c0: 20 75 70 20 6f 6e 65 20 6c 65 76 65 6c 22 2c 20   up one level", 
05d0: 6e 6f 74 20 22 67 6f 20 74 6f 20 6c 65 76 65 6c  not "go to level
05e0: 20 31 22 3b 20 22 23 31 22 20 6d 65 61 6e 73 20   1"; "#1" means 
05f0: 22 67 6f 20 74 6f 20 6c 65 76 65 6c 20 31 22 29  "go to level 1")
0600: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
0610: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
0620: 2a 2a 2a 0a 0a 31 35 2e 20 33 2f 31 39 2f 39 30  ***..15. 3/19/90
0630: 20 41 64 64 65 64 20 22 69 6e 66 6f 20 65 78 69   Added "info exi
0640: 73 74 73 22 20 6f 70 74 69 6f 6e 20 74 6f 20 73  sts" option to s
0650: 65 65 20 69 66 20 76 61 72 69 61 62 6c 65 20 65  ee if variable e
0660: 78 69 73 74 73 2e 0a 0a 31 36 2e 20 33 2f 31 39  xists...16. 3/19
0670: 2f 39 30 20 41 64 64 65 64 20 22 6e 6f 41 62 62  /90 Added "noAbb
0680: 72 65 76 22 20 76 61 72 69 61 62 6c 65 20 74 6f  rev" variable to
0690: 20 70 72 6f 68 69 62 69 74 20 63 6f 6d 6d 61 6e   prohibit comman
06a0: 64 20 61 62 62 72 65 76 69 61 74 69 6f 6e 73 2e  d abbreviations.
06b0: 0a 0a 31 37 2e 20 33 2f 31 39 2f 39 30 20 41 64  ..17. 3/19/90 Ad
06c0: 64 65 64 20 65 78 74 72 61 20 65 72 72 6f 72 49  ded extra errorI
06d0: 6e 66 6f 20 6f 70 74 69 6f 6e 20 74 6f 20 22 65  nfo option to "e
06e0: 72 72 6f 72 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a  rror" command...
06f0: 31 38 2e 20 33 2f 32 31 2f 39 30 20 44 6f 75 62  18. 3/21/90 Doub
0700: 6c 65 2d 71 75 6f 74 65 73 20 6e 6f 77 20 6f 6e  le-quotes now on
0710: 6c 79 20 61 66 66 65 63 74 20 73 70 61 63 65 3a  ly affect space:
0720: 20 20 63 6f 6d 6d 61 6e 64 2c 20 76 61 72 69 61    command, varia
0730: 62 6c 65 2c 0a 61 6e 64 20 62 61 63 6b 73 6c 61  ble,.and backsla
0740: 73 68 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73  sh substitutions
0750: 20 73 74 69 6c 6c 20 6f 63 63 75 72 20 69 6e 73   still occur ins
0760: 69 64 65 20 64 6f 75 62 6c 65 2d 71 75 6f 74 65  ide double-quote
0770: 73 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  s..*** POTENTIAL
0780: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
0790: 20 2a 2a 2a 0a 0a 31 39 2e 20 33 2f 32 31 2f 39   ***..19. 3/21/9
07a0: 30 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20  0 Added support 
07b0: 66 6f 72 20 5c 72 2e 0a 0a 32 30 2e 20 33 2f 32  for \r...20. 3/2
07c0: 31 2f 39 30 20 4c 69 73 74 2c 20 63 6f 6e 63 61  1/90 List, conca
07d0: 74 2c 20 65 76 61 6c 2c 20 61 6e 64 20 67 6c 6f  t, eval, and glo
07e0: 62 20 63 6f 6d 6d 61 6e 64 73 20 61 6c 6c 20 65  b commands all e
07f0: 78 70 65 63 74 20 61 74 20 6c 65 61 73 74 0a 6f  xpect at least.o
0800: 6e 65 20 61 72 67 75 6d 65 6e 74 20 6e 6f 77 2e  ne argument now.
0810: 20 20 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20    *** POTENTIAL 
0820: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
0830: 2a 2a 2a 0a 0a 32 31 2e 20 33 2f 32 32 2f 39 30  ***..21. 3/22/90
0840: 20 41 64 64 65 64 20 22 3f 3a 22 20 6f 70 65 72   Added "?:" oper
0850: 61 74 6f 72 73 20 74 6f 20 65 78 70 72 65 73 73  ators to express
0860: 69 6f 6e 73 2e 0a 0a 32 32 2e 20 33 2f 32 35 2f  ions...22. 3/25/
0870: 39 30 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  90 Fixed bug in 
0880: 54 63 6c 5f 52 65 73 75 6c 74 20 74 68 61 74 20  Tcl_Result that 
0890: 63 61 75 73 65 64 20 6d 65 6d 6f 72 79 20 74 6f  caused memory to
08a0: 20 67 65 74 20 74 72 61 73 68 65 64 2e 0a 0a 2d   get trashed...-
08b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
08c0: 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73  -- Released vers
08d0: 69 6f 6e 20 33 2e 31 20 2d 2d 2d 2d 2d 2d 2d 2d  ion 3.1 --------
08e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32  -------------..2
08f0: 33 2e 20 33 2f 32 39 2f 39 30 20 46 69 78 65 64  3. 3/29/90 Fixed
0900: 20 62 75 67 20 74 68 61 74 20 63 61 75 73 65 64   bug that caused
0910: 20 22 66 69 6c 65 20 61 2e 62 2f 63 20 65 78 74   "file a.b/c ext
0920: 22 20 74 6f 20 72 65 74 75 72 6e 20 22 2e 62 2f  " to return ".b/
0930: 63 22 2e 0a 0a 32 34 2e 20 33 2f 32 39 2f 39 30  c"...24. 3/29/90
0940: 20 53 65 6d 69 2d 63 6f 6c 6f 6e 20 69 73 20 6e   Semi-colon is n
0950: 6f 74 20 74 72 65 61 74 65 64 20 73 70 65 63 69  ot treated speci
0960: 61 6c 6c 79 20 77 68 65 6e 20 65 6e 63 6c 6f 73  ally when enclos
0970: 65 64 20 69 6e 0a 64 6f 75 62 6c 65 2d 71 75 6f  ed in.double-quo
0980: 74 65 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  tes...----------
0990: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
09a0: 65 64 20 76 65 72 73 69 6f 6e 20 33 2e 32 20 2d  ed version 3.2 -
09b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
09c0: 2d 2d 2d 2d 0a 0a 32 35 2e 20 34 2f 31 36 2f 39  ----..25. 4/16/9
09d0: 30 20 52 65 77 72 6f 74 65 20 22 65 78 65 63 22  0 Rewrote "exec"
09e0: 20 6e 6f 74 20 74 6f 20 75 73 65 20 73 65 6c 65   not to use sele
09f0: 63 74 20 6f 72 20 73 69 67 6e 61 6c 73 20 61 6e  ct or signals an
0a00: 79 6d 6f 72 65 2e 0a 53 68 6f 75 6c 64 20 62 65  ymore..Should be
0a10: 20 6d 6f 72 65 20 53 79 73 2d 56 20 63 6f 6d 70   more Sys-V comp
0a20: 61 74 69 62 6c 65 2c 20 61 6e 64 20 6e 6f 20 73  atible, and no s
0a30: 6c 6f 77 65 72 20 69 6e 20 74 68 65 20 6e 6f 72  lower in the nor
0a40: 6d 61 6c 20 63 61 73 65 2e 0a 0a 32 36 2e 20 34  mal case...26. 4
0a50: 2f 31 38 2f 39 30 20 52 65 77 72 6f 74 65 20 22  /18/90 Rewrote "
0a60: 67 6c 6f 62 22 20 74 6f 20 65 6c 69 6d 69 6e 61  glob" to elimina
0a70: 74 65 20 47 4e 55 20 63 6f 64 65 20 28 74 68 65  te GNU code (the
0a80: 72 65 27 73 20 6e 6f 20 47 4e 55 20 63 6f 64 65  re's no GNU code
0a90: 0a 6c 65 66 74 20 69 6e 20 54 63 6c 2c 20 6e 6f  .left in Tcl, no
0aa0: 77 29 2c 20 61 6e 64 20 61 64 64 65 64 20 54 63  w), and added Tc
0ab0: 6c 5f 54 69 6c 64 65 53 75 62 73 74 20 70 72 6f  l_TildeSubst pro
0ac0: 63 65 64 75 72 65 2e 20 20 41 64 64 65 64 20 61  cedure.  Added a
0ad0: 75 74 6f 6d 61 74 69 63 0a 74 69 6c 64 65 2d 73  utomatic.tilde-s
0ae0: 75 62 73 74 69 74 75 74 69 6f 6e 20 69 6e 20 6d  ubstitution in m
0af0: 61 6e 79 20 63 6f 6d 6d 61 6e 64 73 2c 20 69 6e  any commands, in
0b00: 63 6c 75 64 69 6e 67 20 22 67 6c 6f 62 22 2e 0a  cluding "glob"..
0b10: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
0b20: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65  ---- Released ve
0b30: 72 73 69 6f 6e 20 33 2e 33 20 2d 2d 2d 2d 2d 2d  rsion 3.3 ------
0b40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
0b50: 0a 32 37 2e 20 37 2f 31 31 2f 39 30 20 41 64 64  .27. 7/11/90 Add
0b60: 65 64 20 22 54 63 6c 5f 41 70 70 65 6e 64 52 65  ed "Tcl_AppendRe
0b70: 73 75 6c 74 22 20 70 72 6f 63 65 64 75 72 65 2e  sult" procedure.
0b80: 0a 0a 32 38 2e 20 37 2f 32 30 2f 39 30 20 22 48  ..28. 7/20/90 "H
0b90: 69 73 74 6f 72 79 22 20 77 69 74 68 20 6e 6f 20  istory" with no 
0ba0: 6f 70 74 69 6f 6e 73 20 6e 6f 77 20 64 65 66 61  options now defa
0bb0: 75 6c 74 73 20 74 6f 20 22 68 69 73 74 6f 72 79  ults to "history
0bc0: 20 69 6e 66 6f 22 0a 72 61 74 68 65 72 20 74 68   info".rather th
0bd0: 61 6e 20 74 6f 20 22 68 69 73 74 6f 72 79 20 72  an to "history r
0be0: 65 64 6f 22 2e 20 20 41 6c 74 68 6f 75 67 68 20  edo".  Although 
0bf0: 74 68 69 73 20 69 73 20 61 20 62 61 63 6b 77 61  this is a backwa
0c00: 72 64 20 69 6e 63 6f 6d 70 61 74 69 62 69 6c 69  rd incompatibili
0c10: 74 79 2c 0a 69 74 20 73 68 6f 75 6c 64 20 6f 6e  ty,.it should on
0c20: 6c 79 20 62 65 20 75 73 65 64 20 69 6e 74 65 72  ly be used inter
0c30: 61 63 74 69 76 65 6c 79 20 61 6e 64 20 74 68 75  actively and thu
0c40: 73 20 73 68 6f 75 6c 64 6e 27 74 20 70 72 65 73  s shouldn't pres
0c50: 65 6e 74 20 61 6e 79 0a 63 6f 6d 70 61 74 69 62  ent any.compatib
0c60: 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73 20 77  ility problems w
0c70: 69 74 68 20 73 63 72 69 70 74 73 2e 0a 0a 32 39  ith scripts...29
0c80: 2e 20 37 2f 32 30 2f 39 30 20 41 64 64 65 64 20  . 7/20/90 Added 
0c90: 22 54 63 6c 5f 47 65 74 49 6e 74 65 67 65 72 22  "Tcl_GetInteger"
0ca0: 2c 20 22 54 63 6c 5f 47 65 74 44 6f 75 62 6c 65  , "Tcl_GetDouble
0cb0: 22 2c 20 61 6e 64 20 22 54 63 6c 5f 47 65 74 42  ", and "Tcl_GetB
0cc0: 6f 6f 6c 65 61 6e 22 0a 70 72 6f 63 65 64 75 72  oolean".procedur
0cd0: 65 73 2e 0a 0a 33 30 2e 20 37 2f 32 32 2f 39 30  es...30. 7/22/90
0ce0: 20 52 65 6d 6f 76 65 64 20 22 54 63 6c 5f 57 61   Removed "Tcl_Wa
0cf0: 74 63 68 49 6e 74 65 72 70 22 20 70 72 6f 63 65  tchInterp" proce
0d00: 64 75 72 65 3a 20 20 64 6f 65 73 6e 27 74 20 73  dure:  doesn't s
0d10: 65 65 6d 20 74 6f 20 62 65 0a 6e 65 63 65 73 73  eem to be.necess
0d20: 61 72 79 2c 20 73 69 6e 63 65 20 74 68 65 20 73  ary, since the s
0d30: 61 6d 65 20 65 66 66 65 63 74 20 63 61 6e 20 62  ame effect can b
0d40: 65 20 61 63 68 69 65 76 65 64 20 77 69 74 68 20  e achieved with 
0d50: 74 68 65 20 64 65 6c 65 74 69 6f 6e 0a 63 61 6c  the deletion.cal
0d60: 6c 62 61 63 6b 73 20 6f 6e 20 69 6e 64 69 76 69  lbacks on indivi
0d70: 64 75 61 6c 20 63 6f 6d 6d 61 6e 64 73 2e 20 20  dual commands.  
0d80: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
0d90: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
0da0: 2a 0a 0a 33 31 2e 20 37 2f 32 33 2f 39 30 20 41  *..31. 7/23/90 A
0db0: 64 64 65 64 20 76 61 72 69 61 62 6c 65 20 74 72  dded variable tr
0dc0: 61 63 69 6e 67 3a 20 20 54 63 6c 5f 54 72 61 63  acing:  Tcl_Trac
0dd0: 65 56 61 72 2c 20 54 63 6c 5f 55 6e 54 72 61 63  eVar, Tcl_UnTrac
0de0: 65 56 61 72 2c 0a 61 6e 64 20 54 63 6c 5f 56 61  eVar,.and Tcl_Va
0df0: 72 54 72 61 63 65 49 6e 66 6f 20 70 72 6f 63 65  rTraceInfo proce
0e00: 64 75 72 65 73 2c 20 22 74 72 61 63 65 22 20 63  dures, "trace" c
0e10: 6f 6d 6d 61 6e 64 2e 0a 0a 33 32 2e 20 38 2f 39  ommand...32. 8/9
0e20: 2f 39 30 20 4d 61 69 6c 65 64 20 6f 75 74 20 6c  /90 Mailed out l
0e30: 69 73 74 20 6f 66 20 61 6c 6c 20 62 75 67 20 66  ist of all bug f
0e40: 69 78 65 73 20 73 69 6e 63 65 20 33 2e 33 20 72  ixes since 3.3 r
0e50: 65 6c 65 61 73 65 2e 0a 0a 33 33 2e 20 38 2f 32  elease...33. 8/2
0e60: 39 2f 39 30 20 46 69 78 65 64 20 62 75 67 73 20  9/90 Fixed bugs 
0e70: 69 6e 20 54 63 6c 5f 4d 65 72 67 65 20 72 65 6c  in Tcl_Merge rel
0e80: 61 74 69 6e 67 20 74 6f 20 62 61 63 6b 73 6c 61  ating to backsla
0e90: 73 68 65 73 20 61 6e 64 0a 73 65 6d 69 2d 63 6f  shes and.semi-co
0ea0: 6c 6f 6e 73 2e 20 20 4d 61 69 6c 65 64 20 6f 75  lons.  Mailed ou
0eb0: 74 20 70 61 74 63 68 2e 0a 0a 33 34 2e 20 39 2f  t patch...34. 9/
0ec0: 33 2f 39 30 20 46 69 78 65 64 20 62 75 67 20 69  3/90 Fixed bug i
0ed0: 6e 20 74 63 6c 42 61 73 69 63 2e 63 3a 20 71 75  n tclBasic.c: qu
0ee0: 6f 74 65 73 20 77 65 72 65 6e 27 74 20 71 75 6f  otes weren't quo
0ef0: 74 69 6e 67 20 5d 27 73 2e 0a 4d 61 69 6c 65 64  ting ]'s..Mailed
0f00: 20 6f 75 74 20 70 61 74 63 68 2e 0a 0a 33 35 2e   out patch...35.
0f10: 20 39 2f 31 39 2f 39 30 20 52 65 77 72 6f 74 65   9/19/90 Rewrote
0f20: 20 65 78 65 63 20 74 6f 20 61 6c 77 61 79 73 20   exec to always 
0f30: 75 73 65 20 66 69 6c 65 73 20 62 6f 74 68 20 66  use files both f
0f40: 6f 72 20 69 6e 70 75 74 20 61 6e 64 0a 6f 75 74  or input and.out
0f50: 70 75 74 20 74 6f 20 74 68 65 20 70 72 6f 63 65  put to the proce
0f60: 73 73 2e 20 20 54 68 65 20 6f 6c 64 20 70 69 70  ss.  The old pip
0f70: 65 2d 62 61 73 65 64 20 76 65 72 73 69 6f 6e 20  e-based version 
0f80: 64 69 64 6e 27 74 20 77 6f 72 6b 20 69 66 0a 74  didn't work if.t
0f90: 68 65 20 65 78 65 63 27 65 64 20 70 72 6f 63 65  he exec'ed proce
0fa0: 73 73 20 66 6f 72 6b 65 64 20 61 20 63 68 69 6c  ss forked a chil
0fb0: 64 20 61 6e 64 20 74 68 65 6e 20 65 78 69 74 65  d and then exite
0fc0: 64 3a 20 20 54 63 6c 20 77 61 69 74 65 64 0a 61  d:  Tcl waited.a
0fd0: 72 6f 75 6e 64 20 66 6f 72 20 73 74 64 6f 75 74  round for stdout
0fe0: 20 74 6f 20 67 65 74 20 63 6c 6f 73 65 64 2c 20   to get closed, 
0ff0: 77 68 69 63 68 20 64 69 64 6e 27 74 20 68 61 70  which didn't hap
1000: 70 65 6e 20 75 6e 74 69 6c 20 74 68 65 0a 67 72  pen until the.gr
1010: 61 6e 64 63 68 69 6c 64 20 65 78 69 74 65 64 2e  andchild exited.
1020: 0a 0a 33 36 2e 20 31 31 2f 35 2f 39 30 20 45 52  ..36. 11/5/90 ER
1030: 52 5f 49 4e 5f 50 52 4f 47 52 45 53 53 20 66 6c  R_IN_PROGRESS fl
1040: 61 67 20 77 61 73 6e 27 74 20 62 65 69 6e 67 20  ag wasn't being 
1050: 63 6c 65 61 72 65 64 20 73 6f 6f 6e 20 65 6e 6f  cleared soon eno
1060: 75 67 68 0a 69 6e 20 54 63 6c 5f 45 76 61 6c 2c  ugh.in Tcl_Eval,
1070: 20 61 6c 6c 6f 77 69 6e 67 20 65 72 72 6f 72 20   allowing error 
1080: 6d 65 73 73 61 67 65 73 20 66 72 6f 6d 20 64 69  messages from di
1090: 66 66 65 72 65 6e 74 20 63 6f 6d 6d 61 6e 64 73  fferent commands
10a0: 20 74 6f 0a 70 69 6c 65 20 75 70 20 69 6e 20 24   to.pile up in $
10b0: 65 72 72 6f 72 49 6e 66 6f 2e 20 20 46 69 78 65  errorInfo.  Fixe
10c0: 64 20 62 79 20 72 65 2d 61 72 72 61 6e 67 69 6e  d by re-arrangin
10d0: 67 20 63 6f 64 65 20 69 6e 20 54 63 6c 5f 45 76  g code in Tcl_Ev
10e0: 61 6c 20 74 68 61 74 0a 72 65 2d 69 6e 69 74 69  al that.re-initi
10f0: 61 6c 69 7a 65 73 20 72 65 73 75 6c 74 20 61 6e  alizes result an
1100: 64 20 45 52 52 5f 49 4e 5f 50 52 4f 47 52 45 53  d ERR_IN_PROGRES
1110: 53 20 66 6c 61 67 2e 20 20 44 69 64 6e 27 74 20  S flag.  Didn't 
1120: 6d 61 69 6c 20 6f 75 74 0a 70 61 74 63 68 3a 20  mail out.patch: 
1130: 20 63 68 61 6e 67 65 73 20 74 6f 6f 20 63 6f 6d   changes too com
1140: 70 6c 69 63 61 74 65 64 20 74 6f 20 64 65 73 63  plicated to desc
1150: 72 69 62 65 2e 0a 0a 33 37 2e 20 31 32 2f 31 39  ribe...37. 12/19
1160: 2f 39 30 20 41 64 64 65 64 20 54 63 6c 5f 56 61  /90 Added Tcl_Va
1170: 72 45 76 61 6c 20 70 72 6f 63 65 64 75 72 65 20  rEval procedure 
1180: 61 73 20 61 20 63 6f 6e 76 65 6e 69 65 6e 63 65  as a convenience
1190: 20 66 6f 72 0a 61 73 73 65 6d 62 6c 69 6e 67 20   for.assembling 
11a0: 61 6e 64 20 65 78 65 63 75 74 69 6e 67 20 54 63  and executing Tc
11b0: 6c 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 33 38 2e  l commands...38.
11c0: 20 31 2f 32 39 2f 39 31 20 46 69 78 65 64 20 63   1/29/91 Fixed c
11d0: 6f 72 65 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f  ore leak in Tcl_
11e0: 41 64 64 45 72 72 6f 72 49 6e 66 6f 2e 20 20 41  AddErrorInfo.  A
11f0: 6c 73 6f 20 63 68 61 6e 67 65 64 20 70 72 6f 63  lso changed proc
1200: 65 64 75 72 65 0a 61 6e 64 20 54 63 6c 5f 45 76  edure.and Tcl_Ev
1210: 61 6c 20 73 6f 20 74 68 61 74 20 66 69 72 73 74  al so that first
1220: 20 63 61 6c 6c 20 74 6f 20 54 63 6c 5f 41 64 64   call to Tcl_Add
1230: 45 72 72 6f 72 49 6e 66 6f 20 6e 65 65 64 20 6e  ErrorInfo need n
1240: 6f 74 20 63 6f 6d 65 20 66 72 6f 6d 0a 54 63 6c  ot come from.Tcl
1250: 5f 45 76 61 6c 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  _Eval...--------
1260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
1270: 65 64 20 76 65 72 73 69 6f 6e 20 35 2e 30 20 77  ed version 5.0 w
1280: 69 74 68 20 54 6b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  ith Tk ---------
1290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 39 2e 20 34  ---------..39. 4
12a0: 2f 33 2f 39 31 20 52 65 6d 6f 76 65 64 20 63 68  /3/91 Removed ch
12b0: 61 6e 67 65 20 62 61 72 73 20 66 72 6f 6d 20 6d  ange bars from m
12c0: 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 2c 20 6c  anual entries, l
12d0: 65 61 76 69 6e 67 20 6f 6e 6c 79 20 74 68 6f 73  eaving only thos
12e0: 65 0a 74 68 61 74 20 63 61 6d 65 20 61 66 74 65  e.that came afte
12f0: 72 20 76 65 72 73 69 6f 6e 20 33 2e 33 20 77 61  r version 3.3 wa
1300: 73 20 72 65 6c 65 61 73 65 64 2e 0a 0a 34 30 2e  s released...40.
1310: 20 35 2f 31 37 2f 39 31 20 43 68 61 6e 67 65 64   5/17/91 Changed
1320: 20 74 65 73 74 73 20 74 6f 20 63 6f 6e 66 6f 72   tests to confor
1330: 6d 20 74 6f 20 4d 61 72 79 20 41 6e 6e 20 4d 61  m to Mary Ann Ma
1340: 79 2d 50 75 6d 70 68 72 65 79 27 73 20 61 70 70  y-Pumphrey's app
1350: 72 6f 61 63 68 2e 0a 20 0a 34 31 2e 20 35 2f 32  roach.. .41. 5/2
1360: 33 2f 39 31 20 4d 61 73 73 69 76 65 20 72 65 76  3/91 Massive rev
1370: 69 73 69 6f 6e 20 74 6f 20 54 63 6c 20 70 61 72  ision to Tcl par
1380: 73 65 72 20 74 6f 20 73 69 6d 70 6c 69 66 79 20  ser to simplify 
1390: 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  the implementati
13a0: 6f 6e 0a 6f 66 20 73 74 72 69 6e 67 20 61 6e 64  on.of string and
13b0: 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20   floating-point 
13c0: 73 75 70 70 6f 72 74 20 69 6e 20 65 78 70 72 65  support in expre
13d0: 73 73 69 6f 6e 73 2e 20 20 4e 65 77 6c 69 6e 65  ssions.  Newline
13e0: 73 20 69 6e 73 69 64 65 0a 5b 5d 20 61 72 65 20  s inside.[] are 
13f0: 6e 6f 77 20 74 72 65 61 74 65 64 20 61 73 20 63  now treated as c
1400: 6f 6d 6d 61 6e 64 20 73 65 70 61 72 61 74 6f 72  ommand separator
1410: 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 77 6f  s rather than wo
1420: 72 64 20 73 65 70 61 72 61 74 6f 72 73 0a 28 74  rd separators.(t
1430: 68 69 73 20 6d 61 6b 65 73 20 6e 65 77 6c 69 6e  his makes newlin
1440: 65 20 74 72 65 61 74 6d 65 6e 74 20 63 6f 6e 73  e treatment cons
1450: 69 73 74 65 6e 74 20 74 68 72 6f 75 67 68 6f 75  istent throughou
1460: 74 20 54 63 6c 29 2e 0a 2a 2a 2a 20 50 4f 54 45  t Tcl)..*** POTE
1470: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
1480: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34 32 2e 20 35  ILITY ***..42. 5
1490: 2f 32 33 2f 39 31 20 4d 61 73 73 69 76 65 20 72  /23/91 Massive r
14a0: 65 77 72 69 74 65 20 6f 66 20 65 78 70 72 65 73  ewrite of expres
14b0: 73 69 6f 6e 20 63 6f 64 65 20 74 6f 20 73 75 70  sion code to sup
14c0: 70 6f 72 74 20 66 6c 6f 61 74 69 6e 67 2d 70 6f  port floating-po
14d0: 69 6e 74 0a 76 61 6c 75 65 73 20 61 6e 64 20 73  int.values and s
14e0: 69 6d 70 6c 65 20 73 74 72 69 6e 67 20 63 6f 6d  imple string com
14f0: 70 61 72 69 73 6f 6e 73 2e 20 20 54 68 65 20 43  parisons.  The C
1500: 20 69 6e 74 65 72 66 61 63 65 73 20 74 6f 20 65   interfaces to e
1510: 78 70 72 65 73 73 69 6f 6e 0a 72 6f 75 74 69 6e  xpression.routin
1520: 65 73 20 68 61 76 65 20 63 68 61 6e 67 65 64 20  es have changed 
1530: 28 54 63 6c 5f 45 78 70 72 20 69 73 20 72 65 70  (Tcl_Expr is rep
1540: 6c 61 63 65 64 20 62 79 20 54 63 6c 5f 45 78 70  laced by Tcl_Exp
1550: 72 4c 6f 6e 67 2c 20 54 63 6c 5f 45 78 70 72 44  rLong, Tcl_ExprD
1560: 6f 75 62 6c 65 2c 0a 65 74 63 2e 29 2c 20 62 75  ouble,.etc.), bu
1570: 74 20 61 6c 6c 20 6f 6c 64 20 54 63 6c 20 65 78  t all old Tcl ex
1580: 70 72 65 73 73 69 6f 6e 20 73 74 72 69 6e 67 73  pression strings
1590: 20 73 68 6f 75 6c 64 20 62 65 20 61 63 63 65 70   should be accep
15a0: 74 65 64 20 62 79 20 74 68 65 20 6e 65 77 0a 65  ted by the new.e
15b0: 78 70 72 65 73 73 69 6f 6e 20 63 6f 64 65 2e 0a  xpression code..
15c0: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
15d0: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
15e0: 2a 0a 0a 34 33 2e 20 35 2f 32 33 2f 39 31 20 4d  *..43. 5/23/91 M
15f0: 6f 64 69 66 69 65 64 20 74 63 6c 48 69 73 74 6f  odified tclHisto
1600: 72 79 2e 63 20 74 6f 20 63 68 65 63 6b 20 66 6f  ry.c to check fo
1610: 72 20 6e 65 67 61 74 69 76 65 20 22 6b 65 65 70  r negative "keep
1620: 22 20 76 61 6c 75 65 2e 0a 0a 34 34 2e 20 35 2f  " value...44. 5/
1630: 32 33 2f 39 31 20 4d 6f 64 69 66 69 65 64 20 54  23/91 Modified T
1640: 63 6c 5f 42 61 63 6b 73 6c 61 73 68 20 74 6f 20  cl_Backslash to 
1650: 68 61 6e 64 6c 65 20 62 61 63 6b 73 6c 61 73 68  handle backslash
1660: 2d 6e 65 77 6c 69 6e 65 2e 20 20 49 74 20 6e 6f  -newline.  It no
1670: 77 0a 72 65 74 75 72 6e 73 20 30 20 74 6f 20 69  w.returns 0 to i
1680: 6e 64 69 63 61 74 65 20 74 68 61 74 20 61 20 62  ndicate that a b
1690: 61 63 6b 73 6c 61 73 68 20 73 65 71 75 65 6e 63  ackslash sequenc
16a0: 65 20 73 68 6f 75 6c 64 20 62 65 20 72 65 70 6c  e should be repl
16b0: 61 63 65 64 20 62 79 0a 6e 6f 20 63 68 61 72 61  aced by.no chara
16c0: 63 74 65 72 20 61 74 20 61 6c 6c 2e 0a 2a 2a 2a  cter at all..***
16d0: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
16e0: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
16f0: 34 35 2e 20 35 2f 32 39 2f 39 31 20 4d 6f 64 69  45. 5/29/91 Modi
1700: 66 69 65 64 20 74 6f 20 75 73 65 20 41 4e 53 49  fied to use ANSI
1710: 20 43 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 74   C function prot
1720: 6f 74 79 70 65 73 2e 20 20 4d 75 73 74 20 73 65  otypes.  Must se
1730: 74 0a 22 55 53 45 5f 41 4e 53 49 22 20 73 77 69  t."USE_ANSI" swi
1740: 74 63 68 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69  tch when compili
1750: 6e 67 20 74 6f 20 67 65 74 20 70 72 6f 74 6f 74  ng to get protot
1760: 79 70 65 73 2e 0a 0a 34 36 2e 20 35 2f 32 39 2f  ypes...46. 5/29/
1770: 39 31 20 43 6f 6d 70 6c 65 74 65 64 20 74 65 73  91 Completed tes
1780: 74 20 73 75 69 74 65 20 62 79 20 70 72 6f 76 69  t suite by provi
1790: 64 69 6e 67 20 74 65 73 74 73 20 66 6f 72 20 61  ding tests for a
17a0: 6c 6c 20 6f 66 20 74 68 65 0a 62 75 69 6c 74 2d  ll of the.built-
17b0: 69 6e 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 73 2e  in Tcl commands.
17c0: 0a 0a 34 37 2e 20 35 2f 32 39 2f 39 31 20 43 68  ..47. 5/29/91 Ch
17d0: 61 6e 67 65 64 20 54 63 6c 5f 43 6f 6e 63 61 74  anged Tcl_Concat
17e0: 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20 6c 65   to eliminate le
17f0: 61 64 69 6e 67 20 61 6e 64 20 74 72 61 69 6c 69  ading and traili
1800: 6e 67 0a 77 68 69 74 65 2d 73 70 61 63 65 20 69  ng.white-space i
1810: 6e 20 65 61 63 68 20 6f 66 20 74 68 65 20 74 68  n each of the th
1820: 69 6e 67 73 20 69 74 20 63 6f 6e 63 61 74 65 6e  ings it concaten
1830: 61 74 65 73 20 61 6e 64 20 74 6f 20 69 67 6e 6f  ates and to igno
1840: 72 65 0a 65 6c 65 6d 65 6e 74 73 20 74 68 61 74  re.elements that
1850: 20 61 72 65 20 65 6d 70 74 79 20 6f 72 20 68 61   are empty or ha
1860: 76 65 20 6f 6e 6c 79 20 77 68 69 74 65 20 73 70  ve only white sp
1870: 61 63 65 20 69 6e 20 74 68 65 6d 2e 20 20 54 68  ace in them.  Th
1880: 69 73 0a 70 72 6f 64 75 63 65 73 20 63 6c 65 61  is.produces clea
1890: 6e 65 72 20 6f 75 74 70 75 74 20 66 72 6f 6d 20  ner output from 
18a0: 74 68 65 20 22 63 6f 6e 63 61 74 22 20 63 6f 6d  the "concat" com
18b0: 6d 61 6e 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54  mand..*** POTENT
18c0: 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
18d0: 49 54 59 20 2a 2a 2a 0a 0a 34 38 2e 20 35 2f 33  ITY ***..48. 5/3
18e0: 31 2f 39 31 20 43 68 61 6e 67 65 64 20 22 73 65  1/91 Changed "se
18f0: 74 22 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 54  t" command and T
1900: 63 6c 5f 53 65 74 56 61 72 20 70 72 6f 63 65 64  cl_SetVar proced
1910: 75 72 65 20 74 6f 20 72 65 74 75 72 6e 0a 6e 65  ure to return.ne
1920: 77 20 76 61 6c 75 65 20 6f 66 20 76 61 72 69 61  w value of varia
1930: 62 6c 65 2e 0a 0a 34 39 2e 20 36 2f 31 2f 39 31  ble...49. 6/1/91
1940: 20 41 64 64 65 64 20 22 77 68 69 6c 65 22 20 61   Added "while" a
1950: 6e 64 20 22 63 64 22 20 63 6f 6d 6d 61 6e 64 73  nd "cd" commands
1960: 2e 0a 0a 35 30 2e 20 36 2f 31 2f 39 31 20 43 68  ...50. 6/1/91 Ch
1970: 61 6e 67 65 64 20 22 65 78 65 63 22 20 74 6f 20  anged "exec" to 
1980: 64 65 6c 65 74 65 20 74 68 65 20 6c 61 73 74 20  delete the last 
1990: 63 68 61 72 61 63 74 65 72 20 6f 66 20 70 72 6f  character of pro
19a0: 67 72 61 6d 0a 6f 75 74 70 75 74 20 69 66 20 69  gram.output if i
19b0: 74 20 69 73 20 61 20 6e 65 77 6c 69 6e 65 2e 20  t is a newline. 
19c0: 20 49 6e 20 6d 6f 73 74 20 63 61 73 65 73 20 74   In most cases t
19d0: 68 69 73 20 6d 61 6b 65 73 20 69 74 20 65 61 73  his makes it eas
19e0: 69 65 72 20 74 6f 0a 70 72 6f 63 65 73 73 20 70  ier to.process p
19f0: 72 6f 67 72 61 6d 2d 67 65 6e 65 72 61 74 65 64  rogram-generated
1a00: 20 6f 75 74 70 75 74 2e 0a 2a 2a 2a 20 50 4f 54   output..*** POT
1a10: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
1a20: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 35 31 2e 20  BILITY ***..51. 
1a30: 36 2f 31 2f 39 31 20 4d 61 64 65 20 73 75 72 65  6/1/91 Made sure
1a40: 20 74 68 61 74 20 70 6f 69 6e 74 65 72 73 20 61   that pointers a
1a50: 72 65 20 6e 65 76 65 72 20 75 73 65 64 20 61 66  re never used af
1a60: 74 65 72 20 66 72 65 65 69 6e 67 20 74 68 65 6d  ter freeing them
1a70: 2e 0a 0a 35 32 2e 20 36 2f 31 2f 39 31 20 46 69  ...52. 6/1/91 Fi
1a80: 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c 57 6f  xed bug in TclWo
1a90: 72 64 45 6e 64 20 77 68 65 72 65 20 69 74 20 77  rdEnd where it w
1aa0: 61 73 6e 27 74 20 64 65 61 6c 69 6e 67 20 77 69  asn't dealing wi
1ab0: 74 68 0a 5b 5d 20 69 6e 73 69 64 65 20 71 75 6f  th.[] inside quo
1ac0: 74 65 73 20 63 6f 72 72 65 63 74 6c 79 2e 0a 0a  tes correctly...
1ad0: 35 33 2e 20 36 2f 38 2f 39 31 20 46 69 78 65 64  53. 6/8/91 Fixed
1ae0: 20 65 78 65 63 2e 74 65 73 74 20 74 6f 20 61 63   exec.test to ac
1af0: 63 65 70 74 20 72 65 74 75 72 6e 20 76 61 6c 75  cept return valu
1b00: 65 73 20 6f 66 20 65 69 74 68 65 72 20 31 20 6f  es of either 1 o
1b10: 72 0a 32 35 35 20 66 72 6f 6d 20 22 66 61 6c 73  r.255 from "fals
1b20: 65 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35 34 2e  e" command...54.
1b30: 20 37 2f 36 2f 39 31 20 4d 61 73 73 69 76 65 20   7/6/91 Massive 
1b40: 6f 76 65 72 68 61 75 6c 20 6f 66 20 76 61 72 69  overhaul of vari
1b50: 61 62 6c 65 20 6d 61 6e 61 67 65 6d 65 6e 74 2e  able management.
1b60: 20 20 41 73 73 6f 63 69 61 74 69 76 65 0a 61 72    Associative.ar
1b70: 72 61 79 73 20 6e 6f 77 20 61 76 61 69 6c 61 62  rays now availab
1b80: 6c 65 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 22  le, along with "
1b90: 75 6e 73 65 74 22 20 63 6f 6d 6d 61 6e 64 20 28  unset" command (
1ba0: 61 6e 64 20 54 63 6c 5f 55 6e 73 65 74 56 61 72  and Tcl_UnsetVar
1bb0: 0a 70 72 6f 63 65 64 75 72 65 29 2e 20 20 56 61  .procedure).  Va
1bc0: 72 69 61 62 6c 65 20 74 72 61 63 65 73 20 68 61  riable traces ha
1bd0: 76 65 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65  ve been complete
1be0: 6c 79 20 72 65 77 6f 72 6b 65 64 3a 0a 69 6e 74  ly reworked:.int
1bf0: 65 72 66 61 63 65 73 20 64 69 66 66 65 72 65 6e  erfaces differen
1c00: 74 20 62 6f 74 68 20 66 72 6f 6d 20 54 63 6c 20  t both from Tcl 
1c10: 61 6e 64 20 43 2c 20 61 6e 64 20 6d 75 6c 74 69  and C, and multi
1c20: 70 6c 65 20 74 72 61 63 65 73 20 6d 61 79 0a 65  ple traces may.e
1c30: 78 69 73 74 20 6f 6e 20 73 61 6d 65 20 76 61 72  xist on same var
1c40: 69 61 62 6c 65 2e 20 20 43 61 6e 20 6e 6f 20 6c  iable.  Can no l
1c50: 6f 6e 67 65 72 20 72 65 64 65 66 69 6e 65 20 65  onger redefine e
1c60: 78 69 73 74 69 6e 67 20 6c 6f 63 61 6c 0a 76 61  xisting local.va
1c70: 72 69 61 62 6c 65 20 74 6f 20 62 65 20 67 6c 6f  riable to be glo
1c80: 62 61 6c 2e 20 20 43 61 6c 6c 69 6e 67 20 73 65  bal.  Calling se
1c90: 71 75 65 6e 63 65 73 20 68 61 76 65 20 63 68 61  quences have cha
1ca0: 6e 67 65 64 20 73 6c 69 67 68 74 6c 79 0a 66 6f  nged slightly.fo
1cb0: 72 20 54 63 6c 5f 47 65 74 56 61 72 20 61 6e 64  r Tcl_GetVar and
1cc0: 20 54 63 6c 5f 53 65 74 56 61 72 20 28 22 67 6c   Tcl_SetVar ("gl
1cd0: 6f 62 61 6c 22 20 69 73 20 6e 6f 77 20 22 66 6c  obal" is now "fl
1ce0: 61 67 73 22 29 2e 20 54 63 6c 5f 53 65 74 56 61  ags"). Tcl_SetVa
1cf0: 72 0a 63 61 6e 20 66 61 69 6c 20 61 6e 64 20 72  r.can fail and r
1d00: 65 74 75 72 6e 20 61 20 4e 55 4c 4c 20 72 65 73  eturn a NULL res
1d10: 75 6c 74 2e 20 20 4e 65 77 20 66 6f 72 6d 73 20  ult.  New forms 
1d20: 6f 66 20 76 61 72 69 61 62 6c 65 2d 6d 61 6e 69  of variable-mani
1d30: 70 75 6c 61 74 69 6f 6e 0a 70 72 6f 63 65 64 75  pulation.procedu
1d40: 72 65 73 3a 20 20 54 63 6c 5f 47 65 74 56 61 72  res:  Tcl_GetVar
1d50: 32 2c 20 54 63 6c 5f 53 65 74 56 61 72 32 2c 20  2, Tcl_SetVar2, 
1d60: 65 74 63 2e 20 20 53 79 6e 74 61 78 20 6f 66 20  etc.  Syntax of 
1d70: 76 61 72 69 61 62 6c 65 0a 24 2d 6e 6f 74 61 74  variable.$-notat
1d80: 69 6f 6e 20 63 68 61 6e 67 65 64 20 74 6f 20 73  ion changed to s
1d90: 75 70 70 6f 72 74 20 61 72 72 61 79 20 69 6e 64  upport array ind
1da0: 65 78 69 6e 67 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  exing..*** POTEN
1db0: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
1dc0: 4c 49 54 59 20 2a 2a 2a 0a 0a 35 35 2e 20 37 2f  LITY ***..55. 7/
1dd0: 36 2f 39 31 20 41 64 64 65 64 20 6e 65 77 20 6c  6/91 Added new l
1de0: 69 73 74 2d 6d 61 6e 69 70 75 6c 61 74 69 6f 6e  ist-manipulation
1df0: 20 70 72 6f 63 65 64 75 72 65 73 3a 20 20 54 63   procedures:  Tc
1e00: 6c 5f 53 63 61 6e 45 6c 65 6d 65 6e 74 2c 0a 54  l_ScanElement,.T
1e10: 63 6c 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e  cl_ConvertElemen
1e20: 74 2c 20 54 63 6c 5f 41 70 70 65 6e 64 45 6c 65  t, Tcl_AppendEle
1e30: 6d 65 6e 74 2e 0a 0a 35 36 2e 20 37 2f 31 32 2f  ment...56. 7/12/
1e40: 39 31 20 43 72 65 61 74 65 64 20 6e 65 77 20 70  91 Created new p
1e50: 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 45 76 61  rocedure Tcl_Eva
1e60: 6c 46 69 6c 65 2c 20 77 68 69 63 68 20 64 6f 65  lFile, which doe
1e70: 73 20 6d 6f 73 74 20 6f 66 20 74 68 65 0a 77 6f  s most of the.wo
1e80: 72 6b 20 6f 66 20 74 68 65 20 22 73 6f 75 72 63  rk of the "sourc
1e90: 65 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 35 37 2e  e" command...57.
1ea0: 20 37 2f 32 30 2f 39 31 20 4d 61 6a 6f 72 20 72   7/20/91 Major r
1eb0: 65 77 6f 72 6b 69 6e 67 20 6f 66 20 22 65 78 65  eworking of "exe
1ec0: 63 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c  c" command to al
1ed0: 6c 6f 77 20 70 69 70 65 6c 69 6e 65 73 2c 0a 6d  low pipelines,.m
1ee0: 6f 72 65 20 72 65 64 69 72 65 63 74 69 6f 6e 2c  ore redirection,
1ef0: 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 20 41 64   background.  Ad
1f00: 64 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72  ded new procedur
1f10: 65 73 20 54 63 6c 5f 46 6f 72 6b 2c 0a 54 63 6c  es Tcl_Fork,.Tcl
1f20: 5f 57 61 69 74 50 69 64 73 2c 20 54 63 6c 5f 44  _WaitPids, Tcl_D
1f30: 65 74 61 63 68 50 69 64 73 2c 20 61 6e 64 20 54  etachPids, and T
1f40: 63 6c 5f 43 72 65 61 74 65 50 69 70 65 6c 69 6e  cl_CreatePipelin
1f50: 65 2e 20 20 54 68 65 20 6f 6c 64 0a 22 3c 20 69  e.  The old."< i
1f60: 6e 70 75 74 22 20 6e 6f 74 61 74 69 6f 6e 20 68  nput" notation h
1f70: 61 73 20 62 65 65 6e 20 72 65 70 6c 61 63 65 64  as been replaced
1f80: 20 62 79 20 22 3c 3c 20 69 6e 70 75 74 22 20 28   by "<< input" (
1f90: 22 3c 22 20 69 73 20 66 6f 72 0a 72 65 64 69 72  "<" is for.redir
1fa0: 65 63 74 69 6f 6e 20 66 72 6f 6d 20 61 20 66 69  ection from a fi
1fb0: 6c 65 29 2e 20 20 41 6c 73 6f 20 68 61 6e 64 6c  le).  Also handl
1fc0: 65 73 20 65 72 72 6f 72 20 72 65 74 75 72 6e 73  es error returns
1fd0: 20 61 6e 64 20 61 62 6e 6f 72 6d 61 6c 0a 74 65   and abnormal.te
1fe0: 72 6d 69 6e 61 74 69 6f 6e 73 20 28 65 2e 67 2e  rminations (e.g.
1ff0: 20 73 69 67 6e 61 6c 73 29 20 64 69 66 66 65 72   signals) differ
2000: 65 6e 74 6c 79 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  ently..*** POTEN
2010: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
2020: 4c 49 54 59 20 2a 2a 2a 0a 0a 35 38 2e 20 37 2f  LITY ***..58. 7/
2030: 32 31 2f 39 31 20 41 64 64 65 64 20 22 61 70 70  21/91 Added "app
2040: 65 6e 64 22 20 61 6e 64 20 22 6c 61 70 70 65 6e  end" and "lappen
2050: 64 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 35 39  d" commands...59
2060: 2e 20 37 2f 32 32 2f 39 31 20 52 65 77 6f 72 6b  . 7/22/91 Rework
2070: 65 64 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65  ed error message
2080: 73 20 61 6e 64 20 6d 61 6e 75 61 6c 20 65 6e 74  s and manual ent
2090: 72 69 65 73 20 74 6f 20 75 73 65 0a 3f 78 3f 20  ries to use.?x? 
20a0: 61 73 20 74 68 65 20 6e 6f 74 61 74 69 6f 6e 20  as the notation 
20b0: 66 6f 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20  for an optional 
20c0: 61 72 67 75 6d 65 6e 74 20 78 2c 20 69 6e 73 74  argument x, inst
20d0: 65 61 64 20 6f 66 20 5b 78 5d 2e 20 20 54 68 65  ead of [x].  The
20e0: 0a 62 72 61 63 6b 65 74 20 6e 6f 74 61 74 69 6f  .bracket notatio
20f0: 6e 20 77 61 73 20 6f 66 74 65 6e 20 63 6f 6e 66  n was often conf
2100: 75 73 65 64 20 77 69 74 68 20 74 68 65 20 75 73  used with the us
2110: 65 20 6f 66 20 62 72 61 63 6b 65 74 73 20 66 6f  e of brackets fo
2120: 72 0a 63 6f 6d 6d 61 6e 64 20 73 75 62 73 74 69  r.command substi
2130: 74 75 74 69 6f 6e 2e 20 20 41 6c 73 6f 20 6d 6f  tution.  Also mo
2140: 64 69 66 69 65 64 20 65 72 72 6f 72 20 6d 65 73  dified error mes
2150: 73 61 67 65 73 20 74 6f 20 62 65 20 6d 6f 72 65  sages to be more
2160: 0a 63 6f 6e 73 69 73 74 65 6e 74 2e 0a 0a 36 30  .consistent...60
2170: 2e 20 37 2f 32 33 2f 39 31 20 54 63 6c 5f 44 65  . 7/23/91 Tcl_De
2180: 6c 65 74 65 43 6f 6d 6d 61 6e 64 20 6e 6f 77 20  leteCommand now 
2190: 72 65 74 75 72 6e 73 20 61 6e 20 69 6e 64 69 63  returns an indic
21a0: 61 74 69 6f 6e 20 6f 66 20 77 68 65 74 68 65 72  ation of whether
21b0: 0a 6f 72 20 6e 6f 74 20 74 68 65 20 63 6f 6d 6d  .or not the comm
21c0: 61 6e 64 20 61 63 74 75 61 6c 6c 79 20 65 78 69  and actually exi
21d0: 73 74 65 64 2c 20 61 6e 64 20 74 68 65 20 22 72  sted, and the "r
21e0: 65 6e 61 6d 65 22 20 63 6f 6d 6d 61 6e 64 20 75  ename" command u
21f0: 73 65 73 0a 74 68 69 73 20 69 6e 66 6f 72 6d 61  ses.this informa
2200: 74 69 6f 6e 20 74 6f 20 72 65 74 75 72 6e 20 61  tion to return a
2210: 6e 20 65 72 72 6f 72 20 69 66 20 61 6e 20 61 74  n error if an at
2220: 74 65 6d 70 74 20 69 73 20 6d 61 64 65 20 74 6f  tempt is made to
2230: 20 64 65 6c 65 74 65 0a 61 20 6e 6f 6e 2d 65 78   delete.a non-ex
2240: 69 73 74 65 6e 74 20 63 6f 6d 6d 61 6e 64 2e 0a  istent command..
2250: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
2260: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
2270: 2a 0a 0a 36 31 2e 20 37 2f 32 35 2f 39 31 20 41  *..61. 7/25/91 A
2280: 64 64 65 64 20 6e 65 77 20 22 65 72 72 6f 72 43  dded new "errorC
2290: 6f 64 65 22 20 6d 65 63 68 61 6e 69 73 6d 2c 20  ode" mechanism, 
22a0: 61 6c 6f 6e 67 20 77 69 74 68 20 70 72 6f 63 65  along with proce
22b0: 64 75 72 65 73 0a 54 63 6c 5f 53 65 74 45 72 72  dures.Tcl_SetErr
22c0: 6f 72 43 6f 64 65 2c 20 54 63 6c 5f 55 6e 69 78  orCode, Tcl_Unix
22d0: 45 72 72 6f 72 2c 20 61 6e 64 20 54 63 6c 5f 52  Error, and Tcl_R
22e0: 65 73 65 74 52 65 73 75 6c 74 2e 20 20 52 65 6e  esetResult.  Ren
22f0: 61 6d 65 64 0a 54 63 6c 5f 52 65 74 75 72 6e 20  amed.Tcl_Return 
2300: 74 6f 20 54 63 6c 5f 53 65 74 52 65 73 75 6c 74  to Tcl_SetResult
2310: 2c 20 62 75 74 20 6c 65 66 74 20 61 20 23 64 65  , but left a #de
2320: 66 69 6e 65 20 66 6f 72 20 54 63 6c 5f 52 65 74  fine for Tcl_Ret
2330: 75 72 6e 20 74 6f 0a 61 76 6f 69 64 20 63 6f 6d  urn to.avoid com
2340: 70 61 74 69 62 69 6c 69 74 79 20 70 72 6f 62 6c  patibility probl
2350: 65 6d 73 2e 0a 0a 36 32 2e 20 37 2f 32 36 2f 39  ems...62. 7/26/9
2360: 31 20 45 78 74 65 6e 64 65 64 20 22 63 61 73 65  1 Extended "case
2370: 22 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 61  " command with a
2380: 6c 74 65 72 6e 61 74 65 20 73 79 6e 74 61 78 20  lternate syntax 
2390: 77 68 65 72 65 20 61 6c 6c 0a 70 61 74 74 65 72  where all.patter
23a0: 6e 73 20 61 6e 64 20 63 6f 6d 6d 61 6e 64 73 20  ns and commands 
23b0: 61 72 65 20 74 6f 67 65 74 68 65 72 20 69 6e 20  are together in 
23c0: 61 20 73 69 6e 67 6c 65 20 6c 69 73 74 20 61 72  a single list ar
23d0: 67 75 6d 65 6e 74 3a 20 20 6d 61 6b 65 73 0a 69  gument:  makes.i
23e0: 74 20 65 61 73 69 65 72 20 74 6f 20 77 72 69 74  t easier to writ
23f0: 65 20 6d 75 6c 74 69 2d 6c 69 6e 65 20 63 61 73  e multi-line cas
2400: 65 20 73 74 61 74 65 6d 65 6e 74 73 2e 0a 0a 36  e statements...6
2410: 33 2e 20 37 2f 32 37 2f 39 31 20 43 68 61 6e 67  3. 7/27/91 Chang
2420: 65 64 20 22 70 72 69 6e 74 22 20 63 6f 6d 6d 61  ed "print" comma
2430: 6e 64 20 74 6f 20 70 65 72 66 6f 72 6d 20 74 69  nd to perform ti
2440: 6c 64 65 2d 73 75 62 73 74 69 74 75 74 69 6f 6e  lde-substitution
2450: 20 6f 6e 0a 74 68 65 20 66 69 6c 65 20 6e 61 6d   on.the file nam
2460: 65 2e 0a 0a 36 34 2e 20 37 2f 32 37 2f 39 31 20  e...64. 7/27/91 
2470: 41 64 64 65 64 20 22 74 6f 6c 6f 77 65 72 22 2c  Added "tolower",
2480: 20 22 74 6f 75 70 70 65 72 22 2c 20 22 74 72 69   "toupper", "tri
2490: 6d 22 2c 20 22 74 72 69 6d 6c 65 66 74 22 2c 20  m", "trimleft", 
24a0: 61 6e 64 20 22 74 72 69 6d 72 69 67 68 74 22 0a  and "trimright".
24b0: 6f 70 74 69 6f 6e 73 20 74 6f 20 22 73 74 72 69  options to "stri
24c0: 6e 67 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 36 35  ng" command...65
24d0: 2e 20 37 2f 32 39 2f 39 31 20 41 64 64 65 64 20  . 7/29/91 Added 
24e0: 22 61 74 69 6d 65 22 2c 20 22 6d 74 69 6d 65 22  "atime", "mtime"
24f0: 2c 20 22 73 69 7a 65 22 2c 20 61 6e 64 20 22 73  , "size", and "s
2500: 74 61 74 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20  tat" options to 
2510: 22 66 69 6c 65 22 0a 63 6f 6d 6d 61 6e 64 2e 0a  "file".command..
2520: 0a 36 36 2e 20 38 2f 31 2f 39 31 20 41 64 64 65  .66. 8/1/91 Adde
2530: 64 20 22 73 70 6c 69 74 22 20 61 6e 64 20 22 6a  d "split" and "j
2540: 6f 69 6e 22 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a  oin" commands...
2550: 36 37 2e 20 38 2f 31 31 2f 39 31 20 41 64 64 65  67. 8/11/91 Adde
2560: 64 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 66  d commands for f
2570: 69 6c 65 20 49 2f 4f 2c 20 69 6e 63 6c 75 64 69  ile I/O, includi
2580: 6e 67 20 22 6f 70 65 6e 22 2c 20 22 63 6c 6f 73  ng "open", "clos
2590: 65 22 2c 0a 22 72 65 61 64 22 2c 20 22 67 65 74  e",."read", "get
25a0: 73 22 2c 20 22 70 75 74 73 22 2c 20 22 66 6c 75  s", "puts", "flu
25b0: 73 68 22 2c 20 22 65 6f 66 22 2c 20 22 73 65 65  sh", "eof", "see
25c0: 6b 22 2c 20 61 6e 64 20 22 74 65 6c 6c 22 2e 0a  k", and "tell"..
25d0: 0a 36 38 2e 20 38 2f 31 34 2f 39 31 20 53 77 69  .68. 8/14/91 Swi
25e0: 74 63 68 65 64 20 74 6f 20 75 73 65 20 61 20 68  tched to use a h
25f0: 61 73 68 20 74 61 62 6c 65 20 66 6f 72 20 63 6f  ash table for co
2600: 6d 6d 61 6e 64 20 6c 6f 6f 6b 75 70 73 2e 20 20  mmand lookups.  
2610: 43 6f 6d 6d 61 6e 64 0a 61 62 62 72 65 76 69 61  Command.abbrevia
2620: 74 69 6f 6e 73 20 6e 6f 20 6c 6f 6e 67 65 72 20  tions no longer 
2630: 68 61 76 65 20 64 69 72 65 63 74 20 73 75 70 70  have direct supp
2640: 6f 72 74 20 69 6e 20 74 68 65 20 54 63 6c 20 69  ort in the Tcl i
2650: 6e 74 65 72 70 72 65 74 65 72 2c 20 62 75 74 0a  nterpreter, but.
2660: 69 74 20 73 68 6f 75 6c 64 20 62 65 20 70 6f 73  it should be pos
2670: 73 69 62 6c 65 20 74 6f 20 73 69 6d 75 6c 61 74  sible to simulat
2680: 65 20 74 68 65 6d 20 77 69 74 68 20 74 68 65 20  e them with the 
2690: 61 75 74 6f 2d 6c 6f 61 64 20 66 65 61 74 75 72  auto-load featur
26a0: 65 73 0a 64 65 73 63 72 69 62 65 64 20 62 65 6c  es.described bel
26b0: 6f 77 2e 20 20 54 68 65 20 22 6e 6f 41 62 62 72  ow.  The "noAbbr
26c0: 65 76 22 20 76 61 72 69 61 62 6c 65 20 69 73 20  ev" variable is 
26d0: 6e 6f 20 6c 6f 6e 67 65 72 20 75 73 65 64 20 62  no longer used b
26e0: 79 20 54 63 6c 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  y Tcl..*** POTEN
26f0: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
2700: 4c 49 54 59 20 2a 2a 2a 0a 0a 36 38 2e 35 20 38  LITY ***..68.5 8
2710: 2f 31 35 2f 39 31 20 41 64 64 65 64 20 73 75 70  /15/91 Added sup
2720: 70 6f 72 74 20 66 6f 72 20 22 75 6e 6b 6e 6f 77  port for "unknow
2730: 6e 22 20 63 6f 6d 6d 61 6e 64 2c 20 77 68 69 63  n" command, whic
2740: 68 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f  h can be used to
2750: 0a 63 6f 6d 70 6c 65 74 65 20 61 62 62 72 65 76  .complete abbrev
2760: 69 61 74 69 6f 6e 73 2c 20 61 75 74 6f 2d 6c 6f  iations, auto-lo
2770: 61 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73  ad library files
2780: 2c 20 61 75 74 6f 2d 65 78 65 63 20 73 68 65 6c  , auto-exec shel
2790: 6c 0a 63 6f 6d 6d 61 6e 64 73 2c 20 65 74 63 2e  l.commands, etc.
27a0: 0a 0a 36 39 2e 20 38 2f 31 35 2f 39 31 20 41 64  ..69. 8/15/91 Ad
27b0: 64 65 64 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e 20  ded -nocomplain 
27c0: 73 77 69 74 63 68 20 74 6f 20 22 67 6c 6f 62 22  switch to "glob"
27d0: 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 37 30 2e 20 38   command...70. 8
27e0: 2f 32 30 2f 39 31 20 41 64 64 65 64 20 22 69 6e  /20/91 Added "in
27f0: 66 6f 20 6c 69 62 72 61 72 79 22 20 6f 70 74 69  fo library" opti
2800: 6f 6e 20 61 6e 64 20 54 43 4c 5f 4c 49 42 52 41  on and TCL_LIBRA
2810: 52 59 20 23 64 65 66 69 6e 65 2e 20 20 41 6c 73  RY #define.  Als
2820: 6f 0a 61 64 64 65 64 20 22 69 6e 66 6f 20 73 63  o.added "info sc
2830: 72 69 70 74 22 20 6f 70 74 69 6f 6e 2e 0a 0a 37  ript" option...7
2840: 31 2e 20 38 2f 32 30 2f 39 31 20 43 68 61 6e 67  1. 8/20/91 Chang
2850: 65 64 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e  ed "file" comman
2860: 64 20 74 6f 20 74 61 6b 65 20 22 6f 70 74 69 6f  d to take "optio
2870: 6e 22 20 61 72 67 75 6d 65 6e 74 20 61 73 20 66  n" argument as f
2880: 69 72 73 74 0a 61 72 67 75 6d 65 6e 74 20 28 62  irst.argument (b
2890: 65 66 6f 72 65 20 66 69 6c 65 20 6e 61 6d 65 29  efore file name)
28a0: 2c 20 66 6f 72 20 63 6f 6e 73 69 73 74 65 6e 63  , for consistenc
28b0: 79 20 77 69 74 68 20 6f 74 68 65 72 20 54 63 6c  y with other Tcl
28c0: 20 63 6f 6d 6d 61 6e 64 73 2e 0a 2a 2a 2a 20 50   commands..*** P
28d0: 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
28e0: 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 37 32  TIBILITY ***..72
28f0: 2e 20 38 2f 32 30 2f 39 31 20 43 68 61 6e 67 65  . 8/20/91 Change
2900: 64 20 66 6f 72 6d 61 74 20 6f 66 20 69 6e 66 6f  d format of info
2910: 72 6d 61 74 69 6f 6e 20 69 6e 20 24 65 72 72 6f  rmation in $erro
2920: 72 49 6e 66 6f 20 76 61 72 69 61 62 6c 65 3a 0a  rInfo variable:.
2930: 63 6f 6d 6d 65 6e 74 73 20 73 75 63 68 20 61 73  comments such as
2940: 20 0a 20 20 20 20 28 22 77 68 69 6c 65 22 20 62   .    ("while" b
2950: 6f 64 79 20 6c 69 6e 65 20 31 29 0a 61 72 65 20  ody line 1).are 
2960: 6e 6f 77 20 6f 6e 20 73 65 70 61 72 61 74 65 20  now on separate 
2970: 6c 69 6e 65 73 20 66 72 6f 6d 20 63 6f 6d 6d 61  lines from comma
2980: 6e 64 73 20 62 65 69 6e 67 20 65 78 65 63 75 74  nds being execut
2990: 65 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  ed..*** POTENTIA
29a0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
29b0: 59 20 2a 2a 2a 0a 0a 37 33 2e 20 38 2f 32 30 2f  Y ***..73. 8/20/
29c0: 39 31 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 41  91 Changed Tcl_A
29d0: 70 70 65 6e 64 52 65 73 75 6c 74 20 73 6f 20 74  ppendResult so t
29e0: 68 61 74 20 69 74 20 28 65 76 65 6e 74 75 61 6c  hat it (eventual
29f0: 6c 79 29 20 66 72 65 65 73 0a 6c 61 72 67 65 20  ly) frees.large 
2a00: 62 75 66 66 65 72 73 20 74 68 61 74 20 69 74 20  buffers that it 
2a10: 61 6c 6c 6f 63 61 74 65 73 2e 0a 0a 37 34 2e 20  allocates...74. 
2a20: 38 2f 32 31 2f 39 31 20 41 64 64 65 64 20 22 6c  8/21/91 Added "l
2a30: 69 6e 73 65 72 74 22 2c 20 22 6c 72 65 70 6c 61  insert", "lrepla
2a40: 63 65 22 2c 20 22 6c 73 65 61 72 63 68 22 2c 20  ce", "lsearch", 
2a50: 61 6e 64 20 22 6c 73 6f 72 74 22 0a 63 6f 6d 6d  and "lsort".comm
2a60: 61 6e 64 73 2e 0a 0a 37 35 2e 20 38 2f 32 38 2f  ands...75. 8/28/
2a70: 39 31 20 41 64 64 65 64 20 22 69 6e 63 72 22 20  91 Added "incr" 
2a80: 61 6e 64 20 22 65 78 69 74 22 20 63 6f 6d 6d 61  and "exit" comma
2a90: 6e 64 73 2e 0a 0a 37 36 2e 20 38 2f 33 30 2f 39  nds...76. 8/30/9
2aa0: 31 20 41 64 64 65 64 20 22 72 65 67 65 78 70 22  1 Added "regexp"
2ab0: 20 61 6e 64 20 22 72 65 67 73 75 62 22 20 63 6f   and "regsub" co
2ac0: 6d 6d 61 6e 64 73 2e 0a 0a 37 37 2e 20 39 2f 34  mmands...77. 9/4
2ad0: 2f 39 31 20 43 68 61 6e 67 65 64 20 22 64 79 6e  /91 Changed "dyn
2ae0: 61 6d 69 63 22 20 66 69 65 6c 64 20 69 6e 20 69  amic" field in i
2af0: 6e 74 65 72 70 72 65 74 65 72 73 20 74 6f 20 22  nterpreters to "
2b00: 66 72 65 65 50 72 6f 63 22 20 28 70 72 6f 63 65  freeProc" (proce
2b10: 64 75 72 65 0a 61 64 64 72 65 73 73 29 2e 20 20  dure.address).  
2b20: 54 68 69 73 20 61 6c 6c 6f 77 73 20 66 6f 72 20  This allows for 
2b30: 61 6c 74 65 72 6e 61 74 69 76 65 20 73 74 6f 72  alternative stor
2b40: 61 67 65 20 6d 61 6e 61 67 65 72 73 2e 0a 2a 2a  age managers..**
2b50: 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
2b60: 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a  MPATIBILITY ***.
2b70: 0a 37 38 2e 20 39 2f 36 2f 39 31 20 41 64 64 65  .78. 9/6/91 Adde
2b80: 64 20 22 69 6e 64 65 78 22 2c 20 22 6c 65 6e 67  d "index", "leng
2b90: 74 68 22 2c 20 61 6e 64 20 22 72 61 6e 67 65 22  th", and "range"
2ba0: 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 73 74 72   options to "str
2bb0: 69 6e 67 22 0a 63 6f 6d 6d 61 6e 64 2e 20 20 41  ing".command.  A
2bc0: 64 64 65 64 20 22 6c 69 6e 64 65 78 22 2c 20 22  dded "lindex", "
2bd0: 6c 6c 65 6e 67 74 68 22 2c 20 61 6e 64 20 22 6c  llength", and "l
2be0: 72 61 6e 67 65 22 20 63 6f 6d 6d 61 6e 64 73 2e  range" commands.
2bf0: 0a 0a 37 39 2e 20 39 2f 38 2f 39 31 20 52 65 6d  ..79. 9/8/91 Rem
2c00: 6f 76 65 64 20 22 69 6e 64 65 78 22 2c 20 22 6c  oved "index", "l
2c10: 65 6e 67 74 68 22 2c 20 22 70 72 69 6e 74 22 20  ength", "print" 
2c20: 61 6e 64 20 22 72 61 6e 67 65 22 20 63 6f 6d 6d  and "range" comm
2c30: 61 6e 64 73 2e 0a 22 50 72 69 6e 74 22 20 69 73  ands.."Print" is
2c40: 20 72 65 64 75 6e 64 61 6e 74 20 77 69 74 68 20   redundant with 
2c50: 22 70 75 74 73 22 2c 20 62 75 74 20 6c 65 73 73  "puts", but less
2c60: 20 67 65 6e 65 72 61 6c 2c 20 61 6e 64 20 74 68   general, and th
2c70: 65 20 6f 74 68 65 72 0a 63 6f 6d 6d 61 6e 64 73  e other.commands
2c80: 20 61 72 65 20 72 65 70 6c 61 63 65 64 20 77 69   are replaced wi
2c90: 74 68 20 74 68 65 20 6e 65 77 20 63 6f 6d 6d 61  th the new comma
2ca0: 6e 64 73 20 64 65 73 63 72 69 62 65 64 20 69 6e  nds described in
2cb0: 20 63 68 61 6e 67 65 20 37 38 0a 61 62 6f 76 65   change 78.above
2cc0: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
2cd0: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
2ce0: 2a 2a 2a 0a 0a 38 30 2e 20 39 2f 38 2f 39 31 20  ***..80. 9/8/91 
2cf0: 43 68 61 6e 67 65 64 20 68 69 73 74 6f 72 79 20  Changed history 
2d00: 72 65 76 69 73 69 6f 6e 20 74 6f 20 6f 63 63 75  revision to occu
2d10: 72 20 65 76 65 6e 20 77 68 65 6e 20 68 69 73 74  r even when hist
2d20: 6f 72 79 20 63 6f 6d 6d 61 6e 64 0a 69 73 20 6e  ory command.is n
2d30: 65 73 74 65 64 3b 20 20 6e 65 65 64 65 64 20 69  ested;  needed i
2d40: 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c 6f 77  n order to allow
2d50: 20 22 68 69 73 74 6f 72 79 22 20 74 6f 20 62 65   "history" to be
2d60: 20 69 6e 76 6f 6b 65 64 20 66 72 6f 6d 0a 22 75   invoked from."u
2d70: 6e 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72  nknown" procedur
2d80: 65 2e 0a 0a 38 31 2e 20 39 2f 31 33 2f 39 31 20  e...81. 9/13/91 
2d90: 43 68 61 6e 67 65 64 20 22 70 61 6e 69 63 22 20  Changed "panic" 
2da0: 6e 6f 74 20 74 6f 20 75 73 65 20 76 66 70 72 69  not to use vfpri
2db0: 6e 74 66 20 28 69 74 27 73 20 75 67 6c 69 65 72  ntf (it's uglier
2dc0: 20 61 6e 64 20 6c 65 73 73 0a 67 65 6e 65 72 61   and less.genera
2dd0: 6c 20 6e 6f 77 2c 20 62 75 74 20 6d 61 6b 65 73  l now, but makes
2de0: 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 72 75   it easier to ru
2df0: 6e 20 54 63 6c 20 6f 6e 20 73 79 73 74 65 6d 73  n Tcl on systems
2e00: 20 74 68 61 74 20 64 6f 6e 27 74 0a 68 61 76 65   that don't.have
2e10: 20 76 66 70 72 69 6e 74 66 29 2e 20 20 41 6c 73   vfprintf).  Als
2e20: 6f 20 63 68 61 6e 67 65 64 20 22 73 74 72 65 72  o changed "strer
2e30: 72 6f 72 22 20 6e 6f 74 20 74 6f 20 72 65 64 65  ror" not to rede
2e40: 63 6c 61 72 65 20 73 79 73 5f 65 72 72 6c 69 73  clare sys_errlis
2e50: 74 2e 0a 0a 38 32 2e 20 39 2f 31 39 2f 39 31 20  t...82. 9/19/91 
2e60: 4c 6f 74 73 20 6f 66 20 63 68 61 6e 67 65 73 20  Lots of changes 
2e70: 74 6f 20 69 6d 70 72 6f 76 65 20 70 6f 72 74 61  to improve porta
2e80: 62 69 6c 69 74 79 20 74 6f 20 64 69 66 66 65 72  bility to differ
2e90: 65 6e 74 20 55 4e 49 58 0a 73 79 73 74 65 6d 73  ent UNIX.systems
2ea0: 2c 20 69 6e 63 6c 75 64 69 6e 67 20 61 64 64 69  , including addi
2eb0: 74 69 6f 6e 20 6f 66 20 22 63 6f 6e 66 69 67 22  tion of "config"
2ec0: 20 73 63 72 69 70 74 20 74 6f 20 61 64 61 70 74   script to adapt
2ed0: 20 54 63 6c 20 74 6f 20 74 68 65 0a 63 6f 6e 66   Tcl to the.conf
2ee0: 69 67 75 72 61 74 69 6f 6e 20 6f 66 20 74 68 65  iguration of the
2ef0: 20 73 79 73 74 65 6d 20 69 74 27 73 20 62 65 69   system it's bei
2f00: 6e 67 20 63 6f 6d 70 69 6c 65 64 20 6f 6e 2e 0a  ng compiled on..
2f10: 0a 38 33 2e 20 39 2f 32 32 2f 39 31 20 41 64 64  .83. 9/22/91 Add
2f20: 65 64 20 22 70 77 64 22 20 63 6f 6d 6d 61 6e 64  ed "pwd" command
2f30: 2e 0a 0a 38 34 2e 20 39 2f 32 32 2f 39 31 20 52  ...84. 9/22/91 R
2f40: 65 6e 61 6d 65 64 20 6d 61 6e 75 61 6c 20 70 61  enamed manual pa
2f50: 67 65 73 20 73 6f 20 74 68 61 74 20 74 68 65 69  ges so that thei
2f60: 72 20 66 69 6c 65 6e 61 6d 65 73 20 61 72 65 20  r filenames are 
2f70: 6e 6f 20 6d 6f 72 65 0a 74 68 61 6e 20 31 34 20  no more.than 14 
2f80: 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 6c 65  characters in le
2f90: 6e 67 74 68 2c 20 6d 6f 76 65 64 20 74 6f 20 22  ngth, moved to "
2fa0: 64 6f 63 22 20 73 75 62 64 69 72 65 63 74 6f 72  doc" subdirector
2fb0: 79 2e 0a 0a 38 35 2e 20 39 2f 32 34 2f 39 31 20  y...85. 9/24/91 
2fc0: 52 65 64 69 64 20 6d 61 6e 75 61 6c 20 65 6e 74  Redid manual ent
2fd0: 72 69 65 73 20 73 6f 20 74 68 65 79 20 63 6f 6e  ries so they con
2fe0: 74 61 69 6e 20 74 68 65 20 73 75 70 70 6c 65 6d  tain the supplem
2ff0: 65 6e 74 61 6c 0a 6d 61 63 72 6f 73 20 74 68 61  ental.macros tha
3000: 74 20 74 68 65 79 20 6e 65 65 64 3b 20 20 63 61  t they need;  ca
3010: 6e 20 6a 75 73 74 20 70 72 69 6e 74 20 77 69 74  n just print wit
3020: 68 20 22 74 72 6f 66 66 20 2d 6d 61 6e 22 20 6f  h "troff -man" o
3030: 72 20 22 6d 61 6e 22 0a 6e 6f 77 2e 0a 0a 38 36  r "man".now...86
3040: 2e 20 39 2f 32 36 2f 39 31 20 43 72 65 61 74 65  . 9/26/91 Create
3050: 64 20 69 6e 69 74 69 61 6c 20 76 65 72 73 69 6f  d initial versio
3060: 6e 20 6f 66 20 73 63 72 69 70 74 20 6c 69 62 72  n of script libr
3070: 61 72 79 2c 20 69 6e 63 6c 75 64 69 6e 67 0a 61  ary, including.a
3080: 20 76 65 72 73 69 6f 6e 20 6f 66 20 22 75 6e 6b   version of "unk
3090: 6e 6f 77 6e 22 20 74 68 61 74 20 64 6f 65 73 20  nown" that does 
30a0: 61 75 74 6f 2d 6c 6f 61 64 69 6e 67 2c 20 61 75  auto-loading, au
30b0: 74 6f 2d 65 78 65 63 75 74 69 6f 6e 2c 20 61 6e  to-execution, an
30c0: 64 0a 61 62 62 72 65 76 69 61 74 69 6f 6e 20 65  d.abbreviation e
30d0: 78 70 61 6e 73 69 6f 6e 2e 20 20 54 68 69 73 20  xpansion.  This 
30e0: 6c 69 62 72 61 72 79 20 69 73 20 75 73 65 64 20  library is used 
30f0: 62 79 20 74 63 6c 54 65 73 74 0a 61 75 74 6f 6d  by tclTest.autom
3100: 61 74 69 63 61 6c 6c 79 2e 20 20 53 65 65 20 74  atically.  See t
3110: 68 65 20 22 6c 69 62 72 61 72 79 22 20 6d 61 6e  he "library" man
3120: 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 64 65  ual entry for de
3130: 74 61 69 6c 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  tails...--------
3140: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
3150: 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 30 2c 20  ed version 6.0, 
3160: 39 2f 32 36 2f 39 31 20 2d 2d 2d 2d 2d 2d 2d 2d  9/26/91 --------
3170: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 38 37 2e 20  ----------..87. 
3180: 39 2f 33 30 2f 39 31 20 4d 61 64 65 20 22 73 74  9/30/91 Made "st
3190: 72 69 6e 67 20 74 6f 6c 6f 77 65 72 22 20 61 6e  ring tolower" an
31a0: 64 20 22 73 74 72 69 6e 67 20 74 6f 75 70 70 65  d "string touppe
31b0: 72 22 20 63 68 65 63 6b 20 63 61 73 65 0a 62 65  r" check case.be
31c0: 66 6f 72 65 20 63 6f 6e 76 65 72 74 69 6e 67 3a  fore converting:
31d0: 20 20 6f 6e 20 73 6f 6d 65 20 73 79 73 74 65 6d    on some system
31e0: 73 2c 20 22 74 6f 6c 6f 77 65 72 22 20 61 6e 64  s, "tolower" and
31f0: 20 22 74 6f 75 70 70 65 72 22 20 61 73 73 75 6d   "toupper" assum
3200: 65 0a 74 68 61 74 20 63 68 61 72 61 63 74 65 72  e.that character
3210: 20 61 6c 72 65 61 64 79 20 68 61 73 20 70 61 72   already has par
3220: 74 69 63 75 6c 61 72 20 63 61 73 65 2e 0a 0a 38  ticular case...8
3230: 38 2e 20 39 2f 33 30 2f 39 31 20 46 69 78 65 64  8. 9/30/91 Fixed
3240: 20 62 75 67 20 69 6e 20 54 63 6c 5f 53 65 74 52   bug in Tcl_SetR
3250: 65 73 75 6c 74 3a 20 20 77 61 73 6e 27 74 20 61  esult:  wasn't a
3260: 6c 77 61 79 73 20 73 65 74 74 69 6e 67 20 66 72  lways setting fr
3270: 65 65 50 72 6f 63 0a 63 6f 72 72 65 63 74 6c 79  eeProc.correctly
3280: 20 77 68 65 6e 20 63 61 6c 6c 65 64 20 77 69 74   when called wit
3290: 68 20 4e 55 4c 4c 20 76 61 6c 75 65 2e 20 20 54  h NULL value.  T
32a0: 68 69 73 20 74 65 6e 64 65 64 20 74 6f 20 63 61  his tended to ca
32b0: 75 73 65 20 6d 65 6d 6f 72 79 0a 61 6c 6c 6f 63  use memory.alloc
32c0: 61 74 69 6f 6e 20 65 72 72 6f 72 73 20 6c 61 74  ation errors lat
32d0: 65 72 2e 0a 0a 38 39 2e 20 31 30 2f 33 2f 39 31  er...89. 10/3/91
32e0: 20 41 64 64 65 64 20 22 75 70 76 61 72 22 20 63   Added "upvar" c
32f0: 6f 6d 6d 61 6e 64 2e 0a 0a 39 30 2e 20 31 30 2f  ommand...90. 10/
3300: 34 2f 39 31 20 43 68 61 6e 67 65 64 20 22 66 6f  4/91 Changed "fo
3310: 72 6d 61 74 22 20 73 6f 20 74 68 61 74 20 69 6e  rmat" so that in
3320: 74 65 72 6e 61 6c 6c 79 20 69 74 20 63 6f 6e 76  ternally it conv
3330: 65 72 74 73 20 25 44 20 74 6f 20 25 6c 64 2c 0a  erts %D to %ld,.
3340: 25 55 20 74 6f 20 25 6c 75 2c 20 25 4f 20 74 6f  %U to %lu, %O to
3350: 20 25 6c 6f 2c 20 61 6e 64 20 25 46 20 74 6f 20   %lo, and %F to 
3360: 25 66 2e 20 20 54 68 69 73 20 65 6c 69 6d 69 6e  %f.  This elimin
3370: 61 74 65 73 20 73 6f 6d 65 20 63 6f 6d 70 61 74  ates some compat
3380: 69 62 69 6c 69 74 79 0a 70 72 6f 62 6c 65 6d 73  ibility.problems
3390: 20 6f 6e 20 73 6f 6d 65 20 6d 61 63 68 69 6e 65   on some machine
33a0: 73 20 77 69 74 68 6f 75 74 20 61 66 66 65 63 74  s without affect
33b0: 69 6e 67 20 62 65 68 61 76 69 6f 72 2e 0a 0a 39  ing behavior...9
33c0: 31 2e 20 31 30 2f 31 30 2f 39 31 20 46 69 78 65  1. 10/10/91 Fixe
33d0: 64 20 62 75 67 20 69 6e 20 22 72 65 67 73 75 62  d bug in "regsub
33e0: 22 20 74 68 61 74 20 63 61 75 73 65 64 20 63 6f  " that caused co
33f0: 72 65 20 64 75 6d 70 73 20 77 69 74 68 20 74 68  re dumps with th
3400: 65 20 2d 61 6c 6c 0a 6f 70 74 69 6f 6e 20 77 68  e -all.option wh
3410: 65 6e 20 74 68 65 20 6c 61 73 74 20 6d 61 74 63  en the last matc
3420: 68 20 77 61 73 6e 27 74 20 61 74 20 74 68 65 20  h wasn't at the 
3430: 65 6e 64 20 6f 66 20 74 68 65 20 73 74 72 69 6e  end of the strin
3440: 67 2e 0a 0a 39 32 2e 20 31 30 2f 31 37 2f 39 31  g...92. 10/17/91
3450: 20 46 69 78 65 64 20 70 72 6f 62 6c 65 6d 73 20   Fixed problems 
3460: 77 69 74 68 20 62 61 63 6b 73 6c 61 73 68 20 73  with backslash s
3470: 65 71 75 65 6e 63 65 73 3a 20 20 5c 72 20 73 75  equences:  \r su
3480: 70 70 6f 72 74 20 77 61 73 0a 69 6e 63 6f 6d 70  pport was.incomp
3490: 6c 65 74 65 20 61 6e 64 20 5c 66 20 61 6e 64 20  lete and \f and 
34a0: 5c 76 20 77 65 72 65 6e 27 74 20 73 75 70 70 6f  \v weren't suppo
34b0: 72 74 65 64 20 61 74 20 61 6c 6c 2e 0a 0a 39 33  rted at all...93
34c0: 2e 20 31 30 2f 32 34 2f 39 31 20 41 64 64 65 64  . 10/24/91 Added
34d0: 20 54 63 6c 5f 49 6e 69 74 48 69 73 74 6f 72 79   Tcl_InitHistory
34e0: 20 70 72 6f 63 65 64 75 72 65 2e 0a 0a 39 34 2e   procedure...94.
34f0: 20 31 30 2f 32 34 2f 39 31 20 43 68 61 6e 67 65   10/24/91 Change
3500: 64 20 22 72 65 67 65 78 70 22 20 74 6f 20 73 74  d "regexp" to st
3510: 6f 72 65 20 22 2d 31 20 2d 31 22 20 69 6e 20 73  ore "-1 -1" in s
3520: 75 62 4d 61 74 63 68 56 61 72 73 20 74 68 61 74  ubMatchVars that
3530: 0a 64 6f 6e 27 74 20 6d 61 74 63 68 2c 20 72 61  .don't match, ra
3540: 74 68 65 72 20 74 68 61 6e 20 72 65 74 75 72 6e  ther than return
3550: 69 6e 67 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 39  ing an error...9
3560: 35 2e 20 31 30 2f 32 37 2f 39 31 20 4d 6f 64 69  5. 10/27/91 Modi
3570: 66 69 65 64 20 22 72 65 67 65 78 70 22 20 74 6f  fied "regexp" to
3580: 20 72 65 74 75 72 6e 20 61 63 74 75 61 6c 20 73   return actual s
3590: 74 72 69 6e 67 73 20 69 6e 20 6d 61 74 63 68 56  trings in matchV
35a0: 61 72 0a 61 6e 64 20 73 75 62 4d 61 74 63 68 56  ar.and subMatchV
35b0: 61 72 73 20 69 6e 73 74 65 61 64 20 6f 66 20 69  ars instead of i
35c0: 6e 64 69 63 65 73 2e 20 20 41 64 64 65 64 20 22  ndices.  Added "
35d0: 2d 69 6e 64 69 63 65 73 22 20 73 77 69 74 63 68  -indices" switch
35e0: 20 74 6f 20 63 61 75 73 65 0a 69 6e 64 69 63 65   to cause.indice
35f0: 73 20 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64  s to be returned
3600: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
3610: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
3620: 2a 2a 2a 0a 0a 39 36 2e 20 31 30 2f 32 37 2f 39  ***..96. 10/27/9
3630: 31 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22  1 Fixed bug in "
3640: 73 63 61 6e 22 20 77 68 65 72 65 20 69 74 20 75  scan" where it u
3650: 73 65 64 20 68 61 72 64 77 69 72 65 64 20 63 6f  sed hardwired co
3660: 6e 73 74 61 6e 74 73 20 66 6f 72 0a 73 69 7a 65  nstants for.size
3670: 73 20 6f 66 20 66 6c 6f 61 74 73 20 61 6e 64 20  s of floats and 
3680: 64 6f 75 62 6c 65 73 20 69 6e 73 74 65 61 64 20  doubles instead 
3690: 6f 66 20 75 73 69 6e 67 20 22 73 69 7a 65 6f 66  of using "sizeof
36a0: 22 2e 0a 0a 39 37 2e 20 31 30 2f 33 31 2f 39 31  "...97. 10/31/91
36b0: 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 74 63   Fixed bug in tc
36c0: 6c 50 61 72 73 65 2e 63 20 77 68 65 72 65 20 70  lParse.c where p
36d0: 61 72 73 65 2d 72 65 6c 61 74 65 64 20 65 72 72  arse-related err
36e0: 6f 72 20 6d 65 73 73 61 67 65 73 0a 77 65 72 65  or messages.were
36f0: 6e 27 74 20 62 65 69 6e 67 20 73 74 6f 72 61 67  n't being storag
3700: 65 2d 6d 61 6e 61 67 65 64 20 63 6f 72 72 65 63  e-managed correc
3710: 74 6c 79 2c 20 63 61 75 73 69 6e 67 20 73 70 75  tly, causing spu
3720: 72 69 6f 75 73 20 66 72 65 65 27 73 2e 0a 0a 39  rious free's...9
3730: 38 2e 20 31 30 2f 33 31 2f 39 31 20 46 6f 72 6d  8. 10/31/91 Form
3740: 20 66 65 65 64 20 61 6e 64 20 76 65 72 74 69 63   feed and vertic
3750: 61 6c 20 74 61 62 20 63 68 61 72 61 63 74 65 72  al tab character
3760: 73 20 61 72 65 20 6e 6f 77 20 63 6f 6e 73 69 64  s are now consid
3770: 65 72 65 64 0a 74 6f 20 62 65 20 73 70 61 63 65  ered.to be space
3780: 20 63 68 61 72 61 63 74 65 72 73 20 62 79 20 74   characters by t
3790: 68 65 20 70 61 72 73 65 72 2e 0a 0a 39 39 2e 20  he parser...99. 
37a0: 31 30 2f 33 31 2f 39 31 20 41 64 64 65 64 20 54  10/31/91 Added T
37b0: 43 4c 5f 4c 45 41 56 45 5f 45 52 52 5f 4d 53 47  CL_LEAVE_ERR_MSG
37c0: 20 66 6c 61 67 20 74 6f 20 70 72 6f 63 65 64 75   flag to procedu
37d0: 72 65 73 20 6c 69 6b 65 20 54 63 6c 5f 53 65 74  res like Tcl_Set
37e0: 56 61 72 2e 0a 0a 31 30 30 2e 20 31 31 2f 37 2f  Var...100. 11/7/
37f0: 39 31 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  91 Fixed bug in 
3800: 22 63 61 73 65 22 20 77 68 65 72 65 20 22 69 6e  "case" where "in
3810: 22 20 61 72 67 75 6d 65 6e 74 20 63 6f 75 6c 64  " argument could
3820: 6e 27 74 20 62 65 20 6f 6d 69 74 74 65 64 0a 69  n't be omitted.i
3830: 66 20 61 6c 6c 20 63 61 73 65 20 62 72 61 6e 63  f all case branc
3840: 68 65 73 20 77 65 72 65 20 65 6d 62 65 64 64 65  hes were embedde
3850: 64 20 69 6e 20 61 20 73 69 6e 67 6c 65 20 6c 69  d in a single li
3860: 73 74 2e 0a 0a 31 30 31 2e 20 31 31 2f 37 2f 39  st...101. 11/7/9
3870: 31 20 53 77 69 74 63 68 65 64 20 74 6f 20 75 73  1 Switched to us
3880: 65 20 22 70 69 64 5f 74 22 20 61 6e 64 20 22 75  e "pid_t" and "u
3890: 69 64 5f 74 22 20 61 6e 64 20 6f 74 68 65 72 20  id_t" and other 
38a0: 6f 66 66 69 63 69 61 6c 0a 50 4f 53 49 43 20 74  official.POSIC t
38b0: 79 70 65 73 20 61 6e 64 20 66 75 6e 63 74 69 6f  ypes and functio
38c0: 6e 20 70 72 6f 74 6f 74 79 70 65 73 2e 0a 0a 2d  n prototypes...-
38d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
38e0: 20 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f   Released versio
38f0: 6e 20 36 2e 31 2c 20 31 31 2f 37 2f 39 31 20 2d  n 6.1, 11/7/91 -
3900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
3910: 2d 0a 0a 31 30 32 2e 20 31 32 2f 32 2f 39 31 20  -..102. 12/2/91 
3920: 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f 53 63 61  Modified Tcl_Sca
3930: 6e 45 6c 65 6d 65 6e 74 20 61 6e 64 20 54 63 6c  nElement and Tcl
3940: 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74 20  _ConvertElement 
3950: 69 6e 20 73 65 76 65 72 61 6c 0a 77 61 79 73 2e  in several.ways.
3960: 20 20 46 69 72 73 74 2c 20 61 6c 6c 6f 77 65 64    First, allowed
3970: 20 63 61 6c 6c 65 72 20 74 6f 20 72 65 71 75 65   caller to reque
3980: 73 74 20 74 68 61 74 20 6f 6e 6c 79 20 62 61 63  st that only bac
3990: 6b 73 6c 61 73 68 65 73 20 62 65 20 75 73 65 64  kslashes be used
39a0: 0a 28 6e 6f 20 62 72 61 63 65 73 29 2e 20 20 53  .(no braces).  S
39b0: 65 63 6f 6e 64 2c 20 6d 61 64 65 20 54 63 6c 5f  econd, made Tcl_
39c0: 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e 74 20 6d  ConvertElement m
39d0: 6f 72 65 20 61 67 67 72 65 73 73 69 76 65 20 69  ore aggressive i
39e0: 6e 20 75 73 69 6e 67 0a 62 61 63 6b 73 6c 61 73  n using.backslas
39f0: 68 65 73 20 66 6f 72 20 62 72 61 63 65 73 20 61  hes for braces a
3a00: 6e 64 20 71 75 6f 74 65 73 2e 0a 0a 31 30 33 2e  nd quotes...103.
3a10: 20 31 32 2f 35 2f 39 31 20 41 64 64 65 64 20 22   12/5/91 Added "
3a20: 74 79 70 65 22 2c 20 22 6c 73 74 61 74 22 2c 20  type", "lstat", 
3a30: 61 6e 64 20 22 72 65 61 64 6c 69 6e 6b 22 20 6f  and "readlink" o
3a40: 70 74 69 6f 6e 73 20 74 6f 20 22 66 69 6c 65 22  ptions to "file"
3a50: 0a 63 6f 6d 6d 61 6e 64 2c 20 70 6c 75 73 20 61  .command, plus a
3a60: 64 64 65 64 20 6e 65 77 20 22 74 79 70 65 22 20  dded new "type" 
3a70: 65 6c 65 6d 65 6e 74 20 74 6f 20 6f 75 74 70 75  element to outpu
3a80: 74 20 6f 66 20 22 73 74 61 74 22 20 61 6e 64 20  t of "stat" and 
3a90: 22 6c 73 74 61 74 22 0a 6f 70 74 69 6f 6e 73 2e  "lstat".options.
3aa0: 0a 0a 31 30 34 2e 20 31 32 2f 31 30 2f 39 31 20  ..104. 12/10/91 
3ab0: 4d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 68  Manual entries h
3ac0: 61 64 20 66 69 72 73 74 20 6c 69 6e 65 73 20 74  ad first lines t
3ad0: 68 61 74 20 63 61 75 73 65 64 20 22 6d 61 6e 22  hat caused "man"
3ae0: 20 70 72 6f 67 72 61 6d 0a 74 6f 20 74 72 79 20   program.to try 
3af0: 77 65 69 72 64 20 70 72 65 70 72 6f 63 65 73 73  weird preprocess
3b00: 6f 72 2e 20 20 41 64 64 65 64 20 62 6c 61 6e 6b  or.  Added blank
3b10: 20 63 6f 6d 6d 65 6e 74 20 6c 69 6e 65 73 20 74   comment lines t
3b20: 6f 20 66 69 78 20 70 72 6f 62 6c 65 6d 2e 0a 0a  o fix problem...
3b30: 31 30 35 2e 20 31 32 2f 31 36 2f 39 31 20 46 69  105. 12/16/91 Fi
3b40: 78 65 64 20 61 20 66 65 77 20 62 75 67 73 20 69  xed a few bugs i
3b50: 6e 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 70  n auto_mkindex p
3b60: 72 6f 63 3a 20 20 77 61 73 6e 27 74 20 68 61 6e  roc:  wasn't han
3b70: 64 6c 69 6e 67 0a 65 72 72 6f 72 73 20 70 72 6f  dling.errors pro
3b80: 70 65 72 6c 79 2c 20 61 6e 64 20 68 61 64 6e 27  perly, and hadn'
3b90: 74 20 62 65 65 6e 20 75 70 67 72 61 64 65 64 20  t been upgraded 
3ba0: 66 6f 72 20 6e 65 77 20 22 72 65 67 65 78 70 22  for new "regexp"
3bb0: 20 73 79 6e 74 61 78 2e 0a 0a 31 30 36 2e 20 31   syntax...106. 1
3bc0: 2f 32 2f 39 32 20 46 69 78 65 64 20 62 75 67 20  /2/92 Fixed bug 
3bd0: 69 6e 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e  in "file" comman
3be0: 64 20 77 68 65 72 65 20 69 74 20 64 69 64 6e 27  d where it didn'
3bf0: 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c  t properly handl
3c00: 65 0a 61 20 66 69 6c 65 20 6e 61 6d 65 73 20 63  e.a file names c
3c10: 6f 6e 74 61 69 6e 69 6e 67 20 74 69 6c 64 65 73  ontaining tildes
3c20: 20 77 68 65 72 65 20 74 68 65 20 69 6e 64 69 63   where the indic
3c30: 61 74 65 64 20 75 73 65 72 20 64 6f 65 73 6e 27  ated user doesn'
3c40: 74 20 65 78 69 73 74 2e 0a 0a 31 30 37 2e 20 31  t exist...107. 1
3c50: 2f 32 2f 39 32 20 46 69 78 65 64 20 6c 6f 74 73  /2/92 Fixed lots
3c60: 20 6f 66 20 63 61 73 65 73 20 69 6e 20 74 63 6c   of cases in tcl
3c70: 55 6e 69 78 53 74 72 2e 63 20 77 68 65 72 65 20  UnixStr.c where 
3c80: 74 77 6f 20 64 69 66 66 65 72 65 6e 74 0a 65 72  two different.er
3c90: 72 6e 6f 20 73 79 6d 62 6f 6c 73 20 28 65 2e 67  rno symbols (e.g
3ca0: 2e 20 45 57 4f 55 4c 44 42 4c 4f 43 4b 20 61 6e  . EWOULDBLOCK an
3cb0: 64 20 45 41 47 41 49 4e 29 20 68 61 76 65 20 74  d EAGAIN) have t
3cc0: 68 65 20 73 61 6d 65 20 6e 75 6d 62 65 72 3b 20  he same number; 
3cd0: 20 54 63 6c 0a 77 69 6c 6c 20 6f 6e 6c 79 20 75   Tcl.will only u
3ce0: 73 65 20 6f 6e 65 20 6f 66 20 74 68 65 6d 2e 0a  se one of them..
3cf0: 0a 31 30 38 2e 20 31 2f 32 2f 39 32 20 4c 6f 74  .108. 1/2/92 Lot
3d00: 73 20 6f 66 20 63 68 61 6e 67 65 73 20 74 6f 20  s of changes to 
3d10: 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 63  configuration sc
3d20: 72 69 70 74 20 74 6f 20 68 61 6e 64 6c 65 20 6d  ript to handle m
3d30: 61 6e 79 20 6d 6f 72 65 0a 73 79 73 74 65 6d 73  any more.systems
3d40: 20 6d 6f 72 65 20 67 72 61 63 65 66 75 6c 6c 79   more gracefully
3d50: 2e 20 20 45 2e 67 2e 20 73 68 6f 75 6c 64 20 6e  .  E.g. should n
3d60: 6f 77 20 64 65 74 65 63 74 20 74 68 65 20 62 6f  ow detect the bo
3d70: 67 75 73 20 73 74 72 74 6f 75 6c 20 74 68 61 74  gus strtoul that
3d80: 0a 63 6f 6d 65 73 20 77 69 74 68 20 41 49 58 20  .comes with AIX 
3d90: 61 6e 64 20 73 75 62 73 74 69 74 75 74 65 20 54  and substitute T
3da0: 63 6c 27 73 20 6f 77 6e 20 76 65 72 73 69 6f 6e  cl's own version
3db0: 20 69 6e 73 74 65 61 64 2e 0a 0a 2d 2d 2d 2d 2d   instead...-----
3dc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
3dd0: 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20 36 2e  eased version 6.
3de0: 32 2c 20 31 2f 31 30 2f 39 32 20 2d 2d 2d 2d 2d  2, 1/10/92 -----
3df0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31  -------------..1
3e00: 30 39 2e 20 31 2f 32 30 2f 39 32 20 43 6f 6e 66  09. 1/20/92 Conf
3e10: 69 67 20 64 69 64 6e 27 74 20 68 61 76 65 20 63  ig didn't have c
3e20: 6f 64 65 20 74 6f 20 61 63 74 75 61 6c 6c 79 20  ode to actually 
3e30: 75 73 65 20 22 75 69 64 5f 74 22 20 76 61 72 69  use "uid_t" vari
3e40: 61 62 6c 65 0a 74 6f 20 73 65 74 20 54 43 4c 5f  able.to set TCL_
3e50: 55 49 54 5f 54 20 23 64 65 66 69 6e 65 2e 0a 0a  UIT_T #define...
3e60: 31 31 30 2e 20 32 2f 31 30 2f 39 32 20 54 63 6c  110. 2/10/92 Tcl
3e70: 5f 45 76 61 6c 20 64 69 64 6e 27 74 20 70 72 6f  _Eval didn't pro
3e80: 70 65 72 6c 79 20 72 65 73 65 74 20 22 6e 75 6d  perly reset "num
3e90: 4c 65 76 65 6c 73 22 20 76 61 72 69 61 62 6c 65  Levels" variable
3ea0: 20 77 68 65 6e 0a 74 6f 6f 2d 64 65 65 70 20 72   when.too-deep r
3eb0: 65 63 75 72 73 69 6f 6e 20 6f 63 63 75 72 72 65  ecursion occurre
3ec0: 64 2e 0a 0a 31 31 31 2e 20 32 2f 32 39 2f 39 32  d...111. 2/29/92
3ed0: 20 41 64 64 65 64 20 22 6f 6e 22 20 61 6e 64 20   Added "on" and 
3ee0: 22 6f 66 66 22 20 74 6f 20 6b 65 79 77 6f 72 64  "off" to keyword
3ef0: 73 20 61 63 63 65 70 74 65 64 20 62 79 20 54 63  s accepted by Tc
3f00: 6c 5f 47 65 74 42 6f 6f 6c 65 61 6e 2e 0a 0a 31  l_GetBoolean...1
3f10: 31 32 2e 20 33 2f 31 39 2f 39 32 20 43 6f 6e 66  12. 3/19/92 Conf
3f20: 69 67 20 77 61 73 6e 27 74 20 69 6e 73 74 61 6c  ig wasn't instal
3f30: 6c 69 6e 67 20 64 65 66 61 75 6c 74 20 76 65 72  ling default ver
3f40: 73 69 6f 6e 20 6f 66 20 73 74 72 74 6f 64 2e 63  sion of strtod.c
3f50: 20 66 6f 72 0a 73 79 73 74 65 6d 73 20 74 68 61   for.systems tha
3f60: 74 20 64 6f 6e 27 74 20 68 61 76 65 20 6f 6e 65  t don't have one
3f70: 20 69 6e 20 6c 69 62 63 2e 61 2e 0a 0a 31 31 33   in libc.a...113
3f80: 2e 20 33 2f 32 33 2f 39 32 20 46 69 78 65 64 20  . 3/23/92 Fixed 
3f90: 62 75 67 20 69 6e 20 74 63 6c 45 78 70 72 2e 63  bug in tclExpr.c
3fa0: 20 77 68 65 72 65 20 6e 75 6d 62 65 72 73 20 77   where numbers w
3fb0: 69 74 68 20 6c 65 61 64 69 6e 67 20 22 2e 22 73  ith leading "."s
3fc0: 2c 0a 6c 69 6b 65 20 30 2e 37 35 2c 20 63 6f 75  ,.like 0.75, cou
3fd0: 6c 64 6e 27 74 20 62 65 20 70 72 6f 70 65 72 6c  ldn't be properl
3fe0: 79 20 73 75 62 73 74 69 74 75 74 65 64 20 69 6e  y substituted in
3ff0: 74 6f 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77  to expressions w
4000: 69 74 68 0a 76 61 72 69 61 62 6c 65 20 6f 72 20  ith.variable or 
4010: 63 6f 6d 6d 61 6e 64 20 73 75 62 73 74 69 74 75  command substitu
4020: 74 69 6f 6e 2e 0a 0a 31 31 34 2e 20 33 2f 32 35  tion...114. 3/25
4030: 2f 39 32 20 46 69 78 65 64 20 62 75 67 20 69 6e  /92 Fixed bug in
4040: 20 74 63 6c 55 6e 69 78 41 5a 2e 63 20 77 68 65   tclUnixAZ.c whe
4050: 72 65 20 22 67 65 74 73 22 20 63 6f 6d 6d 61 6e  re "gets" comman
4060: 64 20 77 61 73 6e 27 74 0a 63 68 65 63 6b 69 6e  d wasn't.checkin
4070: 67 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74  g to make sure t
4080: 68 61 74 20 69 74 20 77 61 73 20 61 62 6c 65 20  hat it was able 
4090: 74 6f 20 77 72 69 74 65 20 74 68 65 20 76 61 72  to write the var
40a0: 69 61 62 6c 65 20 4f 4b 2e 0a 0a 31 31 35 2e 20  iable OK...115. 
40b0: 34 2f 31 36 2f 39 32 20 46 69 78 65 64 20 62 75  4/16/92 Fixed bu
40c0: 67 20 69 6e 20 74 63 6c 55 6e 69 78 41 5a 2e 63  g in tclUnixAZ.c
40d0: 20 77 68 65 72 65 20 22 72 65 61 64 22 20 63 6f   where "read" co
40e0: 6d 6d 61 6e 64 20 64 69 64 6e 27 74 0a 63 6f 6d  mmand didn't.com
40f0: 70 75 74 65 20 66 69 6c 65 20 73 69 7a 65 20 72  pute file size r
4100: 69 67 68 74 20 66 6f 72 20 64 65 76 69 63 65 20  ight for device 
4110: 66 69 6c 65 73 2e 0a 0a 31 31 36 2e 20 34 2f 32  files...116. 4/2
4120: 33 2f 39 32 20 46 69 78 65 64 20 62 75 74 20 69  3/92 Fixed but i
4130: 6e 20 74 63 6c 43 6d 64 4d 5a 2e 63 20 77 68 65  n tclCmdMZ.c whe
4140: 72 65 20 22 74 72 61 63 65 20 76 69 6e 66 6f 22  re "trace vinfo"
4150: 20 77 61 73 20 6f 76 65 72 77 72 69 74 69 6e 67   was overwriting
4160: 0a 74 68 65 20 74 72 61 63 65 20 63 6f 6d 6d 61  .the trace comma
4170: 6e 64 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  nd...-----------
4180: 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
4190: 76 65 72 73 69 6f 6e 20 36 2e 33 2c 20 35 2f 31  version 6.3, 5/1
41a0: 2f 39 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /92 ------------
41b0: 2d 2d 2d 2d 2d 2d 0a 0a 31 31 37 2e 20 35 2f 31  ------..117. 5/1
41c0: 2f 39 32 20 41 64 64 65 64 20 54 63 6c 5f 47 6c  /92 Added Tcl_Gl
41d0: 6f 62 61 6c 45 76 61 6c 2e 0a 0a 31 31 38 2e 20  obalEval...118. 
41e0: 36 2f 31 2f 39 32 20 43 68 61 6e 67 65 64 20 61  6/1/92 Changed a
41f0: 75 74 6f 2d 6c 6f 61 64 20 66 61 63 69 6c 69 74  uto-load facilit
4200: 79 20 74 6f 20 73 6f 75 72 63 65 20 66 69 6c 65  y to source file
4210: 73 20 61 74 20 67 6c 6f 62 61 6c 20 6c 65 76 65  s at global leve
4220: 6c 2e 0a 0a 31 31 39 2e 20 36 2f 38 2f 39 32 20  l...119. 6/8/92 
4230: 54 63 6c 5f 50 61 72 73 65 56 61 72 20 77 61 73  Tcl_ParseVar was
4240: 6e 27 74 20 61 6c 77 61 79 73 20 73 65 74 74 69  n't always setti
4250: 6e 67 20 74 65 72 6d 50 74 72 20 61 66 74 65 72  ng termPtr after
4260: 20 65 72 72 6f 72 73 2c 20 77 68 69 63 68 0a 73   errors, which.s
4270: 6f 6d 65 74 69 6d 65 73 20 63 61 75 73 65 64 20  ometimes caused 
4280: 63 6f 72 65 20 64 75 6d 70 73 2e 0a 0a 31 32 30  core dumps...120
4290: 2e 20 36 2f 32 31 2f 39 32 20 46 69 78 65 64 20  . 6/21/92 Fixed 
42a0: 62 75 67 20 69 6e 20 69 6e 69 74 69 61 6c 69 7a  bug in initializ
42b0: 61 74 69 6f 6e 20 6f 66 20 72 65 67 65 78 70 20  ation of regexp 
42c0: 70 61 74 74 65 72 6e 20 63 61 63 68 65 2e 20 20  pattern cache.  
42d0: 54 68 69 73 0a 62 75 67 20 63 61 75 73 65 64 20  This.bug caused 
42e0: 73 65 67 6d 65 6e 74 61 74 69 6f 6e 20 76 69 6f  segmentation vio
42f0: 6c 61 74 69 6f 6e 73 20 69 6e 20 72 65 67 65 78  lations in regex
4300: 70 20 63 6f 6d 6d 61 6e 64 73 20 75 6e 64 65 72  p commands under
4310: 20 73 6f 6d 65 20 63 6f 6e 64 69 74 69 6f 6e 73   some conditions
4320: 2e 0a 0a 31 32 31 2e 20 36 2f 32 32 2f 39 32 20  ...121. 6/22/92 
4330: 43 68 61 6e 67 65 64 20 69 6d 70 6c 65 6d 65 6e  Changed implemen
4340: 74 61 74 69 6f 6e 20 6f 66 20 22 67 6c 6f 62 22  tation of "glob"
4350: 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 65 6c 69 6d   command to elim
4360: 69 6e 61 74 65 0a 74 72 61 69 6c 69 6e 67 20 73  inate.trailing s
4370: 6c 61 73 68 65 73 20 6f 6e 20 64 69 72 65 63 74  lashes on direct
4380: 6f 72 79 20 6e 61 6d 65 73 3a 20 20 74 68 65 79  ory names:  they
4390: 20 63 6f 6e 66 75 73 65 20 73 6f 6d 65 20 73 79   confuse some sy
43a0: 73 74 65 6d 73 2e 20 20 54 68 65 72 65 0a 73 68  stems.  There.sh
43b0: 6f 75 6c 64 6e 27 74 20 62 65 20 61 6e 79 20 75  ouldn't be any u
43c0: 73 65 72 2d 76 69 73 69 62 6c 65 20 63 68 61 6e  ser-visible chan
43d0: 67 65 73 20 69 6e 20 66 75 6e 63 74 69 6f 6e 61  ges in functiona
43e0: 6c 69 74 79 20 65 78 63 65 70 74 20 66 6f 72 20  lity except for 
43f0: 6e 61 6d 65 73 0a 69 6e 20 65 72 72 6f 72 20 6d  names.in error m
4400: 65 73 73 61 67 65 73 20 6e 6f 74 20 68 61 76 69  essages not havi
4410: 6e 67 20 74 72 61 69 6c 69 6e 67 20 73 6c 61 73  ng trailing slas
4420: 68 65 73 2e 0a 0a 31 32 32 2e 20 37 2f 32 2f 39  hes...122. 7/2/9
4430: 32 20 46 69 78 65 64 20 62 75 67 20 74 68 61 74  2 Fixed bug that
4440: 20 63 61 75 73 65 64 20 27 73 74 72 69 6e 67 20   caused 'string 
4450: 6d 61 74 63 68 20 2a 2a 20 22 22 27 20 74 6f 20  match ** ""' to 
4460: 72 65 74 75 72 6e 20 30 2e 0a 0a 31 32 33 2e 20  return 0...123. 
4470: 37 2f 32 2f 39 32 20 46 69 78 65 64 20 62 75 67  7/2/92 Fixed bug
4480: 20 69 6e 20 54 63 6c 5f 43 72 65 61 74 65 43 6d   in Tcl_CreateCm
4490: 64 42 75 66 20 77 68 65 72 65 20 69 74 20 77 61  dBuf where it wa
44a0: 73 6e 27 74 20 69 6e 69 74 69 61 6c 69 7a 69 6e  sn't initializin
44b0: 67 0a 74 68 65 20 62 75 66 66 65 72 20 74 6f 20  g.the buffer to 
44c0: 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 2e  an empty string.
44d0: 0a 0a 31 32 34 2e 20 37 2f 36 2f 39 32 20 46 69  ..124. 7/6/92 Fi
44e0: 78 65 64 20 62 75 67 20 69 6e 20 22 63 61 73 65  xed bug in "case
44f0: 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72 65 20  " command where 
4500: 69 74 20 75 73 65 64 20 4e 55 4c 4c 20 70 61 74  it used NULL pat
4510: 74 65 72 6e 20 73 74 72 69 6e 67 0a 61 66 74 65  tern string.afte
4520: 72 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20  r errors in the 
4530: 22 64 65 66 61 75 6c 74 22 20 63 6c 61 75 73 65  "default" clause
4540: 2e 0a 0a 31 32 35 2e 20 37 2f 32 35 2f 39 32 20  ...125. 7/25/92 
4550: 53 70 65 65 64 65 64 20 75 70 20 61 75 74 6f 5f  Speeded up auto_
4560: 6c 6f 61 64 20 70 72 6f 63 65 64 75 72 65 3a 20  load procedure: 
4570: 20 64 6f 6e 27 74 20 72 65 72 65 61 64 20 61 6c   don't reread al
4580: 6c 20 74 68 65 20 69 6e 64 65 78 0a 66 69 6c 65  l the index.file
4590: 73 20 75 6e 6c 65 73 73 20 74 68 65 20 70 61 74  s unless the pat
45a0: 68 20 68 61 73 20 63 68 61 6e 67 65 64 2e 0a 0a  h has changed...
45b0: 31 32 36 2e 20 38 2f 33 2f 39 32 20 43 68 61 6e  126. 8/3/92 Chan
45c0: 67 65 64 20 74 63 6c 55 6e 69 78 2e 68 20 74 6f  ged tclUnix.h to
45d0: 20 64 65 66 69 6e 65 20 4d 41 58 50 41 54 48 4c   define MAXPATHL
45e0: 45 4e 20 66 72 6f 6d 20 50 41 54 48 5f 4d 41 58  EN from PATH_MAX
45f0: 2c 20 6e 6f 74 0a 5f 50 4f 53 49 58 5f 50 41 54  , not._POSIX_PAT
4600: 48 5f 4d 41 58 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  H_MAX...--------
4610: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
4620: 65 64 20 76 65 72 73 69 6f 6e 20 36 2e 34 2c 20  ed version 6.4, 
4630: 38 2f 37 2f 39 32 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  8/7/92 ---------
4640: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 32 37 2e 20  ---------..127. 
4650: 38 2f 31 30 2f 39 32 20 43 68 61 6e 67 65 64 20  8/10/92 Changed 
4660: 74 63 6c 42 61 73 69 63 2e 63 20 73 6f 20 74 68  tclBasic.c so th
4670: 61 74 20 63 6f 6d 6d 65 6e 74 20 6c 69 6e 65 73  at comment lines
4680: 20 63 61 6e 20 62 65 20 63 6f 6e 74 69 6e 75 65   can be continue
4690: 64 20 62 79 0a 70 75 74 74 69 6e 67 20 61 20 62  d by.putting a b
46a0: 61 63 6b 73 6c 61 73 68 20 62 65 66 6f 72 65 20  ackslash before 
46b0: 74 68 65 20 6e 65 77 6c 69 6e 65 2e 0a 0a 31 32  the newline...12
46c0: 38 2e 20 38 2f 32 31 2f 39 32 20 4d 6f 64 69 66  8. 8/21/92 Modif
46d0: 69 65 64 20 22 75 6e 6b 6e 6f 77 6e 22 20 74 6f  ied "unknown" to
46e0: 20 61 6c 6c 6f 77 20 74 68 65 20 73 6f 75 72 63   allow the sourc
46f0: 65 2d 69 6e 67 20 6f 66 20 61 20 66 69 6c 65 20  e-ing of a file 
4700: 66 6f 72 0a 61 6e 20 61 75 74 6f 2d 6c 6f 61 64  for.an auto-load
4710: 20 74 6f 20 74 72 69 67 67 65 72 20 6f 74 68 65   to trigger othe
4720: 72 20 6e 65 73 74 65 64 20 61 75 74 6f 2d 6c 6f  r nested auto-lo
4730: 61 64 73 2c 20 61 73 20 6c 6f 6e 67 20 61 73 20  ads, as long as 
4740: 74 68 65 72 65 20 69 73 6e 27 74 0a 61 6e 79 20  there isn't.any 
4750: 72 65 63 75 72 73 69 6f 6e 20 6f 6e 20 74 68 65  recursion on the
4760: 20 73 61 6d 65 20 63 6f 6d 6d 61 6e 64 20 6e 61   same command na
4770: 6d 65 2e 0a 0a 31 32 39 2e 20 38 2f 32 35 2f 39  me...129. 8/25/9
4780: 32 20 4d 6f 64 69 66 69 65 64 20 22 66 6f 72 6d  2 Modified "form
4790: 61 74 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61  at" command to a
47a0: 6c 6c 6f 77 20 22 20 22 20 61 6e 64 20 22 2b 22  llow " " and "+"
47b0: 20 66 6c 61 67 73 2c 20 61 6e 64 0a 61 6c 6c 6f   flags, and.allo
47c0: 77 20 66 6c 61 67 73 20 69 6e 20 61 6e 79 20 6f  w flags in any o
47d0: 72 64 65 72 2e 0a 0a 31 33 30 2e 20 39 2f 31 34  rder...130. 9/14
47e0: 2f 39 32 20 4d 6f 64 69 66 69 65 64 20 54 63 6c  /92 Modified Tcl
47f0: 5f 50 61 72 73 65 56 61 72 20 73 6f 20 74 68 61  _ParseVar so tha
4800: 74 20 69 74 20 64 6f 65 73 6e 27 74 20 61 63 74  t it doesn't act
4810: 75 61 6c 6c 79 20 61 74 74 65 6d 70 74 0a 74 6f  ually attempt.to
4820: 20 6c 6f 6f 6b 20 75 70 20 74 68 65 20 76 61 72   look up the var
4830: 69 61 62 6c 65 20 69 66 20 22 6e 6f 45 76 61 6c  iable if "noEval
4840: 22 20 6d 6f 64 65 20 69 73 20 69 6e 20 65 66 66  " mode is in eff
4850: 65 63 74 20 69 6e 20 74 68 65 20 69 6e 74 65 72  ect in the inter
4860: 70 72 65 74 65 72 0a 28 69 74 20 6a 75 73 74 20  preter.(it just 
4870: 70 61 72 73 65 73 20 74 68 65 20 6e 61 6d 65 29  parses the name)
4880: 2e 20 20 54 68 69 73 20 61 76 6f 69 64 73 20 74  .  This avoids t
4890: 68 65 20 65 72 72 6f 72 73 20 74 68 61 74 20 75  he errors that u
48a0: 73 65 64 20 74 6f 20 6f 63 63 75 72 0a 69 6e 20  sed to occur.in 
48b0: 73 74 61 74 65 6d 65 6e 74 73 20 6c 69 6b 65 20  statements like 
48c0: 22 65 78 70 72 20 7b 5b 69 6e 66 6f 20 65 78 69  "expr {[info exi
48d0: 73 74 73 20 66 6f 6f 5d 20 26 26 20 24 66 6f 6f  sts foo] && $foo
48e0: 7d 22 2e 0a 0a 31 33 31 2e 20 39 2f 31 34 2f 39  }"...131. 9/14/9
48f0: 32 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22  2 Fixed bug in "
4900: 75 70 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64  uplevel" command
4910: 20 77 68 65 72 65 20 69 74 20 64 69 64 6e 27 74   where it didn't
4920: 20 6f 75 74 70 75 74 20 74 68 65 0a 63 6f 72 72   output the.corr
4930: 65 63 74 20 65 72 72 6f 72 20 6d 65 73 73 61 67  ect error messag
4940: 65 20 69 66 20 61 20 6c 65 76 65 6c 20 77 61 73  e if a level was
4950: 20 73 70 65 63 69 66 69 65 64 20 62 75 74 20 6e   specified but n
4960: 6f 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31 33 32 2e  o command...132.
4970: 20 39 2f 31 34 2f 39 32 20 52 65 6e 61 6d 65 64   9/14/92 Renamed
4980: 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20   manual entries 
4990: 74 6f 20 68 61 76 65 20 65 78 74 65 6e 73 69 6f  to have extensio
49a0: 6e 73 20 6c 69 6b 65 20 2e 33 20 61 6e 64 20 2e  ns like .3 and .
49b0: 6e 2c 0a 61 6e 64 20 61 64 64 65 64 20 22 69 6e  n,.and added "in
49c0: 73 74 61 6c 6c 22 20 74 61 72 67 65 74 20 74 6f  stall" target to
49d0: 20 4d 61 6b 65 66 69 6c 65 2e 0a 0a 31 33 33 2e   Makefile...133.
49e0: 20 39 2f 31 38 2f 39 32 20 4d 6f 64 69 66 69 65   9/18/92 Modifie
49f0: 64 20 22 75 6e 6b 6e 6f 77 6e 22 20 63 6f 6d 6d  d "unknown" comm
4a00: 61 6e 64 20 74 6f 20 65 6d 75 6c 61 74 65 20 21  and to emulate !
4a10: 21 2c 20 21 3c 6e 75 6d 3e 2c 20 61 6e 64 0a 5e  !, !<num>, and.^
4a20: 3c 6f 6c 64 3e 5e 3c 6e 65 77 3e 20 63 73 68 20  <old>^<new> csh 
4a30: 68 69 73 74 6f 72 79 20 73 75 62 73 74 69 74 75  history substitu
4a40: 74 69 6f 6e 73 2e 0a 0a 31 33 34 2e 20 39 2f 32  tions...134. 9/2
4a50: 31 2f 39 32 20 4d 61 64 65 20 74 68 65 20 63 6f  1/92 Made the co
4a60: 6e 66 69 67 20 73 63 72 69 70 74 20 63 6c 65 76  nfig script clev
4a70: 65 72 65 72 20 61 62 6f 75 74 20 66 69 67 75 72  erer about figur
4a80: 69 6e 67 20 6f 75 74 20 77 68 69 63 68 0a 73 77  ing out which.sw
4a90: 69 74 63 68 65 73 20 74 6f 20 70 61 73 73 20 74  itches to pass t
4aa0: 6f 20 22 6e 6d 22 2e 0a 0a 31 33 35 2e 20 39 2f  o "nm"...135. 9/
4ab0: 32 33 2f 39 32 20 46 69 78 65 64 20 74 63 6c 56  23/92 Fixed tclV
4ac0: 61 72 2e 63 20 74 6f 20 62 65 20 73 75 72 65 20  ar.c to be sure 
4ad0: 74 6f 20 63 6f 70 79 20 66 6c 61 67 73 20 77 68  to copy flags wh
4ae0: 65 6e 20 67 72 6f 77 69 6e 67 20 76 61 72 69 61  en growing varia
4af0: 62 6c 65 73 2e 0a 55 73 65 64 20 74 6f 20 66 6f  bles..Used to fo
4b00: 72 67 65 74 20 61 62 6f 75 74 20 74 72 61 63 65  rget about trace
4b10: 73 20 69 6e 20 70 72 6f 67 72 65 73 73 20 61 6e  s in progress an
4b20: 64 20 6d 61 6b 65 20 65 78 74 72 61 20 72 65 63  d make extra rec
4b30: 75 72 73 69 76 65 20 63 61 6c 6c 73 0a 6f 6e 20  ursive calls.on 
4b40: 74 72 61 63 65 20 70 72 6f 63 73 2e 0a 0a 31 33  trace procs...13
4b50: 36 2e 20 39 2f 32 38 2f 39 32 20 46 69 78 65 64  6. 9/28/92 Fixed
4b60: 20 62 75 67 20 69 6e 20 61 75 74 6f 5f 72 65 73   bug in auto_res
4b70: 65 74 20 77 68 65 72 65 20 69 74 20 77 61 73 20  et where it was 
4b80: 75 6e 73 65 74 74 69 6e 67 20 76 61 72 69 61 62  unsetting variab
4b90: 6c 65 73 0a 74 68 61 74 20 6d 69 67 68 74 20 6e  les.that might n
4ba0: 6f 74 20 65 78 69 73 74 2e 0a 0a 31 33 37 2e 20  ot exist...137. 
4bb0: 31 30 2f 37 2f 39 32 20 43 68 61 6e 67 65 64 20  10/7/92 Changed 
4bc0: 22 70 61 72 72 61 79 22 20 6c 69 62 72 61 72 79  "parray" library
4bd0: 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20 70 72   procedure to pr
4be0: 69 6e 74 20 61 6e 79 20 61 72 72 61 79 0a 61 63  int any array.ac
4bf0: 63 65 73 73 69 62 6c 65 20 74 6f 20 63 61 6c 6c  cessible to call
4c00: 65 72 2c 20 6c 6f 63 61 6c 20 6f 72 20 67 6c 6f  er, local or glo
4c10: 62 61 6c 2e 0a 0a 31 33 38 2e 20 31 30 2f 31 35  bal...138. 10/15
4c20: 2f 39 32 20 46 69 78 65 64 20 62 75 67 20 77 68  /92 Fixed bug wh
4c30: 65 72 65 20 70 72 6f 70 61 67 61 74 69 6f 6e 20  ere propagation 
4c40: 6f 66 20 6e 65 77 20 65 6e 76 69 72 6f 6e 6d 65  of new environme
4c50: 6e 74 20 76 61 72 69 61 62 6c 65 0a 76 61 6c 75  nt variable.valu
4c60: 65 73 20 61 6d 6f 6e 67 20 69 6e 74 65 72 70 72  es among interpr
4c70: 65 74 65 72 73 20 74 6f 6f 6b 20 4e 21 20 74 69  eters took N! ti
4c80: 6d 65 20 69 66 20 74 68 65 72 65 20 65 78 69 73  me if there exis
4c90: 74 20 4e 20 69 6e 74 65 72 70 72 65 74 65 72 73  t N interpreters
4ca0: 2e 0a 0a 31 33 39 2e 20 31 30 2f 31 36 2f 39 32  ...139. 10/16/92
4cb0: 20 43 68 61 6e 67 65 64 20 61 75 74 6f 5f 72 65   Changed auto_re
4cc0: 73 65 74 20 70 72 6f 63 65 64 75 72 65 20 73 6f  set procedure so
4cd0: 20 74 68 61 74 20 69 74 20 61 6c 73 6f 20 64 65   that it also de
4ce0: 6c 65 74 65 73 20 61 6e 79 0a 65 78 69 73 74 69  letes any.existi
4cf0: 6e 67 20 70 72 6f 63 65 64 75 72 65 73 20 74 68  ng procedures th
4d00: 61 74 20 61 72 65 20 69 6e 20 74 68 65 20 61 75  at are in the au
4d10: 74 6f 5f 6c 6f 61 64 20 69 6e 64 65 78 20 28 74  to_load index (t
4d20: 68 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 69 73  he assumption is
4d30: 0a 74 68 61 74 20 74 68 65 79 20 73 68 6f 75 6c  .that they shoul
4d40: 64 20 62 65 20 72 65 2d 6c 6f 61 64 65 64 20 74  d be re-loaded t
4d50: 6f 20 67 65 74 20 74 68 65 20 6c 61 74 65 73 74  o get the latest
4d60: 20 76 65 72 73 69 6f 6e 73 29 2e 0a 0a 31 34 30   versions)...140
4d70: 2e 20 31 30 2f 32 31 2f 39 32 20 46 69 78 65 64  . 10/21/92 Fixed
4d80: 20 62 75 67 20 74 68 61 74 20 63 61 75 73 65 64   bug that caused
4d90: 20 6c 69 73 74 73 20 74 6f 20 62 65 20 69 6e 63   lists to be inc
4da0: 6f 72 72 65 63 74 6c 79 20 67 65 6e 65 72 61 74  orrectly generat
4db0: 65 64 0a 66 6f 72 20 65 6c 65 6d 65 6e 74 73 20  ed.for elements 
4dc0: 74 68 61 74 20 63 6f 6e 74 61 69 6e 65 64 20 62  that contained b
4dd0: 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65  ackslash-newline
4de0: 20 73 65 71 75 65 6e 63 65 73 2e 0a 0a 31 34 31   sequences...141
4df0: 2e 20 31 32 2f 39 2f 39 32 20 41 64 64 65 64 20  . 12/9/92 Added 
4e00: 73 75 70 70 6f 72 74 20 66 6f 72 20 54 43 4c 5f  support for TCL_
4e10: 4c 49 42 52 41 52 59 20 65 6e 76 69 72 6f 6e 6d  LIBRARY environm
4e20: 65 6e 74 20 76 61 72 69 61 62 6c 65 3a 20 20 75  ent variable:  u
4e30: 73 65 0a 69 74 20 61 73 20 6c 69 62 72 61 72 79  se.it as library
4e40: 20 6c 6f 63 61 74 69 6f 6e 20 69 66 20 69 74 27   location if it'
4e50: 73 20 70 72 65 73 65 6e 74 2e 0a 0a 31 34 32 2e  s present...142.
4e60: 20 31 32 2f 39 2f 39 32 20 41 64 64 65 64 20 22   12/9/92 Added "
4e70: 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 22 20 63  info complete" c
4e80: 6f 6d 6d 61 6e 64 2c 20 54 63 6c 5f 43 6f 6d 6d  ommand, Tcl_Comm
4e90: 61 6e 64 43 6f 6d 70 6c 65 74 65 20 70 72 6f 63  andComplete proc
4ea0: 65 64 75 72 65 2e 0a 0a 31 34 33 2e 20 31 32 2f  edure...143. 12/
4eb0: 31 36 2f 39 32 20 43 68 61 6e 67 65 64 20 74 68  16/92 Changed th
4ec0: 65 20 4d 61 6b 65 66 69 6c 65 20 74 6f 20 63 68  e Makefile to ch
4ed0: 65 63 6b 20 74 6f 20 6d 61 6b 65 20 73 75 72 65  eck to make sure
4ee0: 20 22 63 6f 6e 66 69 67 22 20 68 61 73 20 62 65   "config" has be
4ef0: 65 6e 0a 72 75 6e 20 28 63 61 6e 27 74 20 72 75  en.run (can't ru
4f00: 6e 20 63 6f 6e 66 69 67 20 64 69 72 65 63 74 6c  n config directl
4f10: 79 20 66 72 6f 6d 20 74 68 65 20 4d 61 6b 65 66  y from the Makef
4f20: 69 6c 65 20 62 65 63 61 75 73 65 20 69 74 20 6d  ile because it m
4f30: 6f 64 69 66 69 65 73 20 74 68 65 0a 4d 61 6b 65  odifies the.Make
4f40: 66 69 6c 65 3b 20 20 74 68 75 73 20 6d 61 6b 65  file;  thus make
4f50: 20 68 61 73 20 74 6f 20 62 65 20 72 75 6e 20 61   has to be run a
4f60: 67 61 69 6e 20 61 66 74 65 72 20 72 75 6e 6e 69  gain after runni
4f70: 6e 67 20 63 6f 6e 66 69 67 29 2e 0a 0a 2d 2d 2d  ng config)...---
4f80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
4f90: 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20  eleased version 
4fa0: 36 2e 35 2c 20 31 32 2f 31 37 2f 39 32 20 2d 2d  6.5, 12/17/92 --
4fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
4fc0: 0a 0a 31 34 34 2e 20 31 32 2f 32 31 2f 39 32 20  ..144. 12/21/92 
4fd0: 43 68 61 6e 67 65 64 20 63 6f 6e 66 69 67 20 74  Changed config t
4fe0: 6f 20 6c 6f 6f 6b 20 69 6e 20 73 65 76 65 72 61  o look in severa
4ff0: 6c 20 70 6c 61 63 65 73 20 66 6f 72 20 6c 69 62  l places for lib
5000: 63 20 66 69 6c 65 2e 0a 0a 31 34 35 2e 20 31 32  c file...145. 12
5010: 2f 32 33 2f 39 32 20 41 64 64 65 64 20 22 65 6c  /23/92 Added "el
5020: 73 65 69 66 22 20 73 75 70 70 6f 72 74 20 74 6f  seif" support to
5030: 20 69 66 2e 20 20 41 6c 73 6f 2c 20 22 74 68 65   if.  Also, "the
5040: 6e 22 2c 20 22 65 6c 73 65 22 2c 20 61 6e 64 0a  n", "else", and.
5050: 22 65 6c 73 65 69 66 22 20 6d 61 79 20 6e 6f 20  "elseif" may no 
5060: 6c 6f 6e 67 65 72 20 62 65 20 61 62 62 72 65 76  longer be abbrev
5070: 69 61 74 65 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e  iated..*** POTEN
5080: 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
5090: 4c 49 54 59 20 2a 2a 2a 0a 0a 31 34 36 2e 20 31  LITY ***..146. 1
50a0: 32 2f 32 38 2f 39 32 20 43 68 61 6e 67 65 64 20  2/28/92 Changed 
50b0: 22 70 75 74 73 22 20 61 6e 64 20 22 72 65 61 64  "puts" and "read
50c0: 22 20 74 6f 20 73 75 70 70 6f 72 74 20 69 6e 69  " to support ini
50d0: 74 69 61 6c 20 22 2d 6e 6f 6e 65 77 6c 69 6e 65  tial "-nonewline
50e0: 22 0a 73 77 69 74 63 68 20 69 6e 73 74 65 61 64  ".switch instead
50f0: 20 6f 66 20 61 64 64 69 74 69 6f 6e 61 6c 20 22   of additional "
5100: 6e 6f 6e 65 77 6c 69 6e 65 22 20 61 72 67 75 6d  nonewline" argum
5110: 65 6e 74 2e 20 20 54 68 65 20 6f 6c 64 20 66 6f  ent.  The old fo
5120: 72 6d 20 69 73 0a 73 74 69 6c 6c 20 73 75 70 70  rm is.still supp
5130: 6f 72 74 65 64 2c 20 62 75 74 20 69 74 20 69 73  orted, but it is
5140: 20 64 69 73 63 6f 75 72 61 67 65 64 20 61 6e 64   discouraged and
5150: 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 64 6f   is no longer do
5160: 63 75 6d 65 6e 74 65 64 2e 0a 41 6c 73 6f 20 63  cumented..Also c
5170: 68 61 6e 67 65 64 20 22 70 75 74 73 22 20 74 6f  hanged "puts" to
5180: 20 6d 61 6b 65 20 74 68 65 20 66 69 6c 65 20 61   make the file a
5190: 72 67 75 6d 65 6e 74 20 64 65 66 61 75 6c 74 20  rgument default 
51a0: 74 6f 20 73 74 64 6f 75 74 3a 20 65 2e 67 2e 0a  to stdout: e.g..
51b0: 22 70 75 74 73 20 66 6f 6f 22 20 77 69 6c 6c 20  "puts foo" will 
51c0: 70 72 69 6e 74 20 66 6f 6f 20 6f 6e 20 73 74 61  print foo on sta
51d0: 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 0a 0a 31  ndard output...1
51e0: 34 37 2e 20 31 2f 36 2f 39 33 20 46 69 78 65 64  47. 1/6/93 Fixed
51f0: 20 62 75 67 20 77 68 65 72 65 62 79 20 62 61 63   bug whereby bac
5200: 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65 20 77  kslash-newline w
5210: 61 73 6e 27 74 20 77 6f 72 6b 69 6e 67 20 77 68  asn't working wh
5220: 65 6e 0a 74 79 70 65 64 20 69 6e 74 65 72 61 63  en.typed interac
5230: 74 69 76 65 6c 79 2c 20 6f 72 20 69 6e 20 22 69  tively, or in "i
5240: 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 22 2e 0a 0a  nfo complete"...
5250: 31 34 38 2e 20 31 2f 32 32 2f 39 33 20 46 69 78  148. 1/22/93 Fix
5260: 65 64 20 62 75 67 73 20 69 6e 20 22 6c 72 65 70  ed bugs in "lrep
5270: 6c 61 63 65 22 20 61 6e 64 20 22 6c 69 6e 73 65  lace" and "linse
5280: 72 74 22 20 77 68 65 72 65 20 63 6c 6f 73 65 0a  rt" where close.
5290: 71 75 6f 74 65 73 20 77 65 72 65 20 62 65 69 6e  quotes were bein
52a0: 67 20 6c 6f 73 74 20 66 72 6f 6d 20 6c 61 73 74  g lost from last
52b0: 20 65 6c 65 6d 65 6e 74 20 62 65 66 6f 72 65 20   element before 
52c0: 72 65 70 6c 61 63 65 6d 65 6e 74 20 6f 72 0a 69  replacement or.i
52d0: 6e 73 65 72 74 69 6f 6e 2e 0a 0a 31 34 39 2e 20  nsertion...149. 
52e0: 31 2f 32 39 2f 39 33 20 46 69 78 65 64 20 62 75  1/29/93 Fixed bu
52f0: 67 20 69 6e 20 54 63 6c 5f 41 73 73 65 6d 62 6c  g in Tcl_Assembl
5300: 65 43 6d 64 20 77 68 65 72 65 20 69 74 20 77 61  eCmd where it wa
5310: 73 6e 27 74 20 72 65 71 75 69 72 69 6e 67 0a 61  sn't requiring.a
5320: 20 6e 65 77 6c 69 6e 65 20 61 74 20 74 68 65 20   newline at the 
5330: 65 6e 64 20 6f 66 20 61 20 6c 69 6e 65 20 62 65  end of a line be
5340: 66 6f 72 65 20 63 6f 6e 73 69 64 65 72 69 6e 67  fore considering
5350: 20 61 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65   a command to be
5360: 0a 63 6f 6d 70 6c 65 74 65 2e 20 20 54 68 65 20  .complete.  The 
5370: 62 75 67 20 63 61 75 73 65 64 20 73 6f 6d 65 20  bug caused some 
5380: 76 65 72 79 20 6c 6f 6e 67 20 6c 69 6e 65 73 20  very long lines 
5390: 69 6e 20 73 63 72 69 70 74 20 66 69 6c 65 73 20  in script files 
53a0: 74 6f 0a 62 65 20 70 72 6f 63 65 73 73 65 64 20  to.be processed 
53b0: 61 73 20 6d 75 6c 74 69 70 6c 65 20 73 65 70 61  as multiple sepa
53c0: 72 61 74 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a  rate commands...
53d0: 31 35 30 2e 20 31 2f 32 39 2f 39 33 20 56 61 72  150. 1/29/93 Var
53e0: 69 6f 75 73 20 63 68 61 6e 67 65 73 20 69 6e 20  ious changes in 
53f0: 4d 61 6b 65 66 69 6c 65 20 74 6f 20 61 64 64 20  Makefile to add 
5400: 6d 6f 72 65 20 63 6f 6e 66 69 67 75 72 61 74 69  more configurati
5410: 6f 6e 0a 6f 70 74 69 6f 6e 73 2c 20 73 69 6d 70  on.options, simp
5420: 6c 69 66 79 20 69 6e 73 74 61 6c 6c 61 74 69 6f  lify installatio
5430: 6e 2c 20 66 69 78 20 62 75 67 73 20 28 65 2e 67  n, fix bugs (e.g
5440: 2e 20 64 6f 6e 27 74 20 75 73 65 20 2d 66 20 73  . don't use -f s
5450: 77 69 74 63 68 0a 66 6f 72 20 63 70 29 2c 20 65  witch.for cp), e
5460: 74 63 2e 0a 0a 31 35 31 2e 20 31 2f 32 39 2f 39  tc...151. 1/29/9
5470: 33 20 43 68 61 6e 67 65 64 20 22 6e 61 6d 65 31  3 Changed "name1
5480: 22 20 61 6e 64 20 22 6e 61 6d 65 32 22 20 69 64  " and "name2" id
5490: 65 6e 74 69 66 69 65 72 73 20 74 6f 20 22 70 61  entifiers to "pa
54a0: 72 74 31 22 20 61 6e 64 0a 22 70 61 72 74 32 22  rt1" and."part2"
54b0: 20 74 6f 20 61 76 6f 69 64 20 6e 61 6d 65 20 63   to avoid name c
54c0: 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 73 74  onflicts with st
54d0: 75 70 69 64 20 43 2b 2b 20 69 6d 70 6c 65 6d 65  upid C++ impleme
54e0: 6e 74 61 74 69 6f 6e 73 20 74 68 61 74 0a 75 73  ntations that.us
54f0: 65 20 22 6e 61 6d 65 31 22 20 61 6e 64 20 22 6e  e "name1" and "n
5500: 61 6d 65 32 22 20 69 6e 20 61 20 72 65 73 65 72  ame2" in a reser
5510: 76 65 64 20 77 61 79 2e 0a 0a 31 35 32 2e 20 32  ved way...152. 2
5520: 2f 31 2f 39 33 20 41 64 64 65 64 20 22 70 75 74  /1/93 Added "put
5530: 65 6e 76 22 20 70 72 6f 63 65 64 75 72 65 20 74  env" procedure t
5540: 6f 20 72 65 70 6c 61 63 65 20 74 68 65 20 73 74  o replace the st
5550: 61 6e 64 61 72 64 20 73 79 73 74 65 6d 0a 76 65  andard system.ve
5560: 72 73 69 6f 6e 20 73 6f 20 74 68 61 74 20 69 74  rsion so that it
5570: 20 77 69 6c 6c 20 77 6f 72 6b 20 63 6f 72 72 65   will work corre
5580: 63 74 6c 79 20 77 69 74 68 20 54 63 6c 27 73 20  ctly with Tcl's 
5590: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 68 61 6e 64  environment hand
55a0: 6c 69 6e 67 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  ling...---------
55b0: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
55c0: 64 20 76 65 72 73 69 6f 6e 20 36 2e 36 2c 20 32  d version 6.6, 2
55d0: 2f 35 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /5/93 ----------
55e0: 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 35 33 2e 20 32  --------..153. 2
55f0: 2f 31 30 2f 39 33 20 46 69 78 65 64 20 62 75 67  /10/93 Fixed bug
5600: 73 20 69 6e 20 63 6f 6e 66 69 67 20 73 63 72 69  s in config scri
5610: 70 74 3a 20 20 6d 69 73 73 69 6e 67 20 22 65 6e  pt:  missing "en
5620: 64 69 66 22 20 69 6e 20 6c 69 62 63 20 6c 6f 6f  dif" in libc loo
5630: 70 2c 0a 61 6e 64 20 74 72 69 65 64 20 74 6f 20  p,.and tried to 
5640: 75 73 65 20 73 74 72 6e 63 61 73 65 63 6d 70 2e  use strncasecmp.
5650: 63 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74 72  c instead of str
5660: 63 61 73 65 63 6d 70 2e 63 2e 0a 0a 31 35 34 2e  casecmp.c...154.
5670: 20 32 2f 31 30 2f 39 33 20 4d 61 6b 65 66 69 6c   2/10/93 Makefil
5680: 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 3a 20  e improvements: 
5690: 20 61 64 64 65 64 20 52 41 4e 4c 49 42 20 76 61   added RANLIB va
56a0: 72 69 61 62 6c 65 20 66 6f 72 20 65 61 73 69 65  riable for easie
56b0: 72 0a 53 79 73 2d 56 20 63 6f 6e 66 69 67 75 72  r.Sys-V configur
56c0: 61 74 69 6f 6e 2c 20 61 64 64 65 64 20 53 48 45  ation, added SHE
56d0: 4c 4c 20 76 61 72 69 61 62 6c 65 20 66 6f 72 20  LL variable for 
56e0: 53 47 49 20 73 79 73 74 65 6d 73 2e 0a 0a 2d 2d  SGI systems...--
56f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
5700: 52 65 6c 65 61 73 65 64 20 76 65 72 73 69 6f 6e  Released version
5710: 20 36 2e 37 2c 20 32 2f 31 31 2f 39 33 20 2d 2d   6.7, 2/11/93 --
5720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
5730: 0a 0a 31 35 33 2e 20 32 2f 36 2f 39 33 20 43 68  ..153. 2/6/93 Ch
5740: 61 6e 67 65 73 20 69 6e 20 62 61 63 6b 73 6c 61  anges in backsla
5750: 73 68 20 70 72 6f 63 65 73 73 69 6e 67 3a 0a 20  sh processing:. 
5760: 20 20 20 2d 20 5c 43 78 2c 20 5c 4d 78 2c 20 5c     - \Cx, \Mx, \
5770: 43 4d 78 2c 20 5c 65 20 73 65 71 75 65 6e 63 65  CMx, \e sequence
5780: 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 73 70 65 63  s no longer spec
5790: 69 61 6c 0a 20 20 20 20 2d 20 5c 3c 6e 65 77 6c  ial.    - \<newl
57a0: 69 6e 65 3e 20 61 6c 73 6f 20 65 61 74 73 20 75  ine> also eats u
57b0: 70 20 61 6e 79 20 73 70 61 63 65 20 61 66 74 65  p any space afte
57c0: 72 20 74 68 65 20 6e 65 77 6c 69 6e 65 2c 20 72  r the newline, r
57d0: 65 70 6c 61 63 69 6e 67 0a 20 20 20 20 20 20 74  eplacing.      t
57e0: 68 65 20 77 68 6f 6c 65 20 73 65 71 75 65 6e 63  he whole sequenc
57f0: 65 20 77 69 74 68 20 61 20 73 69 6e 67 6c 65 20  e with a single 
5800: 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 0a  space character.
5810: 20 20 20 20 2d 20 48 65 78 20 73 65 71 75 65 6e      - Hex sequen
5820: 63 65 73 20 6c 69 6b 65 20 5c 78 32 34 20 61 72  ces like \x24 ar
5830: 65 20 6e 6f 77 20 73 75 70 70 6f 72 74 65 64 2c  e now supported,
5840: 20 61 6c 6f 6e 67 20 77 69 74 68 20 41 4e 53 49   along with ANSI
5850: 20 43 27 73 20 5c 61 2e 0a 20 20 20 20 2d 20 22   C's \a..    - "
5860: 66 6f 72 6d 61 74 22 20 6e 6f 20 6c 6f 6e 67 65  format" no longe
5870: 72 20 64 6f 65 73 20 62 61 63 6b 73 6c 61 73 68  r does backslash
5880: 20 70 72 6f 63 65 73 73 69 6e 67 20 6f 6e 20 69   processing on i
5890: 74 73 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67  ts format string
58a0: 0a 20 20 20 20 2d 20 74 68 65 72 65 20 69 73 20  .    - there is 
58b0: 6e 6f 20 6c 6f 6e 67 65 72 20 61 6e 79 20 73 70  no longer any sp
58c0: 65 63 69 61 6c 20 6d 65 61 6e 69 6e 67 20 74 6f  ecial meaning to
58d0: 20 61 20 30 20 72 65 74 75 72 6e 20 76 61 6c 75   a 0 return valu
58e0: 65 20 66 72 6f 6d 0a 20 20 20 20 20 20 54 63 6c  e from.      Tcl
58f0: 5f 42 61 63 6b 73 6c 61 73 68 0a 20 20 20 20 2d  _Backslash.    -
5900: 20 75 6e 6b 6e 6f 77 6e 20 62 61 63 6b 73 6c 61   unknown backsla
5910: 73 68 20 73 65 71 75 65 6e 63 65 73 2c 20 6c 69  sh sequences, li
5920: 6b 65 20 28 65 2e 67 2e 20 5c 2a 29 2c 20 61 72  ke (e.g. \*), ar
5930: 65 20 72 65 70 6c 61 63 65 64 20 77 69 74 68 0a  e replaced with.
5940: 20 20 20 20 20 20 74 68 65 20 66 6f 6c 6c 6f 77        the follow
5950: 69 6e 67 20 63 68 61 72 61 63 74 65 72 20 28 65  ing character (e
5960: 2e 67 2e 20 2a 29 2c 20 69 6e 73 74 65 61 64 20  .g. *), instead 
5970: 6f 66 20 6a 75 73 74 20 74 72 65 61 74 69 6e 67  of just treating
5980: 20 74 68 65 0a 20 20 20 20 20 20 62 61 63 6b 73   the.      backs
5990: 6c 61 73 68 20 61 73 20 61 6e 20 6f 72 64 69 6e  lash as an ordin
59a0: 61 72 79 20 63 68 61 72 61 63 74 65 72 2e 0a 2a  ary character..*
59b0: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
59c0: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
59d0: 0a 0a 31 35 34 2e 20 32 2f 36 2f 39 33 20 55 70  ..154. 2/6/93 Up
59e0: 64 61 74 65 64 20 61 6c 6c 20 63 6f 70 79 72 69  dated all copyri
59f0: 67 68 74 20 6e 6f 74 69 63 65 73 2e 20 20 54 68  ght notices.  Th
5a00: 65 20 6d 65 61 6e 69 6e 67 20 68 61 73 6e 27 74  e meaning hasn't
5a10: 20 63 68 61 6e 67 65 64 0a 61 74 20 61 6c 6c 20   changed.at all 
5a20: 62 75 74 20 74 68 65 20 77 6f 72 64 69 6e 67 20  but the wording 
5a30: 64 6f 65 73 20 61 20 62 65 74 74 65 72 20 6a 6f  does a better jo
5a40: 62 20 6f 66 20 70 72 6f 74 65 63 74 69 6e 67 20  b of protecting 
5a50: 55 2e 43 2e 20 66 72 6f 6d 0a 6c 69 61 62 69 6c  U.C. from.liabil
5a60: 69 74 79 20 28 61 63 63 6f 72 64 69 6e 67 20 74  ity (according t
5a70: 6f 20 55 2e 43 2e 20 6c 61 77 79 65 72 73 2c 20  o U.C. lawyers, 
5a80: 61 6e 79 77 61 79 29 2e 0a 0a 31 35 35 2e 20 32  anyway)...155. 2
5a90: 2f 36 2f 39 33 20 43 68 61 6e 67 65 64 20 22 72  /6/93 Changed "r
5aa0: 65 67 73 75 62 22 20 73 6f 20 74 68 61 74 20 69  egsub" so that i
5ab0: 74 20 6f 76 65 72 77 72 69 74 65 73 20 74 68 65  t overwrites the
5ac0: 20 72 65 73 75 6c 74 20 76 61 72 69 61 62 6c 65   result variable
5ad0: 0a 69 6e 20 61 6c 6c 20 63 61 73 65 73 2c 20 65  .in all cases, e
5ae0: 76 65 6e 20 69 66 20 74 68 65 72 65 20 69 73 20  ven if there is 
5af0: 6e 6f 20 6d 61 74 63 68 2e 0a 2a 2a 2a 20 50 4f  no match..*** PO
5b00: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
5b10: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 35 36  IBILITY ***..156
5b20: 2e 20 32 2f 38 2f 39 33 20 41 64 64 65 64 20 73  . 2/8/93 Added s
5b30: 75 70 70 6f 72 74 20 66 6f 72 20 58 50 47 33 20  upport for XPG3 
5b40: 25 6e 24 20 63 6f 6e 76 65 72 73 69 6f 6e 20 73  %n$ conversion s
5b50: 70 65 63 69 66 69 65 72 73 20 74 6f 20 22 66 6f  pecifiers to "fo
5b60: 72 6d 61 74 22 0a 63 6f 6d 6d 61 6e 64 2e 0a 0a  rmat".command...
5b70: 31 35 37 2e 20 32 2f 31 37 2f 39 33 20 46 69 78  157. 2/17/93 Fix
5b80: 65 64 20 62 75 67 20 69 6e 20 54 63 6c 5f 45 76  ed bug in Tcl_Ev
5b90: 61 6c 20 77 68 65 72 65 20 65 72 72 6f 72 73 20  al where errors 
5ba0: 64 75 65 20 74 6f 20 69 6e 66 69 6e 69 74 65 0a  due to infinite.
5bb0: 72 65 63 75 72 73 69 6f 6e 20 63 6f 75 6c 64 20  recursion could 
5bc0: 72 65 73 75 6c 74 20 69 6e 20 63 6f 72 65 20 64  result in core d
5bd0: 75 6d 70 73 2e 0a 0a 31 35 38 2e 20 32 2f 31 37  umps...158. 2/17
5be0: 2f 39 33 20 49 6d 70 72 6f 76 65 64 20 74 68 65  /93 Improved the
5bf0: 20 61 75 74 6f 2d 6c 6f 61 64 20 6d 65 63 68 61   auto-load mecha
5c00: 6e 69 73 6d 20 74 6f 20 64 65 61 6c 20 67 72 61  nism to deal gra
5c10: 63 65 66 75 6c 6c 79 20 28 69 2e 65 2e 0a 72 65  cefully (i.e..re
5c20: 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 29 20 77  turn an error) w
5c30: 69 74 68 20 61 20 73 69 74 75 61 74 69 6f 6e 20  ith a situation 
5c40: 77 68 65 72 65 20 61 20 6c 69 62 72 61 72 79 20  where a library 
5c50: 66 69 6c 65 20 74 68 61 74 20 73 75 70 70 6f 73  file that suppos
5c60: 65 64 6c 79 0a 64 65 66 69 6e 65 73 20 61 20 70  edly.defines a p
5c70: 72 6f 63 65 64 75 72 65 20 64 6f 65 73 6e 27 74  rocedure doesn't
5c80: 20 61 63 74 75 61 6c 6c 79 20 64 65 66 69 6e 65   actually define
5c90: 20 69 74 2e 0a 0a 31 35 39 2e 20 32 2f 31 37 2f   it...159. 2/17/
5ca0: 39 33 20 52 65 6e 61 6d 65 64 20 54 63 6c 5f 55  93 Renamed Tcl_U
5cb0: 6e 69 78 45 72 72 6f 72 20 70 72 6f 63 65 64 75  nixError procedu
5cc0: 72 65 20 74 6f 20 54 63 6c 5f 50 6f 73 69 78 45  re to Tcl_PosixE
5cd0: 72 72 6f 72 2c 20 61 6e 64 0a 63 68 61 6e 67 65  rror, and.change
5ce0: 64 20 65 72 72 6f 72 43 6f 64 65 20 76 61 72 69  d errorCode vari
5cf0: 61 62 6c 65 20 75 73 61 67 65 20 74 6f 20 75 73  able usage to us
5d00: 65 20 50 4f 53 49 58 20 61 73 20 6b 65 79 77 6f  e POSIX as keywo
5d10: 72 64 20 69 6e 73 74 65 61 64 20 6f 66 0a 55 4e  rd instead of.UN
5d20: 49 58 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  IX..*** POTENTIA
5d30: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
5d40: 59 20 2a 2a 2a 0a 0a 31 36 30 2e 20 32 2f 31 39  Y ***..160. 2/19
5d50: 2f 39 33 20 43 68 61 6e 67 65 73 20 74 6f 20 65  /93 Changes to e
5d60: 78 65 63 20 61 6e 64 20 70 72 6f 63 65 73 73 20  xec and process 
5d70: 63 6f 6e 74 72 6f 6c 3a 0a 20 20 20 20 2d 20 41  control:.    - A
5d80: 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
5d90: 20 3e 3e 2c 20 3e 26 2c 20 3e 3e 26 2c 20 7c 26   >>, >&, >>&, |&
5da0: 2c 20 3c 40 2c 20 3e 40 2c 20 61 6e 64 20 3e 26  , <@, >@, and >&
5db0: 40 20 66 6f 72 6d 73 20 6f 66 20 72 65 64 69 72  @ forms of redir
5dc0: 65 63 74 69 6f 6e 2e 0a 20 20 20 20 2d 20 57 68  ection..    - Wh
5dd0: 65 6e 20 65 78 65 63 20 70 75 74 73 20 70 72 6f  en exec puts pro
5de0: 63 65 73 73 65 73 20 69 6e 74 6f 20 62 61 63 6b  cesses into back
5df0: 67 72 6f 75 6e 64 2c 20 69 74 20 72 65 74 75 72  ground, it retur
5e00: 6e 73 20 61 20 6c 69 73 74 20 6f 66 0a 20 20 20  ns a list of.   
5e10: 20 20 20 74 68 65 69 72 20 70 69 64 73 20 61 73     their pids as
5e20: 20 72 65 73 75 6c 74 2e 0a 20 20 20 20 2d 20 41   result..    - A
5e30: 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
5e40: 20 3c 66 69 6c 65 2c 20 3e 66 69 6c 65 2c 20 65   <file, >file, e
5e50: 74 63 2e 20 28 69 2e 65 2e 20 6e 6f 20 73 70 61  tc. (i.e. no spa
5e60: 63 65 20 62 65 74 77 65 65 6e 0a 20 20 20 20 20  ce between.     
5e70: 20 22 3e 22 20 61 6e 64 20 66 69 6c 65 20 6e 61   ">" and file na
5e80: 6d 65 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20  me..    - Added 
5e90: 2d 6b 65 65 70 6e 65 77 6c 69 6e 65 20 6f 70 74  -keepnewline opt
5ea0: 69 6f 6e 2e 0a 20 20 20 20 2d 20 44 65 6c 65 74  ion..    - Delet
5eb0: 65 64 20 54 63 6c 5f 46 6f 72 6b 20 61 6e 64 20  ed Tcl_Fork and 
5ec0: 54 63 6c 5f 57 61 69 74 50 69 64 73 20 70 72 6f  Tcl_WaitPids pro
5ed0: 63 65 64 75 72 65 73 20 28 6a 75 73 74 20 75 73  cedures (just us
5ee0: 65 20 66 6f 72 6b 20 61 6e 64 0a 20 20 20 20 20  e fork and.     
5ef0: 20 77 61 69 74 70 69 64 20 69 6e 73 74 65 61 64   waitpid instead
5f00: 29 2e 0a 20 20 20 20 2d 20 41 64 64 65 64 20 77  )..    - Added w
5f10: 61 69 74 70 69 64 20 63 6f 6d 70 61 74 69 62 69  aitpid compatibi
5f20: 6c 69 74 79 20 70 72 6f 63 65 64 75 72 65 20 66  lity procedure f
5f30: 6f 72 20 73 79 73 74 65 6d 73 20 74 68 61 74 20  or systems that 
5f40: 64 6f 6e 27 74 20 68 61 76 65 0a 20 20 20 20 20  don't have.     
5f50: 20 69 74 2e 0a 20 20 20 20 2d 20 41 64 64 65 64   it..    - Added
5f60: 20 54 63 6c 5f 52 65 61 70 44 65 74 61 63 68 65   Tcl_ReapDetache
5f70: 64 50 72 6f 63 73 20 70 72 6f 63 65 64 75 72 65  dProcs procedure
5f80: 2e 0a 20 20 20 20 2d 20 43 68 61 6e 67 65 64 20  ..    - Changed 
5f90: 22 65 78 65 63 22 20 74 6f 20 72 65 74 75 72 6e  "exec" to return
5fa0: 20 61 6e 20 65 72 72 6f 72 20 69 66 20 74 68 65   an error if the
5fb0: 72 65 20 69 73 20 73 74 64 65 72 72 20 6f 75 74  re is stderr out
5fc0: 70 75 74 2c 20 65 76 65 6e 0a 20 20 20 20 20 20  put, even.      
5fd0: 69 66 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72  if the command r
5fe0: 65 74 75 72 6e 73 20 61 20 30 20 65 78 69 74 20  eturns a 0 exit 
5ff0: 73 74 61 74 75 73 20 28 69 74 27 73 20 61 6c 77  status (it's alw
6000: 61 79 73 20 62 65 65 6e 20 64 6f 63 75 6d 65 6e  ays been documen
6010: 74 65 64 0a 20 20 20 20 20 20 74 68 69 73 20 77  ted.      this w
6020: 61 79 2c 20 62 75 74 20 74 68 65 20 69 6d 70 6c  ay, but the impl
6030: 65 6d 65 6e 74 61 74 69 6f 6e 20 77 61 73 6e 27  ementation wasn'
6040: 74 20 63 6f 72 72 65 63 74 29 2e 0a 20 20 20 20  t correct)..    
6050: 2d 20 49 66 20 61 20 70 72 6f 63 65 73 73 20 72  - If a process r
6060: 65 74 75 72 6e 73 20 61 20 6e 6f 6e 2d 7a 65 72  eturns a non-zer
6070: 6f 20 65 78 69 74 20 73 74 61 74 75 73 20 62 75  o exit status bu
6080: 74 20 64 6f 65 73 6e 27 74 20 67 65 6e 65 72 61  t doesn't genera
6090: 74 65 0a 20 20 20 20 20 20 61 6e 79 20 64 69 61  te.      any dia
60a0: 67 6e 6f 73 74 69 63 20 6f 75 74 70 75 74 2c 20  gnostic output, 
60b0: 74 68 65 6e 20 54 63 6c 20 67 65 6e 65 72 61 74  then Tcl generat
60c0: 65 73 20 61 6e 20 65 72 72 6f 72 20 6d 65 73 73  es an error mess
60d0: 61 67 65 20 66 6f 72 20 69 74 2e 0a 2a 2a 2a 20  age for it..*** 
60e0: 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
60f0: 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31  ATIBILITY ***..1
6100: 36 31 2e 20 32 2f 32 35 2f 39 33 20 46 69 78 65  61. 2/25/93 Fixe
6110: 64 20 74 77 6f 20 6d 65 6d 6f 72 79 2d 6d 61 6e  d two memory-man
6120: 61 67 65 6d 65 6e 74 20 70 72 6f 62 6c 65 6d 73  agement problems
6130: 20 68 61 76 69 6e 67 20 74 6f 20 64 6f 20 77 69   having to do wi
6140: 74 68 0a 6d 61 6e 61 67 69 6e 67 20 74 68 65 20  th.managing the 
6150: 6f 6c 64 20 72 65 73 75 6c 74 20 64 75 72 69 6e  old result durin
6160: 67 20 76 61 72 69 61 62 6c 65 20 74 72 61 63 65  g variable trace
6170: 20 63 61 6c 6c 62 61 63 6b 73 2e 0a 0a 31 36 32   callbacks...162
6180: 2e 20 33 2f 31 2f 39 33 20 41 64 64 65 64 20 64  . 3/1/93 Added d
6190: 79 6e 61 6d 69 63 20 73 74 72 69 6e 67 20 6c 69  ynamic string li
61a0: 62 72 61 72 79 3a 20 20 54 63 6c 5f 44 53 74 72  brary:  Tcl_DStr
61b0: 69 6e 67 49 6e 69 74 2c 20 54 63 6c 5f 44 53 74  ingInit, Tcl_DSt
61c0: 72 69 6e 67 41 70 70 65 6e 64 2c 0a 54 63 6c 5f  ringAppend,.Tcl_
61d0: 44 53 74 72 69 6e 67 46 72 65 65 2c 20 54 63 6c  DStringFree, Tcl
61e0: 5f 44 53 74 72 69 6e 67 52 65 73 75 6c 74 2c 20  _DStringResult, 
61f0: 65 74 63 2e 0a 0a 31 36 33 2e 20 33 2f 31 2f 39  etc...163. 3/1/9
6200: 33 20 4d 6f 64 69 66 69 65 64 20 67 6c 6f 62 20  3 Modified glob 
6210: 63 6f 6d 6d 61 6e 64 20 74 6f 20 6f 6e 6c 79 20  command to only 
6220: 72 65 74 75 72 6e 20 74 68 65 20 6e 61 6d 65 73  return the names
6230: 20 6f 66 20 66 69 6c 65 73 20 74 68 61 74 0a 65   of files that.e
6240: 78 69 73 74 2c 20 61 6e 64 20 74 6f 20 6f 6e 6c  xist, and to onl
6250: 79 20 72 65 74 75 72 6e 20 6e 61 6d 65 73 20 65  y return names e
6260: 6e 64 69 6e 67 20 69 6e 20 22 2f 22 20 69 66 20  nding in "/" if 
6270: 74 68 65 20 66 69 6c 65 20 69 73 20 61 20 64 69  the file is a di
6280: 72 65 63 74 6f 72 79 2e 0a 2a 2a 2a 20 50 4f 54  rectory..*** POT
6290: 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
62a0: 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36 34 2e  BILITY ***..164.
62b0: 20 33 2f 31 39 2f 39 33 20 4d 6f 64 69 66 69 65   3/19/93 Modifie
62c0: 64 20 6e 6f 74 20 74 6f 20 75 73 65 20 73 79 73  d not to use sys
62d0: 74 65 6d 20 63 61 6c 6c 73 20 6c 69 6b 65 20 22  tem calls like "
62e0: 72 65 61 64 22 20 64 69 72 65 63 74 6c 79 2c 0a  read" directly,.
62f0: 62 75 74 20 69 6e 73 74 65 61 64 20 74 6f 20 75  but instead to u
6300: 73 65 20 73 70 65 63 69 61 6c 20 54 63 6c 20 70  se special Tcl p
6310: 72 6f 63 65 64 75 72 65 73 20 74 68 61 74 20 72  rocedures that r
6320: 65 74 72 79 20 61 75 74 6f 6d 61 74 69 63 61 6c  etry automatical
6330: 6c 79 0a 69 66 20 69 6e 74 65 72 72 75 70 74 65  ly.if interrupte
6340: 64 20 62 79 20 73 69 67 6e 61 6c 73 2e 0a 0a 31  d by signals...1
6350: 36 35 2e 20 34 2f 33 2f 39 33 20 45 6c 69 6d 69  65. 4/3/93 Elimi
6360: 6e 61 74 65 64 20 22 6e 6f 53 65 70 22 20 61 72  nated "noSep" ar
6370: 67 75 6d 65 6e 74 20 74 6f 20 54 63 6c 5f 41 70  gument to Tcl_Ap
6380: 70 65 6e 64 45 6c 65 6d 65 6e 74 2c 20 70 6c 75  pendElement, plu
6390: 73 0a 54 43 4c 5f 4e 4f 5f 53 50 41 43 45 20 66  s.TCL_NO_SPACE f
63a0: 6c 61 67 20 66 6f 72 20 54 63 6c 5f 53 65 74 56  lag for Tcl_SetV
63b0: 61 72 20 61 6e 64 20 54 63 6c 5f 53 65 74 56 61  ar and Tcl_SetVa
63c0: 72 32 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  r2..*** POTENTIA
63d0: 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
63e0: 59 20 2a 2a 2a 0a 0a 31 36 36 2e 20 34 2f 33 2f  Y ***..166. 4/3/
63f0: 39 33 20 45 6c 69 6d 69 6e 61 74 65 64 20 22 66  93 Eliminated "f
6400: 6c 61 67 73 22 20 61 6e 64 20 22 74 65 72 6d 50  lags" and "termP
6410: 74 72 22 20 61 72 67 75 6d 65 6e 74 73 20 74 6f  tr" arguments to
6420: 20 54 63 6c 5f 45 76 61 6c 2e 0a 2a 2a 2a 20 50   Tcl_Eval..*** P
6430: 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
6440: 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 36  TIBILITY ***..16
6450: 37 2e 20 34 2f 33 2f 39 33 20 43 68 61 6e 67 65  7. 4/3/93 Change
6460: 73 20 74 6f 20 65 78 70 72 65 73 73 69 6f 6e 73  s to expressions
6470: 3a 0a 20 20 20 20 2d 20 54 68 65 20 22 65 78 70  :.    - The "exp
6480: 72 22 20 63 6f 6d 6d 61 6e 64 20 6e 6f 77 20 61  r" command now a
6490: 63 63 65 70 74 73 20 6d 75 6c 74 69 70 6c 65 20  ccepts multiple 
64a0: 61 72 67 75 6d 65 6e 74 73 2c 20 77 68 69 63 68  arguments, which
64b0: 20 61 72 65 0a 20 20 20 20 20 20 63 6f 6e 63 61   are.      conca
64c0: 74 65 6e 61 74 65 64 20 74 6f 67 65 74 68 65 72  tenated together
64d0: 20 77 69 74 68 20 73 70 61 63 65 20 73 65 70 61   with space sepa
64e0: 72 61 74 6f 72 73 2e 0a 20 20 20 20 2d 20 49 6e  rators..    - In
64f0: 74 65 67 65 72 73 20 61 72 65 6e 27 74 20 61 75  tegers aren't au
6500: 74 6f 6d 61 74 69 63 61 6c 6c 79 20 70 72 6f 6d  tomatically prom
6510: 6f 74 65 64 20 74 6f 20 66 6c 6f 61 74 69 6e 67  oted to floating
6520: 2d 70 6f 69 6e 74 20 69 66 20 74 68 65 79 0a 20  -point if they. 
6530: 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 20 74 68       overflow th
6540: 65 20 77 6f 72 64 20 73 69 7a 65 3a 20 20 65 72  e word size:  er
6550: 72 6f 72 73 20 61 72 65 20 67 65 6e 65 72 61 74  rors are generat
6560: 65 64 20 69 6e 73 74 65 61 64 2e 0a 20 20 20 20  ed instead..    
6570: 2d 20 54 63 6c 20 63 61 6e 20 6e 6f 77 20 68 61  - Tcl can now ha
6580: 6e 64 6c 65 20 22 4e 61 4e 22 20 61 6e 64 20 6f  ndle "NaN" and o
6590: 74 68 65 72 20 73 70 65 63 69 61 6c 20 76 61 6c  ther special val
65a0: 75 65 73 20 69 66 20 74 68 65 20 75 6e 64 65 72  ues if the under
65b0: 6c 79 69 6e 67 0a 20 20 20 20 20 20 6c 69 62 72  lying.      libr
65c0: 61 72 79 20 70 72 6f 63 65 64 75 72 65 73 20 68  ary procedures h
65d0: 61 6e 64 6c 65 20 74 68 65 6d 2e 0a 20 20 20 20  andle them..    
65e0: 2d 20 57 68 65 6e 20 70 72 69 6e 74 69 6e 67 20  - When printing 
65f0: 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6e  floating-point n
6600: 75 6d 62 65 72 73 2c 20 54 63 6c 20 65 6e 73 75  umbers, Tcl ensu
6610: 72 65 73 20 74 68 61 74 20 74 68 65 72 65 20 69  res that there i
6620: 73 20 61 20 22 2e 22 0a 20 20 20 20 20 20 6f 72  s a ".".      or
6630: 20 22 65 22 20 69 6e 20 74 68 65 20 6e 75 6d 62   "e" in the numb
6640: 65 72 2c 20 73 6f 20 69 74 20 63 61 6e 27 74 20  er, so it can't 
6650: 62 65 20 74 72 65 61 74 65 64 20 61 73 20 61 6e  be treated as an
6660: 20 69 6e 74 65 67 65 72 20 61 63 63 69 64 65 6e   integer acciden
6670: 74 61 6c 6c 79 2e 0a 20 20 20 20 20 20 54 68 65  tally..      The
6680: 20 70 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 50   procedure Tcl_P
6690: 72 69 6e 74 44 6f 75 62 6c 65 20 69 73 20 61 76  rintDouble is av
66a0: 61 69 6c 61 62 6c 65 20 74 6f 20 70 72 6f 76 69  ailable to provi
66b0: 64 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e  de this function
66c0: 0a 20 20 20 20 20 20 69 6e 20 6f 74 68 65 72 20  .      in other 
66d0: 63 6f 6e 74 65 78 74 73 2e 20 20 41 6c 73 6f 2c  contexts.  Also,
66e0: 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 22 74   the variable "t
66f0: 63 6c 5f 70 72 65 63 69 73 69 6f 6e 22 20 63 61  cl_precision" ca
6700: 6e 20 62 65 20 75 73 65 64 0a 20 20 20 20 20 20  n be used.      
6710: 74 6f 20 73 65 74 20 74 68 65 20 70 72 65 63 69  to set the preci
6720: 73 69 6f 6e 20 66 6f 72 20 70 72 69 6e 74 69 6e  sion for printin
6730: 67 20 28 6d 75 73 74 20 62 65 20 61 20 64 65 63  g (must be a dec
6740: 69 6d 61 6c 20 6e 75 6d 62 65 72 20 67 69 76 69  imal number givi
6750: 6e 67 0a 20 20 20 20 20 20 64 69 67 69 74 73 20  ng.      digits 
6760: 6f 66 20 70 72 65 63 69 73 69 6f 6e 29 2e 0a 20  of precision).. 
6770: 20 20 20 2d 20 45 78 70 72 65 73 73 69 6f 6e 73     - Expressions
6780: 20 6e 6f 77 20 73 75 70 70 6f 72 74 20 74 72 61   now support tra
6790: 6e 73 63 65 6e 64 65 6e 74 61 6c 20 61 6e 64 20  nscendental and 
67a0: 6f 74 68 65 72 20 66 75 6e 63 74 69 6f 6e 73 2c  other functions,
67b0: 20 65 2e 67 2e 20 73 69 6e 2c 0a 20 20 20 20 20   e.g. sin,.     
67c0: 20 61 63 6f 73 2c 20 68 79 70 6f 74 2c 20 63 65   acos, hypot, ce
67d0: 69 6c 2c 20 61 6e 64 20 72 6f 75 6e 64 2e 20 20  il, and round.  
67e0: 43 61 6e 20 61 64 64 20 6e 65 77 20 6d 61 74 68  Can add new math
67f0: 20 66 75 6e 63 74 69 6f 6e 73 20 77 69 74 68 0a   functions with.
6800: 20 20 20 20 20 20 54 63 6c 5f 43 72 65 61 74 65        Tcl_Create
6810: 4d 61 74 68 46 75 6e 63 28 29 2e 0a 20 20 20 20  MathFunc()..    
6820: 2d 20 42 6f 6f 6c 65 61 6e 20 65 78 70 72 65 73  - Boolean expres
6830: 73 69 6f 6e 73 20 63 61 6e 20 6e 6f 77 20 68 61  sions can now ha
6840: 76 65 20 61 6e 79 20 6f 66 20 74 68 65 20 73 74  ve any of the st
6850: 72 69 6e 67 20 76 61 6c 75 65 73 20 61 63 63 65  ring values acce
6860: 70 74 65 64 0a 20 20 20 20 20 20 62 79 20 54 63  pted.      by Tc
6870: 6c 5f 47 65 74 42 6f 6f 6c 65 61 6e 2c 20 73 75  l_GetBoolean, su
6880: 63 68 20 61 73 20 22 79 65 73 22 20 6f 72 20 22  ch as "yes" or "
6890: 6e 6f 22 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  no"..*** POTENTI
68a0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
68b0: 54 59 20 2a 2a 2a 0a 0a 31 36 38 2e 20 34 2f 35  TY ***..168. 4/5
68c0: 2f 39 33 20 43 68 61 6e 67 65 64 20 54 63 6c 5f  /93 Changed Tcl_
68d0: 55 6e 73 65 74 56 61 72 20 61 6e 64 20 54 63 6c  UnsetVar and Tcl
68e0: 5f 55 6e 73 65 74 56 61 72 32 20 74 6f 20 72 65  _UnsetVar2 to re
68f0: 74 75 72 6e 20 54 43 4c 5f 4f 4b 0a 6f 72 20 54  turn TCL_OK.or T
6900: 43 4c 5f 45 52 52 4f 52 20 69 6e 73 74 65 61 64  CL_ERROR instead
6910: 20 6f 66 20 30 20 6f 72 20 2d 31 2e 0a 2a 2a 2a   of 0 or -1..***
6920: 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
6930: 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a  PATIBILITY ***..
6940: 31 36 39 2e 20 34 2f 35 2f 39 33 20 45 6c 69 6d  169. 4/5/93 Elim
6950: 69 6e 61 74 65 64 20 54 63 6c 5f 43 6d 64 42 75  inated Tcl_CmdBu
6960: 66 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20  f structure and 
6970: 61 73 73 6f 63 69 61 74 65 64 20 70 72 6f 63 65  associated proce
6980: 64 75 72 65 73 3b 0a 63 61 6e 20 75 73 65 20 54  dures;.can use T
6990: 63 6c 5f 44 53 74 72 69 6e 67 73 20 69 6e 73 74  cl_DStrings inst
69a0: 65 61 64 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  ead..*** POTENTI
69b0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
69c0: 54 59 20 2a 2a 2a 0a 0a 31 37 30 2e 20 34 2f 38  TY ***..170. 4/8
69d0: 2f 39 33 20 43 68 61 6e 67 65 64 20 69 6e 74 65  /93 Changed inte
69e0: 72 66 61 63 65 20 74 6f 20 54 63 6c 5f 54 69 6c  rface to Tcl_Til
69f0: 64 65 53 75 62 73 74 20 74 6f 20 75 73 65 20 61  deSubst to use a
6a00: 20 64 79 6e 61 6d 69 63 0a 73 74 72 69 6e 67 20   dynamic.string 
6a10: 66 6f 72 20 62 75 66 66 65 72 20 73 70 61 63 65  for buffer space
6a20: 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 74 68  .  This makes th
6a30: 65 20 70 72 6f 63 65 64 75 72 65 20 72 65 2d 65  e procedure re-e
6a40: 6e 74 72 61 6e 74 20 61 6e 64 0a 74 68 72 65 61  ntrant and.threa
6a50: 64 2d 73 61 66 65 2c 20 77 68 65 72 65 61 73 20  d-safe, whereas 
6a60: 69 74 20 77 61 73 6e 27 74 20 62 65 66 6f 72 65  it wasn't before
6a70: 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ..*** POTENTIAL 
6a80: 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
6a90: 2a 2a 2a 0a 0a 31 37 31 2e 20 34 2f 31 34 2f 39  ***..171. 4/14/9
6aa0: 33 20 45 6c 69 6d 69 6e 61 74 65 64 20 74 63 6c  3 Eliminated tcl
6ab0: 48 61 73 68 2e 68 2c 20 61 6e 64 20 6d 6f 76 65  Hash.h, and move
6ac0: 64 20 65 76 65 72 79 74 68 69 6e 67 20 66 72 6f  d everything fro
6ad0: 6d 20 69 74 20 74 6f 0a 74 63 6c 2e 68 0a 2a 2a  m it to.tcl.h.**
6ae0: 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
6af0: 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a  MPATIBILITY ***.
6b00: 0a 31 37 32 2e 20 34 2f 31 35 2f 39 33 20 45 6c  .172. 4/15/93 El
6b10: 69 6d 69 6e 61 74 65 64 20 54 63 6c 5f 49 6e 69  iminated Tcl_Ini
6b20: 74 48 69 73 74 6f 72 79 2c 20 6d 61 64 65 20 22  tHistory, made "
6b30: 68 69 73 74 6f 72 79 22 20 63 6f 6d 6d 61 6e 64  history" command
6b40: 20 61 6c 77 61 79 73 0a 62 65 20 70 61 72 74 20   always.be part 
6b50: 6f 66 20 69 6e 74 65 72 70 72 65 74 65 72 2e 0a  of interpreter..
6b60: 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
6b70: 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
6b80: 2a 0a 0a 31 37 33 2e 20 34 2f 31 36 2f 39 33 20  *..173. 4/16/93 
6b90: 4d 6f 64 69 66 69 65 64 20 22 66 69 6c 65 22 20  Modified "file" 
6ba0: 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20  command so that 
6bb0: 22 72 65 61 64 61 62 6c 65 22 20 6f 70 74 69 6f  "readable" optio
6bc0: 6e 20 61 6c 77 61 79 73 0a 65 78 69 73 74 73 2c  n always.exists,
6bd0: 20 65 76 65 6e 20 6f 6e 20 6d 61 63 68 69 6e 65   even on machine
6be0: 73 20 74 68 61 74 20 64 6f 6e 27 74 20 73 75 70  s that don't sup
6bf0: 70 6f 72 74 20 73 79 6d 62 6f 6c 69 63 20 6c 69  port symbolic li
6c00: 6e 6b 73 20 28 61 6c 77 61 79 73 20 72 65 74 75  nks (always retu
6c10: 72 6e 73 0a 73 61 6d 65 20 65 72 72 6f 72 20 61  rns.same error a
6c20: 73 20 69 66 20 74 68 65 20 66 69 6c 65 20 77 61  s if the file wa
6c30: 73 6e 27 74 20 61 20 73 79 6d 62 6f 6c 69 63 20  sn't a symbolic 
6c40: 6c 69 6e 6b 29 2e 0a 0a 31 37 34 2e 20 34 2f 32  link)...174. 4/2
6c50: 36 2f 39 33 20 46 69 78 65 64 20 62 75 67 73 20  6/93 Fixed bugs 
6c60: 69 6e 20 22 72 65 67 73 75 62 22 20 77 68 65 72  in "regsub" wher
6c70: 65 20 5e 20 70 61 74 74 65 72 6e 73 20 64 69 64  e ^ patterns did
6c80: 6e 27 74 20 67 65 74 20 68 61 6e 64 6c 65 64 0a  n't get handled.
6c90: 72 69 67 68 74 20 28 70 72 65 74 65 6e 64 65 64  right (pretended
6ca0: 20 6e 6f 74 20 74 6f 20 6d 61 74 63 68 20 77 68   not to match wh
6cb0: 65 6e 20 69 74 20 72 65 61 6c 6c 79 20 64 69 64  en it really did
6cc0: 2c 20 61 6e 64 20 6c 6f 6f 70 65 64 20 69 6e 66  , and looped inf
6cd0: 69 6e 69 74 65 6c 79 0a 69 66 20 2d 61 6c 6c 20  initely.if -all 
6ce0: 77 61 73 20 73 70 65 63 69 66 69 65 64 29 2e 0a  was specified)..
6cf0: 0a 31 37 35 2e 20 34 2f 32 39 2f 39 33 20 56 61  .175. 4/29/93 Va
6d00: 72 69 6f 75 73 20 69 6d 70 72 6f 76 65 6d 65 6e  rious improvemen
6d10: 74 73 20 69 6e 20 74 68 65 20 68 61 6e 64 6c 69  ts in the handli
6d20: 6e 67 20 6f 66 20 76 61 72 69 61 62 6c 65 73 3a  ng of variables:
6d30: 0a 20 20 20 20 2d 20 43 61 6e 20 63 72 65 61 74  .    - Can creat
6d40: 65 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20  e variables and 
6d50: 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 64  array elements d
6d60: 75 72 69 6e 67 20 61 20 72 65 61 64 20 74 72 61  uring a read tra
6d70: 63 65 2e 0a 20 20 20 20 2d 20 43 61 6e 20 64 65  ce..    - Can de
6d80: 6c 65 74 65 20 76 61 72 69 61 62 6c 65 73 20 64  lete variables d
6d90: 75 72 69 6e 67 20 74 72 61 63 65 73 20 28 6e 6f  uring traces (no
6da0: 74 65 3a 20 75 6e 73 65 74 20 74 72 61 63 65 73  te: unset traces
6db0: 20 77 69 6c 6c 20 62 65 0a 20 20 20 20 20 20 69   will be.      i
6dc0: 6e 76 6f 6b 65 64 20 77 68 65 6e 20 74 68 69 73  nvoked when this
6dd0: 20 68 61 70 70 65 6e 73 29 2e 0a 20 20 20 20 2d   happens)..    -
6de0: 20 43 61 6e 20 75 70 76 61 72 20 74 6f 20 61 72   Can upvar to ar
6df0: 72 61 79 20 65 6c 65 6d 65 6e 74 73 2e 0a 20 20  ray elements..  
6e00: 20 20 2d 20 43 61 6e 20 72 65 74 61 72 67 65 74    - Can retarget
6e10: 20 61 6e 20 75 70 76 61 72 20 74 6f 20 61 6e 6f   an upvar to ano
6e20: 74 68 65 72 20 76 61 72 69 61 62 6c 65 20 62 79  ther variable by
6e30: 20 72 65 2d 69 73 73 75 69 6e 67 20 74 68 65 0a   re-issuing the.
6e40: 20 20 20 20 20 20 75 70 76 61 72 20 63 6f 6d 6d        upvar comm
6e50: 61 6e 64 20 77 69 74 68 20 61 20 64 69 66 66 65  and with a diffe
6e60: 72 65 6e 74 20 22 6f 74 68 65 72 22 20 76 61 72  rent "other" var
6e70: 69 61 62 6c 65 2e 0a 0a 31 37 36 2e 20 35 2f 33  iable...176. 5/3
6e80: 2f 39 33 20 41 64 64 65 64 20 54 63 6c 5f 47 65  /93 Added Tcl_Ge
6e90: 74 43 6f 6d 6d 61 6e 64 49 6e 66 6f 2c 20 77 68  tCommandInfo, wh
6ea0: 69 63 68 20 72 65 74 75 72 6e 73 20 69 6e 66 6f  ich returns info
6eb0: 20 61 62 6f 75 74 20 61 20 54 63 6c 0a 63 6f 6d   about a Tcl.com
6ec0: 6d 61 6e 64 20 73 75 63 68 20 61 73 20 77 68 65  mand such as whe
6ed0: 74 68 65 72 20 69 74 20 65 78 69 73 74 73 20 61  ther it exists a
6ee0: 6e 64 20 69 74 73 20 43 6c 69 65 6e 74 44 61 74  nd its ClientDat
6ef0: 61 2e 20 20 41 6c 73 6f 20 61 64 64 65 64 0a 54  a.  Also added.T
6f00: 63 6c 5f 53 65 74 43 6f 6d 6d 61 6e 64 49 6e 66  cl_SetCommandInf
6f10: 6f 2c 20 77 68 69 63 68 20 61 6c 6c 6f 77 73 20  o, which allows 
6f20: 61 6e 79 20 6f 66 20 74 68 69 73 20 69 6e 66 6f  any of this info
6f30: 72 6d 61 74 69 6f 6e 20 74 6f 20 62 65 20 6d 6f  rmation to be mo
6f40: 64 69 66 69 65 64 0a 61 6e 64 20 61 6c 73 6f 20  dified.and also 
6f50: 61 6c 6c 6f 77 73 20 61 20 63 6f 6d 6d 61 6e 64  allows a command
6f60: 27 73 20 64 65 6c 65 74 65 20 70 72 6f 63 65 64  's delete proced
6f70: 75 72 65 20 74 6f 20 68 61 76 65 20 61 20 64 69  ure to have a di
6f80: 66 66 65 72 65 6e 74 0a 43 6c 69 65 6e 74 44 61  fferent.ClientDa
6f90: 74 61 20 76 61 6c 75 65 20 74 68 61 6e 20 69 74  ta value than it
6fa0: 73 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64  s command proced
6fb0: 75 72 65 2e 0a 0a 31 37 37 2e 20 35 2f 35 2f 39  ure...177. 5/5/9
6fc0: 33 20 41 64 64 65 64 20 54 63 6c 5f 52 65 67 45  3 Added Tcl_RegE
6fd0: 78 70 4d 61 74 63 68 20 70 72 6f 63 65 64 75 72  xpMatch procedur
6fe0: 65 2e 0a 0a 31 37 38 2e 20 35 2f 36 2f 39 33 20  e...178. 5/6/93 
6ff0: 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 73 63  Fixed bug in "sc
7000: 61 6e 22 20 77 68 65 72 65 20 69 74 20 64 69 64  an" where it did
7010: 6e 27 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e  n't properly han
7020: 64 6c 65 0a 25 25 20 63 6f 6e 76 65 72 73 69 6f  dle.%% conversio
7030: 6e 20 73 70 65 63 69 66 69 65 72 73 2e 20 20 41  n specifiers.  A
7040: 6c 73 6f 20 63 68 61 6e 67 65 64 20 22 73 63 61  lso changed "sca
7050: 6e 22 20 74 6f 20 75 73 65 20 54 63 6c 5f 50 72  n" to use Tcl_Pr
7060: 69 6e 74 44 6f 75 62 6c 65 0a 66 6f 72 20 70 72  intDouble.for pr
7070: 69 6e 74 69 6e 67 20 72 65 61 6c 20 76 61 6c 75  inting real valu
7080: 65 73 2e 0a 0a 31 37 39 2e 20 35 2f 37 2f 39 33  es...179. 5/7/93
7090: 20 41 64 64 65 64 20 22 2d 65 78 61 63 74 22 2c   Added "-exact",
70a0: 20 22 2d 67 6c 6f 62 22 2c 20 61 6e 64 20 22 2d   "-glob", and "-
70b0: 72 65 67 65 78 70 22 20 6f 70 74 69 6f 6e 73 20  regexp" options 
70c0: 74 6f 20 22 6c 73 65 61 72 63 68 22 0a 63 6f 6d  to "lsearch".com
70d0: 6d 61 6e 64 20 74 6f 20 61 6c 6c 6f 77 20 64 69  mand to allow di
70e0: 66 66 65 72 65 6e 74 20 6b 69 6e 64 73 20 6f 66  fferent kinds of
70f0: 20 70 61 74 74 65 72 6e 20 6d 61 74 63 68 69 6e   pattern matchin
7100: 67 2e 0a 0a 31 38 30 2e 20 35 2f 37 2f 39 33 20  g...180. 5/7/93 
7110: 41 64 64 65 64 20 6d 61 6e 79 20 6e 65 77 20 73  Added many new s
7120: 77 69 74 63 68 65 73 20 74 6f 20 22 6c 73 6f 72  witches to "lsor
7130: 74 22 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 74 68  t" to control th
7140: 65 20 73 6f 72 74 69 6e 67 0a 70 72 6f 63 65 73  e sorting.proces
7150: 73 3a 20 22 2d 61 73 63 69 69 22 2c 20 22 2d 69  s: "-ascii", "-i
7160: 6e 74 65 67 65 72 22 2c 20 22 2d 72 65 61 6c 22  nteger", "-real"
7170: 2c 20 22 2d 63 6f 6d 6d 61 6e 64 22 2c 20 22 2d  , "-command", "-
7180: 69 6e 63 72 65 61 73 69 6e 67 22 2c 0a 61 6e 64  increasing",.and
7190: 20 22 2d 64 65 63 72 65 61 73 69 6e 67 22 2e 0a   "-decreasing"..
71a0: 0a 31 38 31 2e 20 35 2f 31 30 2f 39 33 20 43 68  .181. 5/10/93 Ch
71b0: 61 6e 67 65 73 20 74 6f 20 66 69 6c 65 20 49 2f  anges to file I/
71c0: 4f 3a 0a 20 20 20 20 2d 20 4d 6f 64 69 66 69 65  O:.    - Modifie
71d0: 64 20 22 6f 70 65 6e 22 20 63 6f 6d 6d 61 6e 64  d "open" command
71e0: 20 74 6f 20 73 75 70 70 6f 72 74 20 61 20 6c 69   to support a li
71f0: 73 74 20 6f 66 20 50 4f 53 49 58 20 61 63 63 65  st of POSIX acce
7200: 73 73 20 66 6c 61 67 73 0a 20 20 20 20 20 20 6c  ss flags.      l
7210: 69 6b 65 20 7b 57 52 4f 4e 4c 59 20 43 52 45 41  ike {WRONLY CREA
7220: 54 20 54 52 55 4e 43 7d 20 69 6e 20 61 64 64 69  T TRUNC} in addi
7230: 74 69 6f 6e 20 74 6f 20 63 75 72 72 65 6e 74 20  tion to current 
7240: 66 6f 70 65 6e 2d 73 74 79 6c 65 0a 20 20 20 20  fopen-style.    
7250: 20 20 61 63 63 65 73 73 20 6d 6f 64 65 73 2e 20    access modes. 
7260: 20 41 6c 73 6f 20 61 64 64 65 64 20 22 70 65 72   Also added "per
7270: 6d 69 73 73 69 6f 6e 73 22 20 61 72 67 75 6d 65  missions" argume
7280: 6e 74 20 74 6f 20 73 65 74 20 70 65 72 6d 69 73  nt to set permis
7290: 73 69 6f 6e 73 0a 20 20 20 20 20 20 6f 66 20 6e  sions.      of n
72a0: 65 77 6c 79 2d 63 72 65 61 74 65 64 20 66 69 6c  ewly-created fil
72b0: 65 73 2e 0a 20 20 20 20 2d 20 46 69 78 65 64 20  es..    - Fixed 
72c0: 53 63 6f 74 74 20 42 6f 6c 74 65 27 73 20 62 75  Scott Bolte's bu
72d0: 67 20 28 63 61 6e 20 63 6c 6f 73 65 20 73 74 64  g (can close std
72e0: 69 6e 20 65 74 63 2e 20 69 6e 20 61 70 70 6c 69  in etc. in appli
72f0: 63 61 74 69 6f 6e 20 61 6e 64 0a 20 20 20 20 20  cation and.     
7300: 20 74 68 65 6e 20 72 65 2d 6f 70 65 6e 20 74 68   then re-open th
7310: 65 6d 20 77 69 74 68 20 54 63 6c 20 63 6f 6d 6d  em with Tcl comm
7320: 61 6e 64 73 29 2e 0a 20 20 20 20 2d 20 45 78 70  ands)..    - Exp
7330: 6f 72 74 65 64 20 61 63 63 65 73 73 20 74 6f 20  orted access to 
7340: 54 63 6c 27 73 20 66 69 6c 65 20 74 61 62 6c 65  Tcl's file table
7350: 20 77 69 74 68 20 6e 65 77 20 70 72 6f 63 65 64   with new proced
7360: 75 72 65 73 20 54 63 6c 5f 45 6e 74 65 72 46 69  ures Tcl_EnterFi
7370: 6c 65 0a 20 20 20 20 20 20 61 6e 64 20 54 63 6c  le.      and Tcl
7380: 5f 47 65 74 4f 70 65 6e 46 69 6c 65 2e 0a 0a 31  _GetOpenFile...1
7390: 38 32 2e 20 35 2f 31 35 2f 39 33 20 41 64 64 65  82. 5/15/93 Adde
73a0: 64 20 6e 65 77 20 22 70 69 64 22 20 63 6f 6d 6d  d new "pid" comm
73b0: 61 6e 64 2c 20 77 68 69 63 68 20 63 61 6e 20 62  and, which can b
73c0: 65 20 75 73 65 64 20 74 6f 20 72 65 74 72 69 65  e used to retrie
73d0: 76 65 0a 65 69 74 68 65 72 20 74 68 65 20 63 75  ve.either the cu
73e0: 72 72 65 6e 74 20 70 72 6f 63 65 73 73 20 69 64  rrent process id
73f0: 20 6f 72 20 61 20 6c 69 73 74 20 6f 66 20 74 68   or a list of th
7400: 65 20 70 72 6f 63 65 73 73 20 69 64 73 20 69 6e  e process ids in
7410: 20 61 0a 70 69 70 65 6c 69 6e 65 20 6f 70 65 6e   a.pipeline open
7420: 65 64 20 77 69 74 68 20 22 6f 70 65 6e 20 7c 2e  ed with "open |.
7430: 2e 2e 22 0a 0a 31 38 33 2e 20 36 2f 33 2f 39 33  .."..183. 6/3/93
7440: 20 43 68 61 6e 67 65 64 20 74 6f 20 75 73 65 20   Changed to use 
7450: 47 4e 55 20 61 75 74 6f 63 6f 6e 66 69 67 20 66  GNU autoconfig f
7460: 6f 72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  or configuration
7470: 20 69 6e 73 74 65 61 64 20 6f 66 0a 74 68 65 20   instead of.the 
7480: 68 6f 6d 65 2d 62 72 65 77 20 22 63 6f 6e 66 69  home-brew "confi
7490: 67 22 20 73 63 72 69 70 74 2e 20 20 41 6c 73 6f  g" script.  Also
74a0: 20 6d 61 64 65 20 6d 61 6e 79 20 6f 74 68 65 72   made many other
74b0: 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2d 72   configuration-r
74c0: 65 6c 61 74 65 64 0a 63 68 61 6e 67 65 73 2c 20  elated.changes, 
74d0: 73 75 63 68 20 61 73 20 75 73 69 6e 67 20 3c 75  such as using <u
74e0: 6e 69 73 74 64 2e 68 3e 20 69 6e 73 74 65 61 64  nistd.h> instead
74f0: 20 6f 66 20 65 78 70 6c 69 63 69 74 6c 79 20 64   of explicitly d
7500: 65 63 6c 61 72 69 6e 67 20 73 79 73 74 65 6d 0a  eclaring system.
7510: 63 61 6c 6c 73 20 69 6e 20 74 63 6c 55 6e 69 78  calls in tclUnix
7520: 2e 68 2e 0a 0a 31 38 34 2e 20 36 2f 34 2f 39 33  .h...184. 6/4/93
7530: 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
7540: 20 63 6f 72 65 2d 64 75 6d 70 73 20 63 6f 75 6c   core-dumps coul
7550: 64 20 6f 63 63 75 72 20 69 66 20 61 20 70 72 6f  d occur if a pro
7560: 63 65 64 75 72 65 0a 72 65 64 65 66 69 6e 65 64  cedure.redefined
7570: 20 69 74 73 65 6c 66 20 28 74 68 65 20 6d 65 6d   itself (the mem
7580: 6f 72 79 20 66 6f 72 20 74 68 65 20 70 72 6f 63  ory for the proc
7590: 65 64 75 72 65 27 73 20 62 6f 64 79 20 63 6f 75  edure's body cou
75a0: 6c 64 20 67 65 74 0a 72 65 61 6c 6c 6f 63 61 74  ld get.reallocat
75b0: 65 64 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65  ed in the middle
75c0: 20 6f 66 20 65 76 61 6c 75 61 74 69 6e 67 20 74   of evaluating t
75d0: 68 65 20 62 6f 64 79 29 3b 20 20 69 6d 70 6c 65  he body);  imple
75e0: 6d 65 6e 74 65 64 0a 73 69 6d 70 6c 65 20 72 65  mented.simple re
75f0: 66 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 6d 65  ference count me
7600: 63 68 61 6e 69 73 6d 2e 0a 0a 31 38 35 2e 20 36  chanism...185. 6
7610: 2f 35 2f 39 33 20 43 68 61 6e 67 65 64 20 74 63  /5/93 Changed tc
7620: 6c 49 6e 64 65 78 20 66 69 6c 65 20 66 6f 72 6d  lIndex file form
7630: 61 74 20 69 6e 20 74 77 6f 20 77 61 79 73 3a 20  at in two ways: 
7640: 20 28 61 29 20 69 74 27 73 20 6e 6f 77 0a 65 76   (a) it's now.ev
7650: 61 6c 2d 65 64 20 69 6e 73 74 65 61 64 20 6f 66  al-ed instead of
7660: 20 70 61 72 73 65 64 2c 20 77 68 69 63 68 20 6d   parsed, which m
7670: 61 6b 65 73 20 69 74 20 33 2d 34 78 20 66 61 73  akes it 3-4x fas
7680: 74 65 72 3b 20 28 62 29 20 74 68 65 20 65 6e 74  ter; (b) the ent
7690: 72 69 65 73 0a 69 6e 20 61 75 74 6f 5f 69 6e 64  ries.in auto_ind
76a0: 65 78 20 61 72 65 20 6e 6f 77 20 63 6f 6d 6d 61  ex are now comma
76b0: 6e 64 73 20 74 6f 20 65 76 61 6c 75 61 74 65 2c  nds to evaluate,
76c0: 20 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 63 6f   which allows co
76d0: 6d 6d 61 6e 64 73 20 74 6f 0a 62 65 20 6c 6f 61  mmands to.be loa
76e0: 64 65 64 20 69 6e 20 64 69 66 66 65 72 65 6e 74  ded in different
76f0: 20 77 61 79 73 20 73 75 63 68 20 61 73 20 64 79   ways such as dy
7700: 6e 61 6d 69 63 2d 6c 6f 61 64 69 6e 67 20 6f 66  namic-loading of
7710: 20 43 20 63 6f 64 65 2e 20 20 54 68 65 0a 6f 6c   C code.  The.ol
7720: 64 20 74 63 6c 49 6e 64 65 78 20 66 69 6c 65 20  d tclIndex file 
7730: 66 6f 72 6d 61 74 20 69 73 20 73 74 69 6c 6c 20  format is still 
7740: 73 75 70 70 6f 72 74 65 64 2e 0a 0a 31 38 36 2e  supported...186.
7750: 20 36 2f 37 2f 39 33 20 45 6c 69 6d 69 6e 61 74   6/7/93 Eliminat
7760: 65 64 20 74 63 6c 54 65 73 74 20 70 72 6f 67 72  ed tclTest progr
7770: 61 6d 2c 20 61 64 64 65 64 20 6e 65 77 20 22 74  am, added new "t
7780: 63 6c 73 68 22 20 70 72 6f 67 72 61 6d 0a 74 68  clsh" program.th
7790: 61 74 20 69 73 20 6d 6f 72 65 20 6c 69 6b 65 20  at is more like 
77a0: 77 69 73 68 20 28 61 6c 6c 6f 77 73 20 73 63 72  wish (allows scr
77b0: 69 70 74 20 66 69 6c 65 73 20 74 6f 20 62 65 20  ipt files to be 
77c0: 69 6e 76 6f 6b 65 64 20 61 75 74 6f 6d 61 74 69  invoked automati
77d0: 63 61 6c 6c 79 0a 75 73 69 6e 67 20 22 23 21 2f  cally.using "#!/
77e0: 75 73 72 2f 6c 6f 63 61 6c 2f 62 69 6e 2f 74 63  usr/local/bin/tc
77f0: 6c 73 68 22 2c 20 6d 61 6b 65 73 20 61 72 67 75  lsh", makes argu
7800: 6d 65 6e 74 73 20 61 76 61 69 6c 61 62 6c 65 20  ments available 
7810: 74 6f 20 73 63 72 69 70 74 2c 0a 65 74 63 2e 29  to script,.etc.)
7820: 2e 20 20 41 64 64 65 64 20 73 75 70 70 6f 72 74  .  Added support
7830: 20 66 6f 72 20 54 63 6c 5f 41 70 70 49 6e 69 74   for Tcl_AppInit
7840: 20 70 6c 75 73 20 64 65 66 61 75 6c 74 20 76 65   plus default ve
7850: 72 73 69 6f 6e 3b 20 20 74 68 69 73 0a 61 6c 6c  rsion;  this.all
7860: 6f 77 73 20 6e 65 77 20 54 63 6c 20 61 70 70 6c  ows new Tcl appl
7870: 69 63 61 74 69 6f 6e 73 20 74 6f 20 62 65 20 63  ications to be c
7880: 72 65 61 74 65 64 20 77 69 74 68 6f 75 74 20 6d  reated without m
7890: 6f 64 69 66 79 69 6e 67 20 74 68 65 0a 6d 61 69  odifying the.mai
78a0: 6e 20 70 72 6f 67 72 61 6d 20 66 6f 72 20 74 63  n program for tc
78b0: 6c 73 68 2e 0a 0a 31 38 37 2e 20 36 2f 37 2f 39  lsh...187. 6/7/9
78c0: 33 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 54  3 Fixed bug in T
78d0: 63 6c 57 6f 72 64 45 6e 64 20 74 68 61 74 20 6b  clWordEnd that k
78e0: 65 70 74 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65  ept backslash-ne
78f0: 77 6c 69 6e 65 20 66 72 6f 6d 0a 77 6f 72 6b 69  wline from.worki
7900: 6e 67 20 63 6f 72 72 65 63 74 6c 79 20 69 6e 20  ng correctly in 
7910: 73 6f 6d 65 20 63 61 73 65 73 20 64 75 72 69 6e  some cases durin
7920: 67 20 69 6e 74 65 72 61 63 74 69 76 65 20 69 6e  g interactive in
7930: 70 75 74 2e 0a 0a 31 38 38 2e 20 36 2f 39 2f 39  put...188. 6/9/9
7940: 33 20 41 64 64 65 64 20 54 63 6c 5f 4c 69 6e 6b  3 Added Tcl_Link
7950: 56 61 72 20 61 6e 64 20 72 65 6c 61 74 65 64 20  Var and related 
7960: 70 72 6f 63 65 64 75 72 65 73 2c 20 77 68 69 63  procedures, whic
7970: 68 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a  h automatically.
7980: 6b 65 65 70 20 61 20 54 63 6c 20 76 61 72 69 61  keep a Tcl varia
7990: 62 6c 65 20 69 6e 20 73 79 6e 63 20 77 69 74 68  ble in sync with
79a0: 20 61 20 43 20 76 61 72 69 61 62 6c 65 2e 0a 0a   a C variable...
79b0: 31 38 39 2e 20 36 2f 31 36 2f 39 33 20 49 6e 63  189. 6/16/93 Inc
79c0: 72 65 61 73 65 64 20 6d 61 78 69 6d 75 6d 20 6e  reased maximum n
79d0: 65 73 74 69 6e 67 20 64 65 70 74 68 20 66 72 6f  esting depth fro
79e0: 6d 20 31 30 30 20 74 6f 20 31 30 30 30 2e 0a 0a  m 100 to 1000...
79f0: 31 39 30 2e 20 36 2f 31 36 2f 39 33 20 4d 6f 64  190. 6/16/93 Mod
7a00: 69 66 69 65 64 20 22 74 72 61 63 65 20 76 61 72  ified "trace var
7a10: 22 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61  " command so tha
7a20: 74 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 73  t error messages
7a30: 20 66 72 6f 6d 0a 77 69 74 68 69 6e 20 74 72 61   from.within tra
7a40: 63 65 73 20 61 72 65 20 72 65 74 75 72 6e 65 64  ces are returned
7a50: 20 70 72 6f 70 65 72 6c 79 20 61 73 20 74 68 65   properly as the
7a60: 20 72 65 73 75 6c 74 20 6f 66 20 74 68 65 20 76   result of the v
7a70: 61 72 69 61 62 6c 65 0a 61 63 63 65 73 73 2c 20  ariable.access, 
7a80: 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 67  instead of the g
7a90: 65 6e 65 72 69 63 20 22 61 63 63 65 73 73 20 64  eneric "access d
7aa0: 69 73 61 6c 6c 6f 77 65 64 20 62 79 20 74 72 61  isallowed by tra
7ab0: 63 65 20 63 6f 6d 6d 61 6e 64 22 0a 6d 65 73 73  ce command".mess
7ac0: 61 67 65 2e 0a 0a 31 39 31 2e 20 36 2f 31 36 2f  age...191. 6/16/
7ad0: 39 33 20 41 64 64 65 64 20 54 63 6c 5f 43 61 6c  93 Added Tcl_Cal
7ae0: 6c 57 68 65 6e 44 65 6c 65 74 65 64 20 74 6f 20  lWhenDeleted to 
7af0: 70 72 6f 76 69 64 65 20 63 61 6c 6c 62 61 63 6b  provide callback
7b00: 73 20 77 68 65 6e 20 61 6e 0a 69 6e 74 65 72 70  s when an.interp
7b10: 72 65 74 65 72 20 69 73 20 64 65 6c 65 74 65 64  reter is deleted
7b20: 20 28 73 61 6d 65 20 66 75 6e 63 74 69 6f 6e 61   (same functiona
7b30: 6c 69 74 79 20 61 73 20 54 63 6c 5f 57 61 74 63  lity as Tcl_Watc
7b40: 68 49 6e 74 65 72 70 2c 20 77 68 69 63 68 0a 75  hInterp, which.u
7b50: 73 65 64 20 74 6f 20 65 78 69 73 74 20 69 6e 20  sed to exist in 
7b60: 76 65 72 73 69 6f 6e 73 20 62 65 66 6f 72 65 20  versions before 
7b70: 36 2e 30 29 2e 0a 0a 31 39 33 2e 20 36 2f 31 36  6.0)...193. 6/16
7b80: 2f 39 33 20 41 64 64 65 64 20 22 2d 63 6f 64 65  /93 Added "-code
7b90: 22 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 22 72  " argument to "r
7ba0: 65 74 75 72 6e 22 20 63 6f 6d 6d 61 6e 64 3b 20  eturn" command; 
7bb0: 20 69 74 27 73 20 74 68 65 72 65 0a 70 72 69 6d   it's there.prim
7bc0: 61 72 69 6c 79 20 66 6f 72 20 63 6f 6d 70 6c 65  arily for comple
7bd0: 74 65 6e 65 73 73 2c 20 73 6f 20 74 68 61 74 20  teness, so that 
7be0: 70 72 6f 63 65 64 75 72 65 73 20 69 6d 70 6c 65  procedures imple
7bf0: 6d 65 6e 74 69 6e 67 20 63 6f 6e 74 72 6f 6c 0a  menting control.
7c00: 63 6f 6e 73 74 72 75 63 74 73 20 63 61 6e 20 72  constructs can r
7c10: 65 66 6c 65 63 74 20 65 78 63 65 70 74 69 6f 6e  eflect exception
7c20: 61 6c 20 63 6f 6e 64 69 74 69 6f 6e 73 20 62 61  al conditions ba
7c30: 63 6b 20 74 6f 20 74 68 65 69 72 20 63 61 6c 6c  ck to their call
7c40: 65 72 73 2e 0a 0a 31 39 34 2e 20 36 2f 31 36 2f  ers...194. 6/16/
7c50: 39 33 20 53 70 6c 69 74 20 75 70 20 54 63 6c 2e  93 Split up Tcl.
7c60: 6e 20 74 6f 20 6d 61 6b 65 20 73 65 70 61 72 61  n to make separa
7c70: 74 65 20 6d 61 6e 75 61 6c 20 65 6e 74 72 69 65  te manual entrie
7c80: 73 20 66 6f 72 20 65 61 63 68 0a 54 63 6c 20 63  s for each.Tcl c
7c90: 6f 6d 6d 61 6e 64 2e 20 20 54 63 6c 2e 6e 20 6e  ommand.  Tcl.n n
7ca0: 6f 77 20 63 6f 6e 74 61 69 6e 73 20 61 20 73 75  ow contains a su
7cb0: 6d 6d 61 72 79 20 6f 66 20 74 68 65 20 6c 61 6e  mmary of the lan
7cc0: 67 75 61 67 65 20 73 79 6e 74 61 78 2e 0a 0a 31  guage syntax...1
7cd0: 39 35 2e 20 36 2f 31 37 2f 39 33 20 41 64 64 65  95. 6/17/93 Adde
7ce0: 64 20 6e 65 77 20 22 73 77 69 74 63 68 22 20 63  d new "switch" c
7cf0: 6f 6d 6d 61 6e 64 20 74 6f 20 72 65 70 6c 61 63  ommand to replac
7d00: 65 20 22 63 61 73 65 22 3a 20 61 6c 6c 6f 77 73  e "case": allows
7d10: 0a 61 6c 74 65 72 6e 61 74 65 20 66 6f 72 6d 73  .alternate forms
7d20: 20 6f 66 20 70 61 74 74 65 72 6e 20 6d 61 74 63   of pattern matc
7d30: 68 69 6e 67 20 28 65 78 61 63 74 2c 20 67 6c 6f  hing (exact, glo
7d40: 62 2c 20 72 65 67 65 78 70 29 2c 20 72 65 70 6c  b, regexp), repl
7d50: 61 63 65 73 0a 70 61 74 74 65 72 6e 20 6c 69 73  aces.pattern lis
7d60: 74 73 20 77 69 74 68 20 73 69 6e 67 6c 65 20 70  ts with single p
7d70: 61 74 74 65 72 6e 73 20 28 62 75 74 20 79 6f 75  atterns (but you
7d80: 20 63 61 6e 20 75 73 65 20 22 2d 22 20 62 6f 64   can use "-" bod
7d90: 69 65 73 20 74 6f 0a 73 68 61 72 65 20 6f 6e 65  ies to.share one
7da0: 20 62 6f 64 79 20 61 6d 6f 6e 67 20 73 65 76 65   body among seve
7db0: 72 61 6c 20 70 61 74 74 65 72 6e 73 29 2c 20 65  ral patterns), e
7dc0: 6c 69 6d 69 6e 61 74 65 73 20 22 69 6e 22 20 6e  liminates "in" n
7dd0: 6f 69 73 65 20 77 6f 72 64 2e 0a 22 43 61 73 65  oise word.."Case
7de0: 22 20 63 6f 6d 6d 61 6e 64 20 69 73 20 6e 6f 77  " command is now
7df0: 20 6f 62 73 6f 6c 65 74 65 2e 0a 0a 31 39 36 2e   obsolete...196.
7e00: 20 36 2f 31 37 2f 39 33 20 43 68 61 6e 67 65 64   6/17/93 Changed
7e10: 20 74 68 65 20 22 65 78 65 63 22 2c 20 22 67 6c   the "exec", "gl
7e20: 6f 62 22 2c 20 22 72 65 67 65 78 70 22 2c 20 61  ob", "regexp", a
7e30: 6e 64 20 22 72 65 67 73 75 62 22 20 63 6f 6d 6d  nd "regsub" comm
7e40: 61 6e 64 73 0a 74 6f 20 69 6e 63 6c 75 64 65 20  ands.to include 
7e50: 61 20 22 2d 2d 22 20 73 77 69 74 63 68 2e 20 20  a "--" switch.  
7e60: 41 6c 6c 20 69 6e 69 74 69 61 6c 20 61 72 67 75  All initial argu
7e70: 6d 65 6e 74 73 20 73 74 61 72 74 69 6e 67 20 77  ments starting w
7e80: 69 74 68 20 22 2d 22 20 61 72 65 20 6e 6f 77 0a  ith "-" are now.
7e90: 74 72 65 61 74 65 64 20 61 73 20 73 77 69 74 63  treated as switc
7ea0: 68 65 73 20 75 6e 6c 65 73 73 20 61 20 22 2d 2d  hes unless a "--
7eb0: 22 20 73 77 69 74 63 68 20 69 73 20 70 72 65 73  " switch is pres
7ec0: 65 6e 74 20 74 6f 20 65 6e 64 20 74 68 65 20 6c  ent to end the l
7ed0: 69 73 74 2e 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49  ist..*** POTENTI
7ee0: 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49  AL INCOMPATIBILI
7ef0: 54 59 20 2a 2a 2a 0a 0a 31 39 37 2e 20 36 2f 31  TY ***..197. 6/1
7f00: 37 2f 39 33 20 43 68 61 6e 67 65 64 20 61 75 74  7/93 Changed aut
7f10: 6f 2d 65 78 65 63 20 73 6f 20 74 68 61 74 20 74  o-exec so that t
7f20: 68 65 20 73 75 62 70 72 6f 63 65 73 73 20 67 65  he subprocess ge
7f30: 74 73 20 73 74 64 69 6e 2c 20 73 74 64 6f 75 74  ts stdin, stdout
7f40: 2c 0a 61 6e 64 20 73 74 64 65 72 72 20 66 72 6f  ,.and stderr fro
7f50: 6d 20 74 68 65 20 70 61 72 65 6e 74 2e 20 20 54  m the parent.  T
7f60: 68 69 73 20 61 6c 6c 6f 77 73 20 74 72 75 6c 79  his allows truly
7f70: 20 69 6e 74 65 72 61 63 74 69 76 65 20 73 75 62   interactive sub
7f80: 2d 70 72 6f 63 65 73 73 65 73 0a 28 65 2e 67 2e  -processes.(e.g.
7f90: 20 76 69 29 20 74 6f 20 62 65 20 61 75 74 6f 2d   vi) to be auto-
7fa0: 65 78 65 63 27 65 64 20 66 72 6f 6d 20 61 20 74  exec'ed from a t
7fb0: 63 6c 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64  cl shell command
7fc0: 20 6c 69 6e 65 2e 0a 0a 31 39 38 2e 20 36 2f 31   line...198. 6/1
7fd0: 38 2f 39 33 20 41 64 64 65 64 20 70 61 74 63 68  8/93 Added patch
7fe0: 6c 65 76 65 6c 2e 68 2c 20 66 6f 72 20 75 73 65  level.h, for use
7ff0: 20 69 6e 20 63 6f 6f 72 64 69 6e 61 74 69 6e 67   in coordinating
8000: 20 66 75 74 75 72 65 20 70 61 74 63 68 0a 72 65   future patch.re
8010: 6c 65 61 73 65 73 2c 20 61 6e 64 20 61 6c 73 6f  leases, and also
8020: 20 61 64 64 65 64 20 22 69 6e 66 6f 20 70 61 74   added "info pat
8030: 63 68 6c 65 76 65 6c 22 20 63 6f 6d 6d 61 6e 64  chlevel" command
8040: 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 70 61 74   to make the pat
8050: 63 68 0a 6c 65 76 65 6c 20 61 76 61 69 6c 61 62  ch.level availab
8060: 6c 65 20 74 6f 20 54 63 6c 20 73 63 72 69 70 74  le to Tcl script
8070: 73 2e 0a 0a 31 39 39 2e 20 36 2f 31 39 2f 39 33  s...199. 6/19/93
8080: 20 4d 6f 64 69 66 69 65 64 20 22 67 6c 6f 62 22   Modified "glob"
8090: 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74   command so that
80a0: 20 61 20 6c 65 61 64 69 6e 67 20 22 2f 2f 22 20   a leading "//" 
80b0: 69 6e 20 61 20 6e 61 6d 65 0a 67 65 74 73 20 6c  in a name.gets l
80c0: 65 66 74 20 61 73 20 69 73 20 28 74 68 69 73 20  eft as is (this 
80d0: 69 73 20 6e 65 65 64 65 64 20 66 6f 72 20 73 79  is needed for sy
80e0: 73 74 65 6d 73 20 6c 69 6b 65 20 41 70 6f 6c 6c  stems like Apoll
80f0: 6f 73 20 77 68 65 72 65 20 22 2f 2f 22 20 69 73  os where "//" is
8100: 0a 74 68 65 20 73 75 70 65 72 2d 72 6f 6f 74 3b  .the super-root;
8110: 20 20 54 63 6c 20 75 73 65 64 20 74 6f 20 63 6f    Tcl used to co
8120: 6c 6c 61 70 73 65 20 74 68 65 20 74 77 6f 20 73  llapse the two s
8130: 6c 61 73 68 65 73 20 69 6e 74 6f 20 61 20 73 69  lashes into a si
8140: 6e 67 6c 65 0a 73 6c 61 73 68 29 2e 0a 0a 32 30  ngle.slash)...20
8150: 30 2e 20 37 2f 37 2f 39 33 20 41 64 64 65 64 20  0. 7/7/93 Added 
8160: 54 63 6c 5f 53 65 74 52 65 63 75 72 73 69 6f 6e  Tcl_SetRecursion
8170: 4c 69 6d 69 74 20 70 72 6f 63 65 64 75 72 65 20  Limit procedure 
8180: 73 6f 20 74 68 61 74 20 74 68 65 20 6d 61 78 69  so that the maxi
8190: 6d 75 6d 0a 61 6c 6c 6f 77 61 62 6c 65 20 6e 65  mum.allowable ne
81a0: 73 74 69 6e 67 20 64 65 70 74 68 20 63 61 6e 20  sting depth can 
81b0: 62 65 20 63 6f 6e 74 72 6f 6c 6c 65 64 20 66 6f  be controlled fo
81c0: 72 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72  r an interpreter
81d0: 20 66 72 6f 6d 20 43 2e 0a 0a 2d 2d 2d 2d 2d 2d   from C...------
81e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
81f0: 61 73 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 30  ased version 7.0
8200: 20 42 65 74 61 20 31 2c 20 37 2f 39 2f 39 33 20   Beta 1, 7/9/93 
8210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
8220: 2d 2d 0a 0a 32 30 31 2e 20 37 2f 31 32 2f 39 33  --..201. 7/12/93
8230: 20 4d 6f 64 69 66 69 65 64 20 54 63 6c 5f 47 65   Modified Tcl_Ge
8240: 74 49 6e 74 20 61 6e 64 20 74 63 6c 45 78 70 72  tInt and tclExpr
8250: 2e 63 20 73 6f 20 74 68 61 74 20 66 75 6c 6c 2d  .c so that full-
8260: 70 72 65 63 69 73 69 6f 6e 0a 75 6e 73 69 67 6e  precision.unsign
8270: 65 64 20 69 6e 74 65 67 65 72 73 20 63 61 6e 20  ed integers can 
8280: 62 65 20 73 70 65 63 69 66 69 65 64 20 77 69 74  be specified wit
8290: 68 6f 75 74 20 6f 76 65 72 66 6c 6f 77 20 65 72  hout overflow er
82a0: 72 6f 72 73 2e 0a 0a 32 30 32 2e 20 37 2f 31 32  rors...202. 7/12
82b0: 2f 39 33 20 43 6f 6e 66 69 67 75 72 61 74 69 6f  /93 Configuratio
82c0: 6e 20 63 68 61 6e 67 65 73 3a 20 20 65 6c 69 6d  n changes:  elim
82d0: 69 6e 61 74 65 20 6c 65 61 64 69 6e 67 20 62 6c  inate leading bl
82e0: 61 6e 6b 20 6c 69 6e 65 20 69 6e 0a 63 6f 6e 66  ank line in.conf
82f0: 69 67 75 72 65 20 73 63 72 69 70 74 3b 20 20 70  igure script;  p
8300: 72 6f 76 69 64 65 20 73 65 70 61 72 61 74 65 20  rovide separate 
8310: 74 61 72 67 65 74 73 20 69 6e 20 4d 61 6b 65 66  targets in Makef
8320: 69 6c 65 20 66 6f 72 20 69 6e 73 74 61 6c 6c 69  ile for installi
8330: 6e 67 0a 62 69 6e 61 72 79 20 61 6e 64 20 6e 6f  ng.binary and no
8340: 6e 2d 62 69 6e 61 72 79 20 69 6e 66 6f 72 6d 61  n-binary informa
8350: 74 69 6f 6e 3b 20 63 68 65 63 6b 20 66 6f 72 20  tion; check for 
8360: 73 69 7a 65 5f 74 20 61 6e 64 20 61 20 66 65 77  size_t and a few
8370: 20 6f 74 68 65 72 0a 70 6f 74 65 6e 74 69 61 6c   other.potential
8380: 6c 79 20 6d 69 73 73 69 6e 67 20 74 79 70 65 64  ly missing typed
8390: 65 66 73 3b 20 64 6f 6e 27 74 20 70 75 74 20 74  efs; don't put t
83a0: 63 6c 41 70 70 49 6e 69 74 2e 6f 20 69 6e 74 6f  clAppInit.o into
83b0: 20 6c 69 62 74 63 6c 2e 61 3b 0a 62 65 74 74 65   libtcl.a;.bette
83c0: 72 20 63 68 65 63 6b 73 20 66 6f 72 20 6d 61 74  r checks for mat
83d0: 68 65 72 72 20 73 75 70 70 6f 72 74 2e 0a 0a 32  herr support...2
83e0: 30 33 2e 20 37 2f 31 34 2f 39 33 20 43 68 61 6e  03. 7/14/93 Chan
83f0: 67 65 64 20 74 63 6c 45 78 70 72 2e 63 20 74 6f  ged tclExpr.c to
8400: 20 63 68 65 63 6b 20 74 68 65 20 74 65 72 6d 69   check the termi
8410: 6e 61 74 69 6f 6e 20 70 6f 69 6e 74 65 72 20 62  nation pointer b
8420: 65 66 6f 72 65 0a 65 72 72 6e 6f 20 61 66 74 65  efore.errno afte
8430: 72 20 73 74 72 74 6f 64 20 63 61 6c 6c 73 2c 20  r strtod calls, 
8440: 74 6f 20 61 76 6f 69 64 20 70 72 6f 62 6c 65 6d  to avoid problem
8450: 73 20 77 69 74 68 20 73 6f 6d 65 20 76 65 72 73  s with some vers
8460: 69 6f 6e 73 20 6f 66 0a 73 74 72 74 6f 64 20 74  ions of.strtod t
8470: 68 61 74 20 73 65 74 20 65 72 72 6e 6f 20 69 6e  hat set errno in
8480: 20 75 6e 65 78 70 65 63 74 65 64 20 77 61 79 73   unexpected ways
8490: 2e 0a 0a 32 30 34 2e 20 37 2f 31 36 2f 39 33 20  ...204. 7/16/93 
84a0: 43 68 61 6e 67 65 64 20 22 73 63 61 6e 22 20 63  Changed "scan" c
84b0: 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 20 6d 6f 72  ommand to be mor
84c0: 65 20 41 4e 53 49 2d 63 6f 6e 66 6f 72 6d 61 6e  e ANSI-conforman
84d0: 74 3a 0a 65 6c 69 6d 69 6e 61 74 65 64 20 25 46  t:.eliminated %F
84e0: 2c 20 25 44 2c 20 65 74 63 2e 2c 20 61 64 64 65  , %D, etc., adde
84f0: 64 20 63 6f 64 65 20 74 6f 20 69 67 6e 6f 72 65  d code to ignore
8500: 20 22 6c 22 2c 20 22 68 22 2c 20 61 6e 64 20 22   "l", "h", and "
8510: 4c 22 0a 6d 6f 64 69 66 69 65 72 73 20 62 75 74  L".modifiers but
8520: 20 61 6c 77 61 79 73 20 63 6f 6e 76 65 72 74 20   always convert 
8530: 25 65 2c 20 25 66 2c 20 61 6e 64 20 25 67 20 77  %e, %f, and %g w
8540: 69 74 68 20 69 6d 70 6c 69 63 69 74 20 22 6c 22  ith implicit "l"
8550: 3b 0a 61 6c 73 6f 20 61 64 64 65 64 20 73 75 70  ;.also added sup
8560: 70 6f 72 74 20 66 6f 72 20 25 75 20 61 6e 64 20  port for %u and 
8570: 25 69 2e 20 20 41 6c 73 6f 20 63 68 61 6e 67 65  %i.  Also change
8580: 64 20 22 66 6f 72 6d 61 74 22 20 63 6f 6d 6d 61  d "format" comma
8590: 6e 64 0a 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20  nd.to eliminate 
85a0: 25 44 2c 20 25 55 2c 20 25 4f 2c 20 61 6e 64 20  %D, %U, %O, and 
85b0: 61 64 64 20 25 69 2e 0a 2a 2a 2a 20 50 4f 54 45  add %i..*** POTE
85c0: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
85d0: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 30 35 2e 20  ILITY ***..205. 
85e0: 37 2f 31 37 2f 39 33 20 43 68 61 6e 67 65 64 20  7/17/93 Changed 
85f0: 22 75 70 6c 65 76 65 6c 22 20 61 6e 64 20 22 75  "uplevel" and "u
8600: 70 76 61 72 22 20 73 6f 20 74 68 61 74 20 74 68  pvar" so that th
8610: 65 79 20 63 61 6e 20 62 65 20 75 73 65 64 0a 66  ey can be used.f
8620: 72 6f 6d 20 67 6c 6f 62 61 6c 20 6c 65 76 65 6c  rom global level
8630: 20 74 6f 20 67 6c 6f 62 61 6c 20 6c 65 76 65 6c   to global level
8640: 3a 20 20 74 68 69 73 20 75 73 65 64 20 74 6f 20  :  this used to 
8650: 67 65 6e 65 72 61 74 65 20 61 6e 20 65 72 72 6f  generate an erro
8660: 72 2e 0a 0a 32 30 36 2e 20 37 2f 31 39 2f 39 33  r...206. 7/19/93
8670: 20 52 65 6e 61 6d 65 64 20 22 73 65 74 65 6e 76   Renamed "setenv
8680: 22 2c 20 22 70 75 74 65 6e 76 22 2c 20 61 6e 64  ", "putenv", and
8690: 20 22 75 6e 73 65 74 65 6e 76 22 20 70 72 6f 63   "unsetenv" proc
86a0: 65 64 75 72 65 73 0a 74 6f 20 61 76 6f 69 64 20  edures.to avoid 
86b0: 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 73  conflicts with s
86c0: 79 73 74 65 6d 20 70 72 6f 63 65 64 75 72 65 73  ystem procedures
86d0: 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 20 6e   with the same n
86e0: 61 6d 65 73 2e 20 20 49 66 0a 79 6f 75 20 77 61  ames.  If.you wa
86f0: 6e 74 20 54 63 6c 27 73 20 70 72 6f 63 65 64 75  nt Tcl's procedu
8700: 72 65 73 20 74 6f 20 6f 76 65 72 72 69 64 65 20  res to override 
8710: 74 68 65 20 73 79 73 74 65 6d 20 70 72 6f 63 65  the system proce
8720: 64 75 72 65 73 2c 20 64 6f 20 69 74 0a 69 6e 20  dures, do it.in 
8730: 74 68 65 20 4d 61 6b 65 66 69 6c 65 20 28 69 6e  the Makefile (in
8740: 73 74 72 75 63 74 69 6f 6e 73 20 61 72 65 20 69  structions are i
8750: 6e 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 29 2e  n the Makefile).
8760: 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
8770: 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
8780: 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  **..------------
8790: 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76  ----- Released v
87a0: 65 72 73 69 6f 6e 20 37 2e 30 20 42 65 74 61 20  ersion 7.0 Beta 
87b0: 32 2c 20 37 2f 32 31 2f 39 33 20 2d 2d 2d 2d 2d  2, 7/21/93 -----
87c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32  -------------..2
87d0: 30 37 2e 20 37 2f 32 31 2f 39 33 20 46 69 78 65  07. 7/21/93 Fixe
87e0: 64 20 62 75 67 20 69 6e 20 74 63 6c 56 61 72 2e  d bug in tclVar.
87f0: 63 20 77 68 65 72 65 20 66 72 65 65 64 20 6d 65  c where freed me
8800: 6d 6f 72 79 20 77 61 73 20 61 63 63 69 64 65 6e  mory was acciden
8810: 74 61 6c 6c 79 0a 75 73 65 64 20 69 66 20 61 20  tally.used if a 
8820: 70 72 6f 63 65 64 75 72 65 20 72 65 74 75 72 6e  procedure return
8830: 65 64 20 61 6e 20 65 6c 65 6d 65 6e 74 20 6f 66  ed an element of
8840: 20 61 20 6c 6f 63 61 6c 20 61 72 72 61 79 2e 0a   a local array..
8850: 0a 32 30 38 2e 20 37 2f 32 32 2f 39 33 20 46 69  .208. 7/22/93 Fi
8860: 78 65 64 20 62 75 67 20 69 6e 20 22 75 6e 6b 6e  xed bug in "unkn
8870: 6f 77 6e 22 20 77 68 65 72 65 20 69 74 20 64 69  own" where it di
8880: 64 6e 27 74 20 70 72 6f 70 65 72 6c 79 20 68 61  dn't properly ha
8890: 6e 64 6c 65 0a 65 72 72 6f 72 73 20 6f 63 63 75  ndle.errors occu
88a0: 72 72 69 6e 67 20 69 6e 20 74 68 65 20 22 61 75  rring in the "au
88b0: 74 6f 5f 6c 6f 61 64 22 20 70 72 6f 63 65 64 75  to_load" procedu
88c0: 72 65 2c 20 6c 65 61 76 69 6e 67 20 69 74 73 20  re, leaving its 
88d0: 73 74 61 74 65 0a 69 6e 63 6f 6e 73 69 73 74 65  state.inconsiste
88e0: 6e 74 2e 0a 0a 32 30 39 2e 20 37 2f 32 33 2f 39  nt...209. 7/23/9
88f0: 33 20 43 68 61 6e 67 65 64 20 65 78 65 63 27 73  3 Changed exec's
8900: 20 22 3e 32 22 20 72 65 64 69 72 65 63 74 69 6f   ">2" redirectio
8910: 6e 20 6f 70 65 72 61 74 6f 72 20 74 6f 20 22 32  n operator to "2
8920: 3e 22 20 66 6f 72 0a 63 6f 6e 73 69 73 74 65 6e  >" for.consisten
8930: 63 79 20 77 69 74 68 20 73 68 2e 20 20 54 68 69  cy with sh.  Thi
8940: 73 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c  s is incompatibl
8950: 65 20 77 69 74 68 20 65 61 72 6c 69 65 72 20 62  e with earlier b
8960: 65 74 61 20 72 65 6c 65 61 73 65 73 0a 6f 66 20  eta releases.of 
8970: 37 2e 30 20 62 75 74 20 6e 6f 74 20 77 69 74 68  7.0 but not with
8980: 20 70 72 65 2d 37 2e 30 20 72 65 6c 65 61 73 65   pre-7.0 release
8990: 73 2c 20 77 68 69 63 68 20 64 69 64 6e 27 74 20  s, which didn't 
89a0: 73 75 70 70 6f 72 74 20 65 69 74 68 65 72 0a 6f  support either.o
89b0: 70 65 72 61 74 6f 72 2e 0a 0a 32 31 30 2e 20 37  perator...210. 7
89c0: 2f 32 38 2f 39 33 20 43 68 61 6e 67 65 64 20 62  /28/93 Changed b
89d0: 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65  ackslash-newline
89e0: 20 68 61 6e 64 6c 69 6e 67 20 73 6f 20 74 68 61   handling so tha
89f0: 74 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 0a  t the resulting.
8a00: 73 70 61 63 65 20 63 68 61 72 61 63 74 65 72 20  space character 
8a10: 2a 69 73 2a 20 74 72 65 61 74 65 64 20 61 73 20  *is* treated as 
8a20: 61 20 77 6f 72 64 20 73 65 70 61 72 61 74 6f 72  a word separator
8a30: 20 75 6e 6c 65 73 73 20 74 68 65 20 62 61 63 6b   unless the back
8a40: 73 6c 61 73 68 0a 73 65 71 75 65 6e 63 65 20 69  slash.sequence i
8a50: 73 20 69 6e 20 71 75 6f 74 65 73 20 6f 72 20 62  s in quotes or b
8a60: 72 61 63 65 73 2e 20 20 54 68 69 73 20 69 73 20  races.  This is 
8a70: 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74  incompatible wit
8a80: 68 20 37 2e 30 62 31 0a 61 6e 64 20 37 2e 30 62  h 7.0b1.and 7.0b
8a90: 32 20 62 75 74 20 69 73 20 6d 6f 72 65 20 63 6f  2 but is more co
8aa0: 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 70 72  mpatible with pr
8ab0: 65 2d 37 2e 30 20 76 65 72 73 69 6f 6e 73 20 74  e-7.0 versions t
8ac0: 68 61 74 20 74 68 65 20 62 31 0a 61 6e 64 20 62  hat the b1.and b
8ad0: 32 20 72 65 6c 65 61 73 65 73 20 77 65 72 65 2e  2 releases were.
8ae0: 0a 0a 32 31 31 2e 20 37 2f 32 38 2f 39 33 20 45  ..211. 7/28/93 E
8af0: 6c 69 6d 69 6e 61 74 65 64 20 54 63 6c 5f 4c 69  liminated Tcl_Li
8b00: 6e 6b 65 64 56 61 72 57 72 69 74 61 62 6c 65 2c  nkedVarWritable,
8b10: 20 61 64 64 65 64 20 54 43 4c 5f 4c 49 4e 4b 5f   added TCL_LINK_
8b20: 52 45 41 44 5f 4f 4e 4c 59 20 74 6f 0a 54 63 6c  READ_ONLY to.Tcl
8b30: 5f 4c 69 6e 6b 56 61 72 20 74 6f 20 61 63 63 6f  _LinkVar to acco
8b40: 6d 70 6c 69 73 68 20 73 61 6d 65 20 70 75 72 70  mplish same purp
8b50: 6f 73 65 2e 20 20 54 68 69 73 20 63 68 61 6e 67  ose.  This chang
8b60: 65 20 69 73 20 69 6e 63 6f 6d 70 61 74 69 62 6c  e is incompatibl
8b70: 65 0a 77 69 74 68 20 65 61 72 6c 69 65 72 20 62  e.with earlier b
8b80: 65 74 61 20 72 65 6c 65 61 73 65 73 2c 20 62 75  eta releases, bu
8b90: 74 20 6e 6f 74 20 77 69 74 68 20 72 65 6c 65 61  t not with relea
8ba0: 73 65 73 20 62 65 66 6f 72 65 20 54 63 6c 20 37  ses before Tcl 7
8bb0: 2e 30 2e 0a 0a 32 31 32 2e 20 37 2f 32 39 2f 39  .0...212. 7/29/9
8bc0: 33 20 52 65 6e 61 6d 65 64 20 72 65 67 65 78 70  3 Renamed regexp
8bd0: 20 43 20 66 75 6e 63 74 69 6f 6e 73 20 73 6f 20   C functions so 
8be0: 74 68 65 79 20 77 6f 6e 27 74 20 63 6c 61 73 68  they won't clash
8bf0: 20 77 69 74 68 20 50 4f 53 49 58 0a 72 65 67 65   with POSIX.rege
8c00: 78 70 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61  xp functions tha
8c10: 74 20 75 73 65 20 74 68 65 20 73 61 6d 65 20 6e  t use the same n
8c20: 61 6d 65 2e 0a 0a 32 31 33 2e 20 38 2f 33 2f 39  ame...213. 8/3/9
8c30: 33 20 41 64 64 65 64 20 22 2d 65 72 72 6f 72 69  3 Added "-errori
8c40: 6e 66 6f 22 20 61 6e 64 20 22 2d 65 72 72 6f 72  nfo" and "-error
8c50: 63 6f 64 65 22 20 6f 70 74 69 6f 6e 73 20 74 6f  code" options to
8c60: 20 22 72 65 74 75 72 6e 22 0a 63 6f 6d 6d 61 6e   "return".comman
8c70: 64 3a 20 74 68 65 73 65 20 61 6c 6c 6f 77 20 66  d: these allow f
8c80: 6f 72 20 6d 75 63 68 20 62 65 74 74 65 72 20 68  or much better h
8c90: 61 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20 65  andling of the e
8ca0: 72 72 6f 72 49 6e 66 6f 0a 61 6e 64 20 65 72 72  rrorInfo.and err
8cb0: 6f 72 43 6f 64 65 20 76 61 72 69 61 62 6c 65 73  orCode variables
8cc0: 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 2e 0a   in some cases..
8cd0: 0a 32 31 34 2e 20 38 2f 31 32 2f 39 33 20 43 68  .214. 8/12/93 Ch
8ce0: 61 6e 67 65 64 20 22 65 78 70 72 22 20 73 6f 20  anged "expr" so 
8cf0: 74 68 61 74 20 25 20 61 6c 77 61 79 73 20 72 65  that % always re
8d00: 74 75 72 6e 73 20 61 20 72 65 6d 61 69 6e 64 65  turns a remainde
8d10: 72 20 77 69 74 68 0a 74 68 65 20 73 61 6d 65 20  r with.the same 
8d20: 73 69 67 6e 20 61 73 20 74 68 65 20 64 69 76 69  sign as the divi
8d30: 73 6f 72 20 61 6e 64 20 61 62 73 6f 6c 75 74 65  sor and absolute
8d40: 20 76 61 6c 75 65 20 73 6d 61 6c 6c 65 72 20 74   value smaller t
8d50: 68 61 6e 20 74 68 65 0a 64 69 76 69 73 6f 72 2e  han the.divisor.
8d60: 0a 0a 32 31 35 2e 20 38 2f 31 34 2f 39 33 20 54  ..215. 8/14/93 T
8d70: 75 72 6e 65 64 20 6f 66 66 20 61 75 74 6f 2d 65  urned off auto-e
8d80: 78 65 63 20 69 6e 20 22 75 6e 6b 6e 6f 77 6e 22  xec in "unknown"
8d90: 20 75 6e 6c 65 73 73 20 74 68 65 20 63 6f 6d 6d   unless the comm
8da0: 61 6e 64 0a 77 61 73 20 74 79 70 65 64 20 69 6e  and.was typed in
8db0: 74 65 72 61 63 74 69 76 65 6c 79 2e 20 20 54 68  teractively.  Th
8dc0: 69 73 20 6d 65 61 6e 73 20 79 6f 75 20 6d 75 73  is means you mus
8dd0: 74 20 75 73 65 20 22 65 78 65 63 22 20 77 68 65  t use "exec" whe
8de0: 6e 0a 69 6e 76 6f 6b 69 6e 67 20 73 75 62 70 72  n.invoking subpr
8df0: 6f 63 65 73 73 65 73 2c 20 75 6e 6c 65 73 73 20  ocesses, unless 
8e00: 69 74 27 73 20 61 20 63 6f 6d 6d 61 6e 64 20 74  it's a command t
8e10: 68 61 74 27 73 20 74 79 70 65 64 20 69 6e 74 65  hat's typed inte
8e20: 72 61 63 74 69 76 65 6c 79 2e 0a 2a 2a 2a 20 50  ractively..*** P
8e30: 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
8e40: 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 31  TIBILITY ***..21
8e50: 36 2e 20 38 2f 31 34 2f 39 33 20 41 64 64 65 64  6. 8/14/93 Added
8e60: 20 73 75 70 70 6f 72 74 20 66 6f 72 20 74 63 6c   support for tcl
8e70: 5f 70 72 6f 6d 70 74 31 20 61 6e 64 20 74 63 6c  _prompt1 and tcl
8e80: 5f 70 72 6f 6d 70 74 32 20 76 61 72 69 61 62 6c  _prompt2 variabl
8e90: 65 73 0a 74 6f 20 74 63 6c 4d 61 69 6e 2e 63 3a  es.to tclMain.c:
8ea0: 20 20 6d 61 6b 65 73 20 70 72 6f 6d 70 74 73 20    makes prompts 
8eb0: 75 73 65 72 2d 73 65 74 74 61 62 6c 65 2e 0a 0a  user-settable...
8ec0: 32 31 37 2e 20 38 2f 31 34 2f 39 33 20 41 64 64  217. 8/14/93 Add
8ed0: 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20  ed asynchronous 
8ee0: 68 61 6e 64 6c 65 72 73 20 28 54 63 6c 5f 41 73  handlers (Tcl_As
8ef0: 79 6e 63 43 72 65 61 74 65 20 65 74 63 2e 29 20  yncCreate etc.) 
8f00: 73 6f 0a 74 68 61 74 20 73 69 67 6e 61 6c 73 20  so.that signals 
8f10: 63 61 6e 20 62 65 20 74 61 6b 65 6e 20 63 6c 65  can be taken cle
8f20: 61 6e 6c 79 20 62 79 20 54 63 6c 20 61 70 70 6c  anly by Tcl appl
8f30: 69 63 61 74 69 6f 6e 73 2e 0a 0a 32 31 38 2e 20  ications...218. 
8f40: 38 2f 31 36 2f 39 33 20 4d 6f 76 65 64 20 69 6e  8/16/93 Moved in
8f50: 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20  formation about 
8f60: 6f 70 65 6e 20 66 69 6c 65 73 20 66 72 6f 6d 20  open files from 
8f70: 74 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 0a  the interpreter.
8f80: 73 74 72 75 63 74 75 72 65 20 74 6f 20 67 6c 6f  structure to glo
8f90: 62 61 6c 20 76 61 72 69 61 62 6c 65 73 20 73 6f  bal variables so
8fa0: 20 74 68 61 74 20 61 20 66 69 6c 65 20 63 61 6e   that a file can
8fb0: 20 62 65 20 6f 70 65 6e 65 64 20 69 6e 20 6f 6e   be opened in on
8fc0: 65 0a 69 6e 74 65 72 70 72 65 74 65 72 20 61 6e  e.interpreter an
8fd0: 64 20 72 65 61 64 20 6f 72 20 77 72 69 74 74 65  d read or writte
8fe0: 6e 20 69 6e 20 61 6e 6f 74 68 65 72 2e 0a 0a 32  n in another...2
8ff0: 31 39 2e 20 38 2f 31 36 2f 39 33 20 52 65 6d 6f  19. 8/16/93 Remo
9000: 76 65 64 20 45 4e 56 5f 46 4c 41 47 53 20 66 72  ved ENV_FLAGS fr
9010: 6f 6d 20 4d 61 6b 65 66 69 6c 65 2c 20 73 6f 20  om Makefile, so 
9020: 74 68 61 74 20 74 68 65 72 65 27 73 20 6e 6f 0a  that there's no.
9030: 6f 66 66 69 63 69 61 6c 20 73 75 70 70 6f 72 74  official support
9040: 20 66 6f 72 20 6f 76 65 72 72 69 64 69 6e 67 20   for overriding 
9050: 73 65 74 65 6e 76 2c 20 75 6e 73 65 74 65 6e 76  setenv, unsetenv
9060: 2c 20 61 6e 64 20 70 75 74 65 6e 76 2e 0a 0a 32  , and putenv...2
9070: 32 30 2e 20 38 2f 32 30 2f 39 33 20 56 61 72 69  20. 8/20/93 Vari
9080: 6f 75 73 20 63 6f 6e 66 69 67 75 72 61 74 69 6f  ous configuratio
9090: 6e 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 3a 20  n improvements: 
90a0: 20 63 6f 65 72 63 65 20 63 68 61 72 73 0a 74 6f   coerce chars.to
90b0: 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 73 20   unsigned chars 
90c0: 62 65 66 6f 72 65 20 75 73 69 6e 67 20 6d 61 63  before using mac
90d0: 72 6f 73 20 6c 69 6b 65 20 69 73 73 70 61 63 65  ros like isspace
90e0: 3b 20 20 73 6f 75 72 63 65 20 7e 2f 2e 74 63 6c  ;  source ~/.tcl
90f0: 73 68 72 63 0a 66 69 6c 65 20 64 75 72 69 6e 67  shrc.file during
9100: 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20   initialization 
9110: 69 66 20 69 74 20 65 78 69 73 74 73 20 61 6e 64  if it exists and
9120: 20 70 72 6f 67 72 61 6d 20 69 73 20 72 75 6e 6e   program is runn
9130: 69 6e 67 0a 69 6e 74 65 72 61 63 74 69 76 65 6c  ing.interactivel
9140: 79 3b 20 20 61 6c 6c 6f 77 20 74 68 65 72 65 20  y;  allow there 
9150: 74 6f 20 62 65 20 64 69 72 65 63 74 6f 72 69 65  to be directorie
9160: 73 20 69 6e 20 61 75 74 6f 5f 70 61 74 68 20 74  s in auto_path t
9170: 68 61 74 20 64 6f 6e 27 74 0a 65 78 69 73 74 20  hat don't.exist 
9180: 6f 72 20 64 6f 6e 27 74 20 68 61 76 65 20 74 63  or don't have tc
9190: 6c 49 6e 64 65 78 20 66 69 6c 65 73 20 28 69 67  lIndex files (ig
91a0: 6e 6f 72 65 20 74 68 65 6d 29 3b 20 61 64 64 65  nore them); adde
91b0: 64 20 54 63 6c 5f 49 6e 69 74 0a 70 72 6f 63 65  d Tcl_Init.proce
91c0: 64 75 72 65 20 61 6e 64 20 63 68 61 6e 67 65 64  dure and changed
91d0: 20 54 63 6c 5f 41 70 70 49 6e 69 74 20 74 6f 20   Tcl_AppInit to 
91e0: 63 61 6c 6c 20 69 74 2e 0a 0a 32 32 31 2e 20 38  call it...221. 8
91f0: 2f 32 31 2f 39 33 20 46 69 78 65 64 20 62 75 67  /21/93 Fixed bug
9200: 20 69 6e 20 65 78 70 72 20 77 68 65 72 65 20 22   in expr where "
9210: 2b 22 2c 20 22 2d 22 2c 20 61 6e 64 20 22 20 22  +", "-", and " "
9220: 20 77 65 72 65 20 61 6c 6c 0a 67 65 74 74 69 6e   were all.gettin
9230: 67 20 74 72 65 61 74 65 64 20 61 73 20 69 6e 74  g treated as int
9240: 65 67 65 72 73 20 77 69 74 68 20 76 61 6c 75 65  egers with value
9250: 20 30 2e 0a 0a 32 32 32 2e 20 38 2f 32 36 2f 39   0...222. 8/26/9
9260: 33 20 41 64 64 65 64 20 22 74 63 6c 5f 69 6e 74  3 Added "tcl_int
9270: 65 72 61 63 74 69 76 65 22 20 76 61 72 69 61 62  eractive" variab
9280: 6c 65 20 74 6f 20 74 63 6c 73 68 2e 0a 0a 32 32  le to tclsh...22
9290: 33 2e 20 38 2f 32 37 2f 39 33 20 41 64 64 65 64  3. 8/27/93 Added
92a0: 20 70 72 6f 63 65 64 75 72 65 20 54 63 6c 5f 46   procedure Tcl_F
92b0: 69 6c 65 50 65 72 6d 69 73 73 69 6f 6e 73 20 74  ilePermissions t
92c0: 6f 20 72 65 74 75 72 6e 20 77 68 65 74 68 65 72  o return whether
92d0: 20 61 0a 67 69 76 65 6e 20 66 69 6c 65 20 63 61   a.given file ca
92e0: 6e 20 62 65 20 72 65 61 64 20 6f 72 20 77 72 69  n be read or wri
92f0: 74 74 65 6e 20 6f 72 20 62 6f 74 68 2e 20 20 4d  tten or both.  M
9300: 6f 64 69 66 69 65 64 20 54 63 6c 5f 45 6e 74 65  odified Tcl_Ente
9310: 72 46 69 6c 65 0a 74 6f 20 74 61 6b 65 20 61 20  rFile.to take a 
9320: 70 65 72 6d 69 73 73 69 6f 6e 73 20 6d 61 73 6b  permissions mask
9330: 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 65 70   rather than sep
9340: 61 72 61 74 65 20 72 65 61 64 20 61 6e 64 20 77  arate read and w
9350: 72 69 74 65 20 61 72 67 75 6d 65 6e 74 73 2e 0a  rite arguments..
9360: 0a 32 32 34 2e 20 38 2f 32 38 2f 39 33 20 46 69  .224. 8/28/93 Fi
9370: 78 65 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 20  xed performance 
9380: 62 75 67 20 69 6e 20 22 67 6c 6f 62 22 20 63 6f  bug in "glob" co
9390: 6d 6d 61 6e 64 20 28 75 6e 6e 65 63 65 73 73 61  mmand (unnecessa
93a0: 72 79 20 63 61 6c 6c 0a 74 6f 20 22 61 63 63 65  ry call.to "acce
93b0: 73 73 22 20 66 6f 72 20 65 61 63 68 20 66 69 6c  ss" for each fil
93c0: 65 20 63 61 75 73 65 64 20 61 20 35 2d 31 30 78  e caused a 5-10x
93d0: 20 73 6c 6f 77 2d 64 6f 77 6e 20 66 6f 72 20 62   slow-down for b
93e0: 69 67 20 64 69 72 65 63 74 6f 72 69 65 73 29 2e  ig directories).
93f0: 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ..--------------
9400: 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72  --- Released ver
9410: 73 69 6f 6e 20 37 2e 30 20 42 65 74 61 20 33 2c  sion 7.0 Beta 3,
9420: 20 38 2f 32 38 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d   8/28/93 -------
9430: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 32 35  -----------..225
9440: 2e 20 39 2f 39 2f 39 33 20 52 65 6e 61 6d 65 64  . 9/9/93 Renamed
9450: 20 72 65 67 65 78 70 2e 68 20 74 6f 20 74 63 6c   regexp.h to tcl
9460: 52 65 67 65 78 70 2e 68 20 74 6f 20 61 76 6f 69  Regexp.h to avoi
9470: 64 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68  d conflicts with
9480: 20 73 79 73 74 65 6d 0a 69 6e 63 6c 75 64 65 20   system.include 
9490: 66 69 6c 65 20 62 79 20 73 61 6d 65 20 6e 61 6d  file by same nam
94a0: 65 2e 0a 0a 32 32 36 2e 20 39 2f 39 2f 39 33 20  e...226. 9/9/93 
94b0: 41 64 64 65 64 20 54 63 6c 5f 44 6f 6e 74 43 61  Added Tcl_DontCa
94c0: 6c 6c 57 68 65 6e 44 65 6c 65 74 65 64 2e 0a 0a  llWhenDeleted...
94d0: 32 32 37 2e 20 39 2f 31 36 2f 39 33 20 43 68 61  227. 9/16/93 Cha
94e0: 6e 67 65 64 20 6e 6f 74 20 74 6f 20 63 61 6c 6c  nged not to call
94f0: 20 65 78 69 74 20 43 20 70 72 6f 63 65 64 75 72   exit C procedur
9500: 65 20 64 69 72 65 63 74 6c 79 3b 20 20 69 6e 73  e directly;  ins
9510: 74 65 61 64 0a 61 6c 77 61 79 73 20 69 6e 76 6f  tead.always invo
9520: 6b 65 20 22 65 78 69 74 22 20 54 63 6c 20 63 6f  ke "exit" Tcl co
9530: 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74 20 61 70  mmand so that ap
9540: 70 6c 69 63 61 74 69 6f 6e 20 63 61 6e 20 72 65  plication can re
9550: 64 65 66 69 6e 65 20 74 68 65 0a 63 6f 6d 6d 61  define the.comma
9560: 6e 64 20 74 6f 20 64 6f 20 61 64 64 69 74 69 6f  nd to do additio
9570: 6e 61 6c 20 63 6c 65 61 6e 75 70 2e 0a 0a 32 32  nal cleanup...22
9580: 38 2e 20 39 2f 31 37 2f 39 33 20 43 68 61 6e 67  8. 9/17/93 Chang
9590: 65 64 20 61 75 74 6f 2d 65 78 65 63 20 74 6f 20  ed auto-exec to 
95a0: 68 61 6e 64 6c 65 20 6e 61 6d 65 73 20 74 68 61  handle names tha
95b0: 74 20 63 6f 6e 74 61 69 6e 20 73 6c 61 73 68 65  t contain slashe
95c0: 73 0a 28 69 2e 65 2e 20 64 6f 6e 27 74 20 75 73  s.(i.e. don't us
95d0: 65 20 50 41 54 48 20 66 6f 72 20 74 68 65 6d 29  e PATH for them)
95e0: 2e 0a 0a 32 32 39 2e 20 39 2f 32 33 2f 39 33 20  ...229. 9/23/93 
95f0: 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 72 65  Fixed bug in "re
9600: 61 64 22 20 61 6e 64 20 22 67 65 74 73 22 20 63  ad" and "gets" c
9610: 6f 6d 6d 61 6e 64 73 20 77 68 65 72 65 20 74 68  ommands where th
9620: 65 79 20 64 69 64 6e 27 74 0a 63 6c 65 61 72 20  ey didn't.clear 
9630: 45 4f 46 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 0a  EOF conditions..
9640: 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
9650: 2d 2d 20 52 65 6c 65 61 73 65 64 20 76 65 72 73  -- Released vers
9660: 69 6f 6e 20 37 2e 30 2c 20 39 2f 32 39 2f 39 33  ion 7.0, 9/29/93
9670: 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
9680: 2d 2d 2d 0a 0a 32 33 30 2e 20 31 30 2f 37 2f 39  ---..230. 10/7/9
9690: 33 20 22 53 63 61 6e 22 20 63 6f 6d 6d 61 6e 64  3 "Scan" command
96a0: 20 77 61 73 6e 27 74 20 70 72 6f 70 65 72 6c 79   wasn't properly
96b0: 20 61 6c 69 67 6e 69 6e 67 20 74 68 69 6e 67 73   aligning things
96c0: 20 69 6e 20 6d 65 6d 6f 72 79 2c 0a 73 6f 20 73   in memory,.so s
96d0: 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c  egmentation faul
96e0: 74 73 20 63 6f 75 6c 64 20 61 72 69 73 65 20 75  ts could arise u
96f0: 6e 64 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d  nder some circum
9700: 73 74 61 6e 63 65 73 2e 0a 0a 32 33 31 2e 20 31  stances...231. 1
9710: 30 2f 37 2f 39 33 20 46 69 78 65 64 20 62 75 67  0/7/93 Fixed bug
9720: 20 69 6e 20 54 63 6c 5f 43 6f 6e 76 65 72 74 45   in Tcl_ConvertE
9730: 6c 65 6d 65 6e 74 20 77 68 65 72 65 20 69 74 20  lement where it 
9740: 66 6f 72 67 6f 74 20 74 6f 0a 62 61 63 6b 73 6c  forgot to.backsl
9750: 61 73 68 20 6c 65 61 64 69 6e 67 20 63 75 72 6c  ash leading curl
9760: 79 20 62 72 61 63 65 20 77 68 65 6e 20 63 72 65  y brace when cre
9770: 61 74 69 6e 67 20 6c 69 73 74 73 2e 0a 0a 32 33  ating lists...23
9780: 32 2e 20 31 30 2f 37 2f 39 33 20 45 6c 69 6d 69  2. 10/7/93 Elimi
9790: 6e 61 74 65 64 20 64 65 70 65 6e 64 65 6e 63 79  nated dependency
97a0: 20 6f 66 20 74 63 6c 4d 61 69 6e 2e 63 20 6f 6e   of tclMain.c on
97b0: 20 74 63 6c 49 6e 74 2e 68 20 61 6e 64 0a 74 63   tclInt.h and.tc
97c0: 6c 55 6e 69 78 2e 68 2c 20 73 6f 20 74 68 61 74  lUnix.h, so that
97d0: 20 70 65 6f 70 6c 65 20 63 61 6e 20 63 6f 70 79   people can copy
97e0: 20 74 68 65 20 66 69 6c 65 20 6f 75 74 20 6f 66   the file out of
97f0: 20 74 68 65 20 54 63 6c 20 73 6f 75 72 63 65 0a   the Tcl source.
9800: 64 69 72 65 63 74 6f 72 79 20 74 6f 20 6d 61 6b  directory to mak
9810: 65 20 6d 6f 64 69 66 69 65 64 20 70 72 69 76 61  e modified priva
9820: 74 65 20 76 65 72 73 69 6f 6e 73 2e 0a 0a 32 33  te versions...23
9830: 33 2e 20 31 30 2f 38 2f 39 33 20 46 69 78 65 64  3. 10/8/93 Fixed
9840: 20 62 75 67 20 69 6e 20 61 75 74 6f 2d 6c 6f 61   bug in auto-loa
9850: 64 65 72 20 74 68 61 74 20 72 65 76 65 72 73 65  der that reverse
9860: 64 20 74 68 65 20 70 72 69 6f 72 69 74 79 20 6f  d the priority o
9870: 72 64 65 72 0a 6f 66 20 65 6e 74 72 69 65 73 20  rder.of entries 
9880: 69 6e 20 61 75 74 6f 5f 70 61 74 68 20 66 6f 72  in auto_path for
9890: 20 6e 65 77 2d 73 74 79 6c 65 20 69 6e 64 65 78   new-style index
98a0: 20 66 69 6c 65 73 2e 20 20 4e 6f 77 20 74 68 69   files.  Now thi
98b0: 6e 67 73 20 61 72 65 0a 62 61 63 6b 20 74 6f 20  ngs are.back to 
98c0: 74 68 65 20 77 61 79 20 74 68 65 79 20 77 65 72  the way they wer
98d0: 65 20 62 65 66 6f 72 65 20 33 2e 30 3a 20 20 66  e before 3.0:  f
98e0: 69 72 73 74 20 69 6e 20 61 75 74 6f 5f 70 61 74  irst in auto_pat
98f0: 68 20 69 73 20 61 6c 77 61 79 73 0a 68 69 67 68  h is always.high
9900: 65 73 74 20 70 72 69 6f 72 69 74 79 2e 0a 0a 32  est priority...2
9910: 33 34 2e 20 31 30 2f 31 33 2f 39 33 20 46 69 78  34. 10/13/93 Fix
9920: 65 64 20 62 75 67 20 77 68 65 72 65 20 54 63 6c  ed bug where Tcl
9930: 5f 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65 74 65  _CommandComplete
9940: 20 64 69 64 6e 27 74 20 72 65 63 6f 67 6e 69 7a   didn't recogniz
9950: 65 0a 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 74  e.comments and t
9960: 72 65 61 74 20 74 68 65 6d 20 61 73 20 73 75 63  reat them as suc
9970: 68 2e 20 20 54 68 75 73 20 69 66 20 79 6f 75 20  h.  Thus if you 
9980: 74 79 70 65 64 20 74 68 65 20 6c 69 6e 65 0a 20  typed the line. 
9990: 20 20 20 23 20 7b 0a 69 6e 74 65 72 61 63 74 69     # {.interacti
99a0: 76 65 6c 79 2c 20 54 63 6c 20 77 6f 75 6c 64 20  vely, Tcl would 
99b0: 74 68 69 6e 6b 20 74 68 61 74 20 74 68 65 20 63  think that the c
99c0: 6f 6d 6d 61 6e 64 20 77 61 73 6e 27 74 20 63 6f  ommand wasn't co
99d0: 6d 70 6c 65 74 65 20 61 6e 64 0a 77 61 69 74 20  mplete and.wait 
99e0: 66 6f 72 20 6d 6f 72 65 20 69 6e 70 75 74 20 62  for more input b
99f0: 65 66 6f 72 65 20 65 76 61 6c 75 61 74 69 6e 67  efore evaluating
9a00: 20 74 68 65 20 73 63 72 69 70 74 2e 0a 0a 32 33   the script...23
9a10: 35 2e 20 31 30 2f 31 34 2f 39 33 20 46 69 78 65  5. 10/14/93 Fixe
9a20: 64 20 62 75 67 20 77 68 65 72 65 20 22 72 65 67  d bug where "reg
9a30: 73 75 62 22 20 64 69 64 6e 27 74 20 73 65 74 20  sub" didn't set 
9a40: 74 68 65 20 6f 75 74 70 75 74 20 76 61 72 69 61  the output varia
9a50: 62 6c 65 0a 69 66 20 74 68 65 20 69 6e 70 75 74  ble.if the input
9a60: 20 73 74 72 69 6e 67 20 77 61 73 20 65 6d 70 74   string was empt
9a70: 79 2e 0a 0a 32 33 36 2e 20 31 30 2f 32 33 2f 39  y...236. 10/23/9
9a80: 33 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72  3 Fixed bug wher
9a90: 65 20 54 63 6c 5f 43 72 65 61 74 65 50 69 70 65  e Tcl_CreatePipe
9aa0: 6c 69 6e 65 20 64 69 64 6e 27 74 20 63 6c 6f 73  line didn't clos
9ab0: 65 20 6f 66 66 20 65 6e 6f 75 67 68 0a 66 69 6c  e off enough.fil
9ac0: 65 20 64 65 73 63 72 69 70 74 6f 72 73 20 69 6e  e descriptors in
9ad0: 20 63 68 69 6c 64 20 70 72 6f 63 65 73 73 65 73   child processes
9ae0: 2c 20 63 61 75 73 69 6e 67 20 63 68 69 6c 64 72  , causing childr
9af0: 65 6e 20 6e 6f 74 20 74 6f 20 65 78 69 74 0a 70  en not to exit.p
9b00: 72 6f 70 65 72 6c 79 20 69 6e 20 73 6f 6d 65 20  roperly in some 
9b10: 63 61 73 65 73 2e 0a 0a 32 33 37 2e 20 31 30 2f  cases...237. 10/
9b20: 32 38 2f 39 33 20 43 68 61 6e 67 65 64 20 22 6c  28/93 Changed "l
9b30: 69 73 74 22 20 61 6e 64 20 22 63 6f 6e 63 61 74  ist" and "concat
9b40: 22 20 63 6f 6d 6d 61 6e 64 73 20 6e 6f 74 20 74  " commands not t
9b50: 6f 20 67 65 6e 65 72 61 74 65 0a 65 72 72 6f 72  o generate.error
9b60: 73 20 69 66 20 67 69 76 65 6e 20 7a 65 72 6f 20  s if given zero 
9b70: 61 72 67 75 6d 65 6e 74 73 2c 20 62 75 74 20 69  arguments, but i
9b80: 6e 73 74 65 61 64 20 74 6f 20 6a 75 73 74 20 72  nstead to just r
9b90: 65 74 75 72 6e 20 61 6e 20 65 6d 70 74 79 0a 73  eturn an empty.s
9ba0: 74 72 69 6e 67 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  tring...--------
9bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
9bc0: 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 31 2c 20  ed version 7.1, 
9bd0: 31 31 2f 34 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d  11/4/93 --------
9be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4e 6f 74 65  ----------..Note
9bf0: 3a 20 74 68 65 72 65 20 69 73 20 6e 6f 20 37 2e  : there is no 7.
9c00: 32 20 72 65 6c 65 61 73 65 2e 20 20 49 74 20 77  2 release.  It w
9c10: 61 73 20 66 6c 61 77 65 64 20 61 6e 64 20 77 61  as flawed and wa
9c20: 73 20 74 68 75 73 20 77 69 74 68 64 72 61 77 6e  s thus withdrawn
9c30: 0a 73 68 6f 72 74 6c 79 20 61 66 74 65 72 20 69  .shortly after i
9c40: 74 20 77 61 73 20 72 65 6c 65 61 73 65 64 2e 0a  t was released..
9c50: 0a 32 33 38 2e 20 31 31 2f 31 30 2f 39 33 20 54  .238. 11/10/93 T
9c60: 63 6c 4d 61 69 6e 2e 63 20 64 69 64 6e 27 74 20  clMain.c didn't 
9c70: 63 6f 6d 70 69 6c 65 20 6f 6e 20 73 6f 6d 65 20  compile on some 
9c80: 73 79 73 74 65 6d 73 20 62 65 63 61 75 73 65 20  systems because 
9c90: 6f 66 0a 52 5f 4f 4b 20 69 6e 20 63 61 6c 6c 20  of.R_OK in call 
9ca0: 74 6f 20 22 61 63 63 65 73 73 22 2e 20 20 43 68  to "access".  Ch
9cb0: 61 6e 67 65 64 20 74 6f 20 65 6c 69 6d 69 6e 61  anged to elimina
9cc0: 74 65 20 63 61 6c 6c 20 74 6f 20 22 61 63 63 65  te call to "acce
9cd0: 73 73 22 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ss"...----------
9ce0: 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
9cf0: 20 76 65 72 73 69 6f 6e 20 37 2e 33 2c 20 31 31   version 7.3, 11
9d00: 2f 32 36 2f 39 33 20 2d 2d 2d 2d 2d 2d 2d 2d 2d  /26/93 ---------
9d10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 33 39 2e 20  ---------..239. 
9d20: 31 31 2f 36 2f 39 33 20 4d 6f 64 69 66 69 65 64  11/6/93 Modified
9d30: 20 22 6c 69 6e 64 65 78 22 2c 20 22 6c 69 6e 73   "lindex", "lins
9d40: 65 72 74 22 2c 20 22 6c 72 61 6e 67 65 22 2c 20  ert", "lrange", 
9d50: 61 6e 64 20 22 6c 72 65 70 6c 61 63 65 22 0a 73  and "lreplace".s
9d60: 6f 20 74 68 61 74 20 22 65 6e 64 22 20 63 61 6e  o that "end" can
9d70: 20 62 65 20 73 70 65 63 69 66 69 65 64 20 61 73   be specified as
9d80: 20 61 6e 20 69 6e 64 65 78 2e 0a 0a 32 34 30 2e   an index...240.
9d90: 20 31 31 2f 36 2f 39 33 20 4d 6f 64 69 66 69 65   11/6/93 Modifie
9da0: 64 20 22 61 70 70 65 6e 64 22 20 61 6e 64 20 22  d "append" and "
9db0: 6c 61 70 70 65 6e 64 22 20 74 6f 20 61 6c 6c 6f  lappend" to allo
9dc0: 77 20 6f 6e 6c 79 20 74 77 6f 0a 77 6f 72 64 73  w only two.words
9dd0: 20 74 6f 74 61 6c 20 28 69 2e 65 2e 2c 20 6e 6f   total (i.e., no
9de0: 74 68 69 6e 67 20 74 6f 20 61 70 70 65 6e 64 29  thing to append)
9df0: 20 77 69 74 68 6f 75 74 20 67 65 6e 65 72 61 74   without generat
9e00: 69 6e 67 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 32  ing an error...2
9e10: 34 31 2e 20 31 32 2f 32 2f 39 33 20 43 68 61 6e  41. 12/2/93 Chan
9e20: 67 65 64 20 74 6f 20 75 73 65 20 45 41 47 41 49  ged to use EAGAI
9e30: 4e 20 61 73 20 74 68 65 20 65 72 72 6e 6f 20 66  N as the errno f
9e40: 6f 72 20 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 0a  or non-blocking.
9e50: 49 2f 4f 20 69 6e 73 74 65 61 64 20 6f 66 20 45  I/O instead of E
9e60: 57 4f 55 4c 44 42 4c 4f 43 4b 3a 20 20 74 68 69  WOULDBLOCK:  thi
9e70: 73 20 73 68 6f 75 6c 64 20 66 69 78 20 70 72 6f  s should fix pro
9e80: 62 6c 65 6d 20 77 68 65 72 65 20 6e 6f 6e 2d 62  blem where non-b
9e90: 6c 6f 63 6b 69 6e 67 0a 49 2f 4f 20 64 69 64 6e  locking.I/O didn
9ea0: 27 74 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c  't work correctl
9eb0: 79 20 6f 6e 20 53 79 73 74 65 6d 2d 56 20 73 79  y on System-V sy
9ec0: 73 74 65 6d 73 2e 0a 0a 32 34 32 2e 20 31 32 2f  stems...242. 12/
9ed0: 32 32 2f 39 33 20 46 69 78 65 64 20 62 75 67 20  22/93 Fixed bug 
9ee0: 69 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77  in expressions w
9ef0: 68 65 72 65 20 63 61 6e 63 65 6c 6c 65 64 20 65  here cancelled e
9f00: 76 61 6c 75 61 74 69 6f 6e 0a 77 61 73 6e 27 74  valuation.wasn't
9f10: 20 61 6c 77 61 79 73 20 77 6f 72 6b 69 6e 67 20   always working 
9f20: 63 6f 72 72 65 63 74 6c 79 20 28 65 2e 67 2e 20  correctly (e.g. 
9f30: 22 73 65 74 20 6f 6e 65 20 31 3b 20 65 76 61 6c  "set one 1; eval
9f40: 20 7b 31 20 7c 7c 20 31 2f 24 6f 6e 65 7d 22 0a   {1 || 1/$one}".
9f50: 66 61 69 6c 65 64 20 77 69 74 68 20 61 20 64 69  failed with a di
9f60: 76 69 64 65 20 62 79 20 7a 65 72 6f 20 65 72 72  vide by zero err
9f70: 6f 72 29 2e 0a 0a 32 34 33 2e 20 31 2f 36 2f 39  or)...243. 1/6/9
9f80: 34 20 43 68 61 6e 67 65 64 20 54 43 4c 5f 56 4f  4 Changed TCL_VO
9f90: 4c 41 54 49 4c 45 20 64 65 66 69 6e 69 74 69 6f  LATILE definitio
9fa0: 6e 20 66 72 6f 6d 20 2d 31 20 74 6f 20 74 68 65  n from -1 to the
9fb0: 20 61 64 64 72 65 73 73 20 6f 66 0a 61 20 64 75   address of.a du
9fc0: 6d 6d 79 20 70 72 6f 63 65 64 75 72 65 20 54 63  mmy procedure Tc
9fd0: 6c 5f 56 6f 6c 61 74 69 6c 65 2c 20 73 69 6e 63  l_Volatile, sinc
9fe0: 65 20 2d 31 20 63 61 75 73 65 73 20 70 6f 72 74  e -1 causes port
9ff0: 61 62 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73  ability problems
a000: 20 6f 6e 0a 73 6f 6d 65 20 6d 61 63 68 69 6e 65   on.some machine
a010: 73 20 28 65 2e 67 2e 2c 20 43 72 61 79 73 29 2e  s (e.g., Crays).
a020: 0a 0a 32 34 34 2e 20 32 2f 34 2f 39 34 20 41 64  ..244. 2/4/94 Ad
a030: 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
a040: 75 6e 61 72 79 20 70 6c 75 73 2e 0a 0a 32 34 35  unary plus...245
a050: 2e 20 32 2f 31 37 2f 39 34 20 43 68 61 6e 67 65  . 2/17/94 Change
a060: 64 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45  d Tcl_RecordAndE
a070: 76 61 6c 20 61 6e 64 20 22 68 69 73 74 6f 72 79  val and "history
a080: 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 0a 63 61 6c  " command to.cal
a090: 6c 20 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c  l Tcl_GlobalEval
a0a0: 20 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f   instead of Tcl_
a0b0: 45 76 61 6c 2e 20 20 4f 74 68 65 72 77 69 73 65  Eval.  Otherwise
a0c0: 2c 20 69 6e 76 6f 63 61 74 69 6f 6e 20 6f 66 0a  , invocation of.
a0d0: 74 68 65 73 65 20 66 61 63 69 6c 69 74 69 65 73  these facilities
a0e0: 20 69 6e 20 6e 65 73 74 65 64 20 70 72 6f 63 65   in nested proce
a0f0: 64 75 72 65 73 20 63 61 6e 20 63 61 75 73 65 20  dures can cause 
a100: 75 6e 77 61 6e 74 65 64 20 72 65 73 75 6c 74 73  unwanted results
a110: 2e 0a 0a 32 34 36 2e 20 32 2f 31 37 2f 39 34 20  ...246. 2/17/94 
a120: 46 69 78 65 64 20 62 75 67 20 69 6e 20 74 63 6c  Fixed bug in tcl
a130: 45 78 70 72 2e 63 20 77 68 65 72 65 20 61 6e 20  Expr.c where an 
a140: 65 78 70 72 65 73 73 69 6f 6e 20 73 75 63 68 20  expression such 
a150: 61 73 0a 22 65 78 70 72 20 7b 22 31 32 33 39 38  as."expr {"12398
a160: 37 31 32 39 33 38 37 38 38 32 33 34 2d 31 32 39  712938788234-129
a170: 38 33 37 39 22 20 21 3d 20 22 22 7d 22 20 74 72  8379" != ""}" tr
a180: 69 67 67 65 72 73 20 61 6e 20 69 6e 74 65 67 65  iggers an intege
a190: 72 0a 6f 76 65 72 66 6c 6f 77 20 65 72 72 6f 72  r.overflow error
a1a0: 20 66 6f 72 20 74 68 65 20 6e 75 6d 62 65 72 20   for the number 
a1b0: 69 6e 20 71 75 6f 74 65 73 2c 20 65 76 65 6e 20  in quotes, even 
a1c0: 74 68 6f 75 67 68 20 69 74 20 69 73 6e 27 74 20  though it isn't 
a1d0: 72 65 61 6c 6c 79 0a 61 20 70 72 6f 70 65 72 20  really.a proper 
a1e0: 69 6e 74 65 67 65 72 20 61 6e 79 77 61 79 2e 0a  integer anyway..
a1f0: 0a 32 34 37 2e 20 32 2f 31 39 2f 39 34 20 41 64  .247. 2/19/94 Ad
a200: 64 65 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72  ded new procedur
a210: 65 20 54 63 6c 5f 44 53 74 72 69 6e 67 47 65 74  e Tcl_DStringGet
a220: 52 65 73 75 6c 74 20 74 6f 20 6d 6f 76 65 20 72  Result to move r
a230: 65 73 75 6c 74 0a 66 72 6f 6d 20 69 6e 74 65 72  esult.from inter
a240: 70 72 65 74 65 72 20 74 6f 20 61 20 64 79 6e 61  preter to a dyna
a250: 6d 69 63 20 73 74 72 69 6e 67 2e 0a 0a 32 34 38  mic string...248
a260: 2e 20 32 2f 31 39 2f 39 34 20 46 69 78 65 64 20  . 2/19/94 Fixed 
a270: 62 75 67 20 69 6e 20 54 63 6c 5f 44 53 74 72 69  bug in Tcl_DStri
a280: 6e 67 52 65 73 75 6c 74 20 74 68 61 74 20 63 61  ngResult that ca
a290: 75 73 65 64 20 69 74 20 74 6f 20 6f 76 65 72 77  used it to overw
a2a0: 72 69 74 65 0a 74 68 65 20 63 6f 6e 74 65 6e 74  rite.the content
a2b0: 73 20 6f 66 20 61 20 73 74 61 74 69 63 20 72 65  s of a static re
a2c0: 73 75 6c 74 20 69 6e 20 73 6f 6d 65 20 73 69 74  sult in some sit
a2d0: 75 61 74 69 6f 6e 73 2e 20 20 54 68 69 73 20 63  uations.  This c
a2e0: 61 6e 20 63 61 75 73 65 0a 62 69 7a 61 72 72 65  an cause.bizarre
a2f0: 20 65 72 72 6f 72 73 20 73 75 63 68 20 61 73 20   errors such as 
a300: 76 61 72 69 61 62 6c 65 73 20 73 75 64 64 65 6e  variables sudden
a310: 6c 79 20 68 61 76 69 6e 67 20 65 6d 70 74 79 20  ly having empty 
a320: 76 61 6c 75 65 73 2e 0a 0a 32 34 39 2e 20 32 2f  values...249. 2/
a330: 32 31 2f 39 34 20 46 69 78 65 64 20 62 75 67 20  21/94 Fixed bug 
a340: 69 6e 20 54 63 6c 5f 41 70 70 65 6e 64 45 6c 65  in Tcl_AppendEle
a350: 6d 65 6e 74 2c 20 54 63 6c 5f 44 53 74 72 69 6e  ment, Tcl_DStrin
a360: 67 41 70 70 65 6e 64 45 6c 65 6d 65 6e 74 2c 0a  gAppendElement,.
a370: 61 6e 64 20 74 68 65 20 22 6c 61 70 70 65 6e 64  and the "lappend
a380: 22 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20 63  " command that c
a390: 61 75 73 65 64 20 69 6d 70 72 6f 70 65 72 20 6f  aused improper o
a3a0: 6d 69 73 73 69 6f 6e 20 6f 66 20 61 20 73 65 70  mission of a sep
a3b0: 61 72 61 74 6f 72 0a 73 70 61 63 65 20 69 6e 20  arator.space in 
a3c0: 73 6f 6d 65 20 63 61 73 65 73 2e 20 20 46 6f 72  some cases.  For
a3d0: 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 73 63   example, the sc
a3e0: 72 69 70 74 0a 20 20 20 20 73 65 74 20 78 20 22  ript.    set x "
a3f0: 61 62 63 7b 22 3b 20 6c 61 70 70 65 6e 64 20 78  abc{"; lappend x
a400: 20 22 64 65 66 22 0a 75 73 65 64 20 74 6f 20 72   "def".used to r
a410: 65 74 75 72 6e 20 74 68 65 20 72 65 73 75 6c 74  eturn the result
a420: 20 22 61 62 63 7b 64 65 66 22 20 69 6e 73 74 65   "abc{def" inste
a430: 61 64 20 6f 66 20 22 61 62 63 7b 20 64 65 66 22  ad of "abc{ def"
a440: 2e 0a 0a 32 35 30 2e 20 33 2f 33 2f 39 34 20 54  ...250. 3/3/94 T
a450: 63 6c 5f 43 6f 6e 76 65 72 74 45 6c 65 6d 65 6e  cl_ConvertElemen
a460: 74 20 77 61 73 20 6f 75 74 70 75 74 74 69 6e 67  t was outputting
a470: 20 65 6d 70 74 79 20 65 6c 65 6d 65 6e 74 73 20   empty elements 
a480: 61 73 20 5c 30 20 69 66 0a 54 43 4c 5f 44 4f 4e  as \0 if.TCL_DON
a490: 54 5f 55 53 45 5f 42 52 41 43 45 53 20 77 61 73  T_USE_BRACES was
a4a0: 20 73 65 74 2e 20 20 54 68 69 73 20 64 65 70 65   set.  This depe
a4b0: 6e 64 73 20 6f 6e 20 6f 6c 64 20 70 72 65 2d 37  nds on old pre-7
a4c0: 2e 30 20 6d 65 61 6e 69 6e 67 20 6f 66 0a 5c 30  .0 meaning of.\0
a4d0: 2c 20 77 68 69 63 68 20 69 73 20 6e 6f 20 6c 6f  , which is no lo
a4e0: 6e 67 65 72 20 69 6e 20 65 66 66 65 63 74 2c 20  nger in effect, 
a4f0: 73 6f 20 69 74 20 64 69 64 6e 27 74 20 72 65 61  so it didn't rea
a500: 6c 6c 79 20 77 6f 72 6b 2e 20 20 43 68 61 6e 67  lly work.  Chang
a510: 65 64 0a 74 6f 20 6f 75 74 70 75 74 20 65 6d 70  ed.to output emp
a520: 74 79 20 65 6c 65 6d 65 6e 74 73 20 61 73 20 7b  ty elements as {
a530: 7d 20 61 6c 77 61 79 73 2e 0a 0a 32 35 31 2e 20  } always...251. 
a540: 33 2f 33 2f 39 34 20 52 65 6e 61 6d 65 64 20 54  3/3/94 Renamed T
a550: 63 6c 5f 44 53 74 72 69 6e 67 54 72 75 6e 63 20  cl_DStringTrunc 
a560: 74 6f 20 54 63 6c 5f 44 53 74 72 69 6e 67 53 65  to Tcl_DStringSe
a570: 74 4c 65 6e 67 74 68 20 61 6e 64 20 65 78 74 65  tLength and exte
a580: 6e 64 65 64 0a 69 74 20 73 6f 20 74 68 61 74 20  nded.it so that 
a590: 69 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74  it can be used t
a5a0: 6f 20 6c 65 6e 67 74 68 65 6e 20 61 20 73 74 72  o lengthen a str
a5b0: 69 6e 67 20 61 73 20 77 65 6c 6c 20 61 73 20 73  ing as well as s
a5c0: 68 6f 72 74 65 6e 20 69 74 2e 0a 54 63 6c 5f 44  horten it..Tcl_D
a5d0: 53 74 72 69 6e 67 54 72 75 6e 63 20 69 73 20 64  StringTrunc is d
a5e0: 65 66 69 6e 65 64 20 61 73 20 61 20 6d 61 63 72  efined as a macr
a5f0: 6f 20 66 6f 72 20 62 61 63 6b 77 61 72 64 20 63  o for backward c
a600: 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c 20 62 75  ompatibility, bu
a610: 74 0a 69 74 20 69 73 20 64 65 70 72 65 63 61 74  t.it is deprecat
a620: 65 64 2e 0a 0a 32 35 32 2e 20 33 2f 33 2f 39 34  ed...252. 3/3/94
a630: 20 41 64 64 65 64 20 54 63 6c 5f 41 6c 6c 6f 77   Added Tcl_Allow
a640: 45 78 63 65 70 74 69 6f 6e 73 20 70 72 6f 63 65  Exceptions proce
a650: 64 75 72 65 2e 0a 0a 32 35 33 2e 20 33 2f 31 33  dure...253. 3/13
a660: 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69 6e  /94 Fixed bug in
a670: 20 54 63 6c 5f 46 6f 72 6d 61 74 43 6d 64 20 74   Tcl_FormatCmd t
a680: 68 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65 20  hat could cause 
a690: 22 66 6f 72 6d 61 74 22 0a 74 6f 20 6d 69 73 2d  "format".to mis-
a6a0: 62 65 68 61 76 65 20 6f 6e 20 36 34 2d 62 69 74  behave on 64-bit
a6b0: 20 42 69 67 2d 45 6e 64 69 61 6e 20 6d 61 63 68   Big-Endian mach
a6c0: 69 6e 65 73 2e 0a 0a 32 35 34 2e 20 33 2f 31 33  ines...254. 3/13
a6d0: 2f 39 34 20 43 68 61 6e 67 65 64 20 74 6f 20 75  /94 Changed to u
a6e0: 73 65 20 76 66 6f 72 6b 20 69 6e 73 74 65 61 64  se vfork instead
a6f0: 20 6f 66 20 66 6f 72 6b 20 6f 6e 20 73 79 73 74   of fork on syst
a700: 65 6d 73 20 77 68 65 72 65 0a 76 66 6f 72 6b 20  ems where.vfork 
a710: 65 78 69 73 74 73 2e 0a 0a 32 35 35 2e 20 33 2f  exists...255. 3/
a720: 32 33 2f 39 34 20 46 69 78 65 64 20 62 75 67 20  23/94 Fixed bug 
a730: 69 6e 20 65 78 70 72 65 73 73 69 6f 6e 73 20 77  in expressions w
a740: 68 65 72 65 20 3f 3a 20 64 69 64 6e 27 74 20 61  here ?: didn't a
a750: 73 73 6f 63 69 61 74 65 0a 72 69 67 68 74 2d 74  ssociate.right-t
a760: 6f 2d 6c 65 66 74 20 61 73 20 74 68 65 79 20 73  o-left as they s
a770: 68 6f 75 6c 64 2e 0a 0a 32 35 36 2e 20 34 2f 33  hould...256. 4/3
a780: 2f 39 34 20 46 69 78 65 64 20 22 65 78 65 63 22  /94 Fixed "exec"
a790: 20 74 6f 20 66 6c 75 73 68 20 61 6e 79 20 66 69   to flush any fi
a7a0: 6c 65 73 20 75 73 65 64 20 69 6e 20 3e 40 20 6f  les used in >@ o
a7b0: 72 20 3e 26 40 0a 72 65 64 69 72 65 63 74 69 6f  r >&@.redirectio
a7c0: 6e 20 69 6e 20 65 78 65 63 2c 20 73 6f 20 74 68  n in exec, so th
a7d0: 61 74 20 64 61 74 61 20 62 75 66 66 65 72 65 64  at data buffered
a7e0: 20 66 6f 72 20 74 68 65 6d 20 69 73 20 77 72 69   for them is wri
a7f0: 74 74 65 6e 0a 62 65 66 6f 72 65 20 61 6e 79 20  tten.before any 
a800: 6e 65 77 20 64 61 74 61 20 61 64 64 65 64 20 62  new data added b
a810: 79 20 74 68 65 20 73 75 62 70 72 6f 63 65 73 73  y the subprocess
a820: 2e 0a 0a 32 35 37 2e 20 34 2f 33 2f 39 34 20 41  ...257. 4/3/94 A
a830: 64 64 65 64 20 22 73 75 62 73 74 22 20 63 6f 6d  dded "subst" com
a840: 6d 61 6e 64 2e 0a 0a 32 35 38 2e 20 35 2f 32 30  mand...258. 5/20
a850: 2f 39 34 20 54 68 65 20 74 63 6c 73 68 20 6d 61  /94 The tclsh ma
a860: 69 6e 20 70 72 6f 67 72 61 6d 20 69 73 20 6e 6f  in program is no
a870: 77 20 63 61 6c 6c 65 64 20 54 63 6c 5f 4d 61 69  w called Tcl_Mai
a880: 6e 3b 20 20 74 63 6c 41 70 70 49 6e 69 74 2e 63  n;  tclAppInit.c
a890: 0a 68 61 73 20 61 20 22 6d 61 69 6e 22 20 70 72  .has a "main" pr
a8a0: 6f 63 65 64 75 72 65 20 74 68 61 74 20 63 61 6c  ocedure that cal
a8b0: 6c 73 20 54 63 6c 5f 4d 61 69 6e 2e 20 20 54 68  ls Tcl_Main.  Th
a8c0: 69 73 20 6d 61 6b 65 73 20 69 74 20 65 61 73 69  is makes it easi
a8d0: 65 72 20 74 6f 20 75 73 65 0a 54 63 6c 20 77 69  er to use.Tcl wi
a8e0: 74 68 20 43 2b 2b 20 70 72 6f 67 72 61 6d 73 2c  th C++ programs,
a8f0: 20 77 68 69 63 68 20 6e 65 65 64 20 74 68 65 69   which need thei
a900: 72 20 6f 77 6e 20 6d 61 69 6e 20 70 72 6f 67 72  r own main progr
a910: 61 6d 73 2c 20 61 6e 64 20 69 74 20 61 6c 73 6f  ams, and it also
a920: 0a 61 6c 6c 6f 77 73 20 61 6e 20 61 70 70 6c 69  .allows an appli
a930: 63 61 74 69 6f 6e 20 74 6f 20 70 72 65 66 69 6c  cation to prefil
a940: 74 65 72 20 74 68 65 20 61 72 67 75 6d 65 6e 74  ter the argument
a950: 20 6c 69 73 74 20 62 65 66 6f 72 65 20 63 61 6c   list before cal
a960: 6c 69 6e 67 0a 54 63 6c 5f 4d 61 69 6e 2e 0a 2a  ling.Tcl_Main..*
a970: 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
a980: 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a  OMPATIBILITY ***
a990: 0a 0a 32 35 39 2e 20 36 2f 36 2f 39 34 20 46 69  ..259. 6/6/94 Fi
a9a0: 78 65 64 20 62 75 67 20 69 6e 20 70 72 6f 63 65  xed bug in proce
a9b0: 64 75 72 65 20 72 65 74 75 72 6e 73 20 77 68 65  dure returns whe
a9c0: 72 65 20 74 68 65 20 65 72 72 6f 72 49 6e 66 6f  re the errorInfo
a9d0: 20 76 61 72 69 61 62 6c 65 0a 63 6f 75 6c 64 20   variable.could 
a9e0: 67 65 74 20 74 72 75 6e 63 61 74 65 64 20 69 66  get truncated if
a9f0: 20 61 6e 20 75 6e 73 65 74 20 74 72 61 63 65 20   an unset trace 
aa00: 77 61 73 20 69 6e 76 6f 6b 65 64 20 61 73 20 70  was invoked as p
aa10: 61 72 74 20 6f 66 20 72 65 74 75 72 6e 69 6e 67  art of returning
aa20: 0a 66 72 6f 6d 20 74 68 65 20 70 72 6f 63 65 64  .from the proced
aa30: 75 72 65 2e 0a 0a 32 36 30 2e 20 36 2f 31 33 2f  ure...260. 6/13/
aa40: 39 34 20 41 64 64 65 64 20 22 77 6f 72 64 73 74  94 Added "wordst
aa50: 61 72 74 22 20 61 6e 64 20 22 77 6f 72 64 65 6e  art" and "worden
aa60: 64 22 20 6f 70 74 69 6f 6e 73 20 74 6f 20 22 73  d" options to "s
aa70: 74 72 69 6e 67 22 20 63 6f 6d 6d 61 6e 64 2e 0a  tring" command..
aa80: 0a 32 36 31 2e 20 36 2f 32 37 2f 39 34 20 46 69  .261. 6/27/94 Fi
aa90: 78 65 64 20 62 75 67 20 69 6e 20 65 78 70 72 65  xed bug in expre
aaa0: 73 73 69 6f 6e 73 20 77 68 65 72 65 20 74 68 65  ssions where the
aab0: 79 20 64 69 64 6e 27 74 20 70 72 6f 70 65 72 6c  y didn't properl
aac0: 79 20 63 61 6e 63 65 6c 0a 74 68 65 20 65 76 61  y cancel.the eva
aad0: 6c 75 61 74 69 6f 6e 20 6f 66 20 6d 61 74 68 20  luation of math 
aae0: 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 26 26 2c  functions in &&,
aaf0: 20 7c 7c 2c 20 61 6e 64 20 3f 3a 2e 0a 0a 32 36   ||, and ?:...26
ab00: 32 2e 20 37 2f 31 31 2f 39 34 20 49 6e 63 6f 72  2. 7/11/94 Incor
ab10: 72 65 63 74 20 62 6f 6f 6c 65 61 6e 20 76 61 6c  rect boolean val
ab20: 75 65 73 2c 20 6c 69 6b 65 20 22 6f 67 6c 65 22  ues, like "ogle"
ab30: 2c 20 77 65 72 65 6e 27 74 20 62 65 69 6e 67 0a  , weren't being.
ab40: 68 61 6e 64 6c 65 64 20 70 72 6f 70 65 72 6c 79  handled properly
ab50: 2e 0a 0a 32 36 33 2e 20 37 2f 31 35 2f 39 34 20  ...263. 7/15/94 
ab60: 41 64 64 65 64 20 54 63 6c 5f 52 65 67 45 78 70  Added Tcl_RegExp
ab70: 43 6f 6d 70 69 6c 65 2c 20 54 63 6c 5f 52 65 67  Compile, Tcl_Reg
ab80: 45 78 70 45 78 65 63 2c 20 61 6e 64 20 54 63 6c  ExpExec, and Tcl
ab90: 5f 52 65 67 45 78 70 52 61 6e 67 65 2c 0a 77 68  _RegExpRange,.wh
aba0: 69 63 68 20 70 72 6f 76 69 64 65 20 6c 6f 77 65  ich provide lowe
abb0: 72 2d 6c 65 76 65 6c 20 61 63 63 65 73 73 20 74  r-level access t
abc0: 6f 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73  o regular expres
abd0: 73 69 6f 6e 20 70 61 74 74 65 72 6e 20 6d 61 74  sion pattern mat
abe0: 63 68 69 6e 67 2e 0a 0a 32 36 34 2e 20 37 2f 32  ching...264. 7/2
abf0: 32 2f 39 34 20 46 69 78 65 64 20 62 75 67 20 69  2/94 Fixed bug i
ac00: 6e 20 22 67 6c 6f 62 22 20 63 6f 6d 6d 61 6e 64  n "glob" command
ac10: 20 77 68 65 72 65 20 22 67 6c 6f 62 20 2d 6e 6f   where "glob -no
ac20: 63 6f 6d 70 6c 61 69 6e 20 7e 62 61 64 5f 75 73  complain ~bad_us
ac30: 65 72 22 0a 77 6f 75 6c 64 20 63 6f 6d 70 6c 61  er".would compla
ac40: 69 6e 20 61 62 6f 75 74 20 61 20 6d 69 73 73 69  in about a missi
ac50: 6e 67 20 75 73 65 72 2e 20 20 4e 6f 77 20 69 74  ng user.  Now it
ac60: 20 64 6f 65 73 6e 27 74 20 63 6f 6d 70 6c 61 69   doesn't complai
ac70: 6e 20 61 6e 79 6d 6f 72 65 2e 0a 0a 32 36 35 2e  n anymore...265.
ac80: 20 38 2f 34 2f 39 34 20 46 69 78 65 64 20 62 75   8/4/94 Fixed bu
ac90: 67 20 77 69 74 68 20 6c 69 6e 6b 65 64 20 76 61  g with linked va
aca0: 72 69 61 62 6c 65 73 20 77 68 65 72 65 20 74 68  riables where th
acb0: 65 79 20 64 69 64 6e 27 74 20 62 65 68 61 76 65  ey didn't behave
acc0: 0a 63 6f 72 72 65 63 74 6c 79 20 77 68 65 6e 20  .correctly when 
acd0: 61 63 63 65 73 73 65 64 20 76 69 61 20 75 70 76  accessed via upv
ace0: 61 72 73 2e 0a 0a 32 36 36 2e 20 38 2f 31 37 2f  ars...266. 8/17/
acf0: 39 34 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  94 Fixed bug in 
ad00: 54 63 6c 5f 45 76 61 6c 46 69 6c 65 20 77 68 65  Tcl_EvalFile whe
ad10: 72 65 20 69 74 20 64 69 64 6e 27 74 20 63 6c 65  re it didn't cle
ad20: 61 72 20 69 6e 74 65 72 70 2d 3e 72 65 73 75 6c  ar interp->resul
ad30: 74 2e 0a 0a 32 36 37 2e 20 38 2f 33 31 2f 39 34  t...267. 8/31/94
ad40: 20 4d 6f 64 69 66 69 65 64 20 22 6f 70 65 6e 22   Modified "open"
ad50: 20 63 6f 6d 6d 61 6e 64 20 73 6f 20 74 68 61 74   command so that
ad60: 20 65 72 72 6f 72 73 20 69 6e 20 65 78 65 63 2d   errors in exec-
ad70: 69 6e 67 0a 73 75 62 70 72 6f 63 65 73 73 65 73  ing.subprocesses
ad80: 20 61 72 65 20 72 65 74 75 72 6e 65 64 20 62 79   are returned by
ad90: 20 74 68 65 20 6f 70 65 6e 20 69 6d 6d 65 64 69   the open immedi
ada0: 61 74 65 6c 79 2c 20 72 61 74 68 65 72 20 74 68  ately, rather th
adb0: 61 6e 0a 62 65 69 6e 67 20 64 65 6c 61 79 65 64  an.being delayed
adc0: 20 75 6e 74 69 6c 20 74 68 65 20 22 63 6c 6f 73   until the "clos
add0: 65 22 20 69 73 20 65 78 65 63 75 74 65 64 2e 0a  e" is executed..
ade0: 0a 32 36 38 2e 20 39 2f 39 2f 39 34 20 4d 6f 64  .268. 9/9/94 Mod
adf0: 69 66 69 65 64 20 22 65 78 70 72 22 20 63 6f 6d  ified "expr" com
ae00: 6d 61 6e 64 20 74 6f 20 67 65 6e 65 72 61 74 65  mand to generate
ae10: 20 65 72 72 6f 72 73 20 66 6f 72 20 69 6e 74 65   errors for inte
ae20: 67 65 72 0a 6f 76 65 72 66 6c 6f 77 20 28 69 6e  ger.overflow (in
ae30: 63 6c 75 64 65 73 20 61 64 64 69 74 69 6f 6e 2c  cludes addition,
ae40: 20 73 75 62 74 72 61 63 74 69 6f 6e 2c 20 6e 65   subtraction, ne
ae50: 67 61 74 69 6f 6e 2c 20 6d 75 6c 74 69 70 6c 69  gation, multipli
ae60: 63 61 74 69 6f 6e 2c 0a 64 69 76 69 73 69 6f 6e  cation,.division
ae70: 29 2e 0a 0a 32 36 39 2e 20 39 2f 32 33 2f 39 34  )...269. 9/23/94
ae80: 20 4d 6f 64 69 66 69 65 64 20 22 72 65 67 73 75   Modified "regsu
ae90: 62 22 20 74 6f 20 72 65 74 75 72 6e 20 61 20 63  b" to return a c
aea0: 6f 75 6e 74 20 6f 66 20 74 68 65 20 6e 75 6d 62  ount of the numb
aeb0: 65 72 20 6f 66 0a 6d 61 74 63 68 65 73 20 61 6e  er of.matches an
aec0: 64 20 72 65 70 6c 61 63 65 6d 65 6e 74 73 2c 20  d replacements, 
aed0: 72 61 74 68 65 72 20 74 68 61 6e 20 30 2f 31 2e  rather than 0/1.
aee0: 0a 0a 32 37 39 2e 20 31 30 2f 34 2f 39 34 20 41  ..279. 10/4/94 A
aef0: 64 64 65 64 20 6e 65 77 20 66 65 61 74 75 72 65  dded new feature
af00: 73 20 74 6f 20 22 61 72 72 61 79 22 20 63 6f 6d  s to "array" com
af10: 6d 61 6e 64 3a 0a 20 20 20 20 2d 20 61 64 64 65  mand:.    - adde
af20: 64 20 22 67 65 74 22 20 61 6e 64 20 22 73 65 74  d "get" and "set
af30: 22 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 65  " commands for e
af40: 61 73 79 20 63 6f 6e 76 65 72 73 69 6f 6e 20 62  asy conversion b
af50: 65 74 77 65 65 6e 20 61 72 72 61 79 73 0a 20 20  etween arrays.  
af60: 20 20 20 20 61 6e 64 20 6c 69 73 74 73 2e 0a 20      and lists.. 
af70: 20 20 20 2d 20 61 64 64 65 64 20 22 65 78 69 73     - added "exis
af80: 74 73 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73  ts" command to s
af90: 65 65 20 69 66 20 61 20 76 61 72 69 61 62 6c 65  ee if a variable
afa0: 20 69 73 20 61 6e 20 61 72 72 61 79 2c 20 63 68   is an array, ch
afb0: 61 6e 67 65 64 0a 20 20 20 20 20 20 22 6e 61 6d  anged.      "nam
afc0: 65 73 22 20 61 6e 64 20 22 73 69 7a 65 22 20 63  es" and "size" c
afd0: 6f 6d 6d 61 6e 64 73 20 74 6f 20 74 72 65 61 74  ommands to treat
afe0: 20 61 20 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20   a non-existent 
aff0: 61 72 72 61 79 20 28 6f 72 20 73 63 61 6c 61 72  array (or scalar
b000: 0a 20 20 20 20 20 20 76 61 72 69 61 62 6c 65 29  .      variable)
b010: 20 6a 75 73 74 20 6c 69 6b 65 20 61 6e 20 65 6d   just like an em
b020: 70 74 79 20 6f 6e 65 2e 0a 20 20 20 20 2d 20 61  pty one..    - a
b030: 64 64 65 64 20 70 61 74 74 65 72 6e 20 6f 70 74  dded pattern opt
b040: 69 6f 6e 20 74 6f 20 22 6e 61 6d 65 73 22 20 63  ion to "names" c
b050: 6f 6d 6d 61 6e 64 2e 0a 0a 32 38 30 2e 20 31 30  ommand...280. 10
b060: 2f 36 2f 39 34 20 4d 6f 64 69 66 69 65 64 20 54  /6/94 Modified T
b070: 63 6c 5f 53 65 74 56 61 72 32 20 73 6f 20 74 68  cl_SetVar2 so th
b080: 61 74 20 72 65 61 64 20 74 72 61 63 65 73 20 6f  at read traces o
b090: 6e 20 76 61 72 69 61 62 6c 65 73 20 67 65 74 0a  n variables get.
b0a0: 63 61 6c 6c 65 64 20 64 75 72 69 6e 67 20 61 70  called during ap
b0b0: 70 65 6e 64 20 6f 70 65 72 61 74 69 6f 6e 73 2e  pend operations.
b0c0: 0a 0a 32 38 31 2e 20 31 30 2f 32 30 2f 39 34 20  ..281. 10/20/94 
b0d0: 46 69 78 65 64 20 62 75 67 20 69 6e 20 22 72 65  Fixed bug in "re
b0e0: 61 64 22 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72  ad" command wher
b0f0: 65 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 73  e reading from s
b100: 74 64 69 6e 0a 72 65 71 75 69 72 65 64 20 74 77  tdin.required tw
b110: 6f 20 63 6f 6e 74 72 6f 6c 2d 44 27 73 20 74 6f  o control-D's to
b120: 20 73 74 6f 70 20 74 68 65 20 72 65 61 64 69 6e   stop the readin
b130: 67 2e 0a 0a 32 38 32 2e 20 31 31 2f 33 2f 39 34  g...282. 11/3/94
b140: 20 43 68 61 6e 67 65 64 20 22 65 78 70 72 22 20   Changed "expr" 
b150: 63 6f 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 6c  command to use l
b160: 6f 6e 67 73 20 66 6f 72 20 64 69 76 69 73 69 6f  ongs for divisio
b170: 6e 20 6a 75 73 74 20 6c 69 6b 65 0a 61 6c 6c 20  n just like.all 
b180: 6f 74 68 65 72 20 65 78 70 72 20 6f 70 65 72 61  other expr opera
b190: 74 6f 72 73 3b 20 20 69 74 20 70 72 65 76 69 6f  tors;  it previo
b1a0: 75 73 6c 79 20 75 73 65 64 20 69 6e 74 73 20 66  usly used ints f
b1b0: 6f 72 20 64 69 76 69 73 69 6f 6e 2e 0a 0a 32 38  or division...28
b1c0: 33 2e 20 31 31 2f 34 2f 39 34 20 46 69 78 65 64  3. 11/4/94 Fixed
b1d0: 20 62 75 67 73 20 69 6e 20 22 75 6e 6b 6e 6f 77   bugs in "unknow
b1e0: 6e 22 20 70 72 6f 63 65 64 75 72 65 3a 20 20 69  n" procedure:  i
b1f0: 74 20 77 61 73 6e 27 74 20 70 72 6f 70 65 72 6c  t wasn't properl
b200: 79 0a 68 61 6e 64 6c 69 6e 67 20 65 78 63 65 70  y.handling excep
b210: 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 66 72 6f  tion returns fro
b220: 6d 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20  m commands that 
b230: 77 65 72 65 20 65 78 65 63 75 74 65 64 20 61 66  were executed af
b240: 74 65 72 0a 62 65 69 6e 67 20 61 75 74 6f 2d 6c  ter.being auto-l
b250: 6f 61 64 65 64 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  oaded...--------
b260: 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
b270: 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 31  ed version 7.4b1
b280: 2c 20 31 32 2f 32 33 2f 39 34 20 2d 2d 2d 2d 2d  , 12/23/94 -----
b290: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32  -------------..2
b2a0: 38 34 2e 20 31 32 2f 32 36 2f 39 34 20 46 69 78  84. 12/26/94 Fix
b2b0: 65 64 20 22 69 6e 73 74 61 6c 6c 22 20 74 61 72  ed "install" tar
b2c0: 67 65 74 20 69 6e 20 4d 61 6b 65 66 69 6c 65 20  get in Makefile 
b2d0: 28 63 6f 75 6c 64 6e 27 74 20 61 6c 77 61 79 73  (couldn't always
b2e0: 0a 66 69 6e 64 20 69 6e 73 74 61 6c 6c 20 70 72  .find install pr
b2f0: 6f 67 72 61 6d 29 2e 0a 0a 32 38 35 2e 20 31 32  ogram)...285. 12
b300: 2f 32 36 2f 39 34 20 41 64 64 65 64 20 73 74 72  /26/94 Added str
b310: 63 6e 63 61 73 65 63 6d 70 20 70 72 6f 63 65 64  cncasecmp proced
b320: 75 72 65 20 74 6f 20 63 6f 6d 70 61 74 20 64 69  ure to compat di
b330: 72 65 63 74 6f 72 79 2e 0a 0a 32 38 36 2e 20 31  rectory...286. 1
b340: 2f 33 2f 39 35 20 46 69 78 65 64 20 61 6c 6c 20  /3/95 Fixed all 
b350: 70 72 6f 63 65 64 75 72 65 20 63 61 6c 6c 73 20  procedure calls 
b360: 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 63 61  to explicitly ca
b370: 73 74 20 61 72 67 75 6d 65 6e 74 73 3a 0a 69 6d  st arguments:.im
b380: 70 6c 69 63 69 74 20 63 6f 6e 76 65 72 73 69 6f  plicit conversio
b390: 6e 73 20 66 72 6f 6d 20 70 72 6f 74 6f 74 79 70  ns from prototyp
b3a0: 65 73 20 28 65 73 70 65 63 69 61 6c 6c 79 20 69  es (especially i
b3b0: 6e 74 65 67 65 72 2d 3e 64 6f 75 62 6c 65 29 0a  nteger->double).
b3c0: 64 6f 6e 27 74 20 77 6f 72 6b 20 77 68 65 6e 20  don't work when 
b3d0: 63 6f 6d 70 69 6c 69 6e 67 20 75 6e 64 65 72 20  compiling under 
b3e0: 6e 6f 6e 2d 41 4e 53 49 20 63 6f 6d 70 69 6c 65  non-ANSI compile
b3f0: 72 73 2e 20 20 54 63 6c 20 69 73 20 6e 6f 77 20  rs.  Tcl is now 
b400: 63 6c 65 61 6e 0a 75 6e 64 65 72 20 67 63 63 20  clean.under gcc 
b410: 2d 57 63 6f 6e 76 65 72 73 69 6f 6e 2e 0a 0a 32  -Wconversion...2
b420: 38 37 2e 20 31 2f 34 2f 39 35 20 46 69 78 65 64  87. 1/4/95 Fixed
b430: 20 70 72 6f 62 6c 65 6d 20 69 6e 20 54 63 6c 5f   problem in Tcl_
b440: 41 72 72 61 79 43 6d 64 20 77 68 65 72 65 20 73  ArrayCmd where s
b450: 61 6d 65 20 6e 61 6d 65 20 77 61 73 20 75 73 65  ame name was use
b460: 64 20 66 6f 72 0a 62 6f 74 68 20 61 20 6c 61 62  d for.both a lab
b470: 65 6c 20 61 6e 64 20 61 20 76 61 72 69 61 62 6c  el and a variabl
b480: 65 3b 20 20 63 61 75 73 65 64 20 70 72 6f 62 6c  e;  caused probl
b490: 65 6d 73 20 6f 6e 20 73 65 76 65 72 61 6c 20 6f  ems on several o
b4a0: 6c 64 65 72 20 63 6f 6d 70 69 6c 65 72 73 2c 0a  lder compilers,.
b4b0: 6d 61 6b 69 6e 67 20 61 72 72 61 79 20 63 6f 6d  making array com
b4c0: 6d 61 6e 64 20 6d 69 73 62 65 68 61 76 65 20 61  mand misbehave a
b4d0: 6e 64 20 63 61 75 73 69 6e 67 20 6d 61 6e 79 20  nd causing many 
b4e0: 65 72 72 6f 72 73 20 69 6e 20 54 63 6c 20 74 65  errors in Tcl te
b4f0: 73 74 20 73 75 69 74 65 2e 0a 0a 2d 2d 2d 2d 2d  st suite...-----
b500: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
b510: 65 61 73 65 64 20 76 65 72 73 69 6f 6e 20 37 2e  eased version 7.
b520: 34 62 32 2c 20 31 2f 31 32 2f 39 35 20 2d 2d 2d  4b2, 1/12/95 ---
b530: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
b540: 0a 32 38 38 2e 20 32 2f 39 2f 39 35 20 4d 6f 64  .288. 2/9/95 Mod
b550: 69 66 69 65 64 20 54 63 6c 5f 43 72 65 61 74 65  ified Tcl_Create
b560: 43 6f 6d 6d 61 6e 64 20 74 6f 20 72 65 74 75 72  Command to retur
b570: 6e 20 61 20 74 6f 6b 65 6e 2c 20 61 6e 64 20 61  n a token, and a
b580: 64 64 65 64 0a 54 63 6c 5f 47 65 74 43 6f 6d 6d  dded.Tcl_GetComm
b590: 61 6e 64 4e 61 6d 65 20 70 72 6f 63 65 64 75 72  andName procedur
b5a0: 65 2e 20 20 54 6f 67 65 74 68 65 72 2c 20 74 68  e.  Together, th
b5b0: 65 73 65 20 70 72 6f 63 65 64 75 72 65 73 20 6d  ese procedures m
b5c0: 61 6b 65 20 69 74 20 70 6f 73 73 69 62 6c 65 0a  ake it possible.
b5d0: 74 6f 20 74 72 61 63 6b 20 72 65 6e 61 6d 65 73  to track renames
b5e0: 20 6f 66 20 61 20 63 6f 6d 6d 61 6e 64 2e 0a 0a   of a command...
b5f0: 32 38 39 2e 20 32 2f 31 33 2f 39 35 20 46 69 78  289. 2/13/95 Fix
b600: 65 64 20 62 75 67 20 69 6e 20 65 78 70 72 20 77  ed bug in expr w
b610: 68 65 72 65 20 22 30 38 39 22 20 77 61 73 20 69  here "089" was i
b620: 6e 74 65 72 70 72 65 74 65 64 20 61 73 20 61 0a  nterpreted as a.
b630: 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 6e  floating-point n
b640: 75 6d 62 65 72 20 72 61 74 68 65 72 20 74 68 61  umber rather tha
b650: 6e 20 61 20 62 6f 67 75 73 20 6f 63 74 61 6c 20  n a bogus octal 
b660: 6e 75 6d 62 65 72 2e 0a 2a 2a 2a 20 50 4f 54 45  number..*** POTE
b670: 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
b680: 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 39 30 2e 20  ILITY ***..290. 
b690: 32 2f 31 34 2f 39 35 20 41 64 64 65 64 20 63 6f  2/14/95 Added co
b6a0: 64 65 20 74 6f 20 54 63 6c 5f 47 65 74 49 6e 74  de to Tcl_GetInt
b6b0: 20 61 6e 64 20 54 63 6c 5f 47 65 74 44 6f 75 62   and Tcl_GetDoub
b6c0: 6c 65 20 74 6f 20 63 68 65 63 6b 20 66 6f 72 0a  le to check for.
b6d0: 6f 76 65 72 66 6c 6f 77 73 20 77 68 65 6e 20 72  overflows when r
b6e0: 65 61 64 69 6e 67 20 69 6e 20 6e 75 6d 62 65 72  eading in number
b6f0: 73 2e 0a 0a 32 39 31 2e 20 32 2f 31 38 2f 39 35  s...291. 2/18/95
b700: 20 43 68 61 6e 67 65 64 20 22 61 72 72 61 79 20   Changed "array 
b710: 73 65 74 22 20 74 6f 20 73 74 6f 70 20 61 66 74  set" to stop aft
b720: 65 72 20 66 69 72 73 74 20 65 72 72 6f 72 2c 20  er first error, 
b730: 72 61 74 68 65 72 20 74 68 61 6e 0a 63 6f 6e 74  rather than.cont
b740: 69 6e 75 69 6e 67 20 61 66 74 65 72 20 65 72 72  inuing after err
b750: 6f 72 2e 0a 0a 32 39 32 2e 20 32 2f 32 30 2f 39  or...292. 2/20/9
b760: 35 20 55 70 67 72 61 64 65 64 20 74 6f 20 75 73  5 Upgraded to us
b770: 65 20 61 75 74 6f 63 6f 6e 66 20 76 65 72 73 69  e autoconf versi
b780: 6f 6e 20 32 2e 32 2e 0a 0a 32 39 33 2e 20 32 2f  on 2.2...293. 2/
b790: 32 30 2f 39 35 20 46 69 78 65 64 20 63 6f 72 65  20/95 Fixed core
b7a0: 20 64 75 6d 70 20 74 68 61 74 20 63 6f 75 6c 64   dump that could
b7b0: 20 6f 63 63 75 72 20 69 6e 20 22 73 63 61 6e 22   occur in "scan"
b7c0: 20 63 6f 6d 6d 61 6e 64 20 69 66 20 61 0a 63 6c   command if a.cl
b7d0: 6f 73 65 20 62 72 61 63 6b 65 74 20 77 61 73 20  ose bracket was 
b7e0: 6f 6d 69 74 74 65 64 2e 0a 0a 32 39 34 2e 20 32  omitted...294. 2
b7f0: 2f 32 37 2f 39 35 20 43 68 61 6e 67 65 64 20 4d  /27/95 Changed M
b800: 61 6b 65 66 69 6c 65 20 74 6f 20 61 6c 77 61 79  akefile to alway
b810: 73 20 75 73 65 20 69 6e 73 74 61 6c 6c 2d 73 68  s use install-sh
b820: 20 66 6f 72 20 69 6e 73 74 61 6c 6c 61 74 69 6f   for installatio
b830: 6e 73 3a 0a 74 68 65 72 65 27 73 20 6a 75 73 74  ns:.there's just
b840: 20 74 6f 6f 20 6d 75 63 68 20 76 61 72 69 61 74   too much variat
b850: 69 6f 6e 20 61 6d 6f 6e 67 20 22 69 6e 73 74 61  ion among "insta
b860: 6c 6c 22 20 73 79 73 74 65 6d 20 70 72 6f 67 72  ll" system progr
b870: 61 6d 73 2c 20 77 68 69 63 68 0a 6d 61 6b 65 73  ams, which.makes
b880: 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 6c   installation fl
b890: 61 6b 65 79 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  akey...---------
b8a0: 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
b8b0: 64 20 76 65 72 73 69 6f 6e 20 37 2e 34 62 33 2c  d version 7.4b3,
b8c0: 20 33 2f 32 34 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d   3/24/95 -------
b8d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 32  -----------..3/2
b8e0: 35 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  5/95 (bug fix) C
b8f0: 68 61 6e 67 65 64 20 22 69 6e 73 74 61 6c 6c 22  hanged "install"
b900: 20 74 6f 20 22 2e 2f 69 6e 73 74 61 6c 6c 22 20   to "./install" 
b910: 69 6e 20 4d 61 6b 65 66 69 6c 65 20 73 6f 20 74  in Makefile so t
b920: 68 61 74 0a 22 6d 61 6b 65 20 69 6e 73 74 61 6c  hat."make instal
b930: 6c 22 20 77 69 6c 6c 20 77 6f 72 6b 20 65 76 65  l" will work eve
b940: 6e 20 77 68 65 6e 20 22 2e 22 20 69 73 6e 27 74  n when "." isn't
b950: 20 69 6e 20 74 68 65 20 73 65 61 72 63 68 20 70   in the search p
b960: 61 74 68 2e 0a 0a 33 2f 32 39 2f 39 35 20 28 62  ath...3/29/95 (b
b970: 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
b980: 67 20 77 68 65 72 65 20 74 68 65 20 61 75 74 6f  g where the auto
b990: 2d 6c 6f 61 64 69 6e 67 20 6d 65 63 68 61 6e 69  -loading mechani
b9a0: 73 6d 20 77 61 73 6e 27 74 0a 70 72 6f 74 65 63  sm wasn't.protec
b9b0: 74 69 6e 67 20 74 68 65 20 76 61 6c 75 65 73 20  ting the values 
b9c0: 6f 66 20 74 68 65 20 65 72 72 6f 72 43 6f 64 65  of the errorCode
b9d0: 20 61 6e 64 20 65 72 72 6f 72 49 6e 66 6f 20 76   and errorInfo v
b9e0: 61 72 69 61 62 6c 65 73 2e 0a 0a 33 2f 32 39 2f  ariables...3/29/
b9f0: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  95 (new feature)
ba00: 20 41 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20   Added optional 
ba10: 70 61 74 74 65 72 6e 20 61 72 67 75 6d 65 6e 74  pattern argument
ba20: 20 74 6f 20 22 70 61 72 72 61 79 22 20 70 72 6f   to "parray" pro
ba30: 63 65 64 75 72 65 2e 0a 0a 33 2f 32 39 2f 39 35  cedure...3/29/95
ba40: 20 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20   (bug fix) Made 
ba50: 74 68 65 20 66 75 6c 6c 20 66 75 6e 63 74 69 6f  the full functio
ba60: 6e 61 6c 69 74 79 20 6f 66 0a 20 20 20 20 22 72  nality of.    "r
ba70: 65 74 75 72 6e 20 2d 63 6f 64 65 20 2e 2e 2e 20  eturn -code ... 
ba80: 2d 65 72 72 6f 72 63 6f 64 65 20 2e 2e 2e 22 0a  -errorcode ...".
ba90: 77 6f 72 6b 20 6e 6f 74 20 6a 75 73 74 20 69 6e  work not just in
baa0: 73 69 64 65 20 70 72 6f 63 65 64 75 72 65 73 2c  side procedures,
bab0: 20 62 75 74 20 61 6c 73 6f 20 69 6e 20 73 6f 75   but also in sou
bac0: 72 63 65 64 20 66 69 6c 65 73 20 61 6e 64 20 61  rced files and a
bad0: 74 0a 74 6f 70 20 6c 65 76 65 6c 2e 0a 0a 34 2f  t.top level...4/
bae0: 36 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  6/95 (new featur
baf0: 65 29 20 41 64 64 65 64 20 22 70 61 74 74 65 72  e) Added "patter
bb00: 6e 22 20 6f 70 74 69 6f 6e 20 74 6f 20 22 61 72  n" option to "ar
bb10: 72 61 79 20 6e 61 6d 65 73 22 20 63 6f 6d 6d 61  ray names" comma
bb20: 6e 64 2e 0a 0a 34 2f 31 38 2f 39 35 20 28 62 75  nd...4/18/95 (bu
bb30: 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67  g fix) Fixed bug
bb40: 20 69 6e 20 70 61 72 73 65 72 20 77 68 65 72 65   in parser where
bb50: 20 69 74 20 64 69 64 6e 27 74 20 61 6c 6c 6f 77   it didn't allow
bb60: 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69   backslash-newli
bb70: 6e 65 0a 69 6d 6d 65 64 69 61 74 65 6c 79 20 61  ne.immediately a
bb80: 66 74 65 72 20 61 6e 20 61 72 67 75 6d 65 6e 74  fter an argument
bb90: 20 69 6e 20 62 72 61 63 65 73 20 6f 72 20 71 75   in braces or qu
bba0: 6f 74 65 73 2e 0a 0a 34 2f 31 39 2f 39 35 20 28  otes...4/19/95 (
bbb0: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
bbc0: 65 64 20 74 63 6c 5f 6c 69 62 72 61 72 79 20 76  ed tcl_library v
bbd0: 61 72 69 61 62 6c 65 2c 20 77 68 69 63 68 20 61  ariable, which a
bbe0: 70 70 6c 69 63 61 74 69 6f 6e 20 63 61 6e 0a 73  pplication can.s
bbf0: 65 74 20 74 6f 20 6f 76 65 72 72 69 64 65 20 64  et to override d
bc00: 65 66 61 75 6c 74 20 6c 69 62 72 61 72 79 20 64  efault library d
bc10: 69 72 65 63 74 6f 72 79 2e 0a 0a 34 2f 33 30 2f  irectory...4/30/
bc20: 39 35 20 28 62 75 67 20 66 69 78 29 20 44 75 72  95 (bug fix) Dur
bc30: 69 6e 67 20 74 72 61 63 65 20 63 61 6c 6c 62 61  ing trace callba
bc40: 63 6b 73 20 66 6f 72 20 61 72 72 61 79 20 65 6c  cks for array el
bc50: 65 6d 65 6e 74 73 2c 20 74 68 65 20 76 61 72 69  ements, the vari
bc60: 61 62 6c 65 0a 6e 61 6d 65 20 75 73 65 64 20 69  able.name used i
bc70: 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 72  n the original r
bc80: 65 66 65 72 65 6e 63 65 20 77 6f 75 6c 64 20 62  eference would b
bc90: 65 20 74 65 6d 70 6f 72 61 72 69 6c 79 20 6d 6f  e temporarily mo
bca0: 64 69 66 69 65 64 20 74 6f 0a 73 65 70 61 72 61  dified to.separa
bcb0: 74 65 20 74 68 65 20 61 72 72 61 79 20 6e 61 6d  te the array nam
bcc0: 65 20 61 6e 64 20 65 6c 65 6d 65 6e 74 20 6e 61  e and element na
bcd0: 6d 65 3b 20 20 69 66 20 74 68 65 20 74 72 61 63  me;  if the trac
bce0: 65 20 63 61 6c 6c 62 61 63 6b 20 75 73 65 64 0a  e callback used.
bcf0: 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 20 73 74  the same name st
bd00: 72 69 6e 67 2c 20 69 74 20 77 6f 75 6c 64 20 67  ring, it would g
bd10: 65 74 20 74 68 65 20 77 72 6f 6e 67 20 6e 61 6d  et the wrong nam
bd20: 65 20 28 74 68 65 20 61 72 72 61 79 20 6e 61 6d  e (the array nam
bd30: 65 20 77 69 74 68 6f 75 74 0a 65 6c 65 6d 65 6e  e without.elemen
bd40: 74 29 2e 20 20 46 69 78 65 64 20 74 6f 20 72 65  t).  Fixed to re
bd50: 73 74 6f 72 65 20 74 68 65 20 76 61 72 69 61 62  store the variab
bd60: 6c 65 20 6e 61 6d 65 20 62 65 66 6f 72 65 20 6d  le name before m
bd70: 61 6b 69 6e 67 20 74 72 61 63 65 0a 63 61 6c 6c  aking trace.call
bd80: 62 61 63 6b 73 2e 0a 0a 34 2f 33 30 2f 39 35 20  backs...4/30/95 
bd90: 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
bda0: 64 65 64 20 2d 6e 6f 62 61 63 6b 73 6c 61 73 68  ded -nobackslash
bdb0: 65 73 2c 20 2d 6e 6f 63 6f 6d 6d 61 6e 64 73 2c  es, -nocommands,
bdc0: 20 61 6e 64 20 2d 6e 6f 76 61 72 69 61 62 6c 65   and -novariable
bdd0: 73 0a 73 77 69 74 63 68 65 73 20 74 6f 20 22 73  s.switches to "s
bde0: 75 62 73 74 22 20 63 6f 6d 6d 61 6e 64 2e 0a 0a  ubst" command...
bdf0: 35 2f 34 2f 39 35 20 28 6e 65 77 20 66 65 61 74  5/4/95 (new feat
be00: 75 72 65 29 20 41 64 64 65 64 20 54 43 4c 5f 45  ure) Added TCL_E
be10: 56 41 4c 5f 47 4c 4f 42 41 4c 20 66 6c 61 67 20  VAL_GLOBAL flag 
be20: 74 6f 20 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64  to Tcl_RecordAnd
be30: 45 76 61 6c 2e 0a 0a 35 2f 35 2f 39 35 20 28 62  Eval...5/5/95 (b
be40: 75 67 20 66 69 78 29 20 20 46 6f 72 6d 61 74 20  ug fix)  Format 
be50: 63 6f 6d 6d 61 6e 64 20 77 6f 75 6c 64 20 6f 76  command would ov
be60: 65 72 72 75 6e 20 6d 65 6d 6f 72 79 20 77 68 65  errun memory whe
be70: 6e 20 70 72 69 6e 74 69 6e 67 0a 69 6e 74 65 67  n printing.integ
be80: 65 72 73 20 77 69 74 68 20 76 65 72 79 20 6c 61  ers with very la
be90: 72 67 65 20 70 72 65 63 69 73 69 6f 6e 2c 20 61  rge precision, a
bea0: 73 20 69 6e 20 22 66 6f 72 6d 61 74 20 25 2e 31  s in "format %.1
beb0: 30 30 30 64 20 30 22 2e 0a 0a 35 2f 35 2f 39 35  000d 0"...5/5/95
bec0: 20 28 70 6f 72 74 61 62 69 6c 69 74 79 20 69 6d   (portability im
bed0: 70 72 6f 76 65 6d 65 6e 74 29 20 43 68 61 6e 67  provement) Chang
bee0: 65 64 20 74 6f 20 75 73 65 20 42 53 44 67 65 74  ed to use BSDget
bef0: 74 69 6d 65 6f 66 64 61 79 20 6f 6e 0a 49 52 49  timeofday on.IRI
bf00: 58 20 6d 61 63 68 69 6e 65 73 2c 20 74 6f 20 61  X machines, to a
bf10: 76 6f 69 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  void compilation
bf20: 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74   problems with t
bf30: 68 65 20 67 65 74 74 69 6d 65 6f 66 64 61 79 0a  he gettimeofday.
bf40: 64 65 63 6c 61 72 61 74 69 6f 6e 2e 0a 0a 35 2f  declaration...5/
bf50: 36 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  6/95 (bug fix) C
bf60: 68 61 6e 67 65 64 20 6d 61 6e 75 61 6c 20 65 6e  hanged manual en
bf70: 74 72 69 65 73 20 74 6f 20 75 73 65 20 74 68 65  tries to use the
bf80: 20 73 74 61 6e 64 61 72 64 20 2e 54 48 0a 6d 61   standard .TH.ma
bf90: 63 72 6f 20 69 6e 73 74 65 61 64 20 6f 66 20 61  cro instead of a
bfa0: 20 63 75 73 74 6f 6d 20 2e 48 53 20 6d 61 63 72   custom .HS macr
bfb0: 6f 3b 20 20 74 68 65 20 2e 48 53 20 6d 61 63 72  o;  the .HS macr
bfc0: 6f 20 63 6f 6e 66 75 73 65 73 20 69 6e 64 65 78  o confuses index
bfd0: 0a 67 65 6e 65 72 61 74 6f 72 73 20 6c 69 6b 65  .generators like
bfe0: 20 6d 61 6b 65 77 68 61 74 69 73 2e 0a 0a 35 2f   makewhatis...5/
bff0: 39 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 4d  9/95 (bug fix) M
c000: 6f 64 69 66 69 65 64 20 63 6f 6e 66 69 67 75 72  odified configur
c010: 65 20 73 63 72 69 70 74 20 74 6f 20 63 68 65 63  e script to chec
c020: 6b 20 66 6f 72 20 53 6f 6c 61 72 69 73 20 62 75  k for Solaris bu
c030: 67 0a 74 68 61 74 20 6d 61 6b 65 73 20 76 66 6f  g.that makes vfo
c040: 72 6b 20 75 6e 72 65 6c 69 61 62 6c 65 20 28 63  rk unreliable (c
c050: 6f 72 65 20 64 75 6d 70 73 20 72 65 73 75 6c 74  ore dumps result
c060: 20 69 66 20 76 66 6f 72 6b 65 64 20 63 68 69 6c   if vforked chil
c070: 64 0a 63 68 61 6e 67 65 73 20 61 20 73 69 67 6e  d.changes a sign
c080: 61 6c 20 68 61 6e 64 6c 65 72 29 3b 20 20 77 69  al handler);  wi
c090: 6c 6c 20 75 73 65 20 66 6f 72 6b 20 69 6e 73 74  ll use fork inst
c0a0: 65 61 64 20 6f 66 20 76 66 6f 72 6b 20 69 66 20  ead of vfork if 
c0b0: 74 68 65 0a 62 75 67 20 69 73 20 70 72 65 73 65  the.bug is prese
c0c0: 6e 74 2e 0a 0a 36 2f 35 2f 39 35 20 28 62 75 67  nt...6/5/95 (bug
c0d0: 20 66 69 78 29 20 4d 6f 64 69 66 69 65 64 20 22   fix) Modified "
c0e0: 6c 73 6f 72 74 22 20 63 6f 6d 6d 61 6e 64 20 74  lsort" command t
c0f0: 6f 20 64 69 73 61 6c 6c 6f 77 20 72 65 63 75 72  o disallow recur
c100: 73 69 76 65 20 63 61 6c 6c 73 0a 74 6f 20 6c 73  sive calls.to ls
c110: 6f 72 74 20 66 72 6f 6d 20 61 20 63 6f 6d 70 61  ort from a compa
c120: 72 69 73 6f 6e 20 66 75 6e 63 74 69 6f 6e 2e 20  rison function. 
c130: 20 54 68 69 73 20 69 73 20 6e 65 65 64 65 64 20   This is needed 
c140: 62 65 63 61 75 73 65 20 71 73 6f 72 74 0a 69 73  because qsort.is
c150: 20 6e 6f 74 20 72 65 65 6e 74 72 61 6e 74 2e 0a   not reentrant..
c160: 0a 36 2f 35 2f 39 35 20 28 62 75 67 20 66 69 78  .6/5/95 (bug fix
c170: 29 20 55 6e 64 69 64 20 63 68 61 6e 67 65 20 32  ) Undid change 2
c180: 34 33 20 61 62 6f 76 65 3a 20 20 63 68 61 6e 67  43 above:  chang
c190: 65 64 20 54 43 4c 5f 56 4f 4c 41 54 49 4c 45 20  ed TCL_VOLATILE 
c1a0: 61 6e 64 0a 54 43 4c 5f 44 59 4e 41 4d 49 43 20  and.TCL_DYNAMIC 
c1b0: 62 61 63 6b 20 74 6f 20 69 6e 74 65 67 65 72 20  back to integer 
c1c0: 63 6f 6e 73 74 61 6e 74 73 20 72 61 74 68 65 72  constants rather
c1d0: 20 74 68 61 6e 20 70 72 6f 63 65 64 75 72 65 20   than procedure 
c1e0: 61 64 64 72 65 73 73 65 73 2e 0a 54 68 69 73 20  addresses..This 
c1f0: 77 61 73 20 6e 65 65 64 65 64 20 62 65 63 61 75  was needed becau
c200: 73 65 20 70 72 6f 63 65 64 75 72 65 20 61 64 64  se procedure add
c210: 72 65 73 73 65 73 20 63 61 6e 20 68 61 76 65 20  resses can have 
c220: 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 0a  multiple values.
c230: 75 6e 64 65 72 20 73 6f 6d 65 20 64 79 6e 61 6d  under some dynam
c240: 69 63 20 6c 6f 61 64 69 6e 67 20 73 79 73 74 65  ic loading syste
c250: 6d 73 20 28 65 2e 67 2e 20 53 75 6e 4f 53 20 34  ms (e.g. SunOS 4
c260: 2e 31 20 61 6e 64 20 57 69 6e 64 6f 77 73 29 2e  .1 and Windows).
c270: 0a 0a 36 2f 38 2f 39 35 20 28 66 65 61 74 75 72  ..6/8/95 (featur
c280: 65 20 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69  e change) Modifi
c290: 65 64 20 69 6e 74 65 72 66 61 63 65 20 74 6f 20  ed interface to 
c2a0: 54 63 6c 5f 4d 61 69 6e 20 74 6f 20 70 61 73 73  Tcl_Main to pass
c2b0: 20 69 6e 20 74 68 65 0a 61 64 64 72 65 73 73 20   in the.address 
c2c0: 6f 66 20 74 68 65 20 61 70 70 6c 69 63 61 74 69  of the applicati
c2d0: 6f 6e 2d 73 70 65 63 69 66 69 63 20 69 6e 69 74  on-specific init
c2e0: 69 61 6c 69 7a 61 74 69 6f 6e 20 70 72 6f 63 65  ialization proce
c2f0: 64 75 72 65 2e 0a 54 63 6c 5f 41 70 70 49 6e 69  dure..Tcl_AppIni
c300: 74 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 68  t is no longer h
c310: 61 72 64 77 69 72 65 64 20 69 6e 74 6f 20 54 63  ardwired into Tc
c320: 6c 5f 4d 61 69 6e 2e 20 20 54 68 69 73 20 69 73  l_Main.  This is
c330: 20 6e 65 65 64 65 64 0a 69 6e 20 6f 72 64 65 72   needed.in order
c340: 20 74 6f 20 6d 61 6b 65 20 54 63 6c 20 61 20 73   to make Tcl a s
c350: 68 61 72 65 64 20 6c 69 62 72 61 72 79 2e 20 0a  hared library. .
c360: 0a 36 2f 38 2f 39 35 20 28 66 65 61 74 75 72 65  .6/8/95 (feature
c370: 20 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65   change) Modifie
c380: 64 20 4d 61 6b 65 66 69 6c 65 20 73 6f 20 74 68  d Makefile so th
c390: 61 74 20 74 68 65 20 69 6e 73 74 61 6c 6c 65 64  at the installed
c3a0: 20 76 65 72 73 69 6f 6e 73 0a 6f 66 20 74 63 6c   versions.of tcl
c3b0: 73 68 20 61 6e 64 20 6c 69 62 74 63 6c 2e 61 20  sh and libtcl.a 
c3c0: 68 61 76 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d  have version num
c3d0: 62 65 72 20 69 6e 20 74 68 65 6d 20 28 65 2e 67  ber in them (e.g
c3e0: 2e 20 74 63 6c 73 68 37 2e 34 20 61 6e 64 0a 6c  . tclsh7.4 and.l
c3f0: 69 62 74 63 6c 37 2e 34 2e 61 29 20 61 6e 64 20  ibtcl7.4.a) and 
c400: 74 68 65 20 6c 69 62 72 61 72 79 20 64 69 72 65  the library dire
c410: 63 74 6f 72 79 20 6e 61 6d 65 20 61 6c 73 6f 20  ctory name also 
c420: 68 61 73 20 61 6e 20 65 6d 62 65 64 64 65 64 20  has an embedded 
c430: 76 65 72 73 69 6f 6e 0a 6e 75 6d 62 65 72 20 28  version.number (
c440: 65 2e 67 2e 2c 20 2f 75 73 72 2f 6c 6f 63 61 6c  e.g., /usr/local
c450: 2f 6c 69 62 2f 74 63 6c 37 2e 34 29 2e 20 20 54  /lib/tcl7.4).  T
c460: 68 69 73 20 73 68 6f 75 6c 64 20 6d 61 6b 65 20  his should make 
c470: 69 74 20 65 61 73 69 65 72 20 66 6f 72 0a 54 63  it easier for.Tc
c480: 6c 20 37 2e 34 20 74 6f 20 63 6f 65 78 69 73 74  l 7.4 to coexist
c490: 20 77 69 74 68 20 65 61 72 6c 69 65 72 20 76 65   with earlier ve
c4a0: 72 73 69 6f 6e 73 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d  rsions...-------
c4b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
c4c0: 73 65 64 20 76 65 72 73 69 6f 6e 20 37 2e 34 62  sed version 7.4b
c4d0: 34 2c 20 36 2f 31 36 2f 39 35 20 2d 2d 2d 2d 2d  4, 6/16/95 -----
c4e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 36  -------------..6
c4f0: 2f 31 39 2f 39 35 20 28 62 75 67 20 66 69 78 29  /19/95 (bug fix)
c500: 20 46 69 78 65 64 20 62 75 67 73 20 69 6e 20 74   Fixed bugs in t
c510: 63 6c 43 6b 61 6c 6c 6f 63 2e 63 20 74 68 61 74  clCkalloc.c that
c520: 20 63 61 75 73 65 64 20 63 6f 72 65 20 64 75 6d   caused core dum
c530: 70 73 0a 69 66 20 54 43 4c 5f 4d 45 4d 5f 44 45  ps.if TCL_MEM_DE
c540: 42 55 47 20 77 61 73 20 65 6e 61 62 6c 65 64 20  BUG was enabled 
c550: 6f 6e 20 77 6f 72 64 2d 61 64 64 72 65 73 73 65  on word-addresse
c560: 64 20 6d 61 63 68 69 6e 65 73 20 73 75 63 68 20  d machines such 
c570: 61 73 20 43 72 61 79 73 2e 0a 0a 36 2f 32 31 2f  as Crays...6/21/
c580: 39 35 20 28 66 65 61 74 75 72 65 20 72 65 6d 6f  95 (feature remo
c590: 76 61 6c 29 20 52 65 6d 6f 76 65 64 20 6f 76 65  val) Removed ove
c5a0: 72 66 6c 6f 77 20 63 68 65 63 6b 73 20 66 6f 72  rflow checks for
c5b0: 20 69 6e 74 65 67 65 72 20 61 72 69 74 68 6d 65   integer arithme
c5c0: 74 69 63 3a 0a 74 68 65 79 20 6a 75 73 74 20 63  tic:.they just c
c5d0: 61 75 73 65 20 74 6f 6f 20 6d 75 63 68 20 74 72  ause too much tr
c5e0: 6f 75 62 6c 65 20 28 65 2e 67 2e 20 66 6f 72 20  ouble (e.g. for 
c5f0: 72 61 6e 64 6f 6d 20 20 6e 75 6d 62 65 72 20 67  random  number g
c600: 65 6e 65 72 61 74 6f 72 73 29 2e 0a 0a 36 2f 32  enerators)...6/2
c610: 38 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  8/95 (new featur
c620: 65 73 29 20 41 64 64 65 64 20 74 63 6c 5f 70 61  es) Added tcl_pa
c630: 74 63 68 4c 65 76 65 6c 20 61 6e 64 20 74 63 6c  tchLevel and tcl
c640: 5f 76 65 72 73 69 6f 6e 20 76 61 72 69 61 62 6c  _version variabl
c650: 65 73 2c 0a 66 6f 72 20 63 6f 6e 73 69 73 74 65  es,.for consiste
c660: 6e 63 79 20 77 69 74 68 20 54 6b 2e 0a 0a 36 2f  ncy with Tk...6/
c670: 32 39 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  29/95 (bug fix) 
c680: 46 69 78 65 64 20 70 72 6f 62 6c 65 6d 20 69 6e  Fixed problem in
c690: 20 54 63 6c 5f 45 76 61 6c 20 77 68 65 72 65 20   Tcl_Eval where 
c6a0: 69 74 20 64 69 64 6e 27 74 20 72 65 63 6f 72 64  it didn't record
c6b0: 0a 74 68 65 20 72 69 67 68 74 20 74 65 72 6d 69  .the right termi
c6c0: 6e 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72  nation character
c6d0: 20 69 66 20 61 20 73 63 72 69 70 74 20 65 6e 64   if a script end
c6e0: 65 64 20 77 69 74 68 20 61 20 63 6f 6d 6d 65 6e  ed with a commen
c6f0: 74 2e 20 20 54 68 69 73 0a 63 61 75 73 65 64 20  t.  This.caused 
c700: 65 72 72 6f 6e 65 6f 75 73 20 6f 75 74 70 75 74  erroneous output
c710: 20 66 6f 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69   for the followi
c720: 6e 67 20 63 6f 6d 6d 61 6e 64 2c 20 61 6d 6f 6e  ng command, amon
c730: 67 20 6f 74 68 65 72 73 3a 0a 70 75 74 73 20 22  g others:.puts "
c740: 5b 0a 65 78 70 72 20 31 2b 31 0a 23 20 64 75 68  [.expr 1+1.# duh
c750: 21 0a 5d 22 0a 0a 36 2f 32 39 2f 39 35 20 28 6d  !.]"..6/29/95 (m
c760: 65 73 73 61 67 65 20 63 68 61 6e 67 65 29 20 43  essage change) C
c770: 68 61 6e 67 65 64 20 74 68 65 20 65 72 72 6f 72  hanged the error
c780: 20 6d 65 73 73 61 67 65 20 66 6f 72 20 45 43 48   message for ECH
c790: 49 4c 44 20 73 6c 69 67 68 74 6c 79 0a 74 6f 20  ILD slightly.to 
c7a0: 70 72 6f 76 69 64 65 20 61 20 68 69 6e 74 20 61  provide a hint a
c7b0: 62 6f 75 74 20 77 68 79 20 74 68 65 20 70 72 6f  bout why the pro
c7c0: 62 6c 65 6d 20 69 73 20 6f 63 63 75 72 72 69 6e  blem is occurrin
c7d0: 67 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  g...------------
c7e0: 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 76  ----- Released v
c7f0: 65 72 73 69 6f 6e 20 37 2e 34 2c 20 37 2f 31 2f  ersion 7.4, 7/1/
c800: 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  95 -------------
c810: 2d 2d 2d 2d 2d 0a 0a 37 2f 31 38 2f 39 35 20 28  -----..7/18/95 (
c820: 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
c830: 20 22 6c 72 65 70 6c 61 63 65 22 20 73 6f 20 74   "lreplace" so t
c840: 68 61 74 20 6e 6f 74 68 69 6e 67 20 69 73 20 64  hat nothing is d
c850: 65 6c 65 74 65 64 20 69 66 0a 74 68 65 20 6c 61  eleted if.the la
c860: 73 74 20 69 6e 64 65 78 20 69 73 20 6c 65 73 73  st index is less
c870: 20 74 68 61 6e 20 74 68 65 20 66 69 72 73 74 20   than the first 
c880: 69 6e 64 65 78 20 6f 72 20 69 66 20 74 68 65 20  index or if the 
c890: 6c 61 73 74 20 69 6e 64 65 78 0a 69 73 20 3c 20  last index.is < 
c8a0: 30 2e 0a 0a 37 2f 31 38 2f 39 35 20 28 62 75 67  0...7/18/95 (bug
c8b0: 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 73   fix) Fixed bugs
c8c0: 20 77 69 74 68 20 62 61 63 6b 73 6c 61 73 68 65   with backslashe
c8d0: 73 20 69 6e 20 63 6f 6d 6d 65 6e 74 73 3a 0a 54  s in comments:.T
c8e0: 63 6c 5f 43 6f 6d 6d 61 6e 64 43 6f 6d 70 6c 65  cl_CommandComple
c8f0: 74 65 20 28 61 6e 64 20 22 69 6e 66 6f 20 63 6f  te (and "info co
c900: 6d 70 6c 65 74 65 22 29 20 64 69 64 6e 27 74 20  mplete") didn't 
c910: 70 72 6f 70 65 72 6c 79 20 68 61 6e 64 6c 65 0a  properly handle.
c920: 73 74 72 69 6e 67 73 20 65 6e 64 69 6e 67 20 69  strings ending i
c930: 6e 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c  n backslash-newl
c940: 69 6e 65 2c 20 61 6e 64 20 6e 65 69 74 68 65 72  ine, and neither
c950: 20 54 63 6c 5f 43 6f 6d 6d 61 6e 64 43 6f 6d 70   Tcl_CommandComp
c960: 6c 65 74 65 0a 6e 6f 72 20 74 68 65 20 54 63 6c  lete.nor the Tcl
c970: 20 70 61 72 73 65 72 20 68 61 6e 64 6c 65 64 20   parser handled 
c980: 6f 74 68 65 72 20 62 61 63 6b 73 6c 61 73 68 20  other backslash 
c990: 73 65 71 75 65 6e 63 65 73 20 72 69 67 68 74 2c  sequences right,
c9a0: 20 73 75 63 68 0a 61 73 20 74 77 6f 20 62 61 63   such.as two bac
c9b0: 6b 73 6c 61 73 68 65 73 20 62 65 66 6f 72 65 20  kslashes before 
c9c0: 61 20 6e 65 77 6c 69 6e 65 2e 0a 0a 37 2f 31 39  a newline...7/19
c9d0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 4d 6f  /95 (bug fix) Mo
c9e0: 64 69 66 69 65 64 20 54 63 6c 5f 44 65 6c 65 74  dified Tcl_Delet
c9f0: 65 43 6f 6d 6d 61 6e 64 20 74 6f 20 64 65 6c 65  eCommand to dele
ca00: 74 65 20 74 68 65 20 68 61 73 68 20 74 61 62 6c  te the hash tabl
ca10: 65 0a 65 6e 74 72 79 20 66 6f 72 20 74 68 65 20  e.entry for the 
ca20: 63 6f 6d 6d 61 6e 64 20 62 65 66 6f 72 65 20 69  command before i
ca30: 6e 76 6f 6b 69 6e 67 20 69 74 73 20 63 61 6c 6c  nvoking its call
ca40: 62 61 63 6b 2e 20 20 54 68 69 73 20 69 73 20 6e  back.  This is n
ca50: 65 65 64 65 64 20 69 6e 0a 6f 72 64 65 72 20 74  eeded in.order t
ca60: 6f 20 64 65 61 6c 20 77 69 74 68 20 72 65 65 6e  o deal with reen
ca70: 74 72 61 6e 63 79 2e 0a 0a 37 2f 32 32 2f 39 35  trancy...7/22/95
ca80: 20 28 62 75 67 20 66 69 78 29 20 22 65 78 65 63   (bug fix) "exec
ca90: 22 20 77 61 73 6e 27 74 20 72 65 61 70 69 6e 67  " wasn't reaping
caa0: 20 70 72 6f 63 65 73 73 65 73 20 63 6f 72 72 65   processes corre
cab0: 63 74 6c 79 20 61 66 74 65 72 0a 63 65 72 74 61  ctly after.certa
cac0: 69 6e 20 65 72 72 6f 72 73 20 28 65 2e 67 2e 20  in errors (e.g. 
cad0: 69 66 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74  if the name of t
cae0: 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 77 61  he executable wa
caf0: 73 20 62 6f 67 75 73 2c 20 61 73 0a 69 6e 20 22  s bogus, as.in "
cb00: 65 78 65 63 20 66 6f 6f 62 61 72 22 29 2e 0a 0a  exec foobar")...
cb10: 37 2f 32 37 2f 39 35 20 28 62 75 67 20 66 69 78  7/27/95 (bug fix
cb20: 29 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 77 61  ) Makefile.in wa
cb30: 73 6e 27 74 20 75 73 69 6e 67 20 74 68 65 20 4c  sn't using the L
cb40: 49 42 53 20 76 61 72 69 61 62 6c 65 20 70 72 6f  IBS variable pro
cb50: 76 69 64 65 64 0a 62 79 20 74 68 65 20 22 63 6f  vided.by the "co
cb60: 6e 66 69 67 75 72 65 22 20 73 63 72 69 70 74 2e  nfigure" script.
cb70: 20 20 54 68 69 73 20 63 61 75 73 65 64 20 70 72    This caused pr
cb80: 6f 62 6c 65 6d 73 20 6f 6e 20 73 6f 6d 65 20 53  oblems on some S
cb90: 43 4f 20 73 79 73 74 65 6d 73 2e 0a 0a 37 2f 32  CO systems...7/2
cba0: 37 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 54  7/95 (bug fix) T
cbb0: 68 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 73 74  he version of st
cbc0: 72 74 6f 64 20 69 6e 20 66 69 78 73 74 72 74 6f  rtod in fixstrto
cbd0: 64 2e 63 20 64 69 64 6e 27 74 20 70 72 6f 70 65  d.c didn't prope
cbe0: 72 6c 79 0a 68 61 6e 64 6c 65 20 74 68 65 20 63  rly.handle the c
cbf0: 61 73 65 20 77 68 65 72 65 20 65 6e 64 50 74 72  ase where endPtr
cc00: 20 3d 3d 20 4e 55 4c 4c 2e 0a 0a 2d 2d 2d 2d 2d   == NULL...-----
cc10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
cc20: 65 61 73 65 64 20 70 61 74 63 68 20 37 2e 34 70  eased patch 7.4p
cc30: 31 2c 20 37 2f 32 39 2f 39 35 20 2d 2d 2d 2d 2d  1, 7/29/95 -----
cc40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
cc50: 2d 2d 0a 0a 38 2f 34 2f 39 35 20 28 62 75 67 20  --..8/4/95 (bug 
cc60: 66 69 78 29 20 43 2d 6c 65 76 65 6c 20 74 72 61  fix) C-level tra
cc70: 63 65 20 63 61 6c 6c 62 61 63 6b 73 20 66 6f 72  ce callbacks for
cc80: 20 76 61 72 69 61 62 6c 65 73 20 77 65 72 65 20   variables were 
cc90: 73 6f 6d 65 74 69 6d 65 73 0a 72 65 63 65 69 76  sometimes.receiv
cca0: 69 6e 67 20 74 68 65 20 50 41 52 54 31 5f 4e 4f  ing the PART1_NO
ccb0: 54 5f 50 41 52 53 45 44 20 66 6c 61 67 2c 20 77  T_PARSED flag, w
ccc0: 68 69 63 68 20 63 6f 75 6c 64 20 63 61 75 73 65  hich could cause
ccd0: 20 65 72 72 6f 72 73 20 69 6e 0a 73 75 62 73 65   errors in.subse
cce0: 71 75 65 6e 74 20 54 63 6c 20 6c 69 62 72 61 72  quent Tcl librar
ccf0: 79 20 63 61 6c 6c 73 20 75 73 69 6e 67 20 74 68  y calls using th
cd00: 65 20 66 6c 61 67 73 2e 20 28 4a 4f 29 0a 0a 38  e flags. (JO)..8
cd10: 2f 34 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  /4/95 (bug fix) 
cd20: 43 61 6c 6c 73 20 74 6f 20 74 6f 75 70 70 65 72  Calls to toupper
cd30: 20 61 6e 64 20 74 6f 6c 6f 77 65 72 20 77 65 72   and tolower wer
cd40: 65 6e 27 74 20 75 73 69 6e 67 20 74 68 65 0a 55  en't using the.U
cd50: 43 48 41 52 20 6d 61 63 72 6f 73 2c 20 77 68 69  CHAR macros, whi
cd60: 63 68 20 63 61 75 73 65 64 20 74 72 6f 75 62 6c  ch caused troubl
cd70: 65 20 69 6e 20 6e 6f 6e 2d 55 2e 53 2e 20 6c 6f  e in non-U.S. lo
cd80: 63 61 6c 65 73 2e 20 28 4a 4f 29 0a 0a 38 2f 31  cales. (JO)..8/1
cd90: 30 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  0/95 (new featur
cda0: 65 29 20 41 64 64 65 64 20 74 68 65 20 22 6c 6f  e) Added the "lo
cdb0: 61 64 22 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20  ad" command for 
cdc0: 64 79 6e 61 6d 69 63 20 6c 6f 61 64 69 6e 67 20  dynamic loading 
cdd0: 6f 66 0a 62 69 6e 61 72 79 20 70 61 63 6b 61 67  of.binary packag
cde0: 65 73 2c 20 61 6e 64 20 74 68 65 20 54 63 6c 5f  es, and the Tcl_
cdf0: 50 61 63 6b 61 67 65 49 6e 69 74 50 72 6f 63 20  PackageInitProc 
ce00: 70 72 6f 74 6f 74 79 70 65 20 66 6f 72 20 70 61  prototype for pa
ce10: 63 6b 61 67 65 0a 69 6e 69 74 69 61 6c 69 7a 61  ckage.initializa
ce20: 74 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 73 2e  tion procedures.
ce30: 20 28 4a 4f 29 0a 0a 38 2f 32 33 2f 39 35 20 28   (JO)..8/23/95 (
ce40: 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 41 64  new features) Ad
ce50: 64 65 64 20 22 69 6e 66 6f 20 73 68 61 72 65 64  ded "info shared
ce60: 6c 69 62 65 78 74 65 6e 73 69 6f 6e 22 20 61 6e  libextension" an
ce70: 64 0a 22 69 6e 66 6f 20 6e 61 6d 65 6f 66 65 78  d."info nameofex
ce80: 65 63 75 74 61 62 6c 65 22 20 63 6f 6d 6d 61 6e  ecutable" comman
ce90: 64 73 2c 20 70 6c 75 73 20 54 63 6c 5f 46 69 6e  ds, plus Tcl_Fin
cea0: 64 45 78 74 65 6e 73 69 6f 6e 20 70 72 6f 63 65  dExtension proce
ceb0: 64 75 72 65 2e 20 28 4a 4f 29 0a 0a 38 2f 32 35  dure. (JO)..8/25
cec0: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 49 66  /95 (bug fix) If
ced0: 20 74 68 65 20 74 61 72 67 65 74 20 6f 66 20 61   the target of a
cee0: 6e 20 22 75 70 76 61 72 22 20 77 61 73 20 6e 6f  n "upvar" was no
cef0: 6e 2d 65 78 69 73 74 65 6e 74 20 62 75 74 0a 68  n-existent but.h
cf00: 61 64 20 74 72 61 63 65 73 20 73 65 74 2c 20 74  ad traces set, t
cf10: 68 65 20 74 72 61 63 65 73 20 77 65 72 65 20 73  he traces were s
cf20: 69 6c 65 6e 74 6c 79 20 6c 6f 73 74 2e 20 20 43  ilently lost.  C
cf30: 68 61 6e 67 65 20 74 6f 20 67 65 6e 65 72 61 74  hange to generat
cf40: 65 0a 61 6e 20 65 72 72 6f 72 20 69 6e 73 74 65  e.an error inste
cf50: 61 64 2e 20 28 4a 4f 29 0a 0a 38 2f 32 35 2f 39  ad. (JO)..8/25/9
cf60: 35 20 28 62 75 67 20 66 69 78 29 20 55 6e 64 69  5 (bug fix) Undi
cf70: 64 20 63 68 61 6e 67 65 20 66 72 6f 6d 20 37 2f  d change from 7/
cf80: 31 39 2c 20 73 6f 20 74 68 61 74 20 63 6f 6d 6d  19, so that comm
cf90: 61 6e 64 73 20 63 61 6e 20 73 74 61 79 0a 61 72  ands can stay.ar
cfa0: 6f 75 6e 64 20 77 68 69 6c 65 20 74 68 65 69 72  ound while their
cfb0: 20 64 65 6c 65 74 69 6f 6e 20 63 61 6c 6c 62 61   deletion callba
cfc0: 63 6b 73 20 65 78 65 63 75 74 65 2e 20 20 41 64  cks execute.  Ad
cfd0: 64 65 64 20 6c 6f 74 73 20 6f 66 20 63 6f 64 65  ded lots of code
cfe0: 20 74 6f 0a 68 61 6e 64 6c 65 20 61 6c 6c 20 6f   to.handle all o
cff0: 66 20 74 68 65 20 72 65 65 6e 74 72 61 6e 63 79  f the reentrancy
d000: 20 70 72 6f 62 6c 65 6d 73 20 74 68 61 74 20 74   problems that t
d010: 68 69 73 20 6f 70 65 6e 73 20 75 70 2e 20 28 4a  his opens up. (J
d020: 4f 29 0a 0a 38 2f 32 35 2f 39 35 20 28 62 75 67  O)..8/25/95 (bug
d030: 20 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65   fix) Fixed core
d040: 20 64 75 6d 70 20 74 68 61 74 20 63 6f 75 6c 64   dump that could
d050: 20 6f 63 63 75 72 20 69 6e 20 54 63 6c 44 65 6c   occur in TclDel
d060: 65 74 65 56 61 72 73 0a 69 66 20 74 68 65 72 65  eteVars.if there
d070: 20 77 61 73 20 61 6e 20 75 70 76 61 72 20 66 72   was an upvar fr
d080: 6f 6d 20 6f 6e 65 20 65 6e 74 72 79 20 69 6e 20  om one entry in 
d090: 74 68 65 20 74 61 62 6c 65 20 74 6f 20 74 68 65  the table to the
d0a0: 20 6e 65 78 74 20 65 6e 74 72 79 0a 69 6e 20 74   next entry.in t
d0b0: 68 65 20 73 61 6d 65 20 74 61 62 6c 65 2e 20 28  he same table. (
d0c0: 4a 4f 29 0a 0a 38 2f 32 38 2f 39 35 20 28 62 75  JO)..8/28/95 (bu
d0d0: 67 20 66 69 78 29 20 45 78 65 63 20 77 61 73 6e  g fix) Exec wasn
d0e0: 27 74 20 68 61 6e 64 6c 69 6e 67 20 62 61 64 20  't handling bad 
d0f0: 75 73 65 72 20 6e 61 6d 65 73 20 70 72 6f 70 65  user names prope
d100: 72 6c 79 2c 20 61 73 0a 69 6e 20 22 65 78 65 63  rly, as.in "exec
d110: 20 7e 62 6f 67 75 73 5f 75 73 65 72 2f 66 6f 6f   ~bogus_user/foo
d120: 22 2e 20 28 4a 4f 29 0a 0a 38 2f 32 39 2f 39 35  ". (JO)..8/29/95
d130: 20 28 62 75 67 20 66 69 78 65 73 29 20 43 68 61   (bug fixes) Cha
d140: 6e 67 65 64 20 62 61 63 6b 73 6c 61 73 68 2d 6e  nged backslash-n
d150: 65 77 6c 69 6e 65 20 68 61 6e 64 6c 69 6e 67 20  ewline handling 
d160: 74 6f 20 63 6f 72 72 65 63 74 20 74 77 6f 0a 70  to correct two.p
d170: 72 6f 62 6c 65 6d 73 3a 0a 20 20 20 20 2d 20 4f  roblems:.    - O
d180: 6e 6c 79 20 73 70 61 63 65 73 20 61 6e 64 20 74  nly spaces and t
d190: 61 62 73 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 68  abs following th
d1a0: 65 20 62 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c  e backslash-newl
d1b0: 69 6e 65 20 61 72 65 20 6e 6f 77 0a 20 20 20 20  ine are now.    
d1c0: 20 20 61 62 73 6f 72 62 65 64 20 61 73 20 70 61    absorbed as pa
d1d0: 72 74 20 6f 66 20 74 68 65 20 62 61 63 6b 73 6c  rt of the backsl
d1e0: 61 73 68 2d 6e 65 77 6c 69 6e 65 2e 20 20 4e 65  ash-newline.  Ne
d1f0: 77 6c 69 6e 65 77 20 61 72 65 20 6e 6f 0a 20 20  wlinew are no.  
d200: 20 20 20 20 6c 6f 6e 67 65 72 20 61 62 73 6f 72      longer absor
d210: 62 65 64 20 28 61 64 64 20 61 6e 6f 74 68 65 72  bed (add another
d220: 20 62 61 63 6b 73 6c 61 73 68 20 69 66 20 79 6f   backslash if yo
d230: 75 20 77 61 6e 74 20 74 6f 20 61 62 73 6f 72 62  u want to absorb
d240: 0a 20 20 20 20 20 20 61 6e 6f 74 68 65 72 20 6e  .      another n
d250: 65 77 6c 69 6e 65 29 2e 0a 20 20 20 20 2d 20 54  ewline)..    - T
d260: 63 6c 57 6f 72 64 45 6e 64 20 72 65 74 75 72 6e  clWordEnd return
d270: 73 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20  s the character 
d280: 6a 75 73 74 20 62 65 66 6f 72 65 20 74 68 65 20  just before the 
d290: 62 61 63 6b 73 6c 61 73 68 20 69 6e 0a 20 20 20  backslash in.   
d2a0: 20 20 20 74 68 65 20 73 65 71 75 65 6e 63 65 20     the sequence 
d2b0: 61 73 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68  as the end of th
d2c0: 65 20 73 65 71 75 65 6e 63 65 3b 20 20 69 74 20  e sequence;  it 
d2d0: 75 73 65 64 20 74 6f 20 6e 6f 74 20 63 6f 6e 73  used to not cons
d2e0: 69 64 65 72 0a 20 20 20 20 20 20 74 68 65 20 62  ider.      the b
d2f0: 61 63 6b 73 6c 61 73 68 2d 6e 65 77 6c 69 6e 65  ackslash-newline
d300: 20 61 73 20 61 20 77 6f 72 64 20 73 65 70 61 72   as a word separ
d310: 61 74 6f 72 2e 20 28 4a 4f 29 0a 0a 38 2f 33 31  ator. (JO)..8/31
d320: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
d330: 29 20 43 68 61 6e 67 65 64 20 6d 61 6e 20 70 61  ) Changed man pa
d340: 67 65 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20  ge installation 
d350: 28 77 69 74 68 20 22 6d 6b 4c 69 6e 6b 73 22 0a  (with "mkLinks".
d360: 73 63 72 69 70 74 29 20 74 6f 20 63 72 65 61 74  script) to creat
d370: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e  e additional lin
d380: 6b 73 20 66 6f 72 20 6d 61 6e 75 61 6c 20 70 61  ks for manual pa
d390: 67 65 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e  ges correspondin
d3a0: 67 20 74 6f 0a 65 61 63 68 20 6f 66 20 74 68 65  g to.each of the
d3b0: 20 70 72 6f 63 65 64 75 72 65 20 61 6e 64 20 63   procedure and c
d3c0: 6f 6d 6d 61 6e 64 20 6e 61 6d 65 73 20 64 65 73  ommand names des
d3d0: 63 72 69 62 65 64 20 69 6e 20 74 68 65 20 70 61  cribed in the pa
d3e0: 67 65 73 2e 20 28 4a 4f 29 0a 0a 39 2f 31 30 2f  ges. (JO)..9/10/
d3f0: 39 35 20 52 65 6f 72 67 61 6e 69 7a 65 64 20 54  95 Reorganized T
d400: 63 6c 20 73 6f 75 72 63 65 73 20 66 6f 72 20 57  cl sources for W
d410: 69 6e 64 6f 77 73 20 61 6e 64 20 4d 61 63 20 70  indows and Mac p
d420: 6f 72 74 73 2e 20 20 41 6c 6c 20 73 6f 75 72 63  orts.  All sourc
d430: 65 73 0a 61 72 65 20 6e 6f 77 20 69 6e 20 73 75  es.are now in su
d440: 62 64 69 72 65 63 74 6f 72 69 65 73 3a 20 20 22  bdirectories:  "
d450: 67 65 6e 65 72 69 63 22 20 63 6f 6e 74 61 69 6e  generic" contain
d460: 73 20 73 6f 75 72 63 65 73 20 74 68 61 74 20 77  s sources that w
d470: 6f 72 6b 20 6f 6e 20 61 6c 6c 0a 70 6c 61 74 66  ork on all.platf
d480: 6f 72 6d 73 2c 20 22 77 69 6e 64 6f 77 73 22 2c  orms, "windows",
d490: 20 22 6d 61 63 22 2c 20 61 6e 64 20 22 75 6e 69   "mac", and "uni
d4a0: 78 22 20 64 69 72 65 63 74 6f 72 69 65 73 20 63  x" directories c
d4b0: 6f 6e 74 61 69 6e 20 70 6c 61 74 66 6f 72 6d 2d  ontain platform-
d4c0: 0a 73 70 65 63 69 66 69 63 20 73 6f 75 72 63 65  .specific source
d4d0: 73 2e 20 20 53 6f 6d 65 20 55 4e 49 58 20 73 6f  s.  Some UNIX so
d4e0: 75 72 63 65 73 20 61 72 65 20 61 6c 73 6f 20 75  urces are also u
d4f0: 73 65 64 20 6f 6e 20 6f 74 68 65 72 20 70 6c 61  sed on other pla
d500: 74 66 6f 72 6d 73 2e 20 28 53 53 29 0a 0a 39 2f  tforms. (SS)..9/
d510: 31 30 2f 39 35 20 28 66 65 61 74 75 72 65 20 63  10/95 (feature c
d520: 68 61 6e 67 65 29 20 45 6c 69 6d 69 6e 61 74 65  hange) Eliminate
d530: 64 20 65 78 70 6f 72 74 65 64 20 67 6c 6f 62 61  d exported globa
d540: 6c 20 76 61 72 69 61 62 6c 65 73 20 28 74 68 65  l variables (the
d550: 79 0a 64 6f 6e 27 74 20 77 6f 72 6b 20 77 69 74  y.don't work wit
d560: 68 20 57 69 6e 64 6f 77 73 20 44 4c 4c 73 29 2e  h Windows DLLs).
d570: 20 20 52 65 70 6c 61 63 65 64 20 74 63 6c 5f 41    Replaced tcl_A
d580: 73 79 6e 63 52 65 61 64 79 20 61 6e 64 0a 74 63  syncReady and.tc
d590: 6c 5f 46 69 6c 65 43 6c 6f 73 65 50 72 6f 63 20  l_FileCloseProc 
d5a0: 77 69 74 68 20 70 72 6f 63 65 64 75 72 65 73 20  with procedures 
d5b0: 54 63 6c 5f 41 73 79 6e 63 52 65 61 64 79 28 29  Tcl_AsyncReady()
d5c0: 20 61 6e 64 0a 54 63 6c 5f 53 65 74 46 69 6c 65   and.Tcl_SetFile
d5d0: 43 6c 6f 73 65 50 72 6f 63 28 29 2e 20 20 52 65  CloseProc().  Re
d5e0: 70 6c 61 63 65 64 20 43 20 76 61 72 69 61 62 6c  placed C variabl
d5f0: 65 20 74 63 6c 5f 52 63 46 69 6c 65 4e 61 6d 65  e tcl_RcFileName
d600: 20 77 69 74 68 0a 61 20 54 63 6c 20 76 61 72 69   with.a Tcl vari
d610: 61 62 6c 65 20 74 63 6c 5f 72 63 46 69 6c 65 4e  able tcl_rcFileN
d620: 61 6d 65 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f  ame. (SS).*** PO
d630: 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
d640: 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 39 2f 31  IBILITY ***..9/1
d650: 31 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  1/95 (new featur
d660: 65 29 20 41 64 64 65 64 20 70 72 6f 63 65 64 75  e) Added procedu
d670: 72 65 20 54 63 6c 5f 53 65 74 50 61 6e 69 63 50  re Tcl_SetPanicP
d680: 72 6f 63 20 74 6f 20 6f 76 65 72 72 69 64 65 0a  roc to override.
d690: 74 68 65 20 64 65 66 61 75 6c 74 20 69 6d 70 6c  the default impl
d6a0: 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 22 70  ementation of "p
d6b0: 61 6e 69 63 22 2e 20 28 53 53 29 0a 0a 39 2f 31  anic". (SS)..9/1
d6c0: 31 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  1/95 (new featur
d6d0: 65 29 20 41 64 64 65 64 20 22 69 6e 74 65 72 70  e) Added "interp
d6e0: 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 6c 6c  " command to all
d6f0: 6f 77 20 63 72 65 61 74 69 6f 6e 20 6f 66 0a 6e  ow creation of.n
d700: 65 77 20 69 6e 74 65 72 70 72 65 74 65 72 73 20  ew interpreters 
d710: 61 6e 64 20 65 78 65 63 75 74 69 6f 6e 20 6f 66  and execution of
d720: 20 75 6e 74 72 75 73 74 65 64 20 73 63 72 69 70   untrusted scrip
d730: 74 73 2e 20 20 41 64 64 65 64 20 6d 61 6e 79 20  ts.  Added many 
d740: 6e 65 77 0a 70 72 6f 63 65 64 75 72 65 73 2c 20  new.procedures, 
d750: 73 75 63 68 20 61 73 20 54 63 6c 5f 43 72 65 61  such as Tcl_Crea
d760: 74 65 53 6c 61 76 65 2c 20 54 63 6c 5f 43 72 65  teSlave, Tcl_Cre
d770: 61 74 65 41 6c 69 61 73 2c 61 6e 64 20 54 63 6c  ateAlias,and Tcl
d780: 5f 4d 61 6b 65 53 61 66 65 2c 0a 74 6f 20 70 72  _MakeSafe,.to pr
d790: 6f 76 69 64 65 20 43 2d 6c 65 76 65 6c 20 61 63  ovide C-level ac
d7a0: 63 65 73 73 20 74 6f 20 74 68 65 20 69 6e 74 65  cess to the inte
d7b0: 72 70 72 65 74 65 72 20 66 61 63 69 6c 69 74 79  rpreter facility
d7c0: 2e 20 54 68 69 73 20 6d 65 63 68 61 6e 69 73 6d  . This mechanism
d7d0: 0a 6e 6f 77 20 70 72 6f 76 69 64 65 73 20 61 6c  .now provides al
d7e0: 6d 6f 73 74 20 61 6c 6c 20 6f 66 20 74 68 65 20  most all of the 
d7f0: 67 65 6e 65 72 69 63 20 66 75 6e 63 74 69 6f 6e  generic function
d800: 73 20 6f 66 20 42 6f 72 65 6e 73 74 65 69 6e 27  s of Borenstein'
d810: 73 20 61 6e 64 0a 52 6f 73 65 27 73 20 53 61 66  s and.Rose's Saf
d820: 65 2d 54 63 6c 20 28 62 75 74 20 6e 6f 74 20 61  e-Tcl (but not a
d830: 6e 79 20 54 6b 20 6f 72 20 65 6d 61 69 6c 2d 72  ny Tk or email-r
d840: 65 6c 61 74 65 64 20 73 74 75 66 66 29 2e 20 20  elated stuff).  
d850: 28 4a 4c 29 0a 0a 39 2f 31 31 2f 39 35 20 28 66  (JL)..9/11/95 (f
d860: 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
d870: 68 61 6e 67 65 64 20 66 69 6c 65 20 6d 61 6e 61  hanged file mana
d880: 67 65 6d 65 6e 74 20 73 6f 20 74 68 61 74 20 66  gement so that f
d890: 69 6c 65 73 20 61 72 65 0a 6e 6f 20 6c 6f 6e 67  iles are.no long
d8a0: 65 72 20 73 68 61 72 65 64 20 62 65 74 77 65 65  er shared betwee
d8b0: 6e 20 69 6e 74 65 72 70 72 65 74 65 72 73 3a 20  n interpreters: 
d8c0: 20 61 20 66 69 6c 65 20 63 61 6e 6e 6f 74 20 6e   a file cannot n
d8d0: 6f 72 6d 61 6c 6c 79 20 62 65 0a 72 65 66 65 72  ormally be.refer
d8e0: 65 6e 63 65 64 20 69 6e 20 6f 6e 65 20 69 6e 74  enced in one int
d8f0: 65 72 70 72 65 74 65 72 20 69 66 20 69 74 20 77  erpreter if it w
d900: 61 73 20 6f 70 65 6e 65 64 20 69 6e 20 61 6e 6f  as opened in ano
d910: 74 68 65 72 2e 20 20 54 68 69 73 0a 66 65 61 74  ther.  This.feat
d920: 75 72 65 20 69 73 20 6e 65 65 64 65 64 20 74 6f  ure is needed to
d930: 20 73 75 70 70 6f 72 74 20 73 61 66 65 20 69 6e   support safe in
d940: 74 65 72 70 72 65 74 65 72 73 2e 20 20 41 64 64  terpreters.  Add
d950: 65 64 20 54 63 6c 5f 53 68 61 72 65 48 61 6e 64  ed Tcl_ShareHand
d960: 6c 65 28 29 0a 70 72 6f 63 65 64 75 72 65 20 66  le().procedure f
d970: 6f 72 20 61 6c 6c 6f 77 69 6e 67 20 66 69 6c 65  or allowing file
d980: 73 20 74 6f 20 62 65 20 73 68 61 72 65 64 2c 20  s to be shared, 
d990: 61 6e 64 20 61 64 64 65 64 20 22 69 6e 74 65 72  and added "inter
d9a0: 70 22 20 61 72 67 75 6d 65 6e 74 0a 74 6f 20 54  p" argument.to T
d9b0: 63 6c 5f 46 69 6c 65 50 65 72 6d 69 73 73 69 6f  cl_FilePermissio
d9c0: 6e 73 20 70 72 6f 63 65 64 75 72 65 2e 20 28 4a  ns procedure. (J
d9d0: 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  L).*** POTENTIAL
d9e0: 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
d9f0: 20 2a 2a 2a 0a 0a 39 2f 31 31 2f 39 35 20 28 6e   ***..9/11/95 (n
da00: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
da10: 64 20 22 41 73 73 6f 63 44 61 74 61 22 20 6d 65  d "AssocData" me
da20: 63 68 61 6e 69 73 6d 2c 20 77 68 65 72 65 62 79  chanism, whereby
da30: 20 65 78 74 65 6e 73 69 6f 6e 73 0a 63 61 6e 20   extensions.can 
da40: 61 73 73 6f 63 69 61 74 65 20 74 68 65 69 72 20  associate their 
da50: 6f 77 6e 20 64 61 74 61 20 77 69 74 68 20 61 6e  own data with an
da60: 20 69 6e 74 65 72 70 72 65 74 65 72 20 61 6e 64   interpreter and
da70: 20 67 65 74 20 63 61 6c 6c 65 64 20 62 61 63 6b   get called back
da80: 0a 77 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70  .when the interp
da90: 72 65 74 65 72 20 69 73 20 64 65 6c 65 74 65 64  reter is deleted
daa0: 2e 20 20 54 68 69 73 20 69 73 20 76 69 73 69 62  .  This is visib
dab0: 6c 65 20 61 74 20 43 20 6c 65 76 65 6c 20 76 69  le at C level vi
dac0: 61 20 74 68 65 0a 70 72 6f 63 65 64 75 72 65 73  a the.procedures
dad0: 20 54 63 6c 5f 53 65 74 41 73 73 6f 63 44 61 74   Tcl_SetAssocDat
dae0: 61 20 61 6e 64 20 54 63 6c 5f 47 65 74 41 73 73  a and Tcl_GetAss
daf0: 6f 63 44 61 74 61 2e 20 20 28 4a 4c 29 0a 0a 39  ocData.  (JL)..9
db00: 2f 31 31 2f 39 35 20 28 6e 65 77 20 66 65 61 74  /11/95 (new feat
db10: 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 45  ure) Added Tcl_E
db20: 72 72 6e 6f 4d 73 67 20 74 6f 20 74 72 61 6e 73  rrnoMsg to trans
db30: 6c 61 74 65 20 61 6e 20 65 72 72 6e 6f 20 76 61  late an errno va
db40: 6c 75 65 0a 69 6e 74 6f 20 61 20 68 75 6d 61 6e  lue.into a human
db50: 2d 72 65 61 64 61 62 6c 65 20 73 74 72 69 6e 67  -readable string
db60: 2e 20 20 54 68 69 73 20 69 73 20 6e 6f 77 20 75  .  This is now u
db70: 73 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 63  sed instead of c
db80: 61 6c 6c 69 6e 67 0a 73 74 72 65 72 72 6f 72 20  alling.strerror 
db90: 62 65 63 61 75 73 65 20 73 74 72 65 72 72 6f 72  because strerror
dba0: 20 6d 65 73 61 67 65 73 20 76 61 72 79 20 64 72   mesages vary dr
dbb0: 61 6d 61 74 69 63 61 6c 6c 79 20 66 72 6f 6d 20  amatically from 
dbc0: 70 6c 61 74 66 6f 72 6d 0a 74 6f 20 70 6c 61 74  platform.to plat
dbd0: 66 6f 72 6d 2c 20 77 68 69 63 68 20 6d 65 73 73  form, which mess
dbe0: 65 73 20 75 70 20 54 63 6c 20 74 65 73 74 73 2e  es up Tcl tests.
dbf0: 20 20 54 63 6c 5f 45 72 72 6e 6f 4d 73 67 20 75    Tcl_ErrnoMsg u
dc00: 73 65 73 20 74 68 65 20 73 74 61 6e 64 61 72 64  ses the standard
dc10: 0a 50 4f 53 49 58 20 6d 65 73 73 61 67 65 73 20  .POSIX messages 
dc20: 66 6f 72 20 61 6c 6c 20 74 68 65 20 63 6f 6d 6d  for all the comm
dc30: 6f 6e 20 73 69 67 6e 61 6c 73 2c 20 61 6e 64 20  on signals, and 
dc40: 63 61 6c 6c 73 20 73 74 72 65 72 72 6f 72 20 66  calls strerror f
dc50: 6f 72 0a 73 69 67 6e 61 6c 73 20 69 74 20 64 6f  or.signals it do
dc60: 65 73 6e 27 74 20 75 6e 64 65 72 73 74 61 6e 64  esn't understand
dc70: 2e 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ...-------------
dc80: 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 70 61  ---- Released pa
dc90: 74 63 68 20 37 2e 34 70 32 2c 20 39 2f 31 35 2f  tch 7.4p2, 9/15/
dca0: 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  95 -------------
dcb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 2d 2d 2d 2d  ----------..----
dcc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
dcd0: 6c 65 61 73 65 64 20 37 2e 35 61 31 2c 20 39 2f  leased 7.5a1, 9/
dce0: 31 35 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  15/95 ----------
dcf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39  -------------..9
dd00: 2f 32 32 2f 39 35 20 28 62 75 67 20 66 69 78 29  /22/95 (bug fix)
dd10: 20 43 68 61 6e 67 65 64 20 61 75 74 6f 5f 6d 6b   Changed auto_mk
dd20: 69 6e 64 65 78 20 74 6f 20 63 72 65 61 74 65 20  index to create 
dd30: 74 63 6c 49 6e 64 65 78 20 66 69 6c 65 73 20 74  tclIndex files t
dd40: 68 61 74 0a 68 61 6e 64 6c 65 20 64 69 72 65 63  hat.handle direc
dd50: 74 6f 72 69 65 73 20 77 68 6f 73 65 20 70 61 74  tories whose pat
dd60: 68 73 20 6d 69 67 68 74 20 63 6f 6e 74 61 69 6e  hs might contain
dd70: 20 73 70 61 63 65 73 2e 20 28 52 4a 29 0a 0a 39   spaces. (RJ)..9
dd80: 2f 32 37 2f 39 35 20 28 62 75 67 20 66 69 78 29  /27/95 (bug fix)
dd90: 20 54 68 65 20 22 66 6f 72 6d 61 74 22 20 63 6f   The "format" co
dda0: 6d 6d 61 6e 64 20 64 69 64 6e 27 74 20 63 68 65  mmand didn't che
ddb0: 63 6b 20 66 6f 72 20 68 75 67 65 20 6f 72 20 6e  ck for huge or n
ddc0: 65 67 61 74 69 76 65 0a 77 69 64 74 68 20 73 70  egative.width sp
ddd0: 65 63 69 66 69 65 72 73 2c 20 77 68 69 63 68 20  ecifiers, which 
dde0: 63 6f 75 6c 64 20 63 61 75 73 65 20 63 6f 72 65  could cause core
ddf0: 20 64 75 6d 70 73 2e 20 28 4a 4f 29 0a 0a 39 2f   dumps. (JO)..9/
de00: 32 37 2f 39 35 20 28 62 75 67 20 66 69 78 29 20  27/95 (bug fix) 
de10: 43 6f 72 65 20 64 75 6d 70 73 20 63 6f 75 6c 64  Core dumps could
de20: 20 6f 63 63 75 72 20 69 66 20 61 6e 20 69 6e 74   occur if an int
de30: 65 72 61 63 74 69 76 65 20 63 6f 6d 6d 61 6e 64  eractive command
de40: 20 74 79 70 65 64 0a 74 6f 20 74 63 6c 73 68 20   typed.to tclsh 
de50: 72 65 74 75 72 6e 65 64 20 61 20 76 65 72 79 20  returned a very 
de60: 6c 6f 6e 67 20 72 65 73 75 6c 74 20 66 6f 72 20  long result for 
de70: 74 63 6c 73 68 20 74 6f 20 70 72 69 6e 74 20 6f  tclsh to print o
de80: 75 74 2e 20 20 54 68 65 20 62 75 67 20 69 73 0a  ut.  The bug is.
de90: 61 63 74 75 61 6c 6c 79 20 69 6e 20 70 72 69 6e  actually in prin
dea0: 74 66 20 28 69 6e 20 53 6f 6c 61 72 69 73 20 32  tf (in Solaris 2
deb0: 2e 33 20 61 6e 64 20 32 2e 34 2c 20 61 74 20 6c  .3 and 2.4, at l
dec0: 65 61 73 74 29 3b 20 20 73 77 69 74 63 68 65 64  east);  switched
ded0: 20 74 6f 20 75 73 65 0a 70 75 74 73 20 69 6e 73   to use.puts ins
dee0: 74 65 61 64 2e 20 20 28 4a 4f 29 0a 0a 39 2f 32  tead.  (JO)..9/2
def0: 38 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 43  8/95 (bug fix) C
df00: 68 61 6e 67 65 64 20 6d 61 6b 65 66 69 6c 65 2e  hanged makefile.
df10: 62 63 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 20  bc to eliminate 
df20: 61 20 66 61 6c 73 65 20 64 65 70 65 6e 64 65 6e  a false dependen
df30: 63 79 0a 66 6f 72 20 74 63 6c 31 36 37 35 2e 64  cy.for tcl1675.d
df40: 6c 6c 20 6f 6e 20 74 68 65 20 42 6f 72 6c 61 6e  ll on the Borlan
df50: 64 20 72 75 6e 20 74 69 6d 65 20 6c 69 62 72 61  d run time libra
df60: 72 79 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39  ry. (SS)..9/28/9
df70: 35 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  5 (bug fix) Fixe
df80: 64 20 74 63 6c 37 35 2e 64 6c 6c 20 73 6f 20 69  d tcl75.dll so i
df90: 74 20 6c 6f 6f 6b 73 20 66 6f 72 20 74 63 6c 31  t looks for tcl1
dfa0: 36 37 35 2e 64 6c 6c 20 69 6e 73 74 65 61 64 0a  675.dll instead.
dfb0: 6f 66 20 74 63 6c 31 36 2e 64 6c 6c 2e 20 28 53  of tcl16.dll. (S
dfc0: 53 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67  S)..9/28/95 (bug
dfd0: 20 66 69 78 29 20 54 63 6c 20 77 61 73 20 6e 6f   fix) Tcl was no
dfe0: 74 20 63 6f 72 72 65 63 74 6c 79 20 64 65 74 65  t correctly dete
dff0: 63 74 69 6e 67 20 74 68 65 20 64 69 66 66 65 72  cting the differ
e000: 65 6e 63 65 0a 62 65 74 77 65 65 6e 20 57 69 6e  ence.between Win
e010: 33 32 73 20 61 6e 64 20 57 69 6e 64 6f 77 73 20  32s and Windows 
e020: 27 39 35 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f  '95. (SS)..9/28/
e030: 39 35 20 28 62 75 67 20 66 69 78 29 20 22 65 78  95 (bug fix) "ex
e040: 65 63 22 20 77 61 73 20 6e 6f 74 20 70 61 73 73  ec" was not pass
e050: 69 6e 67 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20  ing environment 
e060: 63 68 61 6e 67 65 73 20 74 6f 20 63 68 69 6c 64  changes to child
e070: 0a 70 72 6f 63 65 73 73 65 73 20 75 6e 64 65 72  .processes under
e080: 20 57 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a   Windows. (SS)..
e090: 39 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78  9/28/95 (bug fix
e0a0: 29 20 43 68 61 6e 67 65 64 20 54 63 6c 20 74 6f  ) Changed Tcl to
e0b0: 20 65 6e 73 75 72 65 20 74 68 61 74 20 6f 70 65   ensure that ope
e0c0: 6e 20 66 69 6c 65 73 20 61 72 65 20 6e 6f 74 20  n files are not 
e0d0: 70 61 73 73 65 64 0a 74 6f 20 63 68 69 6c 64 20  passed.to child 
e0e0: 70 72 6f 63 65 73 73 65 73 20 75 6e 64 65 72 20  processes under 
e0f0: 57 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a 39  Windows. (SS)..9
e100: 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29  /28/95 (bug fix)
e110: 20 46 69 78 65 64 20 57 69 6e 64 6f 77 73 20 27   Fixed Windows '
e120: 39 35 20 61 6e 64 20 4e 54 20 76 65 72 73 69 6f  95 and NT versio
e130: 6e 73 20 6f 66 20 65 78 65 63 20 73 6f 20 69 74  ns of exec so it
e140: 20 63 61 6e 0a 68 61 6e 64 6c 65 20 62 6f 74 68   can.handle both
e150: 20 63 6f 6e 73 6f 6c 65 20 61 6e 64 20 77 69 6e   console and win
e160: 64 6f 77 73 20 61 70 70 73 2e 20 20 20 28 53 53  dows apps.   (SS
e170: 29 0a 0a 39 2f 32 38 2f 39 35 20 28 62 75 67 20  )..9/28/95 (bug 
e180: 66 69 78 29 20 46 69 78 65 64 20 57 69 6e 64 6f  fix) Fixed Windo
e190: 77 73 20 76 65 72 73 69 6f 6e 20 6f 66 20 65 78  ws version of ex
e1a0: 65 63 20 73 6f 20 69 74 20 6e 6f 20 6c 6f 6e 67  ec so it no long
e1b0: 65 72 20 6c 65 61 76 65 73 0a 74 65 6d 70 20 66  er leaves.temp f
e1c0: 69 6c 65 73 20 6c 79 69 6e 67 20 61 72 6f 75 6e  iles lying aroun
e1d0: 64 2e 20 20 41 6c 73 6f 20 63 68 61 6e 67 65 64  d.  Also changed
e1e0: 20 69 74 20 73 6f 20 74 68 65 20 74 65 6d 70 20   it so the temp 
e1f0: 66 69 6c 65 73 20 61 72 65 0a 63 72 65 61 74 65  files are.create
e200: 64 20 69 6e 20 74 68 65 20 61 70 70 72 6f 70 72  d in the appropr
e210: 69 61 74 65 20 73 79 73 74 65 6d 20 64 65 70 65  iate system depe
e220: 6e 64 65 6e 74 20 74 65 6d 70 20 64 69 72 65 63  ndent temp direc
e230: 74 6f 72 79 2e 20 28 53 53 29 0a 0a 39 2f 32 38  tory. (SS)..9/28
e240: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 45 6c  /95 (bug fix) El
e250: 69 6d 69 6e 61 74 65 64 20 73 6f 75 72 63 65 20  iminated source 
e260: 64 65 70 65 6e 64 65 6e 63 79 20 6f 6e 20 74 68  dependency on th
e270: 65 20 57 69 6e 33 32 73 20 55 6e 69 76 65 72 73  e Win32s Univers
e280: 61 6c 0a 54 68 75 6e 6b 20 68 65 61 64 65 72 20  al.Thunk header 
e290: 66 69 6c 65 2c 20 73 69 6e 63 65 20 69 74 20 69  file, since it i
e2a0: 73 20 6e 6f 74 20 62 75 6e 64 6c 65 64 20 77 69  s not bundled wi
e2b0: 74 68 20 56 43 2b 2b 2e 20 28 53 53 29 0a 0a 39  th VC++. (SS)..9
e2c0: 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69 78 29  /28/95 (bug fix)
e2d0: 20 55 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20   Under Windows, 
e2e0: 54 63 6c 20 6e 6f 77 20 63 6f 6e 73 74 72 75 63  Tcl now construc
e2f0: 74 73 20 74 68 65 20 48 4f 4d 45 0a 65 6e 76 69  ts the HOME.envi
e300: 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65  ronment variable
e310: 20 66 72 6f 6d 20 48 4f 4d 45 50 41 54 48 20 61   from HOMEPATH a
e320: 6e 64 20 48 4f 4d 45 44 52 49 56 45 20 77 68 65  nd HOMEDRIVE whe
e330: 6e 20 48 4f 4d 45 20 69 73 20 6e 6f 74 0a 61 6c  n HOME is not.al
e340: 72 65 61 64 79 20 73 65 74 2e 20 28 53 53 29 0a  ready set. (SS).
e350: 0a 39 2f 32 38 2f 39 35 20 28 62 75 67 20 66 69  .9/28/95 (bug fi
e360: 78 29 20 41 64 64 65 64 20 73 75 70 70 6f 72 74  x) Added support
e370: 20 66 6f 72 20 22 69 6e 66 6f 20 6e 61 6d 65 6f   for "info nameo
e380: 66 65 78 65 63 75 74 61 62 6c 65 22 20 61 6e 64  fexecutable" and
e390: 20 22 69 6e 66 6f 0a 73 68 61 72 65 64 6c 69 62   "info.sharedlib
e3a0: 65 78 74 65 6e 73 69 6f 6e 22 20 74 6f 20 74 68  extension" to th
e3b0: 65 20 57 69 6e 64 6f 77 73 20 76 65 72 73 69 6f  e Windows versio
e3c0: 6e 2e 20 28 53 53 29 0a 0a 39 2f 32 38 2f 39 35  n. (SS)..9/28/95
e3d0: 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67   (bug fix) Chang
e3e0: 65 64 20 74 63 6c 73 68 20 74 6f 20 63 6f 72 72  ed tclsh to corr
e3f0: 65 63 74 6c 79 20 70 61 72 73 65 20 63 6f 6d 6d  ectly parse comm
e400: 61 6e 64 20 6c 69 6e 65 0a 61 72 67 75 6d 65 6e  and line.argumen
e410: 74 73 20 73 6f 20 74 68 61 74 20 62 61 63 6b 73  ts so that backs
e420: 6c 61 73 68 65 73 20 61 72 65 20 70 72 65 73 65  lashes are prese
e430: 72 76 65 64 20 75 6e 64 65 72 20 57 69 6e 64 6f  rved under Windo
e440: 77 73 2e 20 28 53 53 29 0a 0a 39 2f 32 39 2f 39  ws. (SS)..9/29/9
e450: 35 20 28 62 75 67 20 66 69 78 29 20 54 63 6c 20  5 (bug fix) Tcl 
e460: 37 2e 35 61 31 20 74 72 65 61 74 65 64 20 65 69  7.5a1 treated ei
e470: 74 68 65 72 20 72 65 74 75 72 6e 20 6f 72 20 6e  ther return or n
e480: 65 77 6c 69 6e 65 20 61 73 20 65 6e 64 0a 6f 66  ewline as end.of
e490: 20 6c 69 6e 65 20 69 6e 20 22 67 65 74 73 22 2c   line in "gets",
e4a0: 20 77 68 69 63 68 20 63 61 75 73 65 64 20 6c 69   which caused li
e4b0: 6e 65 73 20 65 6e 64 69 6e 67 20 69 6e 20 43 52  nes ending in CR
e4c0: 4c 46 20 74 6f 20 62 65 20 74 72 65 61 74 65 64  LF to be treated
e4d0: 20 61 73 0a 74 77 6f 20 73 65 70 61 72 61 74 65   as.two separate
e4e0: 20 6c 69 6e 65 73 2e 20 20 43 68 61 6e 67 65 64   lines.  Changed
e4f0: 20 74 6f 20 61 6c 6c 6f 77 20 6f 6e 6c 79 20 63   to allow only c
e500: 68 61 72 61 63 74 65 72 20 61 73 20 65 6e 64 2d  haracter as end-
e510: 6f 66 2d 6c 69 6e 65 3a 0a 63 61 72 72 69 61 67  of-line:.carriag
e520: 65 20 72 65 74 75 72 6e 20 6f 6e 20 4d 61 63 73  e return on Macs
e530: 2c 20 6e 65 77 6c 69 6e 65 20 65 6c 73 65 77 68  , newline elsewh
e540: 65 72 65 2e 20 28 4a 4f 29 0a 0a 39 2f 32 39 2f  ere. (JO)..9/29/
e550: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  95 (new feature)
e560: 20 43 68 61 6e 67 65 64 20 74 6f 20 69 6e 73 74   Changed to inst
e570: 61 6c 6c 20 22 63 6f 6e 66 69 67 49 6e 66 6f 22  all "configInfo"
e580: 20 66 69 6c 65 20 69 6e 20 73 61 6d 65 0a 64 69   file in same.di
e590: 72 65 63 74 6f 72 79 20 61 73 20 6c 69 62 72 61  rectory as libra
e5a0: 72 79 20 73 63 72 69 70 74 73 2e 20 20 49 74 20  ry scripts.  It 
e5b0: 64 69 64 6e 27 74 20 75 73 65 64 20 74 6f 20 67  didn't used to g
e5c0: 65 74 20 69 6e 73 74 61 6c 6c 65 64 2e 20 28 4a  et installed. (J
e5d0: 4f 29 0a 0a 39 2f 32 39 2f 39 35 20 28 62 75 67  O)..9/29/95 (bug
e5e0: 20 66 69 78 29 20 54 63 6c 20 77 61 73 20 6e 6f   fix) Tcl was no
e5f0: 74 20 63 6f 6e 76 65 72 74 69 6e 67 20 57 69 6e  t converting Win
e600: 33 32 20 65 72 72 6f 72 73 20 69 6e 74 6f 20 50  32 errors into P
e610: 4f 53 49 58 0a 65 72 72 6f 72 73 20 75 6e 64 65  OSIX.errors unde
e620: 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74 61  r some circumsta
e630: 6e 63 65 73 2e 20 28 53 53 29 0a 0a 31 30 2f 32  nces. (SS)..10/2
e640: 2f 39 35 20 28 62 75 67 20 66 69 78 29 20 53 61  /95 (bug fix) Sa
e650: 66 65 20 69 6e 74 65 72 70 72 65 74 65 72 73 20  fe interpreters 
e660: 6e 6f 20 6c 6f 6e 67 65 72 20 67 65 74 20 69 6e  no longer get in
e670: 69 74 69 61 6c 69 7a 65 64 20 77 69 74 68 0a 61  itialized with.a
e680: 20 63 61 6c 6c 20 74 6f 20 54 63 6c 5f 49 6e 69   call to Tcl_Ini
e690: 74 28 29 2e 20 28 4a 4c 29 0a 0a 31 30 2f 31 2f  t(). (JL)..10/1/
e6a0: 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  95 (new feature)
e6b0: 20 41 64 64 65 64 20 22 74 63 6c 5f 70 6c 61 74   Added "tcl_plat
e6c0: 66 6f 72 6d 22 20 67 6c 6f 62 61 6c 20 76 61 72  form" global var
e6d0: 69 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65  iable to provide
e6e0: 0a 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 69 6e 66  .environment inf
e6f0: 6f 72 6d 61 74 69 6f 6e 20 73 75 63 68 20 61 73  ormation such as
e700: 20 74 68 65 20 69 6e 73 74 72 75 63 74 69 6f 6e   the instruction
e710: 20 73 65 74 20 61 6e 64 20 6f 70 65 72 61 74 69   set and operati
e720: 6e 67 0a 73 79 73 74 65 6d 2e 20 28 4a 4f 29 0a  ng.system. (JO).
e730: 0a 31 30 2f 31 2f 39 35 20 28 62 75 67 20 66 69  .10/1/95 (bug fi
e740: 78 29 20 22 65 78 65 63 22 20 63 6f 6d 6d 61 6e  x) "exec" comman
e750: 64 20 77 61 73 6e 27 74 20 61 6c 77 61 79 73 20  d wasn't always 
e760: 67 65 6e 65 72 61 74 69 6e 67 20 74 68 65 0a 22  generating the."
e770: 63 68 69 6c 64 20 70 72 6f 63 65 73 73 20 65 78  child process ex
e780: 69 74 65 64 20 61 62 6e 6f 72 6d 61 6c 6c 79 22  ited abnormally"
e790: 20 6d 65 73 73 61 67 65 20 77 68 65 6e 20 69 74   message when it
e7a0: 20 73 68 6f 75 6c 64 20 68 61 76 65 2e 20 20 28   should have.  (
e7b0: 4a 4f 29 0a 0a 31 30 2f 32 2f 39 35 20 28 62 75  JO)..10/2/95 (bu
e7c0: 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 22  g fix) Changed "
e7d0: 6d 6b 4c 69 6e 6b 73 2e 74 63 6c 22 20 73 6f 20  mkLinks.tcl" so 
e7e0: 74 68 61 74 20 74 68 65 20 73 63 72 69 70 74 73  that the scripts
e7f0: 20 69 74 20 67 65 6e 65 72 61 74 65 73 0a 77 6f   it generates.wo
e800: 6e 27 74 20 63 72 65 61 74 65 20 6c 69 6e 6b 73  n't create links
e810: 20 74 68 61 74 20 6f 76 65 72 77 72 69 74 65 20   that overwrite 
e820: 6f 72 69 67 69 6e 61 6c 20 6d 61 6e 75 61 6c 20  original manual 
e830: 65 6e 74 72 69 65 73 20 28 74 68 65 72 65 20 77  entries (there w
e840: 61 73 0a 61 20 70 72 6f 62 6c 65 6d 20 77 68 65  as.a problem whe
e850: 72 65 20 70 61 63 6b 2d 6f 6c 64 2e 6e 20 77 61  re pack-old.n wa
e860: 73 20 6f 76 65 72 77 72 69 74 69 6e 67 20 70 61  s overwriting pa
e870: 63 6b 2e 6e 29 2e 20 20 28 4a 4f 29 0a 0a 31 30  ck.n).  (JO)..10
e880: 2f 32 2f 39 35 20 28 66 65 61 74 75 72 65 20 63  /2/95 (feature c
e890: 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 74  hange) Changed t
e8a0: 6f 20 75 73 65 20 2d 6c 64 6c 20 66 6f 72 20 64  o use -ldl for d
e8b0: 79 6e 61 6d 69 63 20 6c 6f 61 64 69 6e 67 20 75  ynamic loading u
e8c0: 6e 64 65 72 0a 4c 69 6e 75 78 20 69 66 20 69 74  nder.Linux if it
e8d0: 20 69 73 20 61 76 61 69 6c 61 62 6c 65 2c 20 62   is available, b
e8e0: 75 74 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20  ut fall back to 
e8f0: 2d 6c 64 6c 64 20 69 66 20 69 74 20 69 73 6e 27  -ldld if it isn'
e900: 74 2e 20 20 28 4a 4f 29 0a 0a 31 30 2f 32 2f 39  t.  (JO)..10/2/9
e910: 35 20 28 62 75 67 20 66 69 78 29 20 46 69 6c 65  5 (bug fix) File
e920: 20 73 68 61 72 69 6e 67 20 77 61 73 20 63 61 75   sharing was cau
e930: 73 69 6e 67 20 72 65 66 63 6f 75 6e 74 73 20 74  sing refcounts t
e940: 6f 20 72 65 61 63 68 20 30 0a 70 72 65 6d 61 74  o reach 0.premat
e950: 75 72 65 6c 79 20 66 6f 72 20 73 74 64 69 6e 2c  urely for stdin,
e960: 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64 65   stdout and stde
e970: 72 72 2c 20 75 6e 64 65 72 20 73 6f 6d 65 20 63  rr, under some c
e980: 69 72 63 75 6d 73 74 61 6e 63 65 73 2e 20 28 4a  ircumstances. (J
e990: 4c 29 0a 0a 31 30 2f 32 2f 39 35 20 28 70 6c 61  L)..10/2/95 (pla
e9a0: 74 66 6f 72 6d 20 73 75 70 70 6f 72 74 29 20 41  tform support) A
e9b0: 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
e9c0: 20 56 69 73 75 61 6c 20 43 2b 2b 20 63 6f 6d 70   Visual C++ comp
e9d0: 69 6c 65 72 20 6f 6e 0a 57 69 6e 64 6f 77 73 2c  iler on.Windows,
e9e0: 20 57 69 6e 64 6f 77 73 20 27 39 35 20 61 6e 64   Windows '95 and
e9f0: 20 57 69 6e 64 6f 77 73 20 4e 54 2c 20 63 6f 64   Windows NT, cod
ea00: 65 20 64 6f 6e 61 74 65 64 20 62 79 20 47 6f 72  e donated by Gor
ea10: 64 6f 6e 20 43 68 61 66 66 65 65 2e 20 28 4a 4c  don Chaffee. (JL
ea20: 29 0a 0a 31 30 2f 33 2f 39 35 20 28 62 75 67 20  )..10/3/95 (bug 
ea30: 66 69 78 29 20 54 63 6c 20 6e 6f 77 20 66 72 65  fix) Tcl now fre
ea40: 65 73 20 61 6e 79 20 6c 69 62 72 61 72 69 65 73  es any libraries
ea50: 20 74 68 61 74 20 69 74 20 6c 6f 61 64 73 20 62   that it loads b
ea60: 65 66 6f 72 65 20 69 74 0a 65 78 69 74 73 2e 20  efore it.exits. 
ea70: 28 53 53 29 0a 0a 31 30 2f 30 33 2f 39 35 20 28  (SS)..10/03/95 (
ea80: 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
ea90: 75 67 20 69 6e 20 4d 61 63 69 6e 74 6f 73 68 20  ug in Macintosh 
eaa0: 6c 73 20 63 6f 6d 6d 61 6e 64 20 77 68 65 72 65  ls command where
eab0: 20 74 68 65 20 2d 6c 0a 61 6e 64 20 2d 43 20 6f   the -l.and -C o
eac0: 70 74 69 6f 6e 73 20 77 6f 75 6c 64 20 66 61 69  ptions would fai
ead0: 6c 20 69 6e 20 61 6e 79 74 68 69 6e 67 20 62 75  l in anything bu
eae0: 74 20 74 68 65 20 48 4f 4d 45 20 64 69 72 65 63  t the HOME direc
eaf0: 74 6f 72 79 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d  tory. (RJ)..----
eb00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
eb10: 6c 65 61 73 65 64 20 37 2e 35 61 32 2c 20 31 30  leased 7.5a2, 10
eb20: 2f 36 2f 39 35 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /6/95 ----------
eb30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31  -------------..1
eb40: 30 2f 31 30 2f 39 35 20 28 62 75 67 20 66 69 78  0/10/95 (bug fix
eb50: 29 20 22 66 69 6c 65 20 64 69 72 6e 61 6d 20 2f  ) "file dirnam /
eb60: 2e 22 20 77 61 73 20 72 65 74 75 72 6e 69 6e 67  ." was returning
eb70: 20 22 3a 22 20 6f 6e 20 55 4e 49 58 20 69 6e 73   ":" on UNIX ins
eb80: 74 65 61 64 0a 6f 66 20 22 2f 22 2e 20 28 4a 4f  tead.of "/". (JO
eb90: 29 0a 0a 31 30 2f 31 33 2f 39 35 20 28 62 75 67  )..10/13/95 (bug
eba0: 20 66 69 78 29 20 45 6c 69 6d 69 6e 61 74 65 64   fix) Eliminated
ebb0: 20 64 65 70 65 6e 64 65 6e 63 79 20 6f 6e 20 4d   dependency on M
ebc0: 4b 53 20 74 6f 6f 6c 6b 69 74 20 66 6f 72 20 67  KS toolkit for g
ebd0: 65 6e 65 72 61 74 69 6e 67 0a 74 68 65 20 74 63  enerating.the tc
ebe0: 6c 2e 64 65 66 20 66 69 6c 65 20 66 72 6f 6d 20  l.def file from 
ebf0: 42 6f 72 6c 61 6e 64 20 6f 62 6a 65 63 74 20 66  Borland object f
ec00: 69 6c 65 73 2e 20 28 53 53 29 0a 0a 31 30 2f 31  iles. (SS)..10/1
ec10: 37 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72  7/95 (new featur
ec20: 65 73 29 20 4d 6f 76 65 64 20 74 68 65 20 65 76  es) Moved the ev
ec30: 65 6e 74 20 6c 6f 6f 70 20 66 72 6f 6d 20 54 63  ent loop from Tc
ec40: 6c 20 74 6f 20 54 6b 2c 20 6d 61 64 65 20 6d 61  l to Tk, made ma
ec50: 6a 6f 72 0a 72 65 76 69 73 69 6f 6e 73 20 61 6c  jor.revisions al
ec60: 6f 6e 67 20 74 68 65 20 77 61 79 3a 0a 20 20 20  ong the way:.   
ec70: 20 2d 20 4e 65 77 20 54 63 6c 20 63 6f 6d 6d 61   - New Tcl comma
ec80: 6e 64 73 3a 20 20 61 66 74 65 72 2c 20 75 70 64  nds:  after, upd
ec90: 61 74 65 2c 20 76 77 61 69 74 20 28 72 65 70 6c  ate, vwait (repl
eca0: 61 63 65 73 20 22 74 6b 77 61 69 74 20 76 61 72  aces "tkwait var
ecb0: 69 61 62 6c 65 22 29 2e 0a 20 20 20 20 2d 20 22  iable")..    - "
ecc0: 74 6b 65 72 72 6f 72 22 20 69 73 20 6e 6f 77 20  tkerror" is now 
ecd0: 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 22 62  replaced with "b
ece0: 67 65 72 72 6f 72 22 2e 0a 20 20 20 20 2d 20 54  gerror"..    - T
ecf0: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 72 6f  he following pro
ed00: 63 65 64 75 72 65 73 20 61 72 65 20 73 69 6d 69  cedures are simi
ed10: 6c 61 72 20 74 6f 20 74 68 65 69 72 20 6f 6c 64  lar to their old
ed20: 20 54 6b 20 63 6f 75 6e 74 65 72 70 61 72 74 73   Tk counterparts
ed30: 3a 0a 20 20 20 20 20 20 54 63 6c 5f 44 6f 4f 6e  :.      Tcl_DoOn
ed40: 65 45 76 65 6e 74 2c 20 54 63 6c 5f 53 6c 65 65  eEvent, Tcl_Slee
ed50: 70 2c 20 54 63 6c 5f 44 6f 57 68 65 6e 49 64 6c  p, Tcl_DoWhenIdl
ed60: 65 2c 20 54 63 6c 5f 43 61 6e 63 65 6c 49 64 6c  e, Tcl_CancelIdl
ed70: 65 43 61 6c 6c 2c 0a 20 20 20 20 20 20 54 63 6c  eCall,.      Tcl
ed80: 5f 43 72 65 61 74 65 46 69 6c 65 48 61 6e 64 6c  _CreateFileHandl
ed90: 65 72 2c 20 54 63 6c 5f 44 65 6c 65 74 65 46 69  er, Tcl_DeleteFi
eda0: 6c 65 48 61 6e 64 6c 65 72 2c 20 54 63 6c 5f 43  leHandler, Tcl_C
edb0: 72 65 61 74 65 54 69 6d 65 72 48 61 6e 64 6c 65  reateTimerHandle
edc0: 72 2c 0a 20 20 20 20 20 20 54 63 6c 5f 44 65 6c  r,.      Tcl_Del
edd0: 65 74 65 54 69 6d 65 72 48 61 6e 64 6c 65 72 2c  eteTimerHandler,
ede0: 20 54 63 6c 5f 42 61 63 6b 67 72 6f 75 6e 64 45   Tcl_BackgroundE
edf0: 72 72 6f 72 2e 0a 20 20 20 20 2d 20 52 65 76 69  rror..    - Revi
ee00: 73 65 64 20 6e 6f 74 69 66 69 65 72 2c 20 61 64  sed notifier, ad
ee10: 64 20 6e 65 77 20 63 6f 6e 63 65 70 74 20 6f 66  d new concept of
ee20: 20 22 65 76 65 6e 74 20 73 6f 75 72 63 65 22 20   "event source" 
ee30: 77 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69  with the followi
ee40: 6e 67 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75  ng.      procedu
ee50: 72 65 73 3a 20 20 54 63 6c 5f 43 72 65 61 74 65  res:  Tcl_Create
ee60: 45 76 65 6e 74 53 6f 75 72 63 65 2c 20 54 63 6c  EventSource, Tcl
ee70: 5f 44 65 6c 65 74 65 45 76 65 6e 74 53 6f 75 72  _DeleteEventSour
ee80: 63 65 2c 0a 20 20 20 20 20 20 54 63 6c 5f 57 61  ce,.      Tcl_Wa
ee90: 74 63 68 46 69 6c 65 2c 20 54 63 6c 5f 53 65 74  tchFile, Tcl_Set
eea0: 4d 61 78 42 6c 6f 63 6b 54 69 6d 65 2c 20 54 63  MaxBlockTime, Tc
eeb0: 6c 5f 46 69 6c 65 52 65 61 64 79 2c 20 54 63 6c  l_FileReady, Tcl
eec0: 5f 51 75 65 75 65 45 76 65 6e 74 2c 0a 20 20 20  _QueueEvent,.   
eed0: 20 20 20 54 63 6c 5f 57 61 69 74 46 6f 72 45 76     Tcl_WaitForEv
eee0: 65 6e 74 2e 20 28 4a 4f 29 0a 0a 31 30 2f 33 31  ent. (JO)..10/31
eef0: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
ef00: 73 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20 63  s) Implemented c
ef10: 72 6f 73 73 20 70 6c 61 74 66 6f 72 6d 20 66 69  ross platform fi
ef20: 6c 65 20 6e 61 6d 65 20 73 75 70 70 6f 72 74 20  le name support 
ef30: 74 6f 20 6d 61 6b 65 0a 69 74 20 65 61 73 69 65  to make.it easie
ef40: 72 20 74 6f 20 77 72 69 74 65 20 63 72 6f 73 73  r to write cross
ef50: 20 70 6c 61 74 66 6f 72 6d 20 73 63 72 69 70 74   platform script
ef60: 73 2e 20 20 54 63 6c 20 6e 6f 77 20 75 6e 64 65  s.  Tcl now unde
ef70: 72 73 74 61 6e 64 73 20 34 20 66 69 6c 65 20 6e  rstands 4 file n
ef80: 61 6d 69 6e 67 0a 63 6f 6e 76 65 6e 74 69 6f 6e  aming.convention
ef90: 73 3a 20 57 69 6e 64 6f 77 73 20 28 62 6f 74 68  s: Windows (both
efa0: 20 44 4f 53 20 61 6e 64 20 55 4e 43 29 2c 20 4d   DOS and UNC), M
efb0: 61 63 2c 20 55 6e 69 78 2c 20 61 6e 64 20 4e 65  ac, Unix, and Ne
efc0: 74 77 6f 72 6b 2e 20 20 54 68 65 20 6e 65 74 77  twork.  The netw
efd0: 6f 72 6b 0a 63 6f 6e 76 65 6e 74 69 6f 6e 20 69  ork.convention i
efe0: 73 20 61 20 6e 65 77 20 6e 61 6d 69 6e 67 20 6d  s a new naming m
eff0: 65 63 68 61 6e 69 73 6d 20 74 68 61 74 20 63 61  echanism that ca
f000: 6e 20 62 65 20 75 73 65 64 20 74 6f 20 70 61 74  n be used to pat
f010: 68 73 20 69 6e 20 61 20 70 6c 61 74 66 6f 72 6d  hs in a platform
f020: 0a 69 6e 64 65 70 65 6e 64 65 6e 74 20 66 61 73  .independent fas
f030: 68 69 6f 6e 2e 20 20 53 65 65 20 74 68 65 20 22  hion.  See the "
f040: 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64 20 6d 61  file" command ma
f050: 6e 75 61 6c 20 70 61 67 65 20 66 6f 72 20 6d 6f  nual page for mo
f060: 72 65 20 64 65 74 61 69 6c 73 2e 0a 54 68 65 20  re details..The 
f070: 70 72 69 6d 61 72 79 20 69 6e 74 65 72 66 61 63  primary interfac
f080: 65 73 20 63 68 61 6e 67 65 73 20 61 72 65 3a 0a  es changes are:.
f090: 20 20 20 20 2d 20 41 6c 6c 20 54 63 6c 20 63 6f      - All Tcl co
f0a0: 6d 6d 61 6e 64 73 20 74 68 61 74 20 65 78 70 65  mmands that expe
f0b0: 63 74 20 61 20 66 69 6c 65 20 6e 61 6d 65 20 6e  ct a file name n
f0c0: 6f 77 20 61 63 63 65 70 74 20 62 6f 74 68 20 6e  ow accept both n
f0d0: 65 74 77 6f 72 6b 20 61 6e 64 0a 20 20 20 20 20  etwork and.     
f0e0: 20 6e 61 74 69 76 65 20 66 6f 72 6d 2e 0a 20 20   native form..  
f0f0: 20 20 2d 20 54 77 6f 20 6e 65 77 20 22 66 69 6c    - Two new "fil
f100: 65 22 20 73 75 62 63 6f 6d 6d 61 6e 64 73 2c 20  e" subcommands, 
f110: 22 6e 61 74 69 76 65 6e 61 6d 65 22 20 61 6e 64  "nativename" and
f120: 20 22 6e 65 74 77 6f 72 6b 6e 61 6d 65 22 2c 20   "networkname", 
f130: 70 72 6f 76 69 64 65 20 61 0a 20 20 20 20 20 20  provide a.      
f140: 77 61 79 20 74 6f 20 63 6f 6e 76 65 72 74 20 62  way to convert b
f150: 65 74 77 65 65 6e 20 6e 65 74 77 6f 72 6b 20 61  etween network a
f160: 6e 64 20 6e 61 74 69 76 65 20 66 6f 72 6d 2e 0a  nd native form..
f170: 20 20 20 20 2d 20 52 65 6e 61 6d 65 64 20 54 63      - Renamed Tc
f180: 6c 5f 54 69 6c 64 65 53 75 62 73 74 20 74 6f 20  l_TildeSubst to 
f190: 54 63 6c 5f 54 72 61 6e 73 6c 61 74 65 46 69 6c  Tcl_TranslateFil
f1a0: 65 4e 61 6d 65 2c 20 61 6e 64 20 63 68 61 6e 67  eName, and chang
f1b0: 65 64 20 69 74 20 73 6f 20 74 68 61 74 0a 20 20  ed it so that.  
f1c0: 20 20 20 20 69 74 20 61 6c 77 61 79 73 20 72 65      it always re
f1d0: 74 75 72 6e 73 20 61 20 66 69 6c 65 6e 61 6d 65  turns a filename
f1e0: 20 69 6e 20 6e 61 74 69 76 65 20 66 6f 72 6d 2e   in native form.
f1f0: 20 20 54 63 6c 5f 54 69 6c 64 65 53 75 62 73 74    Tcl_TildeSubst
f200: 20 69 73 20 64 65 66 69 6e 65 64 0a 20 20 20 20   is defined.    
f210: 20 20 61 73 20 61 20 6d 61 63 72 6f 20 66 6f 72    as a macro for
f220: 20 62 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74   backward compat
f230: 69 62 69 6c 69 74 79 2c 20 62 75 74 20 69 74 20  ibility, but it 
f240: 69 73 20 64 65 70 72 65 63 61 74 65 64 2e 20 28  is deprecated. (
f250: 53 53 29 0a 0a 31 31 2f 35 2f 39 35 20 28 6e 65  SS)..11/5/95 (ne
f260: 77 20 66 65 61 74 75 72 65 29 20 4d 61 64 65 20  w feature) Made 
f270: 22 74 6b 65 72 72 6f 72 22 20 61 6e 64 20 22 62  "tkerror" and "b
f280: 67 65 72 72 6f 72 22 20 73 79 6e 6f 6e 79 6d 73  gerror" synonyms
f290: 2c 20 73 6f 20 74 68 61 74 0a 65 69 74 68 65 72  , so that.either
f2a0: 20 6e 61 6d 65 20 63 61 6e 20 62 65 20 75 73 65   name can be use
f2b0: 64 20 74 6f 20 6d 61 6e 69 70 75 6c 61 74 65 20  d to manipulate 
f2c0: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 28 70 72 6f  the command (pro
f2d0: 76 69 64 65 73 20 74 65 6d 70 6f 72 61 72 79 0a  vides temporary.
f2e0: 62 61 63 6b 77 61 72 64 20 63 6f 6d 70 61 74 69  backward compati
f2f0: 62 69 6c 69 74 79 20 66 6f 72 20 65 78 69 73 74  bility for exist
f300: 69 6e 67 20 73 63 72 69 70 74 73 20 74 68 61 74  ing scripts that
f310: 20 75 73 65 20 74 6b 65 72 72 6f 72 29 2e 20 28   use tkerror). (
f320: 4a 4f 29 0a 0a 31 31 2f 35 2f 39 35 20 28 6e 65  JO)..11/5/95 (ne
f330: 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
f340: 20 65 78 69 74 20 68 61 6e 64 6c 65 72 73 20 61   exit handlers a
f350: 6e 64 20 6e 65 77 20 43 20 70 72 6f 63 65 64 75  nd new C procedu
f360: 72 65 73 0a 54 63 6c 5f 43 72 65 61 74 65 45 78  res.Tcl_CreateEx
f370: 69 74 48 61 6e 64 6c 65 72 2c 20 54 63 6c 5f 44  itHandler, Tcl_D
f380: 65 6c 65 74 65 45 78 69 74 48 61 6e 64 6c 65 72  eleteExitHandler
f390: 2c 20 61 6e 64 20 54 63 6c 5f 45 78 69 74 2e 20  , and Tcl_Exit. 
f3a0: 28 4a 4f 29 0a 0a 31 31 2f 36 2f 39 35 20 28 6e  (JO)..11/6/95 (n
f3b0: 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
f3c0: 64 20 70 69 64 20 63 6f 6d 6d 61 6e 64 20 66 6f  d pid command fo
f3d0: 72 20 4d 61 63 69 6e 74 6f 73 68 20 76 65 72 73  r Macintosh vers
f3e0: 69 6f 6e 20 6f 66 0a 54 63 6c 20 28 69 74 20 64  ion of.Tcl (it d
f3f0: 69 64 6e 27 74 20 70 72 65 76 69 6f 75 73 6c 79  idn't previously
f400: 20 65 78 69 73 74 20 6f 6e 20 74 68 65 20 4d 61   exist on the Ma
f410: 63 29 2e 20 28 52 4a 29 0a 0a 31 31 2f 37 2f 39  c). (RJ)..11/7/9
f420: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
f430: 4e 65 77 20 67 65 6e 65 72 69 63 20 49 4f 20 66  New generic IO f
f440: 61 63 69 6c 69 74 79 20 61 6e 64 20 73 75 70 70  acility and supp
f450: 6f 72 74 20 66 6f 72 20 49 4f 20 74 6f 0a 66 69  ort for IO to.fi
f460: 6c 65 73 2c 20 70 69 70 65 73 20 61 6e 64 20 73  les, pipes and s
f470: 6f 63 6b 65 74 73 20 62 61 73 65 64 20 6f 6e 20  ockets based on 
f480: 61 20 63 6f 6d 6d 6f 6e 20 62 75 66 66 65 72 69  a common bufferi
f490: 6e 67 20 73 63 68 65 6d 65 2e 20 53 75 70 70 6f  ng scheme. Suppo
f4a0: 72 74 0a 66 6f 72 20 61 73 79 6e 63 68 72 6f 6e  rt.for asynchron
f4b0: 6f 75 73 20 28 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e  ous (non-blockin
f4c0: 67 29 20 49 4f 20 61 6e 64 20 66 6f 72 20 65 76  g) IO and for ev
f4d0: 65 6e 74 20 64 72 69 76 65 72 20 49 4f 2e 20 53  ent driver IO. S
f4e0: 75 70 70 6f 72 74 0a 66 6f 72 20 61 75 74 6f 6d  upport.for autom
f4f0: 61 74 69 63 20 28 62 61 63 6b 67 72 6f 75 6e 64  atic (background
f500: 29 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 66  ) asynchronous f
f510: 6c 75 73 68 69 6e 67 20 61 6e 64 20 61 73 79 6e  lushing and asyn
f520: 63 68 72 6f 6e 6f 75 73 0a 63 6c 6f 73 69 6e 67  chronous.closing
f530: 20 6f 66 20 63 68 61 6e 6e 65 6c 73 2e 20 28 4a   of channels. (J
f540: 4c 29 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65 77  L)..11/7/95 (new
f550: 20 66 65 61 74 75 72 65 29 20 20 41 64 64 65 64   feature)  Added
f560: 20 6e 65 77 20 63 6f 6d 6d 61 6e 64 73 20 22 66   new commands "f
f570: 63 6f 6e 66 69 67 75 72 65 22 20 61 6e 64 20 22  configure" and "
f580: 66 62 6c 6f 63 6b 65 64 22 0a 74 6f 20 73 75 70  fblocked".to sup
f590: 70 6f 72 74 20 6e 65 77 20 49 2f 4f 20 66 65 61  port new I/O fea
f5a0: 74 75 72 65 73 20 73 75 63 68 20 61 73 20 6e 6f  tures such as no
f5b0: 6e 62 6c 6f 63 6b 69 6e 67 20 49 2f 4f 2e 20 20  nblocking I/O.  
f5c0: 41 64 64 65 64 20 22 73 6f 63 6b 65 74 22 0a 63  Added "socket".c
f5d0: 6f 6d 6d 61 6e 64 20 66 6f 72 20 63 72 65 61 74  ommand for creat
f5e0: 69 6e 67 20 54 43 50 20 63 6c 69 65 6e 74 20 61  ing TCP client a
f5f0: 6e 64 20 73 65 72 76 65 72 20 73 6f 63 6b 65 74  nd server socket
f600: 73 2e 20 28 4a 4c 29 2e 0a 0a 31 31 2f 37 2f 39  s. (JL)...11/7/9
f610: 35 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  5 (new feature) 
f620: 43 6f 6d 70 6c 65 74 65 20 73 65 74 20 6f 66 20  Complete set of 
f630: 43 20 41 50 49 73 20 74 6f 20 74 68 65 20 6e 65  C APIs to the ne
f640: 77 20 67 65 6e 65 72 69 63 20 49 4f 0a 66 61 63  w generic IO.fac
f650: 69 6c 69 74 79 3a 0a 20 20 20 20 2d 20 4f 70 65  ility:.    - Ope
f660: 6e 69 6e 67 20 63 68 61 6e 6e 65 6c 73 3a 20 54  ning channels: T
f670: 63 6c 5f 4f 70 65 6e 46 69 6c 65 43 68 61 6e 6e  cl_OpenFileChann
f680: 65 6c 2c 20 54 63 6c 5f 4f 70 65 6e 43 6f 6d 6d  el, Tcl_OpenComm
f690: 61 6e 64 43 68 61 6e 6e 65 6c 2c 0a 20 20 20 20  andChannel,.    
f6a0: 20 20 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69    Tcl_OpenTcpCli
f6b0: 65 6e 74 2c 20 54 63 6c 5f 4f 70 65 6e 54 63 70  ent, Tcl_OpenTcp
f6c0: 53 65 72 76 65 72 2e 0a 20 20 20 20 2d 20 49 2f  Server..    - I/
f6d0: 4f 20 70 72 6f 63 65 64 75 72 65 73 20 6f 6e 20  O procedures on 
f6e0: 63 68 61 6e 6e 65 6c 73 2c 20 77 68 69 63 68 20  channels, which 
f6f0: 72 6f 75 67 68 6c 79 20 6d 69 72 72 6f 72 20 74  roughly mirror t
f700: 68 65 20 41 4e 53 49 20 43 20 73 74 64 69 6f 0a  he ANSI C stdio.
f710: 20 20 20 20 20 20 6c 69 62 72 61 72 79 3a 20 20        library:  
f720: 54 63 6c 5f 52 65 61 64 2c 20 54 63 6c 5f 47 65  Tcl_Read, Tcl_Ge
f730: 74 73 2c 20 54 63 6c 5f 57 72 69 74 65 2c 20 54  ts, Tcl_Write, T
f740: 63 6c 5f 46 6c 75 73 68 2c 20 54 63 6c 5f 53 65  cl_Flush, Tcl_Se
f750: 65 6b 2c 0a 20 20 20 20 20 20 54 63 6c 5f 54 65  ek,.      Tcl_Te
f760: 6c 6c 2c 20 54 63 6c 5f 43 6c 6f 73 65 2c 20 54  ll, Tcl_Close, T
f770: 63 6c 5f 45 6f 66 2c 20 54 63 6c 5f 49 6e 70 75  cl_Eof, Tcl_Inpu
f780: 74 42 6c 6f 63 6b 65 64 2c 20 54 63 6c 5f 47 65  tBlocked, Tcl_Ge
f790: 74 43 68 61 6e 6e 65 6c 4f 70 74 69 6f 6e 2c 0a  tChannelOption,.
f7a0: 20 20 20 20 20 20 54 63 6c 5f 53 65 74 43 68 61        Tcl_SetCha
f7b0: 6e 6e 65 6c 4f 70 74 69 6f 6e 2e 0a 20 20 20 20  nnelOption..    
f7c0: 2d 20 45 78 74 65 6e 73 69 6f 6e 20 6d 65 63 68  - Extension mech
f7d0: 61 6e 69 73 6d 20 66 6f 72 20 63 72 65 61 74 69  anism for creati
f7e0: 6e 67 20 6e 65 77 20 6b 69 6e 64 73 20 6f 66 20  ng new kinds of 
f7f0: 63 68 61 6e 6e 65 6c 73 3a 0a 20 20 20 20 20 20  channels:.      
f800: 54 63 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e 65  Tcl_CreateChanne
f810: 6c 2c 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65  l, Tcl_GetChanne
f820: 6c 49 6e 73 74 61 6e 63 65 44 61 74 61 2c 20 54  lInstanceData, T
f830: 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 54 79 70  cl_GetChannelTyp
f840: 65 2c 0a 20 20 20 20 20 20 54 63 6c 5f 47 65 74  e,.      Tcl_Get
f850: 43 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 54 63 6c  ChannelName, Tcl
f860: 5f 47 65 74 43 68 61 6e 6e 65 6c 46 69 6c 65 2c  _GetChannelFile,
f870: 20 54 63 6c 5f 52 65 67 69 73 74 65 72 43 68 61   Tcl_RegisterCha
f880: 6e 6e 65 6c 2c 0a 20 20 20 20 20 20 54 63 6c 5f  nnel,.      Tcl_
f890: 55 6e 72 65 67 69 73 74 65 72 43 68 61 6e 6e 65  UnregisterChanne
f8a0: 6c 2c 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65  l, Tcl_GetChanne
f8b0: 6c 2e 0a 20 20 20 20 2d 20 45 76 65 6e 74 2d 64  l..    - Event-d
f8c0: 72 69 76 65 6e 20 49 2f 4f 20 6f 6e 20 63 68 61  riven I/O on cha
f8d0: 6e 6e 65 6c 73 3a 20 54 63 6c 5f 43 72 65 61 74  nnels: Tcl_Creat
f8e0: 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 2c  eChannelHandler,
f8f0: 0a 20 20 20 20 20 20 54 63 6c 5f 44 65 6c 65 74  .      Tcl_Delet
f900: 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 2e  eChannelHandler.
f910: 20 28 4a 4c 29 0a 0a 31 31 2f 37 2f 39 35 20 28   (JL)..11/7/95 (
f920: 6e 65 77 20 66 65 61 74 75 72 65 29 20 43 68 61  new feature) Cha
f930: 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 6e 74 65  nnel driver inte
f940: 72 66 61 63 65 20 73 70 65 63 69 66 69 63 61 74  rface specificat
f950: 69 6f 6e 20 74 6f 20 61 6c 6c 6f 77 0a 6e 65 77  ion to allow.new
f960: 20 74 79 70 65 73 20 6f 66 20 63 68 61 6e 6e 65   types of channe
f970: 6c 73 20 74 6f 20 62 65 20 61 64 64 65 64 20 65  ls to be added e
f980: 61 73 69 6c 79 20 74 6f 20 54 63 6c 2e 20 43 75  asily to Tcl. Cu
f990: 72 72 65 6e 74 6c 79 20 62 65 69 6e 67 20 75 73  rrently being us
f9a0: 65 64 0a 69 6e 20 74 68 72 65 65 20 64 72 69 76  ed.in three driv
f9b0: 65 72 73 20 2d 20 66 6f 72 20 66 69 6c 65 73 2c  ers - for files,
f9c0: 20 70 69 70 65 73 20 61 6e 64 20 54 43 50 2d 62   pipes and TCP-b
f9d0: 61 73 65 64 20 73 6f 63 6b 65 74 73 2e 20 28 4a  ased sockets. (J
f9e0: 4c 29 2e 0a 0a 31 31 2f 37 2f 39 35 20 28 6e 65  L)...11/7/95 (ne
f9f0: 77 20 66 65 61 74 75 72 65 29 20 69 6e 74 65 72  w feature) inter
fa00: 70 20 64 65 6c 65 74 65 20 6e 6f 77 20 74 61 6b  p delete now tak
fa10: 65 73 20 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66  es any number of
fa20: 20 70 61 74 68 0a 6e 61 6d 65 73 20 6f 66 20 69   path.names of i
fa30: 6e 74 65 72 70 72 65 74 65 72 73 20 74 6f 20 64  nterpreters to d
fa40: 65 6c 65 74 65 2c 20 69 6e 63 6c 75 64 69 6e 67  elete, including
fa50: 20 7a 65 72 6f 2e 20 28 4a 4c 29 2e 0a 0a 31 31   zero. (JL)...11
fa60: 2f 38 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  /8/95 (new featu
fa70: 72 65 29 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20  re) implemented 
fa80: 27 69 6e 66 6f 20 68 6f 73 74 6e 61 6d 65 27 20  'info hostname' 
fa90: 61 6e 64 20 54 63 6c 5f 47 65 74 48 6f 73 74 4e  and Tcl_GetHostN
faa0: 61 6d 65 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 67  ame.command to g
fab0: 65 74 20 68 6f 73 74 20 6e 61 6d 65 20 6f 66 20  et host name of 
fac0: 6d 61 63 68 69 6e 65 20 6f 6e 20 77 68 69 63 68  machine on which
fad0: 20 74 68 65 20 54 63 6c 20 70 72 6f 63 65 73 73   the Tcl process
fae0: 20 69 73 20 72 75 6e 6e 69 6e 67 2e 20 28 4a 4c   is running. (JL
faf0: 29 0a 0a 31 31 2f 39 2f 39 35 20 28 6e 65 77 20  )..11/9/95 (new 
fb00: 66 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65  feature) Impleme
fb10: 6e 74 65 64 20 66 69 6c 65 20 41 50 49 73 20 66  nted file APIs f
fb20: 6f 72 20 61 63 63 65 73 73 20 74 6f 20 6c 6f 77  or access to low
fb30: 20 6c 65 76 65 6c 20 66 69 6c 65 73 0a 6f 6e 20   level files.on 
fb40: 65 61 63 68 20 73 79 73 74 65 6d 2e 20 54 68 65  each system. The
fb50: 20 41 50 49 73 20 61 72 65 3a 20 54 63 6c 5f 43   APIs are: Tcl_C
fb60: 6c 6f 73 65 46 69 6c 65 2c 20 54 63 6c 5f 4f 70  loseFile, Tcl_Op
fb70: 65 6e 46 69 6c 65 2c 20 54 63 6c 5f 52 65 61 64  enFile, Tcl_Read
fb80: 46 69 6c 65 2c 0a 54 63 6c 5f 57 72 69 74 65 46  File,.Tcl_WriteF
fb90: 69 6c 65 20 61 6e 64 20 54 63 6c 5f 53 65 65 6b  ile and Tcl_Seek
fba0: 46 69 6c 65 2e 20 41 6c 73 6f 20 69 6d 70 6c 65  File. Also imple
fbb0: 6d 65 6e 74 65 64 20 54 63 6c 5f 57 61 69 74 50  mented Tcl_WaitP
fbc0: 69 64 20 77 68 69 63 68 20 77 61 69 74 73 0a 69  id which waits.i
fbd0: 6e 20 61 20 73 79 73 74 65 6d 20 64 65 70 65 6e  n a system depen
fbe0: 64 65 6e 74 20 6d 61 6e 6e 65 72 20 66 6f 72 20  dent manner for 
fbf0: 61 20 63 68 69 6c 64 20 70 72 6f 63 65 73 73 2e  a child process.
fc00: 20 28 4a 4c 29 0a 0a 31 31 2f 39 2f 39 35 20 28   (JL)..11/9/95 (
fc10: 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
fc20: 65 64 20 54 63 6c 5f 55 70 64 61 74 65 4c 69 6e  ed Tcl_UpdateLin
fc30: 6b 65 64 56 61 72 20 70 72 6f 63 65 64 75 72 65  kedVar procedure
fc40: 20 74 6f 20 66 6f 72 63 65 20 61 0a 54 63 6c 20   to force a.Tcl 
fc50: 76 61 72 69 61 62 6c 65 20 74 6f 20 62 65 20 75  variable to be u
fc60: 70 64 61 74 65 64 20 61 66 74 65 72 20 69 74 73  pdated after its
fc70: 20 43 20 76 61 72 69 61 62 6c 65 20 63 68 61 6e   C variable chan
fc80: 67 65 73 2e 20 28 4a 4f 29 0a 0a 31 31 2f 39 2f  ges. (JO)..11/9/
fc90: 39 35 20 28 62 75 67 20 66 69 78 29 20 54 68 65  95 (bug fix) The
fca0: 20 67 6c 6f 62 20 63 6f 6d 6d 61 6e 64 20 68 61   glob command ha
fcb0: 73 20 62 65 65 6e 20 74 6f 74 61 6c 6c 79 20 72  s been totally r
fcc0: 65 69 6d 70 6c 65 6d 65 6e 74 65 64 20 73 6f 0a  eimplemented so.
fcd0: 74 68 61 74 20 69 74 20 63 61 6e 20 73 75 70 70  that it can supp
fce0: 6f 72 74 20 64 69 66 66 65 72 65 6e 74 20 66 69  ort different fi
fcf0: 6c 65 20 6e 61 6d 65 20 63 6f 6e 76 65 6e 74 69  le name conventi
fd00: 6f 6e 73 2e 20 20 49 74 20 6e 6f 77 20 68 61 6e  ons.  It now han
fd10: 64 6c 65 73 0a 57 69 6e 64 6f 77 73 20 66 69 6c  dles.Windows fil
fd20: 65 20 6e 61 6d 65 73 20 28 62 6f 74 68 20 55 4e  e names (both UN
fd30: 43 20 61 6e 64 20 64 72 69 76 65 2d 72 65 6c 61  C and drive-rela
fd40: 74 69 76 65 29 20 70 72 6f 70 65 72 6c 79 2e 20  tive) properly. 
fd50: 20 49 74 20 61 6c 73 6f 0a 73 75 70 70 6f 72 74   It also.support
fd60: 73 20 6e 65 73 74 65 64 20 62 72 61 63 65 73 20  s nested braces 
fd70: 63 6f 72 72 65 63 74 6c 79 20 6e 6f 77 2e 20 28  correctly now. (
fd80: 53 53 29 0a 0a 31 31 2f 31 33 2f 39 35 20 28 62  SS)..11/13/95 (b
fd90: 75 67 20 66 69 78 29 20 46 69 78 65 64 20 4d 61  ug fix) Fixed Ma
fda0: 6b 65 66 69 6c 65 2e 69 6e 20 73 6f 20 74 68 61  kefile.in so tha
fdb0: 74 20 63 6f 6e 66 69 67 75 72 65 20 63 61 6e 20  t configure can 
fdc0: 62 65 20 72 75 6e 0a 66 72 6f 6d 20 61 20 63 6c  be run.from a cl
fdd0: 65 61 6e 20 64 69 72 65 63 74 6f 72 79 20 73 65  ean directory se
fde0: 70 61 72 61 74 65 20 66 72 6f 6d 20 74 68 65 20  parate from the 
fdf0: 54 63 6c 20 73 6f 75 72 63 65 20 74 72 65 65 2c  Tcl source tree,
fe00: 20 61 6e 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   and compilation
fe10: 73 0a 63 61 6e 20 62 65 20 70 65 72 66 6f 72 6d  s.can be perform
fe20: 65 64 20 74 68 65 72 65 2e 20 28 4a 4f 29 0a 0a  ed there. (JO)..
fe30: 31 31 2f 31 34 2f 39 35 20 28 62 75 67 20 66 69  11/14/95 (bug fi
fe40: 78 29 20 46 69 78 65 64 20 66 69 6c 65 20 73 68  x) Fixed file sh
fe50: 61 72 69 6e 67 20 62 65 74 77 65 65 6e 20 69 6e  aring between in
fe60: 74 65 72 70 72 65 74 65 72 73 20 61 6e 64 20 66  terpreters and f
fe70: 69 6c 65 0a 74 72 61 6e 73 66 65 72 72 69 6e 67  ile.transferring
fe80: 20 62 65 74 77 65 65 6e 20 69 6e 74 65 72 70 72   between interpr
fe90: 65 74 65 72 73 20 74 6f 20 63 6f 72 72 65 63 74  eters to correct
fea0: 6c 79 20 6d 61 6e 61 67 65 20 74 68 65 20 72 65  ly manage the re
feb0: 66 63 6f 75 6e 74 20 73 6f 20 74 68 61 74 0a 66  fcount so that.f
fec0: 69 6c 65 73 20 61 72 65 20 63 6c 6f 73 65 64 20  iles are closed 
fed0: 77 68 65 6e 20 74 68 65 20 6c 61 73 74 20 72 65  when the last re
fee0: 66 65 72 65 6e 63 65 20 74 6f 20 74 68 65 6d 20  ference to them 
fef0: 69 73 20 64 69 73 63 61 72 64 65 64 2e 20 28 4a  is discarded. (J
ff00: 4c 29 0a 0a 31 31 2f 31 34 2f 39 35 20 28 62 75  L)..11/14/95 (bu
ff10: 67 20 66 69 78 29 20 46 69 78 65 64 20 67 65 74  g fix) Fixed get
ff20: 74 69 6d 65 6f 66 64 61 79 20 69 6d 70 6c 65 6d  timeofday implem
ff30: 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20 74 68 65  entation for the
ff40: 0a 4d 61 63 69 6e 74 6f 73 68 2e 20 20 54 68 69  .Macintosh.  Thi
ff50: 73 20 66 69 78 65 73 20 73 65 76 65 72 61 6c 20  s fixes several 
ff60: 74 69 6d 69 6e 67 20 72 65 6c 61 74 65 64 20 62  timing related b
ff70: 75 67 73 2e 20 28 52 4a 29 0a 0a 31 31 2f 31 37  ugs. (RJ)..11/17
ff80: 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75 72 65  /95 (new feature
ff90: 29 20 41 64 64 65 64 20 6d 69 73 73 69 6e 67 20  ) Added missing 
ffa0: 73 75 70 70 6f 72 74 20 66 6f 72 20 69 6e 66 6f  support for info
ffb0: 20 6e 61 6d 65 6f 66 65 78 65 63 75 74 61 62 6c   nameofexecutabl
ffc0: 65 0a 6f 6e 20 74 68 65 20 4d 61 63 69 6e 74 6f  e.on the Macinto
ffd0: 73 68 2e 20 28 52 4a 29 0a 0a 31 31 2f 31 37 2f  sh. (RJ)..11/17/
ffe0: 39 35 20 28 62 75 67 20 66 69 78 29 20 54 68 65  95 (bug fix) The
fff0: 20 54 63 6c 20 76 61 72 69 61 62 6c 65 73 20 61   Tcl variables a
10000 72 67 63 20 61 72 67 76 20 61 6e 64 20 61 72 67  rgc argv and arg
10010 76 30 20 6e 6f 77 20 72 65 74 75 72 6e 0a 73 6f  v0 now return.so
10020 6d 65 74 68 69 6e 67 20 72 65 61 73 6f 6e 61 62  mething reasonab
10030 6c 65 20 6f 6e 20 74 68 65 20 4d 61 63 2e 20 20  le on the Mac.  
10040 28 52 4a 29 0a 0a 31 31 2f 32 32 2f 39 35 20 28  (RJ)..11/22/95 (
10050 6e 65 77 20 66 65 61 74 75 72 65 29 20 49 6d 70  new feature) Imp
10060 6c 65 6d 65 6e 74 65 64 20 22 61 75 74 6f 2d 64  lemented "auto-d
10070 65 74 65 63 74 22 20 6d 6f 64 65 20 66 6f 72 20  etect" mode for 
10080 65 6e 64 20 6f 66 20 6c 69 6e 65 0a 74 72 61 6e  end of line.tran
10090 73 6c 61 74 69 6f 6e 73 2e 20 4f 6e 20 69 6e 70  slations. On inp
100a0 75 74 2c 20 73 74 61 6e 64 61 6c 6f 6e 65 20 22  ut, standalone "
100b0 5c 72 22 20 6d 65 61 6e 20 4d 41 43 20 6d 6f 64  \r" mean MAC mod
100c0 65 2c 20 73 74 61 6e 64 61 6c 6f 6e 65 20 22 5c  e, standalone "\
100d0 6e 22 0a 6d 65 61 6e 20 55 6e 69 78 20 6d 6f 64  n".mean Unix mod
100e0 65 20 61 6e 64 20 22 5c 72 5c 6e 22 20 6d 65 61  e and "\r\n" mea
100f0 6e 73 20 57 69 6e 64 6f 77 73 20 6d 6f 64 65 2e  ns Windows mode.
10100 20 4f 6e 20 6f 75 74 70 75 74 2c 20 74 68 65 20   On output, the 
10110 6d 6f 64 65 20 69 73 0a 6d 6f 64 69 66 69 65 64  mode is.modified
10120 20 74 6f 20 77 68 61 74 65 76 65 72 20 74 68 65   to whatever the
10130 20 70 6c 61 74 66 6f 72 6d 20 73 70 65 63 69 66   platform specif
10140 69 63 20 6d 6f 64 65 20 66 6f 72 20 74 68 61 74  ic mode for that
10150 20 70 6c 61 74 66 6f 72 6d 20 69 73 2e 20 28 4a   platform is. (J
10160 4c 29 0a 0a 31 31 2f 32 34 2f 39 35 20 28 66 65  L)..11/24/95 (fe
10170 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65  ature change) Re
10180 70 6c 61 63 65 64 20 22 63 6f 6e 66 69 67 49 6e  placed "configIn
10190 66 6f 22 20 66 69 6c 65 20 77 69 74 68 20 74 63  fo" file with tc
101a0 6c 43 6f 6e 66 69 67 2e 73 68 2c 0a 77 68 69 63  lConfig.sh,.whic
101b0 68 20 69 73 20 6d 6f 72 65 20 63 6f 6d 70 6c 65  h is more comple
101c0 74 65 20 61 6e 64 20 75 73 65 73 20 73 6c 69 67  te and uses slig
101d0 68 74 6c 79 20 64 69 66 66 65 72 65 6e 74 20 6e  htly different n
101e0 61 6d 65 73 2e 20 20 41 6c 73 6f 0a 61 72 72 61  ames.  Also.arra
101f0 6e 67 65 64 20 66 6f 72 20 74 63 6c 43 6f 6e 66  nged for tclConf
10200 69 67 2e 73 68 20 74 6f 20 62 65 20 69 6e 73 74  ig.sh to be inst
10210 61 6c 6c 65 64 20 69 6e 20 74 68 65 20 70 6c 61  alled in the pla
10220 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 0a 6c  tform-specific.l
10230 69 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79  ibrary directory
10240 20 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 27   instead of Tcl'
10250 73 20 73 63 72 69 70 74 20 6c 69 62 72 61 72 79  s script library
10260 20 64 69 72 65 63 74 6f 72 79 2e 20 28 4a 4f 29   directory. (JO)
10270 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
10280 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77  NCOMPATIBILITY w
10290 69 74 68 20 54 63 6c 20 37 2e 35 61 32 2c 20 62  ith Tcl 7.5a2, b
102a0 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20  ut not with Tcl 
102b0 37 2e 34 20 2a 2a 2a 0a 0a 2d 2d 2d 2d 2d 2d 2d  7.4 ***..-------
102c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
102d0 73 65 64 20 70 61 74 63 68 20 37 2e 34 70 33 2c  sed patch 7.4p3,
102e0 20 31 31 2f 32 38 2f 39 35 20 2d 2d 2d 2d 2d 2d   11/28/95 ------
102f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
10300 2d 0a 0a 31 32 2f 35 2f 39 35 20 28 6e 65 77 20  -..12/5/95 (new 
10310 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54  feature) Added T
10320 63 6c 5f 46 69 6c 65 20 66 61 63 69 6c 69 74 79  cl_File facility
10330 20 74 6f 20 73 75 70 70 6f 72 74 20 70 6c 61 74   to support plat
10340 66 6f 72 6d 2d 0a 69 6e 64 65 70 65 6e 64 65 6e  form-.independen
10350 74 20 66 69 6c 65 20 68 61 6e 64 6c 65 73 2e 20  t file handles. 
10360 20 43 68 61 6e 67 65 64 20 61 6c 6c 20 69 6e 74   Changed all int
10370 65 72 66 61 63 65 73 20 74 68 61 74 20 75 73 65  erfaces that use
10380 64 20 55 6e 69 78 2d 0a 73 74 79 6c 65 20 69 6e  d Unix-.style in
10390 74 65 67 65 72 20 66 64 27 73 20 74 6f 20 75 73  teger fd's to us
103a0 65 20 54 63 6c 5f 46 69 6c 65 27 73 20 69 6e 73  e Tcl_File's ins
103b0 74 65 61 64 2e 20 28 53 53 29 0a 2a 2a 2a 20 50  tead. (SS).*** P
103c0 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
103d0 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 32  TIBILITY ***..12
103e0 2f 35 2f 39 35 20 28 6e 65 77 20 66 65 61 74 75  /5/95 (new featu
103f0 72 65 29 20 41 64 64 65 64 20 61 20 6e 65 77 20  re) Added a new 
10400 22 63 6c 6f 63 6b 22 20 63 6f 6d 6d 61 6e 64 20  "clock" command 
10410 74 6f 20 54 63 6c 2e 20 20 54 68 65 20 63 6f 6d  to Tcl.  The com
10420 6d 61 6e 64 0a 61 6c 6c 6f 77 73 20 79 6f 75 20  mand.allows you 
10430 74 6f 20 67 65 74 20 74 68 65 20 63 75 72 72 65  to get the curre
10440 6e 74 20 22 63 6c 69 63 6b 73 22 20 6f 72 20 73  nt "clicks" or s
10450 65 63 6f 6e 64 73 20 26 20 61 6c 6c 6f 77 73 20  econds & allows 
10460 79 6f 75 20 74 6f 0a 66 6f 72 6d 61 74 20 6f 72  you to.format or
10470 20 73 63 61 6e 20 68 75 6d 61 6e 20 72 65 61 64   scan human read
10480 61 62 6c 65 20 74 69 6d 65 2f 64 61 74 65 20 73  able time/date s
10490 74 72 69 6e 67 73 2e 20 28 52 4a 29 0a 0a 31 32  trings. (RJ)..12
104a0 2f 31 38 2f 39 35 20 28 6e 65 77 20 66 65 61 74  /18/95 (new feat
104b0 75 72 65 29 20 4d 6f 76 65 64 20 54 6b 5f 50 72  ure) Moved Tk_Pr
104c0 65 73 65 72 76 65 2c 20 54 6b 5f 52 65 6c 65 61  eserve, Tk_Relea
104d0 73 65 2c 20 61 6e 64 20 54 6b 5f 45 76 65 6e 74  se, and Tk_Event
104e0 75 61 6c 6c 79 46 72 65 65 0a 74 6f 20 54 63 6c  uallyFree.to Tcl
104f0 2c 20 72 65 6e 61 6d 65 64 20 74 6f 20 54 63 6c  , renamed to Tcl
10500 5f 50 72 65 73 65 72 76 65 2c 20 54 63 6c 5f 52  _Preserve, Tcl_R
10510 65 6c 65 61 73 65 2c 20 61 6e 64 20 54 63 6c 5f  elease, and Tcl_
10520 45 76 65 6e 74 75 61 6c 6c 79 46 72 65 65 2e 20  EventuallyFree. 
10530 28 4a 4f 29 0a 0a 31 32 2f 31 38 2f 39 35 20 28  (JO)..12/18/95 (
10540 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
10550 65 64 20 6e 65 77 20 22 70 61 63 6b 61 67 65 22  ed new "package"
10560 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 61 73 73   command and ass
10570 6f 63 69 61 74 65 64 0a 70 72 6f 63 65 64 75 72  ociated.procedur
10580 65 73 20 54 63 6c 5f 50 6b 67 52 65 71 75 69 72  es Tcl_PkgRequir
10590 65 20 61 6e 64 20 54 63 6c 5f 50 6b 67 50 72 6f  e and Tcl_PkgPro
105a0 76 69 64 65 2e 20 20 20 41 6c 73 6f 20 77 72 6f  vide.   Also wro
105b0 74 65 0a 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 6c  te.pkg_mkIndex l
105c0 69 62 72 61 72 79 20 70 72 6f 63 65 64 75 72 65  ibrary procedure
105d0 20 74 6f 20 63 72 65 61 74 65 20 69 6e 64 65 78   to create index
105e0 20 66 69 6c 65 73 20 66 72 6f 6d 20 62 69 6e 61   files from bina
105f0 72 69 65 73 0a 61 6e 64 20 73 63 72 69 70 74 73  ries.and scripts
10600 2e 20 28 4a 4f 29 0a 0a 31 32 2f 32 30 2f 39 35  . (JO)..12/20/95
10610 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
10620 64 64 65 64 20 54 63 6c 5f 57 61 69 74 46 6f 72  dded Tcl_WaitFor
10630 46 69 6c 65 20 70 72 6f 63 65 64 75 72 65 2e 20  File procedure. 
10640 28 4a 4f 29 0a 0a 31 32 2f 32 31 2f 39 35 20 28  (JO)..12/21/95 (
10650 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 4d 61  new features) Ma
10660 64 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20  de package name 
10670 61 72 67 75 6d 65 6e 74 20 74 6f 20 22 6c 6f 61  argument to "loa
10680 64 22 20 6f 70 74 69 6f 6e 61 6c 0a 28 54 63 6c  d" optional.(Tcl
10690 20 77 69 6c 6c 20 6e 6f 77 20 61 74 74 65 6d 70   will now attemp
106a0 74 20 74 6f 20 67 75 65 73 73 20 74 68 65 20 70  t to guess the p
106b0 61 63 6b 61 67 65 20 6e 61 6d 65 20 69 66 20 6e  ackage name if n
106c0 65 63 65 73 73 61 72 79 29 2e 20 20 41 6c 73 6f  ecessary).  Also
106d0 0a 61 64 64 65 64 20 54 63 6c 5f 53 74 61 74 69  .added Tcl_Stati
106e0 63 50 61 63 6b 61 67 65 20 61 6e 64 20 73 75 70  cPackage and sup
106f0 70 6f 72 74 20 69 6e 20 22 6c 6f 61 64 22 20 66  port in "load" f
10700 6f 72 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 69  or statically li
10710 6e 6b 65 64 0a 70 61 63 6b 61 67 65 73 2e 20 20  nked.packages.  
10720 28 4a 4f 29 0a 0a 31 32 2f 32 32 2f 39 35 20 28  (JO)..12/22/95 (
10730 6e 65 77 20 66 65 61 74 75 72 65 29 20 55 70 67  new feature) Upg
10740 72 61 64 65 64 20 74 68 65 20 66 6f 72 65 61 63  raded the foreac
10750 68 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 63 63  h command to acc
10760 65 70 74 20 6d 75 6c 74 69 70 6c 65 0a 6c 6f 6f  ept multiple.loo
10770 70 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 20  p variables and 
10780 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 20 6c  multiple value l
10790 69 73 74 73 2e 20 20 54 68 69 73 20 6c 65 74 73  ists.  This lets
107a0 20 79 6f 75 20 69 74 65 72 61 74 65 20 6f 76 65   you iterate ove
107b0 72 0a 6d 75 6c 74 69 70 6c 65 20 6c 69 73 74 73  r.multiple lists
107c0 20 69 6e 20 70 61 72 61 6c 6c 65 6c 2c 20 61 6e   in parallel, an
107d0 64 2f 6f 72 20 61 73 73 69 67 6e 20 6d 75 6c 74  d/or assign mult
107e0 69 70 6c 65 20 6c 6f 6f 70 20 76 61 72 69 61 62  iple loop variab
107f0 6c 65 73 20 66 72 6f 6d 0a 6f 6e 65 20 76 61 6c  les from.one val
10800 75 65 20 6c 69 73 74 20 64 75 72 69 6e 67 20 65  ue list during e
10810 61 63 68 20 69 74 65 72 61 74 69 6f 6e 2e 20 54  ach iteration. T
10820 68 65 20 6f 6e 6c 79 20 70 6f 74 65 6e 74 69 61  he only potentia
10830 6c 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 0a  l compatibility.
10840 70 72 6f 62 6c 65 6d 20 69 73 20 77 69 74 68 20  problem is with 
10850 73 63 72 69 70 74 73 20 74 68 61 74 20 75 73 65  scripts that use
10860 64 20 6c 6f 6f 70 20 76 61 72 69 61 62 6c 65 73  d loop variables
10870 20 77 69 74 68 20 61 20 6e 61 6d 65 20 74 68 61   with a name tha
10880 74 20 63 6f 75 6c 64 20 62 65 0a 63 6f 6e 73 74  t could be.const
10890 72 75 65 64 20 74 6f 20 62 65 20 61 20 6c 69 73  rued to be a lis
108a0 74 20 6f 66 20 76 61 72 69 61 62 6c 65 20 6e 61  t of variable na
108b0 6d 65 73 20 28 69 2e 65 2e 20 63 6f 6e 74 61 69  mes (i.e. contai
108c0 6e 65 64 20 73 70 61 63 65 73 29 2e 20 20 28 42  ned spaces).  (B
108d0 57 29 0a 0a 31 2f 35 2f 39 36 20 28 6e 65 77 20  W)..1/5/96 (new 
108e0 66 65 61 74 75 72 65 29 20 43 68 61 6e 67 65 64  feature) Changed
108f0 20 74 63 6c 73 68 20 73 6f 20 69 74 20 62 75 69   tclsh so it bui
10900 6c 64 73 20 61 73 20 61 20 63 6f 6e 73 6f 6c 65  lds as a console
10910 20 6d 6f 64 65 0a 61 70 70 6c 69 63 61 74 69 6f   mode.applicatio
10920 6e 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 2e  n under Windows.
10930 20 20 4e 6f 77 20 74 63 6c 73 68 20 63 61 6e 20    Now tclsh can 
10940 62 65 20 75 73 65 64 20 66 72 6f 6d 20 74 68 65  be used from the
10950 20 63 6f 6d 6d 61 6e 64 0a 6c 69 6e 65 20 77 69   command.line wi
10960 74 68 20 70 69 70 65 73 20 6f 72 20 69 6e 74 65  th pipes or inte
10970 72 61 63 74 69 76 65 6c 79 2e 20 20 4e 6f 74 65  ractively.  Note
10980 20 74 68 61 74 20 74 68 69 73 20 6f 6e 6c 79 20   that this only 
10990 77 6f 72 6b 73 20 75 6e 64 65 72 0a 57 69 6e 64  works under.Wind
109a0 6f 77 73 20 39 35 20 6f 72 20 4e 54 2e 20 28 53  ows 95 or NT. (S
109b0 53 29 0a 0a 31 2f 31 37 2f 39 36 20 28 6e 65 77  S)..1/17/96 (new
109c0 20 66 65 61 74 75 72 65 29 20 4d 6f 64 69 66 69   feature) Modifi
109d0 65 64 20 4d 61 6b 65 66 69 6c 65 20 61 6e 64 20  ed Makefile and 
109e0 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74  configure script
109f0 20 74 6f 20 61 6c 6c 6f 77 0a 54 63 6c 20 74 6f   to allow.Tcl to
10a00 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 61 73 20   be compiled as 
10a10 61 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79  a shared library
10a20 3a 20 20 75 73 65 20 74 68 65 20 2d 2d 65 6e 61  :  use the --ena
10a30 62 6c 65 2d 73 68 61 72 65 64 20 6f 70 74 69 6f  ble-shared optio
10a40 6e 0a 77 68 65 6e 20 63 6f 6e 66 69 67 75 69 6e  n.when configuin
10a50 67 2e 20 20 28 4a 4f 29 0a 0a 31 2f 31 37 2f 39  g.  (JO)..1/17/9
10a60 36 20 28 72 65 6d 6f 76 65 64 20 6f 62 73 6f 6c  6 (removed obsol
10a70 65 74 65 20 66 65 61 74 75 72 65 73 29 20 20 52  ete features)  R
10a80 65 6d 6f 76 65 64 20 74 68 65 20 70 72 6f 63 65  emoved the proce
10a90 64 75 72 65 73 20 54 63 6c 5f 45 6e 74 65 72 46  dures Tcl_EnterF
10aa0 69 6c 65 0a 61 6e 64 20 54 63 6c 5f 47 65 74 4f  ile.and Tcl_GetO
10ab0 70 65 6e 46 69 6c 65 3a 20 20 74 68 65 73 65 20  penFile:  these 
10ac0 6e 6f 20 6c 6f 6e 67 65 72 20 6d 61 6b 65 20 73  no longer make s
10ad0 65 6e 73 65 20 77 69 74 68 20 74 68 65 20 6e 65  ense with the ne
10ae0 77 20 49 2f 4f 20 73 79 73 74 65 6d 2e 20 28 4a  w I/O system. (J
10af0 4c 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  L).*** POTENTIAL
10b00 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
10b10 20 2a 2a 2a 0a 0a 31 2f 31 39 2f 39 36 20 28 62   ***..1/19/96 (b
10b20 75 67 20 66 69 78 65 73 29 20 50 72 65 76 65 6e  ug fixes) Preven
10b30 74 65 64 20 66 6f 72 6d 61 74 69 6f 6e 20 6f 66  ted formation of
10b40 20 63 69 72 63 75 6c 61 72 20 61 6c 69 61 73 65   circular aliase
10b50 73 2c 20 74 68 72 6f 75 67 68 20 74 68 65 0a 54  s, through the.T
10b60 63 6c 20 27 69 6e 74 65 72 70 20 61 6c 69 61 73  cl 'interp alias
10b70 27 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 74 68  ' command and th
10b80 72 6f 75 67 68 20 74 68 65 20 27 72 65 6e 61 6d  rough the 'renam
10b90 65 27 20 63 6f 6d 6d 61 6e 64 2c 20 61 73 20 77  e' command, as w
10ba0 65 6c 6c 20 61 73 0a 74 68 72 6f 75 67 68 20 74  ell as.through t
10bb0 68 65 20 43 20 41 50 49 20 54 63 6c 5f 43 72 65  he C API Tcl_Cre
10bc0 61 74 65 41 6c 69 61 73 2e 20 28 4a 4c 29 0a 0a  ateAlias. (JL)..
10bd0 31 2f 31 39 2f 39 36 20 28 62 75 67 20 66 69 78  1/19/96 (bug fix
10be0 65 73 29 20 46 69 78 65 64 20 73 65 76 65 72 61  es) Fixed severa
10bf0 6c 20 62 75 67 73 20 69 6e 20 64 69 72 65 63 74  l bugs in direct
10c00 20 64 65 6c 65 74 69 6f 6e 20 6f 66 20 69 6e 74   deletion of int
10c10 65 72 70 72 65 74 65 72 73 0a 77 69 74 68 20 54  erpreters.with T
10c20 63 6c 5f 44 65 6c 65 74 65 49 6e 74 65 72 70 20  cl_DeleteInterp 
10c30 77 68 65 6e 20 74 68 65 20 69 6e 74 65 72 70 72  when the interpr
10c40 65 74 65 72 20 69 73 20 61 20 73 6c 61 76 65 3b  eter is a slave;
10c50 20 66 69 78 65 73 20 62 61 73 65 64 20 6f 6e 20   fixes based on 
10c60 61 0a 70 61 74 63 68 20 72 65 63 65 69 76 65 64  a.patch received
10c70 20 66 72 6f 6d 20 56 69 6b 74 6f 72 20 44 75 6b   from Viktor Duk
10c80 68 6f 76 6e 69 20 6f 66 20 45 53 4d 2e 20 28 4a  hovni of ESM. (J
10c90 4c 29 0a 0a 31 2f 31 39 2f 39 36 20 28 6e 65 77  L)..1/19/96 (new
10ca0 20 66 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d   feature) Implem
10cb0 65 6e 74 65 64 20 6f 6e 2d 63 6c 6f 73 65 20 68  ented on-close h
10cc0 61 6e 64 6c 65 72 73 20 66 6f 72 20 63 68 61 6e  andlers for chan
10cd0 6e 65 6c 73 3b 20 61 64 64 65 64 0a 74 68 65 20  nels; added.the 
10ce0 43 20 41 50 49 73 20 54 63 6c 5f 43 72 65 61 74  C APIs Tcl_Creat
10cf0 65 43 6c 6f 73 65 48 61 6e 64 6c 65 72 20 61 6e  eCloseHandler an
10d00 64 20 54 63 6c 5f 44 65 6c 65 74 65 43 6c 6f 73  d Tcl_DeleteClos
10d10 65 48 61 6e 64 6c 65 72 2e 20 28 4a 4c 29 0a 0a  eHandler. (JL)..
10d20 31 2f 31 39 2f 39 36 20 28 6e 65 77 20 66 65 61  1/19/96 (new fea
10d30 74 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65  ture) Implemente
10d40 64 20 70 6f 72 74 61 62 6c 65 20 65 72 72 6f 72  d portable error
10d50 20 72 65 70 6f 72 74 69 6e 67 20 6d 65 63 68 61   reporting mecha
10d60 6e 69 73 6d 3b 20 61 64 64 65 64 0a 74 68 65 20  nism; added.the 
10d70 43 20 41 50 49 73 20 54 63 6c 5f 53 65 74 45 72  C APIs Tcl_SetEr
10d80 72 6e 6f 20 61 6e 64 20 54 63 6c 5f 47 65 74 45  rno and Tcl_GetE
10d90 72 72 6e 6f 2e 20 28 4a 4c 29 0a 0a 31 2f 32 34  rrno. (JL)..1/24
10da0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 55 6e  /96 (bug fix) Un
10db0 6b 6e 6f 77 6e 20 63 6f 6d 6d 61 6e 64 20 70 72  known command pr
10dc0 6f 63 65 73 73 69 6e 67 20 70 72 6f 70 65 72 6c  ocessing properl
10dd0 79 20 69 6e 76 6f 6b 65 73 20 65 78 74 65 72 6e  y invokes extern
10de0 61 6c 0a 63 6f 6d 6d 61 6e 64 73 20 75 6e 64 65  al.commands unde
10df0 72 20 57 69 6e 64 6f 77 73 20 4e 54 20 61 6e 64  r Windows NT and
10e00 20 57 69 6e 64 6f 77 73 20 27 39 35 20 6e 6f 77   Windows '95 now
10e10 2e 20 28 53 53 29 0a 0a 31 2f 32 33 2f 39 36 20  . (SS)..1/23/96 
10e20 28 62 75 67 20 66 69 78 29 20 45 6c 69 6d 69 6e  (bug fix) Elimin
10e30 61 74 65 64 20 65 78 74 72 65 6d 65 6c 79 20 6c  ated extremely l
10e40 6f 6e 67 20 73 74 61 72 74 75 70 20 74 69 6d 65  ong startup time
10e50 73 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20  s under Windows 
10e60 27 39 35 2e 0a 54 68 65 20 70 72 6f 62 6c 65 6d  '95..The problem
10e70 20 77 61 73 20 61 20 72 65 73 75 6c 74 20 6f 66   was a result of
10e80 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 61 74 61   the option data
10e90 62 61 73 65 20 69 6e 69 74 69 61 6c 69 7a 61 74  base initializat
10ea0 69 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 63 6f  ion code that.co
10eb0 6e 63 61 74 65 6e 61 74 65 64 20 24 48 4f 4d 45  ncatenated $HOME
10ec0 20 77 69 74 68 20 2f 2e 58 64 65 66 61 75 6c 74   with /.Xdefault
10ed0 73 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20  s, resulting in 
10ee0 61 20 2f 2f 20 69 6e 20 74 68 65 20 6d 69 64 64  a // in the midd
10ef0 6c 65 20 6f 66 20 74 68 65 0a 66 69 6c 65 20 6e  le of the.file n
10f00 61 6d 65 2e 20 20 55 6e 64 65 72 20 57 69 6e 64  ame.  Under Wind
10f10 6f 77 73 20 27 39 35 2c 20 74 68 69 73 20 69 73  ows '95, this is
10f20 20 69 6e 63 6f 72 72 65 63 74 6c 79 20 69 6e 74   incorrectly int
10f30 65 72 70 72 65 74 65 64 20 61 73 20 61 20 55 4e  erpreted as a UN
10f40 43 0a 70 61 74 68 2e 20 20 54 68 65 79 20 64 65  C.path.  They de
10f50 6c 61 79 73 20 63 61 6d 65 20 66 72 6f 6d 20 74  lays came from t
10f60 68 65 20 6e 65 74 77 6f 72 6b 20 74 69 6d 65 6f  he network timeo
10f70 75 74 73 20 6e 65 65 64 65 64 20 74 6f 20 64 65  uts needed to de
10f80 74 65 72 6d 69 6e 65 20 74 68 61 74 0a 74 68 65  termine that.the
10f90 20 66 69 6c 65 20 6e 61 6d 65 20 77 61 73 20 69   file name was i
10fa0 6e 76 61 6c 69 64 2e 20 20 54 63 6c 5f 54 72 61  nvalid.  Tcl_Tra
10fb0 6e 73 6c 61 74 65 46 69 6c 65 4e 61 6d 65 20 6e  nslateFileName n
10fc0 6f 77 20 73 75 70 70 72 65 73 73 65 73 20 64 75  ow suppresses du
10fd0 70 6c 69 63 61 74 65 0a 73 6c 61 73 68 65 73 20  plicate.slashes 
10fe0 74 68 61 74 20 61 72 65 6e 27 74 20 61 74 20 74  that aren't at t
10ff0 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20  he beginning of 
11000 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 2e 20 28  the file name. (
11010 53 53 29 0a 09 09 09 09 20 20 20 20 20 0a 31 2f  SS).....     .1/
11020 32 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  25/96 (bug fix) 
11030 43 68 61 6e 67 65 64 20 65 78 65 63 20 61 6e 64  Changed exec and
11040 20 6f 70 65 6e 20 74 6f 20 63 72 65 61 74 65 20   open to create 
11050 63 68 69 6c 64 72 65 6e 20 73 6f 20 74 68 65 79  children so they
11060 20 61 72 65 0a 61 74 74 61 63 68 65 64 20 74 6f   are.attached to
11070 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e   the application
11080 27 73 20 63 6f 6e 73 6f 6c 65 20 69 66 20 69 74  's console if it
11090 20 65 78 69 73 74 73 2e 20 28 53 53 29 0a 0a 31   exists. (SS)..1
110a0 2f 33 31 2f 39 36 20 28 62 75 67 20 66 69 78 29  /31/96 (bug fix)
110b0 20 46 69 78 65 64 20 63 6f 6d 6d 61 6e 64 20 6c   Fixed command l
110c0 69 6e 65 20 70 61 72 73 69 6e 67 20 74 6f 20 68  ine parsing to h
110d0 61 6e 64 6c 65 20 65 6d 62 65 64 64 65 64 0a 73  andle embedded.s
110e0 70 61 63 65 73 20 75 6e 64 65 72 20 57 69 6e 64  paces under Wind
110f0 6f 77 73 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d  ows. (SS)..-----
11100 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
11110 65 61 73 65 64 20 37 2e 35 62 31 2c 20 32 2f 31  eased 7.5b1, 2/1
11120 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /96 ------------
11130 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 2f 37  -----------..2/7
11140 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
11150 78 65 64 20 6f 66 66 20 62 79 20 6f 6e 65 20 65  xed off by one e
11160 72 72 6f 72 20 69 6e 20 61 72 67 75 6d 65 6e 74  rror in argument
11170 20 70 61 72 73 69 6e 67 20 63 6f 64 65 20 75 6e   parsing code un
11180 64 65 72 0a 57 69 6e 64 6f 77 73 2e 20 28 53 53  der.Windows. (SS
11190 29 0a 0a 32 2f 37 2f 39 36 20 28 62 75 67 20 66  )..2/7/96 (bug f
111a0 69 78 29 20 46 69 78 65 64 20 62 75 67 73 20 69  ix) Fixed bugs i
111b0 6e 20 56 43 2b 2b 20 6d 61 6b 65 66 69 6c 65 20  n VC++ makefile 
111c0 74 68 61 74 20 69 6d 70 72 6f 70 65 72 6c 79 0a  that improperly.
111d0 69 6e 69 74 69 61 6c 69 7a 65 64 20 74 68 65 20  initialized the 
111e0 74 63 6c 37 35 2e 64 6c 6c 2e 20 20 46 69 78 65  tcl75.dll.  Fixe
111f0 64 20 62 75 67 73 20 69 6e 20 42 6f 72 6c 61 6e  d bugs in Borlan
11200 64 20 6d 61 6b 65 66 69 6c 65 20 74 68 61 74 20  d makefile that 
11210 63 61 75 73 65 64 0a 62 75 69 6c 64 20 66 61 69  caused.build fai
11220 6c 75 72 65 73 20 75 6e 64 65 72 20 57 69 6e 64  lures under Wind
11230 6f 77 73 20 4e 54 2e 20 28 53 53 29 0a 0a 32 2f  ows NT. (SS)..2/
11240 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  9/96 (bug fix) F
11250 69 78 65 64 20 64 65 61 64 6c 6f 63 6b 20 70 72  ixed deadlock pr
11260 6f 62 6c 65 6d 20 69 6e 20 41 55 54 4f 20 65 6e  oblem in AUTO en
11270 64 20 6f 66 20 6c 69 6e 65 20 74 72 61 6e 73 6c  d of line transl
11280 61 74 69 6f 6e 0a 6d 6f 64 65 20 77 68 69 63 68  ation.mode which
11290 20 77 6f 75 6c 64 20 63 61 75 73 65 20 61 20 73   would cause a s
112a0 6f 63 6b 65 74 20 73 65 72 76 65 72 20 77 69 74  ocket server wit
112b0 68 20 73 65 76 65 72 61 6c 20 63 6f 6e 63 75 72  h several concur
112c0 72 65 6e 74 20 63 6c 69 65 6e 74 73 0a 77 72 69  rent clients.wri
112d0 74 69 6e 67 20 69 6e 20 43 52 4c 46 20 6d 6f 64  ting in CRLF mod
112e0 65 20 74 6f 20 68 61 6e 67 2e 20 28 4a 4c 29 0a  e to hang. (JL).
112f0 0a 32 2f 39 2f 39 36 20 28 41 50 49 20 63 68 61  .2/9/96 (API cha
11300 6e 67 65 29 20 52 65 70 6c 61 63 65 64 20 2d 6c  nge) Replaced -l
11310 69 6e 65 6d 6f 64 65 20 6f 70 74 69 6f 6e 20 74  inemode option t
11320 6f 20 66 63 6f 6e 66 69 67 75 72 65 20 77 69 74  o fconfigure wit
11330 68 20 61 0a 6e 65 77 20 2d 62 75 66 66 65 72 69  h a.new -bufferi
11340 6e 67 20 6f 70 74 69 6f 6e 2c 20 61 64 64 65 64  ng option, added
11350 20 22 6e 6f 6e 65 22 20 73 65 74 74 69 6e 67 20   "none" setting 
11360 74 6f 20 65 6e 61 62 6c 65 20 69 6d 6d 65 64 69  to enable immedi
11370 61 74 65 20 77 72 69 74 65 2e 20 28 4a 4c 29 0a  ate write. (JL).
11380 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  *** INCOMPATIBIL
11390 49 54 59 20 77 69 74 68 20 62 31 20 2a 2a 2a 0a  ITY with b1 ***.
113a0 0a 32 2f 39 2f 39 36 20 28 6e 65 77 20 66 65 61  .2/9/96 (new fea
113b0 74 75 72 65 29 20 41 64 64 65 64 20 43 20 41 50  ture) Added C AP
113c0 49 20 54 63 6c 5f 49 6e 70 75 74 42 75 66 66 65  I Tcl_InputBuffe
113d0 72 65 64 20 77 68 69 63 68 20 72 65 74 75 72 6e  red which return
113e0 73 20 74 68 65 20 63 6f 75 6e 74 0a 6f 66 20 62  s the count.of b
113f0 79 74 65 73 20 63 75 72 72 65 6e 74 6c 79 20 62  ytes currently b
11400 75 66 66 65 72 65 64 20 69 6e 20 74 68 65 20 69  uffered in the i
11410 6e 70 75 74 20 62 75 66 66 65 72 20 6f 66 20 61  nput buffer of a
11420 20 63 68 61 6e 6e 65 6c 2c 20 61 6e 64 20 6f 20   channel, and o 
11430 66 6f 72 0a 6f 75 74 70 75 74 20 6f 6e 6c 79 20  for.output only 
11440 63 68 61 6e 6e 65 6c 73 2e 20 28 4a 4c 29 0a 0a  channels. (JL)..
11450 32 2f 39 2f 39 36 20 28 6e 65 77 20 66 65 61 74  2/9/96 (new feat
11460 75 72 65 29 20 49 6d 70 6c 65 6d 65 6e 74 65 64  ure) Implemented
11470 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 20 63 6f   asynchronous co
11480 6e 6e 65 63 74 20 66 6f 72 20 73 6f 63 6b 65 74  nnect for socket
11490 73 2e 20 28 4a 4c 29 0a 0a 32 2f 39 2f 39 36 20  s. (JL)..2/9/96 
114a0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
114b0 64 65 64 20 43 20 41 50 49 20 54 63 6c 5f 53 65  ded C API Tcl_Se
114c0 74 44 65 66 61 75 6c 74 54 72 61 6e 73 6c 61 74  tDefaultTranslat
114d0 69 6f 6e 20 74 6f 20 73 65 74 20 28 70 65 72 0a  ion to set (per.
114e0 63 68 61 6e 6e 65 6c 29 20 74 68 65 20 64 65 66  channel) the def
114f0 61 75 6c 74 20 65 6e 64 20 6f 66 20 6c 69 6e 65  ault end of line
11500 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64   translation mod
11510 65 2e 20 54 68 69 73 20 69 73 20 74 68 65 20 6d  e. This is the m
11520 6f 64 65 20 74 68 61 74 0a 77 69 6c 6c 20 62 65  ode that.will be
11530 20 69 6e 73 74 61 6c 6c 65 64 20 69 66 20 61 6e   installed if an
11540 20 6f 75 74 70 75 74 20 6f 70 65 72 61 74 69 6f   output operatio
11550 6e 20 69 73 20 64 6f 6e 65 20 6f 6e 20 74 68 65  n is done on the
11560 20 63 68 61 6e 6e 65 6c 20 77 68 69 6c 65 20 69   channel while i
11570 74 20 69 73 0a 73 74 69 6c 6c 20 69 6e 20 41 55  t is.still in AU
11580 54 4f 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a 0a 32  TO mode. (JL)..2
11590 2f 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /9/96 (bug fix) 
115a0 43 68 61 6e 67 65 64 20 54 63 6c 5f 4f 70 65 6e  Changed Tcl_Open
115b0 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 20 69  CommandChannel i
115c0 6e 74 65 72 66 61 63 65 20 74 6f 20 70 72 6f 70  nterface to prop
115d0 65 72 6c 79 0a 68 61 6e 64 6c 65 20 61 6c 6c 20  erly.handle all 
115e0 6f 66 20 74 68 65 20 63 6f 6d 62 69 6e 61 74 69  of the combinati
115f0 6f 6e 73 20 6f 66 20 73 74 64 69 6f 20 69 6e 68  ons of stdio inh
11600 65 72 69 74 61 6e 63 65 20 69 6e 20 62 61 63 6b  eritance in back
11610 67 72 6f 75 6e 64 0a 70 69 70 65 6c 69 6e 65 73  ground.pipelines
11620 2e 20 20 53 65 65 20 74 68 65 20 54 63 6c 5f 4f  .  See the Tcl_O
11630 70 65 6e 46 69 6c 65 43 68 61 6e 6e 65 6c 28 33  penFileChannel(3
11640 29 20 6d 61 6e 20 70 61 67 65 20 66 6f 72 20 6d  ) man page for m
11650 6f 72 65 0a 69 6e 66 6f 2e 20 20 54 68 69 73 20  ore.info.  This 
11660 63 68 61 6e 67 65 20 66 69 78 65 73 20 74 68 65  change fixes the
11670 20 62 75 67 20 77 68 65 72 65 20 65 78 65 63 20   bug where exec 
11680 6f 66 20 61 20 62 61 63 6b 67 72 6f 75 6e 64 20  of a background 
11690 70 69 70 65 6c 69 6e 65 0a 77 61 73 20 6e 6f 74  pipeline.was not
116a0 20 67 65 74 74 69 6e 67 20 70 61 73 73 65 64 20   getting passed 
116b0 74 68 65 20 73 74 64 69 6f 20 68 61 6e 64 6c 65  the stdio handle
116c0 73 20 70 72 6f 70 65 72 6c 79 2e 20 28 53 53 29  s properly. (SS)
116d0 0a 0a 32 2f 39 2f 39 36 20 28 62 75 67 20 66 69  ..2/9/96 (bug fi
116e0 78 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20 6e  x) Removed the n
116f0 65 77 20 54 63 6c 5f 43 72 65 61 74 65 50 69 70  ew Tcl_CreatePip
11700 65 6c 69 6e 65 20 69 6e 74 65 72 66 61 63 65 2c  eline interface,
11710 20 61 6e 64 0a 72 65 73 74 6f 72 65 64 20 74 68   and.restored th
11720 65 20 6f 6c 64 20 76 65 72 73 69 6f 6e 20 66 6f  e old version fo
11730 72 20 55 6e 69 78 20 70 6c 61 74 66 6f 72 6d 73  r Unix platforms
11740 20 6f 6e 6c 79 2e 20 20 41 6c 6c 20 6e 65 77 20   only.  All new 
11750 63 6f 64 65 20 73 68 6f 75 6c 64 0a 75 73 65 20  code should.use 
11760 54 63 6c 5f 43 72 65 61 74 65 43 6f 6d 6d 61 6e  Tcl_CreateComman
11770 64 43 68 61 6e 6e 65 6c 20 69 6e 73 74 65 61 64  dChannel instead
11780 2e 20 28 53 53 29 0a 0a 32 2f 39 2f 39 36 20 28  . (SS)..2/9/96 (
11790 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
117a0 20 4d 61 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20   Makefile.in to 
117b0 75 73 65 20 2d 4c 20 61 6e 64 20 2d 6c 74 63 6c  use -L and -ltcl
117c0 37 2e 35 20 66 6f 72 20 54 63 6c 0a 6c 69 62 72  7.5 for Tcl.libr
117d0 61 72 79 20 73 6f 20 74 68 61 74 20 73 68 61 72  ary so that shar
117e0 65 64 20 6c 69 62 72 61 72 69 65 73 20 61 72 65  ed libraries are
117f0 20 6d 6f 72 65 20 6c 69 6b 65 6c 79 20 74 6f 20   more likely to 
11800 62 65 20 66 6f 75 6e 64 20 63 6f 72 72 65 63 74  be found correct
11810 6c 79 0a 6f 6e 20 6d 6f 72 65 20 70 6c 61 74 66  ly.on more platf
11820 6f 72 6d 73 2e 20 28 4a 4f 29 0a 0a 32 2f 31 33  orms. (JO)..2/13
11830 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65  /96 (new feature
11840 29 20 41 64 64 65 64 20 43 20 41 50 49 20 54 63  ) Added C API Tc
11850 6c 5f 53 65 74 4e 6f 74 69 66 69 65 72 44 61 74  l_SetNotifierDat
11860 61 20 61 6e 64 0a 54 63 6c 5f 47 65 74 4e 6f 74  a and.Tcl_GetNot
11870 69 66 69 65 72 44 61 74 61 20 74 6f 20 61 6c 6c  ifierData to all
11880 6f 77 20 6e 6f 74 69 66 69 65 72 20 61 6e 64 20  ow notifier and 
11890 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 77  channel driver w
118a0 72 69 74 65 72 73 20 74 6f 0a 61 73 73 6f 63 69  riters to.associ
118b0 61 74 65 20 64 61 74 61 20 77 69 74 68 20 61 20  ate data with a 
118c0 54 63 6c 5f 46 69 6c 65 2e 20 20 54 68 65 20 72  Tcl_File.  The r
118d0 65 73 75 6c 74 20 6f 66 20 74 68 69 73 20 63 68  esult of this ch
118e0 61 6e 67 65 20 69 73 20 74 68 61 74 0a 54 63 6c  ange is that.Tcl
118f0 5f 47 65 74 46 69 6c 65 49 6e 66 6f 20 6e 6f 77  _GetFileInfo now
11900 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73 20   always returns 
11910 61 6e 20 4f 53 20 66 69 6c 65 20 68 61 6e 64 6c  an OS file handl
11920 65 2c 20 61 6e 64 20 54 63 6c 5f 47 65 74 46 69  e, and Tcl_GetFi
11930 6c 65 0a 63 61 6e 20 62 65 20 75 73 65 64 20 74  le.can be used t
11940 6f 20 63 6f 6e 73 74 72 75 63 74 20 61 20 54 63  o construct a Tc
11950 6c 5f 46 69 6c 65 20 66 6f 72 20 61 6e 20 65 78  l_File for an ex
11960 74 65 72 6e 61 6c 6c 79 20 63 6f 6e 73 74 72 75  ternally constru
11970 63 74 65 64 20 4f 53 0a 68 61 6e 64 6c 65 2e 20  cted OS.handle. 
11980 28 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20 28 62  (SS)..2/13/96 (b
11990 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
119a0 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 69  Windows socket i
119b0 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 6f  mplementation so
119c0 20 69 74 20 64 6f 65 73 6e 27 74 0a 73 65 74 20   it doesn't.set 
119d0 53 4f 5f 52 45 55 53 45 41 44 44 52 20 6f 6e 20  SO_REUSEADDR on 
119e0 73 65 72 76 65 72 20 73 6f 63 6b 65 74 73 2e 20  server sockets. 
119f0 20 4e 6f 77 20 61 74 74 65 6d 70 74 73 20 74 6f   Now attempts to
11a00 20 63 72 65 61 74 65 20 61 20 73 65 72 76 65 72   create a server
11a10 0a 73 6f 63 6b 65 74 20 6f 6e 20 61 20 70 6f 72  .socket on a por
11a20 74 20 74 68 61 74 20 69 73 20 61 6c 72 65 61 64  t that is alread
11a30 79 20 69 6e 20 75 73 65 20 77 69 6c 6c 20 62 65  y in use will be
11a40 20 70 72 6f 70 65 72 6c 79 20 69 64 65 6e 74 69   properly identi
11a50 66 69 65 64 0a 61 6e 64 20 61 6e 20 65 72 72 6f  fied.and an erro
11a60 72 20 77 69 6c 6c 20 62 65 20 67 65 6e 65 72 61  r will be genera
11a70 74 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33 2f  ted. (SS)..2/13/
11a80 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
11a90 65 64 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68  ed problems with
11aa0 20 44 4c 4c 20 69 6e 69 74 69 61 6c 69 7a 61 74   DLL initializat
11ab0 69 6f 6e 20 75 6e 64 65 72 20 56 69 73 75 61 6c  ion under Visual
11ac0 0a 43 2b 2b 20 74 68 61 74 20 6c 65 66 74 20 74  .C++ that left t
11ad0 68 65 20 43 20 72 75 6e 20 74 69 6d 65 20 6c 69  he C run time li
11ae0 62 72 61 72 79 20 75 6e 69 6e 69 74 69 61 6c 69  brary uninitiali
11af0 7a 65 64 2e 20 28 53 53 29 0a 0a 32 2f 31 33 2f  zed. (SS)..2/13/
11b00 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
11b10 65 64 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65  ed Windows socke
11b20 74 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e  t initialization
11b30 20 73 6f 20 69 74 20 6c 6f 61 64 73 0a 77 69 6e   so it loads.win
11b40 73 6f 63 6b 20 74 68 65 20 66 69 72 73 74 20 74  sock the first t
11b50 69 6d 65 20 69 74 20 69 73 20 75 73 65 64 2c 20  ime it is used, 
11b60 72 61 74 68 65 72 20 74 68 61 6e 20 61 74 20 74  rather than at t
11b70 68 65 20 74 69 6d 65 20 74 63 6c 37 35 2e 64 6c  he time tcl75.dl
11b80 6c 0a 69 73 20 6c 6f 61 64 65 64 2e 20 20 54 68  l.is loaded.  Th
11b90 69 73 20 73 68 6f 75 6c 64 20 66 69 78 20 74 68  is should fix th
11ba0 65 20 62 75 67 20 77 68 65 72 65 20 74 68 65 20  e bug where the 
11bb0 6d 6f 64 65 6d 20 69 6d 6d 65 64 69 61 74 65 6c  modem immediatel
11bc0 79 20 73 74 61 72 74 73 0a 74 72 79 69 6e 67 20  y starts.trying 
11bd0 74 6f 20 63 6f 6e 6e 65 63 74 20 74 6f 20 61 20  to connect to a 
11be0 73 65 72 76 69 63 65 20 70 72 6f 76 69 64 65 72  service provider
11bf0 20 77 68 65 6e 20 77 69 73 68 20 6f 72 20 74 63   when wish or tc
11c00 6c 73 68 20 61 72 65 0a 73 74 61 72 74 65 64 2e  lsh are.started.
11c10 20 28 53 53 29 0a 0a 32 2f 31 33 2f 39 36 20 28   (SS)..2/13/96 (
11c20 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
11c30 65 64 20 43 20 41 50 49 73 20 54 63 6c 5f 4d 61  ed C APIs Tcl_Ma
11c40 6b 65 46 69 6c 65 43 68 61 6e 6e 65 6c 20 61 6e  keFileChannel an
11c50 64 0a 54 63 6c 5f 4d 61 6b 65 54 63 70 43 6c 69  d.Tcl_MakeTcpCli
11c60 65 6e 74 43 68 61 6e 6e 65 6c 20 74 6f 20 77 72  entChannel to wr
11c70 61 70 20 75 70 20 65 78 69 73 74 69 6e 67 20 66  ap up existing f
11c80 64 73 20 61 6e 64 20 73 6f 63 6b 65 74 73 20 69  ds and sockets i
11c90 6e 74 6f 0a 63 68 61 6e 6e 65 6c 73 2e 20 50 72  nto.channels. Pr
11ca0 6f 76 69 64 65 64 20 69 6d 70 6c 65 6d 65 6e 74  ovided implement
11cb0 61 74 69 6f 6e 73 20 6f 6e 20 55 6e 69 78 20 61  ations on Unix a
11cc0 6e 64 20 57 69 6e 64 6f 77 73 2e 20 28 4a 4c 29  nd Windows. (JL)
11cd0 0a 0a 32 2f 31 33 2f 39 36 20 28 62 75 67 20 66  ..2/13/96 (bug f
11ce0 69 78 29 20 46 69 78 65 64 20 62 75 67 20 77 69  ix) Fixed bug wi
11cf0 74 68 20 73 65 65 6b 20 6c 65 61 76 69 6e 67 20  th seek leaving 
11d00 45 4f 46 20 61 6e 64 20 42 4c 4f 43 4b 49 4e 47  EOF and BLOCKING
11d10 20 73 65 74 2e 20 28 4a 4c 29 0a 0a 32 2f 31 34   set. (JL)..2/14
11d20 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
11d30 78 65 64 20 72 65 65 6e 74 72 61 6e 63 79 20 70  xed reentrancy p
11d40 72 6f 62 6c 65 6d 20 69 6e 20 66 69 6c 65 65 76  roblem in fileev
11d50 65 6e 74 20 68 61 6e 64 6c 69 6e 67 0a 61 6e 64  ent handling.and
11d60 20 6d 61 64 65 20 69 74 20 6d 6f 72 65 20 72 6f   made it more ro
11d70 62 75 73 74 20 69 6e 20 74 68 65 20 66 61 63 65  bust in the face
11d80 20 6f 66 20 65 72 72 6f 72 73 2e 20 28 4a 4c 29   of errors. (JL)
11d90 0a 0a 32 2f 31 34 2f 39 36 20 28 66 65 61 74 75  ..2/14/96 (featu
11da0 72 65 20 63 68 61 6e 67 65 29 20 4d 61 64 65 20  re change) Made 
11db0 67 65 6e 65 72 69 63 20 49 4f 20 6c 65 76 65 6c  generic IO level
11dc0 20 65 6d 75 6c 61 74 65 20 62 6c 6f 63 6b 69 6e   emulate blockin
11dd0 67 20 6d 6f 64 65 20 69 66 20 74 68 65 0a 63 68  g mode if the.ch
11de0 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 73 20  annel driver is 
11df0 75 6e 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64  unable to provid
11e00 65 20 69 74 2c 20 65 2e 67 2e 20 69 66 20 74 68  e it, e.g. if th
11e10 65 20 6c 6f 77 20 6c 65 76 65 6c 20 64 65 76 69  e low level devi
11e20 63 65 20 69 73 0a 61 6c 77 61 79 73 20 6e 6f 6e  ce is.always non
11e30 62 6c 6f 63 6b 69 6e 67 2e 20 54 68 75 73 2c 20  blocking. Thus, 
11e40 6e 6f 77 20 62 6c 6f 63 6b 69 6e 67 20 62 65 68  now blocking beh
11e50 61 76 69 6f 72 20 69 73 20 61 6e 20 61 64 76 69  avior is an advi
11e60 73 6f 72 79 20 73 65 74 74 69 6e 67 20 66 6f 72  sory setting for
11e70 0a 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 73  .channel drivers
11e80 20 61 6e 64 20 63 61 6e 20 62 65 20 69 67 6e 6f   and can be igno
11e90 72 65 64 20 73 61 66 65 6c 79 20 69 66 20 74 68  red safely if th
11ea0 65 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  e channel driver
11eb0 20 69 73 20 75 6e 61 62 6c 65 0a 74 6f 20 70 72   is unable.to pr
11ec0 6f 76 69 64 65 20 69 74 2e 20 28 4a 4c 29 0a 0a  ovide it. (JL)..
11ed0 32 2f 31 35 2f 39 36 20 28 6e 65 77 20 66 65 61  2/15/96 (new fea
11ee0 74 75 72 65 29 20 41 64 64 65 64 20 22 62 69 6e  ture) Added "bin
11ef0 61 72 79 22 20 65 6e 64 20 6f 66 20 6c 69 6e 65  ary" end of line
11f00 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64   translation mod
11f10 65 2c 20 77 68 69 63 68 20 69 73 0a 61 20 73 79  e, which is.a sy
11f20 6e 6f 6e 79 6d 20 6f 66 20 22 6c 66 22 20 6d 6f  nonym of "lf" mo
11f30 64 65 2e 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f 39  de. (JL)..2/15/9
11f40 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
11f50 64 20 72 65 65 6e 74 72 61 6e 63 79 20 70 72 6f  d reentrancy pro
11f60 62 6c 65 6d 20 69 6e 20 66 69 6c 65 65 76 65 6e  blem in fileeven
11f70 74 20 68 61 6e 64 6c 69 6e 67 20 76 73 0a 64 65  t handling vs.de
11f80 6c 65 74 69 6f 6e 20 6f 66 20 63 68 61 6e 6e 65  letion of channe
11f90 6c 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73  l event handlers
11fa0 2e 20 28 4a 4c 29 0a 0a 32 2f 31 35 2f 39 36 20  . (JL)..2/15/96 
11fb0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
11fc0 62 75 67 20 69 6e 20 65 76 65 6e 74 20 68 61 6e  bug in event han
11fd0 64 6c 69 6e 67 20 77 68 69 63 68 20 77 6f 75 6c  dling which woul
11fe0 64 20 63 61 75 73 65 20 61 0a 6e 6f 6e 62 6c 6f  d cause a.nonblo
11ff0 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20 74 6f  cking channel to
12000 20 6e 6f 74 20 73 65 65 20 66 75 72 74 68 65 72   not see further
12010 20 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74 73   readable events
12020 20 61 66 74 65 72 20 74 68 65 20 66 69 72 73 74   after the first
12030 0a 72 65 61 64 61 62 6c 65 20 65 76 65 6e 74 20  .readable event 
12040 74 68 61 74 20 68 61 64 20 69 6e 73 75 66 66 69  that had insuffi
12050 63 69 65 6e 74 20 69 6e 70 75 74 2e 20 28 4a 4c  cient input. (JL
12060 29 0a 0a 32 2f 31 37 2f 39 36 20 28 62 75 67 20  )..2/17/96 (bug 
12070 66 69 78 29 20 22 69 6e 66 6f 20 63 6f 6d 70 6c  fix) "info compl
12080 65 74 65 22 20 64 69 64 6e 27 74 20 70 72 6f 70  ete" didn't prop
12090 65 72 6c 79 20 68 61 6e 64 6c 65 20 63 6f 6d 6d  erly handle comm
120a0 65 6e 74 73 0a 69 6e 20 6e 65 73 74 65 64 20 63  ents.in nested c
120b0 6f 6d 6d 61 6e 64 73 2e 20 28 4a 4f 29 0a 0a 32  ommands. (JO)..2
120c0 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69 78 29  /21/96 (bug fix)
120d0 20 22 65 78 65 63 22 20 75 6e 64 65 72 20 57 69   "exec" under Wi
120e0 6e 64 6f 77 73 20 4e 54 2f 39 35 20 64 69 64 20  ndows NT/95 did 
120f0 6e 6f 74 20 70 72 6f 70 65 72 6c 79 20 68 61 6e  not properly han
12100 64 6c 65 0a 76 65 72 79 20 6c 6f 6e 67 20 63 6f  dle.very long co
12110 6d 6d 61 6e 64 20 6c 69 6e 65 73 20 28 3e 32 30  mmand lines (>20
12120 30 20 63 68 61 72 73 29 2e 20 28 53 53 29 0a 0a  0 chars). (SS)..
12130 32 2f 32 31 2f 39 36 20 28 62 75 67 20 66 69 78  2/21/96 (bug fix
12140 29 20 53 6f 63 6b 65 74 73 20 63 6f 75 6c 64 20  ) Sockets could 
12150 67 65 74 20 69 6e 74 6f 20 61 6e 20 69 6e 66 69  get into an infi
12160 6e 69 74 65 20 6c 6f 6f 70 20 69 66 20 61 20 72  nite loop if a r
12170 65 61 64 0a 65 76 65 6e 74 20 61 72 72 69 76 65  ead.event arrive
12180 64 20 61 66 74 65 72 20 61 6c 6c 20 6f 66 20 74  d after all of t
12190 68 65 20 61 76 61 69 6c 61 62 6c 65 20 64 61 74  he available dat
121a0 61 20 68 61 64 20 62 65 65 6e 20 72 65 61 64 2e  a had been read.
121b0 20 28 53 53 29 0a 0a 32 2f 32 32 2f 39 36 20 28   (SS)..2/22/96 (
121c0 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20 63  bug fix) Added c
121d0 61 73 74 20 6f 66 20 73 74 5f 73 69 7a 65 20 65  ast of st_size e
121e0 6c 65 6d 65 6e 74 73 20 74 6f 20 28 6c 6f 6e 67  lements to (long
121f0 29 20 62 65 66 6f 72 65 0a 73 70 72 69 6e 74 66  ) before.sprintf
12200 2d 69 6e 67 20 69 6e 20 22 66 69 6c 65 20 73 69  -ing in "file si
12210 7a 65 22 20 63 6f 6d 6d 61 6e 64 2e 20 20 54 68  ze" command.  Th
12220 69 73 20 69 73 20 6e 65 65 64 65 64 20 74 6f 20  is is needed to 
12230 68 61 6e 64 6c 65 20 73 79 73 74 65 6d 73 0a 6c  handle systems.l
12240 69 6b 65 20 4e 65 74 42 53 44 20 77 69 74 68 20  ike NetBSD with 
12250 36 34 2d 62 69 74 20 66 69 6c 65 20 6f 66 66 73  64-bit file offs
12260 65 74 73 2e 20 20 28 4a 4f 29 0a 0a 2d 2d 2d 2d  ets.  (JO)..----
12270 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
12280 6c 65 61 73 65 64 20 37 2e 35 62 32 2c 20 32 2f  leased 7.5b2, 2/
12290 32 33 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  23/96 ----------
122a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 32  -------------..2
122b0 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29  /23/96 (bug fix)
122c0 20 54 43 4c 5f 56 41 52 41 52 47 53 20 6d 61 63   TCL_VARARGS mac
122d0 72 6f 20 69 6e 20 74 63 6c 2e 68 20 77 61 73 6e  ro in tcl.h wasn
122e0 27 74 20 64 65 66 69 6e 65 64 20 70 72 6f 70 65  't defined prope
122f0 72 6c 79 0a 77 68 65 6e 20 63 6f 6d 70 69 6c 69  rly.when compili
12300 6e 67 20 77 69 74 68 20 43 2b 2b 2e 20 20 28 4a  ng with C++.  (J
12310 4f 29 0a 0a 32 2f 32 34 2f 39 36 20 28 62 75 67  O)..2/24/96 (bug
12320 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20 64 65   fix) Removed de
12330 70 65 6e 64 65 6e 63 69 65 73 20 6f 6e 20 4d 61  pendencies on Ma
12340 6b 65 66 69 6c 65 20 69 6e 20 74 68 65 20 55 4e  kefile in the UN
12350 49 58 20 4d 61 6b 65 66 69 6c 65 3a 0a 74 68 69  IX Makefile:.thi
12360 73 20 63 61 75 73 65 64 20 70 72 6f 62 6c 65 6d  s caused problem
12370 73 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f  s on some platfo
12380 72 6d 73 20 28 6c 69 6b 65 20 4c 69 6e 75 78 3f  rms (like Linux?
12390 29 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34 2f 39 36  ). (JO)..2/24/96
123a0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
123b0 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 62   configuration b
123c0 75 67 20 74 68 61 74 20 6d 61 64 65 20 54 63 6c  ug that made Tcl
123d0 20 6e 6f 74 20 63 6f 6d 70 69 6c 65 0a 63 6f 72   not compile.cor
123e0 72 65 63 74 6c 79 20 6f 6e 20 4c 69 6e 75 78 20  rectly on Linux 
123f0 6d 61 63 68 69 6e 65 73 20 77 69 74 68 20 6e 65  machines with ne
12400 69 74 68 65 72 20 2d 6c 64 6c 20 6f 72 20 2d 6c  ither -ldl or -l
12410 64 6c 64 2e 20 28 4a 4f 29 0a 0a 32 2f 32 34 2f  dld. (JO)..2/24/
12420 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
12430 20 41 64 64 65 64 20 61 20 62 6c 6f 63 6b 20 6f   Added a block o
12440 66 20 63 6f 6d 6d 65 6e 74 73 20 61 6e 64 20 64  f comments and d
12450 65 66 69 6e 69 74 69 6f 6e 73 20 74 6f 0a 4d 61  efinitions to.Ma
12460 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20 6d 61 6b  kefile.in to mak
12470 65 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 68  e it easier to h
12480 61 76 65 20 54 63 6c 27 73 20 54 63 6c 53 65 74  ave Tcl's TclSet
12490 45 6e 76 20 65 74 63 2e 20 72 65 70 6c 61 63 65  Env etc. replace
124a0 0a 74 68 65 20 6c 69 62 72 61 72 79 20 70 72 6f  .the library pro
124b0 63 65 64 75 72 65 73 20 73 65 74 65 6e 76 20 65  cedures setenv e
124c0 74 63 2c 20 73 6f 20 74 68 61 74 20 63 61 6c 6c  tc, so that call
124d0 73 20 74 6f 20 73 65 74 65 6e 76 20 65 74 63 2e  s to setenv etc.
124e0 20 69 6e 0a 74 68 65 20 61 70 70 6c 69 63 61 74   in.the applicat
124f0 69 6f 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c  ion automaticall
12500 79 20 75 70 64 61 74 65 20 74 68 65 20 54 63 6c  y update the Tcl
12510 20 22 65 6e 76 22 20 76 61 72 69 61 62 6c 65 2e   "env" variable.
12520 20 28 4a 4f 29 0a 0a 32 2f 32 37 2f 39 36 20 28   (JO)..2/27/96 (
12530 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
12540 41 64 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 54  Added optional T
12550 63 6c 5f 49 6e 74 65 72 70 20 2a 20 61 72 67 75  cl_Interp * argu
12560 6d 65 6e 74 20 28 6d 61 79 20 62 65 20 4e 55 4c  ment (may be NUL
12570 4c 29 0a 74 6f 20 43 20 41 50 49 20 54 63 6c 5f  L).to C API Tcl_
12580 43 6c 6f 73 65 20 61 6e 64 20 73 69 6d 70 6c 69  Close and simpli
12590 66 69 65 64 20 63 6c 6f 73 69 6e 67 20 6f 66 20  fied closing of 
125a0 63 6f 6d 6d 61 6e 64 20 63 68 61 6e 6e 65 6c 73  command channels
125b0 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d  . (JL).*** INCOM
125c0 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
125d0 54 63 6c 20 37 2e 35 62 32 2c 20 62 75 74 20 6e  Tcl 7.5b2, but n
125e0 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20  ot with Tcl 7.4 
125f0 2a 2a 2a 0a 0a 32 2f 32 37 2f 39 36 20 28 66 65  ***..2/27/96 (fe
12600 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64  ature change) Ad
12610 64 65 64 20 6f 70 74 69 6f 6e 61 6c 20 54 63 6c  ded optional Tcl
12620 5f 49 6e 74 65 72 70 20 2a 20 61 72 67 75 6d 65  _Interp * argume
12630 6e 74 20 28 6d 61 79 20 62 65 20 4e 55 4c 4c 29  nt (may be NULL)
12640 0a 74 6f 20 43 20 74 79 70 65 20 64 65 66 69 6e  .to C type defin
12650 69 74 69 6f 6e 20 54 63 6c 5f 44 72 69 76 65 72  ition Tcl_Driver
12660 43 6c 6f 73 65 50 72 6f 63 3b 20 6d 6f 64 69 66  CloseProc; modif
12670 69 65 64 20 61 6c 6c 20 63 68 61 6e 6e 65 6c 20  ied all channel 
12680 64 72 69 76 65 72 73 20 74 6f 0a 69 6d 70 6c 65  drivers to.imple
12690 6d 65 6e 74 20 63 6c 6f 73 65 20 70 72 6f 63 65  ment close proce
126a0 64 75 72 65 73 20 74 68 61 74 20 61 63 63 65 70  dures that accep
126b0 74 20 74 68 65 20 61 64 64 69 74 69 6f 6e 61 6c  t the additional
126c0 20 61 72 67 75 6d 65 6e 74 2e 20 28 4a 4c 29 0a   argument. (JL).
126d0 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  *** INCOMPATIBIL
126e0 49 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35  ITY with Tcl 7.5
126f0 62 32 2c 20 62 75 74 20 6e 6f 74 20 77 69 74 68  b2, but not with
12700 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 32 2f   Tcl 7.4 ***..2/
12710 32 38 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  28/96 (bug fix) 
12720 46 69 78 65 64 20 6d 65 6d 6f 72 79 20 6c 65 61  Fixed memory lea
12730 6b 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63 63  k that could occ
12740 75 72 20 69 66 20 61 6e 20 75 70 76 61 72 0a 72  ur if an upvar.r
12750 65 66 65 72 72 65 64 20 74 6f 20 61 6e 20 65 6c  eferred to an el
12760 65 6d 65 6e 74 20 6f 66 20 61 6e 20 61 72 72 61  ement of an arra
12770 79 20 69 6e 20 74 68 65 20 73 61 6d 65 20 73 74  y in the same st
12780 61 63 6b 20 66 72 61 6d 65 20 61 73 20 74 68 65  ack frame as the
12790 0a 75 70 76 61 72 2e 20 28 4a 4f 29 0a 0a 32 2f  .upvar. (JO)..2/
127a0 32 39 2f 39 36 20 28 66 65 61 74 75 72 65 20 63  29/96 (feature c
127b0 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64 20  hange) Modified 
127c0 62 6f 74 68 20 54 63 6c 5f 44 6f 4f 6e 65 45 76  both Tcl_DoOneEv
127d0 65 6e 74 20 61 6e 64 20 54 63 6c 5f 57 61 69 74  ent and Tcl_Wait
127e0 46 6f 72 45 76 65 6e 74 0a 73 6f 20 74 68 61 74  ForEvent.so that
127f0 20 74 68 65 79 20 72 65 74 75 72 6e 20 69 6d 6d   they return imm
12800 65 64 69 61 74 65 6c 79 20 69 6e 20 63 61 73 65  ediately in case
12810 73 20 77 68 65 72 65 20 74 68 65 79 20 77 6f 75  s where they wou
12820 6c 64 20 6f 74 68 65 72 77 69 73 65 0a 62 6c 6f  ld otherwise.blo
12830 63 6b 20 66 6f 72 65 76 65 72 20 28 65 2e 67 2e  ck forever (e.g.
12840 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f   if there are no
12850 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73 20   event handlers 
12860 6f 66 20 61 6e 79 20 73 6f 72 74 29 2e 20 28 4a  of any sort). (J
12870 4f 29 0a 0a 32 2f 32 39 2f 39 36 20 28 6e 65 77  O)..2/29/96 (new
12880 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
12890 43 20 41 50 49 73 20 54 63 6c 5f 47 65 74 43 68  C APIs Tcl_GetCh
128a0 61 6e 6e 65 6c 42 75 66 66 65 72 53 69 7a 65 20  annelBufferSize 
128b0 61 6e 64 0a 54 63 6c 5f 53 65 74 43 68 61 6e 6e  and.Tcl_SetChann
128c0 65 6c 42 75 66 66 65 72 53 69 7a 65 20 74 6f 20  elBufferSize to 
128d0 73 65 74 20 61 6e 64 20 72 65 74 72 69 65 76 65  set and retrieve
128e0 20 74 68 65 20 73 69 7a 65 2c 20 69 6e 20 62 79   the size, in by
128f0 74 65 73 2c 20 66 6f 72 0a 62 75 66 66 65 72 73  tes, for.buffers
12900 20 61 6c 6c 6f 63 61 74 65 64 20 74 6f 20 73 74   allocated to st
12910 6f 72 65 20 69 6e 70 75 74 20 6f 72 20 6f 75 74  ore input or out
12920 70 75 74 20 69 6e 20 61 20 63 68 61 6e 6e 65 6c  put in a channel
12930 2e 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f 39 36 20  . (JL)..2/29/96 
12940 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
12950 64 65 64 20 6f 70 74 69 6f 6e 20 2d 62 75 66 66  ded option -buff
12960 65 72 73 69 7a 65 20 74 6f 20 54 63 6c 20 66 63  ersize to Tcl fc
12970 6f 6e 66 69 67 75 72 65 20 63 6f 6d 6d 61 6e 64  onfigure command
12980 0a 74 6f 20 61 6c 6c 6f 77 20 54 63 6c 20 73 63  .to allow Tcl sc
12990 72 69 70 74 73 20 74 6f 20 71 75 65 72 79 20 61  ripts to query a
129a0 6e 64 20 73 65 74 20 74 68 65 20 73 69 7a 65 20  nd set the size 
129b0 6f 66 20 63 68 61 6e 6e 65 6c 20 62 75 66 66 65  of channel buffe
129c0 72 73 2e 20 28 4a 4c 29 0a 0a 32 2f 32 39 2f 39  rs. (JL)..2/29/9
129d0 36 20 28 66 65 61 74 75 72 65 20 72 65 6d 6f 76  6 (feature remov
129e0 65 64 29 20 52 65 6d 6f 76 65 64 20 63 68 61 6e  ed) Removed chan
129f0 6e 65 6c 20 64 72 69 76 65 72 20 66 75 6e 63 74  nel driver funct
12a00 69 6f 6e 20 74 6f 20 73 70 65 63 69 66 79 0a 74  ion to specify.t
12a10 68 65 20 62 75 66 66 65 72 20 73 69 7a 65 20 74  he buffer size t
12a20 6f 20 75 73 65 20 77 68 65 6e 20 61 6c 6c 6f 63  o use when alloc
12a30 61 74 69 6e 67 20 61 20 62 75 66 66 65 72 2e 20  ating a buffer. 
12a40 52 65 6d 6f 76 65 64 20 74 68 65 20 43 20 74 79  Removed the C ty
12a50 70 65 64 65 66 0a 66 6f 72 20 54 63 6c 5f 44 72  pedef.for Tcl_Dr
12a60 69 76 65 72 42 75 66 66 65 72 53 69 7a 65 50 72  iverBufferSizePr
12a70 6f 63 2e 20 43 68 61 6e 6e 65 6c 73 20 61 72 65  oc. Channels are
12a80 20 6e 6f 77 20 63 72 65 61 74 65 64 20 77 69 74   now created wit
12a90 68 20 61 20 64 65 66 61 75 6c 74 0a 62 75 66 66  h a default.buff
12aa0 65 72 20 73 69 7a 65 20 6f 66 20 34 4b 2e 20 28  er size of 4K. (
12ab0 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54  JL).*** INCOMPAT
12ac0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
12ad0 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74 20   7.5b2, but not 
12ae0 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a  with Tcl 7.4 ***
12af0 0a 0a 32 2f 32 39 2f 39 36 20 28 66 65 61 74 75  ..2/29/96 (featu
12b00 72 65 20 63 68 61 6e 67 65 29 20 54 68 65 20 63  re change) The c
12b10 68 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 66 75  hannel driver fu
12b20 6e 63 74 69 6f 6e 20 66 6f 72 20 73 65 74 74 69  nction for setti
12b30 6e 67 20 62 6c 6f 63 6b 69 6e 67 0a 6d 6f 64 65  ng blocking.mode
12b40 20 6f 6e 20 74 68 65 20 64 65 76 69 63 65 20 6d   on the device m
12b50 61 79 20 6e 6f 77 20 62 65 20 4e 55 4c 4c 2e 20  ay now be NULL. 
12b60 49 66 20 74 68 65 20 67 65 6e 65 72 69 63 20 63  If the generic c
12b70 6f 64 65 20 64 65 74 65 63 74 73 20 74 68 61 74  ode detects that
12b80 20 74 68 65 0a 66 75 6e 63 74 69 6f 6e 20 69 73   the.function is
12b90 20 4e 55 4c 4c 2c 20 6f 70 65 72 61 74 69 6f 6e   NULL, operation
12ba0 73 20 74 68 61 74 20 73 65 74 20 74 68 65 20 62  s that set the b
12bb0 6c 6f 63 6b 69 6e 67 20 6d 6f 64 65 20 6f 6e 20  locking mode on 
12bc0 74 68 65 20 63 68 61 6e 6e 65 6c 0a 73 69 6d 70  the channel.simp
12bd0 6c 79 20 73 75 63 63 65 65 64 2e 20 28 4a 4c 29  ly succeed. (JL)
12be0 0a 0a 33 2f 32 2f 39 36 20 28 62 75 67 20 66 69  ..3/2/96 (bug fi
12bf0 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64 75  x) Fixed core du
12c00 6d 70 20 74 68 61 74 20 63 6f 75 6c 64 20 6f 63  mp that could oc
12c10 63 75 72 20 69 66 20 61 20 73 79 6e 74 61 78 20  cur if a syntax 
12c20 65 72 72 6f 72 0a 28 73 75 63 68 20 61 73 20 6d  error.(such as m
12c30 69 73 73 69 6e 67 20 63 6c 6f 73 65 20 70 61 72  issing close par
12c40 65 6e 29 20 6f 63 63 75 72 72 65 64 20 69 6e 20  en) occurred in 
12c50 61 6e 20 61 72 72 61 79 20 72 65 66 65 72 65 6e  an array referen
12c60 63 65 20 77 69 74 68 20 61 0a 76 65 72 79 20 6c  ce with a.very l
12c70 6f 6e 67 20 61 72 72 61 79 20 6e 61 6d 65 2e 20  ong array name. 
12c80 28 4a 4f 29 0a 0a 33 2f 34 2f 39 36 20 28 62 75  (JO)..3/4/96 (bu
12c90 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64 20 63  g fix) Removed c
12ca0 6f 64 65 20 69 6e 20 74 68 65 20 22 61 75 74 6f  ode in the "auto
12cb0 5f 6c 6f 61 64 22 20 70 72 6f 63 65 64 75 72 65  _load" procedure
12cc0 20 74 68 61 74 20 64 65 6c 65 74 65 73 0a 61 6c   that deletes.al
12cd0 6c 20 65 78 69 73 74 69 6e 67 20 61 75 74 6f 2d  l existing auto-
12ce0 6c 6f 61 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  load information
12cf0 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 22 61   whenever the "a
12d00 75 74 6f 5f 70 61 74 68 22 20 76 61 72 69 61 62  uto_path" variab
12d10 6c 65 0a 69 73 20 63 68 61 6e 67 65 64 2e 20 20  le.is changed.  
12d20 49 6e 73 74 65 61 64 2c 20 6e 65 77 20 69 6e 66  Instead, new inf
12d30 6f 72 6d 61 74 69 6f 6e 20 61 64 64 73 20 74 6f  ormation adds to
12d40 20 77 68 61 74 20 77 61 73 20 61 6c 72 65 61 64   what was alread
12d50 79 20 74 68 65 72 65 2e 0a 4f 74 68 65 72 77 69  y there..Otherwi
12d60 73 65 2c 20 63 68 61 6e 67 69 6e 67 20 74 68 65  se, changing the
12d70 20 22 61 75 74 6f 5f 70 61 74 68 22 20 76 61 72   "auto_path" var
12d80 69 61 62 6c 65 20 63 61 75 73 65 73 20 61 6c 6c  iable causes all
12d90 20 70 61 63 6b 61 67 65 2d 0a 72 65 6c 61 74 65   package-.relate
12da0 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f  d information to
12db0 20 62 65 20 6c 6f 73 74 2e 20 20 49 66 20 79 6f   be lost.  If yo
12dc0 75 20 72 65 61 6c 6c 79 20 77 61 6e 74 20 74 6f  u really want to
12dd0 20 67 65 74 20 72 69 64 20 6f 66 0a 65 78 69 73   get rid of.exis
12de0 74 69 6e 67 20 61 75 74 6f 2d 6c 6f 61 64 20 69  ting auto-load i
12df0 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 75 73 65 20  nformation, use 
12e00 61 75 74 6f 5f 72 65 73 65 74 20 62 65 66 6f 72  auto_reset befor
12e10 65 20 73 65 74 74 69 6e 67 20 61 75 74 6f 5f 70  e setting auto_p
12e20 61 74 68 2e 20 28 4a 4f 29 0a 0a 33 2f 35 2f 39  ath. (JO)..3/5/9
12e30 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  6 (new feature) 
12e40 41 64 64 65 64 20 76 65 72 73 69 6f 6e 20 73 75  Added version su
12e50 66 66 69 78 20 74 6f 20 73 68 61 72 65 64 20 6c  ffix to shared l
12e60 69 62 72 61 72 79 20 6e 61 6d 65 73 20 73 6f 20  ibrary names so 
12e70 74 68 61 74 0a 54 63 6c 20 77 69 6c 6c 20 63 6f  that.Tcl will co
12e80 6d 70 69 6c 65 20 75 6e 64 65 72 20 4e 65 74 42  mpile under NetB
12e90 53 44 20 61 6e 64 20 46 72 65 65 42 53 44 20 28  SD and FreeBSD (
12ea0 49 20 68 6f 70 65 29 2e 20 20 28 4a 4f 29 0a 0a  I hope).  (JO)..
12eb0 33 2f 36 2f 39 36 20 28 62 75 67 20 66 69 78 29  3/6/96 (bug fix)
12ec0 20 43 6c 65 61 6e 65 64 20 75 70 20 65 72 72 6f   Cleaned up erro
12ed0 72 20 6d 65 73 73 61 67 65 73 20 69 6e 20 6e 65  r messages in ne
12ee0 77 20 49 2f 4f 20 73 79 73 74 65 6d 20 74 6f 20  w I/O system to 
12ef0 63 6f 72 72 65 73 70 6f 6e 64 0a 6d 6f 72 65 20  correspond.more 
12f00 63 6c 6f 73 65 6c 79 20 74 6f 20 6f 6c 64 20 49  closely to old I
12f10 2f 4f 20 73 79 73 74 65 6d 2e 20 28 4a 4f 29 0a  /O system. (JO).
12f20 0a 33 2f 36 2f 39 36 20 28 6e 65 77 20 66 65 61  .3/6/96 (new fea
12f30 74 75 72 65 29 20 41 64 64 65 64 20 2d 6d 79 61  ture) Added -mya
12f40 64 64 72 20 61 6e 64 20 2d 6d 79 70 6f 72 74 20  ddr and -myport 
12f50 6f 70 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 73  options to the s
12f60 6f 63 6b 65 74 0a 63 6f 6d 6d 61 6e 64 2c 20 72  ocket.command, r
12f70 65 6d 6f 76 65 64 20 2d 74 63 70 20 61 6e 64 20  emoved -tcp and 
12f80 2d 2d 20 6f 70 74 69 6f 6e 73 2e 20 20 54 68 69  -- options.  Thi
12f90 73 20 6c 65 74 73 20 63 6c 69 65 6e 74 73 20 61  s lets clients a
12fa0 6e 64 20 73 65 72 76 65 72 73 0a 63 68 6f 6f 73  nd servers.choos
12fb0 65 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 69  e a particular i
12fc0 6e 74 65 72 66 61 63 65 2e 20 20 41 6c 73 6f 20  nterface.  Also 
12fd0 63 68 61 6e 67 65 64 20 74 68 65 20 64 65 66 61  changed the defa
12fe0 75 6c 74 20 73 65 72 76 65 72 20 61 64 64 72 65  ult server addre
12ff0 73 73 0a 66 72 6f 6d 20 74 68 65 20 68 6f 73 74  ss.from the host
13000 6e 61 6d 65 20 74 6f 20 49 4e 41 44 44 52 5f 41  name to INADDR_A
13010 4e 59 2e 20 20 54 68 65 20 73 65 72 76 65 72 20  NY.  The server 
13020 61 63 63 65 70 74 20 63 61 6c 6c 62 61 63 6b 20  accept callback 
13030 6e 6f 77 20 67 65 74 73 0a 70 61 73 73 65 64 20  now gets.passed 
13040 74 68 65 20 63 6c 69 65 6e 74 27 73 20 70 6f 72  the client's por
13050 74 20 61 73 20 77 65 6c 6c 20 61 73 20 49 50 20  t as well as IP 
13060 61 64 64 72 65 73 73 2e 20 20 54 68 65 20 43 20  address.  The C 
13070 69 6e 74 65 72 66 61 63 65 73 20 66 6f 72 0a 54  interfaces for.T
13080 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74  cl_OpenTcpClient
13090 20 61 6e 64 20 54 63 6c 5f 4f 70 65 6e 54 63 70   and Tcl_OpenTcp
130a0 53 65 72 76 65 72 20 68 61 76 65 20 63 68 61 6e  Server have chan
130b0 67 65 64 20 74 6f 20 73 75 70 70 6f 72 74 20 74  ged to support t
130c0 68 65 0a 61 62 6f 76 65 20 63 68 61 6e 67 65 73  he.above changes
130d0 2e 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e  . (BW).*** POTEN
130e0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
130f0 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 37 2e  LITY with Tcl 7.
13100 35 62 32 2c 20 62 75 74 20 6e 6f 74 20 77 69 74  5b2, but not wit
13110 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a 0a 0a 33  h Tcl 7.4 ***..3
13120 2f 36 2f 39 36 20 28 63 68 61 6e 67 65 64 20 66  /6/96 (changed f
13130 65 61 74 75 72 65 29 20 54 68 65 20 6c 69 62 72  eature) The libr
13140 61 72 79 20 66 75 6e 63 74 69 6f 6e 20 61 75 74  ary function aut
13150 6f 5f 6d 6b 69 6e 64 65 78 20 77 69 6c 6c 20 6e  o_mkindex will n
13160 6f 77 0a 64 65 66 61 75 6c 74 20 74 6f 20 75 73  ow.default to us
13170 69 6e 67 20 74 68 65 20 70 61 74 74 65 72 6e 20  ing the pattern 
13180 22 2a 2e 74 63 6c 22 20 69 66 20 6e 6f 20 70 61  "*.tcl" if no pa
13190 74 74 65 72 6e 20 69 73 20 67 69 76 65 6e 2e 20  ttern is given. 
131a0 28 52 4a 29 0a 0a 33 2f 36 2f 39 36 20 28 62 75  (RJ)..3/6/96 (bu
131b0 67 20 66 69 78 29 20 54 68 65 20 73 6f 63 6b 65  g fix) The socke
131c0 74 20 63 68 61 6e 6e 65 6c 20 63 6f 64 65 20 66  t channel code f
131d0 6f 72 20 74 68 65 20 4d 61 63 69 6e 74 6f 73 68  or the Macintosh
131e0 20 68 61 73 20 62 65 65 6e 0a 72 65 77 72 69 74   has been.rewrit
131f0 74 65 6e 20 74 6f 20 75 73 65 20 6e 61 74 69 76  ten to use nativ
13200 65 20 4d 61 63 54 63 70 2e 20 20 28 52 4a 29 0a  e MacTcp.  (RJ).
13210 0a 33 2f 37 2f 39 36 20 28 6e 65 77 20 66 65 61  .3/7/96 (new fea
13220 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f  ture) Added Tcl_
13230 53 65 74 53 74 64 43 68 61 6e 6e 65 6c 20 61 6e  SetStdChannel an
13240 64 20 54 63 6c 5f 47 65 74 53 74 64 43 68 61 6e  d Tcl_GetStdChan
13250 6e 65 6c 0a 69 6e 74 65 72 66 61 63 65 73 20 74  nel.interfaces t
13260 6f 20 61 6c 6c 6f 77 20 61 70 70 6c 69 63 61 74  o allow applicat
13270 69 6f 6e 73 20 74 6f 20 65 78 70 6c 69 63 69 74  ions to explicit
13280 6c 79 20 73 65 74 20 61 6e 64 20 67 65 74 20 74  ly set and get t
13290 68 65 20 67 6c 6f 62 61 6c 0a 73 74 61 6e 64 61  he global.standa
132a0 72 64 20 63 68 61 6e 6e 65 6c 73 2e 20 28 53 53  rd channels. (SS
132b0 29 0a 0a 33 2f 37 2f 39 36 20 28 62 75 67 20 66  )..3/7/96 (bug f
132c0 69 78 29 20 54 63 6c 20 64 69 64 20 63 6c 6f 73  ix) Tcl did clos
132d0 65 20 6e 6f 74 20 74 68 65 20 66 69 6c 65 20 64  e not the file d
132e0 65 73 63 72 69 70 74 6f 72 73 20 61 73 73 6f 63  escriptors assoc
132f0 69 61 74 65 64 0a 77 69 74 68 20 22 73 74 64 6f  iated.with "stdo
13300 75 74 22 2c 20 65 74 63 2e 20 77 68 65 6e 20 74  ut", etc. when t
13310 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67  he corresponding
13320 20 63 68 61 6e 6e 65 6c 73 20 77 65 72 65 20 63   channels were c
13330 6c 6f 73 65 64 2e 20 20 28 53 53 29 0a 0a 33 2f  losed.  (SS)..3/
13340 37 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 52  7/96 (bug fix) R
13350 65 77 6f 72 6b 65 64 20 73 68 61 72 65 64 20 6c  eworked shared l
13360 69 62 72 61 72 79 20 61 6e 64 20 64 79 6e 61 6d  ibrary and dynam
13370 69 63 20 6c 6f 61 64 69 6e 67 20 73 74 75 66 66  ic loading stuff
13380 20 74 6f 0a 74 72 79 20 74 6f 20 67 65 74 20 69   to.try to get i
13390 74 20 77 6f 72 6b 69 6e 67 20 75 6e 64 65 72 20  t working under 
133a0 41 49 58 2e 20 20 41 64 64 65 64 20 6e 65 77 20  AIX.  Added new 
133b0 40 53 48 4c 49 42 5f 4c 44 5f 4c 49 42 53 40 20  @[email protected] 
133c0 61 75 74 6f 63 6f 6e 66 0a 73 79 6d 62 6f 6c 20  autoconf.symbol 
133d0 61 73 20 70 61 72 74 20 6f 66 20 74 68 69 73 2e  as part of this.
133e0 20 20 41 49 58 20 70 72 6f 62 61 62 6c 79 20 64    AIX probably d
133f0 6f 65 73 6e 27 74 20 77 6f 72 6b 20 79 65 74 2c  oesn't work yet,
13400 20 62 75 74 20 69 74 20 73 68 6f 75 6c 64 0a 62   but it should.b
13410 65 20 61 20 6c 6f 74 20 63 6c 6f 73 65 72 2e 20  e a lot closer. 
13420 28 4a 4f 29 0a 0a 33 2f 37 2f 39 36 20 28 66 65  (JO)..3/7/96 (fe
13430 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64  ature change) Ad
13440 64 65 64 20 54 63 6c 5f 43 68 61 6e 6e 65 6c 50  ded Tcl_ChannelP
13450 72 6f 63 20 74 79 70 65 64 65 66 20 61 6e 64 20  roc typedef and 
13460 63 68 61 6e 67 65 64 20 74 68 65 0a 73 69 67 6e  changed the.sign
13470 61 74 75 72 65 20 6f 66 20 54 63 6c 5f 43 72 65  ature of Tcl_Cre
13480 61 74 65 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65  ateChannelHandle
13490 72 20 61 6e 64 20 54 63 6c 5f 44 65 6c 65 74 65  r and Tcl_Delete
134a0 43 68 61 6e 6e 65 6c 48 61 6e 64 6c 65 72 20 74  ChannelHandler t
134b0 6f 20 74 61 6b 65 0a 54 63 6c 5f 43 68 61 6e 6e  o take.Tcl_Chann
134c0 65 6c 50 72 6f 63 20 61 72 67 75 6d 65 6e 74 73  elProc arguments
134d0 20 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f   instead of Tcl_
134e0 46 69 6c 65 50 72 6f 63 20 61 72 67 75 6d 65 6e  FileProc argumen
134f0 74 73 2e 20 54 68 69 73 20 63 68 61 6e 67 65 0a  ts. This change.
13500 73 68 6f 75 6c 64 20 6e 6f 74 20 61 66 66 65 63  should not affec
13510 74 20 61 6e 79 20 63 6f 64 65 20 6f 75 74 73 69  t any code outsi
13520 64 65 20 54 63 6c 20 62 65 63 61 75 73 65 20 74  de Tcl because t
13530 68 65 20 73 69 67 6e 61 74 75 72 65 73 20 6f 66  he signatures of
13540 0a 54 63 6c 5f 43 68 61 6e 6e 65 6c 50 72 6f 63  .Tcl_ChannelProc
13550 20 61 6e 64 20 54 63 6c 5f 46 69 6c 65 50 72 6f   and Tcl_FilePro
13560 63 20 61 72 65 20 63 6f 6d 70 61 74 69 62 6c 65  c are compatible
13570 2e 20 28 4a 4c 29 0a 0a 33 2f 37 2f 39 36 20 28  . (JL)..3/7/96 (
13580 41 50 49 20 63 68 61 6e 67 65 29 20 4d 6f 64 69  API change) Modi
13590 66 69 65 64 20 73 69 67 6e 61 74 75 72 65 20 6f  fied signature o
135a0 66 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c  f Tcl_GetChannel
135b0 4f 70 74 69 6f 6e 20 74 6f 20 72 65 74 75 72 6e  Option to return
135c0 0a 61 6e 20 69 6e 74 20 69 6e 73 74 65 61 64 20  .an int instead 
135d0 6f 66 20 63 68 61 72 20 2a 2c 20 61 6e 64 20 74  of char *, and t
135e0 6f 20 74 61 6b 65 20 61 20 54 63 6c 5f 44 53 74  o take a Tcl_DSt
135f0 72 69 6e 67 20 2a 20 61 72 67 75 6d 65 6e 74 2e  ring * argument.
13600 20 4d 6f 64 69 66 69 65 64 0a 74 68 65 20 69 6d   Modified.the im
13610 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 73 6f 20  plementation so 
13620 74 68 61 74 20 74 68 65 20 6f 70 74 69 6f 6e 20  that the option 
13630 6e 61 6d 65 20 63 61 6e 20 62 65 20 4e 55 4c 4c  name can be NULL
13640 2c 20 74 6f 20 6d 65 61 6e 20 74 68 61 74 20 74  , to mean that t
13650 68 65 0a 63 61 6c 6c 20 73 68 6f 75 6c 64 20 72  he.call should r
13660 65 74 72 69 65 76 65 20 61 20 6c 69 73 74 20 6f  etrieve a list o
13670 66 20 61 6c 74 65 72 6e 61 74 69 6e 67 20 6f 70  f alternating op
13680 74 69 6f 6e 20 6e 61 6d 65 73 20 61 6e 64 20 76  tion names and v
13690 61 6c 75 65 73 2e 20 28 4a 4c 29 0a 2a 2a 2a 20  alues. (JL).*** 
136a0 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
136b0 77 69 74 68 20 54 63 6c 20 37 2e 35 62 32 2c 20  with Tcl 7.5b2, 
136c0 62 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c  but not with Tcl
136d0 20 37 2e 34 20 2a 2a 2a 0a 0a 33 2f 37 2f 39 36   7.4 ***..3/7/96
136e0 20 28 41 50 49 20 63 68 61 6e 67 65 29 20 41 64   (API change) Ad
136f0 64 65 64 20 54 63 6c 5f 44 72 69 76 65 72 53 65  ded Tcl_DriverSe
13700 74 4f 70 74 69 6f 6e 50 72 6f 63 2c 20 54 63 6c  tOptionProc, Tcl
13710 5f 44 72 69 76 65 72 47 65 74 4f 70 74 69 6f 6e  _DriverGetOption
13720 50 72 6f 63 0a 74 79 70 65 64 65 66 73 2c 20 61  Proc.typedefs, a
13730 64 64 65 64 20 74 77 6f 20 73 6c 6f 74 73 20 73  dded two slots s
13740 65 74 4f 70 74 69 6f 6e 50 72 6f 63 20 61 6e 64  etOptionProc and
13750 20 67 65 74 4f 70 74 69 6f 6e 50 72 6f 63 20 74   getOptionProc t
13760 6f 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a 74 79  o the channel.ty
13770 70 65 20 73 74 72 75 63 74 75 72 65 2e 20 54 68  pe structure. Th
13780 65 73 65 20 6d 61 79 20 62 65 20 4e 55 4c 4c 20  ese may be NULL 
13790 74 6f 20 69 6e 64 69 63 61 74 65 20 74 68 61 74  to indicate that
137a0 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 74 79 70   the channel typ
137b0 65 20 64 6f 65 73 0a 6e 6f 74 20 73 75 70 70 6f  e does.not suppo
137c0 72 74 20 61 6e 79 20 6f 70 74 69 6f 6e 73 2e 20  rt any options. 
137d0 28 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41  (JL).*** INCOMPA
137e0 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
137f0 6c 20 37 2e 35 62 32 2c 20 62 75 74 20 6e 6f 74  l 7.5b2, but not
13800 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a   with Tcl 7.4 **
13810 2a 0a 0a 33 2f 37 2f 39 36 20 28 66 65 61 74 75  *..3/7/96 (featu
13820 72 65 20 63 68 61 6e 67 65 29 20 73 74 64 69 6e  re change) stdin
13830 2c 20 73 74 64 6f 75 74 20 61 6e 64 20 73 74 64  , stdout and std
13840 65 72 72 20 63 61 6e 20 6e 6f 77 20 62 65 20 70  err can now be p
13850 75 74 20 69 6e 74 6f 0a 6e 6f 6e 62 6c 6f 63 6b  ut into.nonblock
13860 69 6e 67 20 6d 6f 64 65 2e 20 28 4a 4c 29 0a 0a  ing mode. (JL)..
13870 33 2f 38 2f 39 36 20 28 66 65 61 74 75 72 65 20  3/8/96 (feature 
13880 63 68 61 6e 67 65 29 20 45 6c 69 6d 69 6e 61 74  change) Eliminat
13890 65 64 20 64 65 70 65 6e 64 65 6e 63 65 20 6f 6e  ed dependence on
138a0 20 74 68 65 20 72 65 67 69 73 74 72 79 20 66 6f   the registry fo
138b0 72 0a 66 69 6e 64 69 6e 67 20 74 68 65 20 54 63  r.finding the Tc
138c0 6c 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e  l library files.
138d0 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d   (SS)..---------
138e0 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
138f0 64 20 37 2e 35 62 33 2c 20 33 2f 38 2f 39 36 20  d 7.5b3, 3/8/96 
13900 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
13910 2d 2d 2d 2d 2d 2d 2d 0a 0a 33 2f 31 32 2f 39 36  -------..3/12/96
13920 20 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76   (feature improv
13930 65 6d 65 6e 74 29 20 4d 6f 64 69 66 69 65 64 20  ement) Modified 
13940 73 74 61 72 74 75 70 20 73 63 72 69 70 74 20 74  startup script t
13950 6f 20 6c 6f 6f 6b 20 69 6e 20 73 65 76 65 72 61  o look in severa
13960 6c 0a 64 69 66 66 65 72 65 6e 74 20 70 6c 61 63  l.different plac
13970 65 73 20 66 6f 72 20 74 68 65 20 54 63 6c 20 6c  es for the Tcl l
13980 69 62 72 61 72 79 20 64 69 72 65 63 74 6f 72 79  ibrary directory
13990 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 61  .  This should a
139a0 6c 6c 6f 77 20 54 63 6c 0a 74 6f 20 66 69 6e 64  llow Tcl.to find
139b0 20 74 68 65 20 6c 69 62 72 61 72 69 65 73 20 75   the libraries u
139c0 6e 64 65 72 20 61 6c 6c 20 62 75 74 20 74 68 65  nder all but the
139d0 20 77 65 69 72 64 65 73 74 20 63 6f 6e 64 69 74   weirdest condit
139e0 69 6f 6e 73 2c 20 65 76 65 6e 20 77 69 74 68 6f  ions, even witho
139f0 75 74 0a 74 68 65 20 54 43 4c 5f 4c 49 42 52 41  ut.the TCL_LIBRA
13a00 52 59 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76  RY environment v
13a10 61 72 69 61 62 6c 65 20 62 65 69 6e 67 20 73 65  ariable being se
13a20 74 2e 20 28 4a 4f 29 0a 0a 33 2f 31 33 2f 39 36  t. (JO)..3/13/96
13a30 20 28 62 75 67 20 66 69 78 29 20 45 6c 69 6d 69   (bug fix) Elimi
13a40 6e 61 74 65 64 20 75 73 65 20 6f 66 20 74 68 65  nated use of the
13a50 20 22 6c 69 6e 67 65 72 22 20 6f 70 74 69 6f 6e   "linger" option
13a60 20 66 72 6f 6d 20 74 68 65 20 57 69 6e 64 6f 77   from the Window
13a70 73 0a 73 6f 63 6b 65 74 20 69 6d 70 6c 65 6d 65  s.socket impleme
13a80 6e 74 61 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a 33  ntation. (JL)..3
13a90 2f 31 33 2f 39 36 20 28 6e 65 77 20 66 65 61 74  /13/96 (new feat
13aa0 75 72 65 29 20 41 64 64 65 64 20 2d 70 65 65 72  ure) Added -peer
13ab0 6e 61 6d 65 20 61 6e 64 20 2d 73 6f 63 6b 6e 61  name and -sockna
13ac0 6d 65 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 66  me options for f
13ad0 63 6f 6e 66 69 67 75 72 65 0a 66 6f 72 20 73 6f  configure.for so
13ae0 63 6b 65 74 20 63 68 61 6e 6e 65 6c 73 2e 20 43  cket channels. C
13af0 6f 64 65 20 63 6f 6e 74 72 69 62 75 74 65 64 20  ode contributed 
13b00 62 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f 66  by John Haxby of
13b10 20 48 50 2e 20 28 4a 4c 29 0a 0a 33 2f 31 33 2f   HP. (JL)..3/13/
13b20 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
13b30 65 64 20 70 61 6e 69 63 20 61 6e 64 20 63 6f 72  ed panic and cor
13b40 65 20 64 75 6d 70 20 74 68 61 74 20 77 6f 75 6c  e dump that woul
13b50 64 20 6f 63 63 75 72 20 69 66 20 74 68 65 20 61  d occur if the a
13b60 63 63 65 70 74 0a 63 61 6c 6c 62 61 63 6b 20 73  ccept.callback s
13b70 63 72 69 70 74 20 6f 6e 20 61 20 73 65 72 76 65  cript on a serve
13b80 72 20 73 6f 63 6b 65 74 20 65 6e 63 6f 75 6e 74  r socket encount
13b90 65 72 65 64 20 61 6e 20 65 72 72 6f 72 2e 20 28  ered an error. (
13ba0 4a 4c 29 0a 0a 33 2f 31 33 2f 39 36 20 28 66 65  JL)..3/13/96 (fe
13bb0 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 41 64  ature change) Ad
13bc0 64 65 64 20 2d 61 73 79 6e 63 20 6f 70 74 69 6f  ded -async optio
13bd0 6e 20 74 6f 20 74 68 65 20 54 63 6c 20 73 6f 63  n to the Tcl soc
13be0 6b 65 74 20 63 6f 6d 6d 61 6e 64 2e 0a 49 66 20  ket command..If 
13bf0 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 63  the command is c
13c00 72 65 61 74 69 6e 67 20 61 20 63 6c 69 65 6e 74  reating a client
13c10 20 73 6f 63 6b 65 74 20 61 6e 64 20 74 68 65 20   socket and the 
13c20 66 6c 61 67 20 69 73 20 70 72 65 73 65 6e 74 2c  flag is present,
13c30 20 74 68 65 0a 63 6c 69 65 6e 74 20 69 73 20 63   the.client is c
13c40 6f 6e 6e 65 63 74 65 64 20 61 73 79 6e 63 68 72  onnected asynchr
13c50 6f 6e 6f 75 73 6c 79 2e 20 49 66 20 74 68 65 20  onously. If the 
13c60 6f 70 74 69 6f 6e 20 69 73 20 61 62 73 65 6e 74  option is absent
13c70 20 28 74 68 65 20 64 65 66 61 75 6c 74 29 2c 0a   (the default),.
13c80 74 68 65 20 63 6c 69 65 6e 74 20 73 6f 63 6b 65  the client socke
13c90 74 20 69 73 20 63 6f 6e 6e 65 63 74 65 64 20 73  t is connected s
13ca0 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61 6e  ynchronously, an
13cb0 64 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 72 65  d the command re
13cc0 74 75 72 6e 73 20 6f 6e 6c 79 0a 77 68 65 6e 20  turns only.when 
13cd0 74 68 65 20 63 6f 6e 6e 65 63 74 69 6f 6e 20 68  the connection h
13ce0 61 73 20 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65  as been complete
13cf0 64 20 6f 72 20 66 61 69 6c 65 64 2e 20 54 68 69  d or failed. Thi
13d00 73 20 63 68 61 6e 67 65 20 77 61 73 20 73 75 67  s change was sug
13d10 67 65 73 74 65 64 0a 62 79 20 4d 61 72 6b 20 44  gested.by Mark D
13d20 69 65 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 33  iekhans. (JL)..3
13d30 2f 31 33 2f 39 36 20 28 66 65 61 74 75 72 65 20  /13/96 (feature 
13d40 63 68 61 6e 67 65 29 20 4d 6f 64 69 66 69 65 64  change) Modified
13d50 20 74 68 65 20 73 69 67 6e 61 74 75 72 65 20 6f   the signature o
13d60 66 20 54 63 6c 5f 4f 70 65 6e 54 63 70 43 6c 69  f Tcl_OpenTcpCli
13d70 65 6e 74 20 74 6f 0a 74 61 6b 65 20 61 6e 20 61  ent to.take an a
13d80 64 64 69 74 69 6f 6e 61 6c 20 69 6e 74 20 61 72  dditional int ar
13d90 67 75 6d 65 6e 74 2c 20 61 73 79 6e 63 2e 20 49  gument, async. I
13da0 66 20 6e 6f 6e 7a 65 72 6f 2c 20 74 68 65 20 63  f nonzero, the c
13db0 6c 69 65 6e 74 20 69 73 20 63 6f 6e 6e 65 63 74  lient is connect
13dc0 65 64 0a 74 6f 20 74 68 65 20 73 65 72 76 65 72  ed.to the server
13dd0 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2e   asynchronously.
13de0 20 49 66 20 74 68 65 20 76 61 6c 75 65 20 69 73   If the value is
13df0 20 7a 65 72 6f 2c 20 74 68 65 20 63 6f 6e 6e 65   zero, the conne
13e00 63 74 69 6f 6e 20 69 73 20 6d 61 64 65 0a 73 79  ction is made.sy
13e10 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 61 6e 64  nchronously, and
13e20 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 54 63 6c   the call to Tcl
13e30 5f 4f 70 65 6e 54 63 70 43 6c 69 65 6e 74 20 72  _OpenTcpClient r
13e40 65 74 75 72 6e 73 20 6f 6e 6c 79 20 77 68 65 6e  eturns only when
13e50 20 74 68 65 0a 63 6f 6e 6e 65 63 74 69 6f 6e 20   the.connection 
13e60 66 61 69 6c 73 20 6f 72 20 73 75 63 63 65 65 64  fails or succeed
13e70 73 2e 20 54 68 69 73 20 63 68 61 6e 67 65 20 77  s. This change w
13e80 61 73 20 73 75 67 67 65 73 74 65 64 20 62 79 20  as suggested by 
13e90 4d 61 72 6b 20 44 69 65 6b 68 61 6e 73 2e 20 28  Mark Diekhans. (
13ea0 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54  JL).*** INCOMPAT
13eb0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
13ec0 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74 20   7.5b3, but not 
13ed0 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a  with Tcl 7.4 ***
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 22 74 63 6c 73 68 20 62 6f 67 75 73  ix) "tclsh bogus
13f00 5f 66 69 6c 65 5f 6e 61 6d 65 22 20 64 69 64 6e  _file_name" didn
13f10 27 74 20 70 72 69 6e 74 20 61 6e 20 65 72 72 6f  't print an erro
13f20 72 20 6d 65 73 73 61 67 65 2e 20 28 4a 4f 29 0a  r message. (JO).
13f30 0a 33 2f 31 34 2f 39 36 20 28 62 75 67 20 66 69  .3/14/96 (bug fi
13f40 78 29 20 41 64 64 65 64 20 6e 65 77 20 70 72 6f  x) Added new pro
13f50 63 65 64 75 72 65 73 20 74 6f 20 74 63 6c 43 6b  cedures to tclCk
13f60 61 6c 6c 6f 63 2e 63 20 73 6f 20 74 68 61 74 20  alloc.c so that 
13f70 6c 69 62 72 61 72 69 65 73 0a 61 6e 64 20 61 70  libraries.and ap
13f80 70 6c 69 63 61 74 69 6f 6e 73 20 63 61 6e 20 62  plications can b
13f90 65 20 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 20  e compiled with 
13fa0 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 20 65 76  TCL_MEM_DEBUG ev
13fb0 65 6e 20 69 66 20 54 63 6c 20 69 73 6e 27 74 0a  en if Tcl isn't.
13fc0 28 68 6f 77 65 76 65 72 2c 20 74 68 65 20 63 6f  (however, the co
13fd0 6e 76 65 72 73 65 20 69 73 20 73 74 69 6c 6c 20  nverse is still 
13fe0 6e 6f 74 20 74 72 75 65 29 2e 20 20 50 61 74 63  not true).  Patc
13ff0 68 65 73 20 70 72 6f 76 69 64 65 64 20 62 79 20  hes provided by 
14000 4a 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e 20 28 4a  Jan.Nijtmans. (J
14010 4f 29 0a 0a 33 2f 31 35 2f 39 36 20 28 62 75 67  O)..3/15/96 (bug
14020 20 66 69 78 29 20 4d 61 72 6b 65 64 20 73 74 61   fix) Marked sta
14030 6e 64 61 72 64 20 49 4f 20 68 61 6e 64 6c 65 73  ndard IO handles
14040 20 6f 66 20 61 20 70 72 6f 63 65 73 73 20 61 73   of a process as
14050 20 63 6c 6f 73 65 2d 6f 6e 2d 65 78 65 63 0a 74   close-on-exec.t
14060 6f 20 66 69 78 20 62 75 67 20 69 6e 20 55 6c 74  o fix bug in Ult
14070 72 69 78 20 77 68 65 72 65 20 65 78 65 63 20 77  rix where exec w
14080 61 73 20 6e 6f 74 20 73 68 61 72 69 6e 67 20 73  as not sharing s
14090 74 61 6e 64 61 72 64 20 49 4f 20 68 61 6e 64 6c  tandard IO handl
140a0 65 73 20 77 69 74 68 0a 73 75 62 70 72 6f 63 65  es with.subproce
140b0 73 73 65 73 2e 20 46 69 78 20 73 75 67 67 65 73  sses. Fix sugges
140c0 74 65 64 20 62 79 20 4d 61 72 6b 20 44 69 65 6b  ted by Mark Diek
140d0 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 33 2f 31 35  hans. (JL)..3/15
140e0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
140f0 78 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73  xed asynchronous
14100 20 63 6c 6f 73 65 20 6d 65 63 68 61 6e 69 73 6d   close mechanism
14110 20 73 6f 20 74 68 61 74 20 69 74 20 63 6c 6f 73   so that it clos
14120 65 73 20 74 68 65 0a 63 68 61 6e 6e 65 6c 20 69  es the.channel i
14130 6e 73 74 65 61 64 20 6f 66 20 6c 65 61 6b 69 6e  nstead of leakin
14140 67 20 73 79 73 74 65 6d 20 72 65 73 6f 75 72 63  g system resourc
14150 65 73 2e 20 54 68 65 20 6d 61 6e 69 66 65 73 74  es. The manifest
14160 61 74 69 6f 6e 20 77 61 73 20 74 68 61 74 20 54  ation was that T
14170 63 6c 0a 77 6f 75 6c 64 20 65 76 65 6e 74 75 61  cl.would eventua
14180 6c 6c 79 20 72 75 6e 20 6f 75 74 20 6f 66 20 66  lly run out of f
14190 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73 20  ile descriptors 
141a0 69 66 20 69 74 20 77 61 73 20 68 61 6e 64 6c 69  if it was handli
141b0 6e 67 20 61 20 6c 61 72 67 65 0a 6e 75 6d 62 65  ng a large.numbe
141c0 72 20 6f 66 20 6e 6f 6e 62 6c 6f 63 6b 69 6e 67  r of nonblocking
141d0 20 73 6f 63 6b 65 74 73 20 6f 72 20 70 69 70 65   sockets or pipe
141e0 73 20 77 69 74 68 20 68 69 67 68 20 63 6f 6e 67  s with high cong
141f0 65 73 74 69 6f 6e 2e 20 28 4a 4c 29 0a 0a 33 2f  estion. (JL)..3/
14200 31 35 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  15/96 (bug fix) 
14210 46 69 78 65 64 20 74 65 73 74 73 20 73 6f 20 74  Fixed tests so t
14220 68 61 74 20 74 68 65 79 20 6e 6f 20 6c 6f 6e 67  hat they no long
14230 65 72 20 6c 65 61 6b 20 66 69 6c 65 20 64 65 73  er leak file des
14240 63 72 69 70 74 6f 72 73 2e 0a 54 68 65 20 6d 61  criptors..The ma
14250 6e 69 66 65 73 74 61 74 69 6f 6e 20 77 61 73 20  nifestation was 
14260 74 68 61 74 20 54 63 6c 20 77 6f 75 6c 64 20 65  that Tcl would e
14270 76 65 6e 74 75 61 6c 6c 79 20 72 75 6e 20 6f 75  ventually run ou
14280 74 20 6f 66 20 66 69 6c 65 20 64 65 73 63 72 69  t of file descri
14290 70 74 6f 72 73 0a 69 66 20 74 68 65 20 74 65 73  ptors.if the tes
142a0 74 73 20 77 65 72 65 20 72 65 72 75 6e 20 6d 61  ts were rerun ma
142b0 6e 79 20 74 69 6d 65 73 20 28 3e 20 61 20 68 75  ny times (> a hu
142c0 6e 64 72 65 64 20 74 69 6d 65 73 20 6f 6e 20 53  ndred times on S
142d0 6f 6c 61 72 69 73 29 2e 20 28 4a 4c 29 0a 0a 33  olaris). (JL)..3
142e0 2f 31 35 2f 39 36 20 28 62 75 67 20 66 69 78 29  /15/96 (bug fix)
142f0 20 46 69 78 65 64 20 63 68 61 6e 6e 65 6c 20 63   Fixed channel c
14300 72 65 61 74 69 6f 6e 20 63 6f 64 65 20 73 6f 20  reation code so 
14310 74 68 61 74 20 69 74 20 6e 65 76 65 72 20 63 72  that it never cr
14320 65 61 74 65 73 0a 75 6e 6e 61 6d 65 64 20 63 68  eates.unnamed ch
14330 61 6e 6e 65 6c 73 2e 20 54 68 69 73 20 77 6f 75  annels. This wou
14340 6c 64 20 63 61 75 73 65 20 61 20 70 61 6e 69 63  ld cause a panic
14350 20 61 6e 64 20 63 6f 72 65 20 64 75 6d 70 20 77   and core dump w
14360 68 65 6e 20 74 68 65 20 63 68 61 6e 6e 65 6c 0a  hen the channel.
14370 77 61 73 20 63 6c 6f 73 65 64 2e 20 28 4a 4c 29  was closed. (JL)
14380 0a 0a 33 2f 31 36 2f 39 36 20 28 62 75 67 20 66  ..3/16/96 (bug f
14390 69 78 65 73 29 20 4d 61 64 65 20 6c 6f 74 73 20  ixes) Made lots 
143a0 6f 66 20 63 68 61 6e 67 65 73 20 69 6e 20 63 6f  of changes in co
143b0 6e 66 69 67 75 72 61 74 69 6f 6e 20 73 74 75 66  nfiguration stuf
143c0 66 20 74 6f 20 67 65 74 0a 54 63 6c 20 77 6f 72  f to get.Tcl wor
143d0 6b 69 6e 67 20 75 6e 64 65 72 20 41 49 58 20 28  king under AIX (
143e0 66 69 6e 61 6c 6c 79 29 2e 20 20 54 63 6c 20 73  finally).  Tcl s
143f0 68 6f 75 6c 64 20 6e 6f 77 20 73 75 70 70 6f 72  hould now suppor
14400 74 20 74 68 65 20 22 6c 6f 61 64 22 0a 63 6f 6d  t the "load".com
14410 6d 61 6e 64 20 75 6e 64 65 72 20 41 49 58 20 61  mand under AIX a
14420 6e 64 20 73 68 6f 75 6c 64 20 77 6f 72 6b 20 65  nd should work e
14430 69 74 68 65 72 20 77 69 74 68 20 6f 72 20 77 69  ither with or wi
14440 74 68 6f 75 74 20 73 68 61 72 65 64 0a 6c 69 62  thout shared.lib
14450 72 61 72 69 65 73 20 66 6f 72 20 54 63 6c 20 61  raries for Tcl a
14460 6e 64 20 54 6b 2e 20 28 4a 4f 29 0a 0a 33 2f 32  nd Tk. (JO)..3/2
14470 31 2f 39 36 20 28 63 6f 6e 66 69 67 75 72 61 74  1/96 (configurat
14480 69 6f 6e 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29  ion improvement)
14490 20 43 68 61 6e 67 65 64 20 63 6f 6e 66 69 67 75   Changed configu
144a0 72 65 20 73 63 72 69 70 74 20 73 6f 20 69 74 0a  re script so it.
144b0 64 6f 65 73 6e 27 74 20 75 73 65 20 76 65 72 73  doesn't use vers
144c0 69 6f 6e 20 6e 75 6d 62 65 72 73 20 28 61 73 20  ion numbers (as 
144d0 69 6e 20 2d 6c 74 63 6c 37 2e 35 20 61 6e 64 20  in -ltcl7.5 and 
144e0 6c 69 62 74 63 6c 37 2e 35 2e 73 6f 29 20 75 6e  libtcl7.5.so) un
144f0 64 65 72 0a 53 75 6e 4f 53 20 34 2e 31 2c 20 77  der.SunOS 4.1, w
14500 68 65 72 65 20 74 68 65 79 20 64 6f 6e 27 74 20  here they don't 
14510 77 6f 72 6b 20 61 6e 79 77 61 79 2e 20 20 28 4a  work anyway.  (J
14520 4f 29 0a 0a 33 2f 32 32 2f 39 36 20 28 6e 65 77  O)..3/22/96 (new
14530 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
14540 43 20 41 50 49 20 54 63 6c 5f 49 6e 74 65 72 70  C API Tcl_Interp
14550 44 65 6c 65 74 65 64 20 74 68 61 74 20 61 6c 6c  Deleted that all
14560 6f 77 73 20 65 78 74 65 6e 73 69 6f 6e 0a 77 72  ows extension.wr
14570 69 74 65 72 73 20 74 6f 20 64 69 73 63 6f 76 65  iters to discove
14580 72 20 77 68 65 6e 20 61 6e 20 69 6e 74 65 72 70  r when an interp
14590 72 65 74 65 72 20 69 73 20 62 65 69 6e 67 20 64  reter is being d
145a0 65 6c 65 74 65 64 2e 20 28 4a 4c 29 0a 0a 33 2f  eleted. (JL)..3/
145b0 32 32 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  22/96 (bug fix) 
145c0 54 68 65 20 73 74 61 6e 64 61 72 64 20 49 4f 20  The standard IO 
145d0 63 68 61 6e 6e 65 6c 73 20 61 72 65 20 6e 6f 77  channels are now
145e0 20 61 64 64 65 64 20 74 6f 20 65 61 63 68 0a 74   added to each.t
145f0 72 75 73 74 65 64 20 69 6e 74 65 72 70 72 65 74  rusted interpret
14600 65 72 20 61 73 20 73 6f 6f 6e 20 61 73 20 74 68  er as soon as th
14610 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 73  e interpreter is
14620 20 63 72 65 61 74 65 64 2e 20 54 68 69 73 20 65   created. This e
14630 6e 73 75 72 65 73 0a 61 67 61 69 6e 73 74 20 74  nsures.against t
14640 68 65 20 62 75 67 20 77 68 65 72 65 20 61 20 63  he bug where a c
14650 68 69 6c 64 20 77 6f 75 6c 64 20 64 6f 20 49 4f  hild would do IO
14660 20 62 65 66 6f 72 65 20 74 68 65 20 6d 61 73 74   before the mast
14670 65 72 20 68 61 64 20 64 6f 6e 65 20 61 6e 79 2c  er had done any,
14680 0a 61 6e 64 20 74 68 65 6e 20 74 68 65 20 63 68  .and then the ch
14690 69 6c 64 20 69 73 20 64 65 73 74 72 6f 79 65 64  ild is destroyed
146a0 20 2d 20 74 68 65 20 73 74 61 6e 64 61 72 64 20   - the standard 
146b0 49 4f 20 63 68 61 6e 6e 65 6c 73 20 77 6f 75 6c  IO channels woul
146c0 64 20 62 65 20 74 68 65 6e 0a 63 6c 6f 73 65 64  d be then.closed
146d0 20 61 6e 64 20 74 68 65 20 6d 61 73 74 65 72 20   and the master 
146e0 77 6f 75 6c 64 20 62 65 20 75 6e 61 62 6c 65 20  would be unable 
146f0 74 6f 20 64 6f 20 61 6e 79 20 49 4f 2e 20 28 4a  to do any IO. (J
14700 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75 67  L)..3/22/96 (bug
14710 20 66 69 78 29 20 4d 61 64 65 20 54 63 6c 20 6d   fix) Made Tcl m
14720 6f 72 65 20 72 6f 62 75 73 74 20 61 67 61 69 6e  ore robust again
14730 73 74 20 69 6e 74 65 72 70 72 65 74 65 72 20 64  st interpreter d
14740 65 6c 65 74 69 6f 6e 2c 20 62 79 0a 75 73 69 6e  eletion, by.usin
14750 67 20 54 63 6c 5f 50 72 65 73 65 72 76 65 2c 20  g Tcl_Preserve, 
14760 54 63 6c 5f 52 65 6c 65 61 73 65 20 61 6e 64 20  Tcl_Release and 
14770 54 63 6c 5f 45 76 65 6e 74 75 61 6c 6c 79 46 72  Tcl_EventuallyFr
14780 65 65 20 74 6f 20 73 70 6c 69 74 20 74 68 65 20  ee to split the 
14790 70 72 6f 63 65 73 73 0a 6f 66 20 69 6e 74 65 72  process.of inter
147a0 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e 20  preter deletion 
147b0 69 6e 74 6f 20 74 77 6f 20 64 69 73 74 69 6e 63  into two distinc
147c0 74 20 70 68 61 73 65 73 2e 20 41 6c 73 6f 20 77  t phases. Also w
147d0 65 6e 74 20 74 68 72 6f 75 67 68 20 61 6c 6c 20  ent through all 
147e0 6f 66 0a 54 63 6c 20 61 6e 64 20 61 64 64 65 64  of.Tcl and added
147f0 20 63 61 6c 6c 73 20 74 6f 20 54 63 6c 5f 50 72   calls to Tcl_Pr
14800 65 73 65 72 76 65 20 61 6e 64 20 54 63 6c 5f 44  eserve and Tcl_D
14810 65 6c 65 74 65 20 77 68 65 72 65 20 6e 65 65 64  elete where need
14820 65 64 2e 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39  ed. (JL)..3/22/9
14830 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
14840 64 20 73 65 76 65 72 61 6c 20 70 6c 61 63 65 73  d several places
14850 20 77 68 65 72 65 20 43 20 63 6f 64 65 20 77 61   where C code wa
14860 73 20 72 65 61 64 69 6e 67 20 61 6e 64 20 77 72  s reading and wr
14870 69 74 69 6e 67 0a 69 6e 74 6f 20 66 72 65 65 64  iting.into freed
14880 20 6d 65 6d 6f 72 79 2c 20 65 73 70 65 63 69 61   memory, especia
14890 6c 6c 79 20 64 75 72 69 6e 67 20 69 6e 74 65 72  lly during inter
148a0 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e 2e  preter deletion.
148b0 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28   (JL)..3/22/96 (
148c0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 76  bug fix) Fixed v
148d0 65 72 79 20 64 65 65 70 20 62 75 67 20 69 6e 20  ery deep bug in 
148e0 54 63 6c 5f 52 65 6c 65 61 73 65 20 74 68 61 74  Tcl_Release that
148f0 20 63 61 75 73 65 64 20 6d 65 6d 6f 72 79 20 74   caused memory t
14900 6f 0a 62 65 20 66 72 65 65 64 20 74 77 69 63 65  o.be freed twice
14910 20 69 66 20 74 68 65 20 72 65 6c 65 61 73 65 20   if the release 
14920 63 61 6c 6c 62 61 63 6b 20 64 69 64 20 54 63 6c  callback did Tcl
14930 5f 50 72 65 73 65 72 76 65 20 61 6e 64 20 54 63  _Preserve and Tc
14940 6c 5f 52 65 6c 65 61 73 65 20 6f 6e 0a 74 68 65  l_Release on.the
14950 20 73 61 6d 65 20 6d 65 6d 6f 72 79 20 61 73 20   same memory as 
14960 74 68 65 20 63 68 75 6e 6b 20 63 75 72 72 65 6e  the chunk curren
14970 74 6c 79 20 62 65 69 6e 67 20 66 72 65 65 64 2e  tly being freed.
14980 20 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28   (JL)..3/22/96 (
14990 62 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64  bug fix) Removed
149a0 20 73 65 76 65 72 61 6c 20 6d 65 6d 6f 72 79 20   several memory 
149b0 6c 65 61 6b 73 20 74 68 61 74 20 77 6f 75 6c 64  leaks that would
149c0 20 63 61 75 73 65 20 6d 65 6d 6f 72 79 0a 62 75   cause memory.bu
149d0 69 6c 64 75 70 20 6f 6e 20 68 61 6c 66 2d 4b 20  ildup on half-K 
149e0 63 68 75 6e 6b 73 20 69 6e 20 74 68 65 20 67 65  chunks in the ge
149f0 6e 65 72 69 63 20 49 4f 20 6c 65 76 65 6c 2e 20  neric IO level. 
14a00 28 4a 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62  (JL)..3/22/96 (b
14a10 75 67 20 66 69 78 29 20 46 69 78 65 64 20 73 65  ug fix) Fixed se
14a20 76 65 72 61 6c 20 63 6f 72 65 20 64 75 6d 70 73  veral core dumps
14a30 20 77 68 69 63 68 20 6f 63 63 75 72 72 65 64 20   which occurred 
14a40 77 68 65 6e 20 6e 65 77 0a 41 73 73 6f 63 44 61  when new.AssocDa
14a50 74 61 20 77 61 73 20 62 65 69 6e 67 20 63 72 65  ta was being cre
14a60 61 74 65 64 20 64 75 72 69 6e 67 20 74 68 65 20  ated during the 
14a70 63 6c 65 61 6e 75 70 73 20 69 6e 20 69 6e 74 65  cleanups in inte
14a80 72 70 72 65 74 65 72 20 64 65 6c 65 74 69 6f 6e  rpreter deletion
14a90 2e 0a 54 68 65 20 73 6f 6c 75 74 69 6f 6e 20 69  ..The solution i
14aa0 6d 70 6c 65 6d 65 6e 74 65 64 20 6e 6f 77 20 69  mplemented now i
14ab0 73 20 74 6f 20 6c 6f 6f 70 20 72 65 70 65 61 74  s to loop repeat
14ac0 65 64 6c 79 20 6f 76 65 72 20 74 68 65 20 41 73  edly over the As
14ad0 73 6f 63 44 61 74 61 20 75 6e 74 69 6c 0a 6e 6f  socData until.no
14ae0 6e 65 20 69 73 20 6c 65 66 74 20 74 6f 20 63 6c  ne is left to cl
14af0 65 61 6e 20 75 70 2e 20 28 4a 4c 29 0a 0a 33 2f  ean up. (JL)..3/
14b00 32 32 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  22/96 (bug fix) 
14b10 46 69 78 65 64 20 61 20 62 75 67 20 69 6e 20 65  Fixed a bug in e
14b20 76 65 6e 74 20 68 61 6e 64 6c 69 6e 67 20 77 68  vent handling wh
14b30 69 63 68 20 63 61 75 73 65 64 20 61 6e 20 69 6e  ich caused an in
14b40 66 69 6e 69 74 65 0a 6c 6f 6f 70 20 69 66 20 74  finite.loop if t
14b50 68 65 72 65 20 77 65 72 65 20 6e 6f 20 66 69 6c  here were no fil
14b60 65 73 20 62 65 69 6e 67 20 77 61 74 63 68 65 64  es being watched
14b70 20 61 6e 64 20 6e 6f 20 74 69 6d 65 72 2e 20 46   and no timer. F
14b80 69 78 20 73 75 67 67 65 73 74 65 64 20 62 79 0a  ix suggested by.
14b90 4a 61 6e 20 4e 69 6a 74 6d 61 6e 73 2e 20 28 4a  Jan Nijtmans. (J
14ba0 4c 29 0a 0a 33 2f 32 32 2f 39 36 20 28 62 75 67  L)..3/22/96 (bug
14bb0 20 66 69 78 29 20 46 69 78 65 64 20 54 63 6c 5f   fix) Fixed Tcl_
14bc0 43 72 65 61 74 65 43 6f 6d 6d 61 6e 64 2c 20 54  CreateCommand, T
14bd0 63 6c 5f 44 65 6c 65 74 65 43 6f 6d 6d 61 6e 64  cl_DeleteCommand
14be0 20 74 6f 20 62 65 20 6d 6f 72 65 0a 72 6f 62 75   to be more.robu
14bf0 73 74 20 69 66 20 74 68 65 20 69 6e 74 65 72 70  st if the interp
14c00 72 65 74 65 72 20 69 73 20 62 65 69 6e 67 20 64  reter is being d
14c10 65 6c 65 74 65 64 2e 20 41 6c 73 6f 20 66 69 78  eleted. Also fix
14c20 65 64 20 73 65 76 65 72 61 6c 20 6f 72 64 65 72  ed several order
14c30 0a 64 65 70 65 6e 64 65 6e 63 79 20 62 75 67 73  .dependency bugs
14c40 20 69 6e 20 54 63 6c 5f 44 65 6c 65 74 65 43 6f   in Tcl_DeleteCo
14c50 6d 6d 61 6e 64 20 77 68 69 63 68 20 6b 69 63 6b  mmand which kick
14c60 65 64 20 69 6e 20 77 68 65 6e 20 61 6e 20 69 6e  ed in when an in
14c70 74 65 72 70 72 65 74 65 72 0a 77 61 73 20 62 65  terpreter.was be
14c80 69 6e 67 20 64 65 6c 65 74 65 64 2e 20 28 4a 4c  ing deleted. (JL
14c90 29 0a 0a 33 2f 32 36 2f 39 36 20 28 62 75 67 20  )..3/26/96 (bug 
14ca0 66 69 78 29 20 55 70 6f 6e 20 61 20 22 73 68 6f  fix) Upon a "sho
14cb0 72 74 20 72 65 61 64 22 2c 20 74 68 65 20 67 65  rt read", the ge
14cc0 6e 65 72 69 63 20 63 6f 64 65 20 6e 6f 20 6c 6f  neric code no lo
14cd0 6e 67 65 72 20 63 61 6c 6c 73 0a 74 68 65 20 64  nger calls.the d
14ce0 72 69 76 65 72 20 66 6f 72 20 6d 6f 72 65 20 69  river for more i
14cf0 6e 70 75 74 2e 20 44 6f 69 6e 67 20 74 68 69 73  nput. Doing this
14d00 20 63 61 75 73 65 64 20 62 6c 6f 63 6b 69 6e 67   caused blocking
14d10 20 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72   on some platfor
14d20 6d 73 0a 65 76 65 6e 20 6f 6e 20 6e 6f 6e 62 6c  ms.even on nonbl
14d30 6f 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 73 2e  ocking channels.
14d40 20 42 75 67 20 61 6e 64 20 66 69 78 20 63 6f 75   Bug and fix cou
14d50 72 74 65 73 79 20 4d 61 72 6b 20 52 6f 73 65 6d  rtesy Mark Rosem
14d60 61 6e 2e 20 28 4a 4c 29 0a 0a 33 2f 32 36 2f 39  an. (JL)..3/26/9
14d70 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  6 (new feature) 
14d80 41 64 64 65 64 20 27 70 61 63 6b 61 67 65 20 54  Added 'package T
14d90 63 6c 74 65 73 74 27 20 77 68 69 63 68 20 69 73  cltest' which is
14da0 20 70 72 65 73 65 6e 74 20 6f 6e 6c 79 20 69 6e   present only in
14db0 0a 74 65 73 74 20 76 65 72 73 69 6f 6e 73 20 6f  .test versions o
14dc0 66 20 54 63 6c 3b 20 74 68 69 73 20 61 6c 6c 6f  f Tcl; this allo
14dd0 77 73 20 74 68 65 20 74 65 73 74 69 6e 67 20 63  ws the testing c
14de0 6f 6d 6d 61 6e 64 73 20 74 6f 20 62 65 20 6c 6f  ommands to be lo
14df0 61 64 65 64 20 69 6e 74 6f 0a 6e 65 77 20 69 6e  aded into.new in
14e00 74 65 72 70 72 65 74 65 72 73 20 62 65 73 69 64  terpreters besid
14e10 65 73 20 74 68 65 20 6d 61 69 6e 20 6f 6e 65 2e  es the main one.
14e20 20 28 4a 4c 29 0a 0a 33 2f 32 36 2f 39 36 20 28   (JL)..3/26/96 (
14e30 72 65 73 74 6f 72 65 64 20 66 65 61 74 75 72 65  restored feature
14e40 29 20 52 65 63 72 65 61 74 65 64 20 74 68 65 20  ) Recreated the 
14e50 54 63 6c 5f 47 65 74 4f 70 65 6e 46 69 6c 65 20  Tcl_GetOpenFile 
14e60 43 20 41 50 49 2e 20 59 6f 75 20 63 61 6e 0a 6e  C API. You can.n
14e70 6f 77 20 67 65 74 20 61 20 46 49 4c 45 20 2a 20  ow get a FILE * 
14e80 66 72 6f 6d 20 61 20 72 65 67 69 73 74 65 72 65  from a registere
14e90 64 20 63 68 61 6e 6e 65 6c 3b 20 55 6e 69 78 20  d channel; Unix 
14ea0 6f 6e 6c 79 2e 20 28 4a 4c 29 0a 0a 33 2f 32 37  only. (JL)..3/27
14eb0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 54 68  /96 (bug fix) Th
14ec0 65 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73  e regular expres
14ed0 73 69 6f 6e 20 63 6f 64 65 20 64 69 64 20 6e 6f  sion code did no
14ee0 74 20 73 75 70 70 6f 72 74 20 6d 6f 72 65 0a 74  t support more.t
14ef0 68 61 6e 20 39 20 73 75 62 65 78 70 72 65 73 73  han 9 subexpress
14f00 69 6f 6e 73 2e 20 20 49 74 20 6e 6f 77 20 73 75  ions.  It now su
14f10 70 70 6f 72 74 73 20 75 70 20 74 6f 20 32 30 2e  pports up to 20.
14f20 20 28 53 53 29 0a 0a 34 2f 31 2f 39 36 20 28 62   (SS)..4/1/96 (b
14f30 75 67 20 66 69 78 65 73 29 20 54 68 65 20 43 48  ug fixes) The CH
14f40 41 4e 4e 45 4c 5f 42 4c 4f 43 4b 45 44 20 62 69  ANNEL_BLOCKED bi
14f50 74 20 77 61 73 20 62 65 69 6e 67 20 6c 65 66 74  t was being left
14f60 20 6f 6e 20 6f 6e 20 61 20 73 68 6f 72 74 0a 72   on on a short.r
14f70 65 61 64 2c 20 73 6f 20 74 68 61 74 20 66 69 6c  ead, so that fil
14f80 65 65 76 65 6e 74 73 20 77 6f 75 6c 64 6e 27 74  eevents wouldn't
14f90 20 66 69 72 65 20 63 6f 72 72 65 63 74 6c 79 2e   fire correctly.
14fa0 20 42 75 67 20 72 65 70 6f 72 74 65 64 20 62 79   Bug reported by
14fb0 20 4d 61 72 6b 0a 52 6f 73 65 6d 61 6e 2e 28 4a   Mark.Roseman.(J
14fc0 4c 2c 20 52 4a 29 0a 0a 34 2f 31 2f 39 36 20 28  L, RJ)..4/1/96 (
14fd0 62 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 54  bug fix) Moved T
14fe0 63 6c 5f 52 65 6c 65 61 73 65 20 74 6f 20 6d 61  cl_Release to ma
14ff0 74 63 68 20 54 63 6c 5f 50 72 65 73 65 72 76 65  tch Tcl_Preserve
15000 20 65 78 61 63 74 6c 79 2c 20 69 6e 0a 74 63 6c   exactly, in.tcl
15010 49 6e 74 65 72 70 2e 63 3b 20 70 72 65 76 69 6f  Interp.c; previo
15020 75 73 6c 79 20 69 6e 74 65 72 70 72 65 74 65 72  usly interpreter
15030 73 20 77 65 72 65 20 62 65 69 6e 67 20 66 72 65  s were being fre
15040 65 64 20 6f 6e 6c 79 20 63 6f 6e 64 69 74 69 6f  ed only conditio
15050 6e 61 6c 6c 79 0a 61 6e 64 20 73 6f 6d 65 74 69  nally.and someti
15060 6d 65 73 20 6e 6f 74 20 61 74 20 61 6c 6c 2e 20  mes not at all. 
15070 28 4a 4c 29 0a 0a 34 2f 31 2f 39 36 20 28 62 75  (JL)..4/1/96 (bu
15080 67 20 66 69 78 29 20 46 69 78 65 64 20 65 72 72  g fix) Fixed err
15090 6f 72 20 72 65 70 6f 72 74 69 6e 67 20 69 6e 20  or reporting in 
150a0 73 6c 61 76 65 20 69 6e 74 65 72 70 72 65 74 65  slave interprete
150b0 72 73 20 77 68 65 6e 20 74 68 65 0a 65 72 72 6f  rs when the.erro
150c0 72 20 6d 65 73 73 61 67 65 20 77 61 73 20 62 65  r message was be
150d0 69 6e 67 20 67 65 6e 65 72 61 74 65 64 20 64 69  ing generated di
150e0 72 65 63 74 6c 79 20 62 79 20 43 20 63 6f 64 65  rectly by C code
150f0 2e 20 46 69 78 20 73 75 67 67 65 73 74 65 64 20  . Fix suggested 
15100 62 79 0a 56 69 6b 74 6f 72 20 44 75 6b 68 6f 76  by.Viktor Dukhov
15110 6e 69 20 6f 66 20 45 53 4d 2e 20 28 4a 4c 29 0a  ni of ESM. (JL).
15120 0a 34 2f 32 2f 39 36 20 28 62 75 67 20 66 69 78  .4/2/96 (bug fix
15130 65 73 29 20 46 69 78 65 64 20 61 20 73 65 72 69  es) Fixed a seri
15140 65 73 20 6f 66 20 62 75 67 73 20 69 6e 20 57 69  es of bugs in Wi
15150 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73 20 74 68  ndows sockets th
15160 61 74 20 63 61 75 73 65 64 0a 65 76 65 6e 74 73  at caused.events
15170 20 74 6f 20 76 61 72 69 6f 75 73 6c 79 20 67 65   to variously ge
15180 74 20 6c 6f 73 74 2c 20 74 6f 20 67 65 74 20 73  t lost, to get s
15190 65 6e 74 20 6d 75 6c 74 69 70 6c 65 20 74 69 6d  ent multiple tim
151a0 65 73 2c 20 6f 72 20 74 6f 20 62 65 20 69 67 6e  es, or to be ign
151b0 6f 72 65 64 0a 62 79 20 74 68 65 20 64 72 69 76  ored.by the driv
151c0 65 72 2e 20 54 68 65 20 6d 61 6e 69 66 65 73 74  er. The manifest
151d0 61 74 69 6f 6e 20 77 61 73 20 62 6c 6f 63 6b 69  ation was blocki
151e0 6e 67 20 69 66 20 74 68 65 20 63 68 61 6e 6e 65  ng if the channe
151f0 6c 20 69 73 20 62 6c 6f 63 6b 69 6e 67 2c 0a 61  l is blocking,.a
15200 6e 64 20 65 69 74 68 65 72 20 67 65 74 74 69 6e  nd either gettin
15210 67 20 45 41 47 41 49 4e 20 6f 72 20 69 6e 66 69  g EAGAIN or infi
15220 6e 69 74 65 20 6c 6f 6f 70 73 20 69 66 20 74 68  nite loops if th
15230 65 20 63 68 61 6e 6e 65 6c 20 69 73 20 6e 6f 6e  e channel is non
15240 62 6c 6f 63 6b 69 6e 67 2e 0a 54 68 69 73 20 73  blocking..This s
15250 65 72 69 65 73 20 6f 66 20 62 75 67 73 20 77 61  eries of bugs wa
15260 73 20 66 6f 75 6e 64 20 62 79 20 49 61 6e 20 57  s found by Ian W
15270 61 6c 6c 69 73 20 6f 66 20 43 69 73 63 6f 2e 20  allis of Cisco. 
15280 4e 6f 77 20 61 6c 6c 20 74 65 73 74 73 20 28 61  Now all tests (a
15290 6c 73 6f 0a 74 68 6f 73 65 20 74 68 61 74 20 77  lso.those that w
152a0 65 72 65 20 70 72 65 76 69 6f 75 73 6c 79 20 63  ere previously c
152b0 6f 6d 6d 65 6e 74 65 64 20 6f 75 74 29 20 69 6e  ommented out) in
152c0 20 73 6f 63 6b 65 74 2e 74 65 73 74 20 70 61 73   socket.test pas
152d0 73 2e 20 20 28 4a 4c 2c 20 53 53 29 0a 0a 34 2f  s.  (JL, SS)..4/
152e0 32 2f 39 36 20 28 66 65 61 74 75 72 65 20 63 68  2/96 (feature ch
152f0 61 6e 67 65 2f 62 75 67 20 66 69 78 29 20 45 6c  ange/bug fix) El
15300 69 6d 69 6e 61 74 65 64 20 6e 65 74 77 6f 72 6b  iminated network
15310 20 6e 61 6d 65 20 73 75 70 70 6f 72 74 20 69 6e   name support in
15320 0a 66 61 76 6f 72 20 6f 66 20 62 65 74 74 65 72  .favor of better
15330 20 6e 61 74 69 76 65 20 6e 61 6d 65 20 73 75 70   native name sup
15340 70 6f 72 74 2e 20 20 41 64 64 65 64 20 22 66 69  port.  Added "fi
15350 6c 65 20 73 70 6c 69 74 22 2c 20 22 66 69 6c 65  le split", "file
15360 20 6a 6f 69 6e 22 2c 0a 61 6e 64 20 22 66 69 6c   join",.and "fil
15370 65 20 70 61 74 68 74 79 70 65 22 20 63 6f 6d 6d  e pathtype" comm
15380 61 6e 64 73 2e 20 20 53 65 65 20 74 68 65 20 22  ands.  See the "
15390 66 69 6c 65 22 20 6d 61 6e 20 70 61 67 65 20 66  file" man page f
153a0 6f 72 20 6d 6f 72 65 0a 64 65 74 61 69 6c 73 2e  or more.details.
153b0 20 28 53 53 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50   (SS).*** INCOMP
153c0 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54  ATIBILITY with T
153d0 63 6c 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f  cl 7.5b3, but no
153e0 74 20 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a  t with Tcl 7.4 *
153f0 2a 2a 0a 0a 34 2f 32 2f 39 36 20 28 62 75 67 20  **..4/2/96 (bug 
15400 66 69 78 29 20 43 68 61 6e 67 65 64 20 69 6d 70  fix) Changed imp
15410 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61  lementation of a
15420 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 73 6f 20 74  uto_mkindex so t
15430 63 6c 49 6e 64 65 78 0a 66 69 6c 65 73 20 77 69  clIndex.files wi
15440 6c 6c 20 70 72 6f 70 65 72 6c 79 20 68 61 6e 64  ll properly hand
15450 6c 65 20 70 61 74 68 20 6e 61 6d 65 73 20 69 6e  le path names in
15460 20 61 20 63 72 6f 73 73 20 70 6c 61 74 66 6f 72   a cross platfor
15470 6d 20 63 6f 6e 74 65 78 74 2e 20 28 53 53 29 0a  m context. (SS).
15480 0a 34 2f 35 2f 39 36 20 28 62 75 67 20 66 69 78  .4/5/96 (bug fix
15490 29 20 46 69 78 65 64 20 54 63 6c 5f 52 65 61 64  ) Fixed Tcl_Read
154a0 43 6d 64 20 74 6f 20 75 73 65 20 74 68 65 20 63  Cmd to use the c
154b0 68 61 6e 6e 65 6c 20 62 75 66 66 65 72 20 73 69  hannel buffer si
154c0 7a 65 20 61 73 20 74 68 65 0a 63 68 75 6e 6b 20  ze as the.chunk 
154d0 73 69 7a 65 20 69 74 20 72 65 61 64 73 2c 20 69  size it reads, i
154e0 6e 73 74 65 61 64 20 6f 66 20 61 20 66 69 78 65  nstead of a fixe
154f0 64 20 34 4b 20 73 69 7a 65 2e 20 54 68 75 73 2c  d 4K size. Thus,
15500 20 6f 6e 20 6c 61 72 67 65 20 72 65 61 64 73 2c   on large reads,
15510 20 74 68 65 0a 75 73 65 72 20 63 61 6e 20 73 65   the.user can se
15520 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 62 75  t the channel bu
15530 66 66 65 72 20 73 69 7a 65 20 74 6f 20 61 20 6c  ffer size to a l
15540 61 72 67 65 20 73 69 7a 65 20 61 6e 64 20 74 68  arge size and th
15550 65 20 72 65 61 64 20 77 69 6c 6c 0a 6f 63 63 75  e read will.occu
15560 72 20 6f 72 64 65 72 73 20 6f 66 20 6d 61 67 6e  r orders of magn
15570 69 74 75 64 65 20 66 61 73 74 65 72 2e 20 46 6f  itude faster. Fo
15580 72 20 65 78 61 6d 70 6c 65 2c 20 6f 6e 20 61 20  r example, on a 
15590 32 4d 42 20 66 69 6c 65 2c 20 72 65 61 64 69 6e  2MB file, readin
155a0 67 20 69 6e 20 34 4b 0a 63 68 75 6e 6b 73 20 74  g in 4K.chunks t
155b0 6f 6f 6b 20 33 34 20 73 65 63 6f 6e 64 73 2c 20  ook 34 seconds, 
155c0 77 68 69 6c 65 20 72 65 61 64 69 6e 67 20 69 6e  while reading in
155d0 20 31 4d 42 20 63 68 75 6e 6b 73 20 74 6f 6f 6b   1MB chunks took
155e0 20 31 2e 35 20 73 65 63 6f 6e 64 73 20 28 6f 6e   1.5 seconds (on
155f0 20 61 0a 53 53 2d 32 30 29 2e 20 50 72 6f 62 6c   a.SS-20). Probl
15600 65 6d 20 69 64 65 6e 74 69 66 69 65 64 20 61 6e  em identified an
15610 64 20 66 69 78 20 73 75 67 67 65 73 74 65 64 20  d fix suggested 
15620 62 79 20 4a 6f 68 6e 20 48 61 78 62 79 20 6f 66  by John Haxby of
15630 20 48 50 2e 20 28 4a 4c 29 0a 0a 34 2f 35 2f 39   HP. (JL)..4/5/9
15640 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
15650 64 20 73 6f 63 6b 65 74 20 63 72 65 61 74 69 6f  d socket creatio
15660 6e 20 63 6f 64 65 20 74 6f 20 69 6e 76 6f 6b 65  n code to invoke
15670 20 67 65 74 68 6f 73 74 62 79 6e 61 6d 65 20 6f   gethostbyname o
15680 6e 6c 79 20 69 66 0a 69 6e 65 74 5f 61 64 64 72  nly if.inet_addr
15690 20 66 61 69 6c 65 64 20 28 76 65 72 79 20 75 6e   failed (very un
156a0 6c 69 6b 65 6c 79 29 2e 20 42 65 66 6f 72 65 20  likely). Before 
156b0 74 68 69 73 20 63 68 61 6e 67 65 20 74 68 65 20  this change the 
156c0 6f 72 64 65 72 20 77 61 73 20 72 65 76 65 72 73  order was revers
156d0 65 64 0a 61 6e 64 20 74 68 69 73 20 6d 61 64 65  ed.and this made
156e0 20 74 68 69 6e 67 73 20 6d 75 63 68 20 73 6c 6f   things much slo
156f0 77 65 72 20 74 68 61 6e 20 74 68 65 79 20 6e 65  wer than they ne
15700 65 64 65 64 20 74 6f 20 62 65 20 28 67 65 74 68  eded to be (geth
15710 6f 73 74 62 79 6e 61 6d 65 0a 67 65 6e 65 72 61  ostbyname.genera
15720 6c 6c 79 20 72 65 71 75 69 72 65 73 20 61 6e 20  lly requires an 
15730 52 50 43 2c 20 77 68 69 63 68 20 69 73 20 73 6c  RPC, which is sl
15740 6f 77 29 2e 20 50 72 6f 62 6c 65 6d 20 69 64 65  ow). Problem ide
15750 6e 74 69 66 69 65 64 20 61 6e 64 20 66 69 78 0a  ntified and fix.
15760 73 75 67 67 65 73 74 65 64 20 62 79 20 4a 6f 68  suggested by Joh
15770 6e 20 4c 6f 76 65 72 73 6f 20 6f 66 20 4f 53 46  n Loverso of OSF
15780 2e 20 28 4a 4c 29 0a 0a 34 2f 39 2f 39 36 20 28  . (JL)..4/9/96 (
15790 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
157a0 4d 6f 64 69 66 69 65 64 20 22 61 75 74 6f 22 20  Modified "auto" 
157b0 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f 64 65  translation mode
157c0 20 73 6f 20 74 68 61 74 20 69 74 0a 72 65 63 6f   so that it.reco
157d0 67 6e 69 7a 65 73 20 61 6e 79 20 6f 66 20 22 5c  gnizes any of "\
157e0 6e 22 2c 20 22 5c 72 22 20 61 6e 64 20 22 5c 72  n", "\r" and "\r
157f0 5c 6e 22 20 69 6e 20 69 6e 70 75 74 20 61 73 20  \n" in input as 
15800 65 6e 64 20 6f 66 20 6c 69 6e 65 2c 20 73 6f 0a  end of line, so.
15810 74 68 61 74 20 61 20 66 69 6c 65 20 63 61 6e 20  that a file can 
15820 68 61 76 65 20 6d 69 78 65 64 20 65 6e 64 2d 6f  have mixed end-o
15830 66 2d 6c 69 6e 65 20 73 65 71 75 65 6e 63 65 73  f-line sequences
15840 2e 20 49 74 20 6e 6f 77 20 6f 75 74 70 75 74 73  . It now outputs
15850 0a 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 73 70  .the platform sp
15860 65 63 69 66 69 63 20 65 6e 64 20 6f 66 20 6c 69  ecific end of li
15870 6e 65 20 73 65 71 75 65 6e 63 65 20 6f 6e 20 65  ne sequence on e
15880 61 63 68 20 70 6c 61 74 66 6f 72 6d 20 66 6f 72  ach platform for
15890 20 66 69 6c 65 73 20 61 6e 64 0a 70 69 70 65 73   files and.pipes
158a0 2c 20 61 6e 64 20 66 6f 72 20 73 6f 63 6b 65 74  , and for socket
158b0 73 20 69 74 20 70 72 6f 64 75 63 65 73 20 63 72  s it produces cr
158c0 6c 66 20 69 6e 20 6f 75 74 70 75 74 20 6f 6e 20  lf in output on 
158d0 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 2e 20 28  all platforms. (
158e0 4a 4c 29 0a 2a 2a 2a 20 49 4e 43 4f 4d 50 41 54  JL).*** INCOMPAT
158f0 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c  IBILITY with Tcl
15900 20 37 2e 35 62 33 2c 20 62 75 74 20 6e 6f 74 20   7.5b3, but not 
15910 77 69 74 68 20 54 63 6c 20 37 2e 34 20 2a 2a 2a  with Tcl 7.4 ***
15920 0a 0a 34 2f 31 31 2f 39 36 20 28 6e 65 77 20 66  ..4/11/96 (new f
15930 65 61 74 75 72 65 29 20 41 64 64 65 64 20 2d 65  eature) Added -e
15940 6f 66 63 68 61 72 20 6f 70 74 69 6f 6e 20 74 6f  ofchar option to
15950 20 54 63 6c 5f 53 65 74 43 68 61 6e 6e 65 6c 4f   Tcl_SetChannelO
15960 70 74 69 6f 6e 20 74 6f 20 61 6c 6c 6f 77 0a 73  ption to allow.s
15970 65 74 74 69 6e 67 20 6f 66 20 61 6e 20 65 6e 64  etting of an end
15980 20 6f 66 20 66 69 6c 65 20 63 68 61 72 61 63 74   of file charact
15990 65 72 20 66 6f 72 20 69 6e 70 75 74 20 61 6e 64  er for input and
159a0 20 6f 75 74 70 75 74 2e 20 49 66 20 61 6e 20 69   output. If an i
159b0 6e 70 75 74 20 65 6f 66 0a 63 68 61 72 20 69 73  nput eof.char is
159c0 20 73 65 74 2c 20 69 74 20 69 73 20 72 65 63 6f   set, it is reco
159d0 67 6e 69 7a 65 64 20 61 73 20 45 4f 46 20 61 6e  gnized as EOF an
159e0 64 20 66 75 72 74 68 65 72 20 69 6e 70 75 74 20  d further input 
159f0 66 72 6f 6d 20 74 68 65 20 63 68 61 6e 6e 65 6c  from the channel
15a00 20 69 73 0a 6e 6f 74 20 70 72 65 73 65 6e 74 65   is.not presente
15a10 64 20 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 2e  d to the caller.
15a20 20 49 66 20 61 6e 20 6f 75 74 70 75 74 20 65 6f   If an output eo
15a30 66 20 63 68 61 72 20 69 73 20 73 65 74 2c 20 6f  f char is set, o
15a40 6e 20 6f 75 74 70 75 74 2c 20 74 68 61 74 0a 62  n output, that.b
15a50 79 74 65 20 69 73 20 61 70 70 65 6e 64 65 64 20  yte is appended 
15a60 74 6f 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 77  to the channel w
15a70 68 65 6e 20 69 74 20 69 73 20 63 6c 6f 73 65 64  hen it is closed
15a80 2e 20 4f 6e 20 55 6e 69 78 20 61 6e 64 20 4d 61  . On Unix and Ma
15a90 63 69 6e 74 6f 73 68 2c 0a 61 6c 6c 20 63 68 61  cintosh,.all cha
15aa0 6e 6e 65 6c 73 20 73 74 61 72 74 20 77 69 74 68  nnels start with
15ab0 20 6e 6f 20 65 6f 66 20 63 68 61 72 20 73 65 74   no eof char set
15ac0 20 66 6f 72 20 69 6e 70 75 74 20 6f 72 20 6f 75   for input or ou
15ad0 74 70 75 74 2e 20 4f 6e 20 57 69 6e 64 6f 77 73  tput. On Windows
15ae0 2c 0a 66 69 6c 65 73 20 61 6e 64 20 70 69 70 65  ,.files and pipe
15af0 73 20 73 74 61 72 74 20 77 69 74 68 20 69 6e 70  s start with inp
15b00 75 74 20 61 6e 64 20 6f 75 74 70 75 74 20 65 6f  ut and output eo
15b10 66 20 63 68 61 72 73 20 73 65 74 20 74 6f 20 43  f chars set to C
15b20 72 6c 74 2d 5a 20 28 61 73 63 69 69 0a 32 36 29  rlt-Z (ascii.26)
15b30 2c 20 61 6e 64 20 73 6f 63 6b 65 74 73 20 73 74  , and sockets st
15b40 61 72 74 20 77 69 74 68 20 6e 6f 20 69 6e 70 75  art with no inpu
15b50 74 20 6f 72 20 6f 75 74 70 75 74 20 65 6f 66 20  t or output eof 
15b60 63 68 61 72 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 49  char. (JL).*** I
15b70 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77  NCOMPATIBILITY w
15b80 69 74 68 20 54 63 6c 20 37 2e 35 62 33 2c 20 62  ith Tcl 7.5b3, b
15b90 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20  ut not with Tcl 
15ba0 37 2e 34 20 2a 2a 2a 0a 0a 34 2f 31 37 2f 39 36  7.4 ***..4/17/96
15bb0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
15bc0 20 73 65 72 69 65 73 20 6f 66 20 62 75 67 73 20   series of bugs 
15bd0 77 69 74 68 20 68 61 6e 64 6c 69 6e 67 20 6f 66  with handling of
15be0 20 63 72 6c 66 20 73 65 71 75 65 6e 63 65 20 73   crlf sequence s
15bf0 70 6c 69 74 0a 61 63 72 6f 73 73 20 62 75 66 66  plit.across buff
15c00 65 72 20 62 6f 75 6e 64 61 72 69 65 73 20 69 6e  er boundaries in
15c10 20 69 6e 70 75 74 2c 20 69 6e 20 41 55 54 4f 20   input, in AUTO 
15c20 6d 6f 64 65 2e 20 28 4a 4c 2c 20 42 57 29 0a 0a  mode. (JL, BW)..
15c30 34 2f 31 37 2f 39 36 20 28 74 65 73 74 20 73 75  4/17/96 (test su
15c40 69 74 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29  ite improvement)
15c50 20 46 69 78 65 64 20 74 65 73 74 20 73 75 69 74   Fixed test suit
15c60 65 20 73 6f 20 74 68 61 74 20 74 65 73 74 73 20  e so that tests 
15c70 74 68 61 74 0a 64 65 70 65 6e 64 20 6f 6e 20 74  that.depend on t
15c80 68 65 20 61 76 61 69 6c 61 62 69 6c 69 74 79 20  he availability 
15c90 6f 66 20 55 6e 69 78 20 63 6f 6d 6d 61 6e 64 73  of Unix commands
15ca0 20 73 75 63 68 20 61 73 20 65 63 68 6f 2c 20 63   such as echo, c
15cb0 61 74 20 61 6e 64 20 6f 74 68 65 72 73 0a 61 72  at and others.ar
15cc0 65 20 6e 6f 74 20 72 75 6e 20 69 66 20 74 68 65  e not run if the
15cd0 73 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20  se commands are 
15ce0 6e 6f 74 20 70 72 65 73 65 6e 74 2e 20 28 4a 4c  not present. (JL
15cf0 29 0a 0a 34 2f 31 37 2f 39 36 20 28 74 65 73 74  )..4/17/96 (test
15d00 20 73 75 69 74 65 20 69 6d 70 72 6f 76 65 6d 65   suite improveme
15d10 6e 74 29 20 54 68 65 20 73 6f 63 6b 65 74 20 74  nt) The socket t
15d20 65 73 74 20 6e 6f 77 20 61 75 74 6f 6d 61 74 69  est now automati
15d30 63 61 6c 6c 79 20 73 74 61 72 74 73 2c 0a 6f 6e  cally starts,.on
15d40 20 70 6c 61 74 66 6f 72 6d 73 74 20 74 68 61 74   platformst that
15d50 20 73 75 70 70 6f 72 74 20 65 78 65 63 2c 20 61   support exec, a
15d60 20 73 65 70 61 72 61 74 65 20 70 72 6f 63 65 73   separate proces
15d70 73 20 66 6f 72 20 72 65 6d 6f 74 65 20 74 65 73  s for remote tes
15d80 74 73 69 6e 67 2e 20 28 4a 4c 29 0a 0a 2d 2d 2d  tsing. (JL)..---
15d90 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
15da0 65 6c 65 61 73 65 64 20 37 2e 35 2c 20 34 2f 32  eleased 7.5, 4/2
15db0 31 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  1/96 -----------
15dc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 35 2f  ------------..5/
15dd0 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 22  1/96 (bug fix) "
15de0 66 69 6c 65 20 74 61 69 6c 20 7e 22 20 64 69 64  file tail ~" did
15df0 20 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79 20 72   not correctly r
15e00 65 74 75 72 6e 20 74 68 65 20 74 61 69 6c 0a 70  eturn the tail.p
15e10 6f 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 75 73  ortion of the us
15e20 65 72 27 73 20 68 6f 6d 65 20 64 69 72 65 63 74  er's home direct
15e30 6f 72 79 2e 20 28 53 53 29 0a 0a 35 2f 31 2f 39  ory. (SS)..5/1/9
15e40 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
15e50 64 20 62 75 67 20 69 6e 20 54 63 6c 47 65 74 45  d bug in TclGetE
15e60 6e 76 20 77 68 65 72 65 20 69 74 20 64 69 64 6e  nv where it didn
15e70 27 74 20 6c 6f 6f 6b 75 70 20 65 6e 76 69 72 6f  't lookup enviro
15e80 6e 6d 65 6e 74 0a 76 61 72 69 61 62 6c 65 73 20  nment.variables 
15e90 63 6f 72 72 65 63 74 6c 79 3a 20 20 63 6f 75 6c  correctly:  coul
15ea0 64 20 63 6f 6e 66 75 73 65 20 22 48 22 20 61 6e  d confuse "H" an
15eb0 64 20 22 48 4f 4d 45 22 2c 20 66 6f 72 20 65 78  d "HOME", for ex
15ec0 61 6d 70 6c 65 2e 20 20 28 4a 4f 29 0a 0a 35 2f  ample.  (JO)..5/
15ed0 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 43  1/96 (bug fix) C
15ee0 68 61 6e 67 65 64 20 74 6f 20 69 6e 73 74 61 6c  hanged to instal
15ef0 6c 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 75  l tclConfig.sh u
15f00 6e 64 65 72 20 22 6d 61 6b 65 20 69 6e 73 74 61  nder "make insta
15f10 6c 6c 2d 62 69 6e 61 72 69 65 73 22 2c 0a 6e 6f  ll-binaries",.no
15f20 74 20 22 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 2d  t "make install-
15f30 6c 69 62 72 61 72 69 65 73 22 2e 20 20 28 4a 4f  libraries".  (JO
15f40 29 0a 0a 35 2f 32 2f 39 36 20 28 62 75 67 20 66  )..5/2/96 (bug f
15f50 69 78 29 20 43 68 61 6e 67 65 64 20 70 6b 67 5f  ix) Changed pkg_
15f60 6d 6b 49 6e 64 65 78 20 6e 6f 74 20 74 6f 20 61  mkIndex not to a
15f70 74 74 65 6d 70 74 20 74 6f 20 22 6c 6f 61 64 22  ttempt to "load"
15f80 20 61 20 66 69 6c 65 20 75 6e 6c 65 73 73 0a 69   a file unless.i
15f90 74 20 68 61 73 20 74 68 65 20 73 74 61 6e 64 61  t has the standa
15fa0 72 64 20 73 68 61 72 65 64 20 6c 69 62 72 61 72  rd shared librar
15fb0 79 20 65 78 74 65 6e 73 69 6f 6e 2e 20 20 4f 6e  y extension.  On
15fc0 20 53 75 6e 4f 53 2c 20 61 74 74 65 6d 70 74 73   SunOS, attempts
15fd0 20 74 6f 20 6c 6f 61 64 0a 54 63 6c 20 73 63 72   to load.Tcl scr
15fe0 69 70 74 73 20 63 61 75 73 65 20 74 68 65 20 77  ipts cause the w
15ff0 68 6f 6c 65 20 61 70 70 6c 69 63 61 74 69 6f 6e  hole application
16000 20 74 6f 20 62 65 20 61 62 6f 72 74 65 64 20 28   to be aborted (
16010 74 68 65 72 65 27 73 20 6e 6f 20 77 61 79 20 74  there's no way t
16020 6f 0a 67 65 74 20 74 68 65 20 65 72 72 6f 72 20  o.get the error 
16030 62 61 63 6b 20 69 6e 74 6f 20 54 63 6c 29 2e 20  back into Tcl). 
16040 20 28 4a 4f 29 0a 0a 35 2f 37 2f 39 36 20 28 62   (JO)..5/7/96 (b
16050 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 69 6e  ug fix) Moved in
16060 69 74 53 63 72 69 70 74 20 69 6e 20 74 63 6c 55  itScript in tclU
16070 6e 69 78 49 6e 69 74 2e 63 20 74 6f 20 77 72 69  nixInit.c to wri
16080 74 61 62 6c 65 20 6d 65 6d 6f 72 79 20 74 6f 0a  table memory to.
16090 61 76 6f 69 64 20 70 6f 74 65 6e 74 69 61 6c 20  avoid potential 
160a0 63 6f 72 65 20 64 75 6d 70 73 2e 20 28 4a 4f 29  core dumps. (JO)
160b0 0a 0a 35 2f 37 2f 39 36 20 28 62 75 67 20 66 69  ..5/7/96 (bug fi
160c0 78 29 20 41 75 74 6f 5f 72 65 73 65 74 20 70 72  x) Auto_reset pr
160d0 6f 63 65 64 75 72 65 20 77 61 73 20 72 65 6d 6f  ocedure was remo
160e0 76 69 6e 67 20 70 72 6f 63 65 64 75 72 65 20 66  ving procedure f
160f0 72 6f 6d 20 69 6e 69 74 2e 74 63 6c 2c 0a 73 75  rom init.tcl,.su
16100 63 68 20 61 73 20 70 6b 67 5f 6d 6b 49 6e 64 65  ch as pkg_mkInde
16110 78 2e 20 20 28 4a 4f 29 0a 0a 35 2f 37 2f 39 36  x.  (JO)..5/7/96
16120 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
16130 20 63 61 73 74 20 6f 6e 20 73 6f 63 6b 65 74 20   cast on socket 
16140 61 64 64 72 65 73 73 20 72 65 73 6f 6c 75 74 69  address resoluti
16150 6f 6e 20 63 6f 64 65 20 74 68 61 74 0a 77 6f 75  on code that.wou
16160 6c 64 20 63 61 75 73 65 20 61 20 66 61 69 6c 75  ld cause a failu
16170 72 65 20 74 6f 20 63 6f 6e 6e 65 63 74 20 6f 6e  re to connect on
16180 20 44 65 63 20 41 6c 70 68 61 73 2e 20 28 4a 4c   Dec Alphas. (JL
16190 29 0a 0a 35 2f 37 2f 39 36 20 28 62 75 67 20 66  )..5/7/96 (bug f
161a0 69 78 29 20 41 64 64 65 64 20 22 74 69 6d 65 22  ix) Added "time"
161b0 2c 20 22 73 75 62 73 74 22 20 61 6e 64 20 22 66  , "subst" and "f
161c0 69 6c 65 65 76 65 6e 74 22 20 63 6f 6d 6d 61 6e  ileevent" comman
161d0 64 73 20 74 6f 20 73 65 74 20 6f 66 0a 63 6f 6d  ds to set of.com
161e0 6d 61 6e 64 73 20 61 76 61 69 6c 61 62 6c 65 20  mands available 
161f0 69 6e 20 61 20 73 61 66 65 20 69 6e 74 65 72 70  in a safe interp
16200 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 31  reter. (JL)..5/1
16210 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 50  3/96 (bug fix) P
16220 72 65 76 65 6e 74 69 6e 67 20 4f 53 20 6c 65 76  reventing OS lev
16230 65 6c 20 68 61 6e 64 6c 65 73 20 66 6f 72 20 73  el handles for s
16240 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e 64  tdin, stdout and
16250 20 73 74 64 65 72 72 0a 66 72 6f 6d 20 62 65 69   stderr.from bei
16260 6e 67 20 69 6d 70 6c 69 63 69 74 6c 79 20 63 6c  ng implicitly cl
16270 6f 73 65 64 20 77 68 65 6e 20 74 68 65 20 6c 61  osed when the la
16280 73 74 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20  st reference to 
16290 74 68 65 20 73 74 61 6e 64 61 72 64 0a 63 68 61  the standard.cha
162a0 6e 6e 65 6c 20 63 6f 6e 74 61 69 6e 69 6e 67 20  nnel containing 
162b0 74 68 61 74 20 68 61 6e 64 6c 65 20 69 73 20 64  that handle is d
162c0 69 73 63 61 72 64 65 64 20 77 68 65 6e 20 61 6e  iscarded when an
162d0 20 69 6e 74 65 72 70 72 65 74 65 72 20 69 73 20   interpreter is 
162e0 64 65 6c 65 74 65 64 2e 0a 45 78 70 6c 69 63 69  deleted..Explici
162f0 74 6c 79 20 63 6c 6f 73 69 6e 67 20 73 74 61 6e  tly closing stan
16300 64 61 72 64 20 63 68 61 6e 6e 65 6c 73 20 62 79  dard channels by
16310 20 75 73 69 6e 67 20 22 63 6c 6f 73 65 22 20 73   using "close" s
16320 74 69 6c 6c 20 77 6f 72 6b 73 2e 20 28 4a 4c 29  till works. (JL)
16330 0a 0a 35 2f 32 31 2f 39 36 20 28 62 75 67 20 66  ..5/21/96 (bug f
16340 69 78 29 20 44 6f 20 6e 6f 74 20 63 72 65 61 74  ix) Do not creat
16350 65 20 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20 73  e channels for s
16360 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 61 6e 64  tdin, stdout and
16370 20 73 74 64 65 72 72 20 6f 6e 0a 55 6e 69 78 20   stderr on.Unix 
16380 69 66 20 74 68 65 20 64 65 76 69 63 65 73 20 61  if the devices a
16390 72 65 20 63 6c 6f 73 65 64 2e 20 54 68 69 73 20  re closed. This 
163a0 70 72 65 76 65 6e 74 73 20 61 20 64 75 70 6c 69  prevents a dupli
163b0 63 61 74 65 20 63 68 61 6e 6e 65 6c 20 6e 61 6d  cate channel nam
163c0 65 0a 70 61 6e 69 63 20 6c 61 74 65 72 20 6f 6e  e.panic later on
163d0 20 77 68 65 6e 20 74 68 65 20 66 64 20 69 73 20   when the fd is 
163e0 75 73 65 64 20 74 6f 20 6f 70 65 6e 20 61 20 63  used to open a c
163f0 68 61 6e 6e 65 6c 20 61 6e 64 20 74 68 65 20 63  hannel and the c
16400 68 61 6e 6e 65 6c 20 69 73 0a 72 65 67 69 73 74  hannel is.regist
16410 65 72 65 64 20 69 6e 20 61 6e 20 69 6e 74 65 72  ered in an inter
16420 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f  preter. (JL)..5/
16430 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  23/96 (bug fix) 
16440 46 69 78 65 64 20 62 75 67 20 74 68 61 74 20 70  Fixed bug that p
16450 72 65 76 65 6e 74 65 64 20 74 68 65 20 75 73 65  revented the use
16460 20 6f 66 20 73 74 61 6e 64 61 72 64 20 63 68 61   of standard cha
16470 6e 6e 65 6c 73 20 69 6e 0a 69 6e 74 65 72 70 72  nnels in.interpr
16480 65 74 65 72 73 20 63 72 65 61 74 65 64 20 61 66  eters created af
16490 74 65 72 20 74 68 65 20 6c 61 73 74 20 69 6e 74  ter the last int
164a0 65 72 70 72 65 74 65 72 20 77 61 73 20 64 65 73  erpreter was des
164b0 74 72 6f 79 65 64 2e 20 49 6e 20 74 68 65 20 73  troyed. In the s
164c0 65 71 75 65 6e 63 65 0a 0a 09 69 6e 74 65 72 70  equence...interp
164d0 20 3d 20 54 63 6c 5f 43 72 65 61 74 65 49 6e 74   = Tcl_CreateInt
164e0 65 72 70 28 29 3b 0a 09 54 63 6c 5f 44 65 6c 65  erp();..Tcl_Dele
164f0 74 65 49 6e 74 65 72 70 28 69 6e 74 65 72 70 29  teInterp(interp)
16500 3b 0a 09 69 6e 74 65 72 70 20 3d 20 54 63 6c 5f  ;..interp = Tcl_
16510 43 72 65 61 74 65 49 6e 74 65 72 70 28 29 3b 0a  CreateInterp();.
16520 0a 63 68 61 6e 6e 65 6c 73 20 66 6f 72 20 73 74  .channels for st
16530 64 69 6f 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65  dio would not be
16540 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68   available in th
16550 65 20 73 65 63 6f 6e 64 20 69 6e 74 65 72 70 72  e second interpr
16560 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 32 33  eter. (JL)..5/23
16570 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
16580 78 65 64 20 62 75 67 20 74 68 61 74 20 61 6c 6c  xed bug that all
16590 6f 77 65 64 20 54 63 6c 5f 4d 61 6b 65 46 69 6c  owed Tcl_MakeFil
165a0 65 43 68 61 6e 6e 65 6c 20 74 6f 20 63 72 65 61  eChannel to crea
165b0 74 65 20 6e 65 77 0a 63 68 61 6e 6e 65 6c 73 20  te new.channels 
165c0 77 69 74 68 20 54 63 6c 5f 46 69 6c 65 73 20 69  with Tcl_Files i
165d0 6e 20 74 68 65 6d 20 74 68 61 74 20 61 72 65 20  n them that are 
165e0 61 6c 72 65 61 64 79 20 75 73 65 64 20 62 79 20  already used by 
165f0 61 6e 6f 74 68 65 72 20 63 68 61 6e 6e 65 6c 2e  another channel.
16600 0a 54 68 69 73 20 77 6f 75 6c 64 20 63 61 75 73  .This would caus
16610 65 20 63 6f 72 65 20 64 75 6d 70 73 20 77 68 65  e core dumps whe
16620 6e 20 74 68 65 20 54 63 6c 5f 46 69 6c 65 73 20  n the Tcl_Files 
16630 77 65 72 65 20 62 65 69 6e 67 20 66 72 65 65 64  were being freed
16640 20 74 77 69 63 65 2e 20 28 4a 4c 29 0a 0a 35 2f   twice. (JL)..5/
16650 32 33 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  23/96 (bug fix) 
16660 46 69 78 65 64 20 61 20 6c 6f 67 69 63 61 6c 20  Fixed a logical 
16670 74 69 6d 69 6e 67 20 62 75 67 20 74 68 61 74 20  timing bug that 
16680 63 61 75 73 65 64 20 61 20 73 74 61 6e 64 61 72  caused a standar
16690 64 20 63 68 61 6e 6e 65 6c 0a 74 6f 20 62 65 20  d channel.to be 
166a0 72 65 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68 65  removed from the
166b0 20 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e 65   standard channe
166c0 6c 20 74 61 62 6c 65 20 74 6f 6f 20 65 61 72 6c  l table too earl
166d0 79 20 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e  y when the chann
166e0 65 6c 0a 77 61 73 20 62 65 69 6e 67 20 63 6c 6f  el.was being clo
166f0 73 65 64 2e 20 49 66 20 74 68 65 20 63 68 61 6e  sed. If the chan
16700 6e 65 6c 20 77 61 73 20 62 65 69 6e 67 20 66 6c  nel was being fl
16710 75 73 68 65 64 20 61 73 79 6e 63 68 72 6f 6e 6f  ushed asynchrono
16720 75 73 6c 79 2c 20 69 74 20 63 6f 75 6c 64 0a 67  usly, it could.g
16730 65 74 20 72 65 63 72 65 61 74 65 64 20 62 65 66  et recreated bef
16740 6f 72 65 20 62 65 69 6e 67 20 61 63 74 75 61 6c  ore being actual
16750 6c 79 20 64 65 73 74 72 6f 79 65 64 2c 20 61 6e  ly destroyed, an
16760 64 20 74 68 65 20 72 65 63 72 65 61 74 65 64 20  d the recreated 
16770 63 68 61 6e 6e 65 6c 0a 77 6f 75 6c 64 20 63 6f  channel.would co
16780 6e 74 61 69 6e 20 74 68 65 20 73 61 6d 65 20 54  ntain the same T
16790 63 6c 5f 46 69 6c 65 20 61 73 20 74 68 65 20 6f  cl_File as the o
167a0 6e 65 20 62 65 69 6e 67 20 63 6c 6f 73 65 64 2c  ne being closed,
167b0 20 6c 65 61 64 69 6e 67 20 74 6f 0a 64 61 6e 67   leading to.dang
167c0 6c 69 6e 67 20 70 6f 69 6e 74 65 72 73 20 61 6e  ling pointers an
167d0 64 20 63 6f 72 65 20 64 75 6d 70 73 2e 20 28 4a  d core dumps. (J
167e0 4c 29 0a 0a 35 2f 32 37 2f 39 36 20 28 62 75 67  L)..5/27/96 (bug
167f0 20 66 69 78 29 20 46 69 78 65 64 20 61 20 62 75   fix) Fixed a bu
16800 67 20 69 6e 20 54 63 6c 5f 47 65 74 43 68 61 6e  g in Tcl_GetChan
16810 6e 65 6c 4f 70 74 69 6f 6e 20 77 68 69 63 68 20  nelOption which 
16820 63 61 75 73 65 64 20 69 74 20 74 6f 0a 61 6c 77  caused it to.alw
16830 61 79 73 20 72 65 74 75 72 6e 20 61 20 6c 69 73  ays return a lis
16840 74 20 6f 66 20 6f 6e 65 20 65 6c 65 6d 65 6e 74  t of one element
16850 2c 20 61 20 6c 69 73 74 20 6f 66 20 74 68 65 20  , a list of the 
16860 73 65 74 74 69 6e 67 73 2c 20 66 6f 72 0a 2d 74  settings, for.-t
16870 72 61 6e 73 6c 61 74 69 6f 6e 20 61 6e 64 20 2d  ranslation and -
16880 65 6f 66 63 68 61 72 20 6f 70 74 69 6f 6e 73 2e  eofchar options.
16890 20 4e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 72   Now correctly r
168a0 65 74 75 72 6e 73 20 74 68 65 20 76 61 6c 75 65  eturns the value
168b0 0a 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68  .described by th
168c0 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20  e documentation 
168d0 28 4d 61 72 6b 20 44 69 65 6b 68 61 6e 73 20 66  (Mark Diekhans f
168e0 6f 75 6e 64 20 74 68 69 73 2c 20 74 68 61 6e 6b  ound this, thank
168f0 73 21 29 2e 20 28 4a 4c 29 0a 0a 35 2f 33 30 2f  s!). (JL)..5/30/
16900 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
16910 65 64 20 61 20 63 6f 75 70 6c 65 20 6f 66 20 73  ed a couple of s
16920 79 6e 74 61 78 20 65 72 72 6f 72 73 20 69 6e 20  yntax errors in 
16930 69 6f 2e 74 65 73 74 2e 20 28 4a 4c 29 0a 0a 35  io.test. (JL)..5
16940 2f 33 30 2f 39 36 20 28 62 75 67 20 66 69 78 29  /30/96 (bug fix)
16950 20 49 66 20 61 20 66 69 6c 65 65 76 65 6e 74 20   If a fileevent 
16960 73 63 72 69 70 74 73 20 67 65 74 73 20 61 6e 20  scripts gets an 
16970 65 72 72 6f 72 2c 20 64 65 6c 65 74 65 20 69 74  error, delete it
16980 20 62 65 66 6f 72 65 0a 63 61 75 73 69 6e 67 20   before.causing 
16990 61 20 62 61 63 6b 67 72 6f 75 6e 64 20 65 72 72  a background err
169a0 6f 72 2e 20 54 68 69 73 20 69 73 20 74 6f 20 61  or. This is to a
169b0 6c 6c 6f 77 20 74 68 65 20 65 72 72 6f 72 20 68  llow the error h
169c0 61 6e 64 6c 65 72 20 74 6f 20 72 65 69 6e 73 74  andler to reinst
169d0 61 6c 6c 0a 74 68 65 20 66 69 6c 65 65 76 65 6e  all.the fileeven
169e0 74 20 61 6e 64 20 74 6f 20 70 72 65 76 65 6e 74  t and to prevent
169f0 20 69 6e 66 69 6e 69 74 65 20 6c 6f 6f 70 73 20   infinite loops 
16a00 69 66 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f  if the event loo
16a10 70 20 69 73 20 72 65 65 6e 74 65 72 65 64 0a 69  p is reentered.i
16a20 6e 20 74 68 65 20 65 72 72 6f 72 20 68 61 6e 64  n the error hand
16a30 6c 65 72 2e 20 28 4a 4c 29 0a 0a 35 2f 33 31 2f  ler. (JL)..5/31/
16a40 39 36 20 28 62 75 67 20 66 69 78 29 20 43 68 61  96 (bug fix) Cha
16a50 6e 6e 65 6c 73 20 6e 6f 77 20 77 69 6c 6c 20 67  nnels now will g
16a60 65 74 20 70 72 6f 70 65 72 6c 79 20 66 6c 75 73  et properly flus
16a70 68 65 64 20 6f 6e 20 65 78 69 74 2e 20 28 4a 4c  hed on exit. (JL
16a80 29 0a 0a 36 2f 35 2f 39 36 20 28 62 75 67 20 66  )..6/5/96 (bug f
16a90 69 78 29 20 43 68 61 6e 67 65 64 20 54 63 6c 5f  ix) Changed Tcl_
16aa0 43 6b 61 6c 6c 6f 63 2c 20 54 63 6c 5f 43 6b 66  Ckalloc, Tcl_Ckf
16ab0 72 65 65 2c 20 61 6e 64 20 54 63 6c 5f 43 6b 72  ree, and Tcl_Ckr
16ac0 65 61 6c 6c 6f 63 20 74 6f 0a 54 63 6c 5f 41 6c  ealloc to.Tcl_Al
16ad0 6c 6f 63 2c 20 54 63 6c 5f 46 72 65 65 2c 20 61  loc, Tcl_Free, a
16ae0 6e 64 20 54 63 6c 5f 52 65 61 6c 6c 6f 63 2e 20  nd Tcl_Realloc. 
16af0 20 41 64 64 65 64 20 64 6f 63 75 6d 65 6e 74 61   Added documenta
16b00 74 69 6f 6e 20 66 6f 72 20 74 68 65 73 65 0a 72  tion for these.r
16b10 6f 75 74 69 6e 65 73 20 6e 6f 77 20 74 68 61 74  outines now that
16b20 20 74 68 65 79 20 61 72 65 20 6f 66 66 69 63 69   they are offici
16b30 61 6c 6c 79 20 73 75 70 70 6f 72 74 65 64 2e 20  ally supported. 
16b40 20 45 78 74 65 6e 73 69 6f 6e 20 77 72 69 74 65   Extension write
16b50 72 73 0a 73 68 6f 75 6c 64 20 75 73 65 20 74 68  rs.should use th
16b60 65 73 65 20 72 6f 75 74 69 6e 65 73 20 69 6e 73  ese routines ins
16b70 74 65 61 64 20 6f 66 20 66 72 65 65 28 29 20 61  tead of free() a
16b80 6e 64 20 6d 61 6c 6c 6f 63 28 29 2e 20 28 53 53  nd malloc(). (SS
16b90 29 0a 0a 36 2f 31 30 2f 39 36 20 28 62 75 67 20  )..6/10/96 (bug 
16ba0 66 69 78 29 20 43 68 61 6e 67 65 73 20 74 68 65  fix) Changes the
16bb0 20 54 63 6c 20 63 6c 6f 73 65 20 63 6f 6d 6d 61   Tcl close comma
16bc0 6e 64 20 73 6f 20 74 68 61 74 20 69 74 20 6e 6f  nd so that it no
16bd0 20 6c 6f 6e 67 65 72 0a 77 61 69 74 73 20 6f 6e   longer.waits on
16be0 20 6e 6f 6e 62 6c 6f 63 6b 69 6e 67 20 70 69 70   nonblocking pip
16bf0 65 73 20 66 6f 72 20 74 68 65 20 70 69 70 65 64  es for the piped
16c00 20 70 72 6f 63 65 73 73 65 73 20 74 6f 20 65 78   processes to ex
16c10 69 74 3b 20 69 6e 73 74 65 61 64 20 69 74 0a 72  it; instead it.r
16c20 65 61 70 73 20 74 68 65 6d 20 69 6e 20 74 68 65  eaps them in the
16c30 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 28 4a 4c   background. (JL
16c40 29 0a 0a 36 2f 31 31 2f 39 36 20 28 62 75 67 20  )..6/11/96 (bug 
16c50 66 69 78 29 20 49 6e 63 72 65 61 73 65 64 20 74  fix) Increased t
16c60 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65  he length of the
16c70 20 6c 69 73 74 65 6e 20 71 75 65 75 65 20 66 6f   listen queue fo
16c80 72 20 73 65 72 76 65 72 0a 73 6f 63 6b 65 74 73  r server.sockets
16c90 20 6f 6e 20 55 6e 69 78 20 66 72 6f 6d 20 35 20   on Unix from 5 
16ca0 74 6f 20 31 30 30 2e 20 53 6f 6d 65 20 4f 53 65  to 100. Some OSe
16cb0 73 20 77 69 6c 6c 20 64 69 73 72 65 67 61 72 64  s will disregard
16cc0 20 74 68 69 73 20 61 6e 64 20 72 65 73 65 74 20   this and reset 
16cd0 69 74 0a 74 6f 20 35 2c 20 62 75 74 20 77 65 20  it.to 5, but we 
16ce0 73 68 6f 75 6c 64 20 74 72 79 20 74 6f 20 67 65  should try to ge
16cf0 74 20 61 73 20 6c 6f 6e 67 20 61 20 71 75 65 75  t as long a queu
16d00 65 20 61 73 20 77 65 20 63 61 6e 2c 20 66 6f 72  e as we can, for
16d10 20 70 65 72 66 6f 72 6d 61 6e 63 65 0a 72 65 61   performance.rea
16d20 73 6f 6e 73 2e 20 28 4a 4c 29 0a 0a 36 2f 31 31  sons. (JL)..6/11
16d30 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
16d40 78 65 64 20 77 69 6e 64 6f 77 73 20 73 6f 63 6b  xed windows sock
16d50 65 74 73 20 62 75 67 20 74 68 61 74 20 63 61 75  ets bug that cau
16d60 73 65 64 20 61 20 63 61 73 63 61 64 65 20 6f 66  sed a cascade of
16d70 20 65 76 65 6e 74 73 0a 69 66 20 74 68 65 20 66   events.if the f
16d80 69 6c 65 65 76 65 6e 74 20 73 63 72 69 70 74 20  ileevent script 
16d90 72 65 61 64 20 6c 65 73 73 20 74 68 61 6e 20 77  read less than w
16da0 61 73 20 61 76 61 69 6c 61 62 6c 65 2e 20 4e 6f  as available. No
16db0 77 20 72 65 61 64 69 6e 67 20 6c 65 73 73 20 74  w reading less t
16dc0 68 61 6e 0a 69 73 20 61 76 61 69 6c 61 62 6c 65  han.is available
16dd0 20 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65 20   does not cause 
16de0 61 20 66 6c 6f 6f 64 20 6f 66 20 54 63 6c 20 65  a flood of Tcl e
16df0 76 65 6e 74 73 2e 20 28 4a 4c 2c 20 53 53 29 0a  vents. (JL, SS).
16e00 0a 36 2f 31 31 2f 39 36 20 28 62 75 67 20 66 69  .6/11/96 (bug fi
16e10 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  x) Fixed bug in 
16e20 62 61 63 6b 67 72 6f 75 6e 64 20 66 6c 75 73 68  background flush
16e30 69 6e 67 20 6f 6e 20 63 6c 6f 73 65 64 20 63 68  ing on closed ch
16e40 61 6e 6e 65 6c 73 20 74 68 61 74 0a 77 6f 75 6c  annels that.woul
16e50 64 20 70 72 65 76 65 6e 74 20 74 68 65 20 6c 61  d prevent the la
16e60 73 74 20 62 75 66 66 65 72 20 66 72 6f 6d 20 67  st buffer from g
16e70 65 74 74 69 6e 67 20 66 6c 75 73 68 65 64 2e 20  etting flushed. 
16e80 28 4a 4c 29 0a 0a 36 2f 31 33 2f 39 36 20 28 62  (JL)..6/13/96 (b
16e90 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
16ea0 67 20 69 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63  g in Windows soc
16eb0 6b 65 74 73 20 74 68 61 74 20 63 61 75 73 65 64  kets that caused
16ec0 20 61 20 63 6f 72 65 20 64 75 6d 70 20 69 66 0a   a core dump if.
16ed0 61 20 44 4c 4c 20 6c 69 6e 6b 65 64 20 77 69 74  a DLL linked wit
16ee0 68 20 74 63 6c 2e 64 6c 6c 20 61 6e 64 20 72 65  h tcl.dll and re
16ef0 66 65 72 72 65 64 20 74 6f 20 65 2e 67 2e 20 6e  ferred to e.g. n
16f00 74 6f 68 73 28 29 20 77 69 74 68 6f 75 74 20 6f  tohs() without o
16f10 70 65 6e 69 6e 67 20 61 0a 54 63 6c 20 73 6f 63  pening a.Tcl soc
16f20 6b 65 74 2e 20 54 68 65 20 70 72 6f 62 6c 65 6d  ket. The problem
16f30 20 77 61 73 20 74 68 61 74 20 74 68 65 20 69 6e   was that the in
16f40 64 69 72 65 63 74 69 6f 6e 20 74 61 62 6c 65 20  direction table 
16f50 77 61 73 20 6e 6f 74 20 62 65 69 6e 67 0a 69 6e  was not being.in
16f60 69 74 69 61 6c 69 7a 65 64 2e 20 28 4a 4c 29 0a  itialized. (JL).
16f70 0a 36 2f 31 33 2f 39 36 20 28 62 75 67 20 66 69  .6/13/96 (bug fi
16f80 78 29 20 46 69 78 65 64 20 4f 53 20 6c 65 76 65  x) Fixed OS leve
16f90 6c 20 72 65 73 6f 75 72 63 65 20 6c 65 61 6b 20  l resource leak 
16fa0 74 68 61 74 20 77 6f 75 6c 64 20 6f 63 63 75 72  that would occur
16fb0 20 77 68 65 6e 20 61 0a 54 63 6c 20 63 68 61 6e   when a.Tcl chan
16fc0 6e 65 6c 20 77 61 73 20 73 74 69 6c 6c 20 72 65  nel was still re
16fd0 67 69 73 74 65 72 65 64 20 69 6e 20 73 6f 6d 65  gistered in some
16fe0 20 69 6e 74 65 72 70 72 65 74 65 72 20 77 68 65   interpreter whe
16ff0 6e 20 74 68 65 20 70 72 6f 63 65 73 73 0a 65 78  n the process.ex
17000 69 74 73 2e 20 50 72 65 76 69 6f 75 73 6c 79 20  its. Previously 
17010 74 68 65 20 63 68 61 6e 6e 65 6c 20 77 61 73 20  the channel was 
17020 6e 6f 74 20 62 65 69 6e 67 20 63 6c 6f 73 65 64  not being closed
17030 20 61 6e 64 20 74 68 65 20 4f 53 20 6c 65 76 65   and the OS leve
17040 6c 20 68 61 6e 64 6c 65 73 0a 77 65 72 65 20 6e  l handles.were n
17050 6f 74 20 62 65 69 6e 67 20 72 65 6c 65 61 73 65  ot being release
17060 64 3b 20 74 68 65 20 6f 75 74 70 75 74 20 77 61  d; the output wa
17070 73 20 62 65 69 6e 67 20 66 6c 75 73 68 65 64 20  s being flushed 
17080 62 75 74 20 74 68 65 20 64 65 76 69 63 65 20 77  but the device w
17090 61 73 0a 6e 6f 74 20 62 65 69 6e 67 20 63 6c 6f  as.not being clo
170a0 73 65 64 2e 20 4e 6f 77 20 74 68 65 20 64 65 76  sed. Now the dev
170b0 69 63 65 20 69 73 20 70 72 6f 70 65 72 6c 79 20  ice is properly 
170c0 63 6c 6f 73 65 64 2e 20 54 68 69 73 20 77 61 73  closed. This was
170d0 20 6f 6e 6c 79 20 61 0a 70 72 6f 62 6c 65 6d 20   only a.problem 
170e0 6f 6e 20 57 69 6e 33 2e 31 20 61 6e 64 20 4d 61  on Win3.1 and Ma
170f0 63 4f 53 2e 20 28 4a 4c 2c 20 53 53 29 0a 0a 36  cOS. (JL, SS)..6
17100 2f 32 38 2f 39 36 20 28 62 75 67 20 66 69 78 29  /28/96 (bug fix)
17110 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
17120 20 74 72 61 6e 73 69 65 6e 74 20 65 72 72 6f 72   transient error
17130 73 20 77 65 72 65 20 6c 65 61 76 69 6e 67 20 61  s were leaving a
17140 6e 20 65 72 72 6f 72 0a 63 6f 64 65 20 61 72 6f  n error.code aro
17150 75 6e 64 2c 20 73 6f 20 74 68 61 74 20 69 74 20  und, so that it 
17160 77 6f 75 6c 64 20 65 72 72 6f 6e 65 6f 75 73 6c  would erroneousl
17170 79 20 67 65 74 20 72 65 70 6f 72 74 65 64 20 6c  y get reported l
17180 61 74 65 72 2e 20 54 68 69 73 20 62 75 67 20 77  ater. This bug w
17190 61 73 0a 65 78 65 72 63 69 73 65 64 20 69 6e 74  as.exercised int
171a0 65 72 6d 69 74 74 65 6e 74 6c 79 20 62 79 20 63  ermittently by c
171b0 6c 6f 73 69 6e 67 20 61 20 63 68 61 6e 6e 65 6c  losing a channel
171c0 20 74 6f 20 61 20 66 69 6c 65 20 6f 6e 20 61 20   to a file on a 
171d0 76 65 72 79 20 6c 6f 61 64 65 64 0a 4e 46 53 20  very loaded.NFS 
171e0 73 65 72 76 65 72 2c 20 6f 72 20 74 6f 20 61 20  server, or to a 
171f0 73 6f 63 6b 65 74 20 77 68 6f 73 65 20 6f 74 68  socket whose oth
17200 65 72 20 65 6e 64 20 62 6c 6f 63 6b 65 64 2e 20  er end blocked. 
17210 28 4a 4c 2c 20 42 57 29 0a 0a 37 2f 33 2f 39 36  (JL, BW)..7/3/96
17220 20 28 62 75 67 20 66 69 78 29 20 46 69 6c 65 65   (bug fix) Filee
17230 76 65 6e 74 73 20 64 65 63 6c 61 72 65 64 20 69  vents declared i
17240 6e 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72  n an interpreter
17250 20 61 72 65 20 6e 6f 77 20 64 65 6c 65 74 65 64   are now deleted
17260 0a 77 68 65 6e 20 74 68 65 20 63 68 61 6e 6e 65  .when the channe
17270 6c 20 69 73 20 63 6c 6f 73 65 64 20 69 6e 20 74  l is closed in t
17280 68 61 74 20 69 6e 74 65 72 70 72 65 74 65 72 2e  hat interpreter.
17290 20 42 65 66 6f 72 65 20 74 68 69 73 20 66 69 78   Before this fix
172a0 2c 20 74 68 65 0a 66 69 6c 65 65 76 65 6e 74 20  , the.fileevent 
172b0 77 6f 75 6c 64 20 68 61 6e 67 20 61 72 6f 75 6e  would hang aroun
172c0 64 20 75 6e 74 69 6c 20 74 68 65 20 63 68 61 6e  d until the chan
172d0 6e 65 6c 20 69 73 20 63 6f 6d 70 6c 65 74 65 6c  nel is completel
172e0 79 20 63 6c 6f 73 65 64 2c 20 61 6e 64 0a 77 6f  y closed, and.wo
172f0 75 6c 64 20 63 61 75 73 65 20 65 72 72 6f 72 73  uld cause errors
17300 20 69 66 20 65 76 65 6e 74 73 20 68 61 70 70 65   if events happe
17310 6e 65 64 20 62 65 66 6f 72 65 20 74 68 65 20 63  ned before the c
17320 68 61 6e 6e 65 6c 20 77 61 73 20 63 6c 6f 73 65  hannel was close
17330 64 2e 20 54 68 69 73 0a 63 6f 75 6c 64 20 68 61  d. This.could ha
17340 70 70 65 6e 20 69 6e 20 74 77 6f 20 63 61 73 65  ppen in two case
17350 73 3a 20 66 69 72 73 74 20 69 66 20 74 68 65 20  s: first if the 
17360 63 68 61 6e 6e 65 6c 20 69 73 20 73 68 61 72 65  channel is share
17370 64 20 62 65 74 77 65 65 6e 20 73 65 76 65 72 61  d between severa
17380 6c 0a 69 6e 74 65 72 70 72 65 74 65 72 73 2c 20  l.interpreters, 
17390 61 6e 64 20 73 65 63 6f 6e 64 20 69 66 20 61 6e  and second if an
173a0 20 61 73 79 6e 63 20 66 6c 75 73 68 20 69 73 20   async flush is 
173b0 69 6e 20 70 72 6f 67 72 65 73 73 20 74 68 61 74  in progress that
173c0 20 70 72 65 76 65 6e 74 73 20 74 68 65 0a 63 68   prevents the.ch
173d0 61 6e 6e 65 6c 20 66 72 6f 6d 20 62 65 69 6e 67  annel from being
173e0 20 63 6c 6f 73 65 64 20 75 6e 74 69 6c 20 74 68   closed until th
173f0 65 20 66 6c 75 73 68 20 66 69 6e 69 73 68 65 73  e flush finishes
17400 2e 20 28 4a 4c 29 0a 0a 37 2f 31 30 2f 39 36 20  . (JL)..7/10/96 
17410 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
17420 62 75 67 73 20 69 6e 20 62 6f 74 68 20 22 6c 72  bugs in both "lr
17430 61 6e 67 65 22 20 61 6e 64 20 22 6c 72 65 70 6c  ange" and "lrepl
17440 61 63 65 22 20 63 6f 6d 6d 61 6e 64 73 0a 77 68  ace" commands.wh
17450 65 72 65 20 74 6f 6f 20 6d 75 63 68 20 77 68 69  ere too much whi
17460 74 65 20 73 70 61 63 65 20 77 61 73 20 62 65 69  te space was bei
17470 6e 67 20 72 65 6d 6f 76 65 64 2e 20 46 6f 72 20  ng removed. For 
17480 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6d  example, the com
17490 6d 61 6e 64 0a 09 09 6c 72 65 70 6c 61 63 65 20  mand...lreplace 
174a0 7b 5c 7d 5c 20 20 20 20 20 68 65 6c 6c 6f 7d 20  {\}\     hello} 
174b0 65 6e 64 20 65 6e 64 0a 77 61 73 20 72 65 74 75  end end.was retu
174c0 72 6e 69 6e 67 20 22 5c 7d 5c 22 2c 20 6c 6f 73  rning "\}\", los
174d0 69 6e 67 20 74 68 65 20 73 69 67 6e 69 66 69 63  ing the signific
174e0 61 6e 74 20 73 70 61 63 65 20 69 6e 20 74 68 65  ant space in the
174f0 20 66 69 72 73 74 20 6c 69 73 74 0a 65 6c 65 6d   first list.elem
17500 65 6e 74 20 61 6e 64 20 63 6f 72 72 75 70 74 69  ent and corrupti
17510 6e 67 20 74 68 65 20 6c 69 73 74 2e 20 28 4a 4f  ng the list. (JO
17520 29 0a 0a 37 2f 32 30 2f 39 36 20 28 62 75 67 20  )..7/20/96 (bug 
17530 66 69 78 29 20 54 68 65 20 70 72 6f 63 65 64 75  fix) The procedu
17540 72 65 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 64  re pkg_mkIndex d
17550 69 64 6e 27 74 20 77 6f 72 6b 20 70 72 6f 70 65  idn't work prope
17560 72 6c 79 20 66 6f 72 0a 65 78 74 65 6e 73 69 6f  rly for.extensio
17570 6e 73 20 74 68 61 74 20 64 65 70 65 6e 64 20 6f  ns that depend o
17580 6e 20 54 6b 2c 20 62 65 63 61 75 73 65 20 69 74  n Tk, because it
17590 20 64 69 64 6e 27 74 20 6c 6f 61 64 20 54 6b 20   didn't load Tk 
175a0 69 6e 74 6f 20 74 68 65 20 63 68 69 6c 64 0a 69  into the child.i
175b0 6e 74 65 72 70 72 65 74 65 72 20 62 65 66 6f 72  nterpreter befor
175c0 65 20 6c 6f 61 64 69 6e 67 20 74 68 65 20 65 78  e loading the ex
175d0 74 65 6e 73 69 6f 6e 2e 20 20 4e 6f 77 20 69 74  tension.  Now it
175e0 20 6c 6f 61 64 73 20 54 6b 20 69 66 20 54 6b 20   loads Tk if Tk 
175f0 69 73 0a 70 72 65 73 65 6e 74 20 69 6e 20 74 68  is.present in th
17600 65 20 70 61 72 65 6e 74 2e 20 28 4a 4f 29 0a 0a  e parent. (JO)..
17610 37 2f 32 33 2f 39 36 20 28 62 75 67 20 66 69 78  7/23/96 (bug fix
17620 29 20 41 64 64 65 64 20 63 6f 6d 70 61 74 20 76  ) Added compat v
17630 65 72 73 69 6f 6e 20 6f 66 20 73 74 72 66 74 69  ersion of strfti
17640 6d 65 20 74 6f 20 66 69 78 20 63 72 61 73 68 65  me to fix crashe
17650 73 0a 72 65 73 75 6c 74 69 6e 67 20 66 72 6f 6d  s.resulting from
17660 20 62 61 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74   bad implementat
17670 69 6f 6e 73 20 75 6e 64 65 72 20 57 69 6e 64 6f  ions under Windo
17680 77 73 2e 20 28 53 53 29 0a 0a 37 2f 32 33 2f 39  ws. (SS)..7/23/9
17690 36 20 28 62 75 67 20 66 69 78 29 20 53 74 61 6e  6 (bug fix) Stan
176a0 64 61 72 64 20 69 6d 70 6c 65 6d 65 6e 74 61 74  dard implementat
176b0 69 6f 6e 73 20 6f 66 20 67 6d 74 69 6d 65 28 29  ions of gmtime()
176c0 20 61 6e 64 20 6c 6f 63 61 6c 74 69 6d 65 28 29   and localtime()
176d0 0a 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 20 64  .under Windows d
176e0 69 64 20 6e 6f 74 20 68 61 6e 64 6c 65 20 64 61  id not handle da
176f0 74 65 73 20 62 65 66 6f 72 65 20 31 39 37 30 2c  tes before 1970,
17700 20 73 6f 20 74 68 65 79 20 77 65 72 65 20 72 65   so they were re
17710 70 6c 61 63 65 64 0a 77 69 74 68 20 61 20 72 65  placed.with a re
17720 76 69 73 65 64 20 69 6d 70 6c 65 6d 65 6e 74 61  vised implementa
17730 74 69 6f 6e 2e 20 28 53 53 29 0a 0a 37 2f 32 33  tion. (SS)..7/23
17740 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 54 63  /96 (bug fix) Tc
17750 6c 20 77 6f 75 6c 64 20 63 72 61 73 68 20 6f 6e  l would crash on
17760 20 65 78 69 74 20 75 6e 64 65 72 20 42 6f 72 6c   exit under Borl
17770 61 6e 64 20 35 2e 30 20 62 65 63 61 75 73 65 0a  and 5.0 because.
17780 74 68 65 20 67 6c 6f 62 61 6c 20 65 6e 76 69 72  the global envir
17790 6f 6e 20 70 6f 69 6e 74 65 72 20 77 61 73 20 6c  on pointer was l
177a0 65 66 74 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20  eft pointing to 
177b0 66 72 65 65 64 20 6d 65 6d 6f 72 79 2e 20 28 53  freed memory. (S
177c0 53 29 0a 0a 37 2f 32 39 2f 39 36 20 28 62 75 67  S)..7/29/96 (bug
177d0 20 66 69 78 29 20 46 69 78 65 64 20 6d 65 6d 6f   fix) Fixed memo
177e0 72 79 20 6c 65 61 6b 20 69 6e 20 54 63 6c 5f 4c  ry leak in Tcl_L
177f0 6f 61 64 43 6d 64 20 74 68 61 74 20 63 6f 75 6c  oadCmd that coul
17800 64 20 6f 63 63 75 72 20 69 66 0a 61 20 70 61 63  d occur if.a pac
17810 6b 61 67 65 27 73 20 41 70 70 49 6e 69 74 20 70  kage's AppInit p
17820 72 6f 63 65 64 75 72 65 20 63 61 6c 6c 65 64 20  rocedure called 
17830 54 63 6c 5f 53 74 61 74 69 63 50 61 63 6b 61 67  Tcl_StaticPackag
17840 65 20 74 6f 20 72 65 67 69 73 74 65 72 0a 73 74  e to register.st
17850 61 74 69 63 20 70 61 63 6b 61 67 65 73 2e 20 28  atic packages. (
17860 4a 4f 29 0a 0a 38 2f 31 2f 39 36 20 28 62 75 67  JO)..8/1/96 (bug
17870 20 66 69 78 29 20 46 69 78 65 64 20 61 20 73 65   fix) Fixed a se
17880 72 69 65 73 20 6f 66 20 62 75 67 73 20 69 6e 20  ries of bugs in 
17890 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 73 20  Windows sockets 
178a0 73 6f 20 74 68 61 74 20 61 73 79 6e 63 0a 77 72  so that async.wr
178b0 69 74 65 62 65 68 69 6e 64 20 69 6e 20 74 68 65  itebehind in the
178c0 20 70 72 65 73 65 6e 63 65 20 6f 66 20 72 65 61   presence of rea
178d0 64 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 73  d event handlers
178e0 20 6e 6f 77 20 77 6f 72 6b 73 2c 20 61 6e 64 20   now works, and 
178f0 73 6f 20 74 68 61 74 0a 61 73 79 6e 63 20 77 72  so that.async wr
17900 69 74 65 62 65 68 69 6e 64 20 61 6c 73 6f 20 77  itebehind also w
17910 6f 72 6b 73 20 6f 6e 20 73 6f 63 6b 65 74 73 20  orks on sockets 
17920 66 6f 72 20 77 68 69 63 68 20 61 20 72 65 61 64  for which a read
17930 20 65 76 65 6e 74 20 68 61 6e 64 6c 65 72 20 77   event handler w
17940 61 73 0a 64 65 63 6c 61 72 65 64 20 61 6e 64 20  as.declared and 
17950 77 68 6f 73 65 20 63 68 61 6e 6e 65 6c 73 20 77  whose channels w
17960 65 72 65 20 74 68 65 6e 20 63 6c 6f 73 65 64 20  ere then closed 
17970 62 65 66 6f 72 65 20 74 68 65 20 61 73 79 6e 63  before the async
17980 20 77 72 69 74 65 0a 66 69 6e 69 73 68 65 64 2e   write.finished.
17990 20 54 68 65 20 62 75 67 20 77 61 73 20 72 65 70   The bug was rep
179a0 6f 72 74 65 64 20 62 79 20 4a 6f 68 6e 20 4c 6f  orted by John Lo
179b0 76 65 72 73 6f 20 61 6e 64 20 53 74 65 76 65 6e  verso and Steven
179c0 20 57 61 68 6c 2c 0a 69 6e 64 65 70 65 6e 64 65   Wahl,.independe
179d0 6e 74 6c 79 2c 20 74 65 73 74 20 63 61 73 65 20  ntly, test case 
179e0 73 75 70 70 6c 69 65 64 20 62 79 20 4a 6f 68 6e  supplied by John
179f0 20 4c 6f 76 65 72 73 6f 2e 20 28 4a 4c 29 0a 0a   Loverso. (JL)..
17a00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
17a10 2d 20 52 65 6c 65 61 73 65 64 20 70 61 74 63 68  - Released patch
17a20 20 37 2e 35 70 31 2c 20 38 2f 32 2f 39 36 20 2d   7.5p1, 8/2/96 -
17a30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
17a40 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 38 2f 39 36 20 28  ------..5/8/96 (
17a50 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
17a60 65 64 20 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65  ed Tcl_GetChanne
17a70 6c 4d 6f 64 65 20 43 20 41 50 49 20 66 6f 72 20  lMode C API for 
17a80 72 65 74 72 69 65 76 69 6e 67 20 77 68 65 74 68  retrieving wheth
17a90 65 72 0a 61 20 63 68 61 6e 6e 65 6c 20 69 73 20  er.a channel is 
17aa0 6f 70 65 6e 20 66 6f 72 20 72 65 61 64 69 6e 67  open for reading
17ab0 20 61 6e 64 20 77 72 69 74 69 6e 67 2e 20 28 4a   and writing. (J
17ac0 4c 29 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49 20  L)..5/8/96 (API 
17ad0 63 68 61 6e 67 65 73 29 20 52 65 76 69 73 65 64  changes) Revised
17ae0 20 43 20 41 50 49 73 20 66 6f 72 20 63 68 61 6e   C APIs for chan
17af0 6e 65 6c 20 64 72 69 76 65 72 73 3a 0a 20 20 20  nel drivers:.   
17b00 20 2d 20 52 65 6d 6f 76 65 64 20 61 6c 6c 20 54   - Removed all T
17b10 63 6c 5f 46 69 6c 65 73 20 66 72 6f 6d 20 63 68  cl_Files from ch
17b20 61 6e 6e 65 6c 20 64 72 69 76 65 72 20 69 6e 74  annel driver int
17b30 65 72 66 61 63 65 3b 20 79 6f 75 20 63 61 6e 20  erface; you can 
17b40 6e 6f 77 20 68 61 76 65 0a 20 20 20 20 20 20 63  now have.      c
17b50 68 61 6e 6e 65 6c 73 20 74 68 61 74 20 61 72 65  hannels that are
17b60 20 6e 6f 74 20 62 61 73 65 64 20 6f 6e 20 54 63   not based on Tc
17b70 6c 5f 46 69 6c 65 73 2e 0a 20 20 20 20 2d 20 41  l_Files..    - A
17b80 64 64 65 64 20 63 68 61 6e 6e 65 6c 52 65 61 64  dded channelRead
17b90 79 50 72 6f 63 20 61 6e 64 20 77 61 74 63 68 43  yProc and watchC
17ba0 68 61 6e 6e 65 6c 50 72 6f 63 20 70 72 6f 63 65  hannelProc proce
17bb0 64 75 72 65 73 20 74 6f 20 69 6e 74 65 72 66 61  dures to interfa
17bc0 63 65 3b 0a 20 20 20 20 20 20 74 68 65 73 65 20  ce;.      these 
17bd0 61 72 65 20 75 73 65 64 20 74 6f 20 69 6d 70 6c  are used to impl
17be0 65 6d 65 6e 74 20 65 76 65 6e 74 20 6e 6f 74 69  ement event noti
17bf0 66 69 63 61 74 69 6f 6e 20 66 6f 72 20 63 68 61  fication for cha
17c00 6e 6e 65 6c 73 2e 0a 20 20 20 20 2d 20 41 64 64  nnels..    - Add
17c10 65 64 20 67 65 74 46 69 6c 65 50 72 6f 63 20 74  ed getFileProc t
17c20 6f 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  o channel driver
17c30 2c 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 67  , to allow the g
17c40 65 6e 65 72 69 63 20 49 4f 20 63 6f 64 65 0a 20  eneric IO code. 
17c50 20 20 20 20 20 74 6f 20 72 65 74 72 69 65 76 65       to retrieve
17c60 20 61 20 54 63 6c 5f 46 69 6c 65 20 66 72 6f 6d   a Tcl_File from
17c70 20 61 20 63 68 61 6e 6e 65 6c 20 28 70 72 65 73   a channel (pres
17c80 75 6d 61 62 6c 79 20 69 66 20 74 68 65 20 63 68  umably if the ch
17c90 61 6e 6e 65 6c 0a 20 20 20 20 20 20 75 73 65 73  annel.      uses
17ca0 20 54 63 6c 5f 46 69 6c 65 73 20 74 68 65 79 20   Tcl_Files they 
17cb0 77 69 6c 6c 20 62 65 20 73 74 6f 72 65 64 20 69  will be stored i
17cc0 6e 73 69 64 65 20 69 74 73 20 69 6e 73 74 61 6e  nside its instan
17cd0 63 65 44 61 74 61 29 2e 20 28 4a 4c 29 0a 2a 2a  ceData). (JL).**
17ce0 2a 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  * INCOMPATIBILIT
17cf0 59 20 77 69 74 68 20 54 63 6c 20 37 2e 35 20 2a  Y with Tcl 7.5 *
17d00 2a 2a 0a 0a 35 2f 38 2f 39 36 20 28 41 50 49 20  **..5/8/96 (API 
17d10 63 68 61 6e 67 65 29 20 54 68 65 20 54 63 6c 5f  change) The Tcl_
17d20 43 72 65 61 74 65 43 68 61 6e 6e 65 6c 20 43 20  CreateChannel C 
17d30 41 50 49 20 77 61 73 20 6d 6f 64 69 66 69 65 64  API was modified
17d40 20 74 6f 20 6e 6f 74 20 74 61 6b 65 0a 54 63 6c   to not take.Tcl
17d50 5f 46 69 6c 65 20 61 72 67 75 6d 65 6e 74 73 2c  _File arguments,
17d60 20 61 6e 64 20 69 6e 73 74 65 61 64 20 74 6f 20   and instead to 
17d70 74 61 6b 65 20 61 20 6d 61 73 6b 20 73 70 65 63  take a mask spec
17d80 69 66 79 69 6e 67 20 77 68 65 74 68 65 72 20 74  ifying whether t
17d90 68 65 0a 63 68 61 6e 6e 65 6c 20 69 73 20 72 65  he.channel is re
17da0 61 64 61 62 6c 65 20 61 6e 64 2f 6f 72 20 77 72  adable and/or wr
17db0 69 74 61 62 6c 65 2e 20 28 4a 4c 29 0a 2a 2a 2a  itable. (JL).***
17dc0 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
17dd0 20 77 69 74 68 20 54 63 6c 20 37 2e 35 20 2a 2a   with Tcl 7.5 **
17de0 2a 0a 0a 36 2f 33 2f 39 36 20 28 62 75 67 20 66  *..6/3/96 (bug f
17df0 69 78 29 20 4d 61 64 65 20 54 63 6c 5f 53 65 74  ix) Made Tcl_Set
17e00 56 61 72 32 20 72 6f 62 75 73 74 20 61 67 61 69  Var2 robust agai
17e10 6e 73 74 20 74 68 65 20 63 61 73 65 20 77 68 65  nst the case whe
17e20 72 65 20 74 68 65 20 76 61 6c 75 65 0a 6f 66 20  re the value.of 
17e30 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20  the variable is 
17e40 61 20 4e 55 4c 4c 20 70 6f 69 6e 74 65 72 20 69  a NULL pointer i
17e50 6e 73 74 65 61 64 20 6f 66 20 22 22 2e 20 28 4a  nstead of "". (J
17e60 4c 29 0a 0a 36 2f 31 37 2f 39 36 20 28 62 75 67  L)..6/17/96 (bug
17e70 20 66 69 78 29 20 46 69 78 65 64 20 22 72 65 61   fix) Fixed "rea
17e80 64 69 6e 67 20 75 6e 69 6e 69 74 69 61 6c 69 7a  ding uninitializ
17e90 65 64 20 6d 65 6d 6f 72 79 22 20 65 72 72 6f 72  ed memory" error
17ea0 20 72 65 70 6f 72 74 65 64 20 62 79 0a 50 75 72   reported by.Pur
17eb0 69 66 79 2c 20 69 6e 20 54 63 6c 5f 50 72 65 73  ify, in Tcl_Pres
17ec0 65 72 76 65 2f 54 63 6c 5f 52 65 6c 65 61 73 65  erve/Tcl_Release
17ed0 2e 20 28 4a 4c 29 0a 0a 38 2f 39 2f 39 36 20 28  . (JL)..8/9/96 (
17ee0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
17ef0 75 67 20 69 6e 20 69 6e 69 74 2e 74 63 6c 20 74  ug in init.tcl t
17f00 68 61 74 20 63 61 75 73 65 64 20 69 6e 63 6f 72  hat caused incor
17f10 72 65 63 74 20 65 72 72 6f 72 20 6d 65 73 73 61  rect error messa
17f20 67 65 0a 69 66 20 74 68 65 20 61 63 74 20 6f 66  ge.if the act of
17f30 20 61 75 74 6f 6c 6f 61 64 69 6e 67 20 61 20 70   autoloading a p
17f40 72 6f 63 65 64 75 72 65 20 63 61 75 73 65 64 20  rocedure caused 
17f50 74 68 65 20 70 72 6f 63 65 64 75 72 65 20 74 6f  the procedure to
17f60 20 62 65 20 69 6e 76 6f 6b 65 64 0a 61 67 61 69   be invoked.agai
17f70 6e 2e 20 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36 20  n. (JO)..8/9/96 
17f80 28 62 75 67 20 66 69 78 29 20 43 6f 6e 66 69 67  (bug fix) Config
17f90 75 72 65 20 73 63 72 69 70 74 20 70 72 6f 64 75  ure script produ
17fa0 63 65 64 20 62 61 64 20 6c 69 62 72 61 72 79 20  ced bad library 
17fb0 6e 61 6d 65 73 20 61 6e 64 20 65 78 74 65 6e 73  names and extens
17fc0 69 6f 6e 73 0a 75 6e 64 65 72 20 53 75 6e 4f 53  ions.under SunOS
17fd0 20 61 6e 64 20 61 20 66 65 77 20 6f 74 68 65 72   and a few other
17fe0 20 70 6c 61 74 66 6f 72 6d 73 20 69 66 20 74 68   platforms if th
17ff0 65 20 2d 2d 64 69 73 61 62 6c 65 2d 6c 6f 61 64  e --disable-load
18000 20 73 77 69 74 63 68 20 77 61 73 20 75 73 65 64   switch was used
18010 2e 0a 28 4a 4f 29 0a 0a 38 2f 39 2f 39 36 20 28  ..(JO)..8/9/96 (
18020 62 75 67 20 66 69 78 29 20 54 63 6c 5f 55 70 64  bug fix) Tcl_Upd
18030 61 74 65 4c 69 6e 6b 65 64 56 61 72 20 67 65 6e  ateLinkedVar gen
18040 65 72 61 74 65 64 20 61 6e 20 65 72 72 6f 72 20  erated an error 
18050 69 66 20 74 68 65 20 76 61 72 69 61 62 6c 65 0a  if the variable.
18060 62 65 69 6e 67 20 75 70 64 61 74 65 64 20 77 61  being updated wa
18070 73 20 72 65 61 64 2d 6f 6e 6c 79 2e 20 28 4a 4f  s read-only. (JO
18080 29 0a 0a 38 2f 31 34 2f 39 36 20 28 62 75 67 20  )..8/14/96 (bug 
18090 66 69 78 29 20 54 68 65 20 6d 61 63 69 6e 74 6f  fix) The macinto
180a0 73 68 20 6e 6f 77 20 73 75 70 70 6f 72 74 73 20  sh now supports 
180b0 73 79 6e 63 68 72 6f 6e 6f 75 73 20 73 6f 63 6b  synchronous sock
180c0 65 74 0a 63 6f 6e 6e 65 63 74 69 6f 6e 73 2e 20  et.connections. 
180d0 20 4f 74 68 65 72 20 6d 69 6e 6f 72 20 62 75 67   Other minor bug
180e0 73 20 77 65 72 65 20 61 6c 73 6f 20 66 69 78 65  s were also fixe
180f0 64 2e 20 28 52 4a 29 0a 0a 38 2f 31 35 2f 39 36  d. (RJ)..8/15/96
18100 20 28 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20   (configuration 
18110 69 6d 70 72 6f 76 65 6d 65 6e 74 29 20 43 68 61  improvement) Cha
18120 6e 67 65 64 20 74 68 65 20 66 69 6c 65 20 70 61  nged the file pa
18130 74 63 68 6c 65 76 65 6c 2e 68 0a 74 6f 20 62 65  tchlevel.h.to be
18140 20 74 63 6c 50 61 74 63 68 2e 68 2e 20 20 54 68   tclPatch.h.  Th
18150 69 73 20 61 76 6f 69 64 73 20 63 6f 6e 66 6c 69  is avoids confli
18160 63 74 20 77 69 74 68 20 74 68 65 20 54 6b 20 66  ct with the Tk f
18170 69 6c 65 20 61 6e 64 20 69 73 20 6e 6f 77 0a 69  ile and is now.i
18180 6e 20 38 2e 33 20 66 6f 72 6d 61 74 20 6f 6e 20  n 8.3 format on 
18190 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74  the Windows plat
181a0 66 6f 72 6d 2e 20 28 52 4a 29 0a 0a 38 2f 32 30  form. (RJ)..8/20
181b0 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69  /96 (bug fix) Fi
181c0 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69 6e  xed core dump in
181d0 20 69 6e 74 65 72 70 20 61 6c 69 61 73 20 63 6f   interp alias co
181e0 6d 6d 61 6e 64 20 66 6f 72 20 69 6e 74 65 72 70  mmand for interp
181f0 72 65 74 65 72 73 0a 63 72 65 61 74 65 64 20 77  reters.created w
18200 69 74 68 20 54 63 6c 5f 43 72 65 61 74 65 49 6e  ith Tcl_CreateIn
18210 74 65 72 70 20 28 61 73 20 6f 70 70 6f 73 65 64  terp (as opposed
18220 20 74 6f 20 77 69 74 68 20 54 63 6c 5f 43 72 65   to with Tcl_Cre
18230 61 74 65 53 6c 61 76 65 29 2e 20 28 4a 4c 29 0a  ateSlave). (JL).
18240 0a 38 2f 32 30 2f 39 36 20 28 62 75 67 20 66 69  .8/20/96 (bug fi
18250 78 29 20 4e 6f 20 6c 6f 6e 67 65 72 20 6d 61 73  x) No longer mas
18260 6b 69 6e 67 20 45 43 4f 4e 4e 52 45 53 45 54 20  king ECONNRESET 
18270 6f 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65  on Windows socke
18280 74 73 20 73 6f 0a 74 68 61 74 20 74 68 65 20 68  ts so.that the h
18290 69 67 68 65 72 20 6c 65 76 65 6c 20 6f 66 20 74  igher level of t
182a0 68 65 20 49 4f 20 6d 65 63 68 61 6e 69 73 6d 20  he IO mechanism 
182b0 73 65 65 73 20 74 68 65 20 65 72 72 6f 72 20 69  sees the error i
182c0 6e 73 74 65 61 64 20 6f 66 0a 65 6e 74 65 72 69  nstead of.enteri
182d0 6e 67 20 61 6e 20 69 6e 66 69 6e 69 74 65 20 6c  ng an infinite l
182e0 6f 6f 70 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30 2f  oop. (JL)..8/20/
182f0 39 36 20 28 62 75 67 20 66 69 78 29 20 44 65 73  96 (bug fix) Des
18300 74 72 6f 79 69 6e 67 20 74 68 65 20 6c 61 73 74  troying the last
18310 20 69 6e 74 65 72 70 72 65 74 65 72 20 6e 6f 20   interpreter no 
18320 6c 6f 6e 67 65 72 20 63 6c 6f 73 65 73 20 74 68  longer closes th
18330 65 0a 73 74 61 6e 64 61 72 64 20 63 68 61 6e 6e  e.standard chann
18340 65 6c 73 2e 20 28 4a 4c 29 0a 0a 38 2f 32 30 2f  els. (JL)..8/20/
18350 39 36 20 28 62 75 67 20 66 69 78 29 20 43 6c 6f  96 (bug fix) Clo
18360 73 69 6e 67 20 6f 6e 65 20 6f 66 20 74 68 65 20  sing one of the 
18370 73 74 64 69 6e 2c 20 73 74 64 6f 75 74 20 6f 72  stdin, stdout or
18380 20 73 74 64 65 72 72 20 63 68 61 6e 6e 65 6c 73   stderr channels
18390 20 61 6e 64 0a 74 68 65 6e 20 6f 70 65 6e 69 6e   and.then openin
183a0 67 20 61 20 6e 65 77 20 63 68 61 6e 6e 65 6c 20  g a new channel 
183b0 6e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20 61 73  now correctly as
183c0 73 69 67 6e 73 20 74 68 65 20 6e 65 77 20 63 68  signs the new ch
183d0 61 6e 6e 65 6c 20 61 73 20 74 68 65 0a 73 74 61  annel as the.sta
183e0 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 20 74 68  ndard channel th
183f0 61 74 20 77 61 73 20 63 6c 6f 73 65 64 2e 20 28  at was closed. (
18400 4a 4c 29 0a 0a 38 2f 32 30 2f 39 36 20 28 62 75  JL)..8/20/96 (bu
18410 67 20 66 69 78 29 20 41 64 64 65 64 20 63 6f 64  g fix) Added cod
18420 65 20 74 6f 20 75 6e 69 78 2f 74 63 6c 55 6e 69  e to unix/tclUni
18430 78 43 68 61 6e 2e 63 20 66 6f 72 20 75 73 69 6e  xChan.c for usin
18440 67 20 69 6f 63 74 6c 20 77 69 74 68 0a 46 49 4f  g ioctl with.FIO
18450 4e 42 49 4f 20 69 6e 73 74 65 61 64 20 6f 66 20  NBIO instead of 
18460 66 63 6e 74 6c 20 77 69 74 68 20 4f 5f 4e 4f 4e  fcntl with O_NON
18470 42 4c 4f 43 4b 2c 20 66 6f 72 20 74 68 6f 73 65  BLOCK, for those
18480 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 55 6e 69   versions of Uni
18490 78 20 77 68 65 72 65 0a 65 69 74 68 65 72 20 4f  x where.either O
184a0 5f 4e 4f 4e 42 4c 4f 43 4b 20 69 73 20 6e 6f 74  _NONBLOCK is not
184b0 20 73 75 70 70 6f 72 74 65 64 20 6f 72 20 69 6d   supported or im
184c0 70 6c 65 6d 65 6e 74 65 64 20 69 6e 63 6f 72 72  plemented incorr
184d0 65 63 74 6c 79 2e 20 28 4a 4c 29 0a 0a 38 2f 32  ectly. (JL)..8/2
184e0 31 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  1/96 (bug fix) F
184f0 69 78 65 64 20 22 66 69 6c 65 20 65 78 74 65 6e  ixed "file exten
18500 73 69 6f 6e 22 20 73 6f 20 69 74 20 63 6f 72 72  sion" so it corr
18510 65 63 74 6c 79 20 72 65 74 75 72 6e 73 20 74 68  ectly returns th
18520 65 0a 65 78 74 65 6e 73 69 6f 6e 20 6f 6e 20 66  e.extension on f
18530 69 6c 65 73 20 6c 69 6b 65 20 22 66 6f 6f 2e 2e  iles like "foo..
18540 63 22 20 61 73 20 22 2e 2e 63 22 20 69 6e 73 74  c" as "..c" inst
18550 65 61 64 20 6f 66 20 22 2e 63 22 2e 20 28 53 53  ead of ".c". (SS
18560 29 0a 0a 38 2f 32 32 2f 39 36 20 28 62 75 67 20  )..8/22/96 (bug 
18570 66 69 78 29 20 49 66 20 65 6e 76 69 72 6f 6e 5b  fix) If environ[
18580 5d 20 63 6f 6e 74 61 69 6e 73 20 73 74 61 74 69  ] contains stati
18590 63 20 73 74 72 69 6e 67 73 2c 20 54 63 6c 20 77  c strings, Tcl w
185a0 6f 75 6c 64 20 63 6f 72 65 0a 64 75 6d 70 20 69  ould core.dump i
185b0 6e 20 54 63 6c 53 65 74 75 70 45 6e 76 20 62 65  n TclSetupEnv be
185c0 63 61 75 73 65 20 69 74 20 77 61 73 20 74 72 79  cause it was try
185d0 69 6e 67 20 74 6f 20 77 72 69 74 65 20 4e 55 4c  ing to write NUL
185e0 4c 73 20 69 6e 74 6f 20 74 68 65 20 61 63 74 75  Ls into the actu
185f0 61 6c 0a 64 61 74 61 20 69 6e 20 65 6e 76 69 72  al.data in envir
18600 6f 6e 5b 5d 2e 20 4e 6f 77 20 77 65 20 69 6e 73  on[]. Now we ins
18610 74 65 61 64 20 63 6f 70 79 20 61 73 20 61 70 70  tead copy as app
18620 72 6f 70 72 69 61 74 65 2e 20 28 4a 4c 29 0a 0a  ropriate. (JL)..
18630 38 2f 32 32 2f 39 36 20 28 61 64 64 65 64 20 69  8/22/96 (added i
18640 6d 70 6c 29 20 41 64 64 65 64 20 6d 69 73 73 69  mpl) Added missi
18650 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  ng implementatio
18660 6e 20 6f 66 20 54 63 6c 5f 4d 61 6b 65 54 63 70  n of Tcl_MakeTcp
18670 43 6c 69 65 6e 74 43 68 61 6e 6e 65 6c 0a 66 6f  ClientChannel.fo
18680 72 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f  r Windows platfo
18690 72 6d 2e 20 43 6f 64 65 20 63 6f 6e 74 72 69 62  rm. Code contrib
186a0 75 74 65 64 20 62 79 20 4d 61 72 6b 20 44 69 65  uted by Mark Die
186b0 6b 68 61 6e 73 2e 20 28 4a 4c 29 0a 0a 38 2f 32  khans. (JL)..8/2
186c0 32 2f 39 36 20 28 6e 65 77 20 66 65 61 74 75 72  2/96 (new featur
186d0 65 29 20 41 64 64 65 64 20 61 20 6e 65 77 20 6d  e) Added a new m
186e0 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 6f 72 20  emory allocator 
186f0 66 6f 72 20 74 68 65 20 4d 61 63 69 6e 74 6f 73  for the Macintos
18700 68 0a 76 65 72 73 69 6f 6e 20 6f 66 20 54 63 6c  h.version of Tcl
18710 2e 20 20 49 74 27 73 20 71 75 69 74 65 20 61 20  .  It's quite a 
18720 62 69 74 20 66 61 73 74 65 72 20 74 68 61 6e 20  bit faster than 
18730 4d 65 74 72 6f 57 65 72 6b 27 73 20 76 65 72 73  MetroWerk's vers
18740 69 6f 6e 2e 20 28 52 4a 29 0a 0a 38 2f 32 36 2f  ion. (RJ)..8/26/
18750 39 36 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f  96 (documentatio
18760 6e 20 75 70 64 61 74 65 29 20 52 65 6d 6f 76 65  n update) Remove
18770 64 20 6f 6c 64 20 63 68 61 6e 67 65 20 62 61 72  d old change bar
18780 73 20 28 66 6f 72 20 61 6c 6c 20 63 68 61 6e 67  s (for all chang
18790 65 73 0a 69 6e 20 54 63 6c 20 37 2e 35 20 61 6e  es.in Tcl 7.5 an
187a0 64 20 65 61 72 6c 69 65 72 20 72 65 6c 65 61 73  d earlier releas
187b0 65 73 29 20 66 72 6f 6d 20 6d 61 6e 75 61 6c 20  es) from manual 
187c0 65 6e 74 72 69 65 73 2e 20 28 4a 4f 29 0a 0a 38  entries. (JO)..8
187d0 2f 32 37 2f 39 36 20 28 65 6e 68 61 6e 63 65 6d  /27/96 (enhancem
187e0 65 6e 74 29 20 54 68 65 20 65 78 65 63 20 61 6e  ent) The exec an
187f0 64 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 73 20  d open commands 
18800 62 65 68 61 76 65 20 62 65 74 74 65 72 20 61 6e  behave better an
18810 64 20 77 6f 72 6b 20 69 6e 20 0a 6d 6f 72 65 20  d work in .more 
18820 73 69 74 75 61 74 69 6f 6e 73 20 75 6e 64 65 72  situations under
18830 20 57 69 6e 64 6f 77 73 20 4e 54 20 61 6e 64 20   Windows NT and 
18840 57 69 6e 64 6f 77 73 20 39 35 2e 20 20 44 6f 63  Windows 95.  Doc
18850 75 6d 65 6e 74 61 74 69 6f 6e 20 64 65 73 63 72  umentation descr
18860 69 62 65 73 20 0a 77 68 61 74 20 69 73 20 73 74  ibes .what is st
18870 69 6c 6c 20 6c 61 63 6b 69 6e 67 2e 20 28 43 53  ill lacking. (CS
18880 29 0a 0a 38 2f 32 37 2f 39 36 20 28 65 6e 68 61  )..8/27/96 (enha
18890 6e 63 65 6d 65 6e 74 29 20 54 68 65 20 57 69 6e  ncement) The Win
188a0 64 6f 77 73 20 6d 61 6b 65 66 69 6c 65 73 20 77  dows makefiles w
188b0 69 6c 6c 20 6e 6f 77 20 63 6f 6d 70 69 6c 65 20  ill now compile 
188c0 65 76 65 6e 20 69 66 20 74 68 65 0a 63 6f 6d 70  even if the.comp
188d0 69 6c 65 72 20 69 73 20 6e 6f 74 20 69 6e 20 74  iler is not in t
188e0 68 65 20 70 61 74 68 20 61 6e 64 2f 6f 72 20 74  he path and/or t
188f0 68 65 20 63 6f 6d 70 69 6c 65 72 27 73 20 65 6e  he compiler's en
18900 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62  vironment variab
18910 6c 65 73 0a 68 61 76 65 20 6e 6f 74 20 62 65 65  les.have not bee
18920 6e 20 73 65 74 20 75 70 2e 20 28 43 53 29 20 0a  n set up. (CS) .
18930 0a 38 2f 32 37 2f 39 36 20 28 63 6f 6e 66 69 67  .8/27/96 (config
18940 75 72 61 74 69 6f 6e 20 69 6d 70 72 6f 76 65 6d  uration improvem
18950 65 6e 74 29 20 54 68 65 20 57 69 6e 64 6f 77 73  ent) The Windows
18960 20 72 65 73 6f 75 72 63 65 20 66 69 6c 65 73 20   resource files 
18970 61 72 65 20 0a 61 75 74 6f 6d 61 74 69 63 61 6c  are .automatical
18980 6c 79 20 75 70 64 61 74 65 64 20 77 68 65 6e 20  ly updated when 
18990 74 68 65 20 76 65 72 73 69 6f 6e 2f 70 61 74 63  the version/patc
189a0 68 20 6c 65 76 65 6c 20 63 68 61 6e 67 65 73 2e  h level changes.
189b0 20 20 54 68 65 20 68 65 61 64 65 72 20 66 69 6c    The header fil
189c0 65 0a 6e 6f 77 20 68 61 73 20 61 20 63 6f 6d 6d  e.now has a comm
189d0 65 6e 74 20 74 68 61 74 20 72 65 6d 69 6e 64 73  ent that reminds
189e0 20 74 68 65 20 75 73 65 72 20 77 68 69 63 68 20   the user which 
189f0 6f 74 68 65 72 20 66 69 6c 65 73 20 6d 75 73 74  other files must
18a00 20 62 65 20 6d 61 6e 75 61 6c 6c 79 0a 75 70 64   be manually.upd
18a10 61 74 65 64 20 77 68 65 6e 20 74 68 65 20 76 65  ated when the ve
18a20 72 73 69 6f 6e 2f 70 61 74 63 68 20 6c 65 76 65  rsion/patch leve
18a30 6c 20 63 68 61 6e 67 65 73 2e 20 28 43 53 29 0a  l changes. (CS).
18a40 0a 38 2f 32 38 2f 39 36 20 28 6e 65 77 20 66 65  .8/28/96 (new fe
18a50 61 74 75 72 65 29 20 41 64 64 65 64 20 66 69 6c  ature) Added fil
18a60 65 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 66  e manipulation f
18a70 65 61 74 75 72 65 73 20 28 63 6f 70 79 2c 20 72  eatures (copy, r
18a80 65 6e 61 6d 65 2c 20 64 65 6c 65 74 65 2c 0a 6d  ename, delete,.m
18a90 6b 64 69 72 29 20 74 68 61 74 20 61 72 65 20 73  kdir) that are s
18aa0 75 70 70 6f 72 74 65 64 20 6f 6e 20 61 6c 6c 20  upported on all 
18ab0 70 6c 61 74 66 6f 72 6d 73 2e 20 54 68 65 79 20  platforms. They 
18ac0 61 72 65 20 69 6d 70 6c 65 6d 65 6e 74 65 64 20  are implemented 
18ad0 61 73 20 0a 73 75 62 63 6f 6d 6d 61 6e 64 73 20  as .subcommands 
18ae0 74 6f 20 74 68 65 20 22 66 69 6c 65 22 20 63 6f  to the "file" co
18af0 6d 6d 61 6e 64 2e 20 53 65 65 20 74 68 65 20 64  mmand. See the d
18b00 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72  ocumentation for
18b10 20 74 68 65 20 22 66 69 6c 65 22 0a 63 6f 6d 6d   the "file".comm
18b20 61 6e 64 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66  and for more inf
18b30 6f 72 6d 61 74 69 6f 6e 2e 20 28 4a 48 29 0a 0a  ormation. (JH)..
18b40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18b50 2d 20 52 65 6c 65 61 73 65 64 20 37 2e 36 62 31  - Released 7.6b1
18b60 2c 20 38 2f 33 30 2f 39 36 20 2d 2d 2d 2d 2d 2d  , 8/30/96 ------
18b70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
18b80 2d 0a 0a 39 2f 33 2f 39 36 20 28 62 75 67 20 66  -..9/3/96 (bug f
18b90 69 78 29 20 53 69 6d 70 6c 69 66 69 65 64 20 63  ix) Simplified c
18ba0 6f 64 65 20 73 6f 20 74 68 61 74 20 73 74 61 6e  ode so that stan
18bb0 64 61 72 64 20 63 68 61 6e 6e 65 6c 73 20 61 72  dard channels ar
18bc0 65 20 63 72 65 61 74 65 64 0a 6c 61 7a 69 6c 79  e created.lazily
18bd0 2c 20 74 68 65 79 20 61 72 65 20 61 64 64 65 64  , they are added
18be0 20 74 6f 20 61 6e 20 69 6e 74 65 72 70 72 65 74   to an interpret
18bf0 65 72 20 6c 61 7a 69 6c 79 2c 20 61 6e 64 20 74  er lazily, and t
18c00 68 65 79 20 61 72 65 20 6e 65 76 65 72 20 61 64  hey are never ad
18c10 64 65 64 0a 74 6f 20 61 20 73 61 66 65 20 69 6e  ded.to a safe in
18c20 74 65 72 70 72 65 74 65 72 2e 20 28 4a 4c 29 0a  terpreter. (JL).
18c30 0a 39 2f 33 2f 39 36 20 28 62 75 67 20 66 69 78  .9/3/96 (bug fix
18c40 29 20 43 6c 6f 73 69 6e 67 20 61 20 63 68 61 6e  ) Closing a chan
18c50 6e 65 6c 20 61 66 74 65 72 20 63 6c 6f 73 69 6e  nel after closin
18c60 67 20 61 20 73 74 61 6e 64 61 72 64 20 63 68 61  g a standard cha
18c70 6e 6e 65 6c 2c 20 65 2e 67 2e 0a 73 74 64 6f 75  nnel, e.g..stdou
18c80 74 2c 20 77 6f 75 6c 64 20 63 61 75 73 65 20 74  t, would cause t
18c90 68 65 20 69 6d 70 6c 69 63 69 74 20 72 65 63 72  he implicit recr
18ca0 65 61 74 69 6f 6e 20 6f 66 20 74 68 61 74 20 73  eation of that s
18cb0 74 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 2e  tandard channel.
18cc0 20 28 4a 4c 29 0a 0a 39 2f 33 2f 39 36 20 28 6e   (JL)..9/3/96 (n
18cd0 65 77 20 66 65 61 74 75 72 65 29 20 4e 6f 77 20  ew feature) Now 
18ce0 63 61 6c 6c 69 6e 67 20 54 63 6c 5f 52 65 67 69  calling Tcl_Regi
18cf0 73 74 65 72 43 68 61 6e 6e 65 6c 20 77 69 74 68  sterChannel with
18d00 20 61 20 4e 55 4c 4c 0a 69 6e 74 65 72 70 72 65   a NULL.interpre
18d10 74 65 72 20 69 6e 63 72 65 6d 65 6e 74 73 20 74  ter increments t
18d20 68 65 20 72 65 66 63 6f 75 6e 74 20 73 6f 20 74  he refcount so t
18d30 68 61 74 20 63 6f 64 65 20 6f 75 74 73 69 64 65  hat code outside
18d40 20 61 6e 79 20 69 6e 74 65 72 70 72 65 74 65 72   any interpreter
18d50 0a 63 61 6e 20 75 73 65 20 63 68 61 6e 6e 65 6c  .can use channel
18d60 73 20 74 68 61 74 20 61 72 65 20 61 6c 73 6f 20  s that are also 
18d70 72 65 67 69 73 74 65 72 65 64 20 69 6e 20 69 6e  registered in in
18d80 74 65 72 70 72 65 74 65 72 73 2c 20 77 69 74 68  terpreters, with
18d90 6f 75 74 20 77 6f 72 72 79 69 6e 67 0a 74 68 61  out worrying.tha
18da0 74 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 6d 61  t the channel ma
18db0 79 20 74 75 72 6e 20 69 6e 74 6f 20 61 20 64 61  y turn into a da
18dc0 6e 67 6c 69 6e 67 20 70 6f 69 6e 74 65 72 20 61  ngling pointer a
18dd0 74 20 61 6e 79 20 74 69 6d 65 2e 20 43 61 6c 6c  t any time. Call
18de0 69 6e 67 0a 54 63 6c 5f 55 6e 72 65 67 69 73 74  ing.Tcl_Unregist
18df0 65 72 43 68 61 6e 6e 65 6c 20 77 69 74 68 20 61  erChannel with a
18e00 20 4e 55 4c 4c 20 69 6e 74 65 72 70 72 65 74 65   NULL interprete
18e10 72 20 6f 6e 6c 79 20 64 65 63 72 65 6d 65 6e 74  r only decrement
18e20 73 20 74 68 65 20 72 65 63 6f 75 6e 74 0a 73 6f  s the recount.so
18e30 20 74 68 61 74 20 63 6f 64 65 20 6f 75 74 73 69   that code outsi
18e40 64 65 20 61 6e 79 20 69 6e 74 65 72 70 72 65 74  de any interpret
18e50 65 72 20 63 61 6e 20 73 61 66 65 6c 79 20 64 65  er can safely de
18e60 63 6c 61 72 65 20 69 74 20 69 73 20 6e 6f 20 6c  clare it is no l
18e70 6f 6e 67 65 72 0a 69 6e 74 65 72 65 73 74 65 64  onger.interested
18e80 20 69 6e 20 61 20 63 68 61 6e 6e 65 6c 2e 20 28   in a channel. (
18e90 4a 4c 29 0a 0a 39 2f 34 2f 39 36 20 28 6e 65 77  JL)..9/4/96 (new
18ea0 20 66 65 61 74 75 72 65 73 29 20 54 77 6f 20 63   features) Two c
18eb0 68 61 6e 67 65 73 20 74 6f 20 64 79 6e 61 6d 69  hanges to dynami
18ec0 63 20 6c 6f 61 64 69 6e 67 3a 0a 20 20 20 20 2d  c loading:.    -
18ed0 20 49 66 20 74 68 65 20 66 69 6c 65 20 6e 61 6d   If the file nam
18ee0 65 20 69 73 20 65 6d 70 74 79 20 69 6e 20 74 68  e is empty in th
18ef0 65 20 22 6c 6f 61 64 22 20 63 6f 6d 6d 61 6e 64  e "load" command
18f00 20 61 6e 64 20 74 68 65 72 65 20 69 73 20 6e 6f   and there is no
18f10 0a 20 20 20 20 20 20 73 74 61 74 69 63 61 6c 6c  .      staticall
18f20 79 20 6c 6f 61 64 65 64 20 76 65 72 73 69 6f 6e  y loaded version
18f30 20 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 2c   of the package,
18f40 20 61 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c   a dynamically l
18f50 6f 61 64 65 64 0a 20 20 20 20 20 20 76 65 72 73  oaded.      vers
18f60 69 6f 6e 20 77 69 6c 6c 20 62 65 20 75 73 65 64  ion will be used
18f70 20 69 66 20 74 68 65 72 65 20 69 73 20 6f 6e 65   if there is one
18f80 2e 0a 20 20 20 20 2d 20 54 63 6c 5f 53 74 61 74  ..    - Tcl_Stat
18f90 69 63 50 61 63 6b 61 67 65 20 69 67 6e 6f 72 65  icPackage ignore
18fa0 73 20 72 65 64 75 6e 64 61 6e 74 20 63 61 6c 6c  s redundant call
18fb0 73 20 66 6f 72 20 74 68 65 20 73 61 6d 65 20 70  s for the same p
18fc0 61 63 6b 61 67 65 2e 20 28 4a 4f 29 0a 0a 39 2f  ackage. (JO)..9/
18fd0 36 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 50  6/96 (bug fix) P
18fe0 6c 61 74 66 6f 72 6d 20 73 70 65 63 69 66 69 63  latform specific
18ff0 20 70 72 6f 63 65 64 75 72 65 73 20 66 6f 72 20   procedures for 
19000 6d 61 6e 69 70 75 6c 61 74 69 6e 67 20 66 69 6c  manipulating fil
19010 65 73 20 61 72 65 0a 6e 6f 20 6c 6f 6e 67 65 72  es are.no longer
19020 20 6d 61 63 72 6f 73 20 61 6e 64 20 68 61 76 65   macros and have
19030 20 62 65 65 6e 20 70 72 65 66 69 78 65 64 20 77   been prefixed w
19040 69 74 68 20 22 54 63 6c 70 22 2c 20 73 75 63 68  ith "Tclp", such
19050 20 61 73 20 54 63 6c 70 52 65 6e 61 6d 65 46 69   as TclpRenameFi
19060 6c 65 2e 0a 55 6e 69 78 20 66 69 6c 65 20 63 6f  le..Unix file co
19070 64 65 20 6e 6f 77 20 68 61 6e 64 6c 65 73 20 73  de now handles s
19080 79 6d 62 6f 6c 69 63 20 6c 69 6e 6b 73 20 61 6e  ymbolic links an
19090 64 20 6f 74 68 65 72 20 73 70 65 63 69 61 6c 20  d other special 
190a0 66 69 6c 65 73 20 63 6f 72 72 65 63 74 6c 79 2e  files correctly.
190b0 0a 54 68 65 20 73 65 6d 61 6e 74 69 63 73 20 6f  .The semantics o
190c0 66 20 66 69 6c 65 20 63 6f 70 79 20 61 6e 64 20  f file copy and 
190d0 66 69 6c 65 20 72 65 6e 61 6d 65 20 68 61 73 20  file rename has 
190e0 62 65 65 6e 20 63 68 61 6e 67 65 64 20 73 6f 20  been changed so 
190f0 74 68 61 74 20 69 66 0a 61 20 74 61 72 67 65 74  that if.a target
19100 20 64 69 72 65 63 74 6f 72 79 20 65 78 69 73 74   directory exist
19110 73 2c 20 74 68 65 20 73 6f 75 72 63 65 20 66 69  s, the source fi
19120 6c 65 73 20 77 69 6c 6c 20 4e 4f 54 20 62 65 20  les will NOT be 
19130 6d 65 72 67 65 64 20 77 69 74 68 20 74 68 65 0a  merged with the.
19140 65 78 69 73 74 69 6e 67 20 66 69 6c 65 73 2e 20  existing files. 
19150 28 4a 48 29 0a 0a 39 2f 36 2f 39 36 20 28 62 75  (JH)..9/6/96 (bu
19160 67 20 66 69 78 29 20 49 66 20 73 74 61 6e 64 61  g fix) If standa
19170 72 64 20 63 68 61 6e 6e 65 6c 20 69 73 20 4e 55  rd channel is NU
19180 4c 4c 2c 20 62 65 63 61 75 73 65 20 54 63 6c 20  LL, because Tcl 
19190 63 61 6e 6e 6f 74 20 63 6f 6e 6e 65 63 74 0a 74  cannot connect.t
191a0 6f 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 63  o the standard c
191b0 68 61 6e 6e 65 6c 2c 20 64 6f 20 6e 6f 74 20 69  hannel, do not i
191c0 6e 63 72 65 6d 65 6e 74 20 74 68 65 20 72 65 66  ncrement the ref
191d0 63 6f 75 6e 74 2e 20 54 68 65 20 63 68 61 6e 6e  count. The chann
191e0 65 6c 20 63 61 6e 0a 62 65 20 4e 55 4c 4c 20 69  el can.be NULL i
191f0 66 20 74 68 65 72 65 20 69 73 20 66 6f 72 20 65  f there is for e
19200 78 61 6d 70 6c 65 20 6e 6f 20 73 74 61 6e 64 61  xample no standa
19210 72 64 20 69 6e 70 75 74 2e 20 28 4a 4c 29 0a 0a  rd input. (JL)..
19220 39 2f 36 2f 39 36 20 28 70 6f 72 74 61 62 69 6c  9/6/96 (portabil
19230 69 74 79 20 69 6d 70 72 6f 76 65 6d 65 6e 74 29  ity improvement)
19240 20 43 68 61 6e 67 65 64 20 70 61 72 73 69 6e 67   Changed parsing
19250 20 6f 66 20 62 61 63 6b 73 6c 61 73 68 20 73 65   of backslash se
19260 71 75 65 6e 63 65 73 0a 6c 69 6b 65 20 5c 6e 20  quences.like \n 
19270 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 64 69 72  to translate dir
19280 65 63 74 6c 79 20 74 6f 20 61 62 73 6f 6c 75 74  ectly to absolut
19290 65 20 76 61 6c 75 65 73 20 6c 69 6b 65 20 30 78  e values like 0x
192a0 61 20 69 6e 73 74 65 61 64 20 6f 66 0a 6c 65 74  a instead of.let
192b0 74 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 65  ting the compile
192c0 72 20 64 6f 20 74 68 65 20 74 72 61 6e 73 6c 61  r do the transla
192d0 74 69 6f 6e 2e 20 20 54 68 69 73 20 67 75 61 72  tion.  This guar
192e0 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 0a  antees that the.
192f0 74 72 61 6e 73 6c 61 74 69 6f 6e 20 69 73 20 64  translation is d
19300 6f 6e 65 20 74 68 65 20 73 61 6d 65 20 65 76 65  one the same eve
19310 72 79 77 68 65 72 65 2e 20 28 4a 4f 29 0a 0a 39  rywhere. (JO)..9
19320 2f 39 2f 39 36 20 28 62 75 67 20 66 69 78 29 20  /9/96 (bug fix) 
19330 49 66 20 63 68 61 6e 6e 65 6c 20 69 73 20 6f 70  If channel is op
19340 65 6e 65 64 20 61 6e 64 20 6e 6f 74 20 61 73 73  ened and not ass
19350 6f 63 69 61 74 65 64 20 77 69 74 68 20 61 6e 79  ociated with any
19360 0a 69 6e 74 65 72 70 72 65 74 65 72 2c 20 62 75  .interpreter, bu
19370 74 20 54 63 6c 20 64 65 63 69 64 65 73 20 74 6f  t Tcl decides to
19380 20 75 73 65 20 69 74 20 61 73 20 6f 6e 65 20 6f   use it as one o
19390 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 63  f the standard c
193a0 68 61 6e 6e 65 6c 73 2c 20 69 74 0a 62 65 63 61  hannels, it.beca
193b0 6d 65 20 69 6d 70 6f 73 73 69 62 6c 65 20 74 6f  me impossible to
193c0 20 63 6c 6f 73 65 20 74 68 65 20 63 68 61 6e 6e   close the chann
193d0 65 6c 20 77 69 74 68 20 54 63 6c 5f 43 6c 6f 73  el with Tcl_Clos
193e0 65 20 2d 2d 20 69 6e 73 74 65 61 64 20 79 6f 75  e -- instead you
193f0 20 68 61 64 0a 74 6f 20 63 61 6c 6c 20 54 63 6c   had.to call Tcl
19400 5f 55 6e 72 65 67 69 73 74 65 72 43 68 61 6e 6e  _UnregisterChann
19410 65 6c 2e 20 46 69 78 65 64 20 6e 6f 77 20 73 6f  el. Fixed now so
19420 20 74 68 61 74 20 69 74 27 73 20 73 61 66 65 20   that it's safe 
19430 74 6f 20 63 61 6c 6c 0a 54 63 6c 5f 43 6c 6f 73  to call.Tcl_Clos
19440 65 20 65 76 65 6e 20 77 68 65 6e 20 54 63 6c 20  e even when Tcl 
19450 69 73 20 75 73 69 6e 67 20 74 68 65 20 63 68 61  is using the cha
19460 6e 6e 65 6c 20 61 73 20 6f 6e 65 20 6f 66 20 74  nnel as one of t
19470 68 65 20 73 74 61 6e 64 61 72 64 20 6f 6e 65 73  he standard ones
19480 2e 20 28 4a 4c 29 0a 0a 39 2f 31 31 2f 39 36 20  . (JL)..9/11/96 
19490 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
194a0 20 54 68 65 20 54 63 6c 20 6c 69 62 72 61 72 79   The Tcl library
194b0 20 69 73 20 6e 6f 77 20 70 6c 61 63 65 64 20 69   is now placed i
194c0 6e 20 74 68 65 20 54 63 6c 0a 73 68 61 72 65 64  n the Tcl.shared
194d0 20 6c 69 62 72 61 72 69 65 73 20 72 65 73 6f 75   libraries resou
194e0 72 63 65 2e 20 20 59 6f 75 20 6e 6f 20 6c 6f 6e  rce.  You no lon
194f0 67 65 72 20 6e 65 65 64 20 74 6f 20 70 6c 61 63  ger need to plac
19500 65 20 74 68 65 20 54 63 6c 20 66 69 6c 65 73 0a  e the Tcl files.
19510 69 6e 20 79 6f 75 72 20 61 70 70 6c 69 63 61 74  in your applicat
19520 69 6f 6e 73 20 65 78 70 6c 69 63 69 74 6c 79 2e  ions explicitly.
19530 20 20 28 52 4a 29 0a 0a 39 2f 31 31 2f 39 36 20    (RJ)..9/11/96 
19540 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
19550 20 45 78 74 65 6e 73 69 6f 6e 73 20 6e 6f 20 6c   Extensions no l
19560 6f 6e 67 65 72 20 61 75 74 6f 6d 61 74 69 63 61  onger automatica
19570 6c 6c 79 20 68 61 76 65 20 74 68 65 0a 72 65 73  lly have the.res
19580 6f 75 72 63 65 20 66 6f 72 6b 20 6f 66 20 74 68  ource fork of th
19590 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 70 65 6e  e extension open
195a0 65 64 20 66 6f 72 20 69 74 2e 20 20 49 6e 73 74  ed for it.  Inst
195b0 65 61 64 20 79 6f 75 20 6e 65 65 64 20 74 6f 0a  ead you need to.
195c0 75 73 65 20 74 68 65 20 74 63 6c 4d 61 63 4c 69  use the tclMacLi
195d0 62 72 61 72 79 2e 63 20 66 69 6c 65 20 69 6e 20  brary.c file in 
195e0 79 6f 75 72 20 65 78 74 65 6e 73 69 6f 6e 2e 20  your extension. 
195f0 20 28 52 4a 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (RJ).*** POTENT
19600 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
19610 49 54 59 20 2a 2a 2a 0a 0a 39 2f 31 32 2f 39 36  ITY ***..9/12/96
19620 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 65   (bug fix) The e
19630 78 74 65 6e 73 69 6f 6e 20 6c 6f 61 64 69 6e 67  xtension loading
19640 20 6d 65 63 68 61 6e 69 73 6d 20 6f 6e 20 74 68   mechanism on th
19650 65 20 4d 61 63 69 6e 74 6f 73 68 20 6e 6f 77 0a  e Macintosh now.
19660 6c 6f 6f 6b 73 20 61 74 20 74 68 65 20 27 63 66  looks at the 'cf
19670 72 67 27 20 72 65 73 6f 75 72 63 65 20 74 6f 20  rg' resource to 
19680 64 65 74 65 72 6d 69 6e 65 20 77 68 65 72 65 20  determine where 
19690 74 6f 20 6c 6f 61 64 20 74 68 65 20 63 6f 64 65  to load the code
196a0 0a 66 72 61 67 6d 65 6e 74 20 66 72 6f 6d 2e 20  .fragment from. 
196b0 20 54 68 69 73 20 6d 65 61 6e 73 20 46 41 54 20   This means FAT 
196c0 66 72 61 67 6d 65 6e 74 73 20 73 68 6f 75 6c 64  fragments should
196d0 20 6e 6f 77 20 77 6f 72 6b 2e 20 28 52 4a 29 0a   now work. (RJ).
196e0 0a 39 2f 31 38 2f 39 36 20 28 65 6e 68 61 6e 63  .9/18/96 (enhanc
196f0 65 6d 65 6e 74 29 20 54 68 65 20 65 78 65 63 20  ement) The exec 
19700 61 6e 64 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64  and open command
19710 73 20 62 65 68 61 76 65 20 62 65 74 74 65 72 20  s behave better 
19720 61 6e 64 20 77 6f 72 6b 20 69 6e 0a 6d 6f 72 65  and work in.more
19730 20 73 69 74 75 61 74 69 6f 6e 73 20 75 6e 64 65   situations unde
19740 72 20 57 69 6e 64 6f 77 73 20 33 2e 58 2e 20 20  r Windows 3.X.  
19750 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 64 65  Documentation de
19760 73 63 72 69 62 65 73 20 77 68 61 74 20 69 73 20  scribes what is 
19770 73 74 69 6c 6c 0a 6c 61 63 6b 69 6e 67 2e 20 20  still.lacking.  
19780 28 43 53 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62  (CS)..9/19/96 (b
19790 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61 20  ug fix) Fixed a 
197a0 70 61 6e 69 63 20 77 68 69 63 68 20 77 6f 75 6c  panic which woul
197b0 64 20 6f 63 63 75 72 20 69 66 20 79 6f 75 20 64  d occur if you d
197c0 65 6c 65 74 65 20 61 0a 6e 6f 6e 2d 65 78 69 73  elete a.non-exis
197d0 74 65 6e 74 20 61 6c 69 61 73 20 62 65 66 6f 72  tent alias befor
197e0 65 20 61 6e 79 20 61 6c 69 61 73 65 73 20 61 72  e any aliases ar
197f0 65 20 63 72 65 61 74 65 64 2e 20 4e 6f 77 20 69  e created. Now i
19800 6e 73 74 65 61 64 20 63 6f 72 72 65 63 74 6c 79  nstead correctly
19810 0a 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f  .returns an erro
19820 72 20 74 68 61 74 20 74 68 65 20 61 6c 69 61 73  r that the alias
19830 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 2e 20 28   is not found. (
19840 4a 4c 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62 75  JL)..9/19/96 (bu
19850 67 20 66 69 78 29 20 53 6c 61 76 65 20 69 6e 74  g fix) Slave int
19860 65 72 70 72 65 74 65 72 73 20 63 6f 75 6c 64 20  erpreters could 
19870 72 65 6e 61 6d 65 20 61 6c 69 61 73 65 73 20 61  rename aliases a
19880 6e 64 20 74 68 65 79 20 77 6f 75 6c 64 0a 6e 6f  nd they would.no
19890 74 20 67 65 74 20 64 65 6c 65 74 65 64 20 77 68  t get deleted wh
198a0 65 6e 20 74 68 65 20 61 6c 69 61 73 20 77 61 73  en the alias was
198b0 20 62 65 69 6e 67 20 72 65 64 65 66 69 6e 65 64   being redefined
198c0 2e 20 54 68 69 73 20 6c 65 64 20 74 6f 20 64 61  . This led to da
198d0 6e 67 6c 69 6e 67 0a 70 6f 69 6e 74 65 72 73 20  ngling.pointers 
198e0 65 74 63 2e 20 28 4a 4c 29 0a 0a 39 2f 31 39 2f  etc. (JL)..9/19/
198f0 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
19900 65 64 20 61 20 70 61 6e 69 63 20 77 68 65 72 65  ed a panic where
19910 20 61 20 68 61 73 68 20 74 61 62 6c 65 20 65 6e   a hash table en
19920 74 72 79 20 77 61 73 20 62 65 69 6e 67 20 64 65  try was being de
19930 6c 65 74 65 64 0a 74 77 69 63 65 20 64 75 72 69  leted.twice duri
19940 6e 67 20 61 6c 69 61 73 20 6d 61 6e 61 67 65 6d  ng alias managem
19950 65 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 2e 20  ent operations. 
19960 28 4a 4c 29 0a 0a 39 2f 31 39 2f 39 36 20 28 62  (JL)..9/19/96 (b
19970 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
19980 67 20 69 6e 20 65 76 65 6e 74 20 6c 6f 6f 70 20  g in event loop 
19990 74 68 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65  that could cause
199a0 20 74 68 65 20 69 6e 70 75 74 20 66 6f 63 75 73   the input focus
199b0 0a 69 6e 20 54 6b 20 74 6f 20 67 65 74 20 63 6f  .in Tk to get co
199c0 6e 66 75 73 65 64 20 64 75 72 69 6e 67 20 6d 65  nfused during me
199d0 6e 75 20 74 72 61 76 65 72 73 61 6c 2c 20 61 6d  nu traversal, am
199e0 6f 6e 67 20 6f 74 68 65 72 20 70 72 6f 62 6c 65  ong other proble
199f0 6d 73 2e 20 20 54 68 65 0a 70 72 6f 62 6c 65 6d  ms.  The.problem
19a00 20 77 61 73 20 72 65 6c 61 74 65 64 20 74 6f 20   was related to 
19a10 68 61 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20  handling of the 
19a20 22 6d 61 72 6b 65 72 22 20 77 68 65 6e 20 69 74  "marker" when it
19a30 73 20 65 76 65 6e 74 20 77 61 73 0a 64 65 6c 65  s event was.dele
19a40 74 65 64 2e 20 28 4a 4f 29 0a 0a 39 2f 32 36 2f  ted. (JO)..9/26/
19a50 39 36 20 28 62 75 67 20 66 69 78 29 20 57 69 6e  96 (bug fix) Win
19a60 64 6f 77 73 20 77 61 73 20 6c 6f 73 69 6e 67 20  dows was losing 
19a70 45 4f 46 20 6f 6e 20 61 20 73 6f 63 6b 65 74 20  EOF on a socket 
19a80 69 66 20 74 68 65 20 46 44 5f 43 4c 4f 53 45 20  if the FD_CLOSE 
19a90 65 76 65 6e 74 0a 68 61 70 70 65 6e 65 64 20 74  event.happened t
19aa0 6f 20 70 72 65 63 65 64 65 20 61 6e 79 20 6c 65  o precede any le
19ab0 66 74 20 6f 76 65 72 20 46 44 5f 52 45 41 44 20  ft over FD_READ 
19ac0 65 76 65 6e 74 73 2e 20 4e 6f 77 20 63 6f 72 72  events. Now corr
19ad0 65 63 74 6c 79 20 72 65 6d 65 6d 62 65 72 73 0a  ectly remembers.
19ae0 73 65 65 69 6e 67 20 46 44 5f 43 4c 4f 53 45 2c  seeing FD_CLOSE,
19af0 20 73 6f 20 74 68 61 74 20 74 72 61 69 6c 69 6e   so that trailin
19b00 67 20 46 44 5f 52 45 41 44 20 65 76 65 6e 74 73  g FD_READ events
19b10 20 61 72 65 20 6e 6f 74 20 64 69 73 63 61 72 64   are not discard
19b20 65 64 20 69 66 20 74 68 65 79 0a 64 6f 20 6e 6f  ed if they.do no
19b30 74 20 63 6f 6e 74 61 69 6e 20 61 6e 79 20 64 61  t contain any da
19b40 74 61 2e 20 54 68 69 73 20 61 6c 6c 6f 77 73 20  ta. This allows 
19b50 54 63 6c 20 74 6f 20 63 6f 72 72 65 63 74 6c 79  Tcl to correctly
19b60 20 67 65 74 20 61 20 7a 65 72 6f 20 72 65 61 64   get a zero read
19b70 20 61 6e 64 0a 6e 6f 74 69 63 65 20 45 4f 46 2e   and.notice EOF.
19b80 20 28 4a 4c 29 0a 0a 39 2f 32 36 2f 39 36 20 28   (JL)..9/26/96 (
19b90 62 75 67 20 66 69 78 29 20 57 61 73 20 6e 6f 74  bug fix) Was not
19ba0 20 72 65 73 65 74 74 69 6e 67 20 52 45 41 44 41   resetting READA
19bb0 42 4c 45 20 73 74 61 74 65 20 70 72 6f 70 65 72  BLE state proper
19bc0 6c 79 20 6f 6e 20 73 6f 63 6b 65 74 73 0a 75 6e  ly on sockets.un
19bd0 64 65 72 20 57 69 6e 64 6f 77 73 20 69 66 20 74  der Windows if t
19be0 68 65 20 64 72 69 76 65 72 20 64 69 73 63 61 72  he driver discar
19bf0 64 65 64 20 61 6e 20 46 44 5f 52 45 41 44 20 65  ded an FD_READ e
19c00 76 65 6e 74 20 62 65 63 61 75 73 65 20 6e 6f 20  vent because no 
19c10 64 61 74 61 20 77 61 73 0a 70 72 65 73 65 6e 74  data was.present
19c20 2e 20 4e 6f 77 20 63 6f 72 72 65 63 74 6c 79 20  . Now correctly 
19c30 72 65 73 65 74 73 20 74 68 65 20 73 74 61 74 65  resets the state
19c40 2e 20 28 4a 4c 29 0a 0a 39 2f 33 30 2f 39 36 20  . (JL)..9/30/96 
19c50 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20 45  (bug fix) Made E
19c60 4f 46 20 73 74 69 63 6b 79 20 6f 6e 20 57 69 6e  OF sticky on Win
19c70 64 6f 77 73 20 73 6f 63 6b 65 74 73 2c 20 73 6f  dows sockets, so
19c80 20 74 68 61 74 20 66 69 6c 65 65 76 65 6e 74 0a   that fileevent.
19c90 72 65 61 64 61 62 6c 65 20 77 69 6c 6c 20 66 69  readable will fi
19ca0 72 65 20 72 65 70 65 61 74 65 64 6c 79 20 75 6e  re repeatedly un
19cb0 74 69 6c 20 74 68 65 20 73 6f 63 6b 65 74 20 69  til the socket i
19cc0 73 20 63 6c 6f 73 65 64 2e 20 50 72 65 76 69 6f  s closed. Previo
19cd0 75 73 6c 79 20 74 68 65 0a 66 69 6c 65 65 76 65  usly the.fileeve
19ce0 6e 74 20 66 69 72 65 64 20 6f 6e 6c 79 20 6f 6e  nt fired only on
19cf0 63 65 2e 20 54 68 69 73 20 63 6f 75 6c 64 20 6c  ce. This could l
19d00 65 61 64 20 74 6f 20 6e 65 76 65 72 2d 63 6c 6f  ead to never-clo
19d10 73 65 64 20 63 6f 6e 6e 65 63 74 69 6f 6e 73 20  sed connections 
19d20 69 66 0a 74 68 65 20 54 63 6c 20 73 63 72 69 70  if.the Tcl scrip
19d30 74 20 69 6e 20 74 68 65 20 66 69 6c 65 65 76 65  t in the fileeve
19d40 6e 74 20 77 61 73 6e 27 74 20 63 6c 6f 73 69 6e  nt wasn't closin
19d50 67 20 74 68 65 20 73 6f 63 6b 65 74 20 69 6d 6d  g the socket imm
19d60 65 64 69 61 74 65 6c 79 2e 20 28 4a 4c 29 0a 0a  ediately. (JL)..
19d70 31 30 2f 32 2f 39 36 20 28 6e 65 77 20 66 65 61  10/2/96 (new fea
19d80 74 75 72 65 29 20 49 6d 70 72 6f 76 65 64 20 74  ture) Improved t
19d90 68 65 20 70 61 63 6b 61 67 65 20 6c 6f 61 64 65  he package loade
19da0 72 3a 0a 20 20 20 20 2d 20 41 64 64 65 64 20 6e  r:.    - Added n
19db0 65 77 20 76 61 72 69 61 62 6c 65 20 74 63 6c 5f  ew variable tcl_
19dc0 70 6b 67 50 61 74 68 2c 20 77 68 69 63 68 20 68  pkgPath, which h
19dd0 6f 6c 64 73 20 74 68 65 20 64 65 66 61 75 6c 74  olds the default
19de0 0a 20 20 20 20 20 20 64 69 72 65 63 74 6f 72 69  .      directori
19df0 65 73 20 75 6e 64 65 72 20 77 68 69 63 68 20 70  es under which p
19e00 61 63 6b 61 67 65 73 20 61 72 65 20 6e 6f 72 6d  ackages are norm
19e10 61 6c 6c 79 20 69 6e 73 74 61 6c 6c 65 64 20 28  ally installed (
19e20 65 61 63 68 0a 20 20 20 20 20 20 70 61 63 6b 61  each.      packa
19e30 67 65 20 67 6f 65 73 20 69 6e 20 61 20 73 65 70  ge goes in a sep
19e40 61 72 61 74 65 20 73 75 62 64 69 72 65 63 74 6f  arate subdirecto
19e50 72 79 20 6f 66 20 61 20 64 69 72 65 63 74 6f 72  ry of a director
19e60 79 20 69 6e 0a 20 20 20 20 20 20 24 74 63 6c 5f  y in.      $tcl_
19e70 70 6b 67 50 61 74 68 29 2e 20 20 54 68 65 73 65  pkgPath).  These
19e80 20 64 69 72 65 63 74 6f 72 69 65 73 20 61 72 65   directories are
19e90 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 75 74   included in aut
19ea0 6f 5f 70 61 74 68 20 62 79 0a 20 20 20 20 20 20  o_path by.      
19eb0 64 65 66 61 75 6c 74 2e 0a 20 20 20 20 2d 20 43  default..    - C
19ec0 68 61 6e 67 65 64 20 74 68 65 20 70 61 63 6b 61  hanged the packa
19ed0 67 65 20 61 75 74 6f 2d 6c 6f 61 64 65 72 20 74  ge auto-loader t
19ee0 6f 20 6c 6f 6f 6b 20 66 6f 72 20 70 6b 67 49 6e  o look for pkgIn
19ef0 64 65 78 2e 74 63 6c 20 66 69 6c 65 73 20 0a 20  dex.tcl files . 
19f00 20 20 20 20 20 6e 6f 74 20 6f 6e 6c 79 20 69 6e       not only in
19f10 20 74 68 65 20 61 75 74 6f 5f 70 61 74 68 20 64   the auto_path d
19f20 69 72 65 63 74 6f 72 69 65 73 20 62 75 74 20 61  irectories but a
19f30 6c 73 6f 20 69 6e 20 74 68 65 69 72 20 69 6d 6d  lso in their imm
19f40 65 64 69 61 74 65 0a 20 20 20 20 20 20 63 68 69  ediate.      chi
19f50 6c 64 72 65 6e 2e 20 20 54 68 69 73 20 73 68 6f  ldren.  This sho
19f60 75 6c 64 20 6d 61 6b 65 20 69 74 20 65 61 73 69  uld make it easi
19f70 65 72 20 74 6f 20 69 6e 73 74 61 6c 6c 20 61 6e  er to install an
19f80 64 20 75 6e 69 6e 73 74 61 6c 6c 0a 20 20 20 20  d uninstall.    
19f90 20 20 70 61 63 6b 61 67 65 73 20 28 64 6f 6e 27    packages (don'
19fa0 74 20 68 61 76 65 20 74 6f 20 63 68 61 6e 67 65  t have to change
19fb0 20 61 75 74 6f 5f 70 61 74 68 20 6f 72 20 6d 65   auto_path or me
19fc0 72 67 65 20 70 6b 67 49 6e 64 65 78 2e 74 63 6c  rge pkgIndex.tcl
19fd0 0a 20 20 20 20 20 20 66 69 6c 65 73 29 2e 20 28  .      files). (
19fe0 4a 4f 29 0a 0a 31 30 2f 33 2f 39 36 20 28 62 75  JO)..10/3/96 (bu
19ff0 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 74  g fix) Changed t
1a000 63 6c 73 68 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72  clsh to look for
1a010 20 74 63 6c 73 68 72 63 2e 74 63 6c 20 69 6e 73   tclshrc.tcl ins
1a020 74 65 61 64 20 6f 66 0a 74 63 6c 73 68 2e 72 63  tead of.tclsh.rc
1a030 20 6f 6e 20 73 74 61 72 74 75 70 20 75 6e 64 65   on startup unde
1a040 72 20 57 69 6e 64 6f 77 73 2e 20 20 54 68 69 73  r Windows.  This
1a050 20 69 73 20 6d 6f 72 65 20 63 6f 6e 73 69 73 74   is more consist
1a060 65 6e 74 20 77 69 74 68 20 77 69 73 68 20 61 6e  ent with wish an
1a070 64 0a 75 73 65 73 20 74 68 65 20 72 69 67 68 74  d.uses the right
1a080 20 65 78 74 65 6e 73 69 6f 6e 2e 20 28 53 53 29   extension. (SS)
1a090 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
1a0a0 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
1a0b0 2a 2a 0a 0a 31 30 2f 38 2f 39 36 20 28 62 75 67  **..10/8/96 (bug
1a0c0 20 66 69 78 29 20 43 6f 6e 76 65 72 74 63 6c 6f   fix) Convertclo
1a0d0 63 6b 20 64 6f 65 73 20 6e 6f 74 20 70 61 72 73  ck does not pars
1a0e0 65 20 32 34 2d 68 6f 75 72 20 74 69 6d 65 73 20  e 24-hour times 
1a0f0 6f 66 20 74 68 65 0a 66 6f 72 6d 20 22 68 68 6d  of the.form "hhm
1a100 6d 22 20 63 6f 72 72 65 63 74 6c 79 20 77 68 65  m" correctly whe
1a110 6e 20 68 6f 75 72 20 3d 20 30 30 2e 20 20 49 6e  n hour = 00.  In
1a120 20 74 68 65 20 70 61 72 73 65 20 63 6f 64 65 2c   the parse code,
1a130 20 68 6f 75 72 20 6d 75 73 74 20 62 65 0a 3e 3d   hour must be.>=
1a140 20 31 30 30 20 66 6f 72 20 6d 69 6e 75 74 65 73   100 for minutes
1a150 20 74 6f 20 62 65 20 6e 6f 6e 2d 7a 65 72 6f 2e   to be non-zero.
1a160 20 20 54 68 61 6e 6b 73 20 74 6f 20 4c 69 6e 74    Thanks to Lint
1a170 20 4c 61 43 6f 75 72 20 66 6f 72 20 74 68 69 73   LaCour for this
1a180 0a 62 75 67 20 66 69 78 2e 20 28 52 4a 29 0a 0a  .bug fix. (RJ)..
1a190 31 30 2f 31 31 2f 39 36 20 28 62 75 67 20 66 69  10/11/96 (bug fi
1a1a0 78 29 20 55 6e 64 65 72 20 57 69 6e 64 6f 77 73  x) Under Windows
1a1b0 2c 20 74 68 65 20 70 69 64 20 63 6f 6d 6d 61 6e  , the pid comman
1a1c0 64 20 72 65 74 75 72 6e 65 64 20 74 68 65 20 70  d returned the p
1a1d0 72 6f 63 65 73 73 0a 68 61 6e 64 6c 65 20 69 6e  rocess.handle in
1a1e0 73 74 65 61 64 20 6f 66 20 74 68 65 20 70 72 6f  stead of the pro
1a1f0 63 65 73 73 20 69 64 2e 20 28 53 53 29 0a 0a 2d  cess id. (SS)..-
1a200 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1a210 20 52 65 6c 65 61 73 65 64 20 37 2e 36 2c 20 31   Released 7.6, 1
1a220 30 2f 31 36 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d  0/16/96 --------
1a230 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
1a240 0a 31 30 2f 32 39 2f 39 36 20 28 62 75 67 20 66  .10/29/96 (bug f
1a250 69 78 29 20 55 6e 64 65 72 20 57 69 6e 64 6f 77  ix) Under Window
1a260 73 2c 20 73 6f 63 6b 65 74 73 20 77 6f 75 6c 64  s, sockets would
1a270 20 63 6f 6e 73 75 6d 65 20 31 30 30 25 20 43 50   consume 100% CP
1a280 55 20 74 69 6d 65 20 61 66 74 65 72 0a 74 68 65  U time after.the
1a290 20 66 69 72 73 74 20 61 63 63 65 70 74 28 29 2c   first accept(),
1a2a0 20 64 75 65 20 74 6f 20 61 20 74 79 70 6f 2e 20   due to a typo. 
1a2b0 28 4a 4c 29 0a 0a 31 30 2f 32 39 2f 39 36 20 28  (JL)..10/29/96 (
1a2c0 62 75 67 20 66 69 78 29 20 49 6e 63 6f 72 72 65  bug fix) Incorre
1a2d0 63 74 20 72 65 66 63 6f 75 6e 74 20 6d 61 6e 61  ct refcount mana
1a2e0 67 65 6d 65 6e 74 20 63 61 75 73 65 64 20 73 74  gement caused st
1a2f0 61 6e 64 61 72 64 20 63 68 61 6e 6e 65 6c 73 0a  andard channels.
1a300 6e 6f 74 20 74 6f 20 67 65 74 20 64 65 6c 65 74  not to get delet
1a310 65 64 20 61 74 20 70 72 6f 63 65 73 73 20 65 78  ed at process ex
1a320 69 74 20 6f 72 20 44 4c 4c 20 75 6e 6c 6f 61 64  it or DLL unload
1a330 20 74 69 6d 65 2c 20 63 61 75 73 69 6e 67 20 61   time, causing a
1a340 20 6d 65 6d 6f 72 79 0a 6c 65 61 6b 20 6f 66 20   memory.leak of 
1a350 75 70 77 61 72 64 73 20 6f 66 20 32 30 4b 20 65  upwards of 20K e
1a360 61 63 68 20 74 69 6d 65 2e 20 28 4a 4c 29 0a 0a  ach time. (JL)..
1a370 31 31 2f 37 2f 39 36 20 28 62 75 67 20 66 69 78  11/7/96 (bug fix
1a380 29 20 41 75 74 6f 2d 65 78 65 63 20 64 69 64 6e  ) Auto-exec didn
1a390 27 74 20 77 6f 72 6b 20 6f 6e 20 66 69 6c 65 20  't work on file 
1a3a0 6e 61 6d 65 73 20 74 68 61 74 20 63 6f 6e 74 61  names that conta
1a3b0 69 6e 65 64 0a 73 70 61 63 65 73 2e 20 28 4a 4f  ined.spaces. (JO
1a3c0 29 0a 0a 31 31 2f 38 2f 39 36 20 28 62 75 67 20  )..11/8/96 (bug 
1a3d0 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20  fix) Fixed core 
1a3e0 64 75 6d 70 20 74 68 61 74 20 77 6f 75 6c 64 20  dump that would 
1a3f0 6f 63 63 75 72 20 69 66 20 6d 6f 72 65 20 74 68  occur if more th
1a400 61 6e 20 6f 6e 65 20 63 61 6c 6c 0a 74 6f 20 54  an one call.to T
1a410 63 6c 5f 44 65 6c 65 74 65 43 68 61 6e 6e 65 6c  cl_DeleteChannel
1a420 48 61 6e 64 6c 65 72 20 77 61 73 20 6d 61 64 65  Handler was made
1a430 20 74 6f 20 64 65 6c 65 74 65 20 61 20 67 69 76   to delete a giv
1a440 65 6e 20 63 68 61 6e 6e 65 6c 20 68 61 6e 64 6c  en channel handl
1a450 65 72 2e 20 28 4a 4c 29 0a 0a 31 31 2f 38 2f 39  er. (JL)..11/8/9
1a460 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
1a470 64 20 74 65 73 74 20 66 6f 72 20 72 65 74 75 72  d test for retur
1a480 6e 20 76 61 6c 75 65 20 69 6e 20 54 63 6c 5f 53  n value in Tcl_S
1a490 65 65 6b 20 61 6e 64 20 54 63 6c 5f 53 65 65 6b  eek and Tcl_Seek
1a4a0 43 6d 64 0a 74 6f 20 6f 6e 6c 79 20 74 72 65 61  Cmd.to only trea
1a4b0 74 20 2d 31 20 61 73 20 65 72 72 6f 72 2c 20 69  t -1 as error, i
1a4c0 6e 73 74 65 61 64 20 6f 66 20 61 6c 6c 20 6e 65  nstead of all ne
1a4d0 67 61 74 69 76 65 20 6e 75 6d 62 65 72 73 2e 20  gative numbers. 
1a4e0 28 4a 4c 29 0a 0a 31 31 2f 31 32 2f 39 36 20 28  (JL)..11/12/96 (
1a4f0 62 75 67 20 66 69 78 29 20 44 6f 20 6e 6f 74 20  bug fix) Do not 
1a500 62 6c 6f 63 6b 69 6e 67 20 77 61 69 74 69 6e 67  blocking waiting
1a510 20 66 6f 72 20 70 72 6f 63 65 73 73 65 73 20 61   for processes a
1a520 74 20 74 68 65 20 65 6e 64 20 6f 66 20 61 0a 70  t the end of a.p
1a530 69 70 65 20 64 75 72 69 6e 67 20 65 78 69 74 20  ipe during exit 
1a540 63 6c 65 61 6e 75 70 2e 20 28 4a 4c 29 0a 0a 31  cleanup. (JL)..1
1a550 31 2f 31 32 2f 39 36 20 28 62 75 67 20 66 69 78  1/12/96 (bug fix
1a560 29 20 49 66 20 77 65 20 61 72 65 20 69 6e 20 65  ) If we are in e
1a570 78 69 74 20 63 6c 65 61 6e 75 70 2c 20 64 6f 20  xit cleanup, do 
1a580 6e 6f 74 20 63 6c 6f 73 65 20 74 68 65 20 73 79  not close the sy
1a590 73 74 65 6d 20 6c 65 76 65 6c 0a 66 69 6c 65 20  stem level.file 
1a5a0 64 65 73 63 72 69 70 74 6f 72 73 20 30 2c 20 31  descriptors 0, 1
1a5b0 20 61 6e 64 20 32 2e 20 50 72 65 76 69 6f 75 73   and 2. Previous
1a5c0 6c 79 20 74 68 65 79 20 77 65 72 65 20 62 65 69  ly they were bei
1a5d0 6e 67 20 63 6c 6f 73 65 64 20 77 68 69 63 68 20  ng closed which 
1a5e0 69 73 0a 69 6e 63 6f 72 72 65 63 74 2c 20 69 6e  is.incorrect, in
1a5f0 20 74 68 65 20 65 6d 62 65 64 64 65 64 20 63 61   the embedded ca
1a600 73 65 2e 20 54 68 69 73 20 6c 65 64 20 74 6f 20  se. This led to 
1a610 77 65 69 72 64 20 62 65 68 61 76 69 6f 72 20 66  weird behavior f
1a620 6f 72 20 70 72 6f 67 72 61 6d 73 0a 74 68 61 74  or programs.that
1a630 20 77 61 6e 74 20 74 6f 20 69 6e 74 65 72 70 6f   want to interpo
1a640 73 65 20 6f 6e 20 49 2f 4f 20 74 68 72 6f 75 67  se on I/O throug
1a650 68 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 66  h the standard f
1a660 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 73 20  ile descriptors 
1a670 28 65 2e 67 2e 0a 4e 65 74 73 63 61 70 65 20 4e  (e.g..Netscape N
1a680 61 76 69 67 61 74 6f 72 29 2e 20 28 4a 4c 29 0a  avigator). (JL).
1a690 0a 31 31 2f 31 35 2f 39 36 20 28 62 75 67 20 66  .11/15/96 (bug f
1a6a0 69 78 29 20 46 69 78 65 64 20 63 6f 72 65 20 64  ix) Fixed core d
1a6b0 75 6d 70 20 6f 6e 20 57 69 6e 64 6f 77 73 20 73  ump on Windows s
1a6c0 6f 63 6b 65 74 73 20 64 75 65 20 74 6f 20 64 65  ockets due to de
1a6d0 70 65 6e 64 65 6e 63 79 20 6f 6e 0a 64 65 6c 65  pendency on.dele
1a6e0 74 69 6f 6e 20 6f 72 64 65 72 20 61 74 20 65 78  tion order at ex
1a6f0 69 74 2e 20 4e 6f 77 20 61 6c 6c 20 73 6f 63 6b  it. Now all sock
1a700 65 74 20 66 75 6e 63 74 69 6f 6e 73 20 63 68 65  et functions che
1a710 63 6b 20 74 6f 20 73 65 65 20 69 66 20 73 6f 63  ck to see if soc
1a720 6b 65 74 73 0a 61 72 65 20 28 73 74 69 6c 6c 29  kets.are (still)
1a730 20 69 6e 69 74 69 61 6c 69 7a 65 64 2c 20 62 65   initialized, be
1a740 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 74 68 72  fore calling thr
1a750 6f 75 67 68 20 66 75 6e 63 74 69 6f 6e 20 70 6f  ough function po
1a760 69 6e 74 65 72 73 2e 20 42 65 66 6f 72 65 2c 0a  inters. Before,.
1a770 74 68 65 79 20 77 6f 75 6c 64 20 63 61 6c 6c 20  they would call 
1a780 61 6e 64 20 6d 69 67 68 74 20 65 6e 64 20 75 70  and might end up
1a790 20 63 61 6c 6c 69 6e 67 20 75 6e 6c 6f 61 64 65   calling unloade
1a7a0 64 20 6f 62 6a 65 63 74 20 63 6f 64 65 2e 20 28  d object code. (
1a7b0 4a 4c 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 62  JL)..11/15/96 (b
1a7c0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63 6f  ug fix) Fixed co
1a7d0 72 65 20 64 75 6d 70 20 69 6e 20 57 69 6e 64 6f  re dump in Windo
1a7e0 77 73 20 73 6f 63 6b 65 74 20 69 6e 69 74 69 61  ws socket initia
1a7f0 6c 69 7a 61 74 69 6f 6e 20 72 6f 75 74 69 6e 65  lization routine
1a800 0a 69 66 20 73 6f 63 6b 65 74 73 20 77 65 72 65  .if sockets were
1a810 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 20 6f   not installed o
1a820 6e 20 74 68 65 20 73 79 73 74 65 6d 2e 20 42 65  n the system. Be
1a830 66 6f 72 65 2c 20 69 74 20 77 61 73 20 6e 6f 74  fore, it was not
1a840 20 70 72 6f 70 65 72 6c 79 0a 63 68 65 63 6b 69   properly.checki
1a850 6e 67 20 74 68 65 20 72 65 73 75 6c 74 20 6f 66  ng the result of
1a860 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 6c   attempting to l
1a870 6f 61 64 20 74 68 65 20 73 6f 63 6b 65 74 20 44  oad the socket D
1a880 4c 4c 2c 20 73 6f 20 69 74 20 77 6f 75 6c 64 20  LL, so it would 
1a890 63 61 6c 6c 0a 74 68 72 6f 75 67 68 20 75 6e 69  call.through uni
1a8a0 6e 69 74 69 61 6c 69 7a 65 64 20 66 75 6e 63 74  nitialized funct
1a8b0 69 6f 6e 20 70 6f 69 6e 74 65 72 73 2e 20 28 4a  ion pointers. (J
1a8c0 4c 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 62 75  L)..11/15/96 (bu
1a8d0 67 20 66 69 78 29 20 46 69 78 65 64 20 6d 65 6d  g fix) Fixed mem
1a8e0 6f 72 79 20 6c 65 61 6b 20 69 6e 20 57 69 6e 64  ory leak in Wind
1a8f0 6f 77 73 20 73 6f 63 6b 65 74 73 20 77 68 69 63  ows sockets whic
1a900 68 20 6c 65 66 74 20 73 6f 63 6b 65 74 0a 44 4c  h left socket.DL
1a910 4c 20 68 61 6e 64 6c 65 20 6f 70 65 6e 20 61 6e  L handle open an
1a920 64 20 63 6f 75 6c 64 20 68 6f 6c 64 20 74 68 65  d could hold the
1a930 20 73 6f 63 6b 65 74 20 44 4c 4c 20 69 6e 20 6d   socket DLL in m
1a940 65 6d 6f 72 79 20 75 6e 65 63 63 65 73 73 61 72  emory uneccessar
1a950 69 6c 79 2c 0a 75 6e 74 69 6c 20 61 20 72 65 62  ily,.until a reb
1a960 6f 6f 74 2e 20 28 4a 4c 29 0a 0a 31 32 2f 34 2f  oot. (JL)..12/4/
1a970 39 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78  96 (bug fix) Fix
1a980 65 64 20 62 75 67 20 69 6e 20 4d 61 63 69 6e 74  ed bug in Macint
1a990 6f 73 68 20 73 6f 63 6b 65 74 20 63 6f 64 65 20  osh socket code 
1a9a0 74 68 61 74 20 63 6f 75 6c 64 20 72 65 73 75 6c  that could resul
1a9b0 74 0a 69 6e 20 6c 6f 73 74 20 64 61 74 61 20 69  t.in lost data i
1a9c0 66 20 61 20 63 6c 69 65 6e 74 20 77 61 73 20 63  f a client was c
1a9d0 6c 6f 73 65 64 20 74 6f 6f 20 73 6f 6f 6e 20 61  losed too soon a
1a9e0 66 74 65 72 20 73 65 6e 64 69 6e 67 20 64 61 74  fter sending dat
1a9f0 61 2e 20 28 52 4a 29 0a 0a 31 32 2f 31 37 2f 39  a. (RJ)..12/17/9
1aa00 36 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  6 (bug fix) Fixe
1aa10 64 20 64 65 61 64 6c 6f 63 6b 20 62 75 67 20 69  d deadlock bug i
1aa20 6e 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74  n Windows socket
1aa30 73 20 64 75 65 20 74 6f 20 6c 6f 73 69 6e 67 20  s due to losing 
1aa40 61 6e 0a 65 76 65 6e 74 2e 20 54 68 69 73 20 77  an.event. This w
1aa50 61 73 20 68 61 70 70 65 6e 69 6e 67 20 62 65 63  as happening bec
1aa60 61 75 73 65 20 6f 66 20 61 6e 20 69 6e 74 65 72  ause of an inter
1aa70 61 63 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 62  action between b
1aa80 75 66 66 65 72 69 6e 67 20 61 6e 64 0a 6e 6f 6e  uffering and.non
1aa90 62 6c 6f 63 6b 69 6e 67 20 6d 6f 64 65 20 6f 6e  blocking mode on
1aaa0 20 73 6f 63 6b 65 74 73 2e 20 4e 6f 77 20 73 77   sockets. Now sw
1aab0 69 74 63 68 65 64 20 74 6f 20 73 6f 63 6b 65 74  itched to socket
1aac0 73 20 62 65 69 6e 67 20 62 6c 6f 63 6b 69 6e 67  s being blocking
1aad0 20 62 79 0a 64 65 66 61 75 6c 74 2c 20 73 6f 20   by.default, so 
1aae0 77 65 20 61 72 65 20 61 6c 73 6f 20 6e 6f 20 6c  we are also no l
1aaf0 6f 6e 67 65 72 20 65 6d 75 6c 61 74 69 6e 67 20  onger emulating 
1ab00 62 6c 6f 63 6b 69 6e 67 20 74 68 72 6f 75 67 68  blocking through
1ab10 20 61 20 70 72 69 76 61 74 65 0a 65 76 65 6e 74   a private.event
1ab20 20 6c 6f 6f 70 2e 20 28 4a 4c 29 0a 0a 31 2f 32   loop. (JL)..1/2
1ab30 31 2f 39 37 20 28 70 65 72 66 6f 72 6d 61 6e 63  1/97 (performanc
1ab40 65 20 62 75 67 20 66 69 78 29 20 43 6c 69 65 6e  e bug fix) Clien
1ab50 74 20 54 43 50 20 63 6f 6e 6e 65 63 74 69 6f 6e  t TCP connection
1ab60 73 20 77 65 72 65 20 73 6c 6f 77 20 74 6f 20 63  s were slow to c
1ab70 72 65 61 74 65 0a 62 65 63 61 75 73 65 20 67 65  reate.because ge
1ab80 74 73 65 72 76 62 79 6e 61 6d 65 20 77 61 73 20  tservbyname was 
1ab90 61 6c 77 61 79 73 20 63 61 6c 6c 65 64 20 6f 6e  always called on
1aba0 20 74 68 65 20 70 6f 72 74 2e 20 20 4e 6f 77 20   the port.  Now 
1abb0 74 68 69 73 20 69 73 20 6f 6e 6c 79 0a 64 6f 6e  this is only.don
1abc0 65 20 69 66 20 54 63 6c 5f 47 65 74 49 6e 74 20  e if Tcl_GetInt 
1abd0 66 61 69 6c 73 2e 20 28 42 57 29 0a 0a 31 2f 32  fails. (BW)..1/2
1abe0 31 2f 39 37 20 28 63 6f 6e 66 69 67 75 72 61 74  1/97 (configurat
1abf0 69 6f 6e 20 66 69 78 29 20 4d 61 64 65 20 69 74  ion fix) Made it
1ac00 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 6f 76 65   possible to ove
1ac10 72 72 69 64 65 20 54 43 4c 5f 50 41 43 4b 41 47  rride TCL_PACKAG
1ac20 45 5f 50 41 54 48 0a 64 75 72 69 6e 67 20 6d 61  E_PATH.during ma
1ac30 6b 65 2e 20 20 50 72 65 76 69 6f 75 73 6c 79 20  ke.  Previously 
1ac40 69 74 20 77 61 73 20 6f 6e 6c 79 20 73 65 74 20  it was only set 
1ac50 64 75 72 69 6e 67 20 61 75 74 6f 63 6f 6e 66 20  during autoconf 
1ac60 70 72 6f 63 65 73 73 2e 0a 0a 31 2f 32 39 2f 39  process...1/29/9
1ac70 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  7 (bug fix) Fixe
1ac80 64 20 73 6f 6d 65 20 70 72 6f 62 6c 65 6d 73 20  d some problems 
1ac90 77 69 74 68 20 74 68 65 20 63 6c 6f 63 6b 20 63  with the clock c
1aca0 6f 6d 6d 61 6e 64 20 74 68 61 74 0a 69 6d 70 61  ommand that.impa
1acb0 63 74 65 64 20 68 6f 77 20 64 61 74 65 73 20 77  cted how dates w
1acc0 65 72 65 20 73 63 61 6e 65 64 20 61 66 74 65 72  ere scaned after
1acd0 20 74 68 65 20 79 65 61 72 20 32 30 30 30 2e 20   the year 2000. 
1ace0 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  (RJ)..----------
1acf0 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
1ad00 20 37 2e 36 70 32 2c 20 31 2f 33 31 2f 39 37 20   7.6p2, 1/31/97 
1ad10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ad20 2d 2d 2d 2d 2d 2d 2d 0a 0a 32 2f 35 2f 39 37 20  -------..2/5/97 
1ad30 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1ad40 61 20 62 75 67 20 77 68 65 72 65 20 69 6e 20 43  a bug where in C
1ad50 52 2d 4c 46 20 74 72 61 6e 73 6c 61 74 69 6f 6e  R-LF translation
1ad60 20 6d 6f 64 65 2c 20 5c 72 20 62 79 74 65 73 0a   mode, \r bytes.
1ad70 69 6e 20 74 68 65 20 69 6e 70 75 74 20 73 74 72  in the input str
1ad80 65 61 6d 20 77 65 72 65 20 6e 6f 74 20 62 65 69  eam were not bei
1ad90 6e 67 20 68 61 6e 64 6c 65 64 20 63 6f 72 72 65  ng handled corre
1ada0 63 74 6c 79 2e 20 28 4a 4c 29 0a 0a 32 2f 32 34  ctly. (JL)..2/24
1adb0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
1adc0 78 20 62 75 67 20 77 69 74 68 20 65 78 65 63 20  x bug with exec 
1add0 75 6e 64 65 72 20 57 69 6e 33 32 73 20 6e 6f 74  under Win32s not
1ade0 20 62 65 69 6e 67 20 61 62 6c 65 20 74 6f 20 63   being able to c
1adf0 72 65 61 74 65 0a 73 74 64 65 72 72 20 66 69 6c  reate.stderr fil
1ae00 65 20 77 68 69 63 68 20 63 61 75 73 65 64 20 61  e which caused a
1ae10 6c 6c 20 65 78 65 63 73 20 74 6f 20 66 61 69 6c  ll execs to fail
1ae20 2e 20 20 46 69 78 65 64 20 74 65 6d 70 20 66 69  .  Fixed temp fi
1ae30 6c 65 20 6c 65 61 6b 20 75 6e 64 65 72 0a 57 69  le leak under.Wi
1ae40 6e 33 32 73 2e 20 20 46 69 78 65 64 20 6f 70 74  n32s.  Fixed opt
1ae50 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 20  ional parameter 
1ae60 62 75 67 20 77 69 74 68 20 53 65 61 72 63 68 50  bug with SearchP
1ae70 61 74 68 20 74 68 61 74 20 6f 6e 6c 79 20 68 61  ath that only ha
1ae80 70 70 65 6e 65 64 0a 75 6e 64 65 72 20 57 69 6e  ppened.under Win
1ae90 33 32 73 20 31 2e 32 35 2e 20 28 43 43 53 29 0a  32s 1.25. (CCS).
1aea0 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
1aeb0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aec0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1aed0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 43 68 61 6e  -----------.Chan
1aee0 67 65 73 20 66 6f 72 20 54 63 6c 20 37 2e 36 20  ges for Tcl 7.6 
1aef0 67 6f 20 61 62 6f 76 65 20 74 68 69 73 20 6c 69  go above this li
1af00 6e 65 2e 0a 43 68 61 6e 67 65 73 20 66 6f 72 20  ne..Changes for 
1af10 54 63 6c 20 37 2e 37 20 67 6f 20 62 65 6c 6f 77  Tcl 7.7 go below
1af20 20 74 68 69 73 20 6c 69 6e 65 2e 0a 2d 2d 2d 2d   this line..----
1af30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af50 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1af60 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 38 2f 39 36 20 28  ------..5/8/96 (
1af70 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
1af80 65 64 20 54 63 6c 5f 55 6e 67 65 74 73 20 43 20  ed Tcl_Ungets C 
1af90 41 50 49 20 66 6f 72 20 70 75 74 74 69 6e 67 20  API for putting 
1afa0 61 20 73 65 71 75 65 6e 63 65 20 6f 66 20 62 79  a sequence of by
1afb0 74 65 73 0a 69 6e 74 6f 20 61 20 63 68 61 6e 6e  tes.into a chann
1afc0 65 6c 27 73 20 69 6e 70 75 74 20 62 75 66 66 65  el's input buffe
1afd0 72 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 75  r. This can be u
1afe0 73 65 64 20 66 6f 72 20 22 70 75 73 68 22 20 6d  sed for "push" m
1aff0 6f 64 65 6c 20 63 68 61 6e 6e 65 6c 73 0a 77 68  odel channels.wh
1b000 65 72 65 20 74 68 65 20 69 6e 70 75 74 20 69 73  ere the input is
1b010 20 6f 62 74 61 69 6e 65 64 20 76 69 61 20 63 61   obtained via ca
1b020 6c 6c 62 61 63 6b 73 20 69 6e 73 74 65 61 64 20  llbacks instead 
1b030 6f 66 20 62 79 20 72 65 71 75 65 73 74 20 6f 66  of by request of
1b040 20 74 68 65 0a 67 65 6e 65 72 69 63 20 49 4f 20   the.generic IO 
1b050 63 6f 64 65 2e 20 4e 6f 20 54 63 6c 20 70 72 6f  code. No Tcl pro
1b060 63 65 64 75 72 65 20 79 65 74 2e 20 28 4a 4c 29  cedure yet. (JL)
1b070 0a 0a 31 31 2f 31 35 2f 39 36 20 28 6e 65 77 20  ..11/15/96 (new 
1b080 66 65 61 74 75 72 65 29 20 49 6d 70 6c 65 6d 65  feature) Impleme
1b090 6e 74 65 64 20 68 69 64 64 65 6e 20 63 6f 6d 6d  nted hidden comm
1b0a0 61 6e 64 73 2e 20 4e 65 77 20 43 20 41 50 49 73  ands. New C APIs
1b0b0 3a 0a 09 54 63 6c 5f 48 69 64 65 43 6f 6d 6d 61  :..Tcl_HideComma
1b0c0 6e 64 09 09 2d 2d 20 68 69 64 65 73 20 61 6e 20  nd..-- hides an 
1b0d0 65 78 69 73 74 69 6e 67 20 65 78 70 6f 73 65 64  existing exposed
1b0e0 20 63 6f 6d 6d 61 6e 64 2e 0a 09 54 63 6c 5f 45   command...Tcl_E
1b0f0 78 70 6f 73 65 43 6f 6d 6d 61 6e 64 09 2d 2d 20  xposeCommand.-- 
1b100 65 78 70 6f 73 65 73 20 61 6e 20 65 78 69 73 74  exposes an exist
1b110 69 6e 67 20 68 69 64 64 65 6e 20 63 6f 6d 6d 61  ing hidden comma
1b120 6e 64 2e 0a 4e 65 77 20 74 63 6c 20 41 50 49 73  nd..New tcl APIs
1b130 3a 0a 09 69 6e 74 65 72 70 20 69 6e 76 6f 6b 65  :..interp invoke
1b140 68 69 64 64 65 6e 09 2d 2d 20 69 6e 76 6f 6b 65  hidden.-- invoke
1b150 73 20 61 20 68 69 64 64 65 6e 20 63 6f 6d 6d 61  s a hidden comma
1b160 6e 64 20 69 6e 20 61 20 73 6c 61 76 65 2e 0a 09  nd in a slave...
1b170 69 6e 74 65 72 70 20 68 69 64 65 09 09 2d 2d 20  interp hide..-- 
1b180 68 69 64 65 73 20 61 6e 20 65 78 69 73 74 69 6e  hides an existin
1b190 67 20 65 78 70 6f 73 65 64 20 63 6f 6d 6d 61 6e  g exposed comman
1b1a0 64 2e 0a 09 69 6e 74 65 72 70 20 65 78 70 6f 73  d...interp expos
1b1b0 65 09 09 2d 2d 20 65 78 70 6f 73 65 73 20 61 6e  e..-- exposes an
1b1c0 20 65 78 69 73 74 69 6e 67 20 68 69 64 64 65 6e   existing hidden
1b1d0 20 63 6f 6d 6d 61 6e 64 2e 0a 09 69 6e 74 65 72   command...inter
1b1e0 70 20 68 69 64 64 65 6e 09 09 2d 2d 20 72 65 74  p hidden..-- ret
1b1f0 75 72 6e 73 20 61 20 6c 69 73 74 20 6f 66 20 68  urns a list of h
1b200 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 73 2e 0a  idden commands..
1b210 54 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  The implementati
1b220 6f 6e 20 6f 66 20 53 61 66 65 20 54 63 6c 20 6e  on of Safe Tcl n
1b230 6f 77 20 75 73 65 73 20 74 68 65 20 6e 65 77 20  ow uses the new 
1b240 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e 64 73 20  hidden commands 
1b250 66 61 63 69 6c 69 74 79 0a 74 6f 20 69 6d 70 6c  facility.to impl
1b260 65 6d 65 6e 74 20 74 68 65 20 73 61 66 65 20 62  ement the safe b
1b270 61 73 65 2c 20 69 6e 73 74 65 61 64 20 6f 66 20  ase, instead of 
1b280 64 65 6c 65 74 69 6e 67 20 74 68 65 20 63 6f 6d  deleting the com
1b290 6d 61 6e 64 73 20 66 72 6f 6d 20 61 20 73 61 66  mands from a saf
1b2a0 65 0a 69 6e 74 65 72 70 72 65 74 65 72 2e 20 28  e.interpreter. (
1b2b0 4a 4c 29 0a 0a 31 31 2f 31 35 2f 39 36 20 28 6e  JL)..11/15/96 (n
1b2c0 65 77 20 66 65 61 74 75 72 65 29 20 49 6d 70 6c  ew feature) Impl
1b2d0 65 6d 65 6e 74 65 64 20 74 68 65 20 73 61 66 65  emented the safe
1b2e0 20 62 61 73 65 2c 20 61 20 6d 65 63 68 61 6e 69   base, a mechani
1b2f0 73 6d 20 66 6f 72 0a 69 6e 73 74 61 6c 6c 69 6e  sm for.installin
1b300 67 20 61 6e 64 20 72 65 71 75 65 73 74 69 6e 67  g and requesting
1b310 20 73 65 63 75 72 69 74 79 20 70 6f 6c 69 63 69   security polici
1b320 65 73 2c 20 70 75 72 65 6c 79 20 69 6e 20 54 63  es, purely in Tc
1b330 6c 20 63 6f 64 65 2e 20 4f 76 65 72 6c 6f 61 64  l code. Overload
1b340 73 0a 74 68 65 20 70 61 63 6b 61 67 65 20 63 6f  s.the package co
1b350 6d 6d 61 6e 64 20 74 6f 20 61 6c 73 6f 20 61 6c  mmand to also al
1b360 6c 6f 77 20 61 6e 20 69 6e 74 65 72 70 72 65 74  low an interpret
1b370 65 72 20 74 6f 20 22 72 65 71 75 69 72 65 22 20  er to "require" 
1b380 61 20 70 6f 6c 69 63 79 2e 20 54 68 65 0a 66 6f  a policy. The.fo
1b390 6c 6c 6f 77 69 6e 67 20 6e 65 77 20 6c 69 62 72  llowing new libr
1b3a0 61 72 79 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65  ary commands are
1b3b0 20 70 72 6f 76 69 64 65 64 3a 0a 09 74 63 6c 5f   provided:..tcl_
1b3c0 73 61 66 65 43 72 65 61 74 65 49 6e 74 65 72 70  safeCreateInterp
1b3d0 09 2d 2d 20 63 72 65 61 74 65 73 20 61 20 73 6c  .-- creates a sl
1b3e0 61 76 65 20 61 6e 20 69 6e 69 74 69 61 6c 69 7a  ave an initializ
1b3f0 65 73 20 74 68 65 0a 09 09 09 09 20 20 20 70 6f  es the.....   po
1b400 6c 69 63 79 20 6d 65 63 68 61 6e 69 73 6d 2e 0a  licy mechanism..
1b410 09 74 63 6c 5f 73 61 66 65 49 6e 69 74 49 6e 74  .tcl_safeInitInt
1b420 65 72 70 09 2d 2d 20 69 6e 69 74 69 61 6c 69 7a  erp.-- initializ
1b430 65 73 20 61 6e 20 65 78 69 73 74 69 6e 67 20 73  es an existing s
1b440 6c 61 76 65 20 77 69 74 68 20 74 68 65 0a 09 09  lave with the...
1b450 09 09 20 20 20 70 6f 6c 69 63 79 20 6d 65 63 68  ..   policy mech
1b460 61 6e 69 73 6d 2e 0a 09 74 63 6c 5f 73 61 66 65  anism...tcl_safe
1b470 44 65 6c 65 74 65 49 6e 74 65 72 70 09 2d 2d 20  DeleteInterp.-- 
1b480 64 65 6c 65 74 65 73 20 61 20 73 6c 61 76 65 20  deletes a slave 
1b490 61 6e 64 20 64 65 69 6e 69 74 69 61 6c 69 7a 65  and deinitialize
1b4a0 73 20 74 68 65 0a 09 09 09 09 20 20 20 70 6f 6c  s the.....   pol
1b4b0 69 63 79 20 6d 65 63 68 61 6e 69 73 6d 2e 0a 41  icy mechanism..A
1b4c0 64 64 65 64 20 61 20 6e 65 77 20 66 69 6c 65 20  dded a new file 
1b4d0 74 6f 20 74 68 65 20 6c 69 62 72 61 72 79 2c 20  to the library, 
1b4e0 73 61 66 65 69 6e 69 74 2e 74 63 6c 2c 20 74 6f  safeinit.tcl, to
1b4f0 20 68 6f 6c 64 20 69 6d 70 6c 65 6d 65 6e 74 61   hold implementa
1b500 74 69 6f 6e 2e 20 28 4a 4c 29 0a 4f 6e 20 37 2f  tion. (JL).On 7/
1b510 39 2f 39 37 2c 20 72 65 6d 6f 76 65 64 20 74 68  9/97, removed th
1b520 65 20 70 6f 6c 69 63 79 20 6c 6f 61 64 69 6e 67  e policy loading
1b530 20 6d 65 63 68 61 6e 69 73 6d 20 66 72 6f 6d 20   mechanism from 
1b540 74 68 65 20 53 61 66 65 20 42 61 73 65 2e 20 4c  the Safe Base. L
1b550 65 66 74 0a 6f 6e 6c 79 20 74 68 65 20 53 61 66  eft.only the Saf
1b560 65 20 42 61 73 65 20 61 6c 69 61 73 65 73 20 64  e Base aliases d
1b570 65 61 6c 69 6e 67 20 77 69 74 68 20 61 75 74 6f  ealing with auto
1b580 2d 6c 6f 61 64 69 6e 67 20 61 6e 64 20 73 6f 75  -loading and sou
1b590 72 63 65 2e 20 28 4a 4c 29 0a 0a 31 32 2f 36 2f  rce. (JL)..12/6/
1b5a0 39 36 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  96 (new feature)
1b5b0 20 49 6d 70 6c 65 6d 65 6e 74 65 64 20 54 63 6c   Implemented Tcl
1b5c0 5f 46 69 6e 61 6c 69 7a 65 2c 20 61 6e 20 41 50  _Finalize, an AP
1b5d0 49 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65  I that should be
1b5e0 0a 63 61 6c 6c 65 64 20 62 79 20 61 20 70 72 6f  .called by a pro
1b5f0 63 65 73 73 20 77 68 65 6e 20 69 74 20 69 73 20  cess when it is 
1b600 64 6f 6e 65 20 75 73 69 6e 67 20 54 63 6c 2e 20  done using Tcl. 
1b610 54 68 69 73 20 41 50 49 20 72 75 6e 73 20 61 6c  This API runs al
1b620 6c 20 74 68 65 20 65 78 69 74 0a 68 61 6e 64 6c  l the exit.handl
1b630 65 72 73 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65  ers to allow the
1b640 6d 20 74 6f 20 63 6c 65 61 6e 20 75 70 20 72 65  m to clean up re
1b650 73 6f 75 72 63 65 73 20 65 74 63 2e 20 28 4a 4c  sources etc. (JL
1b660 29 0a 0a 31 32 2f 31 37 2f 39 36 20 28 6e 65 77  )..12/17/96 (new
1b670 20 66 65 61 74 75 72 65 29 20 41 64 64 20 61 6e   feature) Add an
1b680 20 68 74 74 70 20 54 63 6c 20 73 63 72 69 70 74   http Tcl script
1b690 20 70 61 63 6b 61 67 65 20 74 6f 20 74 68 65 20   package to the 
1b6a0 54 63 6c 20 6c 69 62 72 61 72 79 2e 0a 54 68 69  Tcl library..Thi
1b6b0 73 20 70 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d  s package implem
1b6c0 65 6e 74 73 20 74 68 65 20 63 6c 69 65 6e 74 20  ents the client 
1b6d0 73 69 64 65 20 6f 66 20 48 54 54 50 2f 31 2e 30  side of HTTP/1.0
1b6e0 3b 20 74 68 65 20 47 45 54 2c 20 48 45 41 44 2c  ; the GET, HEAD,
1b6f0 0a 61 6e 64 20 50 4f 53 54 20 72 65 71 75 65 73  .and POST reques
1b700 74 73 2e 20 28 42 57 29 0a 0a 31 2f 32 31 2f 39  ts. (BW)..1/21/9
1b710 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  7 (new feature) 
1b720 41 64 64 65 64 20 61 20 22 6d 61 72 6b 74 72 75  Added a "marktru
1b730 73 74 65 64 22 20 73 75 62 63 6f 6d 6d 61 6e 64  sted" subcommand
1b740 20 74 6f 20 74 68 65 20 22 69 6e 74 65 72 70 22   to the "interp"
1b750 20 61 6e 64 0a 74 6f 20 74 68 65 20 69 6e 74 65   and.to the inte
1b760 72 70 72 65 74 65 72 20 6f 62 6a 65 63 74 20 63  rpreter object c
1b770 6f 6d 6d 61 6e 64 2e 20 49 74 20 72 65 6d 6f 76  ommand. It remov
1b780 65 73 20 74 68 65 20 22 73 61 66 65 22 20 6d 61  es the "safe" ma
1b790 72 6b 20 6f 6e 20 61 6e 0a 69 6e 74 65 72 70 72  rk on an.interpr
1b7a0 65 74 65 72 20 61 6e 64 20 64 69 73 61 62 6c 65  eter and disable
1b7b0 73 20 68 61 72 64 2d 77 69 72 65 64 20 63 68 65  s hard-wired che
1b7c0 63 6b 73 20 66 6f 72 20 73 61 66 65 74 79 20 69  cks for safety i
1b7d0 6e 20 74 68 65 20 43 20 73 6f 75 72 63 65 73 2e  n the C sources.
1b7e0 20 28 4a 4c 29 0a 0a 31 2f 32 31 2f 39 37 20 28   (JL)..1/21/97 (
1b7f0 72 65 6d 6f 76 65 64 20 66 65 61 74 75 72 65 29  removed feature)
1b800 20 52 65 6d 6f 76 65 64 20 22 76 77 61 69 74 22   Removed "vwait"
1b810 20 66 72 6f 6d 20 73 65 74 20 6f 66 20 63 6f 6d   from set of com
1b820 6d 61 6e 64 73 20 61 76 61 69 6c 61 62 6c 65 20  mands available 
1b830 69 6e 0a 61 20 73 61 66 65 20 69 6e 74 65 72 70  in.a safe interp
1b840 72 65 74 65 72 2e 20 28 4a 4c 29 0a 0a 32 2f 31  reter. (JL)..2/1
1b850 31 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72  1/97 (new featur
1b860 65 2c 20 62 75 67 20 66 69 78 29 20 68 74 74 70  e, bug fix) http
1b870 20 70 61 63 6b 61 67 65 2e 20 20 41 64 64 65 64   package.  Added
1b880 20 2d 61 63 63 65 70 74 20 74 6f 20 68 74 74 70   -accept to http
1b890 5f 63 6f 6e 66 69 67 0a 73 6f 20 79 6f 75 20 63  _config.so you c
1b8a0 61 6e 20 73 65 74 20 74 68 65 20 41 63 63 65 70  an set the Accep
1b8b0 74 20 68 65 61 64 65 72 2e 20 20 41 64 64 65 64  t header.  Added
1b8c0 20 2d 68 61 6e 64 6c 65 72 20 6f 70 74 69 6f 6e   -handler option
1b8d0 20 74 6f 20 68 74 74 70 5f 67 65 74 20 73 6f 0a   to http_get so.
1b8e0 79 6f 75 20 63 61 6e 20 73 75 70 70 6c 79 20 79  you can supply y
1b8f0 6f 75 72 20 6f 77 6e 20 64 61 74 61 20 68 61 6e  our own data han
1b900 64 6c 65 72 2e 20 20 41 6c 73 6f 20 66 69 78 65  dler.  Also fixe
1b910 64 20 50 4f 53 54 20 6f 70 65 72 61 74 69 6f 6e  d POST operation
1b920 20 74 6f 0a 73 65 74 20 74 68 65 20 63 6f 72 72   to.set the corr
1b930 65 63 74 20 4d 49 4d 45 20 74 79 70 65 20 6f 6e  ect MIME type on
1b940 20 74 68 65 20 72 65 71 75 65 73 74 2e 20 28 42   the request. (B
1b950 57 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  W)..------------
1b960 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b970 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b980 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 43  --------------.C
1b990 68 61 6e 67 65 73 20 66 6f 72 20 54 63 6c 20 37  hanges for Tcl 7
1b9a0 2e 37 20 67 6f 20 61 62 6f 76 65 20 74 68 69 73  .7 go above this
1b9b0 20 6c 69 6e 65 2e 0a 43 68 61 6e 67 65 73 20 66   line..Changes f
1b9c0 6f 72 20 54 63 6c 20 38 2e 30 20 67 6f 20 62 65  or Tcl 8.0 go be
1b9d0 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 2e 0a 2d  low this line..-
1b9e0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1b9f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
1ba10 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 31 37 2f  ---------..9/17/
1ba20 39 36 20 28 62 75 67 20 66 69 78 29 20 55 73 69  96 (bug fix) Usi
1ba30 6e 67 20 22 75 70 76 61 72 22 20 69 74 20 77 61  ng "upvar" it wa
1ba40 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 74 75  s possible to tu
1ba50 72 6e 20 61 6e 20 61 72 72 61 79 20 65 6c 65 6d  rn an array elem
1ba60 65 6e 74 0a 69 6e 74 6f 20 61 6e 20 61 72 72 61  ent.into an arra
1ba70 79 20 69 74 73 65 6c 66 2e 20 20 43 68 61 6e 67  y itself.  Chang
1ba80 65 64 20 74 6f 20 64 69 73 61 6c 6c 6f 77 20 74  ed to disallow t
1ba90 68 69 73 3b 20 69 74 20 77 61 73 20 71 75 69 72  his; it was quir
1baa0 6b 79 20 61 6e 64 20 64 69 64 6e 27 74 0a 72 65  ky and didn't.re
1bab0 61 6c 6c 79 20 77 6f 72 6b 20 63 6f 72 72 65 63  ally work correc
1bac0 74 6c 79 20 61 6e 79 77 61 79 2e 20 28 4a 4f 29  tly anyway. (JO)
1bad0 0a 0a 31 30 2f 32 31 2f 39 36 20 28 6e 65 77 20  ..10/21/96 (new 
1bae0 66 65 61 74 75 72 65 29 20 54 68 65 20 63 6f 72  feature) The cor
1baf0 65 20 6f 66 20 74 68 65 20 54 63 6c 20 69 6e 74  e of the Tcl int
1bb00 65 72 70 72 65 74 65 72 20 68 61 73 20 62 65 65  erpreter has bee
1bb10 6e 20 72 65 70 6c 61 63 65 64 0a 77 69 74 68 20  n replaced.with 
1bb20 61 6e 20 6f 6e 2d 74 68 65 2d 66 6c 79 20 63 6f  an on-the-fly co
1bb30 6d 70 69 6c 65 72 20 74 68 61 74 20 74 72 61 6e  mpiler that tran
1bb40 73 6c 61 74 65 73 20 54 63 6c 20 73 63 72 69 70  slates Tcl scrip
1bb50 74 73 20 74 6f 20 62 79 74 65 63 6f 64 65 64 0a  ts to bytecoded.
1bb60 69 6e 73 74 72 75 63 74 69 6f 6e 73 3b 20 61 20  instructions; a 
1bb70 6e 65 77 20 69 6e 74 65 72 70 72 65 74 65 72 20  new interpreter 
1bb80 74 68 65 6e 20 65 78 65 63 75 74 65 73 20 74 68  then executes th
1bb90 65 20 62 79 74 65 63 6f 64 65 73 2e 20 54 68 65  e bytecodes. The
1bba0 20 63 6f 6d 70 69 6c 65 72 0a 69 6e 74 72 6f 64   compiler.introd
1bbb0 75 63 65 73 20 6f 6e 6c 79 20 61 20 66 65 77 20  uces only a few 
1bbc0 6d 69 6e 6f 72 20 63 68 61 6e 67 65 73 20 61 74  minor changes at
1bbd0 20 74 68 65 20 6c 65 76 65 6c 20 6f 66 20 54 63   the level of Tc
1bbe0 6c 20 73 63 72 69 70 74 73 2e 20 54 68 65 20 62  l scripts. The b
1bbf0 69 67 67 65 73 74 0a 63 68 61 6e 67 65 73 20 61  iggest.changes a
1bc00 72 65 20 74 6f 20 65 78 70 72 65 73 73 69 6f 6e  re to expression
1bc10 73 20 61 6e 64 20 6c 69 73 74 73 2e 0a 20 20 20  s and lists..   
1bc20 20 2d 20 41 20 73 65 63 6f 6e 64 20 6c 65 76 65   - A second leve
1bc30 6c 20 6f 66 20 73 75 62 73 74 69 74 75 74 69 6f  l of substitutio
1bc40 6e 73 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20  ns is no longer 
1bc50 64 6f 6e 65 20 66 6f 72 20 65 78 70 72 65 73 73  done for express
1bc60 69 6f 6e 73 2e 0a 20 20 20 20 20 20 54 68 69 73  ions..      This
1bc70 20 73 75 62 73 74 61 6e 74 69 61 6c 6c 79 20 69   substantially i
1bc80 6d 70 72 6f 76 65 73 20 74 68 65 69 72 20 65 78  mproves their ex
1bc90 65 63 75 74 69 6f 6e 20 74 69 6d 65 2e 20 54 68  ecution time. Th
1bca0 69 73 20 6d 65 61 6e 73 20 74 68 61 74 0a 20 20  is means that.  
1bcb0 20 20 20 20 74 68 65 20 65 78 70 72 65 73 73 69      the expressi
1bcc0 6f 6e 20 22 24 78 2a 34 22 20 70 72 6f 64 75 63  on "$x*4" produc
1bcd0 65 73 20 61 20 64 69 66 66 65 72 65 6e 74 20 72  es a different r
1bce0 65 73 75 6c 74 20 74 68 61 6e 20 69 6e 20 74 68  esult than in th
1bcf0 65 20 70 61 73 74 0a 20 20 20 20 20 20 69 66 20  e past.      if 
1bd00 78 20 69 73 20 22 24 79 2b 32 22 2e 20 46 6f 72  x is "$y+2". For
1bd10 74 75 6e 61 74 65 6c 79 2c 20 6e 6f 74 20 6d 75  tunately, not mu
1bd20 63 68 20 63 6f 64 65 20 64 65 70 65 6e 64 73 20  ch code depends 
1bd30 6f 6e 20 74 68 65 20 6f 6c 64 0a 20 20 20 20 20  on the old.     
1bd40 20 74 77 6f 2d 6c 65 76 65 6c 20 73 65 6d 61 6e   two-level seman
1bd50 74 69 63 73 2e 20 53 6f 6d 65 20 65 78 70 72 65  tics. Some expre
1bd60 73 73 69 6f 6e 73 20 74 68 61 74 20 64 6f 2c 20  ssions that do, 
1bd70 73 75 63 68 20 61 73 0a 20 20 20 20 20 20 22 65  such as.      "e
1bd80 78 70 72 20 5b 6a 6f 69 6e 20 24 6c 69 73 74 20  xpr [join $list 
1bd90 2b 5d 22 20 63 61 6e 20 62 65 20 72 65 63 6f 64  +]" can be recod
1bda0 65 64 20 74 6f 20 77 6f 72 6b 20 69 6e 20 54 63  ed to work in Tc
1bdb0 6c 38 2e 30 20 62 79 20 61 64 64 69 6e 67 0a 20  l8.0 by adding. 
1bdc0 20 20 20 20 20 61 6e 20 65 76 61 6c 3a 20 65 2e       an eval: e.
1bdd0 67 2e 2c 20 22 65 76 61 6c 20 65 78 70 72 20 5b  g., "eval expr [
1bde0 6a 6f 69 6e 20 24 6c 69 73 74 20 2b 5d 22 2e 0a  join $list +]"..
1bdf0 20 20 20 20 2d 20 4c 69 73 74 73 20 61 72 65 20      - Lists are 
1be00 6e 6f 77 20 63 6f 6d 70 6c 65 74 65 6c 79 20 70  now completely p
1be10 61 72 73 65 64 20 6f 6e 20 74 68 65 20 66 69 72  arsed on the fir
1be20 73 74 20 6c 69 73 74 20 6f 70 65 72 61 74 69 6f  st list operatio
1be30 6e 20 74 6f 0a 20 20 20 20 20 20 63 72 65 61 74  n to.      creat
1be40 65 20 61 20 66 61 73 74 65 72 20 69 6e 74 65 72  e a faster inter
1be50 6e 61 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69  nal representati
1be60 6f 6e 2e 20 49 6e 20 74 68 65 20 70 61 73 74 2c  on. In the past,
1be70 20 69 66 20 79 6f 75 20 68 61 64 20 61 0a 20 20   if you had a.  
1be80 20 20 20 20 6d 69 73 66 6f 72 6d 65 64 20 6c 69      misformed li
1be90 73 74 20 62 75 74 20 74 68 65 20 65 72 72 6f 6e  st but the erron
1bea0 65 6f 75 73 20 70 61 72 74 20 77 61 73 20 61 66  eous part was af
1beb0 74 65 72 20 74 68 65 20 70 6f 69 6e 74 20 79 6f  ter the point yo
1bec0 75 0a 20 20 20 20 20 20 69 6e 73 65 72 74 65 64  u.      inserted
1bed0 20 6f 72 20 65 78 74 72 61 63 74 65 64 20 61 6e   or extracted an
1bee0 20 65 6c 65 6d 65 6e 74 2c 20 74 68 65 6e 20 79   element, then y
1bef0 6f 75 20 6e 65 76 65 72 20 73 61 77 20 61 6e 20  ou never saw an 
1bf00 65 72 72 6f 72 2e 0a 20 20 20 20 20 20 49 6e 20  error..      In 
1bf10 54 63 6c 38 2e 30 20 61 6e 20 65 72 72 6f 72 20  Tcl8.0 an error 
1bf20 77 69 6c 6c 20 62 65 20 72 65 70 6f 72 74 65 64  will be reported
1bf30 2e 20 54 68 69 73 20 73 68 6f 75 6c 64 20 6f 6e  . This should on
1bf40 6c 79 20 65 66 66 65 63 74 0a 20 20 20 20 20 20  ly effect.      
1bf50 69 6e 63 6f 72 72 65 63 74 20 70 72 6f 67 72 61  incorrect progra
1bf60 6d 73 20 74 68 61 74 20 74 6f 6f 6b 20 61 64 76  ms that took adv
1bf70 61 6e 74 61 67 65 20 6f 66 20 62 65 68 61 76 69  antage of behavi
1bf80 6f 72 20 6f 66 20 74 68 65 20 6f 6c 64 0a 20 20  or of the old.  
1bf90 20 20 20 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69      implementati
1bfa0 6f 6e 20 74 68 61 74 20 77 61 73 20 6e 6f 74 20  on that was not 
1bfb0 64 6f 63 75 6d 65 6e 74 65 64 20 69 6e 20 74 68  documented in th
1bfc0 65 20 6d 61 6e 20 70 61 67 65 73 2e 0a 4f 74 68  e man pages..Oth
1bfd0 65 72 20 63 68 61 6e 67 65 73 20 74 6f 20 54 63  er changes to Tc
1bfe0 6c 20 73 63 72 69 70 74 73 20 61 72 65 20 64 69  l scripts are di
1bff0 73 63 75 73 73 65 64 20 69 6e 20 74 68 65 20 77  scussed in the w
1c000 65 62 20 70 61 67 65 20 61 74 0a 68 74 74 70 3a  eb page at.http:
1c010 2f 2f 77 77 77 2e 73 63 72 69 70 74 69 63 73 2e  //www.scriptics.
1c020 63 6f 6d 2f 64 6f 63 2f 63 6f 6d 70 69 6c 65 72  com/doc/compiler
1c030 2e 68 74 6d 6c 2e 20 28 42 4c 29 0a 2a 2a 2a 20  .html. (BL).*** 
1c040 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
1c050 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31  ATIBILITY ***..1
1c060 30 2f 32 31 2f 39 36 20 28 6e 65 77 20 66 65 61  0/21/96 (new fea
1c070 74 75 72 65 29 20 49 6e 20 65 61 72 6c 69 65 72  ture) In earlier
1c080 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 54 63 6c   versions of Tcl
1c090 2c 20 73 74 72 69 6e 67 73 20 77 65 72 65 20 75  , strings were u
1c0a0 73 65 64 20 61 73 20 61 0a 75 6e 69 76 65 72 73  sed as a.univers
1c0b0 61 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f  al representatio
1c0c0 6e 3b 20 69 6e 20 54 63 6c 20 38 2e 30 20 73 74  n; in Tcl 8.0 st
1c0d0 72 69 6e 67 73 20 61 72 65 20 72 65 70 6c 61 63  rings are replac
1c0e0 65 64 20 77 69 74 68 20 54 63 6c 5f 4f 62 6a 0a  ed with Tcl_Obj.
1c0f0 73 74 72 75 63 74 75 72 65 73 20 28 22 6f 62 6a  structures ("obj
1c100 65 63 74 73 22 29 20 74 68 61 74 20 63 61 6e 20  ects") that can 
1c110 68 6f 6c 64 20 62 6f 74 68 20 61 20 73 74 72 69  hold both a stri
1c120 6e 67 20 76 61 6c 75 65 20 61 6e 64 20 61 6e 20  ng value and an 
1c130 69 6e 74 65 72 6e 61 6c 0a 66 6f 72 6d 20 73 75  internal.form su
1c140 63 68 20 61 73 20 61 20 62 69 6e 61 72 79 20 69  ch as a binary i
1c150 6e 74 65 67 65 72 20 6f 72 20 63 6f 6d 70 69 6c  nteger or compil
1c160 65 64 20 62 79 74 65 63 6f 64 65 73 2e 20 54 68  ed bytecodes. Th
1c170 65 20 6e 65 77 20 6f 62 6a 65 63 74 73 20 6d 61  e new objects ma
1c180 6b 65 20 69 74 0a 70 6f 73 73 69 62 6c 65 20 74  ke it.possible t
1c190 6f 20 73 74 6f 72 65 20 69 6e 66 6f 72 6d 61 74  o store informat
1c1a0 69 6f 6e 20 69 6e 20 65 66 66 69 63 69 65 6e 74  ion in efficient
1c1b0 20 69 6e 74 65 72 6e 61 6c 20 66 6f 72 6d 73 20   internal forms 
1c1c0 61 6e 64 20 61 76 6f 69 64 20 74 68 65 0a 63 6f  and avoid the.co
1c1d0 6e 73 74 61 6e 74 20 74 72 61 6e 73 6c 61 74 69  nstant translati
1c1e0 6f 6e 73 20 74 6f 20 61 6e 64 20 66 72 6f 6d 20  ons to and from 
1c1f0 73 74 72 69 6e 67 73 20 74 68 61 74 20 6f 63 63  strings that occ
1c200 75 72 72 65 64 20 77 69 74 68 20 74 68 65 20 6f  urred with the o
1c210 6c 64 0a 69 6e 74 65 72 70 72 65 74 65 72 2e 20  ld.interpreter. 
1c220 54 68 65 72 65 20 61 72 65 20 6e 65 77 20 6d 61  There are new ma
1c230 6e 79 20 6e 65 77 20 43 20 41 50 49 73 20 66 6f  ny new C APIs fo
1c240 72 20 6d 61 6e 61 67 69 6e 67 20 6f 62 6a 65 63  r managing objec
1c250 74 73 2e 20 53 6f 6d 65 20 6f 66 20 74 68 65 0a  ts. Some of the.
1c260 6e 65 77 20 6c 69 62 72 61 72 79 20 70 72 6f 63  new library proc
1c270 65 64 75 72 65 73 20 66 6f 72 20 6f 62 6a 65 63  edures for objec
1c280 74 73 20 28 73 75 63 68 20 61 73 20 54 63 6c 5f  ts (such as Tcl_
1c290 45 76 61 6c 4f 62 6a 29 20 72 65 73 65 6d 62 6c  EvalObj) resembl
1c2a0 65 20 65 78 69 73 74 69 6e 67 0a 73 74 72 69 6e  e existing.strin
1c2b0 67 2d 62 61 73 65 64 20 70 72 6f 63 65 64 75 72  g-based procedur
1c2c0 65 73 20 28 73 75 63 68 20 61 73 20 54 63 6c 5f  es (such as Tcl_
1c2d0 45 76 61 6c 29 20 62 75 74 20 74 61 6b 65 20 61  Eval) but take a
1c2e0 64 76 61 6e 74 61 67 65 20 6f 66 20 74 68 65 0a  dvantage of the.
1c2f0 69 6e 74 65 72 6e 61 6c 20 66 6f 72 6d 20 73 74  internal form st
1c300 6f 72 65 64 20 69 6e 20 54 63 6c 20 6f 62 6a 65  ored in Tcl obje
1c310 63 74 73 20 66 6f 72 20 67 72 65 61 74 65 72 20  cts for greater 
1c320 73 70 65 65 64 2e 20 4f 74 68 65 72 20 6e 65 77  speed. Other new
1c330 20 70 72 6f 63 65 64 75 72 65 73 0a 6d 61 6e 61   procedures.mana
1c340 67 65 20 6f 62 6a 65 63 74 73 20 61 6e 64 20 61  ge objects and a
1c350 6c 6c 6f 77 20 65 78 74 65 6e 73 69 6f 6e 20 77  llow extension w
1c360 72 69 74 65 72 73 20 74 6f 20 64 65 66 69 6e 65  riters to define
1c370 20 6e 65 77 20 6b 69 6e 64 73 20 6f 66 20 6f 62   new kinds of ob
1c380 6a 65 63 74 73 2e 0a 53 65 65 20 74 68 65 20 6d  jects..See the m
1c390 61 6e 75 61 6c 20 65 6e 74 72 69 65 73 20 64 6f  anual entries do
1c3a0 63 2f 2a 4f 62 6a 2a 2e 33 20 28 42 4c 29 0a 0a  c/*Obj*.3 (BL)..
1c3b0 31 30 2f 32 34 2f 39 36 20 28 62 75 67 20 66 69  10/24/96 (bug fi
1c3c0 78 29 20 46 69 78 65 64 20 6d 65 6d 6f 72 79 20  x) Fixed memory 
1c3d0 6c 65 61 6b 20 6f 6e 20 65 78 69 74 20 63 61 75  leak on exit cau
1c3e0 73 65 64 20 62 79 20 73 6f 6d 65 20 49 4f 20 72  sed by some IO r
1c3f0 65 6c 61 74 65 64 0a 64 61 74 61 20 73 74 72 75  elated.data stru
1c400 63 74 75 72 65 73 20 6e 6f 74 20 62 65 69 6e 67  ctures not being
1c410 20 64 65 61 6c 6c 6f 63 61 74 65 64 20 6f 6e 20   deallocated on 
1c420 65 78 69 74 20 62 65 63 61 75 73 65 20 74 68 65  exit because the
1c430 69 72 20 72 65 66 63 6f 75 6e 74 20 77 61 73 0a  ir refcount was.
1c440 61 72 74 69 66 69 63 69 61 6c 6c 79 20 62 6f 6f  artificially boo
1c450 73 74 65 64 2e 20 28 4a 4c 29 0a 0a 31 30 2f 32  sted. (JL)..10/2
1c460 34 2f 39 36 20 28 62 75 67 20 66 69 78 29 20 46  4/96 (bug fix) F
1c470 69 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69  ixed core dump i
1c480 6e 20 54 63 6c 5f 43 6c 6f 73 65 20 69 66 20 63  n Tcl_Close if c
1c490 61 6c 6c 65 64 20 77 69 74 68 20 4e 55 4c 4c 0a  alled with NULL.
1c4a0 54 63 6c 5f 43 68 61 6e 6e 65 6c 2e 20 28 4a 4c  Tcl_Channel. (JL
1c4b0 29 0a 0a 31 31 2f 31 39 2f 39 36 20 28 6e 65 77  )..11/19/96 (new
1c4c0 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
1c4d0 6c 69 62 72 61 72 79 20 70 72 6f 63 65 64 75 72  library procedur
1c4e0 65 73 20 66 6f 72 20 66 69 6e 64 69 6e 67 20 77  es for finding w
1c4f0 6f 72 64 0a 62 72 65 61 6b 73 20 69 6e 20 73 74  ord.breaks in st
1c500 72 69 6e 67 73 20 69 6e 20 61 20 70 6c 61 74 66  rings in a platf
1c510 6f 72 6d 20 73 70 65 63 69 66 69 63 20 6d 61 6e  orm specific man
1c520 6e 65 72 2e 20 20 53 65 65 20 74 68 65 20 6c 69  ner.  See the li
1c530 62 72 61 72 79 2e 6e 0a 6d 61 6e 75 61 6c 20 65  brary.n.manual e
1c540 6e 74 72 79 20 66 6f 72 20 6d 6f 72 65 20 69 6e  ntry for more in
1c550 66 6f 72 6d 61 74 69 6f 6e 2e 20 28 53 53 29 0a  formation. (SS).
1c560 0a 31 31 2f 32 32 2f 39 36 20 28 66 65 61 74 75  .11/22/96 (featu
1c570 72 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29  re improvements)
1c580 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   Added support f
1c590 6f 72 20 64 69 66 66 65 72 65 6e 74 20 6c 65 76  or different lev
1c5a0 65 6c 73 20 6f 66 0a 74 72 61 63 69 6e 67 20 64  els of.tracing d
1c5b0 75 72 69 6e 67 20 62 79 74 65 63 6f 64 65 20 63  uring bytecode c
1c5c0 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 65  ompilation and e
1c5d0 78 65 63 75 74 69 6f 6e 2e 20 54 68 69 73 20 73  xecution. This s
1c5e0 68 6f 75 6c 64 20 68 65 6c 70 20 69 6e 0a 74 72  hould help in.tr
1c5f0 61 63 6b 69 6e 67 20 64 6f 77 6e 20 73 75 73 70  acking down susp
1c600 65 63 74 65 64 20 70 72 6f 62 6c 65 6d 73 20 77  ected problems w
1c610 69 74 68 20 74 68 65 20 63 6f 6d 70 69 6c 65 72  ith the compiler
1c620 20 6f 72 20 77 69 74 68 20 63 6f 6e 76 65 72 74   or with convert
1c630 69 6e 67 0a 65 78 69 73 74 69 6e 67 20 63 6f 64  ing.existing cod
1c640 65 20 74 6f 20 75 73 65 20 54 63 6c 38 2e 30 2e  e to use Tcl8.0.
1c650 20 54 77 6f 20 67 6c 6f 62 61 6c 20 54 63 6c 20   Two global Tcl 
1c660 76 61 72 69 61 62 6c 65 73 2c 20 74 72 61 63 65  variables, trace
1c670 43 6f 6d 70 69 6c 65 0a 61 6e 64 20 74 72 61 63  Compile.and trac
1c680 65 45 78 65 63 2c 20 63 61 6e 20 62 65 20 73 65  eExec, can be se
1c690 74 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 72  t to generate tr
1c6a0 61 63 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f  acing informatio
1c6b0 6e 20 69 6e 20 73 74 64 6f 75 74 3a 0a 20 20 20  n in stdout:.   
1c6c0 20 2d 20 74 72 61 63 65 43 6f 6d 70 69 6c 65 3a   - traceCompile:
1c6d0 20 30 20 20 6e 6f 20 74 72 61 63 69 6e 67 20 28   0  no tracing (
1c6e0 64 65 66 61 75 6c 74 29 0a 20 20 20 20 20 20 20  default).       
1c6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 31 20 20               1  
1c700 74 72 61 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f  trace compilatio
1c710 6e 73 20 6f 66 20 74 6f 70 20 6c 65 76 65 6c 20  ns of top level 
1c720 63 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 70 72 6f  commands and pro
1c730 63 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  cs.             
1c740 20 20 20 20 20 20 20 32 20 20 74 72 61 63 65 20         2  trace 
1c750 61 6e 64 20 64 69 73 70 6c 61 79 20 69 6e 73 74  and display inst
1c760 72 75 63 74 69 6f 6e 73 20 66 6f 72 20 61 6c 6c  ructions for all
1c770 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 73 0a 20 20   compilations.  
1c780 20 20 2d 20 74 72 61 63 65 45 78 65 63 3a 20 20    - traceExec:  
1c790 20 20 30 20 20 6e 6f 20 74 72 61 63 69 6e 67 0a    0  no tracing.
1c7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c7b0 20 20 20 20 31 20 20 74 72 61 63 65 20 6f 6e 6c      1  trace onl
1c7c0 79 20 63 61 6c 6c 73 20 74 6f 20 54 63 6c 20 70  y calls to Tcl p
1c7d0 72 6f 63 73 0a 20 20 20 20 20 20 20 20 20 20 20  rocs.           
1c7e0 20 20 20 20 20 20 20 20 20 32 20 20 74 72 61 63           2  trac
1c7f0 65 20 69 6e 76 6f 63 61 74 69 6f 6e 73 20 6f 66  e invocations of
1c800 20 61 6c 6c 20 63 6f 6d 6d 61 6e 64 73 20 69 6e   all commands in
1c810 63 6c 75 64 69 6e 67 20 70 72 6f 63 73 0a 20 20  cluding procs.  
1c820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c830 20 20 33 20 20 64 65 74 61 69 6c 65 64 20 74 72    3  detailed tr
1c840 61 63 65 20 73 68 6f 77 69 6e 67 20 74 68 65 20  ace showing the 
1c850 72 65 73 75 6c 74 20 6f 66 20 65 61 63 68 20 69  result of each i
1c860 6e 73 74 72 75 63 74 69 6f 6e 0a 74 72 61 63 65  nstruction.trace
1c870 45 78 65 63 20 3e 3d 20 32 20 70 72 6f 76 69 64  Exec >= 2 provid
1c880 65 73 20 61 20 6f 6e 65 20 6c 69 6e 65 20 73 75  es a one line su
1c890 6d 6d 61 72 79 20 6f 66 20 65 61 63 68 20 63 61  mmary of each ca
1c8a0 6c 6c 65 64 20 63 6f 6d 6d 61 6e 64 20 61 6e 64  lled command and
1c8b0 0a 69 74 73 20 61 72 67 75 6d 65 6e 74 73 2e 20  .its arguments. 
1c8c0 43 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 68 61  Commands that ha
1c8d0 76 65 20 62 65 65 6e 20 22 63 6f 6d 70 69 6c 65  ve been "compile
1c8e0 64 20 61 77 61 79 22 20 73 75 63 68 20 61 73 20  d away" such as 
1c8f0 73 65 74 20 61 72 65 0a 6e 6f 74 20 73 68 6f 77  set are.not show
1c900 6e 2e 20 28 42 4c 29 0a 0a 31 31 2f 33 30 2f 39  n. (BL)..11/30/9
1c910 36 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  6 (bug fix) The 
1c920 63 6f 6d 6d 61 6e 64 20 22 69 6e 66 6f 20 6e 61  command "info na
1c930 6d 65 6f 66 65 78 65 63 75 74 61 62 6c 65 22 20  meofexecutable" 
1c940 63 6f 75 6c 64 20 73 6f 6d 65 74 69 6d 65 73 0a  could sometimes.
1c950 72 65 74 75 72 6e 20 74 68 65 20 6e 61 6d 65 20  return the name 
1c960 6f 66 20 61 20 64 69 72 65 63 74 6f 72 79 2e 20  of a directory. 
1c970 28 4a 4f 29 0a 0a 31 31 2f 33 30 2f 39 36 20 28  (JO)..11/30/96 (
1c980 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76 65 6d  feature improvem
1c990 65 6e 74 73 29 20 43 68 61 6e 67 65 64 20 74 68  ents) Changed th
1c9a0 65 20 63 6f 64 65 20 69 6e 20 6c 69 62 72 61 72  e code in librar
1c9b0 79 2f 69 6e 69 74 2e 74 63 6c 0a 74 68 61 74 20  y/init.tcl.that 
1c9c0 72 65 61 64 73 20 69 6e 20 70 6b 67 49 6e 64 65  reads in pkgInde
1c9d0 78 2e 74 63 6c 20 73 6f 20 74 68 61 74 20 28 61  x.tcl so that (a
1c9e0 29 20 69 74 20 72 65 61 64 73 20 74 68 65 20 66  ) it reads the f
1c9f0 69 6c 65 73 20 66 72 6f 6d 20 63 68 69 6c 64 0a  iles from child.
1ca00 64 69 72 65 63 74 6f 72 69 65 73 20 62 65 66 6f  directories befo
1ca10 72 65 20 74 68 6f 73 65 20 69 6e 20 74 68 65 20  re those in the 
1ca20 70 61 72 65 6e 74 2c 20 73 6f 20 74 68 61 74 20  parent, so that 
1ca30 74 68 65 20 70 61 72 65 6e 74 20 67 65 74 73 0a  the parent gets.
1ca40 70 72 65 63 65 64 65 6e 63 65 2c 20 61 6e 64 20  precedence, and 
1ca50 28 62 29 20 69 74 20 64 6f 65 73 6e 27 74 20 71  (b) it doesn't q
1ca60 75 69 74 20 69 66 20 74 68 65 72 65 20 69 73 20  uit if there is 
1ca70 61 6e 20 65 72 72 6f 72 20 69 6e 20 61 0a 70 6b  an error in a.pk
1ca80 67 49 6e 64 65 78 2e 74 63 6c 20 66 69 6c 65 3b  gIndex.tcl file;
1ca90 20 20 69 6e 73 74 65 61 64 2c 20 69 74 20 70 72    instead, it pr
1caa0 69 6e 74 73 20 61 6e 20 65 72 72 6f 72 20 6d 65  ints an error me
1cab0 73 73 61 67 65 20 6f 6e 20 73 74 61 6e 64 61 72  ssage on standar
1cac0 64 0a 65 72 72 6f 72 20 61 6e 64 20 63 6f 6e 74  d.error and cont
1cad0 69 6e 75 65 73 2e 20 28 4a 4f 29 0a 0a 31 30 2f  inues. (JO)..10/
1cae0 35 2f 39 36 20 28 66 65 61 74 75 72 65 20 69 6d  5/96 (feature im
1caf0 70 72 6f 76 65 6d 65 6e 74 73 29 20 50 61 72 74  provements) Part
1cb00 69 61 6c 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ial implementati
1cb10 6f 6e 20 6f 66 20 62 69 6e 61 72 79 20 73 74 72  on of binary str
1cb20 69 6e 67 0a 73 75 70 70 6f 72 74 3a 20 74 68 65  ing.support: the
1cb30 20 61 62 69 6c 69 74 79 20 66 6f 72 20 54 63 6c   ability for Tcl
1cb40 20 73 74 72 69 6e 67 20 76 61 6c 75 65 73 20 74   string values t
1cb50 6f 20 63 6f 6e 74 61 69 6e 20 65 6d 62 65 64 64  o contain embedd
1cb60 65 64 20 6e 75 6c 6c 20 62 79 74 65 73 2e 0a 43  ed null bytes..C
1cb70 68 61 6e 67 65 64 20 74 68 65 20 54 63 6c 20 6f  hanged the Tcl o
1cb80 62 6a 65 63 74 2d 62 61 73 65 64 20 41 50 49 73  bject-based APIs
1cb90 20 74 6f 20 74 61 6b 65 20 61 20 62 79 74 65 20   to take a byte 
1cba0 70 6f 69 6e 74 65 72 20 61 6e 64 20 6c 65 6e 67  pointer and leng
1cbb0 74 68 20 70 61 69 72 0a 69 6e 73 74 65 61 64 20  th pair.instead 
1cbc0 6f 66 20 61 20 6e 75 6c 6c 2d 74 65 72 6d 69 6e  of a null-termin
1cbd0 61 74 65 64 20 43 20 73 74 72 69 6e 67 2e 20 4d  ated C string. M
1cbe0 6f 64 69 66 69 65 64 20 73 65 76 65 72 61 6c 20  odified several 
1cbf0 6f 62 6a 65 63 74 20 74 79 70 65 20 6d 61 6e 61  object type mana
1cc00 67 65 72 73 0a 74 6f 20 73 75 70 70 6f 72 74 20  gers.to support 
1cc10 62 69 6e 61 72 79 20 73 74 72 69 6e 67 73 20 62  binary strings b
1cc20 75 74 20 6e 6f 74 2c 20 66 6f 72 20 65 78 61 6d  ut not, for exam
1cc30 70 6c 65 2c 20 74 68 65 20 6c 69 73 74 20 74 79  ple, the list ty
1cc40 70 65 20 6d 61 6e 61 67 65 72 2e 0a 45 78 69 73  pe manager..Exis
1cc50 74 69 6e 67 20 73 74 72 69 6e 67 2d 62 61 73 65  ting string-base
1cc60 64 20 43 20 41 50 49 73 20 61 72 65 20 75 6e 63  d C APIs are unc
1cc70 68 61 6e 67 65 64 20 61 6e 64 20 77 69 6c 6c 20  hanged and will 
1cc80 74 72 75 6e 63 61 74 65 20 62 69 6e 61 72 79 0a  truncate binary.
1cc90 73 74 72 69 6e 67 73 2e 20 43 6f 6d 70 69 6c 65  strings. Compile
1cca0 64 20 73 63 72 69 70 74 73 20 63 6f 6e 74 61 69  d scripts contai
1ccb0 6e 69 6e 67 20 6e 75 6c 6c 73 20 61 72 65 20 61  ning nulls are a
1ccc0 6c 73 6f 20 74 72 75 6e 63 61 74 65 64 2e 20 28  lso truncated. (
1ccd0 42 4c 29 0a 0a 31 32 2f 31 32 2f 39 36 20 28 66  BL)..12/12/96 (f
1cce0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52  eature change) R
1ccf0 65 6d 6f 76 65 64 20 74 68 65 20 63 6f 6d 6d 61  emoved the comma
1cd00 6e 64 73 20 22 63 70 22 2c 20 22 6d 6b 64 69 72  nds "cp", "mkdir
1cd10 22 2c 20 22 6d 76 22 2c 0a 22 72 6d 22 2c 20 61  ", "mv",."rm", a
1cd20 6e 64 20 22 72 6d 64 69 72 22 20 66 72 6f 6d 20  nd "rmdir" from 
1cd30 74 68 65 20 4d 61 63 69 6e 74 6f 73 68 20 76 65  the Macintosh ve
1cd40 72 73 69 6f 6e 20 6f 66 20 54 63 6c 2e 20 20 54  rsion of Tcl.  T
1cd50 68 65 79 20 77 65 72 65 20 6e 65 76 65 72 0a 6f  hey were never.o
1cd60 66 66 69 63 69 61 6c 6c 79 20 73 75 70 70 6f 72  fficially suppor
1cd70 74 65 64 20 61 6e 64 20 74 68 65 69 72 20 66 75  ted and their fu
1cd80 6e 63 74 69 6f 6e 61 6c 69 74 79 20 69 73 20 6e  nctionality is n
1cd90 6f 77 20 61 76 61 69 6c 61 62 6c 65 20 76 69 61  ow available via
1cda0 0a 74 68 65 20 66 69 6c 65 20 63 6f 6d 6d 61 6e  .the file comman
1cdb0 64 2e 20 28 52 4a 29 0a 0a 2d 2d 2d 2d 2d 2d 2d  d. (RJ)..-------
1cdc0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61  ---------- Relea
1cdd0 73 65 64 20 38 2e 30 61 31 2c 20 31 32 2f 32 30  sed 8.0a1, 12/20
1cde0 2f 39 36 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /96 ------------
1cdf0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 2f 37  -----------..1/7
1ce00 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 55 6e  /97 (bug fix) Un
1ce10 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 22 66 69  der Windows, "fi
1ce20 6c 65 20 73 74 61 74 20 63 3a 22 20 77 61 73 20  le stat c:" was 
1ce30 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 20  returning error 
1ce40 69 6e 73 74 65 61 64 0a 6f 66 20 73 74 61 74 20  instead.of stat 
1ce50 66 6f 72 20 63 75 72 72 65 6e 74 20 64 69 72 20  for current dir 
1ce60 6f 6e 20 63 3a 20 64 72 69 76 65 2e 0a 0a 31 2f  on c: drive...1/
1ce70 31 30 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75  10/97 (new featu
1ce80 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 47 65  re) Added Tcl_Ge
1ce90 74 49 6e 64 65 78 46 72 6f 6d 4f 62 6a 20 70 72  tIndexFromObj pr
1cea0 6f 63 65 64 75 72 65 20 66 6f 72 20 71 75 69 63  ocedure for quic
1ceb0 6b 0a 6c 6f 6f 6b 75 70 73 20 6f 66 20 6b 65 79  k.lookups of key
1cec0 77 6f 72 64 20 61 72 67 75 6d 65 6e 74 73 2e 20  word arguments. 
1ced0 28 4a 4f 29 0a 0a 31 2f 31 32 2f 39 37 20 28 6e  (JO)..1/12/97 (n
1cee0 65 77 20 66 65 61 74 75 72 65 29 20 53 65 72 69  ew feature) Seri
1cef0 61 6c 20 49 4f 20 63 68 61 6e 6e 65 6c 20 64 72  al IO channel dr
1cf00 69 76 65 72 73 20 66 6f 72 20 57 69 6e 64 6f 77  ivers for Window
1cf10 73 20 61 6e 64 20 55 6e 69 78 2c 0a 61 76 61 69  s and Unix,.avai
1cf20 6c 61 62 6c 65 20 62 79 20 75 73 69 6e 67 20 54  lable by using T
1cf30 63 6c 20 6f 70 65 6e 20 63 6f 6d 6d 61 6e 64 20  cl open command 
1cf40 74 6f 20 6f 70 65 6e 20 70 73 65 75 64 6f 2d 66  to open pseudo-f
1cf50 69 6c 65 73 20 6c 69 6b 65 20 22 63 6f 6d 31 3a  iles like "com1:
1cf60 22 20 6f 72 0a 22 2f 64 65 76 2f 74 74 79 61 22  " or."/dev/ttya"
1cf70 2e 20 20 4e 65 77 20 6f 70 74 69 6f 6e 20 74 6f  .  New option to
1cf80 20 54 63 6c 20 66 63 6f 6e 66 69 67 75 72 65 20   Tcl fconfigure 
1cf90 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 73 65 72 69  command for seri
1cfa0 61 6c 20 66 69 6c 65 73 3a 20 20 0a 22 2d 6d 6f  al files:  ."-mo
1cfb0 64 65 20 62 61 75 64 2c 70 61 72 69 74 79 2c 64  de baud,parity,d
1cfc0 61 74 61 2c 73 74 6f 70 22 20 74 6f 20 73 70 65  ata,stop" to spe
1cfd0 63 69 66 79 20 62 61 75 64 20 72 61 74 65 2c 20  cify baud rate, 
1cfe0 70 61 72 69 74 79 2c 20 64 61 74 61 20 62 69 74  parity, data bit
1cff0 73 2c 20 61 6e 64 0a 73 74 6f 70 20 62 69 74 73  s, and.stop bits
1d000 2e 20 20 53 65 72 69 61 6c 20 49 4f 20 69 73 20  .  Serial IO is 
1d010 6e 6f 74 20 79 65 74 20 61 76 61 69 6c 61 62 6c  not yet availabl
1d020 65 20 6f 6e 20 4d 61 63 2e 0a 0a 31 2f 31 36 2f  e on Mac...1/16/
1d030 39 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e  97 (feature chan
1d040 67 65 29 20 52 65 73 74 6f 72 65 64 20 74 68 65  ge) Restored the
1d050 20 54 63 6c 37 2e 78 20 22 74 77 6f 20 6c 65 76   Tcl7.x "two lev
1d060 65 6c 20 73 75 62 73 74 69 74 75 74 69 6f 6e 0a  el substitution.
1d070 73 65 6d 61 6e 74 69 63 73 22 20 66 6f 72 20 65  semantics" for e
1d080 78 70 72 65 73 73 69 6f 6e 73 2e 20 45 78 70 72  xpressions. Expr
1d090 65 73 73 69 6f 6e 73 20 6e 6f 74 20 65 6e 63 6c  essions not encl
1d0a0 6f 73 65 64 20 69 6e 20 62 72 61 63 65 73 20 61  osed in braces a
1d0b0 72 65 0a 69 6d 70 6c 65 6d 65 6e 74 65 64 2c 20  re.implemented, 
1d0c0 69 6e 20 67 65 6e 65 72 61 6c 2c 20 62 79 20 63  in general, by c
1d0d0 61 6c 6c 69 6e 67 20 74 68 65 20 65 78 70 72 20  alling the expr 
1d0e0 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75 72  command procedur
1d0f0 65 0a 28 54 63 6c 5f 45 78 70 72 4f 62 6a 43 6d  e.(Tcl_ExprObjCm
1d100 64 29 20 61 74 20 72 75 6e 74 69 6d 65 20 61 66  d) at runtime af
1d110 74 65 72 20 74 68 65 20 54 63 6c 20 69 6e 74 65  ter the Tcl inte
1d120 72 70 72 65 74 65 72 20 68 61 73 20 61 6c 72 65  rpreter has alre
1d130 61 64 79 20 64 6f 6e 65 20 61 0a 66 69 72 73 74  ady done a.first
1d140 20 72 6f 75 6e 64 20 6f 66 20 73 75 62 73 74 69   round of substi
1d150 74 75 74 69 6f 6e 73 2e 20 54 68 69 73 20 69 73  tutions. This is
1d160 20 73 6c 6f 77 20 28 61 62 6f 75 74 20 54 63 6c   slow (about Tcl
1d170 37 2e 78 20 73 70 65 65 64 29 20 62 65 63 61 75  7.x speed) becau
1d180 73 65 20 6e 65 77 0a 63 6f 64 65 20 66 6f 72 20  se new.code for 
1d190 74 68 65 20 65 78 70 72 65 73 73 69 6f 6e 20 69  the expression i
1d1a0 73 20 67 65 6e 65 72 61 6c 6c 79 20 63 6f 6d 70  s generally comp
1d1b0 69 6c 65 64 20 65 61 63 68 20 74 69 6d 65 2e 20  iled each time. 
1d1c0 48 6f 77 65 76 65 72 2c 20 69 66 20 74 68 65 0a  However, if the.
1d1d0 65 78 70 72 65 73 73 69 6f 6e 20 68 61 73 20 6f  expression has o
1d1e0 6e 6c 79 20 76 61 72 69 61 62 6c 65 20 73 75 62  nly variable sub
1d1f0 73 74 69 74 75 74 69 6f 6e 73 20 28 61 6e 64 20  stitutions (and 
1d200 6e 6f 74 20 63 6f 6d 6d 61 6e 64 20 73 75 62 73  not command subs
1d210 74 69 74 75 74 69 6f 6e 73 29 2c 0a 22 6f 70 74  titutions),."opt
1d220 69 6d 69 73 74 69 63 22 20 66 61 73 74 20 63 6f  imistic" fast co
1d230 64 65 20 69 73 20 67 65 6e 65 72 61 74 65 64 20  de is generated 
1d240 69 6e 6c 69 6e 65 2e 20 54 68 69 73 20 69 6e 6c  inline. This inl
1d250 69 6e 65 20 63 6f 64 65 20 77 69 6c 6c 20 66 61  ine code will fa
1d260 69 6c 20 69 66 20 61 0a 73 65 63 6f 6e 64 20 72  il if a.second r
1d270 6f 75 6e 64 20 6f 66 20 73 75 62 73 74 69 74 75  ound of substitu
1d280 74 69 6f 6e 73 20 69 73 20 6e 65 65 64 65 64 20  tions is needed 
1d290 28 69 2e 65 2e 2c 20 69 66 20 74 68 65 20 76 61  (i.e., if the va
1d2a0 6c 75 65 20 6f 66 20 61 20 73 75 62 73 74 69 74  lue of a substit
1d2b0 75 74 65 64 0a 76 61 72 69 61 62 6c 65 20 69 74  uted.variable it
1d2c0 73 65 6c 66 20 72 65 71 75 69 72 65 73 20 6d 6f  self requires mo
1d2d0 72 65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 73  re substitutions
1d2e0 29 2e 20 54 68 65 20 6f 70 74 69 6d 69 73 74 69  ). The optimisti
1d2f0 63 20 63 6f 64 65 20 77 69 6c 6c 0a 63 61 74 63  c code will.catc
1d300 68 20 74 68 65 20 65 72 72 6f 72 20 61 6e 64 20  h the error and 
1d310 62 61 63 6b 20 6f 66 66 20 74 6f 20 63 61 6c 6c  back off to call
1d320 20 74 68 65 20 73 6c 6f 77 65 72 20 62 75 74 20   the slower but 
1d330 67 75 61 72 61 6e 74 65 65 64 20 63 6f 72 72 65  guaranteed corre
1d340 63 74 0a 65 78 70 72 20 63 6f 6d 6d 61 6e 64 20  ct.expr command 
1d350 70 72 6f 63 65 64 75 72 65 2e 20 28 42 4c 29 0a  procedure. (BL).
1d360 0a 31 2f 31 36 2f 39 37 20 28 66 65 61 74 75 72  .1/16/97 (featur
1d370 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74 73 29 20  e improvements) 
1d380 41 64 64 65 64 20 54 63 6c 5f 45 78 70 72 4c 6f  Added Tcl_ExprLo
1d390 6e 67 4f 62 6a 20 61 6e 64 20 54 63 6c 5f 45 78  ngObj and Tcl_Ex
1d3a0 70 72 44 6f 75 62 6c 65 4f 62 6a 0a 74 6f 20 72  prDoubleObj.to r
1d3b0 6f 75 6e 64 20 6f 75 74 20 65 78 70 72 65 73 73  ound out express
1d3c0 69 6f 6e 2d 72 65 6c 61 74 65 64 20 70 72 6f 63  ion-related proc
1d3d0 65 64 75 72 65 73 2e 20 28 42 4c 29 0a 0a 31 2f  edures. (BL)..1/
1d3e0 31 36 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  16/97 (feature c
1d3f0 68 61 6e 67 65 29 20 55 6e 64 65 72 20 57 69 6e  hange) Under Win
1d400 64 6f 77 73 2c 20 61 74 20 73 74 61 72 74 75 70  dows, at startup
1d410 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74   the environment
1d420 20 76 61 72 69 61 62 6c 65 73 0a 22 70 61 74 68   variables."path
1d430 22 2c 20 22 63 6f 6d 73 70 65 63 22 2c 20 61 6e  ", "comspec", an
1d440 64 20 22 77 69 6e 64 69 72 22 20 69 6e 20 61 6e  d "windir" in an
1d450 79 20 63 61 70 69 74 61 6c 69 7a 61 74 69 6f 6e  y capitalization
1d460 20 61 72 65 20 63 6f 6e 76 65 72 74 65 64 0a 61   are converted.a
1d470 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 74 6f 20  utomatically to 
1d480 75 70 70 65 72 20 63 61 73 65 2e 20 20 54 68 65  upper case.  The
1d490 20 50 41 54 48 20 76 61 72 69 61 62 6c 65 20 63   PATH variable c
1d4a0 6f 75 6c 64 20 62 65 20 73 70 65 6c 6c 65 64 20  ould be spelled 
1d4b0 61 73 20 70 61 74 68 2c 0a 50 61 74 68 2c 20 50  as path,.Path, P
1d4c0 61 54 68 2c 20 65 74 63 2e 20 61 6e 64 20 69 74  aTh, etc. and it
1d4d0 20 6d 61 6b 65 73 20 70 72 6f 67 72 61 6d 6d 69   makes programmi
1d4e0 6e 67 20 72 61 74 68 65 72 20 61 6e 6e 6f 79 69  ng rather annoyi
1d4f0 6e 67 2e 20 20 41 6c 6c 20 6f 74 68 65 72 0a 65  ng.  All other.e
1d500 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61  nvironment varia
1d510 62 6c 65 73 20 61 72 65 20 6c 65 66 74 20 61 6c  bles are left al
1d520 6f 6e 65 2e 20 28 43 53 29 0a 0a 31 2f 32 30 2f  one. (CS)..1/20/
1d530 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 73  97 (new features
1d540 29 20 52 65 77 72 6f 74 65 20 74 68 65 20 22 6c  ) Rewrote the "l
1d550 73 6f 72 74 22 20 63 6f 6d 6d 61 6e 64 3a 0a 20  sort" command:. 
1d560 20 20 20 2d 20 54 68 65 20 6e 65 77 20 76 65 72     - The new ver
1d570 73 69 6f 6e 20 69 73 20 62 61 73 65 64 20 6f 6e  sion is based on
1d580 20 72 65 65 6e 74 72 61 6e 74 20 6d 65 72 67 65   reentrant merge
1d590 20 73 6f 72 74 20 63 6f 64 65 20 70 72 6f 76 69   sort code provi
1d5a0 64 65 64 0a 20 20 20 20 20 20 62 79 20 52 69 63  ded.      by Ric
1d5b0 68 61 72 64 20 48 69 70 70 2c 20 73 6f 20 69 74  hard Hipp, so it
1d5c0 20 65 6c 69 6d 69 6e 61 74 65 73 20 74 68 65 20   eliminates the 
1d5d0 72 65 65 6e 74 72 61 6e 63 79 20 61 6e 64 20 73  reentrancy and s
1d5e0 74 61 62 69 6c 69 74 79 0a 20 20 20 20 20 20 70  tability.      p
1d5f0 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 68 65  roblems with the
1d600 20 6f 6c 64 20 71 73 6f 72 74 2d 62 61 73 65 64   old qsort-based
1d610 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e   implementation.
1d620 0a 20 20 20 20 2d 20 54 68 65 20 6e 65 77 20 76  .    - The new v
1d630 65 72 73 69 6f 6e 20 73 75 70 70 6f 72 74 73 20  ersion supports 
1d640 61 20 2d 64 69 63 74 69 6f 6e 61 72 79 20 6f 70  a -dictionary op
1d650 74 69 6f 6e 20 66 6f 72 20 73 6f 72 74 69 6e 67  tion for sorting
1d660 2c 20 61 6e 64 0a 20 20 20 20 20 20 69 74 20 61  , and.      it a
1d670 6c 73 6f 20 73 75 70 70 6f 72 74 73 20 61 20 2d  lso supports a -
1d680 69 6e 64 65 78 20 6f 70 74 69 6f 6e 20 66 6f 72  index option for
1d690 20 73 6f 72 74 69 6e 67 20 6c 69 73 74 73 20 75   sorting lists u
1d6a0 73 69 6e 67 20 6f 6e 65 0a 20 20 20 20 20 20 65  sing one.      e
1d6b0 6c 65 6d 65 6e 74 20 66 6f 72 20 63 6f 6d 70 61  lement for compa
1d6c0 72 69 73 6f 6e 2e 0a 20 20 20 20 2d 20 54 68 65  rison..    - The
1d6d0 20 6e 65 77 20 76 65 72 73 69 6f 6e 20 69 73 20   new version is 
1d6e0 61 6e 20 6f 62 6a 65 63 74 20 63 6f 6d 6d 61 6e  an object comman
1d6f0 64 2c 20 73 6f 20 69 74 20 77 6f 72 6b 73 20 77  d, so it works w
1d700 65 6c 6c 20 77 69 74 68 20 74 68 65 0a 20 20 20  ell with the.   
1d710 20 20 20 54 63 6c 20 63 6f 6d 70 69 6c 65 72 2c     Tcl compiler,
1d720 20 65 73 70 65 63 69 61 6c 6c 79 20 69 6e 20 63   especially in c
1d730 6f 6e 6a 75 6e 63 74 69 6f 6e 20 77 69 74 68 20  onjunction with 
1d740 74 68 65 20 6e 65 77 20 2d 69 6e 64 65 78 0a 20  the new -index. 
1d750 20 20 20 20 20 6f 70 74 69 6f 6e 2e 20 20 57 68       option.  Wh
1d760 65 6e 20 74 68 65 20 2d 69 6e 64 65 78 20 6f 70  en the -index op
1d770 74 69 6f 6e 20 69 73 20 75 73 65 64 2c 20 74 68  tion is used, th
1d780 69 73 20 76 65 72 73 69 6f 6e 20 6f 66 20 6c 73  is version of ls
1d790 6f 72 74 0a 20 20 20 20 20 20 69 73 20 6d 6f 72  ort.      is mor
1d7a0 65 20 74 68 61 6e 20 31 30 30 20 74 69 6d 65 73  e than 100 times
1d7b0 20 66 61 73 74 65 72 20 74 68 61 6e 20 74 68 65   faster than the
1d7c0 20 54 63 6c 20 37 2e 36 20 6c 73 6f 72 74 2c 20   Tcl 7.6 lsort, 
1d7d0 77 68 69 63 68 20 68 61 64 0a 20 20 20 20 20 20  which had.      
1d7e0 74 6f 20 75 73 65 20 74 68 65 20 2d 63 6f 6d 6d  to use the -comm
1d7f0 61 6e 64 20 6f 70 74 69 6f 6e 20 74 6f 20 67 65  and option to ge
1d800 74 20 74 68 65 20 73 61 6d 65 20 65 66 66 65 63  t the same effec
1d810 74 2e 20 28 4a 4f 29 0a 0a 31 2f 32 30 2f 39 37  t. (JO)..1/20/97
1d820 20 28 66 65 61 74 75 72 65 20 69 6d 70 72 6f 76   (feature improv
1d830 65 6d 65 6e 74 73 29 20 41 64 64 65 64 20 74 68  ements) Added th
1d840 65 20 69 6d 70 72 6f 76 65 64 20 64 65 62 75 67  e improved debug
1d850 67 69 6e 67 20 73 75 70 70 6f 72 74 20 66 6f 72  ging support for
1d860 20 54 63 6c 0a 6f 62 6a 65 63 74 73 20 70 72 6f   Tcl.objects pro
1d870 74 6f 74 79 70 65 64 20 62 79 20 4b 61 72 6c 20  totyped by Karl 
1d880 4c 65 68 65 6e 62 61 75 65 72 20 3c 6b 61 72 6c  Lehenbauer <karl
1d890 40 68 61 6d 6d 65 72 31 2e 6f 70 73 2e 4e 65 6f  @hammer1.ops.Neo
1d8a0 53 6f 66 74 2e 63 6f 6d 3e 2e 0a 49 66 20 54 43  Soft.com>..If TC
1d8b0 4c 5f 4d 45 4d 5f 44 45 42 55 47 20 69 73 20 64  L_MEM_DEBUG is d
1d8c0 65 66 69 6e 65 64 2c 20 74 68 65 20 6f 62 6a 65  efined, the obje
1d8d0 63 74 20 63 72 65 61 74 69 6f 6e 20 63 61 6c 6c  ct creation call
1d8e0 73 20 75 73 65 20 54 63 6c 5f 44 62 43 6b 61 6c  s use Tcl_DbCkal
1d8f0 6c 6f 63 0a 64 69 72 65 63 74 6c 79 20 69 6e 20  loc.directly in 
1d900 6f 72 64 65 72 20 74 6f 20 72 65 63 6f 72 64 20  order to record 
1d910 74 68 65 20 63 61 6c 6c 65 72 27 73 20 73 6f 75  the caller's sou
1d920 72 63 65 20 66 69 6c 65 20 6e 61 6d 65 20 61 6e  rce file name an
1d930 64 20 6c 69 6e 65 0a 6e 75 6d 62 65 72 2e 20 28  d line.number. (
1d940 42 4c 29 0a 0a 31 2f 32 31 2f 39 37 20 28 72 65  BL)..1/21/97 (re
1d950 6d 6f 76 65 64 20 66 65 61 74 75 72 65 29 20 44  moved feature) D
1d960 65 73 75 70 70 6f 72 74 65 64 20 74 68 65 20 74  esupported the t
1d970 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20 76 61 72  cl_precision var
1d980 69 61 62 6c 65 3a 20 69 66 0a 73 65 74 2c 20 69  iable: if.set, i
1d990 74 20 69 73 20 69 67 6e 6f 72 65 64 2e 20 20 54  t is ignored.  T
1d9a0 63 6c 20 6e 6f 77 20 75 73 65 73 20 74 68 65 20  cl now uses the 
1d9b0 66 75 6c 6c 20 31 37 20 64 69 67 69 74 73 20 6f  full 17 digits o
1d9c0 66 20 70 72 65 63 69 73 69 6f 6e 20 77 68 65 6e  f precision when
1d9d0 0a 63 6f 6e 76 65 72 74 69 6e 67 20 72 65 61 6c  .converting real
1d9e0 20 6e 75 6d 62 65 72 73 20 74 6f 20 73 74 72 69   numbers to stri
1d9f0 6e 67 73 20 28 77 69 74 68 20 74 68 65 20 6e 65  ngs (with the ne
1da00 77 20 6f 62 6a 65 63 74 20 73 79 73 74 65 6d 20  w object system 
1da10 72 65 61 6c 0a 6e 75 6d 62 65 72 73 20 61 72 65  real.numbers are
1da20 20 72 61 72 65 6c 79 20 63 6f 6e 76 65 72 74 65   rarely converte
1da30 64 20 74 6f 20 73 74 72 69 6e 67 73 20 73 6f 20  d to strings so 
1da40 74 68 65 72 65 20 69 73 20 6e 6f 20 65 66 66 69  there is no effi
1da50 63 69 65 6e 63 79 0a 64 69 73 61 64 76 61 6e 74  ciency.disadvant
1da60 61 67 65 20 74 6f 20 70 72 69 6e 74 69 6e 67 20  age to printing 
1da70 61 6c 6c 20 31 37 20 64 69 67 69 74 73 3b 20 74  all 17 digits; t
1da80 68 65 20 6e 65 77 20 73 63 68 65 6d 65 20 69 6d  he new scheme im
1da90 70 72 6f 76 65 73 0a 61 63 63 75 72 61 63 79 20  proves.accuracy 
1daa0 61 6e 64 20 73 69 6d 70 6c 69 66 69 65 73 20 73  and simplifies s
1dab0 65 76 65 72 61 6c 20 41 50 49 73 29 2e 20 28 4a  everal APIs). (J
1dac0 4f 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  O).*** POTENTIAL
1dad0 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
1dae0 20 2a 2a 2a 0a 0a 31 2f 32 31 2f 39 37 20 28 66   ***..1/21/97 (f
1daf0 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52  eature change) R
1db00 65 6d 6f 76 65 64 20 74 68 65 20 22 69 6e 74 65  emoved the "inte
1db10 72 70 22 20 61 72 67 75 6d 65 6e 74 20 66 6f 72  rp" argument for
1db20 20 74 68 65 0a 70 72 6f 63 65 64 75 72 65 73 20   the.procedures 
1db30 54 63 6c 5f 47 65 74 53 74 72 69 6e 67 46 72 6f  Tcl_GetStringFro
1db40 6d 4f 62 6a 2c 20 54 63 6c 5f 53 74 72 69 6e 67  mObj, Tcl_String
1db50 4f 62 6a 41 70 70 65 6e 64 2c 20 61 6e 64 0a 54  ObjAppend, and.T
1db60 63 6c 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65  cl_StringObjAppe
1db70 6e 64 4f 62 6a 2e 20 20 41 6c 73 6f 20 72 65 6d  ndObj.  Also rem
1db80 6f 76 65 64 20 74 68 65 20 22 69 6e 74 65 72 70  oved the "interp
1db90 22 20 61 72 67 75 6d 65 6e 74 20 66 6f 72 0a 74  " argument for.t
1dba0 68 65 20 75 70 64 61 74 65 53 74 72 69 6e 67 50  he updateStringP
1dbb0 72 6f 63 20 70 72 6f 63 65 64 75 72 65 20 69 6e  roc procedure in
1dbc0 20 54 63 6c 5f 4f 62 6a 54 79 70 65 20 73 74 72   Tcl_ObjType str
1dbd0 75 63 74 75 72 65 73 2e 20 20 57 69 74 68 0a 74  uctures.  With.t
1dbe0 68 65 20 74 63 6c 5f 70 72 65 63 69 73 69 6f 6e  he tcl_precision
1dbf0 20 63 68 61 6e 67 65 73 20 61 62 6f 76 65 2c 20   changes above, 
1dc00 74 68 65 73 65 20 61 72 65 20 6e 6f 20 6c 6f 6e  these are no lon
1dc10 67 65 72 20 6e 65 65 64 65 64 2e 20 28 4a 4f 29  ger needed. (JO)
1dc20 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
1dc30 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77  NCOMPATIBILITY w
1dc40 69 74 68 20 54 63 6c 20 38 2e 30 61 31 2c 20 62  ith Tcl 8.0a1, b
1dc50 75 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20  ut not with Tcl 
1dc60 37 2e 36 20 2a 2a 2a 0a 0a 31 2f 32 32 2f 39 37  7.6 ***..1/22/97
1dc70 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1dc80 20 68 74 74 70 2e 74 63 6c 20 73 6f 20 74 68 61   http.tcl so tha
1dc90 74 20 68 74 74 70 5f 72 65 73 65 74 20 64 6f 65  t http_reset doe
1dca0 73 20 6e 6f 74 20 72 65 73 75 6c 74 20 69 6e 0a  s not result in.
1dcb0 61 6e 20 65 78 74 72 61 20 63 61 6c 6c 20 74 6f  an extra call to
1dcc0 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 63 61 6c   the command cal
1dcd0 6c 62 61 63 6b 2e 20 20 49 6e 20 61 64 64 69 74  lback.  In addit
1dce0 69 6f 6e 2c 20 69 66 20 74 68 65 20 74 72 61 6e  ion, if the tran
1dcf0 73 61 63 74 69 6f 6e 0a 67 65 74 73 20 61 20 70  saction.gets a p
1dd00 72 65 6d 61 74 75 72 65 20 65 6f 66 2c 20 74 68  remature eof, th
1dd10 65 20 73 74 61 74 65 28 73 74 61 74 75 73 29 20  e state(status) 
1dd20 69 73 20 22 65 6f 66 22 2c 20 6e 6f 74 20 22 6f  is "eof", not "o
1dd30 6b 22 2e 20 28 42 57 29 0a 0a 2d 2d 2d 2d 2d 2d  k". (BW)..------
1dd40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
1dd50 61 73 65 64 20 38 2e 30 61 32 2c 20 31 2f 32 34  ased 8.0a2, 1/24
1dd60 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /97 ------------
1dd70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 2f 32  -----------..1/2
1dd80 39 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68  9/97 (feature ch
1dd90 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 68 6f  ange) Changed ho
1dda0 77 20 74 77 6f 20 64 69 67 69 74 20 79 65 61 72  w two digit year
1ddb0 73 20 61 72 65 20 70 61 72 73 65 64 20 69 6e 20  s are parsed in 
1ddc0 74 68 65 0a 63 6c 6f 63 6b 20 63 6f 6d 6d 61 6e  the.clock comman
1ddd0 64 2e 20 20 54 68 65 20 6f 6c 64 20 69 6e 74 65  d.  The old inte
1dde0 72 66 61 63 65 20 6a 75 73 74 20 61 64 64 65 64  rface just added
1ddf0 20 31 39 30 30 20 77 68 69 63 68 20 77 69 6c 6c   1900 which will
1de00 20 73 65 65 6d 0a 62 72 6f 6b 65 6e 20 62 79 20   seem.broken by 
1de10 74 68 65 20 79 65 61 72 20 32 30 30 30 2e 20 20  the year 2000.  
1de20 54 68 65 20 6e 65 77 20 73 63 68 65 6d 65 20 66  The new scheme f
1de30 6f 6c 6c 6f 77 73 20 74 68 65 20 50 4f 53 49 58  ollows the POSIX
1de40 20 73 74 61 6e 64 61 72 64 0a 61 6e 64 20 74 72   standard.and tr
1de50 65 61 74 73 20 64 61 74 65 73 20 37 30 2d 39 39  eats dates 70-99
1de60 20 61 73 20 31 39 37 30 2d 31 39 39 39 20 61 6e   as 1970-1999 an
1de70 64 20 64 61 74 65 73 20 30 30 2d 33 38 20 61 73  d dates 00-38 as
1de80 20 32 30 30 30 2d 32 30 33 38 2e 20 20 41 6c 6c   2000-2038.  All
1de90 0a 6f 74 68 65 72 20 74 77 6f 20 64 69 67 69 74  .other two digit
1dea0 20 64 61 74 65 73 20 61 72 65 20 75 6e 64 65 66   dates are undef
1deb0 69 6e 65 64 2e 20 28 52 4a 29 0a 2a 2a 2a 20 50  ined. (RJ).*** P
1dec0 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
1ded0 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 32 2f  TIBILITY ***..2/
1dee0 34 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  4/97 (bug fix) F
1def0 69 78 65 64 20 62 75 67 20 69 6e 20 63 6c 6f 63  ixed bug in cloc
1df00 6b 20 63 6f 64 65 20 74 68 61 74 20 64 65 61 6c  k code that deal
1df10 74 20 77 69 74 68 20 72 65 6c 61 74 69 76 65 0a  t with relative.
1df20 64 61 74 65 73 2e 20 20 55 73 69 6e 67 20 74 68  dates.  Using th
1df30 65 20 72 65 6c 61 74 69 76 65 20 6d 6f 6e 74 68  e relative month
1df40 20 63 6f 64 65 20 79 6f 75 20 63 6f 75 6c 64 20   code you could 
1df50 67 65 74 20 61 6e 20 69 6e 76 61 6c 69 64 20 64  get an invalid d
1df60 61 74 65 0a 62 65 63 61 75 73 65 20 69 74 20 6a  ate.because it j
1df70 75 6d 70 65 64 20 69 6e 74 6f 20 61 20 6e 6f 6e  umped into a non
1df80 2d 65 78 69 73 74 61 6e 74 20 64 61 79 2e 20 20  -existant day.  
1df90 28 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 4a 61  (For example, Ja
1dfa0 6e 20 33 31 0a 74 6f 20 46 65 62 20 33 31 2e 29  n 31.to Feb 31.)
1dfb0 20 20 54 68 65 20 63 6f 64 65 20 6e 6f 77 20 77    The code now w
1dfc0 69 6c 6c 20 72 65 74 75 72 6e 20 74 68 65 20 6c  ill return the l
1dfd0 61 73 74 20 76 61 6c 69 64 20 64 61 79 20 6f 66  ast valid day of
1dfe0 20 74 68 65 0a 6d 6f 6e 74 68 20 69 6e 20 74 68   the.month in th
1dff0 65 73 65 20 73 69 74 75 61 74 69 6f 6e 73 2e 20  ese situations. 
1e000 20 54 68 61 6e 6b 73 20 74 6f 20 48 75 6d 65 20   Thanks to Hume 
1e010 53 6d 69 74 68 20 66 6f 72 20 73 65 6e 64 69 6e  Smith for sendin
1e020 67 20 69 6e 0a 74 68 69 73 20 62 75 67 20 66 69  g in.this bug fi
1e030 78 2e 20 20 28 52 4a 29 0a 0a 32 2f 31 30 2f 39  x.  (RJ)..2/10/9
1e040 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
1e050 65 29 20 45 6c 69 6d 69 6e 61 74 65 64 20 54 63  e) Eliminated Tc
1e060 6c 5f 53 74 72 69 6e 67 4f 62 6a 41 70 70 65 6e  l_StringObjAppen
1e070 64 20 61 6e 64 20 0a 54 63 6c 5f 53 74 72 69 6e  d and .Tcl_Strin
1e080 67 4f 62 6a 41 70 70 65 6e 64 4f 62 6a 20 70 72  gObjAppendObj pr
1e090 6f 63 65 64 75 72 65 73 2c 20 72 65 70 6c 61 63  ocedures, replac
1e0a0 65 64 20 74 68 65 6d 20 77 69 74 68 20 54 63 6c  ed them with Tcl
1e0b0 5f 41 70 70 65 6e 64 54 6f 4f 62 6a 0a 61 6e 64  _AppendToObj.and
1e0c0 20 54 63 6c 5f 41 70 70 65 6e 64 53 74 72 69 6e   Tcl_AppendStrin
1e0d0 67 73 54 6f 4f 62 6a 20 70 72 6f 63 65 64 75 72  gsToObj procedur
1e0e0 65 73 2e 20 20 41 64 64 65 64 20 6e 65 77 20 70  es.  Added new p
1e0f0 72 6f 63 65 64 75 72 65 0a 54 63 6c 5f 53 65 74  rocedure.Tcl_Set
1e100 4f 62 6a 4c 65 6e 67 74 68 2e 20 28 4a 4f 29 0a  ObjLength. (JO).
1e110 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
1e120 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69  COMPATIBILITY wi
1e130 74 68 20 54 63 6c 20 38 2e 30 61 32 2c 20 62 75  th Tcl 8.0a2, bu
1e140 74 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37  t not with Tcl 7
1e150 2e 36 20 2a 2a 2a 0a 0a 32 2f 31 30 2f 39 37 20  .6 ***..2/10/97 
1e160 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
1e170 64 65 64 20 54 63 6c 5f 57 72 6f 6e 67 4e 75 6d  ded Tcl_WrongNum
1e180 41 72 67 73 20 70 72 6f 63 65 64 75 72 65 20 66  Args procedure f
1e190 6f 72 20 67 65 6e 65 72 61 74 69 6e 67 0a 65 72  or generating.er
1e1a0 72 6f 72 20 6d 65 73 73 61 67 65 73 20 61 62 6f  ror messages abo
1e1b0 75 74 20 69 6e 63 6f 72 72 65 63 74 20 6e 75 6d  ut incorrect num
1e1c0 62 65 72 20 6f 66 20 61 72 67 75 6d 65 6e 74 73  ber of arguments
1e1d0 2e 20 28 4a 4f 29 0a 0a 32 2f 31 31 2f 39 37 20  . (JO)..2/11/97 
1e1e0 28 6e 65 77 20 66 65 61 74 75 72 65 2c 20 62 75  (new feature, bu
1e1f0 67 20 66 69 78 29 20 68 74 74 70 20 70 61 63 6b  g fix) http pack
1e200 61 67 65 2e 20 20 41 64 64 65 64 20 2d 61 63 63  age.  Added -acc
1e210 65 70 74 20 74 6f 20 68 74 74 70 5f 63 6f 6e 66  ept to http_conf
1e220 69 67 0a 73 6f 20 79 6f 75 20 63 61 6e 20 73 65  ig.so you can se
1e230 74 20 74 68 65 20 41 63 63 65 70 74 20 68 65 61  t the Accept hea
1e240 64 65 72 2e 20 20 41 64 64 65 64 20 2d 68 61 6e  der.  Added -han
1e250 64 6c 65 72 20 6f 70 74 69 6f 6e 20 74 6f 20 68  dler option to h
1e260 74 74 70 5f 67 65 74 20 73 6f 0a 79 6f 75 20 63  ttp_get so.you c
1e270 61 6e 20 73 75 70 70 6c 79 20 79 6f 75 72 20 6f  an supply your o
1e280 77 6e 20 64 61 74 61 20 68 61 6e 64 6c 65 72 2e  wn data handler.
1e290 20 20 41 6c 73 6f 20 66 69 78 65 64 20 50 4f 53    Also fixed POS
1e2a0 54 20 6f 70 65 72 61 74 69 6f 6e 20 74 6f 0a 73  T operation to.s
1e2b0 65 74 20 74 68 65 20 63 6f 72 72 65 63 74 20 4d  et the correct M
1e2c0 49 4d 45 20 74 79 70 65 20 6f 6e 20 74 68 65 20  IME type on the 
1e2d0 72 65 71 75 65 73 74 2e 20 28 42 57 29 0a 0a 32  request. (BW)..2
1e2e0 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29  /22/97 (bug fix)
1e2f0 20 46 69 78 65 64 20 62 75 67 20 74 68 61 74 20   Fixed bug that 
1e300 63 61 75 73 65 64 20 24 74 63 6c 5f 70 6c 61 74  caused $tcl_plat
1e310 66 6f 72 6d 28 6f 73 56 65 72 73 69 6f 6e 29 20  form(osVersion) 
1e320 74 6f 20 62 65 0a 63 6f 6d 70 75 74 65 64 20 69  to be.computed i
1e330 6e 63 6f 72 72 65 63 74 6c 79 20 75 6e 64 65 72  ncorrectly under
1e340 20 41 49 58 2e 20 28 4a 4f 29 0a 0a 32 2f 32 35   AIX. (JO)..2/25
1e350 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65  /97 (new feature
1e360 2c 20 66 65 61 74 75 72 65 20 63 68 61 6e 67 65  , feature change
1e370 29 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20  ) Added support 
1e380 66 6f 72 20 62 6f 74 68 20 69 6e 74 20 61 6e 64  for both int and
1e390 20 6c 6f 6e 67 0a 69 6e 74 65 67 65 72 20 6f 62   long.integer ob
1e3a0 6a 65 63 74 73 2e 20 41 64 64 65 64 20 54 63 6c  jects. Added Tcl
1e3b0 5f 4e 65 77 4c 6f 6e 67 4f 62 6a 2f 54 63 6c 5f  _NewLongObj/Tcl_
1e3c0 47 65 74 4c 6f 6e 67 46 72 6f 6d 4f 62 6a 2f 54  GetLongFromObj/T
1e3d0 63 6c 5f 53 65 74 4c 6f 6e 67 46 72 6f 6d 4f 62  cl_SetLongFromOb
1e3e0 6a 0a 70 72 6f 63 65 64 75 72 65 73 20 61 6e 64  j.procedures and
1e3f0 20 72 65 6e 61 6d 65 64 20 74 68 65 20 54 63 6c   renamed the Tcl
1e400 5f 4f 62 6a 20 69 6e 74 65 72 6e 61 6c 52 65 70  _Obj internalRep
1e410 20 69 6e 74 56 61 6c 75 65 20 6d 65 6d 62 65 72   intValue member
1e420 20 74 6f 0a 6c 6f 6e 67 56 61 6c 75 65 2e 20 54   to.longValue. T
1e430 63 6c 5f 47 65 74 49 6e 74 46 72 6f 6d 4f 62 6a  cl_GetIntFromObj
1e440 20 6e 6f 77 20 63 68 65 63 6b 73 20 66 6f 72 20   now checks for 
1e450 69 6e 74 65 67 65 72 20 76 61 6c 75 65 73 20 74  integer values t
1e460 6f 6f 20 6c 61 72 67 65 20 74 6f 0a 72 65 70 72  oo large to.repr
1e470 65 73 65 6e 74 20 61 73 20 6e 6f 6e 2d 6c 6f 6e  esent as non-lon
1e480 67 20 69 6e 74 65 67 65 72 73 2e 20 43 68 61 6e  g integers. Chan
1e490 67 65 64 20 54 63 6c 5f 47 65 74 41 6c 6c 4f 62  ged Tcl_GetAllOb
1e4a0 6a 54 79 70 65 73 20 74 6f 0a 54 63 6c 5f 41 70  jTypes to.Tcl_Ap
1e4b0 70 65 6e 64 41 6c 6c 4f 62 6a 54 79 70 65 73 2e  pendAllObjTypes.
1e4c0 20 28 42 4c 29 0a 0a 33 2f 35 2f 39 37 20 28 6e   (BL)..3/5/97 (n
1e4d0 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
1e4e0 64 20 6e 65 77 20 54 63 6c 5f 53 65 74 4c 69 73  d new Tcl_SetLis
1e4f0 74 4f 62 6a 20 70 72 6f 63 65 64 75 72 65 20 74  tObj procedure t
1e500 6f 20 72 6f 75 6e 64 20 6f 75 74 0a 63 6f 6c 6c  o round out.coll
1e510 65 63 74 69 6f 6e 20 6f 66 20 70 72 6f 63 65 64  ection of proced
1e520 75 72 65 73 20 74 68 61 74 20 73 65 74 20 74 68  ures that set th
1e530 65 20 74 79 70 65 20 61 6e 64 20 76 61 6c 75 65  e type and value
1e540 20 6f 66 20 65 78 69 73 74 69 6e 67 20 54 63 6c   of existing Tcl
1e550 0a 6f 62 6a 65 63 74 73 2e 20 28 42 4c 29 0a 0a  .objects. (BL)..
1e560 33 2f 36 2f 39 37 20 28 6e 65 77 20 66 65 61 74  3/6/97 (new feat
1e570 75 72 65 29 20 41 64 64 65 64 20 2d 67 6c 6f 62  ure) Added -glob
1e580 61 6c 20 66 6c 61 67 20 66 6f 72 20 69 6e 74 65  al flag for inte
1e590 72 70 20 69 6e 76 6f 6b 65 68 69 64 64 65 6e 2e  rp invokehidden.
1e5a0 20 28 4a 4c 29 0a 0a 33 2f 36 2f 39 37 20 28 6e   (JL)..3/6/97 (n
1e5b0 65 77 20 66 65 61 74 75 72 65 2c 20 66 65 61 74  ew feature, feat
1e5c0 75 72 65 20 63 68 61 6e 67 65 29 20 41 64 64 65  ure change) Adde
1e5d0 64 20 69 73 4e 61 74 69 76 65 4f 62 6a 65 63 74  d isNativeObject
1e5e0 50 72 6f 63 20 66 69 65 6c 64 20 74 6f 20 74 68  Proc field to th
1e5f0 65 0a 54 63 6c 5f 43 6d 64 49 6e 66 6f 20 73 74  e.Tcl_CmdInfo st
1e600 72 75 63 74 75 72 65 20 74 6f 20 69 6e 64 69 63  ructure to indic
1e610 61 74 65 20 28 77 68 65 6e 20 31 29 20 69 66 20  ate (when 1) if 
1e620 74 68 65 20 63 6f 6d 6d 61 6e 64 20 68 61 73 20  the command has 
1e630 61 6e 0a 6f 62 6a 65 63 74 2d 62 61 73 65 64 20  an.object-based 
1e640 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65 64 75 72  command procedur
1e650 65 2e 20 52 65 6d 6f 76 65 64 20 74 68 65 20 6e  e. Removed the n
1e660 61 6d 65 4c 65 6e 67 74 68 20 61 72 67 20 66 72  ameLength arg fr
1e670 6f 6d 0a 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a  om.Tcl_CreateObj
1e680 43 6f 6d 6d 61 6e 64 20 73 69 6e 63 65 20 63 6f  Command since co
1e690 6d 6d 61 6e 64 20 6e 61 6d 65 73 20 63 61 6e 27  mmand names can'
1e6a0 74 20 63 6f 6e 74 61 69 6e 20 6e 75 6c 6c 20 63  t contain null c
1e6b0 68 61 72 61 63 74 65 72 73 2e 20 28 42 4c 29 0a  haracters. (BL).
1e6c0 0a 33 2f 36 2f 39 37 20 28 62 75 67 20 66 69 78  .3/6/97 (bug fix
1e6d0 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 22  ) Fixed bug in "
1e6e0 75 6e 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75  unknown" procedu
1e6f0 72 65 20 74 68 61 74 20 63 61 75 73 65 64 20 61  re that caused a
1e700 75 74 6f 2d 0a 6c 6f 61 64 69 6e 67 20 74 6f 20  uto-.loading to 
1e710 66 61 69 6c 20 6f 6e 20 63 6f 6d 6d 61 6e 64 73  fail on commands
1e720 20 77 68 6f 73 65 20 6e 61 6d 65 73 20 62 65 67   whose names beg
1e730 69 6e 20 77 69 74 68 20 64 69 67 69 74 73 2e 20  in with digits. 
1e740 28 4a 4f 29 0a 0a 33 2f 37 2f 39 37 20 28 62 75  (JO)..3/7/97 (bu
1e750 67 20 66 69 78 29 20 41 75 74 6f 2d 6c 6f 61 64  g fix) Auto-load
1e760 69 6e 67 20 6e 6f 77 20 77 6f 72 6b 73 20 69 6e  ing now works in
1e770 20 53 61 66 65 20 42 61 73 65 2e 20 53 61 66 65   Safe Base. Safe
1e780 20 69 6e 74 65 72 70 72 65 74 65 72 73 0a 6f 6e   interpreters.on
1e790 6c 79 20 61 63 63 65 70 74 20 74 68 65 20 56 65  ly accept the Ve
1e7a0 72 73 69 6f 6e 20 32 20 61 6e 64 20 6f 6e 77 61  rsion 2 and onwa
1e7b0 72 64 73 20 74 63 6c 49 6e 64 65 78 20 66 69 6c  rds tclIndex fil
1e7c0 65 73 2e 20 28 4a 4c 29 0a 0a 33 2f 31 33 2f 39  es. (JL)..3/13/9
1e7d0 37 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  7 (bug fix) Fixe
1e7e0 64 20 63 6f 72 65 20 64 75 6d 70 20 64 75 65 20  d core dump due 
1e7f0 74 6f 20 69 6e 74 65 72 61 63 74 69 6f 6e 20 62  to interaction b
1e800 65 74 77 65 65 6e 20 61 6c 69 61 73 65 73 20 61  etween aliases a
1e810 6e 64 0a 68 69 64 64 65 6e 20 63 6f 6d 6d 61 6e  nd.hidden comman
1e820 64 73 2e 20 42 75 67 20 66 6f 75 6e 64 20 62 79  ds. Bug found by
1e830 20 4c 69 6e 64 73 61 79 20 4d 61 72 73 68 61 6c   Lindsay Marshal
1e840 6c 2e 20 28 4a 4c 29 0a 0a 33 2f 31 34 2f 39 37  l. (JL)..3/14/97
1e850 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
1e860 20 6d 61 63 20 62 75 67 73 20 72 65 6c 61 74 69   mac bugs relati
1e870 6e 67 20 74 6f 20 74 69 6d 65 2e 20 20 54 68 65  ng to time.  The
1e880 20 2d 67 6d 74 20 6f 70 74 69 6f 6e 0a 6e 6f 77   -gmt option.now
1e890 20 61 64 6a 75 73 74 73 20 74 68 65 20 74 69 6d   adjusts the tim
1e8a0 65 20 69 6e 20 74 68 65 20 63 6f 72 72 65 63 74  e in the correct
1e8b0 20 64 69 72 65 63 74 69 6f 6e 2e 20 20 28 54 68   direction.  (Th
1e8c0 61 6e 6b 73 20 74 6f 20 45 64 20 48 75 6d 65 20  anks to Ed Hume 
1e8d0 66 6f 72 0a 72 65 70 6f 72 74 69 6e 67 20 61 20  for.reporting a 
1e8e0 66 69 78 20 74 6f 20 74 68 69 73 20 70 72 6f 62  fix to this prob
1e8f0 6c 65 6d 2e 29 20 20 41 6c 73 6f 20 66 69 78 65  lem.)  Also fixe
1e900 64 20 66 69 6c 65 20 22 6d 74 69 6d 65 22 20 65  d file "mtime" e
1e910 74 63 2e 20 74 6f 0a 72 65 74 75 72 6e 20 74 69  tc. to.return ti
1e920 6d 65 73 20 66 72 6f 6d 20 47 4d 54 20 72 61 74  mes from GMT rat
1e930 68 65 72 20 74 68 61 6e 20 6c 6f 63 61 6c 20 74  her than local t
1e940 69 6d 65 20 7a 6f 6e 65 2e 20 20 28 52 4a 29 0a  ime zone.  (RJ).
1e950 0a 33 2f 31 38 2f 39 37 20 28 66 65 61 74 75 72  .3/18/97 (featur
1e960 65 20 63 68 61 6e 67 65 29 20 44 65 63 6c 61 72  e change) Declar
1e970 61 74 69 6f 6e 20 6f 66 20 6f 62 6a 76 20 69 6e  ation of objv in
1e980 20 54 63 6c 5f 4f 62 6a 43 6d 64 50 72 6f 63 20   Tcl_ObjCmdProc 
1e990 66 75 6e 63 74 69 6f 6e 0a 63 68 61 6e 67 65 64  function.changed
1e9a0 20 66 72 6f 6d 20 22 54 63 6c 5f 4f 62 6a 20 2a   from "Tcl_Obj *
1e9b0 6f 62 6a 76 5b 5d 22 20 74 6f 20 22 54 63 6c 5f  objv[]" to "Tcl_
1e9c0 4f 62 6a 20 2a 43 4f 4e 53 54 20 6f 62 6a 76 5b  Obj *CONST objv[
1e9d0 5d 22 2e 20 20 41 6c 6c 20 54 63 6c 20 6f 62 6a  ]".  All Tcl obj
1e9e0 65 63 74 0a 63 6f 6d 6d 61 6e 64 73 20 63 68 61  ect.commands cha
1e9f0 6e 67 65 64 20 74 6f 20 75 73 65 20 6e 65 77 20  nged to use new 
1ea00 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f 66 20 6f  declaration of o
1ea10 62 6a 76 2e 20 20 4e 61 69 76 65 20 74 72 61 6e  bjv.  Naive tran
1ea20 73 6c 61 74 69 6f 6e 20 6f 66 0a 73 74 72 69 6e  slation of.strin
1ea30 67 2d 62 61 73 65 64 20 63 6f 6d 6d 61 6e 64 20  g-based command 
1ea40 70 72 6f 63 73 20 74 6f 20 6f 62 6a 65 63 74 2d  procs to object-
1ea50 62 61 73 65 64 20 63 6f 6d 6d 61 6e 64 20 70 72  based command pr
1ea60 6f 63 73 20 63 6f 75 6c 64 20 76 65 72 79 20 65  ocs could very e
1ea70 61 73 69 6c 79 0a 68 61 76 65 20 79 69 65 6c 64  asily.have yield
1ea80 65 64 20 63 6f 64 65 20 77 68 65 72 65 20 74 68  ed code where th
1ea90 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 68  e contents of th
1eaa0 65 20 6f 62 6a 76 20 61 72 72 61 79 20 77 65 72  e objv array wer
1eab0 65 20 63 68 61 6e 67 65 64 2e 20 20 54 68 69 73  e changed.  This
1eac0 0a 69 73 20 6e 6f 74 20 61 20 70 72 6f 62 6c 65  .is not a proble
1ead0 6d 20 77 69 74 68 20 73 74 72 69 6e 67 2d 62 61  m with string-ba
1eae0 73 65 64 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63  sed command proc
1eaf0 73 2c 20 62 75 74 20 64 6f 69 6e 67 20 73 6f 6d  s, but doing som
1eb00 65 74 68 69 6e 67 20 61 73 0a 73 69 6d 70 6c 65  ething as.simple
1eb10 20 61 73 20 6f 62 6a 76 5b 32 5d 20 3d 20 6f 62   as objv[2] = ob
1eb20 6a 76 5b 33 5d 20 77 6f 75 6c 64 20 63 6f 72 72  jv[3] would corr
1eb30 75 70 74 20 74 68 65 20 72 75 6e 74 69 6d 65 20  upt the runtime 
1eb40 73 74 61 63 6b 20 61 6e 64 20 63 61 75 73 65 20  stack and cause 
1eb50 54 63 6c 20 74 6f 0a 63 72 61 73 68 2e 20 20 49  Tcl to.crash.  I
1eb60 6e 74 72 6f 64 75 63 65 64 20 43 4f 4e 53 54 20  ntroduced CONST 
1eb70 69 6e 20 64 65 63 6c 61 72 61 74 69 6f 6e 20 6f  in declaration o
1eb80 66 20 6f 62 6a 76 20 73 6f 20 74 68 61 74 20 61  f objv so that a
1eb90 74 74 65 6d 70 74 65 64 20 61 73 73 69 67 6e 6d  ttempted assignm
1eba0 65 6e 74 0a 6f 66 20 6e 65 77 20 70 6f 69 6e 74  ent.of new point
1ebb0 65 72 20 76 61 6c 75 65 73 20 74 6f 20 65 6c 65  er values to ele
1ebc0 6d 65 6e 74 73 20 6f 66 20 74 68 65 20 6f 62 6a  ments of the obj
1ebd0 76 20 61 72 72 61 79 20 77 69 6c 6c 20 62 65 20  v array will be 
1ebe0 63 61 75 67 68 74 20 62 79 20 74 68 65 0a 63 6f  caught by the.co
1ebf0 6d 70 69 6c 65 72 2e 20 28 43 43 53 29 0a 2a 2a  mpiler. (CCS).**
1ec00 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
1ec10 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
1ec20 20 54 63 6c 20 38 2e 30 61 32 20 2a 2a 2a 0a 0a   Tcl 8.0a2 ***..
1ec30 33 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78  3/19/97 (bug fix
1ec40 29 20 46 69 78 65 64 20 70 61 6e 69 63 20 64 75  ) Fixed panic du
1ec50 65 20 74 6f 20 6f 62 6a 65 63 74 20 73 68 61 72  e to object shar
1ec60 69 6e 67 2e 20 54 68 65 20 72 6f 6f 74 20 63 61  ing. The root ca
1ec70 75 73 65 20 77 61 73 0a 74 68 61 74 20 6f 6c 64  use was.that old
1ec80 20 63 6f 64 65 20 77 61 73 20 75 73 69 6e 67 20   code was using 
1ec90 54 63 6c 5f 52 65 73 65 74 52 65 73 75 6c 74 20  Tcl_ResetResult 
1eca0 69 6e 73 74 65 61 64 20 6f 66 20 54 63 6c 5f 52  instead of Tcl_R
1ecb0 65 73 65 74 4f 62 6a 52 65 73 75 6c 74 2e 20 28  esetObjResult. (
1ecc0 4a 4c 29 0a 0a 33 2f 32 30 2f 39 37 20 28 6e 65  JL)..3/20/97 (ne
1ecd0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
1ece0 20 61 20 6e 65 77 20 73 75 62 63 6f 6d 6d 61 6e   a new subcomman
1ecf0 64 20 66 6f 72 20 74 68 65 20 66 69 6c 65 0a 63  d for the file.c
1ed00 6f 6d 6d 61 6e 64 2e 20 66 69 6c 65 20 61 74 74  ommand. file att
1ed10 72 69 62 75 74 65 73 20 66 69 6c 65 6e 61 6d 65  ributes filename
1ed20 20 63 61 6e 20 67 69 76 65 20 61 20 6c 69 73 74   can give a list
1ed30 20 6f 66 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65   of platform-spe
1ed40 63 69 66 69 63 0a 6f 70 74 69 6f 6e 73 20 28 73  cific.options (s
1ed50 75 63 68 20 61 73 20 66 69 6c 65 2f 63 72 65 61  uch as file/crea
1ed60 74 6f 72 20 74 79 70 65 20 6f 6e 20 74 68 65 20  tor type on the 
1ed70 4d 61 63 2c 20 70 65 72 6d 69 73 73 69 6f 6e 73  Mac, permissions
1ed80 20 6f 6e 20 55 6e 69 78 29 20 6f 72 0a 73 65 74   on Unix) or.set
1ed90 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 74   the values of t
1eda0 68 65 6d 2e 20 41 64 64 65 64 20 61 20 6e 65 77  hem. Added a new
1edb0 20 73 75 62 63 6f 6d 6d 61 6e 64 20 66 6f 72 20   subcommand for 
1edc0 74 68 65 20 66 69 6c 65 0a 63 6f 6d 6d 61 6e 64  the file.command
1edd0 2e 20 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d  . file nativenam
1ede0 65 20 6e 61 6d 65 20 67 69 76 65 73 20 62 61 63  e name gives bac
1edf0 6b 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 2d 73  k the platform-s
1ee00 70 65 63 69 66 69 63 20 66 6f 72 6d 0a 66 6f 72  pecific form.for
1ee10 20 74 68 65 20 66 69 6c 65 2e 20 54 68 69 73 20   the file. This 
1ee20 69 73 20 75 73 65 66 75 6c 20 77 68 65 6e 20 74  is useful when t
1ee30 68 65 20 66 69 6c 65 6e 61 6d 65 20 69 73 20 6e  he filename is n
1ee40 65 65 64 65 64 20 74 6f 20 70 61 73 73 20 74 6f  eeded to pass to
1ee50 0a 74 68 65 20 4f 53 2c 20 73 75 63 68 20 61 73  .the OS, such as
1ee60 20 65 78 65 63 20 75 6e 64 65 72 20 57 69 6e 64   exec under Wind
1ee70 6f 77 73 20 39 35 20 6f 72 20 41 70 70 6c 65 53  ows 95 or AppleS
1ee80 63 72 69 70 74 20 6f 6e 20 74 68 65 20 4d 61 63  cript on the Mac
1ee90 2e 20 46 6f 72 0a 6d 6f 72 65 20 69 6e 66 6f 2c  . For.more info,
1eea0 20 73 65 65 20 66 69 6c 65 2e 6e 2e 20 28 53 52   see file.n. (SR
1eeb0 50 29 0a 0a 33 2f 32 34 2f 39 37 20 28 72 65 6d  P)..3/24/97 (rem
1eec0 6f 76 65 64 20 66 65 61 74 75 72 65 29 20 52 65  oved feature) Re
1eed0 6d 6f 76 65 64 20 74 68 65 20 74 63 6c 5f 73 61  moved the tcl_sa
1eee0 66 65 50 6f 6c 69 63 79 50 61 74 68 20 70 72 6f  fePolicyPath pro
1eef0 63 65 64 75 72 65 2e 20 4e 6f 77 0a 74 68 65 20  cedure. Now.the 
1ef00 70 6f 6c 69 63 79 20 70 61 74 68 20 69 73 20 63  policy path is c
1ef10 6f 6d 70 75 74 65 64 20 66 72 6f 6d 20 74 68 65  omputed from the
1ef20 20 61 75 74 6f 5f 70 61 74 68 20 62 79 20 61 70   auto_path by ap
1ef30 70 65 6e 64 69 6e 67 20 74 68 65 20 64 69 72 65  pending the dire
1ef40 63 74 6f 72 79 0a 27 70 6f 6c 69 63 69 65 73 27  ctory.'policies'
1ef50 20 74 6f 20 65 61 63 68 20 65 6c 65 6d 65 6e 74   to each element
1ef60 2e 20 41 6c 73 6f 20 66 69 78 65 64 20 73 65 76  . Also fixed sev
1ef70 65 72 61 6c 20 62 75 67 73 20 69 6e 20 61 75 74  eral bugs in aut
1ef80 6f 6d 61 74 69 63 20 74 72 61 63 6b 69 6e 67 0a  omatic tracking.
1ef90 6f 66 20 61 75 74 6f 5f 70 61 74 68 20 62 79 20  of auto_path by 
1efa0 63 6f 6d 70 75 74 65 64 20 70 6f 6c 69 63 79 20  computed policy 
1efb0 70 61 74 68 2e 20 28 4a 4c 29 0a 2a 2a 2a 20 50  path. (JL).*** P
1efc0 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
1efd0 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 54 63  TIBILITY with Tc
1efe0 6c 20 38 2e 30 61 32 20 62 75 74 20 6e 6f 74 20  l 8.0a2 but not 
1eff0 77 69 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a  with Tcl 7.6 ***
1f000 0a 0a 34 2f 38 2f 39 37 20 28 6e 65 77 20 66 65  ..4/8/97 (new fe
1f010 61 74 75 72 65 29 20 49 66 20 74 68 65 20 76 61  ature) If the va
1f020 72 69 61 62 6c 65 20 77 68 6f 73 65 20 6e 61 6d  riable whose nam
1f030 65 20 69 73 20 70 61 73 73 65 64 20 74 6f 20 6c  e is passed to l
1f040 61 70 70 65 6e 64 20 64 6f 65 73 6e 27 74 0a 61  append doesn't.a
1f050 6c 72 65 61 64 79 20 65 78 69 73 74 2c 20 61 6e  lready exist, an
1f060 64 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 76  d there are no v
1f070 61 6c 75 65 20 61 72 67 75 6d 65 6e 74 73 2c 20  alue arguments, 
1f080 6c 61 70 70 65 6e 64 20 6e 6f 77 20 63 72 65 61  lappend now crea
1f090 74 65 73 20 74 68 65 0a 76 61 72 69 61 62 6c 65  tes the.variable
1f0a0 20 77 69 74 68 20 61 6e 20 65 6d 70 74 79 20 76   with an empty v
1f0b0 61 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20  alue instead of 
1f0c0 72 65 74 75 72 6e 69 6e 67 20 61 6e 20 65 72 72  returning an err
1f0d0 6f 72 2e 20 43 68 61 6e 67 65 20 73 75 67 67 65  or. Change sugge
1f0e0 73 74 65 64 0a 62 79 20 54 6f 6d 20 54 72 6f 6d  sted.by Tom Trom
1f0f0 65 79 2e 20 28 42 4c 29 0a 0a 34 2f 39 2f 39 37  ey. (BL)..4/9/97
1f100 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
1f110 29 20 43 68 61 6e 67 65 64 20 74 68 65 20 6e 61  ) Changed the na
1f120 6d 65 20 6f 66 20 74 68 65 20 54 43 4c 5f 50 41  me of the TCL_PA
1f130 52 54 31 5f 4e 4f 54 5f 50 41 52 53 45 44 20 66  RT1_NOT_PARSED f
1f140 6c 61 67 20 74 6f 0a 54 43 4c 5f 50 41 52 53 45  lag to.TCL_PARSE
1f150 5f 50 41 52 54 31 2e 20 28 42 4c 29 0a 2a 2a 2a  _PART1. (BL).***
1f160 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d   POTENTIAL INCOM
1f170 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68 20  PATIBILITY with 
1f180 54 63 6c 20 38 2e 30 61 32 20 62 75 74 20 6e 6f  Tcl 8.0a2 but no
1f190 74 20 77 69 74 68 20 54 63 6c 20 37 2e 36 20 2a  t with Tcl 7.6 *
1f1a0 2a 2a 0a 0a 34 2f 31 30 2f 39 37 20 28 62 75 67  **..4/10/97 (bug
1f1b0 20 66 69 78 65 73 29 20 46 69 78 65 64 20 76 61   fixes) Fixed va
1f1c0 72 69 6f 75 73 20 63 6f 6d 70 69 6c 61 74 69 6f  rious compilatio
1f1d0 6e 2d 72 65 6c 61 74 65 64 20 62 75 67 73 3a 0a  n-related bugs:.
1f1e0 20 20 20 20 2d 20 22 55 70 64 61 74 65 53 74 72      - "UpdateStr
1f1f0 69 6e 67 4f 66 43 6d 64 4e 61 6d 65 20 73 68 6f  ingOfCmdName sho
1f200 75 6c 64 20 6e 65 76 65 72 20 62 65 20 69 6e 76  uld never be inv
1f210 6f 6b 65 64 22 20 70 61 6e 69 63 2e 0a 20 20 20  oked" panic..   
1f220 20 2d 20 42 61 64 20 63 6f 64 65 20 67 65 6e 65   - Bad code gene
1f230 72 61 74 65 64 20 66 6f 72 20 65 78 70 72 65 73  rated for expres
1f240 73 69 6f 6e 73 20 6e 6f 74 20 69 6e 20 7b 7d 27  sions not in {}'
1f250 73 20 69 6e 73 69 64 65 20 63 61 74 63 68 20 63  s inside catch c
1f260 6f 6d 6d 61 6e 64 73 2e 0a 20 20 20 20 2d 20 53  ommands..    - S
1f270 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75 6c  egmentation faul
1f280 74 20 69 6e 20 73 6f 6d 65 20 63 6f 6d 6d 61 6e  t in some comman
1f290 64 20 70 72 6f 63 65 64 75 72 65 73 20 77 68 65  d procedures whe
1f2a0 6e 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 0a 20  n two argument. 
1f2b0 20 20 20 20 20 6f 62 6a 65 63 74 20 70 6f 69 6e       object poin
1f2c0 74 65 72 73 20 72 65 66 65 72 20 74 6f 20 74 68  ters refer to th
1f2d0 65 20 73 61 6d 65 20 6f 62 6a 65 63 74 2e 0a 20  e same object.. 
1f2e0 20 20 20 2d 20 53 65 63 6f 6e 64 20 6c 65 76 65     - Second leve
1f2f0 6c 20 6f 66 20 73 75 62 73 74 69 74 75 74 69 6f  l of substitutio
1f300 6e 73 20 77 65 72 65 20 6e 65 76 65 72 20 64 6f  ns were never do
1f310 6e 65 20 66 6f 72 20 65 78 70 72 65 73 73 69 6f  ne for expressio
1f320 6e 73 20 6e 6f 74 0a 20 20 20 20 20 20 69 6e 20  ns not.      in 
1f330 7b 7d 27 73 20 74 68 61 74 20 63 6f 6e 73 69 73  {}'s that consis
1f340 74 20 6f 66 20 61 20 73 69 6e 67 6c 65 20 76 61  t of a single va
1f350 72 69 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65  riable reference
1f360 3a 20 65 2e 67 2e 2c 0a 20 20 20 20 20 20 22 73  : e.g.,.      "s
1f370 65 74 20 78 20 32 37 3b 20 73 65 74 20 62 6f 6f  et x 27; set boo
1f380 6c 20 7b 24 78 7d 3b 20 69 66 20 24 62 6f 6f 6c  l {$x}; if $bool
1f390 20 7b 70 75 74 73 20 66 6f 6f 7d 22 20 77 6f 75   {puts foo}" wou
1f3a0 6c 64 20 66 61 69 6c 20 77 69 74 68 20 65 72 72  ld fail with err
1f3b0 6f 72 2e 0a 20 20 20 20 2d 20 42 61 64 20 63 6f  or..    - Bad co
1f3c0 64 65 20 67 65 6e 65 72 61 74 65 64 20 77 68 65  de generated whe
1f3d0 6e 20 63 6f 64 65 20 73 74 6f 72 61 67 65 20 77  n code storage w
1f3e0 61 73 20 67 72 6f 77 6e 20 77 68 69 6c 65 20 63  as grown while c
1f3f0 6f 6d 70 69 6c 69 6e 67 20 73 6f 6d 65 0a 20 20  ompiling some.  
1f400 20 20 20 20 65 78 70 72 65 73 73 69 6f 6e 73 3a      expressions:
1f410 20 6f 6e 65 73 20 77 69 74 68 20 63 6f 6d 70 69   ones with compi
1f420 6c 61 74 69 6f 6e 20 65 72 72 6f 72 73 20 6f 72  lation errors or
1f430 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66 20 6f   consisting of o
1f440 6e 6c 79 20 61 0a 20 20 20 20 20 20 76 61 72 69  nly a.      vari
1f450 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65 2e 0a  able reference..
1f460 20 20 20 20 2d 20 42 75 67 73 20 69 6e 76 6f 6c      - Bugs invol
1f470 76 69 6e 67 20 6d 75 6c 74 69 70 6c 65 20 69 6e  ving multiple in
1f480 74 65 72 70 72 65 74 65 72 73 3a 20 77 61 73 6e  terpreters: wasn
1f490 27 74 20 63 68 65 63 6b 69 6e 67 20 74 68 61 74  't checking that
1f4a0 20 61 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75   a.      procedu
1f4b0 72 65 27 73 20 63 6f 64 65 20 77 61 73 20 63 6f  re's code was co
1f4c0 6d 70 69 6c 65 64 20 66 6f 72 20 74 68 65 20 73  mpiled for the s
1f4d0 61 6d 65 20 69 6e 74 65 72 70 72 65 74 65 72 20  ame interpreter 
1f4e0 61 73 20 74 68 65 20 6f 6e 65 0a 20 20 20 20 20  as the one.     
1f4f0 20 65 78 65 63 75 74 69 6e 67 20 69 74 2c 20 61   executing it, a
1f500 6e 64 20 64 69 64 6e 27 74 20 69 6e 76 61 6c 69  nd didn't invali
1f510 64 61 74 65 20 63 6f 64 65 20 6f 6e 20 68 69 64  date code on hid
1f520 64 65 6e 2d 65 78 70 6f 73 65 64 20 63 6f 6d 6d  den-exposed comm
1f530 61 6e 64 0a 20 20 20 20 20 20 74 72 61 6e 73 69  and.      transi
1f540 74 69 6f 6e 73 2e 0a 20 20 20 20 2d 20 22 42 61  tions..    - "Ba
1f550 64 20 73 74 61 63 6b 20 74 6f 70 22 20 70 61 6e  d stack top" pan
1f560 69 63 20 77 68 65 6e 20 65 78 65 63 75 74 69 6e  ic when executin
1f570 67 20 73 63 72 69 70 74 73 20 74 68 61 74 20 72  g scripts that r
1f580 65 71 75 69 72 65 20 61 20 68 75 67 65 0a 20 20  equire a huge.  
1f590 20 20 20 20 61 6d 6f 75 6e 74 20 6f 66 20 73 74      amount of st
1f5a0 61 63 6b 20 73 70 61 63 65 2e 0a 20 20 20 20 2d  ack space..    -
1f5b0 20 49 6e 63 6f 72 72 65 63 74 20 73 68 61 72 69   Incorrect shari
1f5c0 6e 67 20 6f 66 20 63 6f 64 65 20 66 6f 72 20 70  ng of code for p
1f5d0 72 6f 63 65 64 75 72 65 20 62 6f 64 69 65 73 2c  rocedure bodies,
1f5e0 20 61 6e 64 20 70 72 6f 63 65 64 75 72 65 20 63   and procedure c
1f5f0 6f 64 65 0a 20 20 20 20 20 20 64 65 61 6c 6c 6f  ode.      deallo
1f600 63 61 74 65 64 20 62 65 66 6f 72 65 20 6c 61 73  cated before las
1f610 74 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 74  t execution of t
1f620 68 65 20 70 72 6f 63 65 64 75 72 65 20 66 69 6e  he procedure fin
1f630 69 73 68 65 64 2e 0a 20 20 20 20 2d 20 46 69 78  ished..    - Fix
1f640 65 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f  ed compilation o
1f650 66 20 65 78 70 72 65 73 73 69 6f 6e 20 77 6f 72  f expression wor
1f660 64 73 20 69 6e 20 71 75 6f 74 65 73 2e 20 46 6f  ds in quotes. Fo
1f670 72 20 65 78 61 6d 70 6c 65 2c 0a 20 20 20 20 20  r example,.     
1f680 20 69 66 20 22 30 20 3c 20 33 22 20 7b 70 75 74   if "0 < 3" {put
1f690 73 20 66 6f 6f 7d 2e 0a 20 20 20 20 2d 20 46 69  s foo}..    - Fi
1f6a0 78 65 64 20 70 65 72 66 6f 72 6d 61 6e 63 65 20  xed performance 
1f6b0 62 75 67 20 69 6e 20 61 72 72 61 79 20 73 65 74  bug in array set
1f6c0 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 6c 61   command with la
1f6d0 72 67 65 20 61 73 73 69 67 6e 6d 65 6e 74 73 2e  rge assignments.
1f6e0 0a 20 20 20 20 2d 20 54 63 6c 5f 53 65 74 4f 62  .    - Tcl_SetOb
1f6f0 6a 4c 65 6e 67 74 68 20 73 65 67 6d 65 6e 74 61  jLength segmenta
1f700 74 69 6f 6e 20 66 61 75 6c 74 20 73 65 74 74 69  tion fault setti
1f710 6e 67 20 6c 65 6e 67 74 68 20 6f 66 20 65 6d 70  ng length of emp
1f720 74 79 20 6f 62 6a 65 63 74 2e 0a 20 20 20 20 2d  ty object..    -
1f730 20 49 66 20 54 63 6c 5f 53 65 74 4f 62 6a 65 63   If Tcl_SetObjec
1f740 74 52 65 73 75 6c 74 20 77 61 73 20 70 61 73 73  tResult was pass
1f750 65 64 20 74 68 65 20 73 61 6d 65 20 6f 62 6a 65  ed the same obje
1f760 63 74 20 61 73 20 74 68 65 20 69 6e 74 65 72 70  ct as the interp
1f770 72 65 74 65 72 27 73 0a 20 20 20 20 20 20 72 65  reter's.      re
1f780 73 75 6c 74 20 6f 62 6a 65 63 74 2c 20 69 74 20  sult object, it 
1f790 66 72 65 65 64 20 74 68 65 20 6f 62 6a 65 63 74  freed the object
1f7a0 20 69 6e 73 74 65 61 64 20 6f 66 20 64 6f 69 6e   instead of doin
1f7b0 67 20 6e 6f 74 68 69 6e 67 2e 20 42 75 67 20 66  g nothing. Bug f
1f7c0 69 78 0a 20 20 20 20 20 20 62 79 20 4d 69 63 68  ix.      by Mich
1f7d0 61 65 6c 20 4a 2e 20 4d 63 4c 65 6e 6e 61 6e 2e  ael J. McLennan.
1f7e0 0a 20 20 20 20 2d 20 54 63 6c 5f 4c 69 73 74 4f  .    - Tcl_ListO
1f7f0 62 6a 41 70 70 65 6e 64 4c 69 73 74 20 69 6e 73  bjAppendList ins
1f800 65 72 74 65 64 20 65 6c 65 6d 65 6e 74 73 20 66  erted elements f
1f810 72 6f 6d 20 74 68 65 20 77 72 6f 6e 67 20 6c 69  rom the wrong li
1f820 73 74 2e 20 42 75 67 20 66 69 78 0a 20 20 20 20  st. Bug fix.    
1f830 20 20 62 79 20 4d 69 63 68 61 65 6c 20 4a 2e 20    by Michael J. 
1f840 4d 63 4c 65 6e 6e 61 6e 2e 0a 20 20 20 20 2d 20  McLennan..    - 
1f850 53 65 67 6d 65 6e 74 61 74 69 6f 6e 20 66 61 75  Segmentation fau
1f860 6c 74 20 69 66 20 65 6d 70 74 79 20 76 61 72 69  lt if empty vari
1f870 61 62 6c 65 20 6c 69 73 74 20 77 61 73 20 73 70  able list was sp
1f880 65 63 69 66 69 65 64 20 69 6e 20 61 20 66 6f 72  ecified in a for
1f890 65 61 63 68 0a 20 20 20 20 20 20 63 6f 6d 6d 61  each.      comma
1f8a0 6e 64 2e 20 42 75 67 20 66 69 78 20 62 79 20 4a  nd. Bug fix by J
1f8b0 61 6e 20 4e 69 6a 74 6d 61 6e 73 2e 0a 20 20 20  an Nijtmans..   
1f8c0 20 2d 20 4e 55 4c 4c 20 63 6f 6d 6d 61 6e 64 20   - NULL command 
1f8d0 6e 61 6d 65 20 77 61 73 20 61 6c 77 61 79 73 20  name was always 
1f8e0 70 61 73 73 65 64 20 74 6f 20 54 63 6c 5f 43 72  passed to Tcl_Cr
1f8f0 65 61 74 65 54 72 61 63 65 20 63 61 6c 6c 62 61  eateTrace callba
1f900 63 6b 0a 20 20 20 20 20 20 70 72 6f 63 65 64 75  ck.      procedu
1f910 72 65 2e 0a 20 20 20 20 2d 20 57 72 6f 6e 67 20  re..    - Wrong 
1f920 73 74 72 69 6e 67 20 72 65 70 72 65 73 65 6e 74  string represent
1f930 61 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 64 20  ation generated 
1f940 66 6f 72 20 74 68 65 20 76 61 6c 75 65 20 4c 4f  for the value LO
1f950 4e 47 5f 4d 49 4e 2e 0a 20 20 20 20 20 20 46 6f  NG_MIN..      Fo
1f960 72 20 65 78 61 6d 70 6c 65 2c 20 65 78 70 72 20  r example, expr 
1f970 31 3c 3c 33 31 20 70 72 69 6e 74 65 64 20 69 6e  1<<31 printed in
1f980 63 6f 72 72 65 63 74 6c 79 20 6f 6e 20 61 20 33  correctly on a 3
1f990 32 20 62 69 74 20 6d 61 63 68 69 6e 65 2e 0a 20  2 bit machine.. 
1f9a0 20 20 20 2d 20 22 73 65 74 20 7b 61 28 24 78 29     - "set {a($x)
1f9b0 7d 20 31 22 20 73 74 6f 72 65 64 20 76 61 6c 75  } 1" stored valu
1f9c0 65 20 69 6e 20 77 72 6f 6e 67 20 76 61 72 69 61  e in wrong varia
1f9d0 62 6c 65 2e 0a 20 20 20 20 2d 20 54 63 6c 5f 47  ble..    - Tcl_G
1f9e0 65 74 42 6f 6f 6c 65 61 6e 46 72 6f 6d 4f 62 6a  etBooleanFromObj
1f9f0 20 77 61 73 20 6e 6f 74 20 63 68 65 63 6b 69 6e   was not checkin
1fa00 67 20 66 6f 72 20 67 61 72 62 61 67 65 20 61 66  g for garbage af
1fa10 74 65 72 20 61 20 6e 75 6d 65 72 69 63 0a 20 20  ter a numeric.  
1fa20 20 20 20 20 76 61 6c 75 65 2e 0a 20 20 20 20 2d      value..    -
1fa30 20 47 61 72 62 6c 65 64 20 22 62 61 64 20 6f 70   Garbled "bad op
1fa40 65 72 61 6e 64 20 74 79 70 65 22 20 65 72 72 6f  erand type" erro
1fa50 72 20 6d 65 73 73 61 67 65 20 77 68 65 6e 20 65  r message when e
1fa60 76 61 6c 75 61 74 69 6e 67 20 65 78 70 72 65 73  valuating expres
1fa70 73 69 6f 6e 73 0a 20 20 20 20 20 20 6e 6f 74 20  sions.      not 
1fa80 73 75 72 72 6f 75 6e 64 65 64 20 62 79 20 7b 7d  surrounded by {}
1fa90 27 73 2e 20 28 42 4c 29 0a 0a 34 2f 31 36 2f 39  's. (BL)..4/16/9
1faa0 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  7 (new feature) 
1fab0 54 68 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64  The expr command
1fac0 20 6e 6f 77 20 68 61 73 20 74 68 65 20 22 72 61   now has the "ra
1fad0 6e 64 28 29 22 20 61 6e 64 0a 22 73 72 61 6e 64  nd()" and."srand
1fae0 28 29 22 20 66 75 6e 63 74 69 6f 6e 73 20 66 6f  ()" functions fo
1faf0 72 20 67 65 74 74 69 6e 67 20 72 61 6e 64 6f 6d  r getting random
1fb00 20 6e 75 6d 62 65 72 73 20 69 6e 20 65 78 70 72   numbers in expr
1fb10 2e 20 28 52 4a 29 0a 0a 34 2f 32 33 2f 39 37 20  . (RJ)..4/23/97 
1fb20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
1fb30 63 6f 72 65 20 64 75 6d 70 20 69 6e 20 62 67 65  core dump in bge
1fb40 72 72 6f 72 20 77 68 65 6e 20 74 68 65 20 65 72  rror when the er
1fb50 72 6f 72 20 68 61 6e 64 6c 65 72 20 63 6f 6d 6d  ror handler comm
1fb60 61 6e 64 0a 64 65 6c 65 74 65 73 20 74 68 65 20  and.deletes the 
1fb70 63 75 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65  current interpre
1fb80 74 65 72 2e 20 46 6f 75 6e 64 20 62 79 20 4a 75  ter. Found by Ju
1fb90 65 72 67 65 6e 20 53 63 68 6f 65 6e 77 61 6c 64  ergen Schoenwald
1fba0 2e 20 28 4a 4c 29 0a 0a 34 2f 32 33 2f 39 37 20  . (JL)..4/23/97 
1fbb0 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
1fbc0 20 54 68 65 20 6e 6f 74 69 66 69 65 72 20 69 6e   The notifier in
1fbd0 74 65 72 66 61 63 65 73 20 68 61 76 65 20 62 65  terfaces have be
1fbe0 65 6e 20 72 65 64 65 73 69 67 6e 65 64 0a 74 6f  en redesigned.to
1fbf0 20 6d 61 6b 65 20 65 6d 62 65 64 64 69 6e 67 20   make embedding 
1fc00 69 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20  in applications 
1fc10 77 69 74 68 20 65 78 74 65 72 6e 61 6c 20 65 76  with external ev
1fc20 65 6e 74 20 6c 6f 6f 70 73 20 70 6f 73 73 69 62  ent loops possib
1fc30 6c 65 2e 0a 41 20 6e 75 6d 62 65 72 20 6f 66 20  le..A number of 
1fc40 69 6e 74 65 72 66 61 63 65 73 20 69 6e 20 74 68  interfaces in th
1fc50 65 20 6e 6f 74 69 66 69 65 72 20 61 6e 64 20 74  e notifier and t
1fc60 68 65 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65  he channel drive
1fc70 72 73 20 68 61 76 65 0a 63 68 61 6e 67 65 64 2e  rs have.changed.
1fc80 20 20 52 65 66 65 72 20 74 6f 20 74 68 65 20 4e    Refer to the N
1fc90 6f 74 69 66 69 65 72 2e 33 20 61 6e 64 20 43 72  otifier.3 and Cr
1fca0 74 43 68 61 6e 6e 65 6c 2e 33 20 6d 61 6e 75 61  tChannel.3 manua
1fcb0 6c 20 65 6e 74 72 69 65 73 20 66 6f 72 0a 6d 6f  l entries for.mo
1fcc0 72 65 20 64 65 74 61 69 6c 73 2e 20 28 53 53 29  re details. (SS)
1fcd0 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
1fce0 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
1fcf0 2a 2a 0a 0a 34 2f 32 33 2f 39 37 20 28 72 65 6d  **..4/23/97 (rem
1fd00 6f 76 65 64 20 66 65 61 74 75 72 65 29 20 54 68  oved feature) Th
1fd10 65 20 54 63 6c 5f 46 69 6c 65 20 69 6e 74 65 72  e Tcl_File inter
1fd20 66 61 63 65 73 20 68 61 76 65 20 62 65 65 6e 20  faces have been 
1fd30 72 65 6d 6f 76 65 64 2e 0a 54 68 65 20 54 63 6c  removed..The Tcl
1fd40 5f 43 72 65 61 74 65 46 69 6c 65 48 61 6e 64 6c  _CreateFileHandl
1fd50 65 72 2f 54 63 6c 5f 44 65 6c 65 74 65 46 69 6c  er/Tcl_DeleteFil
1fd60 65 48 61 6e 64 6c 65 72 20 69 6e 74 65 72 66 61  eHandler interfa
1fd70 63 65 73 20 6e 6f 77 20 74 61 6b 65 0a 55 6e 69  ces now take.Uni
1fd80 78 20 66 64 27 73 20 61 6e 64 20 61 72 65 20 6f  x fd's and are o
1fd90 6e 6c 79 20 73 75 70 70 6f 72 74 65 64 20 6f 6e  nly supported on
1fda0 20 74 68 65 20 55 6e 69 78 20 70 6c 61 74 66 6f   the Unix platfo
1fdb0 72 6d 2e 0a 54 63 6c 5f 47 65 74 43 68 61 6e 6e  rm..Tcl_GetChann
1fdc0 65 6c 46 69 6c 65 20 68 61 73 20 62 65 65 6e 20  elFile has been 
1fdd0 72 65 70 6c 61 63 65 64 20 77 69 74 68 20 54 63  replaced with Tc
1fde0 6c 5f 47 65 74 43 68 61 6e 6e 65 6c 48 61 6e 64  l_GetChannelHand
1fdf0 6c 65 2e 0a 54 63 6c 5f 4d 61 6b 65 46 69 6c 65  le..Tcl_MakeFile
1fe00 43 68 61 6e 6e 65 6c 20 6e 6f 77 20 74 61 6b 65  Channel now take
1fe10 73 20 61 20 70 6c 61 74 66 6f 72 6d 20 73 70 65  s a platform spe
1fe20 63 69 66 69 63 20 66 69 6c 65 20 68 61 6e 64 6c  cific file handl
1fe30 65 2e 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54 45  e. (SS).*** POTE
1fe40 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
1fe50 49 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33 2f  ILITY ***..4/23/
1fe60 39 37 20 28 72 65 6d 6f 76 65 64 20 66 65 61 74  97 (removed feat
1fe70 75 72 65 29 20 54 68 65 20 6d 6f 64 61 6c 20 74  ure) The modal t
1fe80 69 6d 65 6f 75 74 20 69 6e 74 65 72 66 61 63 65  imeout interface
1fe90 20 68 61 73 20 62 65 65 6e 0a 72 65 6d 6f 76 65   has been.remove
1fea0 64 20 28 54 63 6c 5f 43 72 65 61 74 65 4d 6f 64  d (Tcl_CreateMod
1feb0 61 6c 54 69 6d 65 6f 75 74 2f 54 63 6c 5f 44 65  alTimeout/Tcl_De
1fec0 6c 65 74 65 4d 6f 64 61 6c 54 69 6d 65 6f 75 74  leteModalTimeout
1fed0 29 20 28 53 53 29 0a 2a 2a 2a 20 50 4f 54 45 4e  ) (SS).*** POTEN
1fee0 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49  TIAL INCOMPATIBI
1fef0 4c 49 54 59 20 2a 2a 2a 0a 0a 34 2f 32 33 2f 39  LITY ***..4/23/9
1ff00 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
1ff10 65 29 20 43 68 61 6e 6e 65 6c 20 64 72 69 76 65  e) Channel drive
1ff20 72 73 20 61 72 65 20 6e 6f 77 20 72 65 71 75 69  rs are now requi
1ff30 72 65 64 20 74 6f 20 63 6f 72 72 65 63 74 6c 79  red to correctly
1ff40 0a 69 6d 70 6c 65 6d 65 6e 74 20 62 6c 6f 63 6b  .implement block
1ff50 69 6e 67 20 62 65 68 61 76 69 6f 72 20 77 68 65  ing behavior whe
1ff60 6e 20 74 68 65 79 20 61 72 65 20 69 6e 20 62 6c  n they are in bl
1ff70 6f 63 6b 69 6e 67 20 6d 6f 64 65 2e 20 28 53 53  ocking mode. (SS
1ff80 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
1ff90 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
1ffa0 2a 2a 2a 0a 0a 34 2f 32 33 2f 39 37 20 28 6e 65  ***..4/23/97 (ne
1ffb0 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
1ffc0 20 74 68 65 20 22 62 69 6e 61 72 79 22 20 63 6f   the "binary" co
1ffd0 6d 6d 61 6e 64 20 66 6f 72 20 6d 61 6e 69 70 75  mmand for manipu
1ffe0 6c 61 74 69 6e 67 0a 62 69 6e 61 72 79 20 73 74  lating.binary st
1fff0 72 69 6e 67 73 2e 20 41 6c 73 6f 2c 20 63 68 61  rings. Also, cha
20000 6e 67 65 64 20 74 68 65 20 22 70 75 74 73 22 2c  nged the "puts",
20010 20 22 67 65 74 73 22 2c 20 61 6e 64 20 22 72 65   "gets", and "re
20020 61 64 22 20 63 6f 6d 6d 61 6e 64 73 0a 74 6f 20  ad" commands.to 
20030 70 72 65 73 65 72 76 65 20 65 6d 62 65 64 64 65  preserve embedde
20040 64 20 6e 75 6c 6c 73 2e 20 20 28 53 53 29 0a 0a  d nulls.  (SS)..
20050 34 2f 32 33 2f 39 37 20 28 6e 65 77 20 66 65 61  4/23/97 (new fea
20060 74 75 72 65 29 20 41 64 64 65 64 20 74 63 6c 5f  ture) Added tcl_
20070 70 6c 61 74 66 6f 72 6d 28 62 79 74 65 4f 72 64  platform(byteOrd
20080 65 72 29 20 65 6c 65 6d 65 6e 74 20 74 6f 20 74  er) element to t
20090 68 65 0a 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 20  he.tcl_platform 
200a0 61 72 72 61 79 20 74 6f 20 69 64 65 6e 74 69 66  array to identif
200b0 79 20 74 68 65 20 6e 61 74 69 76 65 20 62 79 74  y the native byt
200c0 65 20 6f 72 64 65 72 20 66 6f 72 20 74 68 65 20  e order for the 
200d0 63 75 72 72 65 6e 74 0a 68 6f 73 74 2e 20 28 53  current.host. (S
200e0 53 29 0a 0a 34 2f 32 33 2f 39 37 20 28 62 75 67  S)..4/23/97 (bug
200f0 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
20100 69 6e 20 64 61 74 65 20 70 61 72 73 69 6e 67 20  in date parsing 
20110 61 72 6f 75 6e 64 20 79 65 61 72 20 62 6f 75 6e  around year boun
20120 64 61 72 69 65 73 2e 20 28 53 53 29 0a 0a 34 2f  daries. (SS)..4/
20130 32 34 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  24/97 (bug fix) 
20140 49 6e 20 74 68 65 20 70 72 6f 63 65 73 73 20 6f  In the process o
20150 66 20 63 6f 70 79 69 6e 67 20 61 20 66 69 6c 65  f copying a file
20160 20 6f 77 6e 65 64 20 62 79 20 61 6e 6f 74 68 65   owned by anothe
20170 72 20 75 73 65 72 2c 0a 54 63 6c 20 77 61 73 20  r user,.Tcl was 
20180 63 68 61 6e 67 69 6e 67 20 74 68 65 20 6f 77 6e  changing the own
20190 65 72 20 6f 66 20 74 68 65 20 63 6f 70 79 20 62  er of the copy b
201a0 61 63 6b 20 74 6f 20 74 68 65 20 6f 77 6e 65 72  ack to the owner
201b0 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c   of the original
201c0 0a 66 69 6c 65 2c 20 74 68 65 72 65 66 6f 72 65  .file, therefore
201d0 20 63 61 75 73 69 6e 67 20 66 75 72 74 68 65 72   causing further
201e0 20 66 69 6c 65 20 6f 70 65 72 61 74 69 6f 6e 73   file operations
201f0 20 74 6f 20 66 61 69 6c 20 62 65 63 61 75 73 65   to fail because
20200 20 74 68 65 20 63 75 72 72 65 6e 74 0a 75 73 65   the current.use
20210 72 20 64 69 64 6e 27 74 20 6f 77 6e 20 74 68 65  r didn't own the
20220 20 63 6f 70 79 20 61 6e 79 6d 6f 72 65 2e 20 20   copy anymore.  
20230 54 68 65 20 6f 77 6e 65 72 20 6f 66 20 74 68 65  The owner of the
20240 20 63 6f 70 79 20 69 73 20 6e 6f 77 20 6c 65 66   copy is now lef
20250 74 20 61 73 20 74 68 65 0a 63 75 72 72 65 6e 74  t as the.current
20260 20 75 73 65 72 2e 20 28 43 43 53 29 0a 0a 34 2f   user. (CCS)..4/
20270 32 34 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  24/97 (feature c
20280 68 61 6e 67 65 29 20 55 6e 64 65 72 20 57 69 6e  hange) Under Win
20290 64 6f 77 73 2c 20 64 6f 6e 27 74 20 61 75 74 6f  dows, don't auto
202a0 6d 61 74 69 63 61 6c 6c 79 20 75 70 70 65 72 63  matically upperc
202b0 61 73 65 20 74 68 65 0a 65 6e 76 69 72 6f 6e 6d  ase the.environm
202c0 65 6e 74 20 76 61 72 69 61 62 6c 65 20 22 77 69  ent variable "wi
202d0 6e 64 69 72 22 20 2d 2d 20 69 74 27 73 20 73 75  ndir" -- it's su
202e0 70 70 6f 73 65 64 20 74 6f 20 62 65 20 6c 6f 77  pposed to be low
202f0 65 72 20 63 61 73 65 2e 20 20 28 43 43 53 29 0a  er case.  (CCS).
20300 0a 34 2f 32 39 2f 39 37 20 28 6e 65 77 20 66 65  .4/29/97 (new fe
20310 61 74 75 72 65 29 20 41 64 64 65 64 20 6e 61 6d  ature) Added nam
20320 65 73 70 61 63 65 20 73 75 70 70 6f 72 74 20 62  espace support b
20330 61 73 65 64 20 6f 6e 20 61 20 6e 61 6d 65 73 70  ased on a namesp
20340 61 63 65 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ace.implementati
20350 6f 6e 20 62 79 20 4d 69 63 68 61 65 6c 20 4a 2e  on by Michael J.
20360 20 4d 63 4c 65 6e 6e 61 6e 20 6f 66 20 4c 75 63   McLennan of Luc
20370 65 6e 74 20 54 65 63 68 6e 6f 6c 6f 67 69 65 73  ent Technologies
20380 2e 20 41 20 6e 61 6d 65 73 70 61 63 65 0a 65 6e  . A namespace.en
20390 63 61 70 73 75 6c 61 74 65 73 20 61 20 63 6f 6c  capsulates a col
203a0 6c 65 63 74 69 6f 6e 20 6f 66 20 63 6f 6d 6d 61  lection of comma
203b0 6e 64 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65  nds and variable
203c0 73 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74  s to ensure that
203d0 20 74 68 65 79 0a 77 6f 6e 27 74 20 69 6e 74 65   they.won't inte
203e0 72 66 65 72 65 20 74 68 65 20 63 6f 6d 6d 61 6e  rfere the comman
203f0 64 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73  ds and variables
20400 20 6f 66 20 6f 74 68 65 72 20 6e 61 6d 65 73 70   of other namesp
20410 61 63 65 73 2e 20 54 68 65 20 67 6c 6f 62 61 6c  aces. The global
20420 0a 6e 61 6d 65 73 70 61 63 65 20 68 6f 6c 64 73  .namespace holds
20430 20 61 6c 6c 20 67 6c 6f 62 61 6c 20 76 61 72 69   all global vari
20440 61 62 6c 65 73 20 61 6e 64 20 63 6f 6d 6d 61 6e  ables and comman
20450 64 73 2e 20 41 64 64 69 74 69 6f 6e 61 6c 20 6e  ds. Additional n
20460 61 6d 65 73 70 61 63 65 73 20 61 72 65 0a 63 72  amespaces are.cr
20470 65 61 74 65 64 20 77 69 74 68 20 74 68 65 20 6e  eated with the n
20480 65 77 20 6e 61 6d 65 73 70 61 63 65 20 63 6f 6d  ew namespace com
20490 6d 61 6e 64 2e 20 54 68 65 20 6e 65 77 20 76 61  mand. The new va
204a0 72 69 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 20 6c  riable command l
204b0 65 74 73 20 79 6f 75 0a 63 72 65 61 74 65 20 54  ets you.create T
204c0 63 6c 20 76 61 72 69 61 62 6c 65 73 20 69 6e 73  cl variables ins
204d0 69 64 65 20 61 20 6e 61 6d 65 73 70 61 63 65 2e  ide a namespace.
204e0 20 54 68 65 20 6e 61 6d 65 73 20 6f 66 20 54 63   The names of Tc
204f0 6c 20 76 61 72 69 61 62 6c 65 73 20 61 6e 64 0a  l variables and.
20500 63 6f 6d 6d 61 6e 64 73 20 6d 61 79 20 6e 6f 77  commands may now
20510 20 62 65 20 71 75 61 6c 69 66 69 65 64 20 62 79   be qualified by
20520 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65   the name of the
20530 20 6e 61 6d 65 73 70 61 63 65 20 63 6f 6e 74 61   namespace conta
20540 69 6e 69 6e 67 20 74 68 65 6d 2e 0a 54 68 65 20  ining them..The 
20550 6b 65 79 20 6e 61 6d 65 73 70 61 63 65 2d 72 65  key namespace-re
20560 6c 61 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61  lated commands a
20570 72 65 20 73 75 6d 6d 61 72 69 7a 65 64 20 62 65  re summarized be
20580 6c 6f 77 3a 0a 20 20 20 20 2d 20 6e 61 6d 65 73  low:.    - names
20590 70 61 63 65 20 3f 65 76 61 6c 3f 20 6e 61 6d 65  pace ?eval? name
205a0 20 61 72 67 20 3f 61 72 67 2e 2e 2e 3f 0a 20 20   arg ?arg...?.  
205b0 20 20 20 20 20 20 20 55 73 65 64 20 74 6f 20 64         Used to d
205c0 65 66 69 6e 65 20 74 68 65 20 63 6f 6d 6d 61 6e  efine the comman
205d0 64 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73  ds and variables
205e0 20 69 6e 20 61 20 6e 61 6d 65 73 70 61 63 65 2e   in a namespace.
205f0 0a 20 20 20 20 20 20 20 20 20 4f 70 74 69 6f 6e  .         Option
20600 61 6c 6c 79 20 63 72 65 61 74 65 73 20 74 68 65  ally creates the
20610 20 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20   namespace..    
20620 2d 20 6e 61 6d 65 73 70 61 63 65 20 65 78 70 6f  - namespace expo
20630 72 74 20 3f 2d 63 6c 65 61 72 3f 20 3f 70 61 74  rt ?-clear? ?pat
20640 74 65 72 6e 20 70 61 74 74 65 72 6e 2e 2e 2e 3f  tern pattern...?
20650 0a 20 20 20 20 20 20 20 20 20 53 70 65 63 69 66  .         Specif
20660 69 65 73 20 77 68 69 63 68 20 63 6f 6d 6d 61 6e  ies which comman
20670 64 73 20 61 72 65 20 65 78 70 6f 72 74 65 64 20  ds are exported 
20680 66 72 6f 6d 20 61 20 6e 61 6d 65 73 70 61 63 65  from a namespace
20690 2e 20 54 68 65 73 65 0a 20 20 20 20 20 20 20 20  . These.        
206a0 20 61 72 65 20 74 68 65 20 6f 6e 65 73 20 74 68   are the ones th
206b0 61 74 20 63 61 6e 20 62 65 20 69 6d 70 6f 72 74  at can be import
206c0 65 64 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 20  ed into another 
206d0 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 2d  namespace..    -
206e0 20 6e 61 6d 65 73 70 61 63 65 20 69 6d 70 6f 72   namespace impor
206f0 74 20 3f 2d 66 6f 72 63 65 3f 20 3f 70 61 74 74  t ?-force? ?patt
20700 65 72 6e 20 70 61 74 74 65 72 6e 2e 2e 2e 3f 0a  ern pattern...?.
20710 20 20 20 20 20 20 20 20 20 4d 61 6b 65 73 20 74           Makes t
20720 68 65 20 73 70 65 63 69 66 69 65 64 20 63 6f 6d  he specified com
20730 6d 61 6e 64 73 20 61 63 63 65 73 73 69 62 6c 65  mands accessible
20740 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20   in the current 
20750 6e 61 6d 65 73 70 61 63 65 2e 0a 20 20 20 20 2d  namespace..    -
20760 20 6e 61 6d 65 73 70 61 63 65 20 63 75 72 72 65   namespace curre
20770 6e 74 0a 20 20 20 20 20 20 20 20 20 52 65 74 75  nt.         Retu
20780 72 6e 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20  rns the name of 
20790 74 68 65 20 63 75 72 72 65 6e 74 20 6e 61 6d 65  the current name
207a0 73 70 61 63 65 2e 0a 20 20 20 20 2d 20 76 61 72  space..    - var
207b0 69 61 62 6c 65 20 6e 61 6d 65 20 3f 76 61 6c 75  iable name ?valu
207c0 65 3f 20 3f 6e 61 6d 65 20 3f 76 61 6c 75 65 3f  e? ?name ?value?
207d0 2e 2e 2e 3f 0a 20 20 20 20 20 20 20 20 20 43 72  ...?.         Cr
207e0 65 61 74 65 73 20 6f 6e 65 20 6f 72 20 6d 6f 72  eates one or mor
207f0 65 20 6e 61 6d 65 73 70 61 63 65 20 76 61 72 69  e namespace vari
20800 61 62 6c 65 73 2e 20 28 42 54 4c 29 0a 0a 35 2f  ables. (BTL)..5/
20810 31 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 55  1/97 (bug fix) U
20820 6e 64 65 72 20 57 69 6e 64 6f 77 73 2c 20 66 69  nder Windows, fi
20830 6c 65 20 74 69 6d 65 73 20 77 65 72 65 20 72 65  le times were re
20840 70 6f 72 74 65 64 20 69 6e 20 47 4d 54 2e 20 20  ported in GMT.  
20850 53 68 6f 75 6c 64 20 62 65 0a 72 65 70 6f 72 74  Should be.report
20860 65 64 20 69 6e 20 6c 6f 63 61 6c 20 74 69 6d 65  ed in local time
20870 2e 20 28 43 43 53 29 0a 0a 35 2f 32 2f 39 37 20  . (CCS)..5/2/97 
20880 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
20890 20 43 68 61 6e 67 65 64 20 74 68 65 20 6e 61 6d   Changed the nam
208a0 65 20 6f 66 20 74 68 65 20 74 77 6f 20 54 63 6c  e of the two Tcl
208b0 20 76 61 72 69 61 62 6c 65 73 20 75 73 65 64 20   variables used 
208c0 66 6f 72 0a 74 72 61 63 69 6e 67 20 62 79 74 65  for.tracing byte
208d0 63 6f 64 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  code compilation
208e0 20 61 6e 64 20 65 78 65 63 75 74 69 6f 6e 20 74   and execution t
208f0 6f 20 74 63 6c 5f 74 72 61 63 65 43 6f 6d 70 69  o tcl_traceCompi
20900 6c 65 20 61 6e 64 0a 74 63 6c 5f 74 72 61 63 65  le and.tcl_trace
20910 45 78 65 63 20 72 65 73 70 65 63 74 69 76 65 6c  Exec respectivel
20920 79 2e 20 54 68 65 73 65 20 76 61 72 69 61 62 6c  y. These variabl
20930 65 73 20 61 72 65 20 6e 6f 77 20 64 6f 63 75 6d  es are now docum
20940 65 6e 74 65 64 20 69 6e 20 74 68 65 0a 74 63 6c  ented in the.tcl
20950 76 61 72 73 20 6d 61 6e 20 70 61 67 65 2e 20 28  vars man page. (
20960 42 4c 29 0a 0a 35 2f 35 2f 39 37 20 28 6e 65 77  BL)..5/5/97 (new
20970 20 66 65 61 74 75 72 65 29 20 53 75 70 70 6f 72   feature) Suppor
20980 74 20 22 65 6e 64 22 20 61 73 20 74 68 65 20 69  t "end" as the i
20990 6e 64 65 78 20 66 6f 72 20 22 6c 73 6f 72 74 20  ndex for "lsort 
209a0 2d 69 6e 64 65 78 22 2e 20 28 42 57 29 0a 0a 35  -index". (BW)..5
209b0 2f 35 2f 39 37 20 28 62 75 67 20 66 69 78 65 73  /5/97 (bug fixes
209c0 29 20 43 6c 65 61 6e 65 64 20 75 70 20 74 68 65  ) Cleaned up the
209d0 20 77 61 79 20 74 68 65 20 68 74 74 70 20 70 61   way the http pa
209e0 63 6b 61 67 65 20 72 65 73 65 74 73 20 63 6f 6e  ckage resets con
209f0 6e 65 63 74 69 6f 6e 73 20 28 42 57 29 0a 0a 35  nections (BW)..5
20a00 2f 38 2f 39 37 20 28 66 65 61 74 75 72 65 20 63  /8/97 (feature c
20a10 68 61 6e 67 65 29 20 4e 65 77 6c 79 20 63 72 65  hange) Newly cre
20a20 61 74 65 64 20 54 63 6c 20 6f 62 6a 65 63 74 73  ated Tcl objects
20a30 20 6e 6f 77 20 68 61 76 65 20 61 20 72 65 66 65   now have a refe
20a40 72 65 6e 63 65 20 63 6f 75 6e 74 0a 6f 66 20 7a  rence count.of z
20a50 65 72 6f 20 69 6e 73 74 65 61 64 20 6f 66 20 6f  ero instead of o
20a60 6e 65 2e 20 54 68 69 73 20 73 69 6d 70 6c 69 66  ne. This simplif
20a70 69 65 73 20 43 20 63 6f 64 65 20 74 68 61 74 20  ies C code that 
20a80 73 74 6f 72 65 73 20 6e 65 77 6c 79 20 63 72 65  stores newly cre
20a90 61 74 65 64 0a 6f 62 6a 65 63 74 73 20 69 6e 20  ated.objects in 
20aa0 54 63 6c 20 76 61 72 69 61 62 6c 65 73 20 6f 72  Tcl variables or
20ab0 20 69 6e 20 64 61 74 61 20 73 74 72 75 63 74 75   in data structu
20ac0 72 65 73 20 73 75 63 68 20 61 73 20 6c 69 73 74  res such as list
20ad0 20 6f 62 6a 65 63 74 73 2e 20 54 68 61 74 20 43   objects. That C
20ae0 0a 63 6f 64 65 20 6d 75 73 74 20 69 6e 63 72 65  .code must incre
20af0 6d 65 6e 74 20 74 68 65 20 6e 65 77 20 6f 62 6a  ment the new obj
20b00 65 63 74 27 73 20 72 65 66 65 72 65 6e 63 65 20  ect's reference 
20b10 63 6f 75 6e 74 20 73 69 6e 63 65 20 74 68 65 20  count since the 
20b20 76 61 72 69 61 62 6c 65 20 6f 72 0a 64 61 74 61  variable or.data
20b30 20 73 74 72 75 63 74 75 72 65 20 77 69 6c 6c 20   structure will 
20b40 63 6f 6e 74 61 69 6e 20 61 20 6c 6f 6e 67 2d 74  contain a long-t
20b50 65 72 6d 20 72 65 66 65 72 65 6e 63 65 20 74 6f  erm reference to
20b60 20 74 68 65 20 6f 62 6a 65 63 74 2e 20 46 6f 72   the object. For
20b70 6d 65 72 6c 79 2c 0a 77 68 65 6e 20 6e 65 77 20  merly,.when new 
20b80 6f 62 6a 65 63 74 73 20 73 74 61 72 74 65 64 20  objects started 
20b90 6f 75 74 20 77 69 74 68 20 72 65 66 65 72 65 6e  out with referen
20ba0 63 65 20 63 6f 75 6e 74 20 6f 6e 65 2c 20 69 74  ce count one, it
20bb0 20 77 61 73 20 6e 65 63 65 73 73 61 72 79 20 74   was necessary t
20bc0 6f 0a 64 65 63 72 65 6d 65 6e 74 20 74 68 65 20  o.decrement the 
20bd0 6e 65 77 20 6f 62 6a 65 63 74 27 73 20 72 65 66  new object's ref
20be0 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 61 66 74  erence count aft
20bf0 65 72 20 74 68 65 20 73 74 6f 72 65 20 74 6f 20  er the store to 
20c00 6d 61 6b 65 20 73 75 72 65 20 69 74 0a 77 61 73  make sure it.was
20c10 20 6c 65 66 74 20 77 69 74 68 20 74 68 65 20 63   left with the c
20c20 6f 72 72 65 63 74 20 76 61 6c 75 65 3b 20 74 68  orrect value; th
20c30 69 73 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20  is is no longer 
20c40 6e 65 63 65 73 73 61 72 79 2e 20 28 42 4c 29 0a  necessary. (BL).
20c50 0a 35 2f 39 2f 39 37 20 28 6e 65 77 20 66 65 61  .5/9/97 (new fea
20c60 74 75 72 65 29 20 41 64 64 65 64 20 74 68 65 20  ture) Added the 
20c70 54 63 6c 5f 47 65 74 73 4f 62 6a 20 69 6e 74 65  Tcl_GetsObj inte
20c80 72 66 61 63 65 20 74 68 61 74 20 74 61 6b 65 73  rface that takes
20c90 20 61 6e 0a 6f 62 6a 65 63 74 20 72 65 66 65 72   an.object refer
20ca0 65 6e 63 65 20 69 6e 73 74 65 61 64 20 6f 66 20  ence instead of 
20cb0 61 20 64 79 6e 61 6d 69 63 20 73 74 72 69 6e 67  a dynamic string
20cc0 20 28 61 73 20 69 6e 20 54 63 6c 5f 47 65 74 73   (as in Tcl_Gets
20cd0 29 2e 20 28 53 53 29 0a 0a 35 2f 31 32 2f 39 37  ). (SS)..5/12/97
20ce0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41   (new feature) A
20cf0 64 64 65 64 20 54 63 6c 5f 43 72 65 61 74 65 41  dded Tcl_CreateA
20d00 6c 69 61 73 4f 62 6a 20 61 6e 64 20 54 63 6c 5f  liasObj and Tcl_
20d10 47 65 74 41 6c 69 61 73 4f 62 6a 20 43 20 41 50  GetAliasObj C AP
20d20 49 73 0a 74 6f 20 61 6c 6c 6f 77 20 61 6e 20 61  Is.to allow an a
20d30 6c 69 61 73 20 63 6f 6d 6d 61 6e 64 20 74 6f 20  lias command to 
20d40 62 65 20 63 72 65 61 74 65 64 20 77 69 74 68 20  be created with 
20d50 61 20 76 65 63 74 6f 72 20 6f 66 20 54 63 6c 5f  a vector of Tcl_
20d60 4f 62 6a 20 73 74 72 75 63 74 75 72 65 73 0a 61  Obj structures.a
20d70 6e 64 20 74 6f 20 67 65 74 20 74 68 65 20 76 65  nd to get the ve
20d80 63 74 6f 72 20 62 61 63 6b 20 6c 61 74 65 72 2e  ctor back later.
20d90 20 28 4a 4c 29 0a 0a 35 2f 31 32 2f 39 37 20 28   (JL)..5/12/97 (
20da0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
20db0 43 68 61 6e 67 65 64 20 54 63 6c 5f 45 78 70 6f  Changed Tcl_Expo
20dc0 73 65 43 6f 6d 6d 61 6e 64 20 61 6e 64 20 54 63  seCommand and Tc
20dd0 6c 5f 48 69 64 65 43 6f 6d 6d 61 6e 64 20 74 6f  l_HideCommand to
20de0 0a 6c 65 61 76 65 20 61 6e 20 6f 62 6a 65 63 74  .leave an object
20df0 20 72 65 73 75 6c 74 20 69 6e 73 74 65 61 64 20   result instead 
20e00 6f 66 20 61 20 73 74 72 69 6e 67 20 72 65 73 75  of a string resu
20e10 6c 74 2e 20 28 4a 4c 29 0a 0a 35 2f 31 34 2f 39  lt. (JL)..5/14/9
20e20 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
20e30 65 29 20 49 6d 70 72 6f 76 65 64 20 74 68 65 20  e) Improved the 
20e40 68 61 6e 64 6c 69 6e 67 20 6f 66 20 74 68 65 20  handling of the 
20e50 69 6e 74 65 72 70 72 65 74 65 72 20 72 65 73 75  interpreter resu
20e60 6c 74 2e 0a 54 68 69 73 20 69 73 20 73 74 69 6c  lt..This is stil
20e70 6c 20 65 69 74 68 65 72 20 61 6e 20 6f 62 6a 65  l either an obje
20e80 63 74 20 6f 72 20 61 20 73 74 72 69 6e 67 2c 20  ct or a string, 
20e90 62 75 74 20 74 68 65 20 74 77 6f 20 76 61 6c 75  but the two valu
20ea0 65 73 20 61 72 65 20 6e 6f 77 20 6b 65 70 74 0a  es are now kept.
20eb0 63 6f 6e 73 69 73 74 65 6e 74 20 75 6e 6c 65 73  consistent unles
20ec0 73 20 73 6f 6d 65 20 43 20 63 6f 64 65 20 72 65  s some C code re
20ed0 61 64 73 20 6f 72 20 77 72 69 74 65 73 20 69 6e  ads or writes in
20ee0 74 65 72 70 2d 3e 72 65 73 75 6c 74 20 64 69 72  terp->result dir
20ef0 65 63 74 6c 79 2e 20 53 65 65 0a 74 68 65 20 53  ectly. See.the S
20f00 65 74 52 65 73 75 6c 74 20 6d 61 6e 20 70 61 67  etResult man pag
20f10 65 20 66 6f 72 20 64 65 74 61 69 6c 73 2e 20 52  e for details. R
20f20 65 6d 6f 76 65 64 20 74 68 65 20 54 63 6c 5f 52  emoved the Tcl_R
20f30 65 73 65 74 4f 62 6a 52 65 73 75 6c 74 0a 70 72  esetObjResult.pr
20f40 6f 63 65 64 75 72 65 2e 20 28 42 4c 29 0a 2a 2a  ocedure. (BL).**
20f50 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
20f60 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
20f70 20 54 63 6c 20 38 2e 30 61 32 20 2a 2a 2a 0a 0a   Tcl 8.0a2 ***..
20f80 35 2f 31 36 2f 39 37 20 28 6e 65 77 20 66 65 61  5/16/97 (new fea
20f90 74 75 72 65 29 20 41 64 64 65 64 20 22 66 63 6f  ture) Added "fco
20fa0 70 79 22 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 6d  py" command to m
20fb0 6f 76 65 20 64 61 74 61 20 62 65 74 77 65 65 6e  ove data between
20fc0 0a 63 68 61 6e 6e 65 6c 73 2e 20 20 52 65 66 65  .channels.  Refe
20fd0 72 20 74 6f 20 74 68 65 20 6d 61 6e 75 61 6c 20  r to the manual 
20fe0 70 61 67 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e  page for more in
20ff0 66 6f 72 6d 61 74 69 6f 6e 2e 20 20 52 65 6d 6f  formation.  Remo
21000 76 65 64 20 74 68 65 0a 22 75 6e 73 75 70 70 6f  ved the."unsuppo
21010 72 74 65 64 30 22 20 63 6f 6d 6d 61 6e 64 20 73  rted0" command s
21020 69 6e 63 65 20 69 74 20 69 73 20 6f 62 73 6f 6c  ince it is obsol
21030 65 74 65 20 6e 6f 77 2e 20 20 28 53 53 29 0a 0a  ete now.  (SS)..
21040 35 2f 31 36 2f 39 37 20 28 6e 65 77 20 66 65 61  5/16/97 (new fea
21050 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f  ture) Added Tcl_
21060 47 65 74 53 74 72 69 6e 67 52 65 73 75 6c 74 20  GetStringResult 
21070 70 72 6f 63 65 64 75 72 65 20 74 6f 20 61 6c 6c  procedure to all
21080 6f 77 20 70 72 6f 67 72 61 6d 73 0a 74 6f 20 67  ow programs.to g
21090 65 74 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65  et an interprete
210a0 72 27 73 20 72 65 73 75 6c 74 20 61 73 20 61 20  r's result as a 
210b0 73 74 72 69 6e 67 2e 20 49 66 20 74 68 65 20 72  string. If the r
210c0 65 73 75 6c 74 20 77 61 73 20 70 72 65 76 69 6f  esult was previo
210d0 75 73 6c 79 20 73 65 74 0a 74 6f 20 61 6e 20 6f  usly set.to an o
210e0 62 6a 65 63 74 2c 20 74 68 69 73 20 70 72 6f 63  bject, this proc
210f0 65 64 75 72 65 20 77 69 6c 6c 20 63 6f 6e 76 65  edure will conve
21100 72 74 20 74 68 65 20 6f 62 6a 65 63 74 20 74 6f  rt the object to
21110 20 61 20 73 74 72 69 6e 67 2e 20 55 73 65 20 6f   a string. Use o
21120 66 0a 54 63 6c 5f 47 65 74 53 74 72 69 6e 67 52  f.Tcl_GetStringR
21130 65 73 75 6c 74 20 69 73 20 69 6e 74 65 6e 64 65  esult is intende
21140 64 20 74 6f 20 72 65 70 6c 61 63 65 20 64 69 72  d to replace dir
21150 65 63 74 20 61 63 63 65 73 73 20 74 6f 20 69 6e  ect access to in
21160 74 65 72 70 2d 3e 72 65 73 75 6c 74 2c 0a 77 68  terp->result,.wh
21170 69 63 68 20 69 73 20 6e 6f 74 20 73 61 66 65 2e  ich is not safe.
21180 20 28 42 4c 29 0a 0a 35 2f 32 30 2f 39 37 20 28   (BL)..5/20/97 (
21190 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 46 69  new features) Fi
211a0 78 65 64 20 22 66 63 6f 70 79 22 20 74 6f 20 72  xed "fcopy" to r
211b0 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72  eturn the number
211c0 20 6f 66 20 62 79 74 65 73 0a 74 72 61 6e 73 66   of bytes.transf
211d0 65 72 72 65 64 20 69 6e 20 74 68 65 20 62 6c 6f  erred in the blo
211e0 63 6b 69 6e 67 20 63 61 73 65 2e 20 20 55 70 64  cking case.  Upd
211f0 61 74 65 64 20 74 68 65 20 68 74 74 70 20 70 61  ated the http pa
21200 63 6b 61 67 65 20 74 6f 20 75 73 65 0a 66 63 6f  ckage to use.fco
21210 70 79 20 69 6e 73 74 65 61 64 20 6f 66 20 75 6e  py instead of un
21220 73 75 70 70 6f 72 74 65 64 30 2e 20 20 41 64 64  supported0.  Add
21230 65 64 20 2d 74 69 6d 65 6f 75 74 20 61 6e 64 20  ed -timeout and 
21240 2d 68 61 6e 64 6c 65 72 20 6f 70 74 69 6f 6e 73  -handler options
21250 20 74 6f 0a 68 74 74 70 5f 67 65 74 2e 20 20 68   to.http_get.  h
21260 74 74 70 5f 67 65 74 20 69 73 20 6e 6f 77 20 62  ttp_get is now b
21270 6c 6f 63 6b 69 6e 67 20 62 79 20 64 65 66 61 75  locking by defau
21280 6c 74 2e 20 20 49 74 20 69 73 20 6f 6e 6c 79 20  lt.  It is only 
21290 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 0a 69 66 20  non-blocking.if 
212a0 79 6f 75 20 73 75 70 70 6c 79 20 61 20 2d 63 6f  you supply a -co
212b0 6d 6d 61 6e 64 20 61 72 67 75 6d 65 6e 74 2e 20  mmand argument. 
212c0 28 42 57 29 0a 0a 35 2f 32 32 2f 39 37 20 28 62  (BW)..5/22/97 (b
212d0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 73 65  ug fix) Fixed se
212e0 76 65 72 61 6c 20 62 75 67 73 20 69 6e 20 74 68  veral bugs in th
212f0 65 20 22 6c 73 6f 72 74 22 20 63 6f 6d 6d 61 6e  e "lsort" comman
21300 64 20 68 61 76 69 6e 67 20 74 6f 20 64 6f 0a 77  d having to do.w
21310 69 74 68 20 74 68 65 20 2d 64 69 63 74 69 6f 6e  ith the -diction
21320 61 72 79 20 6f 70 74 69 6f 6e 20 61 6e 64 20 74  ary option and t
21330 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 6e  he presence of n
21340 75 6d 62 65 72 73 20 65 6d 62 65 64 64 65 64 20  umbers embedded 
21350 69 6e 20 74 68 65 0a 73 74 72 69 6e 67 73 2e 20  in the.strings. 
21360 20 28 4a 4f 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d   (JO)..---------
21370 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65  -------- Release
21380 64 20 38 2e 30 62 31 2c 20 35 2f 32 37 2f 39 37  d 8.0b1, 5/27/97
21390 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d   ---------------
213a0 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 36 2f 32 2f 39 37  --------..6/2/97
213b0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
213c0 20 62 75 67 20 69 6e 20 73 74 61 72 74 75 70 20   bug in startup 
213d0 63 6f 64 65 20 74 68 61 74 20 63 61 75 73 65 64  code that caused
213e0 20 61 20 70 72 6f 62 6c 65 6d 20 69 6e 0a 66 69   a problem in.fi
213f0 6e 64 69 6e 67 20 74 68 65 20 6c 69 62 72 61 72  nding the librar
21400 79 20 66 69 6c 65 73 20 77 68 65 6e 20 74 68 65  y files when the
21410 79 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 20  y are installed 
21420 69 6e 20 61 20 64 69 72 65 63 74 6f 72 79 0a 63  in a directory.c
21430 6f 6e 74 61 69 6e 69 6e 67 20 61 20 73 70 61 63  ontaining a spac
21440 65 20 69 6e 20 74 68 65 20 6e 61 6d 65 2e 20 28  e in the name. (
21450 53 53 29 0a 0a 36 2f 32 2f 39 37 20 28 62 75 67  SS)..6/2/97 (bug
21460 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
21470 69 6e 20 55 6e 69 78 20 6e 6f 74 69 66 69 65 72  in Unix notifier
21480 20 77 68 65 72 65 20 74 68 65 20 73 65 6c 65 63   where the selec
21490 74 20 6d 61 73 6b 20 77 61 73 0a 6e 6f 74 20 62  t mask was.not b
214a0 65 69 6e 67 20 63 6c 65 61 72 65 64 20 75 6e 64  eing cleared und
214b0 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74  er some circumst
214c0 61 6e 63 65 73 2e 20 28 53 53 29 0a 0a 36 2f 34  ances. (SS)..6/4
214d0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
214e0 78 65 64 20 62 75 67 20 74 68 61 74 20 70 72 65  xed bug that pre
214f0 76 65 6e 74 65 64 20 63 72 65 61 74 69 6f 6e 20  vented creation 
21500 6f 66 20 54 6b 20 77 69 64 67 65 74 73 20 69 6e  of Tk widgets in
21510 0a 6e 61 6d 65 73 70 61 63 65 73 2e 20 54 63 6c  .namespaces. Tcl
21520 5f 43 72 65 61 74 65 4f 62 6a 43 6f 6d 6d 61 6e  _CreateObjComman
21530 64 20 61 6e 64 20 54 63 6c 5f 43 72 65 61 74 65  d and Tcl_Create
21540 43 6f 6d 6d 61 6e 64 20 6e 6f 77 20 61 6c 77 61  Command now alwa
21550 79 73 20 63 72 65 61 74 65 0a 63 6f 6d 6d 61 6e  ys create.comman
21560 64 73 20 69 6e 20 74 68 65 20 67 6c 6f 62 61 6c  ds in the global
21570 20 6e 61 6d 65 73 70 61 63 65 20 75 6e 6c 65 73   namespace unles
21580 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6e 61  s the command na
21590 6d 65 73 20 61 72 65 20 71 75 61 6c 69 66 69 65  mes are qualifie
215a0 64 2e 20 54 63 6c 0a 70 72 6f 63 65 64 75 72 65  d. Tcl.procedure
215b0 73 20 63 6f 6e 74 69 6e 75 65 20 74 6f 20 62 65  s continue to be
215c0 20 63 72 65 61 74 65 64 20 69 6e 20 74 68 65 20   created in the 
215d0 63 75 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63  current namespac
215e0 65 20 62 79 20 64 65 66 61 75 6c 74 2e 20 28 42  e by default. (B
215f0 4c 29 0a 0a 36 2f 36 2f 39 37 20 28 6e 65 77 20  L)..6/6/97 (new 
21600 66 65 61 74 75 72 65 73 29 20 41 64 64 65 64 20  features) Added 
21610 6e 65 77 20 6e 61 6d 65 73 70 61 63 65 20 41 50  new namespace AP
21620 49 20 70 72 6f 63 65 64 75 72 65 73 0a 54 63 6c  I procedures.Tcl
21630 5f 41 70 70 65 6e 64 45 78 70 6f 72 74 4c 69 73  _AppendExportLis
21640 74 20 61 6e 64 20 54 63 6c 5f 45 78 70 6f 72 74  t and Tcl_Export
21650 20 74 6f 20 61 6c 6c 6f 77 20 43 20 63 6f 64 65   to allow C code
21660 20 74 6f 20 67 65 74 20 61 6e 64 20 73 65 74 20   to get and set 
21670 61 0a 6e 61 6d 65 73 70 61 63 65 27 73 20 65 78  a.namespace's ex
21680 70 6f 72 74 20 6c 69 73 74 2e 20 28 42 4c 29 0a  port list. (BL).
21690 0a 36 2f 31 31 2f 39 37 20 28 6e 65 77 20 66 65  .6/11/97 (new fe
216a0 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63 6c  ature) Added Tcl
216b0 5f 43 6f 6e 63 61 74 4f 62 6a 2e 20 54 68 69 73  _ConcatObj. This
216c0 20 6f 62 6a 65 63 74 2d 62 61 73 65 64 20 72 6f   object-based ro
216d0 75 74 69 6e 65 0a 70 61 72 61 6c 6c 65 6c 73 20  utine.parallels 
216e0 74 68 65 20 73 74 72 69 6e 67 2d 62 61 73 65 64  the string-based
216f0 20 72 6f 75 74 69 6e 65 20 54 63 6c 5f 43 6f 6e   routine Tcl_Con
21700 63 61 74 2e 20 28 53 52 50 29 0a 0a 36 2f 31 31  cat. (SRP)..6/11
21710 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65  /97 (new feature
21720 29 20 41 64 64 65 64 20 54 63 6c 5f 53 65 74 4f  ) Added Tcl_SetO
21730 62 6a 45 72 72 6f 72 43 6f 64 65 2e 20 54 68 69  bjErrorCode. Thi
21740 73 20 6f 62 6a 65 63 74 2d 62 61 73 65 64 0a 72  s object-based.r
21750 6f 75 74 69 6e 65 73 20 70 61 72 61 6c 6c 65 6c  outines parallel
21760 73 20 74 68 65 20 73 74 72 69 6e 67 2d 62 61 73  s the string-bas
21770 65 64 20 72 6f 75 74 69 6e 65 20 54 63 6c 5f 53  ed routine Tcl_S
21780 65 74 45 72 72 6f 72 43 6f 64 65 2e 20 28 53 52  etErrorCode. (SR
21790 50 29 0a 0a 36 2f 31 32 2f 39 37 20 28 62 75 67  P)..6/12/97 (bug
217a0 20 66 69 78 29 20 46 69 78 20 74 68 65 20 22 75   fix) Fix the "u
217b0 6e 6b 6e 6f 77 6e 22 20 70 72 6f 63 65 64 75 72  nknown" procedur
217c0 65 20 73 6f 20 74 68 61 74 20 77 69 73 68 20 75  e so that wish u
217d0 6e 64 65 72 20 57 69 6e 64 6f 77 73 0a 77 69 6c  nder Windows.wil
217e0 6c 20 65 78 65 63 20 61 6e 20 65 78 74 65 72 6e  l exec an extern
217f0 61 6c 20 70 72 6f 67 72 61 6d 2c 20 69 6e 73 74  al program, inst
21800 65 61 64 20 6f 66 20 61 6c 77 61 79 73 20 63 6f  ead of always co
21810 6d 70 6c 61 69 6e 69 6e 67 20 22 63 6f 6e 73 6f  mplaining "conso
21820 6c 65 31 20 6e 6f 74 0a 6f 70 65 6e 65 64 20 66  le1 not.opened f
21830 6f 72 20 77 72 69 74 69 6e 67 22 2e 20 28 43 43  or writing". (CC
21840 53 29 0a 0a 36 2f 31 32 2f 39 37 20 28 62 75 67  S)..6/12/97 (bug
21850 20 66 69 78 29 20 46 69 78 65 64 20 63 6f 72 65   fix) Fixed core
21860 20 64 75 6d 70 20 65 78 70 65 72 69 65 6e 63 65   dump experience
21870 64 20 62 79 20 74 68 65 20 66 6f 6c 6c 6f 77 69  d by the followi
21880 6e 67 20 73 69 6d 70 6c 65 0a 73 63 72 69 70 74  ng simple.script
21890 3a 0a 09 69 6e 74 65 72 70 20 63 72 65 61 74 65  :..interp create
218a0 20 78 0a 09 78 20 61 6c 69 61 73 20 65 78 65 63   x..x alias exec
218b0 20 65 78 65 63 0a 09 69 6e 74 65 72 70 20 64 65   exec..interp de
218c0 6c 65 74 65 20 78 0a 54 68 69 73 20 70 61 6e 69  lete x.This pani
218d0 63 20 77 61 73 20 63 61 75 73 65 64 20 62 79 20  c was caused by 
218e0 6e 6f 74 20 69 6e 73 74 61 6c 6c 69 6e 67 20 74  not installing t
218f0 68 65 20 6e 65 77 20 43 6d 64 44 65 6c 65 74 65  he new CmdDelete
21900 50 72 6f 63 20 77 68 65 6e 20 65 78 65 63 0a 67  Proc when exec.g
21910 6f 74 20 72 65 64 65 66 69 6e 65 64 20 62 79 20  ot redefined by 
21920 74 68 65 20 61 6c 69 61 73 20 63 72 65 61 74 69  the alias creati
21930 6f 6e 20 73 74 65 70 2e 20 52 65 70 6f 72 74 65  on step. Reporte
21940 64 20 62 79 20 4c 69 6e 64 73 61 79 20 4d 61 72  d by Lindsay Mar
21950 73 68 61 6c 20 28 4a 4c 29 0a 0a 36 2f 31 33 2f  shal (JL)..6/13/
21960 39 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 73  97 (new features
21970 29 20 54 63 6c 20 6f 62 6a 65 63 74 73 20 6e 65  ) Tcl objects ne
21980 77 6c 79 20 63 72 65 61 74 65 64 20 62 79 20 54  wly created by T
21990 63 6c 5f 4e 65 77 4f 62 6a 20 6e 6f 77 20 68 61  cl_NewObj now ha
219a0 76 65 20 61 0a 73 74 72 69 6e 67 20 72 65 70 72  ve a.string repr
219b0 65 73 65 6e 74 61 74 69 6f 6e 20 74 68 61 74 20  esentation that 
219c0 70 6f 69 6e 74 73 20 74 6f 20 61 20 73 68 61 72  points to a shar
219d0 65 64 20 68 65 61 70 20 73 74 72 69 6e 67 20 6f  ed heap string o
219e0 66 20 6c 65 6e 67 74 68 20 31 2e 20 28 54 68 65  f length 1. (The
219f0 79 0a 75 73 65 64 20 74 6f 20 68 61 76 65 20 4e  y.used to have N
21a00 55 4c 4c 20 62 79 74 65 73 20 61 6e 64 20 74 79  ULL bytes and ty
21a10 70 65 50 74 72 20 66 69 65 6c 64 73 2e 20 54 68  pePtr fields. Th
21a20 69 73 20 77 61 73 20 74 72 65 61 74 65 64 20 61  is was treated a
21a30 73 20 61 20 73 70 65 63 69 61 6c 0a 63 61 73 65  s a special.case
21a40 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 6e 20   to indicate an 
21a50 65 6d 70 74 79 20 73 74 72 69 6e 67 2c 20 62 75  empty string, bu
21a60 74 20 6d 61 64 65 20 74 79 70 65 20 6d 61 6e 61  t made type mana
21a70 67 65 72 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69  ger implementati
21a80 6f 6e 73 0a 63 6f 6d 70 6c 65 78 20 61 6e 64 20  ons.complex and 
21a90 65 72 72 6f 72 20 70 72 6f 6e 65 2e 29 20 54 68  error prone.) Th
21aa0 65 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65 20  e new procedure 
21ab0 54 63 6c 5f 49 6e 76 61 6c 69 64 61 74 65 53 74  Tcl_InvalidateSt
21ac0 72 69 6e 67 52 65 70 20 69 73 20 75 73 65 64 0a  ringRep is used.
21ad0 74 6f 20 6d 61 72 6b 20 61 6e 20 6f 62 6a 65 63  to mark an objec
21ae0 74 27 73 20 73 74 72 69 6e 67 20 72 65 70 72 65  t's string repre
21af0 73 65 6e 74 61 74 69 6f 6e 20 69 6e 76 61 6c 69  sentation invali
21b00 64 20 61 6e 64 20 74 6f 20 66 72 65 65 20 61 6e  d and to free an
21b10 79 20 73 74 6f 72 61 67 65 0a 61 73 73 6f 63 69  y storage.associ
21b20 61 74 65 64 20 77 69 74 68 20 74 68 65 20 6f 6c  ated with the ol
21b30 64 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65  d string represe
21b40 6e 74 61 74 69 6f 6e 2e 20 28 42 4c 29 0a 2a 2a  ntation. (BL).**
21b50 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f  * POTENTIAL INCO
21b60 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74 68  MPATIBILITY with
21b70 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74 20   Tcl 8.0b1, but 
21b80 6e 6f 74 20 77 69 74 68 20 54 63 6c 37 2e 36 20  not with Tcl7.6 
21b90 2a 2a 2a 0a 0a 36 2f 31 36 2f 39 37 20 28 62 75  ***..6/16/97 (bu
21ba0 67 20 66 69 78 29 20 54 63 6c 5f 53 63 61 6e 43  g fix) Tcl_ScanC
21bb0 6f 75 6e 74 65 64 45 6c 65 6d 65 6e 74 20 63 6f  ountedElement co
21bc0 75 6c 64 20 6c 65 61 76 65 20 62 72 61 63 65 73  uld leave braces
21bd0 20 75 6e 6d 61 74 63 68 65 64 0a 69 66 20 74 68   unmatched.if th
21be0 65 20 73 74 72 69 6e 67 20 65 6e 64 65 64 20 77  e string ended w
21bf0 69 74 68 20 61 20 62 61 63 6b 73 6c 61 73 68 2e  ith a backslash.
21c00 20 28 4a 4f 29 0a 0a 36 2f 31 37 2f 39 37 20 28   (JO)..6/17/97 (
21c10 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 63  bug fix) Fixed c
21c20 68 61 6e 6e 65 6c 20 65 76 65 6e 74 20 62 75 67  hannel event bug
21c30 20 77 68 65 72 65 20 72 65 61 64 61 62 6c 65 20   where readable 
21c40 65 76 65 6e 74 73 20 77 6f 75 6c 64 20 62 65 0a  events would be.
21c50 6c 6f 73 74 20 64 75 72 69 6e 67 20 72 65 63 75  lost during recu
21c60 72 73 69 76 65 20 65 76 65 6e 74 73 20 6c 6f 6f  rsive events loo
21c70 70 73 20 69 66 20 74 68 65 20 69 6e 70 75 74 20  ps if the input 
21c80 62 75 66 66 65 72 73 20 63 6f 6e 74 61 69 6e 65  buffers containe
21c90 64 0a 64 61 74 61 2e 20 28 53 53 29 0a 0a 36 2f  d.data. (SS)..6/
21ca0 31 37 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  17/97 (bug fix) 
21cb0 46 69 78 65 64 20 62 75 67 20 69 6e 20 57 69 6e  Fixed bug in Win
21cc0 64 6f 77 73 20 73 6f 63 6b 65 74 20 63 6f 64 65  dows socket code
21cd0 20 74 68 61 74 20 64 69 64 6e 27 74 0a 72 65 65   that didn't.ree
21ce0 6e 61 62 6c 65 20 72 65 61 64 20 65 76 65 6e 74  nable read event
21cf0 73 20 69 6e 20 74 68 65 20 63 61 73 65 20 77 68  s in the case wh
21d00 65 72 65 20 61 6e 20 65 78 74 65 72 6e 61 6c 20  ere an external 
21d10 65 6e 74 69 74 79 20 69 73 20 61 6c 73 6f 0a 72  entity is also.r
21d20 65 61 64 69 6e 67 20 66 72 6f 6d 20 74 68 65 20  eading from the 
21d30 73 6f 63 6b 65 74 2e 20 28 53 53 29 0a 0a 36 2f  socket. (SS)..6/
21d40 31 38 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  18/97 (bug fix) 
21d50 43 68 61 6e 67 65 64 20 69 6e 69 74 69 61 6c 20  Changed initial 
21d60 73 65 74 74 69 6e 67 20 6f 66 20 74 68 65 20 6e  setting of the n
21d70 6f 74 69 66 69 65 72 20 73 65 72 76 69 63 65 20  otifier service 
21d80 6d 6f 64 65 0a 74 6f 20 54 43 4c 5f 53 45 52 56  mode.to TCL_SERV
21d90 49 43 45 5f 4e 4f 4e 45 20 74 6f 20 61 76 6f 69  ICE_NONE to avoi
21da0 64 20 75 6e 65 78 70 65 63 74 65 64 20 65 76 65  d unexpected eve
21db0 6e 74 20 68 61 6e 64 6c 69 6e 67 20 64 75 72 69  nt handling duri
21dc0 6e 67 0a 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  ng.initializatio
21dd0 6e 2e 20 28 53 53 29 0a 0a 36 2f 31 39 2f 39 37  n. (SS)..6/19/97
21de0 20 28 62 75 67 20 66 69 78 2f 66 65 61 74 75 72   (bug fix/featur
21df0 65 20 63 68 61 6e 67 65 29 20 54 68 65 20 63 6f  e change) The co
21e00 6d 6d 61 6e 64 20 63 61 6c 6c 62 61 63 6b 20 74  mmand callback t
21e10 6f 20 66 63 6f 70 79 20 69 73 20 6e 6f 77 0a 63  o fcopy is now.c
21e20 61 6c 6c 65 64 20 69 6e 20 63 61 73 65 20 6f 66  alled in case of
21e30 20 65 72 72 6f 72 73 20 64 75 72 69 6e 67 20 74   errors during t
21e40 68 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f  he background co
21e50 70 79 2e 20 20 54 68 69 73 20 61 64 64 73 20 61  py.  This adds a
21e60 20 73 65 63 6f 6e 64 2c 0a 6f 70 74 69 6f 6e 61   second,.optiona
21e70 6c 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 74 68  l argument to th
21e80 65 20 63 61 6c 6c 62 61 63 6b 20 74 68 61 74 20  e callback that 
21e90 69 73 20 74 68 65 20 65 72 72 6f 72 20 73 74 72  is the error str
21ea0 69 6e 67 2e 20 20 54 68 65 20 63 61 6c 6c 62 61  ing.  The callba
21eb0 63 6b 0a 69 6e 20 63 61 73 65 20 6f 66 20 65 72  ck.in case of er
21ec0 72 6f 72 73 20 69 73 20 72 65 71 75 69 72 65 64  rors is required
21ed0 20 66 6f 72 20 70 72 6f 70 65 72 20 63 6c 65 61   for proper clea
21ee0 6e 75 70 20 62 79 20 74 68 65 20 75 73 65 72 20  nup by the user 
21ef0 6f 66 20 66 63 6f 70 79 2e 20 28 42 57 29 0a 2a  of fcopy. (BW).*
21f00 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
21f10 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
21f20 68 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74  h Tcl 8.0b1, but
21f30 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e   not with Tcl 7.
21f40 36 20 2a 2a 2a 0a 0a 36 2f 31 39 2f 39 37 20 28  6 ***..6/19/97 (
21f50 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 61  bug fix) Fixed a
21f60 20 70 61 6e 69 63 20 64 75 65 20 74 6f 20 74 68   panic due to th
21f70 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6f 75 72  e following four
21f80 20 6c 69 6e 65 20 73 63 72 69 70 74 3a 0a 09 69   line script:..i
21f90 6e 74 65 72 70 20 63 72 65 61 74 65 20 78 0a 09  nterp create x..
21fa0 78 20 61 6c 69 61 73 20 66 6f 6f 20 62 61 72 0a  x alias foo bar.
21fb0 09 78 20 65 76 61 6c 20 72 65 6e 61 6d 65 20 66  .x eval rename f
21fc0 6f 6f 20 62 6c 6f 74 7a 0a 09 78 20 61 6c 69 61  oo blotz..x alia
21fd0 73 20 66 6f 6f 20 7b 7d 0a 54 68 65 20 70 72 6f  s foo {}.The pro
21fe0 62 6c 65 6d 20 77 61 73 20 74 68 61 74 20 74 68  blem was that th
21ff0 65 20 69 6e 74 65 72 70 20 63 6f 64 65 20 77 61  e interp code wa
22000 73 20 6e 6f 74 20 75 73 69 6e 67 20 74 68 65 20  s not using the 
22010 61 63 74 75 61 6c 20 63 75 72 72 65 6e 74 20 6e  actual current n
22020 61 6d 65 0a 6f 66 20 74 68 65 20 63 6f 6d 6d 61  ame.of the comma
22030 6e 64 20 74 6f 20 62 65 20 64 65 6c 65 74 65 64  nd to be deleted
22040 20 61 73 20 61 20 72 65 73 75 6c 74 20 6f 66 20   as a result of 
22050 75 6e 2d 61 6c 69 61 73 69 6e 67 20 66 6f 6f 2e  un-aliasing foo.
22060 20 28 4a 4c 29 0a 0a 36 2f 31 39 2f 39 37 20 28   (JL)..6/19/97 (
22070 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
22080 50 61 73 73 20 69 6e 74 65 72 70 20 64 6f 77 6e  Pass interp down
22090 20 74 6f 20 74 68 65 20 43 68 61 6e 6e 65 6c 4f   to the ChannelO
220a0 70 74 69 6f 6e 20 61 6e 64 0a 64 72 69 76 65 72  ption and.driver
220b0 20 73 70 65 63 69 66 69 63 20 63 61 6c 6c 73 20   specific calls 
220c0 73 6f 20 73 79 73 74 65 6d 20 65 72 72 6f 72 73  so system errors
220d0 20 63 61 6e 20 62 65 20 64 69 66 66 65 72 65 6e   can be differen
220e0 74 69 61 74 65 64 20 66 72 6f 6d 20 73 79 6e 74  tiated from synt
220f0 61 78 0a 6f 6e 65 73 2e 20 43 68 61 6e 67 65 64  ax.ones. Changed
22100 20 54 63 6c 5f 44 72 69 76 65 72 47 65 74 4f 70   Tcl_DriverGetOp
22110 74 69 6f 6e 50 72 6f 63 20 74 79 70 65 2e 20 41  tionProc type. A
22120 66 66 65 63 74 73 20 54 63 6c 5f 47 65 74 43 68  ffects Tcl_GetCh
22130 61 6e 6e 65 6c 4f 70 74 69 6f 6e 2c 0a 54 63 70  annelOption,.Tcp
22140 47 65 74 4f 70 74 69 6f 6e 50 72 6f 63 2c 20 20  GetOptionProc,  
22150 54 74 79 47 65 74 4f 70 74 69 6f 6e 50 72 6f 63  TtyGetOptionProc
22160 2c 20 65 74 63 2e 20 28 44 4c 29 0a 2a 2a 2a 20  , etc. (DL).*** 
22170 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
22180 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 36  ATIBILITY ***..6
22190 2f 31 39 2f 39 37 20 28 6e 65 77 20 66 65 61 74  /19/97 (new feat
221a0 75 72 65 29 20 41 64 64 65 64 20 54 63 6c 5f 42  ure) Added Tcl_B
221b0 61 64 43 68 61 6e 6e 65 6c 4f 70 74 69 6f 6e 20  adChannelOption 
221c0 66 6f 72 20 75 73 65 20 62 79 20 62 79 20 64 72  for use by by dr
221d0 69 76 65 72 0a 73 70 65 63 69 66 69 63 20 6f 70  iver.specific op
221e0 74 69 6f 6e 20 70 72 6f 63 65 64 75 72 65 73 20  tion procedures 
221f0 28 53 65 74 20 61 6e 64 20 47 65 74 29 20 74 6f  (Set and Get) to
22200 20 72 65 74 75 72 6e 20 61 20 63 6f 6d 70 6c 65   return a comple
22210 74 65 20 61 6e 64 0a 6d 65 61 6e 69 6e 67 66 75  te and.meaningfu
22220 6c 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 2e  l error message.
22230 20 28 44 4c 29 0a 0a 36 2f 31 39 2f 39 37 20 28   (DL)..6/19/97 (
22240 62 75 67 20 66 69 78 65 73 29 20 49 66 20 61 20  bug fixes) If a 
22250 73 79 73 74 65 6d 20 63 61 6c 6c 20 65 72 72 6f  system call erro
22260 72 20 6f 63 63 75 72 73 20 77 68 69 6c 65 20 64  r occurs while d
22270 6f 69 6e 67 20 61 6e 0a 66 63 6f 6e 66 69 67 75  oing an.fconfigu
22280 72 65 20 6f 6e 20 74 63 70 20 6f 72 20 74 74 79  re on tcp or tty
22290 2f 63 6f 6d 20 63 68 61 6e 6e 65 6c 3a 20 72 65  /com channel: re
222a0 74 75 72 6e 20 74 68 65 20 61 70 70 72 6f 70 72  turn the appropr
222b0 69 61 74 65 20 65 72 72 6f 72 0a 6d 65 73 73 61  iate error.messa
222c0 67 65 20 28 69 6e 73 74 65 61 64 20 6f 66 20 74  ge (instead of t
222d0 68 65 20 73 79 6e 74 61 78 20 65 72 72 6f 72 20  he syntax error 
222e0 6f 6e 65 20 6f 72 20 6e 6f 6e 65 29 2e 20 28 46  one or none). (F
222f0 69 78 65 64 20 66 6f 72 20 55 6e 69 78 20 61 6e  ixed for Unix an
22300 64 0a 6d 6f 73 74 20 6f 66 20 74 68 65 20 57 69  d.most of the Wi
22310 6e 20 61 6e 64 20 4d 61 63 20 64 72 69 76 65 72  n and Mac driver
22320 73 29 2e 20 28 44 4c 29 0a 0a 36 2f 32 30 2f 39  s). (DL)..6/20/9
22330 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
22340 65 29 20 45 76 61 6c 20 69 73 20 6e 6f 20 6c 6f  e) Eval is no lo
22350 6e 67 65 72 20 61 73 73 75 6d 65 64 20 61 73 20  nger assumed as 
22360 74 68 65 20 73 75 62 63 6f 6d 6d 61 6e 64 20 6e  the subcommand n
22370 61 6d 65 0a 69 6e 20 6e 61 6d 65 73 70 61 63 65  ame.in namespace
22380 20 63 6f 6d 6d 61 6e 64 73 3a 20 79 6f 75 20 6d   commands: you m
22390 75 73 74 20 6e 6f 77 20 77 72 69 74 65 20 22 6e  ust now write "n
223a0 61 6d 65 73 70 61 63 65 20 65 76 61 6c 20 6e 73  amespace eval ns
223b0 4e 61 6d 65 20 7b 2e 2e 2e 7d 22 2e 0a 41 62 62  Name {...}"..Abb
223c0 72 65 76 69 61 74 69 6f 6e 73 20 6f 66 20 6e 61  reviations of na
223d0 6d 65 73 70 61 63 65 20 73 75 62 63 6f 6d 6d 61  mespace subcomma
223e0 6e 64 20 6e 61 6d 65 73 20 61 72 65 20 6e 6f 77  nd names are now
223f0 20 61 6c 6c 6f 77 65 64 2e 20 28 42 4c 29 0a 2a   allowed. (BL).*
22400 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
22410 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
22420 68 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74  h Tcl 8.0b1, but
22430 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 37 2e 36   not with Tcl7.6
22440 20 2a 2a 2a 0a 0a 36 2f 32 30 2f 39 37 20 28 66   ***..6/20/97 (f
22450 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
22460 68 61 6e 67 65 64 20 74 68 65 20 65 72 72 6f 72  hanged the error
22470 49 6e 66 6f 20 74 72 61 63 65 62 61 63 6b 20 6d  Info traceback m
22480 65 73 73 61 67 65 20 66 6f 72 0a 63 6f 6d 70 69  essage for.compi
22490 6c 61 74 69 6f 6e 20 65 72 72 6f 72 73 20 66 72  lation errors fr
224a0 6f 6d 20 22 69 6e 76 6f 6b 65 64 20 66 72 6f 6d  om "invoked from
224b0 20 77 69 74 68 69 6e 22 20 74 6f 20 22 77 68 69   within" to "whi
224c0 6c 65 20 63 6f 6d 70 69 6c 69 6e 67 22 2e 20 28  le compiling". (
224d0 42 4c 29 0a 0a 36 2f 32 30 2f 39 37 20 28 62 75  BL)..6/20/97 (bu
224e0 67 20 66 69 78 65 73 29 20 46 69 78 65 64 20 76  g fixes) Fixed v
224f0 61 72 69 6f 75 73 20 63 6f 6d 70 69 6c 61 74 69  arious compilati
22500 6f 6e 2d 72 65 6c 61 74 65 64 20 62 75 67 73 3a  on-related bugs:
22510 0a 20 20 20 20 2d 20 22 55 70 64 61 74 65 53 74  .    - "UpdateSt
22520 72 69 6e 67 4f 66 43 6d 64 4e 61 6d 65 20 73 68  ringOfCmdName sh
22530 6f 75 6c 64 20 6e 65 76 65 72 20 62 65 20 63 61  ould never be ca
22540 6c 6c 65 64 22 20 61 6e 64 0a 20 20 20 20 20 20  lled" and.      
22550 22 55 70 64 61 74 65 53 74 72 69 6e 67 4f 66 42  "UpdateStringOfB
22560 79 74 65 43 6f 64 65 20 73 68 6f 75 6c 64 20 6e  yteCode should n
22570 65 76 65 72 20 62 65 20 63 61 6c 6c 65 64 22 20  ever be called" 
22580 70 61 6e 69 63 73 2e 0a 20 20 20 20 2d 20 53 65  panics..    - Se
22590 67 66 61 75 6c 74 20 69 6e 20 54 63 6c 4f 62 6a  gfault in TclObj
225a0 49 6e 74 65 72 70 50 72 6f 63 20 67 65 74 74 69  InterpProc getti
225b0 6e 67 20 70 72 6f 63 65 64 75 72 65 20 6e 61 6d  ng procedure nam
225c0 65 20 61 66 74 65 72 20 65 76 61 6c 75 61 74 69  e after evaluati
225d0 6f 6e 0a 20 20 20 20 20 20 73 74 61 63 6b 20 69  on.      stack i
225e0 73 20 72 65 61 6c 6c 6f 63 61 74 65 64 20 28 67  s reallocated (g
225f0 72 6f 77 6e 29 2e 0a 20 20 20 20 2d 20 43 6f 75  rown)..    - Cou
22600 6c 64 20 6e 6f 74 20 75 73 65 20 22 3a 22 20 61  ld not use ":" a
22610 74 20 65 6e 64 20 6f 66 20 76 61 72 69 61 62 6c  t end of variabl
22620 65 20 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 6e 61  e and command na
22630 6d 65 73 2e 0a 20 20 20 20 2d 20 42 61 64 20 63  mes..    - Bad c
22640 6f 64 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f  ode generated fo
22650 72 20 77 68 69 6c 65 20 61 6e 64 20 66 6f 72 20  r while and for 
22660 63 6f 6d 6d 61 6e 64 73 20 77 69 74 68 20 74 65  commands with te
22670 73 74 20 65 78 70 72 65 73 73 69 6f 6e 73 0a 20  st expressions. 
22680 20 20 20 20 20 65 6e 63 6c 6f 73 65 64 20 69 6e       enclosed in
22690 20 71 75 6f 74 65 73 3a 20 65 2e 67 2e 2c 20 22   quotes: e.g., "
226a0 73 65 74 20 69 20 30 3b 20 77 68 69 6c 65 20 22  set i 0; while "
226b0 24 69 20 3e 20 35 22 20 7b 7d 22 2e 0a 20 20 20  $i > 5" {}"..   
226c0 20 2d 20 43 6f 6d 6d 61 6e 64 20 74 72 61 63 65   - Command trace
226d0 20 70 72 6f 63 65 64 75 72 65 73 20 77 6f 75 6c   procedures woul
226e0 64 20 63 72 61 73 68 20 69 66 20 74 68 65 79 20  d crash if they 
226f0 64 69 64 20 61 20 54 63 6c 5f 45 76 61 6c 4f 62  did a Tcl_EvalOb
22700 6a 20 74 68 61 74 0a 20 20 20 20 20 20 72 65 61  j that.      rea
22710 6c 6c 6f 63 61 74 65 64 20 74 68 65 20 65 76 61  llocated the eva
22720 6c 75 61 74 69 6f 6e 20 73 74 61 63 6b 2e 0a 20  luation stack.. 
22730 20 20 20 2d 20 42 72 65 61 6b 20 61 6e 64 20 63     - Break and c
22740 6f 6e 74 69 6e 75 65 20 63 6f 6d 6d 61 6e 64 73  ontinue commands
22750 20 64 69 64 20 6e 6f 74 20 72 65 73 65 74 20 74   did not reset t
22760 68 65 20 69 6e 74 65 72 70 72 65 74 65 72 20 72  he interpreter r
22770 65 73 75 6c 74 2e 0a 20 20 20 20 2d 20 54 68 65  esult..    - The
22780 20 54 63 6c 5f 45 78 70 72 58 58 58 20 72 6f 75   Tcl_ExprXXX rou
22790 74 69 6e 65 73 2c 20 62 6f 74 68 20 73 74 72 69  tines, both stri
227a0 6e 67 2d 20 6f 72 20 6f 62 6a 65 63 74 2d 62 61  ng- or object-ba
227b0 73 65 64 2c 20 61 6c 77 61 79 73 0a 20 20 20 20  sed, always.    
227c0 20 20 6d 6f 64 69 66 69 65 64 20 74 68 65 20 69    modified the i
227d0 6e 74 65 72 70 72 65 74 65 72 20 72 65 73 75 6c  nterpreter resul
227e0 74 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20  t even if there 
227f0 77 61 73 20 6e 6f 20 65 72 72 6f 72 2e 0a 20 20  was no error..  
22800 20 20 2d 20 54 68 65 20 61 72 67 75 6d 65 6e 74    - The argument
22810 20 70 61 72 73 69 6e 67 20 70 72 6f 63 65 64 75   parsing procedu
22820 72 65 20 75 73 65 64 20 62 79 20 73 65 76 65 72  re used by sever
22830 61 6c 20 63 6f 6d 70 69 6c 65 20 70 72 6f 63 65  al compile proce
22840 64 75 72 65 73 0a 20 20 20 20 20 20 61 6c 77 61  dures.      alwa
22850 79 73 20 74 72 65 61 74 65 64 20 22 5d 22 20 61  ys treated "]" a
22860 73 20 65 6e 64 20 6f 66 20 61 20 63 6f 6d 6d 61  s end of a comma
22870 6e 64 3a 20 65 2e 67 2e 2c 20 22 73 65 74 20 61  nd: e.g., "set a
22880 20 5d 22 20 77 6f 75 6c 64 20 66 61 69 6c 2e 0a   ]" would fail..
22890 20 20 20 20 2d 20 43 68 61 6e 67 65 64 20 65 72      - Changed er
228a0 72 6f 72 49 6e 66 6f 20 74 72 61 63 65 62 61 63  rorInfo tracebac
228b0 6b 20 6d 65 73 73 61 67 65 20 66 6f 72 20 63 6f  k message for co
228c0 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72 73  mpilation errors
228d0 20 66 72 6f 6d 20 0a 20 20 20 20 20 20 22 69 6e   from .      "in
228e0 76 6f 6b 65 64 20 66 72 6f 6d 20 77 69 74 68 69  voked from withi
228f0 6e 22 20 74 6f 20 22 77 68 69 6c 65 20 63 6f 6d  n" to "while com
22900 70 69 6c 69 6e 67 22 2e 0a 20 20 20 20 2d 20 50  piling"..    - P
22910 72 6f 62 6c 65 6d 20 69 6e 69 74 69 61 6c 69 7a  roblem initializ
22920 69 6e 67 20 54 63 6c 20 6f 62 6a 65 63 74 20 6d  ing Tcl object m
22930 61 6e 61 67 65 72 73 20 64 75 72 69 6e 67 20 69  anagers during i
22940 6e 74 65 72 70 72 65 74 65 72 20 63 72 65 61 74  nterpreter creat
22950 69 6f 6e 2e 0a 20 20 20 20 2d 20 41 64 64 65 64  ion..    - Added
22960 20 63 68 65 63 6b 20 61 6e 64 20 65 72 72 6f 72   check and error
22970 20 6d 65 73 73 61 67 65 20 69 66 20 66 6f 72 6d   message if form
22980 61 6c 20 70 61 72 61 6d 65 74 65 72 20 74 6f 20  al parameter to 
22990 61 20 70 72 6f 63 65 64 75 72 65 20 69 73 0a 20  a procedure is. 
229a0 20 20 20 20 20 61 6e 20 61 72 72 61 79 20 65 6c       an array el
229b0 65 6d 65 6e 74 2e 20 28 42 4c 29 0a 0a 36 2f 32  ement. (BL)..6/2
229c0 33 2f 39 37 20 28 6e 65 77 20 66 65 61 74 75 72  3/97 (new featur
229d0 65 29 20 41 64 64 65 64 20 22 72 65 67 69 73 74  e) Added "regist
229e0 72 79 22 20 70 61 63 6b 61 67 65 20 74 6f 20 61  ry" package to a
229f0 6c 6c 6f 77 20 6d 61 6e 69 70 75 6c 61 74 69 6f  llow manipulatio
22a00 6e 0a 6f 66 20 74 68 65 20 57 69 6e 64 6f 77 73  n.of the Windows
22a10 20 73 79 73 74 65 6d 20 72 65 67 69 73 74 72 79   system registry
22a20 2e 20 20 53 65 65 20 6d 61 6e 75 61 6c 20 65 6e  .  See manual en
22a30 74 72 79 20 66 6f 72 20 64 65 74 61 69 6c 73 2e  try for details.
22a40 20 28 53 53 29 0a 0a 36 2f 32 34 2f 39 37 20 28   (SS)..6/24/97 (
22a50 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
22a60 43 6f 6e 76 65 72 74 65 64 20 68 74 74 70 20 74  Converted http t
22a70 6f 20 61 20 70 61 63 6b 61 67 65 20 61 6e 64 20  o a package and 
22a80 61 64 64 65 64 20 74 68 65 0a 68 74 74 70 31 2e  added the.http1.
22a90 30 20 73 75 62 64 69 72 65 63 74 6f 72 79 20 6f  0 subdirectory o
22aa0 66 20 74 68 65 20 54 63 6c 20 73 63 72 69 70 74  f the Tcl script
22ab0 20 6c 69 62 72 61 72 79 2e 20 20 54 68 69 73 20   library.  This 
22ac0 6d 65 61 6e 73 20 79 6f 75 20 68 61 76 65 0a 74  means you have.t
22ad0 6f 20 64 6f 20 61 20 22 70 61 63 6b 61 67 65 20  o do a "package 
22ae0 72 65 71 75 69 72 65 20 68 74 74 70 22 20 74 6f  require http" to
22af0 20 75 73 65 20 74 68 69 73 2c 20 61 73 20 61 64   use this, as ad
22b00 76 65 72 74 69 73 65 64 20 69 6e 20 74 68 65 20  vertised in the 
22b10 6d 61 6e 20 70 61 67 65 2e 20 28 42 57 29 0a 2a  man page. (BW).*
22b20 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
22b30 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
22b40 68 20 54 63 6c 20 38 2e 30 62 31 2c 20 62 75 74  h Tcl 8.0b1, but
22b50 20 6e 6f 74 20 77 69 74 68 20 54 63 6c 20 37 2e   not with Tcl 7.
22b60 36 20 2a 2a 2a 0a 0a 36 2f 32 34 2f 39 37 20 28  6 ***..6/24/97 (
22b70 62 75 67 20 66 69 78 29 20 45 6e 73 75 72 65 20  bug fix) Ensure 
22b80 74 68 61 74 20 54 63 6c 5f 53 65 74 2f 47 65 74  that Tcl_Set/Get
22b90 56 61 72 20 43 20 41 50 49 73 2c 20 77 68 65 6e  Var C APIs, when
22ba0 20 63 61 6c 6c 65 64 20 77 69 74 68 6f 75 74 0a   called without.
22bb0 54 43 4c 5f 4c 45 41 56 45 5f 45 52 52 5f 4d 53  TCL_LEAVE_ERR_MS
22bc0 47 2c 20 64 6f 6e 27 74 20 74 6f 75 63 68 20 74  G, don't touch t
22bd0 68 65 20 69 6e 74 65 72 70 20 72 65 73 75 6c 74  he interp result
22be0 2e 20 28 44 4c 29 0a 0a 36 2f 32 36 2f 39 37 20  . (DL)..6/26/97 
22bf0 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
22c00 20 43 68 61 6e 67 65 64 20 6e 61 6d 65 20 6f 66   Changed name of
22c10 20 54 63 6c 5f 45 78 70 72 53 74 72 69 6e 67 4f   Tcl_ExprStringO
22c20 62 6a 20 74 6f 0a 54 63 6c 5f 45 78 70 72 4f 62  bj to.Tcl_ExprOb
22c30 6a 2e 20 28 42 4c 29 0a 2a 2a 2a 20 50 4f 54 45  j. (BL).*** POTE
22c40 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
22c50 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20 38  ILITY with Tcl 8
22c60 2e 30 62 31 2c 20 62 75 74 20 6e 6f 74 20 77 69  .0b1, but not wi
22c70 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a  th Tcl 7.6 ***..
22c80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22c90 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 30 62 32  - Released 8.0b2
22ca0 2c 20 36 2f 33 30 2f 39 37 20 2d 2d 2d 2d 2d 2d  , 6/30/97 ------
22cb0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
22cc0 2d 0a 0a 37 2f 31 2f 39 37 20 28 6e 65 77 20 66  -..7/1/97 (new f
22cd0 65 61 74 75 72 65 29 20 54 43 4c 5f 42 55 49 4c  eature) TCL_BUIL
22ce0 44 5f 53 48 41 52 45 44 20 66 6c 61 67 20 73 65  D_SHARED flag se
22cf0 74 20 69 6e 20 74 63 6c 43 6f 6e 66 69 67 2e 73  t in tclConfig.s
22d00 68 0a 77 68 65 6e 20 54 63 6c 20 68 61 73 20 62  h.when Tcl has b
22d10 65 65 6e 20 62 75 69 6c 74 20 77 69 74 68 20 2d  een built with -
22d20 2d 65 6e 61 62 6c 65 2d 73 68 61 72 65 64 2e 20  -enable-shared. 
22d30 41 20 6e 65 77 20 74 63 6c 4c 69 62 4f 62 6a 73  A new tclLibObjs
22d40 0a 6d 61 6b 65 20 74 61 72 67 65 74 2c 20 65 63  .make target, ec
22d50 68 6f 69 6e 67 20 74 68 65 20 6c 69 73 74 20 6f  hoing the list o
22d60 66 20 74 68 65 20 2e 6f 27 73 20 6e 65 65 64 65  f the .o's neede
22d70 64 20 74 6f 20 62 75 69 6c 64 20 61 20 74 63 6c  d to build a tcl
22d80 0a 6c 69 62 72 61 72 79 2c 20 69 73 20 6e 6f 77  .library, is now
22d90 20 70 72 6f 76 69 64 65 64 2e 20 28 44 4c 29 0a   provided. (DL).
22da0 0a 37 2f 31 2f 39 37 20 28 66 65 61 74 75 72 65  .7/1/97 (feature
22db0 20 63 68 61 6e 67 65 29 20 63 6f 6d 70 61 74 2f   change) compat/
22dc0 67 65 74 63 77 64 2e 63 20 72 65 6d 6f 76 65 64  getcwd.c removed
22dd0 20 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68 65   and changed the
22de0 0a 6f 6e 6c 79 20 70 6c 61 63 65 20 77 68 65 72  .only place wher
22df0 65 20 67 65 74 63 77 64 20 69 73 20 75 73 65 64  e getcwd is used
22e00 20 73 6f 20 61 20 6e 65 77 20 55 53 45 47 45 54   so a new USEGET
22e10 57 44 20 66 6c 61 67 20 73 65 6c 65 63 74 73 0a  WD flag selects.
22e20 74 68 65 20 75 73 65 20 6f 66 20 74 68 65 20 72  the use of the r
22e30 65 70 6c 61 63 65 6d 65 6e 74 20 22 67 65 74 77  eplacement "getw
22e40 64 22 2e 20 41 64 64 69 6e 67 20 74 68 69 73 20  d". Adding this 
22e50 66 6c 61 67 20 69 73 20 72 65 63 6f 6d 6d 65 6e  flag is recommen
22e60 64 65 64 0a 66 6f 72 20 53 75 6e 4f 53 20 34 20  ded.for SunOS 4 
22e70 28 62 65 63 61 75 73 65 20 67 65 74 63 77 64 20  (because getcwd 
22e80 6f 6e 20 53 75 6e 4f 53 20 34 20 75 73 65 73 20  on SunOS 4 uses 
22e90 61 20 70 69 70 65 20 74 6f 20 70 77 64 28 31 29  a pipe to pwd(1)
22ea0 21 29 2e 20 28 44 4c 29 0a 0a 37 2f 37 2f 39 37  !). (DL)..7/7/97
22eb0 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65   (feature change
22ec0 29 20 54 68 65 20 73 70 6c 69 74 20 63 6f 6d 6d  ) The split comm
22ed0 61 6e 64 20 6e 6f 77 20 73 75 70 70 6f 72 74 73  and now supports
22ee0 20 62 69 6e 61 72 79 20 64 61 74 61 20 28 69 2e   binary data (i.
22ef0 65 2e 2c 0a 6e 75 6c 6c 20 63 68 61 72 61 63 74  e.,.null charact
22f00 65 72 73 20 69 6e 20 73 74 72 69 6e 67 73 29 2e  ers in strings).
22f10 20 28 42 4c 29 0a 0a 37 2f 37 2f 39 37 20 28 62   (BL)..7/7/97 (b
22f20 75 67 20 66 69 78 29 20 73 74 72 69 6e 67 20 66  ug fix) string f
22f30 69 72 73 74 20 72 65 74 75 72 6e 65 64 20 74 68  irst returned th
22f40 65 20 77 72 6f 6e 67 20 72 65 73 75 6c 74 20 69  e wrong result i
22f50 66 20 74 68 65 20 66 69 72 73 74 0a 61 72 67 75  f the first.argu
22f60 6d 65 6e 74 20 73 74 72 69 6e 67 20 77 61 73 20  ment string was 
22f70 65 6d 70 74 79 2e 20 28 42 4c 29 0a 0a 37 2f 38  empty. (BL)..7/8
22f80 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
22f90 78 65 64 20 63 6f 72 65 20 64 75 6d 70 20 69 6e  xed core dump in
22fa0 20 66 63 6f 70 79 20 74 68 61 74 20 63 6f 75 6c   fcopy that coul
22fb0 64 20 6f 63 63 75 72 20 77 68 65 6e 20 61 20 63  d occur when a c
22fc0 6f 6d 6d 61 6e 64 0a 63 61 6c 6c 62 61 63 6b 20  ommand.callback 
22fd0 77 61 73 20 73 75 70 70 6c 69 65 64 20 61 6e 64  was supplied and
22fe0 20 61 6e 20 65 72 72 6f 72 20 6f 72 20 65 6f 66   an error or eof
22ff0 20 63 6f 6e 64 69 74 69 6f 6e 20 63 61 75 73 65   condition cause
23000 64 20 6e 6f 20 62 61 63 6b 67 72 6f 75 6e 64 0a  d no background.
23010 61 63 74 69 76 69 74 79 2e 20 20 41 20 72 65 66  activity.  A ref
23020 63 6f 75 6e 74 20 62 75 67 20 74 72 69 67 67 65  count bug trigge
23030 72 65 64 20 61 20 70 61 6e 69 63 20 69 6e 20 54  red a panic in T
23040 63 6c 5f 4c 69 73 74 4f 62 6a 41 70 70 65 6e 64  cl_ListObjAppend
23050 45 6c 65 6d 65 6e 74 2e 20 28 42 57 29 0a 0a 37  Element. (BW)..7
23060 2f 38 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /8/97 (bug fix) 
23070 52 65 6c 61 78 65 64 20 74 68 65 20 70 61 74 74  Relaxed the patt
23080 65 72 6e 20 6d 61 74 63 68 69 6e 67 20 6f 6e 20  ern matching on 
23090 68 74 74 70 5f 67 65 74 20 73 6f 20 79 6f 75 20  http_get so you 
230a0 64 6f 20 6e 6f 74 0a 6e 65 65 64 20 61 20 74 72  do not.need a tr
230b0 61 69 6c 69 6e 67 20 70 61 74 68 20 63 6f 6d 70  ailing path comp
230c0 6f 6e 65 6e 74 2e 20 20 59 6f 75 20 63 61 6e 20  onent.  You can 
230d0 6e 6f 77 20 67 65 74 20 61 77 61 79 20 77 69 74  now get away wit
230e0 68 20 6a 75 73 74 0a 68 74 74 70 5f 67 65 74 20  h just.http_get 
230f0 77 77 77 2e 73 63 72 69 70 74 69 63 73 2e 63 6f  www.scriptics.co
23100 6d 09 09 09 09 09 28 42 57 29 0a 0a 37 2f 39 2f  m.....(BW)..7/9/
23110 39 37 20 28 62 75 67 20 66 69 78 29 20 43 72 65  97 (bug fix) Cre
23120 61 74 69 6e 67 20 61 6e 6f 6e 79 6d 6f 75 73 20  ating anonymous 
23130 69 6e 74 65 72 70 72 65 74 65 72 73 20 6e 6f 20  interpreters no 
23140 6c 6f 6e 67 65 72 20 73 6d 61 73 68 65 73 20 65  longer smashes e
23150 78 69 73 74 69 6e 67 0a 63 6f 6d 6d 61 6e 64 73  xisting.commands
23160 20 77 69 74 68 20 6e 61 6d 65 73 20 73 69 6d 69   with names simi
23170 6c 61 72 20 74 6f 20 74 68 65 20 67 65 6e 65 72  lar to the gener
23180 61 74 65 64 20 6e 61 6d 65 2e 20 50 72 65 76 69  ated name. Previ
23190 6f 75 73 6c 79 20 63 72 65 61 74 69 6e 67 20 61  ously creating a
231a0 6e 0a 61 6e 6f 6e 79 6d 6f 75 73 20 69 6e 74 65  n.anonymous inte
231b0 72 70 72 65 74 65 72 20 63 6f 75 6c 64 20 73 6d  rpreter could sm
231c0 61 73 68 20 61 6e 20 65 78 69 73 74 69 6e 67 20  ash an existing 
231d0 63 6f 6d 6d 61 6e 64 2c 20 6e 6f 77 20 69 74 20  command, now it 
231e0 73 6b 69 70 73 20 75 6e 74 69 6c 0a 69 74 20 66  skips until.it f
231f0 69 6e 64 73 20 61 20 63 6f 6d 6d 61 6e 64 20 6e  inds a command n
23200 61 6d 65 20 74 68 61 74 20 69 73 6e 27 74 20 62  ame that isn't b
23210 65 69 6e 67 20 75 73 65 64 2e 20 28 4a 4c 29 0a  eing used. (JL).
23220 0a 37 2f 39 2f 39 37 20 28 66 65 61 74 75 72 65  .7/9/97 (feature
23230 20 63 68 61 6e 67 65 29 20 52 65 6d 6f 76 65 64   change) Removed
23240 20 74 68 65 20 70 6f 6c 69 63 79 20 6d 61 6e 61   the policy mana
23250 67 65 6d 65 6e 74 20 6d 65 63 68 61 6e 69 73 6d  gement mechanism
23260 20 66 72 6f 6d 20 74 68 65 0a 53 61 66 65 20 42   from the.Safe B
23270 61 73 65 3b 20 6c 65 66 74 20 74 68 65 20 61 6c  ase; left the al
23280 69 61 73 65 73 20 74 6f 20 73 6f 75 72 63 65 20  iases to source 
23290 61 6e 64 20 6c 6f 61 64 20 6d 6f 64 75 6c 65 73  and load modules
232a0 2c 20 61 6e 64 20 74 6f 20 64 6f 20 61 20 6c 69  , and to do a li
232b0 6d 69 74 65 64 0a 66 6f 72 6d 20 6f 66 20 74 68  mited.form of th
232c0 65 20 22 66 69 6c 65 22 20 63 6f 6d 6d 61 6e 64  e "file" command
232d0 2e 20 53 65 65 20 65 6e 74 72 79 20 6f 66 20 31  . See entry of 1
232e0 31 2f 31 35 2f 39 36 2e 20 28 4a 4c 29 0a 0a 37  1/15/96. (JL)..7
232f0 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 65 73  /9/97 (bug fixes
23300 29 20 46 69 78 65 64 20 76 61 72 69 6f 75 73 20  ) Fixed various 
23310 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61  compilation-rela
23320 74 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20  ted bugs:.    - 
23330 4c 69 6e 65 20 6e 75 6d 62 65 72 73 20 69 6e 20  Line numbers in 
23340 65 72 72 6f 72 49 6e 66 6f 20 6e 6f 77 20 61 72  errorInfo now ar
23350 65 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68  e the same as th
23360 6f 73 65 20 69 6e 20 54 63 6c 37 2e 36 20 75 6e  ose in Tcl7.6 un
23370 6c 65 73 73 0a 74 68 65 72 65 20 61 72 65 20 63  less.there are c
23380 6f 6d 70 69 6c 61 74 69 6f 6e 20 65 72 72 6f 72  ompilation error
23390 73 2e 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 65  s. Compilation e
233a0 72 72 6f 72 20 6d 65 73 73 61 67 65 73 20 6e 6f  rror messages no
233b0 77 20 69 6e 63 6c 75 64 65 20 74 68 65 0a 65 6e  w include the.en
233c0 74 69 72 65 20 63 6f 6d 6d 61 6e 64 20 69 6e 20  tire command in 
233d0 65 72 72 6f 72 2e 0a 20 20 20 20 2d 20 54 72 61  error..    - Tra
233e0 69 6c 69 6e 67 20 3a 3a 73 20 61 66 74 65 72 20  iling ::s after 
233f0 6e 61 6d 65 73 70 61 63 65 20 6e 61 6d 65 73 20  namespace names 
23400 77 65 72 65 6e 27 74 20 62 65 69 6e 67 20 69 67  weren't being ig
23410 6e 6f 72 65 64 2e 0a 20 20 20 20 2d 20 43 6f 75  nored..    - Cou
23420 6c 64 20 6e 6f 74 20 72 65 66 65 72 20 74 6f 20  ld not refer to 
23430 61 6e 20 6e 61 6d 65 73 70 61 63 65 20 76 61 72  an namespace var
23440 69 61 62 6c 65 20 77 69 74 68 20 61 6e 20 65 6d  iable with an em
23450 70 74 79 20 6e 61 6d 65 20 75 73 69 6e 67 20 61  pty name using a
23460 0a 6e 61 6d 65 20 6f 66 20 74 68 65 20 66 6f 72  .name of the for
23470 6d 20 22 6e 3a 3a 22 2e 20 28 42 4c 29 0a 0a 37  m "n::". (BL)..7
23480 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /9/97 (bug fix) 
23490 46 69 78 65 64 20 62 75 67 20 69 6e 20 54 63 6c  Fixed bug in Tcl
234a0 5f 45 78 70 6f 72 74 20 74 68 61 74 20 70 72 65  _Export that pre
234b0 76 65 6e 74 65 64 20 79 6f 75 20 66 72 6f 6d 20  vented you from 
234c0 65 78 70 6f 72 74 69 6e 67 0a 66 72 6f 6d 20 6f  exporting.from o
234d0 74 68 65 72 20 74 68 61 6e 20 74 68 65 20 63 75  ther than the cu
234e0 72 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2e  rrent namespace.
234f0 20 28 42 4c 29 0a 0a 37 2f 39 2f 39 37 20 28 62   (BL)..7/9/97 (b
23500 75 67 20 66 69 78 29 20 65 6e 76 2e 74 65 73 74  ug fix) env.test
23510 20 77 61 73 20 72 65 6d 6f 76 69 6e 67 20 65 6e   was removing en
23520 76 20 76 61 72 20 6e 65 65 64 65 64 20 66 6f 72  v var needed for
23530 20 70 72 6f 70 65 72 20 66 69 6e 64 69 6e 67 0a   proper finding.
23540 6f 66 20 6c 69 62 72 61 72 69 65 73 20 69 6e 20  of libraries in 
23550 63 68 69 6c 64 20 70 72 6f 63 65 73 73 2e 20 28  child process. (
23560 44 4c 29 0a 0a 37 2f 31 30 2f 39 37 20 28 62 75  DL)..7/10/97 (bu
23570 67 20 66 69 78 65 73 2f 6e 65 77 20 66 65 61 74  g fixes/new feat
23580 75 72 65 29 20 43 6c 65 61 6e 75 70 20 69 6e 20  ure) Cleanup in 
23590 54 63 6c 5f 4d 61 6b 65 53 61 66 65 2e 20 4c 65  Tcl_MakeSafe. Le
235a0 73 73 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 0a 69  ss information.i
235b0 73 20 6c 65 61 6b 65 64 20 74 6f 20 73 61 66 65  s leaked to safe
235c0 20 69 6e 74 65 72 70 73 2e 20 45 72 72 6f 72 20   interps. Error 
235d0 6d 65 73 73 61 67 65 20 66 69 78 65 73 20 66 6f  message fixes fo
235e0 72 20 69 6e 74 65 72 70 20 73 75 62 20 63 6f 6d  r interp sub com
235f0 6d 61 6e 64 73 2e 0a 4c 69 6b 65 77 69 73 65 20  mands..Likewise 
23600 63 68 61 6e 67 65 73 20 69 6e 20 73 61 66 65 61  changes in safea
23610 6c 69 61 73 2e 74 63 6c 3b 20 74 63 6c 5f 73 61  lias.tcl; tcl_sa
23620 66 65 43 72 65 61 74 65 49 6e 74 65 72 70 20 63  feCreateInterp c
23630 61 6e 20 6e 6f 77 20 62 65 20 63 61 6c 6c 65 64  an now be called
23640 0a 77 69 74 68 6f 75 74 20 61 72 67 75 6d 65 6e  .without argumen
23650 74 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68  t to generate th
23660 65 20 73 6c 61 76 65 20 6e 61 6d 65 20 28 6c 69  e slave name (li
23670 6b 65 20 69 6e 20 69 6e 74 65 72 70 20 63 72 65  ke in interp cre
23680 61 74 65 29 2e 20 28 44 4c 29 0a 0a 37 2f 31 30  ate). (DL)..7/10
23690 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20  /97 (bug fixes) 
236a0 42 79 74 65 63 6f 64 65 20 63 6f 6d 70 69 6c 65  Bytecode compile
236b0 72 20 6e 6f 77 20 67 65 6e 65 72 61 74 65 73 20  r now generates 
236c0 6d 6f 72 65 20 64 65 74 61 69 6c 65 64 20 0a 63  more detailed .c
236d0 6f 6d 6d 61 6e 64 20 6c 6f 63 61 74 69 6f 6e 20  ommand location 
236e0 69 6e 66 6f 72 6d 61 74 69 6f 6e 3a 20 73 75 62  information: sub
236f0 63 6f 6d 6d 61 6e 64 73 20 61 73 20 77 65 6c 6c  commands as well
23700 20 61 73 20 63 6f 6d 6d 61 6e 64 73 20 6e 6f 77   as commands now
23710 20 68 61 76 65 0a 6c 6f 63 61 74 69 6f 6e 20 69   have.location i
23720 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 54 68 69 73  nformation. This
23730 20 6d 65 61 6e 73 20 63 6f 6d 6d 61 6e 64 20 74   means command t
23740 72 61 63 65 20 70 72 6f 63 65 64 75 72 65 73 20  race procedures 
23750 6e 6f 77 20 67 65 74 20 74 68 65 0a 63 6f 72 72  now get the.corr
23760 65 63 74 20 73 6f 75 72 63 65 20 73 74 72 69 6e  ect source strin
23770 67 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 6d 61  g for each comma
23780 6e 64 20 69 6e 20 74 68 65 69 72 20 63 6f 6d 6d  nd in their comm
23790 61 6e 64 20 70 61 72 61 6d 65 74 65 72 2e 20 28  and parameter. (
237a0 42 4c 29 0a 0a 37 2f 32 32 2f 39 37 20 28 62 75  BL)..7/22/97 (bu
237b0 67 20 66 69 78 65 73 29 20 50 65 72 66 6f 72 6d  g fixes) Perform
237c0 61 6e 63 65 20 69 6d 70 72 6f 76 65 6d 65 6e 74  ance improvement
237d0 20 69 6e 20 53 61 66 65 20 69 6e 74 65 72 70 72   in Safe interpr
237e0 65 74 65 72 73 0a 68 61 6e 64 6c 69 6e 67 2e 20  eters.handling. 
237f0 41 64 64 65 64 20 6e 65 77 20 6d 61 73 6b 20 76  Added new mask v
23800 61 6c 75 65 20 74 6f 20 28 74 63 6c 49 6e 74 2e  alue to (tclInt.
23810 68 29 20 49 6e 74 65 72 70 2e 66 6c 61 67 73 20  h) Interp.flags 
23820 72 65 63 6f 72 64 2e 20 28 44 4c 29 0a 0a 37 2f  record. (DL)..7/
23830 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  22/97 (bug fix) 
23840 46 69 78 65 64 20 70 61 6e 69 63 20 69 6e 20 27  Fixed panic in '
23850 69 6e 74 65 72 70 20 74 61 72 67 65 74 20 7b 7d  interp target {}
23860 20 66 6f 6f 27 2e 20 54 68 69 73 20 62 75 67 0a   foo'. This bug.
23870 77 61 73 20 70 72 65 73 65 6e 74 20 73 69 6e 63  was present sinc
23880 65 20 54 63 6c 20 37 2e 36 2e 20 28 4a 4c 29 0a  e Tcl 7.6. (JL).
23890 0a 37 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69  .7/22/97 (bug fi
238a0 78 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20  x) Fixed bug in 
238b0 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 66 20 70  compilation of p
238c0 72 6f 63 65 64 75 72 65 73 20 69 6e 20 6e 61 6d  rocedures in nam
238d0 65 73 70 61 63 65 73 3a 20 74 68 65 0a 70 72 6f  espaces: the.pro
238e0 63 65 64 75 72 65 27 73 20 6e 61 6d 65 73 70 61  cedure's namespa
238f0 63 65 20 6d 75 73 74 20 62 65 20 75 73 65 64 20  ce must be used 
23900 74 6f 20 6c 6f 6f 6b 20 75 70 20 63 6f 6d 70 69  to look up compi
23910 6c 65 20 70 72 6f 63 65 64 75 72 65 73 2c 20 6e  le procedures, n
23920 6f 74 20 74 68 65 0a 63 75 72 72 65 6e 74 20 6e  ot the.current n
23930 61 6d 65 73 70 61 63 65 2e 20 28 42 4c 29 0a 0a  amespace. (BL)..
23940 37 2f 32 32 2f 39 37 20 28 62 75 67 20 66 69 78  7/22/97 (bug fix
23950 29 20 55 73 65 20 6f 66 20 74 68 65 20 2d 63 68  ) Use of the -ch
23960 61 6e 6e 65 6c 20 6f 70 74 69 6f 6e 20 6f 66 20  annel option of 
23970 68 74 74 70 5f 67 65 74 20 77 61 73 20 6e 6f 74  http_get was not
23980 20 73 65 74 74 69 6e 67 0a 74 68 65 20 65 6e 64   setting.the end
23990 20 6f 66 20 6c 69 6e 65 20 74 72 61 6e 73 6c 61   of line transla
239a0 74 69 6f 6e 73 20 6d 6f 64 65 20 6f 6e 20 74 68  tions mode on th
239b0 65 20 63 68 61 6e 6e 65 6c 2c 20 73 6f 20 63 6f  e channel, so co
239c0 70 79 69 6e 67 20 62 69 6e 61 72 79 20 64 61 74  pying binary dat
239d0 61 0a 77 69 74 68 20 74 68 65 20 2d 63 68 61 6e  a.with the -chan
239e0 6e 65 6c 20 6f 70 74 69 6f 6e 20 77 61 73 20 63  nel option was c
239f0 6f 72 72 75 70 74 69 6e 67 20 74 68 65 20 72 65  orrupting the re
23a00 73 75 6c 74 20 6f 6e 20 6e 6f 6e 2d 75 6e 69 78  sult on non-unix
23a10 20 70 6c 61 74 66 6f 72 6d 73 2e 20 28 42 57 29   platforms. (BW)
23a20 0a 0a 37 2f 32 32 2f 39 37 20 28 62 75 67 20 66  ..7/22/97 (bug f
23a30 69 78 65 73 29 20 66 69 6c 65 20 63 6f 6d 6d 61  ixes) file comma
23a40 6e 64 73 20 61 6e 64 20 7e 75 73 65 72 20 28 73  nds and ~user (s
23a50 65 67 20 66 61 75 6c 74 20 61 6e 64 20 6f 74 68  eg fault and oth
23a60 65 72 0a 69 6d 70 72 6f 70 65 72 20 72 65 74 75  er.improper retu
23a70 72 6e 73 29 2e 20 28 44 4c 29 0a 0a 37 2f 32 33  rns). (DL)..7/23
23a80 2f 39 37 20 28 66 65 61 74 75 72 65 20 63 68 61  /97 (feature cha
23a90 6e 67 65 29 20 52 65 65 6e 61 62 6c 65 64 20 22  nge) Reenabled "
23aa0 76 77 61 69 74 22 20 69 6e 20 53 61 66 65 20 42  vwait" in Safe B
23ab0 61 73 65 2e 20 28 4a 4c 29 0a 0a 37 2f 32 33 2f  ase. (JL)..7/23/
23ac0 39 37 20 28 62 75 67 20 66 69 78 65 73 29 20 46  97 (bug fixes) F
23ad0 69 78 65 64 20 74 77 6f 20 62 75 67 73 20 69 6e  ixed two bugs in
23ae0 76 6f 6c 76 69 6e 67 20 72 65 61 64 20 74 72 61  volving read tra
23af0 63 65 73 20 6f 6e 20 61 72 72 61 79 20 76 61 72  ces on array var
23b00 69 61 62 6c 65 73 0a 69 6e 20 70 72 6f 63 65 64  iables.in proced
23b10 75 72 65 73 3a 20 74 72 61 63 65 20 70 72 6f 63  ures: trace proc
23b20 65 64 75 72 65 73 20 77 65 72 65 20 73 6f 6d 65  edures were some
23b30 74 69 6d 65 73 20 6e 6f 74 20 63 61 6c 6c 65 64  times not called
23b40 2c 20 61 6e 64 20 72 65 61 64 69 6e 67 0a 6e 6f  , and reading.no
23b50 6e 65 78 69 73 74 61 6e 74 20 61 72 72 61 79 20  nexistant array 
23b60 65 6c 65 6d 65 6e 74 73 20 64 69 64 6e 27 74 20  elements didn't 
23b70 63 72 65 61 74 65 20 75 6e 64 65 66 69 6e 65 64  create undefined
23b80 20 65 6c 65 6d 65 6e 74 20 76 61 72 69 61 62 6c   element variabl
23b90 65 73 20 74 68 61 74 0a 63 6f 75 6c 64 20 6c 61  es that.could la
23ba0 74 65 72 20 62 65 20 64 65 66 69 6e 65 64 20 62  ter be defined b
23bb0 79 20 74 72 61 63 65 20 70 72 6f 63 65 64 75 72  y trace procedur
23bc0 65 73 2e 20 28 42 4c 29 0a 0a 37 2f 32 34 2f 39  es. (BL)..7/24/9
23bd0 37 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64  7 (bug fix) Wind
23be0 6f 77 73 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63  ows memory alloc
23bf0 61 74 69 6f 6e 20 70 65 72 66 6f 72 6d 61 6e 63  ation performanc
23c00 65 20 77 61 73 0a 73 75 70 65 72 6c 69 6e 65 61  e was.superlinea
23c10 72 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 2e  r in some cases.
23c20 20 20 4d 61 64 65 20 74 68 65 20 4d 61 63 20 61    Made the Mac a
23c30 6c 6c 6f 63 61 74 6f 72 20 67 65 6e 65 72 69 63  llocator generic
23c40 20 61 6e 64 20 63 68 61 6e 67 65 64 0a 62 6f 74   and changed.bot
23c50 68 20 74 68 65 20 4d 61 63 20 61 6e 64 20 57 69  h the Mac and Wi
23c60 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 73 20  ndows platforms 
23c70 74 6f 20 75 73 65 20 74 68 65 20 6e 65 77 20 61  to use the new a
23c80 6c 6c 6f 63 61 74 6f 72 20 69 6e 73 74 65 61 64  llocator instead
23c90 20 6f 66 0a 6d 61 6c 6c 6f 63 20 61 6e 64 20 66   of.malloc and f
23ca0 72 65 65 2e 20 28 53 53 29 0a 0a 37 2f 32 34 2f  ree. (SS)..7/24/
23cb0 39 37 20 2d 20 38 2f 31 32 2f 39 37 20 28 62 75  97 - 8/12/97 (bu
23cc0 67 20 66 69 78 65 73 2f 63 68 61 6e 67 65 20 6f  g fixes/change o
23cd0 66 20 66 65 61 74 75 72 65 73 29 20 43 6f 6d 70  f features) Comp
23ce0 6c 65 74 65 6c 79 20 72 65 76 61 6d 70 65 64 20  letely revamped 
23cf0 73 61 66 65 0a 73 6f 75 72 63 69 6e 67 2f 6c 6f  safe.sourcing/lo
23d00 61 64 69 6e 67 20 28 73 65 65 20 73 61 66 65 2e  ading (see safe.
23d10 6e 29 20 74 6f 20 68 69 64 65 20 70 61 74 68 6e  n) to hide pathn
23d20 61 6d 65 73 2c 20 75 73 65 20 76 69 72 74 75 61  ames, use virtua
23d30 6c 0a 70 61 74 68 73 20 74 6f 6b 65 6e 73 20 69  l.paths tokens i
23d40 6e 73 74 65 61 64 2c 20 69 6d 70 72 6f 76 65 64  nstead, improved
23d50 20 73 65 63 75 72 69 74 79 20 69 6e 20 73 65 76   security in sev
23d60 65 72 61 6c 20 72 65 73 70 65 63 74 73 20 61 6e  eral respects an
23d70 64 20 6d 61 64 65 20 69 74 0a 6d 6f 72 65 20 74  d made it.more t
23d80 75 6e 61 62 6c 65 2e 20 4d 75 6c 74 69 20 6c 65  unable. Multi le
23d90 76 65 6c 20 69 6e 74 65 72 70 20 6c 6f 61 64 69  vel interp loadi
23da0 6e 67 20 63 61 6e 20 77 6f 72 6b 20 74 6f 6f 20  ng can work too 
23db0 6e 6f 77 2e 20 50 61 63 6b 61 67 65 20 61 75 74  now. Package aut
23dc0 6f 0a 6c 6f 61 64 69 6e 67 20 6e 6f 77 20 77 6f  o.loading now wo
23dd0 72 6b 73 20 69 6e 20 73 61 66 65 20 69 6e 74 65  rks in safe inte
23de0 72 70 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 74  rps as long as t
23df0 68 65 20 70 61 63 6b 61 67 65 20 64 69 72 65 63  he package direc
23e00 74 6f 72 79 20 69 73 20 69 6e 20 0a 74 68 65 20  tory is in .the 
23e10 61 75 74 6f 5f 70 61 74 68 20 28 6e 6f 20 64 65  auto_path (no de
23e20 65 70 20 63 72 61 77 6c 69 6e 67 20 61 6c 6c 6f  ep crawling allo
23e30 77 65 64 20 69 6e 20 73 61 66 65 20 69 6e 74 65  wed in safe inte
23e40 72 70 73 29 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50  rps). (DL).*** P
23e50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
23e60 54 49 42 49 4c 49 54 59 20 77 69 74 68 20 70 72  TIBILITY with pr
23e70 65 76 69 6f 75 73 20 61 6c 70 68 61 20 61 6e 64  evious alpha and
23e80 20 62 65 74 61 20 72 65 6c 65 61 73 65 73 20 2a   beta releases *
23e90 2a 2a 0a 0a 37 2f 32 34 2f 39 37 20 28 62 75 67  **..7/24/97 (bug
23ea0 20 66 69 78 65 73 29 20 4d 61 64 65 20 54 63 6c   fixes) Made Tcl
23eb0 5f 53 65 74 56 61 72 2a 20 61 6e 64 20 54 63 6c  _SetVar* and Tcl
23ec0 5f 4e 65 77 53 74 72 69 6e 67 2a 20 74 72 65 61  _NewString* trea
23ed0 74 20 61 20 4e 55 4c 4c 20 76 61 6c 75 65 0a 61  t a NULL value.a
23ee0 73 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e  s an empty strin
23ef0 67 2e 20 28 54 68 69 73 20 66 69 78 65 73 20 68  g. (This fixes h
23f00 61 69 72 79 20 63 72 61 73 68 20 63 61 73 65 20  airy crash case 
23f10 77 68 65 72 65 20 79 6f 75 20 77 6f 75 6c 64 20  where you would 
23f20 63 72 61 73 68 0a 62 65 63 61 75 73 65 20 6c 6f  crash.because lo
23f30 61 64 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 6f  ad command for o
23f40 74 68 65 72 20 69 6e 74 65 72 70 73 20 61 73 73  ther interps ass
23f50 75 6d 65 64 20 70 72 65 73 65 6e 63 65 20 6f 66  umed presence of
23f60 0a 65 72 72 6f 72 49 6e 66 6f 2e 2e 2e 29 2e 20  .errorInfo...). 
23f70 28 44 4c 29 0a 0a 37 2f 32 38 2f 39 37 20 28 62  (DL)..7/28/97 (b
23f80 75 67 20 66 69 78 29 20 46 69 78 65 64 20 70 6b  ug fix) Fixed pk
23f90 67 5f 6d 6b 49 6e 64 65 78 20 74 6f 20 75 6e 64  g_mkIndex to und
23fa0 65 72 73 74 61 6e 64 20 6e 61 6d 65 73 70 61 63  erstand namespac
23fb0 65 73 2e 20 20 49 74 20 77 69 6c 6c 0a 75 73 65  es.  It will.use
23fc0 20 74 68 65 20 65 78 70 6f 72 74 20 6c 69 73 74   the export list
23fd0 20 6f 66 20 61 20 6e 61 6d 65 73 70 61 63 65 20   of a namespace 
23fe0 61 6e 64 20 63 72 65 61 74 65 20 61 75 74 6f 5f  and create auto_
23ff0 69 6e 64 65 78 20 65 6e 74 72 69 65 73 20 66 6f  index entries fo
24000 72 0a 61 6c 6c 20 65 78 70 6f 72 74 20 63 6f 6d  r.all export com
24010 6d 61 6e 64 73 2e 20 20 54 68 6f 73 65 20 6e 61  mands.  Those na
24020 6d 65 73 20 61 72 65 20 69 6e 20 74 68 65 69 72  mes are in their
24030 20 66 75 6c 6c 79 20 71 75 61 6c 69 66 69 65 64   fully qualified
24040 20 66 6f 72 6d 20 69 6e 20 74 68 65 0a 61 75 74   form in the.aut
24050 6f 5f 69 6e 64 65 78 2e 20 20 54 68 65 72 65 66  o_index.  Theref
24060 6f 72 65 2c 20 49 20 74 77 65 61 6b 65 64 20 75  ore, I tweaked u
24070 6e 6b 6e 6f 77 6e 20 74 6f 20 74 72 79 20 62 6f  nknown to try bo
24080 74 68 20 24 63 6d 64 20 61 6e 64 20 3a 3a 24 63  th $cmd and ::$c
24090 6d 64 2e 0a 41 6c 73 6f 20 66 69 78 65 64 20 70  md..Also fixed p
240a0 6b 67 5f 6d 6b 49 6e 64 65 78 20 73 6f 20 79 6f  kg_mkIndex so yo
240b0 75 20 63 61 6e 20 68 61 76 65 20 22 70 61 63 6b  u can have "pack
240c0 61 67 65 20 72 65 71 75 69 72 65 22 20 63 6f 6d  age require" com
240d0 6d 61 6e 64 73 20 69 6e 73 69 64 65 0a 79 6f 75  mands inside.you
240e0 72 20 70 61 63 6b 61 67 65 73 2e 20 20 54 68 65  r packages.  The
240f0 73 65 20 63 6f 6d 6d 61 6e 64 73 20 61 72 65 20  se commands are 
24100 69 67 6e 6f 72 65 64 2c 20 77 68 69 63 68 20 69  ignored, which i
24110 73 20 6d 6f 73 74 6c 79 20 6f 6b 20 65 78 63 65  s mostly ok exce
24120 70 74 0a 77 68 65 6e 20 79 6f 75 20 6d 75 73 74  pt.when you must
24130 20 6c 6f 61 64 20 61 6e 6f 74 68 65 72 20 70 61   load another pa
24140 63 6b 61 67 65 20 62 65 66 6f 72 65 20 6c 6f 61  ckage before loa
24150 64 69 6e 67 20 79 6f 75 72 73 20 62 65 63 61 75  ding yours becau
24160 73 65 20 6f 66 0a 6c 69 6e 6b 69 6e 67 20 64 65  se of.linking de
24170 70 65 6e 64 65 6e 63 69 65 73 2e 20 28 42 57 29  pendencies. (BW)
24180 0a 0a 37 2f 32 38 2f 39 37 20 28 62 75 67 20 66  ..7/28/97 (bug f
24190 69 78 29 20 41 20 76 61 72 69 61 62 6c 65 20 63  ix) A variable c
241a0 72 65 61 74 65 64 20 62 79 20 74 68 65 20 76 61  reated by the va
241b0 72 69 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 20 6e  riable command n
241c0 6f 77 20 70 65 72 73 69 73 74 73 0a 75 6e 74 69  ow persists.unti
241d0 6c 20 74 68 65 20 6e 61 6d 65 73 70 61 63 65 20  l the namespace 
241e0 69 73 20 64 65 73 74 72 6f 79 65 64 20 6f 72 20  is destroyed or 
241f0 74 68 65 20 76 61 72 69 61 62 6c 65 20 69 73 20  the variable is 
24200 75 6e 73 65 74 2e 20 54 68 69 73 20 69 73 20 74  unset. This is t
24210 72 75 65 20 65 76 65 6e 0a 69 66 20 74 68 65 20  rue even.if the 
24220 76 61 72 69 61 62 6c 65 20 68 61 73 20 6e 6f 74  variable has not
24230 20 62 65 65 6e 20 69 6e 69 74 69 61 6c 69 7a 65   been initialize
24240 64 3b 20 74 68 65 73 65 20 76 61 72 69 61 62 6c  d; these variabl
24250 65 73 20 75 73 65 64 20 74 6f 20 62 65 0a 64 65  es used to be.de
24260 73 74 72 6f 79 65 64 20 69 66 20 61 6e 20 65 72  stroyed if an er
24270 72 6f 72 20 6f 63 63 75 72 72 65 64 20 77 68 65  ror occurred whe
24280 6e 20 61 63 63 65 73 73 69 6e 67 20 74 68 65 6d  n accessing them
24290 2e 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c 20 74  . In addition, t
242a0 68 65 20 22 69 6e 66 6f 0a 76 61 72 73 22 20 63  he "info.vars" c
242b0 6f 6d 6d 61 6e 64 20 6c 69 73 74 73 20 75 6e 69  ommand lists uni
242c0 6e 69 74 69 61 6c 69 7a 65 64 20 6e 61 6d 65 73  nitialized names
242d0 70 61 63 65 20 76 61 72 69 61 62 6c 65 73 2c 20  pace variables, 
242e0 77 68 69 6c 65 20 74 68 65 20 22 69 6e 66 6f 0a  while the "info.
242f0 65 78 69 73 74 73 22 20 63 6f 6d 6d 61 6e 64 20  exists" command 
24300 72 65 74 75 72 6e 73 20 30 20 66 6f 72 20 74 68  returns 0 for th
24310 65 6d 2e 20 28 42 4c 29 0a 0a 37 2f 32 39 2f 39  em. (BL)..7/29/9
24320 37 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  7 (feature chang
24330 65 29 20 20 43 68 61 6e 67 65 64 20 74 68 65 20  e)  Changed the 
24340 68 74 74 70 20 70 61 63 6b 61 67 65 20 74 6f 20  http package to 
24350 75 73 65 20 74 68 65 20 3a 3a 68 74 74 70 0a 6e  use the ::http.n
24360 61 6d 65 73 70 61 63 65 2e 20 68 74 74 70 5f 67  amespace. http_g
24370 65 74 20 72 65 6e 61 6d 65 64 20 74 6f 20 68 74  et renamed to ht
24380 74 70 3a 3a 67 65 74 75 72 6c 2c 20 68 74 74 70  tp::geturl, http
24390 5f 63 6f 6e 66 69 67 20 72 65 6e 61 6d 65 64 20  _config renamed 
243a0 74 6f 0a 68 74 74 70 3a 3a 63 6f 6e 66 69 67 2c  to.http::config,
243b0 20 68 74 74 70 5f 66 6f 72 6d 61 74 51 75 65 72   http_formatQuer
243c0 79 20 72 65 6e 61 6d 65 64 20 74 6f 20 68 74 74  y renamed to htt
243d0 70 3a 3a 66 6f 72 6d 61 74 51 75 65 72 79 2e 0a  p::formatQuery..
243e0 49 74 20 6e 6f 77 20 70 72 6f 76 69 64 65 73 20  It now provides 
243f0 74 68 65 20 32 2e 30 20 76 65 72 73 69 6f 6e 20  the 2.0 version 
24400 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 2e 20  of the package. 
24410 20 0a 54 68 65 20 31 2e 30 20 76 65 72 73 69 6f   .The 1.0 versio
24420 6e 20 69 73 20 73 74 69 6c 6c 20 61 76 61 69 6c  n is still avail
24430 61 62 6c 65 20 77 69 74 68 20 74 68 65 20 6f 6c  able with the ol
24440 64 20 6e 61 6d 65 73 2e 0a 2a 2a 2a 20 50 4f 54  d names..*** POT
24450 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
24460 42 49 4c 49 54 59 20 77 69 74 68 20 54 63 6c 20  BILITY with Tcl 
24470 38 2e 30 62 32 20 62 75 74 20 6e 6f 74 20 77 69  8.0b2 but not wi
24480 74 68 20 54 63 6c 20 37 2e 36 20 2a 2a 2a 0a 0a  th Tcl 7.6 ***..
24490 37 2f 32 39 2f 39 37 20 28 62 75 67 20 66 69 78  7/29/97 (bug fix
244a0 2c 20 6e 65 77 20 66 65 61 74 75 72 65 29 20 54  , new feature) T
244b0 63 6c 5f 4d 61 69 6e 20 6e 6f 77 20 75 73 65 73  cl_Main now uses
244c0 20 54 63 6c 20 6f 62 6a 65 63 74 73 20 69 6e 74   Tcl objects int
244d0 65 72 6e 61 6c 6c 79 20 74 6f 0a 70 72 65 73 65  ernally to.prese
244e0 72 76 65 20 4e 55 4c 4c 73 20 69 6e 20 63 6f 6d  rve NULLs in com
244f0 6d 61 6e 64 73 20 61 6e 64 20 63 6f 6d 6d 61 6e  mands and comman
24500 64 20 6f 75 74 70 75 74 2e 20 41 64 64 65 64 20  d output. Added 
24510 6e 65 77 20 41 50 49 20 70 72 6f 63 65 64 75 72  new API procedur
24520 65 0a 54 63 6c 5f 52 65 63 6f 72 64 41 6e 64 45  e.Tcl_RecordAndE
24530 76 61 6c 4f 62 6a 20 74 68 61 74 20 72 65 73 65  valObj that rese
24540 6d 62 6c 65 73 20 54 63 6c 5f 52 65 63 6f 72 64  mbles Tcl_Record
24550 41 6e 64 45 76 61 6c 20 62 75 74 20 74 61 6b 65  AndEval but take
24560 73 20 61 6e 20 6f 62 6a 65 63 74 0a 63 6f 6e 74  s an object.cont
24570 61 69 6e 69 6e 67 20 61 20 63 6f 6d 6d 61 6e 64  aining a command
24580 2e 20 28 42 4c 29 0a 0a 37 2f 33 30 2f 39 37 20  . (BL)..7/30/97 
24590 28 62 75 67 20 66 69 78 29 20 54 63 6c 20 66 72  (bug fix) Tcl fr
245a0 65 65 64 20 73 74 72 69 6e 67 73 20 69 6e 20 74  eed strings in t
245b0 68 65 20 65 6e 76 69 72 6f 6e 20 61 72 72 61 79  he environ array
245c0 20 65 76 65 6e 20 69 66 20 69 74 0a 64 69 64 20   even if it.did 
245d0 6e 6f 74 20 61 6c 6c 6f 63 61 74 65 20 74 68 65  not allocate the
245e0 6d 2e 20 28 53 53 29 0a 0a 37 2f 33 30 2f 39 37  m. (SS)..7/30/97
245f0 20 28 62 75 67 20 66 69 78 29 20 49 66 20 61 20   (bug fix) If a 
24600 70 72 6f 63 65 64 75 72 65 20 69 73 20 72 65 6e  procedure is ren
24610 61 6d 65 64 20 69 6e 74 6f 20 61 20 64 69 66 66  amed into a diff
24620 65 72 65 6e 74 20 6e 61 6d 65 73 70 61 63 65 2c  erent namespace,
24630 20 69 74 0a 6e 6f 77 20 65 78 65 63 75 74 65 73   it.now executes
24640 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78 74 20   in the context 
24650 6f 66 20 74 68 61 74 20 6e 61 6d 65 73 70 61 63  of that namespac
24660 65 2e 20 28 42 4c 29 0a 0a 37 2f 33 30 2f 39 37  e. (BL)..7/30/97
24670 20 28 62 75 67 20 66 69 78 29 20 50 72 65 76 65   (bug fix) Preve
24680 6e 74 20 72 65 6e 61 6d 69 6e 67 20 6f 66 20 63  nt renaming of c
24690 6f 6d 6d 61 6e 64 73 20 69 6e 74 6f 20 61 6e 64  ommands into and
246a0 20 66 72 6f 6d 20 6e 61 6d 65 73 70 61 63 65 73   from namespaces
246b0 20 61 73 0a 70 61 72 74 20 6f 66 20 68 69 64 69   as.part of hidi
246c0 6e 67 20 74 68 65 6d 2e 20 28 4a 4c 29 0a 0a 37  ng them. (JL)..7
246d0 2f 33 31 2f 39 37 20 28 66 65 61 74 75 72 65 20  /31/97 (feature 
246e0 63 68 61 6e 67 65 29 20 4d 6f 76 65 64 20 74 68  change) Moved th
246f0 65 20 68 69 73 74 6f 72 79 20 63 6f 6d 6d 61 6e  e history comman
24700 64 20 66 72 6f 6d 20 43 20 74 6f 20 74 63 6c 2e  d from C to tcl.
24710 0a 54 68 69 73 20 75 73 65 73 20 74 68 65 20 3a  .This uses the :
24720 3a 68 69 73 74 6f 72 79 20 6e 61 6d 65 73 70 61  :history namespa
24730 63 65 2e 20 20 54 68 65 20 22 77 6f 72 64 73 22  ce.  The "words"
24740 20 61 6e 64 20 22 73 75 62 73 74 69 74 75 74 65   and "substitute
24750 22 20 6f 70 74 69 6f 6e 73 0a 61 72 65 20 6e 6f  " options.are no
24760 20 6c 6f 6e 67 65 72 20 73 75 70 70 6f 72 74 65   longer supporte
24770 64 2e 20 20 49 6e 20 61 64 64 69 74 69 6f 6e 2c  d.  In addition,
24780 20 74 68 65 20 22 6b 65 65 70 22 20 6f 70 74 69   the "keep" opti
24790 6f 6e 20 77 69 74 68 6f 75 74 20 61 20 76 61 6c  on without a val
247a0 75 65 0a 72 65 74 75 72 6e 73 20 74 68 65 20 63  ue.returns the c
247b0 75 72 72 65 6e 74 20 6b 65 65 70 20 6c 69 6d 69  urrent keep limi
247c0 74 2e 20 20 54 68 65 72 65 20 69 73 20 61 20 6e  t.  There is a n
247d0 65 77 20 22 63 6c 65 61 72 22 20 6f 70 74 69 6f  ew "clear" optio
247e0 6e 2e 0a 54 68 65 20 75 6e 6b 6e 6f 77 6e 20 63  n..The unknown c
247f0 6f 6d 6d 61 6e 64 20 6e 6f 77 20 73 75 70 70 6f  ommand now suppo
24800 72 74 73 20 21 21 20 61 67 61 69 6e 2e 20 28 42  rts !! again. (B
24810 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  W).*** POTENTIAL
24820 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 54 59 20   INCOMPATIBILTY 
24830 20 2a 2a 2a 0a 0a 37 2f 33 30 2f 39 37 20 28 62   ***..7/30/97 (b
24840 75 67 20 66 69 78 29 20 4d 61 64 65 20 73 75 72  ug fix) Made sur
24850 65 20 74 68 61 74 20 61 20 73 6c 61 76 65 20 63  e that a slave c
24860 61 6e 20 6e 6f 74 20 66 6f 6f 6c 20 74 68 65 20  an not fool the 
24870 6d 61 73 74 65 72 20 69 6e 74 6f 0a 68 69 64 69  master into.hidi
24880 6e 67 20 74 68 65 20 77 72 6f 6e 67 20 63 6f 6d  ng the wrong com
24890 6d 61 6e 64 2e 20 4d 61 64 65 20 73 75 72 65 20  mand. Made sure 
248a0 77 65 20 64 6f 6e 27 74 20 63 72 61 73 68 20 69  we don't crash i
248b0 6e 20 68 69 64 69 6e 67 20 2b 20 6e 61 6d 65 73  n hiding + names
248c0 70 61 63 65 73 0a 69 73 73 75 65 73 2e 20 28 44  paces.issues. (D
248d0 4c 29 0a 0a 38 2f 34 2f 39 37 20 28 62 75 67 20  L)..8/4/97 (bug 
248e0 66 69 78 29 20 43 6f 6e 63 61 74 2c 20 65 76 61  fix) Concat, eva
248f0 6c 2c 20 75 70 6c 65 76 65 6c 2c 20 61 6e 64 20  l, uplevel, and 
24900 73 69 6d 69 6c 61 72 20 63 6f 6d 6d 61 6e 64 73  similar commands
24910 20 77 65 72 65 0a 69 6e 63 6f 72 72 65 63 74 6c   were.incorrectl
24920 79 20 74 72 69 6d 6d 69 6e 67 20 74 72 61 69 6c  y trimming trail
24930 69 6e 67 20 73 70 61 63 65 20 63 68 61 72 61 63  ing space charac
24940 74 65 72 73 20 66 72 6f 6d 20 74 68 65 69 72 20  ters from their 
24950 61 72 67 75 6d 65 6e 74 73 0a 65 76 65 6e 20 77  arguments.even w
24960 68 65 6e 20 74 68 65 20 73 70 61 63 65 20 63 68  hen the space ch
24970 61 72 61 63 74 65 72 73 20 77 65 72 65 20 70 72  aracters were pr
24980 65 63 65 64 65 64 20 62 79 20 61 20 62 61 63 6b  eceded by a back
24990 73 6c 61 73 68 2e 20 28 4a 4f 29 0a 0a 38 2f 34  slash. (JO)..8/4
249a0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 52 65  /97 (bug fix) Re
249b0 6d 6f 76 65 64 20 74 68 65 20 68 61 72 64 20 6c  moved the hard l
249c0 69 6e 6b 20 62 65 74 77 65 65 6e 20 62 67 65 72  ink between bger
249d0 72 6f 72 20 61 6e 64 20 74 6b 65 72 72 6f 72 2e  ror and tkerror.
249e0 0a 4f 6e 6c 79 20 62 67 65 72 72 6f 72 20 69 73  .Only bgerror is
249f0 20 73 75 70 70 6f 72 74 65 64 20 69 6e 20 74 63   supported in tc
24a00 6c 20 63 6f 72 65 2e 20 54 6b 20 77 69 6c 6c 20  l core. Tk will 
24a10 73 74 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 61  still look for a
24a20 0a 74 6b 65 72 72 6f 72 20 62 75 74 20 75 73 69  .tkerror but usi
24a30 6e 67 20 72 65 67 75 6c 61 72 20 74 63 6c 20 63  ng regular tcl c
24a40 6f 64 65 20 66 6f 72 20 74 68 61 74 20 66 65 61  ode for that fea
24a50 74 75 72 65 2e 20 28 44 4c 29 0a 2a 2a 2a 20 50  ture. (DL).*** P
24a60 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
24a70 54 49 42 49 4c 54 59 20 77 69 74 68 20 63 6f 64  TIBILTY with cod
24a80 65 20 72 65 6c 79 69 6e 67 20 6f 6e 20 74 68 65  e relying on the
24a90 20 68 61 72 64 20 6c 69 6e 6b 20 2a 2a 2a 0a 0a   hard link ***..
24aa0 38 2f 36 2f 39 37 20 28 62 75 67 20 66 69 78 29  8/6/97 (bug fix)
24ab0 20 52 65 64 75 63 65 64 20 73 69 7a 65 20 72 65   Reduced size re
24ac0 71 75 69 72 65 64 20 66 6f 72 20 63 6f 6d 70 69  quired for compi
24ad0 6c 65 64 20 62 79 74 65 63 6f 64 65 73 20 62 79  led bytecodes by
24ae0 20 75 73 69 6e 67 20 61 0a 6d 6f 72 65 20 63 6f   using a.more co
24af0 6d 70 61 63 74 20 65 6e 63 6f 64 69 6e 67 20 66  mpact encoding f
24b00 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 70  or the command p
24b10 63 2d 74 6f 2d 73 6f 75 72 63 65 20 6d 61 70 2e  c-to-source map.
24b20 20 28 42 4c 29 0a 0a 38 2f 36 2f 39 37 20 28 6e   (BL)..8/6/97 (n
24b30 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65  ew feature) Adde
24b40 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 61 64  d support for ad
24b50 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 61  ditional compila
24b60 74 69 6f 6e 20 61 6e 64 20 65 78 65 63 75 74 69  tion and executi
24b70 6f 6e 0a 73 74 61 74 69 73 74 69 63 73 20 77 68  on.statistics wh
24b80 65 6e 20 54 63 6c 20 69 73 20 63 6f 6d 70 69 6c  en Tcl is compil
24b90 65 64 20 77 69 74 68 20 74 68 65 20 54 43 4c 5f  ed with the TCL_
24ba0 43 4f 4d 50 49 4c 45 5f 53 54 41 54 53 20 66 6c  COMPILE_STATS fl
24bb0 61 67 2e 20 28 42 4c 29 0a 0a 38 2f 37 2f 39 37  ag. (BL)..8/7/97
24bc0 20 28 62 75 67 20 66 69 78 29 20 45 78 70 72 65   (bug fix) Expre
24bd0 73 73 69 6f 6e 73 20 6e 6f 74 20 69 6e 20 7b 7d  ssions not in {}
24be0 73 20 74 68 61 74 20 68 61 76 65 20 61 20 63 6f  s that have a co
24bf0 6d 70 61 72 69 73 6f 6e 20 6f 70 65 72 61 74 6f  mparison operato
24c00 72 20 61 73 0a 74 68 65 20 74 6f 70 6d 6f 73 74  r as.the topmost
24c10 20 6f 70 65 72 61 74 6f 72 20 6d 75 73 74 20 62   operator must b
24c20 65 20 63 6f 6d 70 69 6c 65 64 20 6f 75 74 2d 6f  e compiled out-o
24c30 66 2d 6c 69 6e 65 20 28 63 61 6c 6c 20 74 68 65  f-line (call the
24c40 20 65 78 70 72 20 63 6d 64 20 61 74 0a 72 75 6e   expr cmd at.run
24c50 74 69 6d 65 29 20 74 6f 20 70 72 6f 70 65 72 6c  time) to properl
24c60 79 20 73 75 70 70 6f 72 74 20 65 78 70 72 27 73  y support expr's
24c70 20 74 77 6f 2d 6c 65 76 65 6c 20 73 75 62 73 74   two-level subst
24c80 69 74 75 74 69 6f 6e 20 73 65 6d 61 6e 74 69 63  itution semantic
24c90 73 2e 20 41 6e 0a 65 78 61 6d 70 6c 65 20 69 73  s. An.example is
24ca0 20 22 73 65 74 20 61 20 32 3b 20 73 65 74 20 62   "set a 2; set b
24cb0 20 7b 24 61 7d 3b 20 70 75 74 73 20 5b 65 78 70   {$a}; puts [exp
24cc0 72 20 24 62 20 3d 3d 20 32 5d 22 2e 20 28 42 4c  r $b == 2]". (BL
24cd0 29 0a 0a 38 2f 31 31 2f 39 37 20 28 62 75 67 20  )..8/11/97 (bug 
24ce0 66 69 78 29 20 54 68 65 20 63 61 74 63 68 20 63  fix) The catch c
24cf0 6f 6d 6d 61 6e 64 20 77 6f 75 6c 64 20 73 6f 6d  ommand would som
24d00 65 74 69 6d 65 73 20 63 72 61 73 68 20 69 66 20  etimes crash if 
24d10 61 20 76 61 72 69 61 62 6c 65 20 6e 61 6d 65 0a  a variable name.
24d20 77 61 73 20 67 69 76 65 6e 20 61 6e 64 20 74 68  was given and th
24d30 65 20 62 79 74 65 63 6f 64 65 20 65 76 61 6c 75  e bytecode evalu
24d40 61 74 69 6f 6e 20 73 74 61 63 6b 20 77 61 73 20  ation stack was 
24d50 67 72 6f 77 6e 20 77 68 65 6e 20 65 78 65 63 75  grown when execu
24d60 74 69 6e 67 20 74 68 65 0a 61 72 67 75 6d 65 6e  ting the.argumen
24d70 74 20 73 63 72 69 70 74 2e 20 28 42 4c 29 0a 0a  t script. (BL)..
24d80 38 2f 31 32 2f 39 37 20 28 66 65 61 74 75 72 65  8/12/97 (feature
24d90 20 63 68 61 6e 67 65 29 20 52 65 69 6e 73 74 61   change) Reinsta
24da0 74 65 64 20 74 68 65 20 76 61 72 69 61 62 6c 65  ted the variable
24db0 20 74 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20 74   tcl_precision t
24dc0 6f 20 63 6f 6e 74 72 6f 6c 0a 74 68 65 20 6e 75  o control.the nu
24dd0 6d 62 65 72 20 6f 66 20 64 69 67 69 74 73 20 75  mber of digits u
24de0 73 65 64 20 77 68 65 6e 20 66 6c 6f 61 74 69 6e  sed when floatin
24df0 67 2d 70 6f 69 6e 74 20 76 61 6c 75 65 73 20 61  g-point values a
24e00 72 65 20 63 6f 6e 76 65 72 74 65 64 20 74 6f 0a  re converted to.
24e10 73 74 72 69 6e 67 73 2c 20 77 69 74 68 20 64 65  strings, with de
24e20 66 61 75 6c 74 20 6f 66 20 31 32 20 64 69 67 69  fault of 12 digi
24e30 74 73 2e 20 20 48 6f 77 65 76 65 72 2c 20 68 61  ts.  However, ha
24e40 64 20 74 6f 20 6d 61 6b 65 20 74 63 6c 5f 70 72  d to make tcl_pr
24e50 65 63 69 73 69 6f 6e 0a 73 68 61 72 65 64 20 61  ecision.shared a
24e60 6d 6f 6e 67 20 61 6c 6c 20 69 6e 74 65 72 70 72  mong all interpr
24e70 65 74 65 72 73 20 28 65 78 63 65 70 74 20 74 68  eters (except th
24e80 61 74 20 73 61 66 65 20 69 6e 74 65 72 70 72 65  at safe interpre
24e90 74 65 72 73 20 63 61 6e 27 74 0a 6d 6f 64 69 66  ters can't.modif
24ea0 79 20 69 74 29 2e 20 20 54 68 69 73 20 6d 61 6b  y it).  This mak
24eb0 65 73 20 74 68 65 20 54 63 6c 20 38 2e 30 20 62  es the Tcl 8.0 b
24ec0 65 68 61 76 69 6f 72 20 61 6c 6d 6f 73 74 20 69  ehavior almost i
24ed0 64 65 6e 74 69 63 61 6c 20 74 6f 20 37 2e 36 0a  dentical to 7.6.
24ee0 65 78 63 65 70 74 20 74 68 61 74 20 74 68 65 20  except that the 
24ef0 64 65 66 61 75 6c 74 20 70 72 65 63 69 73 69 6f  default precisio
24f00 6e 20 69 73 20 31 32 20 69 6e 73 74 65 61 64 20  n is 12 instead 
24f10 6f 66 20 36 2e 20 28 4a 4f 29 0a 2a 2a 2a 20 50  of 6. (JO).*** P
24f20 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41  OTENTIAL INCOMPA
24f30 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d  TIBILITY ***..--
24f40 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20  --------------- 
24f50 52 65 6c 65 61 73 65 64 20 38 2e 30 2c 20 38 2f  Released 8.0, 8/
24f60 31 38 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  18/97 ----------
24f70 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 38  -------------..8
24f80 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  /19/97 (bug fix)
24f90 20 4d 69 6e 69 6d 61 6c 20 66 69 78 20 66 6f 72   Minimal fix for
24fa0 20 67 6c 6f 62 20 2d 6e 6f 63 6f 6d 70 6c 61 69   glob -nocomplai
24fb0 6e 20 62 75 67 73 3a 0a 22 67 6c 6f 62 20 2d 6e  n bugs:."glob -n
24fc0 6f 63 6f 6d 70 6c 61 69 6e 20 75 6e 72 65 61 64  ocomplain unread
24fd0 61 62 6c 65 44 69 72 2f 2a 22 20 77 61 73 20 67  ableDir/*" was g
24fe0 65 6e 65 72 61 74 69 6e 67 20 61 6e 20 61 6e 6f  enerating an ano
24ff0 6e 79 6d 6f 75 73 20 0a 65 72 72 6f 72 2e 20 4d  nymous .error. M
25000 6f 72 65 20 69 6e 20 64 65 70 74 68 20 66 69 78  ore in depth fix
25010 65 73 20 77 69 6c 6c 20 63 6f 6d 65 20 77 69 74  es will come wit
25020 68 20 38 2e 31 2e 20 28 44 4c 29 2e 0a 0a 38 2f  h 8.1. (DL)...8/
25030 32 30 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  20/97 (bug fix) 
25040 52 65 6d 6f 76 65 64 20 63 68 65 63 6b 20 66 6f  Removed check fo
25050 72 20 46 4c 54 5f 4d 49 4e 20 69 6e 20 62 69 6e  r FLT_MIN in bin
25060 61 72 79 20 63 6f 6d 6d 61 6e 64 20 73 6f 0a 75  ary command so.u
25070 6e 64 65 72 66 6c 6f 77 20 63 6f 6e 64 69 74 69  nderflow conditi
25080 6f 6e 73 20 61 72 65 20 68 61 6e 64 6c 65 64 20  ons are handled 
25090 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20  by the compiler 
250a0 61 75 74 6f 6d 61 74 69 63 0a 63 6f 6e 76 65 72  automatic.conver
250b0 73 69 6f 6e 73 2e 20 28 53 53 29 0a 0a 38 2f 32  sions. (SS)..8/2
250c0 30 2f 39 37 20 28 62 75 67 20 66 69 78 65 73 29  0/97 (bug fixes)
250d0 20 46 69 78 65 64 20 73 65 76 65 72 61 6c 20 63   Fixed several c
250e0 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c 61 74  ompilation-relat
250f0 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d 20 41  ed bugs:.    - A
25100 72 72 61 79 20 63 6d 64 20 77 61 73 6e 27 74 20  rray cmd wasn't 
25110 64 65 74 65 63 74 69 6e 67 20 61 72 72 61 79 73  detecting arrays
25120 20 74 68 61 74 2c 20 77 68 69 6c 65 20 63 6f 6d   that, while com
25130 70 69 6c 65 64 2c 20 64 6f 20 6e 6f 74 20 79 65  piled, do not ye
25140 74 0a 20 20 20 20 20 20 65 78 69 73 74 20 28 65  t.      exist (e
25150 2e 67 2e 2c 20 61 72 65 20 6d 61 72 6b 65 64 20  .g., are marked 
25160 75 6e 64 65 66 69 6e 65 64 20 73 69 6e 63 65 20  undefined since 
25170 74 68 65 79 20 68 61 76 65 6e 27 74 20 62 65 65  they haven't bee
25180 6e 20 61 73 73 69 67 6e 65 64 0a 20 20 20 20 20  n assigned.     
25190 20 74 6f 20 79 65 74 29 2e 0a 20 20 20 20 2d 20   to yet)..    - 
251a0 54 68 65 20 47 65 74 54 6f 6b 65 6e 20 70 72 6f  The GetToken pro
251b0 63 65 64 75 72 65 20 69 6e 20 74 63 6c 43 6f 6d  cedure in tclCom
251c0 70 45 78 70 72 2e 63 20 77 61 73 6e 27 74 20 72  pExpr.c wasn't r
251d0 65 63 6f 67 6e 69 7a 69 6e 67 20 70 72 6f 70 65  ecognizing prope
251e0 72 6c 79 0a 20 20 20 20 20 20 77 68 65 74 68 65  rly.      whethe
251f0 72 20 61 6e 20 69 6e 74 65 67 65 72 20 74 6f 6b  r an integer tok
25200 65 6e 20 77 61 73 20 69 6e 76 61 6c 69 64 2e 20  en was invalid. 
25210 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 22 30 78  For example, "0x
25220 24 22 20 69 73 20 6e 6f 74 0a 20 20 20 20 20 20  $" is not.      
25230 61 20 76 61 6c 69 64 20 69 6e 74 65 67 65 72 2e  a valid integer.
25240 0a 20 20 20 20 2d 20 50 65 72 66 6f 72 6d 61 6e  .    - Performan
25250 63 65 20 62 75 67 20 69 6e 20 54 63 6c 45 78 65  ce bug in TclExe
25260 63 75 74 65 42 79 74 65 43 6f 64 65 3a 20 74 68  cuteByteCode: th
25270 65 20 73 69 7a 65 20 6f 66 20 69 74 73 20 73 74  e size of its st
25280 61 63 6b 20 66 72 61 6d 65 0a 20 20 20 20 20 20  ack frame.      
25290 77 61 73 20 72 65 64 75 63 65 64 20 62 79 20 6f  was reduced by o
252a0 76 65 72 20 32 30 25 20 62 79 20 6d 6f 76 69 6e  ver 20% by movin
252b0 67 20 65 72 72 6f 72 49 6e 66 6f 20 63 6f 64 65  g errorInfo code
252c0 20 65 6c 73 65 77 68 65 72 65 2e 0a 20 20 20 20   elsewhere..    
252d0 2d 20 55 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20  - Uninitialized 
252e0 6d 65 6d 6f 72 79 20 72 65 61 64 20 65 72 72 6f  memory read erro
252f0 72 20 69 6e 20 74 63 6c 43 6f 6d 70 69 6c 65 2e  r in tclCompile.
25300 63 2e 20 28 42 4c 29 0a 0a 38 2f 32 31 2f 39 37  c. (BL)..8/21/97
25310 20 28 62 75 67 20 66 69 78 29 20 73 61 66 65 3a   (bug fix) safe:
25320 3a 69 6e 74 65 72 70 43 6f 6e 66 69 67 75 72 65  :interpConfigure
25330 20 6e 6f 77 20 62 65 68 61 76 65 20 6c 69 6b 65   now behave like
25340 20 54 6b 20 77 69 64 67 65 74 27 73 0a 63 6f 6e   Tk widget's.con
25350 66 69 67 75 72 65 20 3a 20 69 74 20 63 68 61 6e  figure : it chan
25360 67 65 73 20 6f 6e 6c 79 20 74 68 65 20 6f 70 74  ges only the opt
25370 69 6f 6e 73 20 79 6f 75 20 70 72 6f 76 69 64 65  ions you provide
25380 20 61 6e 64 20 79 6f 75 20 63 61 6e 20 67 65 74   and you can get
25390 0a 74 68 65 20 63 75 72 72 65 6e 74 20 76 61 6c  .the current val
253a0 75 65 20 6f 66 20 61 6e 79 20 73 69 6e 67 6c 65  ue of any single
253b0 20 6f 70 74 69 6f 6e 2e 20 4e 65 77 20 3f 2d 6e   option. New ?-n
253c0 65 73 74 65 64 20 62 6f 6f 6c 65 61 6e 3f 20 61  ested boolean? a
253d0 6e 64 0a 3f 2d 73 74 61 74 69 63 73 20 62 6f 6f  nd.?-statics boo
253e0 6c 65 61 6e 3f 20 66 6f 72 20 61 6c 6c 20 73 61  lean? for all sa
253f0 66 65 3a 3a 69 6e 74 65 72 70 2a 20 63 6f 6d 6d  fe::interp* comm
25400 61 6e 64 73 20 62 75 74 20 77 65 20 73 74 69 6c  ands but we stil
25410 6c 0a 61 63 63 65 70 74 20 28 75 70 77 61 72 64  l.accept (upward
25420 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 29 20   compatibility) 
25430 74 68 65 20 70 72 65 76 69 6f 75 73 6c 79 20 64  the previously d
25440 65 66 69 6e 65 64 20 6e 6f 6e 20 76 61 6c 75 65  efined non value
25450 64 0a 66 6c 61 67 73 20 3f 2d 6e 6f 53 74 61 74  d.flags ?-noStat
25460 69 63 73 3f 20 61 6e 64 20 3f 2d 6e 65 73 74 65  ics? and ?-neste
25470 64 4c 6f 61 64 4f 6b 3f 2e 20 49 6d 70 72 6f 76  dLoadOk?. Improv
25480 65 64 20 74 68 65 20 64 6f 63 75 6d 65 6e 74 61  ed the documenta
25490 74 69 6f 6e 2e 20 28 44 4c 29 2e 0a 0a 38 2f 32  tion. (DL)...8/2
254a0 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 55  2/97 (bug fix) U
254b0 70 64 61 74 65 64 20 50 72 69 6e 74 44 62 6c 2e  pdated PrintDbl.
254c0 33 20 74 6f 20 72 65 66 6c 65 63 74 20 74 68 65  3 to reflect the
254d0 20 66 61 63 74 20 74 68 61 74 20 74 68 65 0a 74   fact that the.t
254e0 63 6c 5f 70 72 65 63 69 73 69 6f 6e 20 76 61 72  cl_precision var
254f0 69 61 62 6c 65 20 69 73 20 73 74 69 6c 6c 20 75  iable is still u
25500 73 65 64 20 61 6e 64 20 74 68 61 74 20 69 74 20  sed and that it 
25510 69 73 20 6e 6f 77 20 73 68 61 72 65 64 20 62 79  is now shared by
25520 20 61 6c 6c 0a 69 6e 74 65 72 70 72 65 74 65 72   all.interpreter
25530 73 2e 20 28 42 4c 29 0a 0a 38 2f 32 35 2f 39 37  s. (BL)..8/25/97
25540 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
25550 20 61 72 72 61 79 20 61 63 63 65 73 73 20 62 75   array access bu
25560 67 20 69 6e 20 49 6c 6c 65 67 61 6c 45 78 70 72  g in IllegalExpr
25570 4f 70 65 72 61 6e 64 54 79 70 65 0a 70 72 6f 63  OperandType.proc
25580 65 64 75 72 65 20 69 6e 20 74 63 6c 45 78 65 63  edure in tclExec
25590 75 74 65 2e 63 3a 20 69 74 20 77 61 73 20 6e 6f  ute.c: it was no
255a0 74 20 70 72 6f 70 65 72 6c 79 20 73 75 70 70 6f  t properly suppo
255b0 72 74 69 6e 67 20 74 68 65 20 7c 7c 20 61 6e 64  rting the || and
255c0 20 26 26 0a 6f 70 65 72 61 74 6f 72 73 2e 20 28   &&.operators. (
255d0 42 4c 29 0a 0a 38 2f 32 37 2f 39 37 20 28 62 75  BL)..8/27/97 (bu
255e0 67 20 66 69 78 29 20 49 6e 20 63 61 73 65 73 20  g fix) In cases 
255f0 77 68 65 72 65 20 61 20 63 68 61 6e 6e 65 6c 20  where a channel 
25600 68 61 6e 64 6c 65 72 20 77 61 73 20 63 72 65 61  handler was crea
25610 74 65 64 20 77 69 74 68 20 61 6e 0a 65 6d 70 74  ted with an.empt
25620 79 20 65 76 65 6e 74 20 6d 61 73 6b 20 77 68 69  y event mask whi
25630 6c 65 20 64 61 74 61 20 77 61 73 20 73 74 69 6c  le data was stil
25640 6c 20 62 75 66 66 65 72 65 64 20 69 6e 20 74 68  l buffered in th
25650 65 20 63 68 61 6e 6e 65 6c 2c 20 74 68 65 0a 63  e channel, the.c
25660 68 61 6e 6e 65 6c 20 63 6f 64 65 20 77 6f 75 6c  hannel code woul
25670 64 20 67 65 74 20 73 74 75 63 6b 20 73 70 69 6e  d get stuck spin
25680 6e 69 6e 67 20 6f 6e 20 61 20 74 69 6d 65 72 20  ning on a timer 
25690 74 68 61 74 20 77 6f 75 6c 64 20 73 74 61 72 76  that would starv
256a0 65 0a 69 64 6c 65 20 68 61 6e 64 6c 65 72 73 2e  e.idle handlers.
256b0 20 20 54 68 69 73 20 6d 6f 73 74 6c 79 20 68 61    This mostly ha
256c0 70 70 65 6e 65 64 20 69 6e 20 54 6b 20 77 68 65  ppened in Tk whe
256d0 6e 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 73  n reading from s
256e0 74 64 69 6e 2e 20 28 53 53 29 0a 0a 39 2f 34 2f  tdin. (SS)..9/4/
256f0 39 37 20 28 62 75 67 20 66 69 78 29 20 53 6c 61  97 (bug fix) Sla
25700 76 65 20 69 6e 74 65 72 70 73 20 6e 6f 77 20 69  ve interps now i
25710 6e 68 65 72 69 74 20 74 68 65 20 6d 61 78 69 6d  nherit the maxim
25720 75 6d 20 72 65 63 75 72 73 69 6f 6e 20 6c 69 6d  um recursion lim
25730 69 74 0a 6f 66 20 74 68 65 69 72 20 70 61 72 65  it.of their pare
25740 6e 74 20 69 6e 73 74 65 61 64 20 6f 66 20 73 74  nt instead of st
25750 61 72 74 69 6e 67 20 62 61 63 6b 20 61 74 20 74  arting back at t
25760 68 65 20 64 65 66 61 75 6c 74 2e 20 7b 6e 62 3a  he default. {nb:
25770 20 74 68 69 73 20 73 74 69 6c 6c 0a 64 6f 65 73   this still.does
25780 20 6e 6f 74 20 70 72 65 76 65 6e 74 20 73 74 61   not prevent sta
25790 63 6b 20 6f 76 65 72 66 6c 6f 77 20 62 79 20 6d  ck overflow by m
257a0 75 6c 74 69 2d 69 6e 74 65 72 70 73 20 72 65 63  ulti-interps rec
257b0 75 72 73 69 6f 6e 20 6f 72 20 61 6c 69 61 73 69  ursion or aliasi
257c0 6e 67 7d 20 28 44 4c 29 0a 0a 39 2f 31 31 2f 39  ng} (DL)..9/11/9
257d0 37 20 28 62 75 67 20 66 69 78 29 20 41 6e 20 75  7 (bug fix) An u
257e0 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20 76 61 72  ninitialized var
257f0 69 61 62 6c 65 20 69 6e 20 54 63 6c 5f 57 61 69  iable in Tcl_Wai
25800 74 50 69 64 20 63 61 75 73 65 64 0a 70 69 70 65  tPid caused.pipe
25810 73 20 74 6f 20 66 61 69 6c 20 74 6f 20 72 65 70  s to fail to rep
25820 6f 72 74 20 65 6f 66 20 70 72 6f 70 65 72 6c 79  ort eof properly
25830 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73 2e 20   under Windows. 
25840 28 53 53 29 0a 0a 39 2f 31 32 2f 39 37 20 28 62  (SS)..9/12/97 (b
25850 75 67 20 66 69 78 29 20 22 65 78 65 63 22 20 77  ug fix) "exec" w
25860 61 73 20 6d 69 73 69 64 65 6e 74 69 66 79 69 6e  as misidentifyin
25870 67 20 73 6f 6d 65 20 44 4f 53 20 65 78 65 63 75  g some DOS execu
25880 74 61 62 6c 65 73 20 61 73 20 6e 6f 74 20 0a 65  tables as not .e
25890 78 65 63 75 74 61 62 6c 65 2e 20 28 43 43 53 29  xecutable. (CCS)
258a0 0a 0a 39 2f 31 34 2f 39 37 20 28 62 75 67 20 66  ..9/14/97 (bug f
258b0 69 78 29 20 57 61 73 20 75 73 69 6e 67 20 74 68  ix) Was using th
258c0 65 20 77 72 6f 6e 67 20 73 74 72 75 63 74 75 72  e wrong structur
258d0 65 20 69 6e 20 73 69 7a 65 6f 66 20 6f 70 65 72  e in sizeof oper
258e0 61 74 69 6f 6e 20 69 6e 0a 74 63 6c 55 6e 69 78  ation in.tclUnix
258f0 43 68 61 6e 2e 63 2e 20 28 4a 4c 29 0a 0a 39 2f  Chan.c. (JL)..9/
25900 31 35 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  15/97 (bug fix) 
25910 46 69 78 65 64 20 6e 6f 74 69 66 69 65 72 20 74  Fixed notifier t
25920 6f 20 62 72 65 61 6b 20 6f 75 74 20 6f 66 20 64  o break out of d
25930 6f 2d 6f 6e 65 2d 65 76 65 6e 74 20 6c 6f 6f 70  o-one-event loop
25940 20 69 66 0a 54 63 6c 5f 57 61 69 74 46 6f 72 45   if.Tcl_WaitForE
25950 76 65 6e 74 20 72 65 74 75 72 6e 73 20 31 2c 20  vent returns 1, 
25960 73 6f 20 74 68 61 74 20 63 61 6c 6c 65 72 73 20  so that callers 
25970 6f 66 20 54 63 6c 5f 44 6f 4f 6e 65 45 76 65 6e  of Tcl_DoOneEven
25980 74 20 77 69 6c 6c 20 67 65 74 0a 61 20 63 68 61  t will get.a cha
25990 6e 63 65 20 74 6f 20 63 68 65 63 6b 20 77 68 65  nce to check whe
259a0 74 68 65 72 20 74 68 65 20 65 76 65 6e 74 20 6a  ther the event j
259b0 75 73 74 20 68 61 6e 64 6c 65 64 20 69 73 20 73  ust handled is s
259c0 69 67 6e 69 66 69 63 61 6e 74 2e 20 54 68 69 73  ignificant. This
259d0 0a 61 66 66 65 63 74 65 64 20 6d 61 69 6e 6c 79  .affected mainly
259e0 20 72 65 63 75 72 73 69 76 65 20 63 61 6c 6c 73   recursive calls
259f0 20 74 6f 20 54 63 6c 5f 56 57 61 69 74 43 6d 64   to Tcl_VWaitCmd
25a00 3b 20 74 68 65 73 65 20 64 69 64 20 6e 6f 74 20  ; these did not 
25a10 67 65 74 20 61 0a 63 68 61 6e 63 65 20 74 6f 20  get a.chance to 
25a20 6e 6f 74 69 63 65 20 74 68 61 74 20 74 68 65 20  notice that the 
25a30 76 61 72 69 61 62 6c 65 20 74 68 65 79 20 77 65  variable they we
25a40 72 65 20 77 61 69 74 69 6e 67 20 66 6f 72 20 68  re waiting for h
25a50 61 73 20 62 65 65 6e 20 73 65 74 0a 61 6e 64 20  as been set.and 
25a60 74 68 75 73 20 74 68 65 79 20 64 69 64 6e 27 74  thus they didn't
25a70 20 74 65 72 6d 69 6e 61 74 65 20 74 68 65 20 76   terminate the v
25a80 77 61 69 74 2e 20 28 4a 4c 2c 20 44 4c 2c 20 53  wait. (JL, DL, S
25a90 53 29 0a 0a 39 2f 31 35 2f 39 37 20 28 62 75 67  S)..9/15/97 (bug
25aa0 20 66 69 78 29 20 41 6c 69 67 6e 6d 65 6e 74 20   fix) Alignment 
25ab0 70 72 6f 62 6c 65 6d 73 20 69 6e 20 22 62 69 6e  problems in "bin
25ac0 61 72 79 20 66 6f 72 6d 61 74 22 20 77 6f 75 6c  ary format" woul
25ad0 64 20 63 61 75 73 65 20 61 0a 63 72 61 73 68 20  d cause a.crash 
25ae0 6f 6e 20 73 6f 6d 65 20 70 6c 61 74 66 6f 72 6d  on some platform
25af0 73 20 77 68 65 6e 20 66 6f 72 6d 61 74 74 69 6e  s when formattin
25b00 67 20 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74  g floating point
25b10 20 6e 75 6d 62 65 72 73 2e 20 28 53 53 29 0a 0a   numbers. (SS)..
25b20 39 2f 31 35 2f 39 37 20 28 62 75 67 20 66 69 78  9/15/97 (bug fix
25b30 29 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 4d  ) Fixed bug in M
25b40 61 63 69 6e 74 6f 73 68 20 73 6f 63 6b 65 74 20  acintosh socket 
25b50 63 6f 64 65 2e 20 20 4e 6f 77 20 70 61 73 73 65  code.  Now passe
25b60 73 20 61 6c 6c 0a 74 65 73 74 73 20 69 6e 20 73  s all.tests in s
25b70 6f 63 6b 65 74 2e 74 65 73 74 20 74 68 61 74 20  ocket.test that 
25b80 61 72 65 20 6e 6f 74 20 70 6c 61 74 66 6f 72 6d  are not platform
25b90 20 73 70 65 63 69 66 69 63 2e 20 28 54 68 61 6e   specific. (Than
25ba0 6b 73 20 74 6f 20 4d 61 72 6b 0a 52 6f 73 65 6d  ks to Mark.Rosem
25bb0 61 6e 20 66 6f 72 20 74 68 65 20 70 6f 69 6e 74  an for the point
25bc0 65 72 20 6f 6e 20 74 68 65 20 66 69 78 2e 29 20  er on the fix.) 
25bd0 20 28 52 4a 29 0a 0a 39 2f 31 38 2f 39 37 20 28   (RJ)..9/18/97 (
25be0 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
25bf0 75 67 20 2d 64 69 63 74 69 6f 6e 61 72 79 20 6f  ug -dictionary o
25c00 70 74 69 6f 6e 20 6f 66 20 6c 73 6f 72 74 20 74  ption of lsort t
25c10 68 61 74 20 63 6f 75 6c 64 0a 63 61 75 73 65 20  hat could.cause 
25c20 74 68 65 20 63 6f 6d 70 61 72 65 20 66 75 6e 63  the compare func
25c30 74 69 6f 6e 20 74 6f 20 72 75 6e 20 6f 66 66 20  tion to run off 
25c40 74 68 65 20 65 6e 64 20 6f 66 20 61 6e 20 61 72  the end of an ar
25c50 72 61 79 20 69 66 20 74 68 65 0a 6e 75 6d 62 65  ray if the.numbe
25c60 72 20 6f 6e 6c 79 20 63 6f 6e 74 61 69 6e 65 64  r only contained
25c70 20 30 27 73 2e 20 28 54 68 61 6e 6b 73 20 74 6f   0's. (Thanks to
25c80 20 47 72 65 67 20 43 6f 75 63 68 20 66 6f 72 20   Greg Couch for 
25c90 74 68 65 20 72 65 70 6f 72 74 2e 29 20 28 52 4a  the report.) (RJ
25ca0 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75 67 20  )..9/18/97 (bug 
25cb0 66 69 78 29 20 54 63 6c 46 69 6e 61 6c 69 7a 65  fix) TclFinalize
25cc0 45 6e 76 69 72 6f 6e 6d 65 6e 74 20 77 61 73 20  Environment was 
25cd0 6e 6f 74 20 63 6c 65 61 6e 69 6e 67 20 75 70 20  not cleaning up 
25ce0 0a 70 72 6f 70 65 72 6c 79 2e 20 28 44 4c 2c 20  .properly. (DL, 
25cf0 4a 49 29 0a 0a 39 2f 31 38 2f 39 37 20 28 62 75  JI)..9/18/97 (bu
25d00 67 20 66 69 78 29 20 46 69 78 65 64 20 6c 6f 6e  g fix) Fixed lon
25d10 67 2d 73 74 61 6e 64 69 6e 67 20 62 75 67 20 77  g-standing bug w
25d20 68 65 72 65 20 61 6e 20 22 61 72 72 61 79 20 67  here an "array g
25d30 65 74 22 20 63 6f 6d 6d 61 6e 64 0a 64 69 64 20  et" command.did 
25d40 6e 6f 74 20 74 72 69 67 67 65 72 20 74 72 61 63  not trigger trac
25d50 65 73 20 6f 6e 20 74 68 65 20 61 72 72 61 79 20  es on the array 
25d60 6f 72 20 69 74 73 20 65 6c 65 6d 65 6e 74 73 2e  or its elements.
25d70 20 28 42 4c 29 0a 0a 39 2f 31 38 2f 39 37 20 28   (BL)..9/18/97 (
25d80 62 75 67 20 66 69 78 65 73 29 20 46 69 78 65 64  bug fixes) Fixed
25d90 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 2d 72 65 6c   compilation-rel
25da0 61 74 65 64 20 62 75 67 73 3a 0a 20 20 20 20 2d  ated bugs:.    -
25db0 20 46 69 78 65 64 20 65 72 72 6f 72 49 6e 66 6f   Fixed errorInfo
25dc0 20 74 72 61 63 65 62 61 63 6b 20 69 6e 66 6f 72   traceback infor
25dd0 6d 61 74 69 6f 6e 20 66 6f 72 20 74 6f 70 6c 65  mation for tople
25de0 76 65 6c 20 63 6f 6f 6d 61 6e 64 73 20 74 68 61  vel coomands tha
25df0 74 0a 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 20  t.      contain 
25e00 6e 65 73 74 65 64 20 63 6f 6d 6d 61 6e 64 73 2e  nested commands.
25e10 0a 20 20 20 20 2d 20 49 6e 20 74 68 65 20 65 78  .    - In the ex
25e20 70 72 20 63 6f 6d 6d 61 6e 64 2c 20 26 26 20 61  pr command, && a
25e30 6e 64 20 7c 7c 20 6e 6f 77 20 61 63 63 65 70 74  nd || now accept
25e40 20 62 6f 6f 6c 65 61 6e 20 6f 70 65 72 61 6e 64   boolean operand
25e50 73 20 61 73 20 77 65 6c 6c 0a 20 20 20 20 20 20  s as well.      
25e60 61 73 20 6e 75 6d 65 72 69 63 20 6f 6e 65 73 2e  as numeric ones.
25e70 20 28 42 4c 29 0a 0a 39 2f 32 32 2f 39 37 20 28   (BL)..9/22/97 (
25e80 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62  bug fix) Fixed b
25e90 75 67 20 74 68 61 74 20 70 72 65 76 65 6e 74 65  ug that prevente
25ea0 64 20 74 72 61 6e 73 6c 61 74 69 6f 6e 20 6d 6f  d translation mo
25eb0 64 65 73 20 66 72 6f 6d 20 62 65 69 6e 67 0a 73  des from being.s
25ec0 65 74 20 69 6e 64 65 70 65 6e 64 65 6e 74 6c 79  et independently
25ed0 20 66 6f 72 20 69 6e 70 75 74 20 61 6e 64 20 6f   for input and o
25ee0 75 74 70 75 74 20 6f 6e 20 73 6f 63 6b 65 74 73  utput on sockets
25ef0 20 69 66 20 69 6e 70 75 74 20 77 61 73 20 22 61   if input was "a
25f00 75 74 6f 22 2e 20 28 4a 4c 29 0a 0a 39 2f 32 34  uto". (JL)..9/24
25f10 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63  /97 (bug fix) Tc
25f20 6c 5f 45 76 61 6c 46 69 6c 65 28 33 29 20 61 6e  l_EvalFile(3) an
25f30 64 20 74 68 75 73 20 73 6f 75 72 63 65 28 6e 29  d thus source(n)
25f40 20 6e 6f 77 20 77 6f 72 6b 73 20 66 69 6e 65 20   now works fine 
25f50 6f 6e 0a 66 69 6c 65 73 20 63 6f 6e 74 61 69 6e  on.files contain
25f60 69 6e 67 20 4e 55 4c 20 63 68 61 72 73 2e 20 28  ing NUL chars. (
25f70 44 4c 29 0a 0a 39 2f 32 36 2f 39 37 20 28 62 75  DL)..9/26/97 (bu
25f80 67 20 66 69 78 29 20 46 69 78 65 64 20 75 73 65  g fix) Fixed use
25f90 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65   of uninitialize
25fa0 64 20 6d 65 6d 6f 72 79 20 69 6e 20 74 68 65 20  d memory in the 
25fb0 65 6e 76 69 72 6f 6e 20 61 72 72 61 79 0a 74 68  environ array.th
25fc0 61 74 20 6c 61 74 65 72 20 63 6f 75 6c 64 20 63  at later could c
25fd0 61 75 73 65 20 72 61 6e 64 6f 6d 20 63 6f 72 65  ause random core
25fe0 20 64 75 6d 70 73 2e 20 41 70 70 6c 69 65 73 20   dumps. Applies 
25ff0 74 6f 20 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73  to all platforms
26000 2e 20 28 4a 4c 29 0a 0a 39 2f 32 36 2f 39 37 20  . (JL)..9/26/97 
26010 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
26020 75 73 65 20 6f 66 20 75 6e 69 6e 69 74 69 61 6c  use of uninitial
26030 69 7a 65 64 20 6d 65 6d 6f 72 79 20 69 6e 20 73  ized memory in s
26040 6f 63 6b 65 74 20 61 64 64 72 65 73 73 20 64 61  ocket address da
26050 74 61 0a 73 74 72 75 63 74 75 72 65 20 75 6e 64  ta.structure und
26060 65 72 20 73 6f 6d 65 20 63 69 72 63 75 6d 73 74  er some circumst
26070 61 6e 63 65 73 2e 20 54 68 69 73 20 63 6f 75 6c  ances. This coul
26080 64 20 63 61 75 73 65 20 72 61 6e 64 6f 6d 20 63  d cause random c
26090 6f 72 65 20 64 75 6d 70 73 2e 0a 54 68 69 73 20  ore dumps..This 
260a0 61 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20  applies only to 
260b0 55 6e 69 78 2e 20 28 4a 4c 29 0a 0a 39 2f 32 36  Unix. (JL)..9/26
260c0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4f 70  /97 (bug fix) Op
260d0 65 6e 69 6e 67 20 66 69 6c 65 73 20 6f 6e 20 50  ening files on P
260e0 43 2d 4e 46 53 20 76 6f 6c 75 6d 65 73 20 77 6f  C-NFS volumes wo
260f0 75 6c 64 20 63 61 75 73 65 20 61 20 68 61 6e 67  uld cause a hang
26100 0a 75 6e 74 69 6c 20 74 68 65 20 73 79 73 74 65  .until the syste
26110 6d 20 74 69 6d 65 64 20 61 66 74 65 72 20 74 68  m timed after th
26120 65 20 66 69 6c 65 20 77 61 73 20 63 6c 6f 73 65  e file was close
26130 64 2e 20 28 53 53 29 0a 0a 31 30 2f 36 2f 39 37  d. (SS)..10/6/97
26140 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 6a   (bug fix) The j
26150 6f 69 6e 28 6e 29 20 63 6f 6d 6d 61 6e 64 2c 20  oin(n) command, 
26160 74 68 6f 75 67 68 20 6f 62 6a 65 63 74 69 66 69  though objectifi
26170 65 64 2c 20 77 61 73 20 6c 6f 6f 73 69 6e 67 0a  ed, was loosing.
26180 4e 55 4c 73 20 69 6e 20 74 68 65 20 6a 6f 69 6e  NULs in the join
26190 53 74 72 69 6e 67 20 61 6e 64 20 69 6e 20 6c 69  String and in li
261a0 73 74 20 65 6c 65 6d 65 6e 74 73 20 61 66 74 65  st elements afte
261b0 72 20 74 68 65 20 32 6e 64 20 6f 6e 65 2e 0a 4e  r the 2nd one..N
261c0 6f 77 20 79 6f 75 20 63 61 6e 20 22 6a 6f 69 6e  ow you can "join
261d0 20 24 6c 69 73 74 20 5c 30 22 20 66 6f 72 20 69   $list \0" for i
261e0 6e 73 74 61 6e 63 65 2e 20 28 44 4c 29 0a 0a 31  nstance. (DL)..1
261f0 30 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  0/9/97 (bug fix)
26200 20 55 6e 64 65 72 20 77 69 6e 64 6f 77 73 2c 20   Under windows, 
26210 69 66 20 65 6e 76 28 54 4d 50 29 20 6f 72 20 65  if env(TMP) or e
26220 6e 76 28 54 45 4d 50 29 20 72 65 66 65 72 72 65  nv(TEMP) referre
26230 64 20 74 6f 20 61 0a 6e 6f 6e 2d 65 78 69 73 74  d to a.non-exist
26240 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 65  ent directory, e
26250 78 65 63 20 77 6f 75 6c 64 20 66 61 69 6c 20 77  xec would fail w
26260 68 65 6e 20 74 72 79 69 6e 67 20 74 6f 20 63 72  hen trying to cr
26270 65 61 74 65 20 69 74 73 20 74 65 6d 70 6f 72 61  eate its tempora
26280 72 79 0a 66 69 6c 65 73 2e 20 28 43 43 53 29 0a  ry.files. (CCS).
26290 0a 31 30 2f 39 2f 39 37 20 28 62 75 67 20 66 69  .10/9/97 (bug fi
262a0 78 29 20 55 6e 64 65 72 20 6d 61 63 20 61 6e 64  x) Under mac and
262b0 20 77 69 6e 64 6f 77 73 2c 20 22 69 6e 66 6f 20   windows, "info 
262c0 68 6f 73 74 6e 61 6d 65 22 20 77 6f 75 6c 64 20  hostname" would 
262d0 63 72 61 73 68 20 69 66 20 0a 73 6f 63 6b 65 74  crash if .socket
262e0 73 20 77 65 72 65 20 69 6e 73 74 61 6c 6c 65 64  s were installed
262f0 20 62 75 74 20 74 68 65 20 68 6f 73 74 6e 61 6d   but the hostnam
26300 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64  e could not be d
26310 65 74 65 72 6d 69 6e 65 64 20 61 6e 79 68 6f 77  etermined anyhow
26320 2e 0a 54 63 6c 5f 47 65 74 48 6f 73 74 4e 61 6d  ..Tcl_GetHostNam
26330 65 28 29 20 77 61 73 20 72 65 74 75 72 6e 69 6e  e() was returnin
26340 67 20 4e 55 4c 4c 20 77 68 65 6e 20 69 74 20 73  g NULL when it s
26350 68 6f 75 6c 64 20 68 61 76 65 20 62 65 65 6e 20  hould have been 
26360 72 65 74 75 72 6e 69 6e 67 20 0a 61 6e 20 65 6d  returning .an em
26370 70 74 79 20 73 74 72 69 6e 67 2e 20 28 43 43 53  pty string. (CCS
26380 29 0a 0a 31 30 2f 31 30 2f 39 37 20 28 62 75 67  )..10/10/97 (bug
26390 20 66 69 78 29 20 22 66 69 6c 65 20 61 74 74 72   fix) "file attr
263a0 69 62 75 74 65 20 2f 22 20 72 65 74 75 72 6e 65  ibute /" returne
263b0 64 20 65 72 72 6f 72 20 6f 6e 20 77 69 6e 64 6f  d error on windo
263c0 77 73 2e 20 28 43 43 53 29 0a 0a 31 30 2f 31 30  ws. (CCS)..10/10
263d0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46 69  /97 (bug fix) Fi
263e0 78 65 64 20 74 68 65 20 61 75 74 6f 5f 6c 6f 61  xed the auto_loa
263f0 64 20 70 72 6f 63 65 64 75 72 65 20 74 6f 20 68  d procedure to h
26400 61 6e 64 6c 65 20 70 72 6f 63 65 64 75 72 65 73  andle procedures
26410 0a 64 65 66 69 6e 65 64 20 69 6e 20 6e 61 6d 65  .defined in name
26420 73 70 61 63 65 73 20 62 65 74 74 65 72 2e 20 20  spaces better.  
26430 41 6c 73 6f 20 66 69 78 65 64 20 70 67 6b 5f 6d  Also fixed pgk_m
26440 6b 49 6e 64 65 78 20 73 6f 20 69 74 20 73 65 65  kIndex so it see
26450 73 20 70 72 6f 63 65 64 75 72 65 73 0a 64 65 66  s procedures.def
26460 69 6e 65 64 20 69 6e 20 6e 65 73 74 65 64 20 6e  ined in nested n
26470 61 6d 65 73 70 61 63 65 73 2e 20 20 49 6e 64 65  amespaces.  Inde
26480 78 20 65 6e 74 72 69 65 73 20 61 72 65 20 73 74  x entries are st
26490 69 6c 6c 20 6f 6e 6c 79 20 6d 61 64 65 20 66 6f  ill only made fo
264a0 72 0a 65 78 70 6f 72 74 65 64 20 70 72 6f 63 65  r.exported proce
264b0 64 75 72 65 73 2e 20 28 42 57 29 0a 0a 31 30 2f  dures. (BW)..10/
264c0 31 33 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  13/97 (bug fix) 
264d0 4f 6e 20 75 6e 69 78 2c 20 66 6f 72 20 66 69 6c  On unix, for fil
264e0 65 73 20 77 69 74 68 20 75 6e 6b 6e 6f 77 6e 20  es with unknown 
264f0 67 72 6f 75 70 20 6f 72 20 6f 77 6e 65 72 0a 61  group or owner.a
26500 74 74 72 69 62 75 74 65 73 2c 20 71 75 65 72 79  ttributes, query
26510 69 6e 67 20 74 68 65 20 22 66 69 6c 65 20 61 74  ing the "file at
26520 74 72 69 62 75 74 65 73 22 20 77 6f 75 6c 64 20  tributes" would 
26530 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20  return an error 
26540 72 61 74 68 65 72 20 74 68 61 6e 0a 72 65 74 75  rather than.retu
26550 72 6e 69 6e 67 20 74 68 65 20 67 72 6f 75 70 27  rning the group'
26560 73 20 6f 72 20 6f 77 6e 65 72 27 73 20 69 64 20  s or owner's id 
26570 6e 75 6d 62 65 72 2c 20 61 6c 74 68 6f 75 67 68  number, although
26580 20 74 68 61 20 63 6f 6d 6d 61 6e 64 20 61 63 63   tha command acc
26590 65 70 74 73 0a 6e 75 6d 62 65 72 73 20 77 68 65  epts.numbers whe
265a0 6e 20 73 65 74 74 69 6e 67 20 74 68 65 20 66 69  n setting the fi
265b0 6c 65 27 73 20 67 72 6f 75 70 20 6f 72 20 6f 77  le's group or ow
265c0 6e 65 72 2e 20 20 28 43 43 53 29 0a 0a 31 30 2f  ner.  (CCS)..10/
265d0 32 32 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  22/97 (bug fix) 
265e0 22 66 63 6f 70 79 22 20 64 69 64 20 6e 6f 74 20  "fcopy" did not 
265f0 65 76 61 6c 20 74 68 65 20 63 61 6c 6c 62 61 63  eval the callbac
26600 6b 20 73 63 72 69 70 74 20 61 74 20 74 68 65 0a  k script at the.
26610 67 6c 6f 62 61 6c 20 73 63 6f 70 65 2e 20 28 53  global scope. (S
26620 53 29 0a 0a 31 30 2f 32 32 2f 39 37 20 28 62 75  S)..10/22/97 (bu
26630 67 20 66 69 78 29 20 46 69 78 65 64 20 74 68 65  g fix) Fixed the
26640 20 73 69 67 6e 61 74 75 72 65 20 6f 66 20 74 68   signature of th
26650 65 20 43 6f 70 79 44 6f 6e 65 20 63 61 6c 6c 62  e CopyDone callb
26660 61 63 6b 20 75 73 65 64 20 69 6e 0a 74 68 65 20  ack used in.the 
26670 68 74 74 70 20 70 61 63 6b 61 67 65 28 73 29 20  http package(s) 
26680 73 6f 20 74 68 65 79 20 63 61 6e 20 68 61 6e 64  so they can hand
26690 6c 65 20 65 72 72 6f 72 20 63 61 73 65 73 20 70  le error cases p
266a0 72 6f 70 65 72 6c 79 2e 20 28 42 57 29 0a 0a 31  roperly. (BW)..1
266b0 30 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69 78  0/28/97 (bug fix
266c0 65 73 29 20 46 69 78 65 64 20 61 20 70 72 6f 62  es) Fixed a prob
266d0 6c 65 6d 20 77 68 65 72 65 20 6c 61 70 70 65 6e  lem where lappen
266e0 64 20 77 6f 75 6c 64 20 66 72 65 65 20 74 68 65  d would free the
266f0 20 54 63 6c 20 6f 62 6a 65 63 74 0a 69 6e 20 61   Tcl object.in a
26700 20 76 61 72 69 61 62 6c 65 20 69 66 20 61 20 54   variable if a T
26710 63 6c 5f 4f 62 6a 53 65 74 56 61 72 32 20 66 61  cl_ObjSetVar2 fa
26720 69 6c 65 64 20 62 65 63 61 75 73 65 20 6f 66 20  iled because of 
26730 61 6e 20 65 72 72 6f 72 20 63 61 6c 6c 69 6e 67  an error calling
26740 20 61 20 74 72 61 63 65 0a 6f 6e 20 74 68 65 20   a trace.on the 
26750 76 61 72 69 61 62 6c 65 2e 20 28 42 4c 29 0a 0a  variable. (BL)..
26760 31 30 2f 32 38 2f 39 37 20 28 62 75 67 20 66 69  10/28/97 (bug fi
26770 78 29 20 43 68 61 6e 67 65 64 20 62 69 6e 61 72  x) Changed binar
26780 79 20 73 63 61 6e 20 74 6f 20 70 72 6f 70 65 72  y scan to proper
26790 6c 79 20 68 61 6e 64 6c 65 20 73 69 67 6e 0a 65  ly handle sign.e
267a0 78 74 65 6e 73 69 6f 6e 20 6f 66 20 69 6e 74 65  xtension of inte
267b0 67 65 72 73 20 6f 6e 20 36 34 2d 62 69 74 20 6f  gers on 64-bit o
267c0 72 20 6c 61 72 67 65 72 20 6d 61 63 68 69 6e 65  r larger machine
267d0 73 2e 20 28 53 53 29 0a 0a 31 31 2f 33 2f 39 37  s. (SS)..11/3/97
267e0 20 28 62 75 67 20 66 69 78 65 73 29 20 46 69 78   (bug fixes) Fix
267f0 65 64 20 73 65 76 65 72 61 6c 20 62 75 67 73 3a  ed several bugs:
26800 0a 20 20 20 20 2d 20 65 78 70 72 65 73 73 69 6f  .    - expressio
26810 6e 73 20 73 75 63 68 20 61 73 20 22 65 78 70 72  ns such as "expr
26820 20 28 24 78 29 22 20 6d 75 73 74 20 62 65 20 63   ($x)" must be c
26830 6f 6d 70 69 6c 65 64 20 6f 75 74 2d 6f 66 2d 6c  ompiled out-of-l
26840 69 6e 65 0a 20 20 20 20 20 20 28 63 61 6c 6c 20  ine.      (call 
26850 74 68 65 20 65 78 70 72 20 63 6f 6d 6d 61 6e 64  the expr command
26860 20 70 72 6f 63 65 64 75 72 65 20 61 74 20 72 75   procedure at ru
26870 6e 74 69 6d 65 29 20 74 6f 20 65 6e 73 75 72 65  ntime) to ensure
26880 20 74 68 65 20 63 6f 72 72 65 63 74 0a 20 20 20   the correct.   
26890 20 20 20 62 65 68 61 76 69 6f 72 20 77 68 65 6e     behavior when
268a0 20 22 24 78 22 20 69 73 20 61 6e 20 65 78 70 72   "$x" is an expr
268b0 65 73 73 69 6f 6e 20 73 75 63 68 20 61 73 20 22  ession such as "
268c0 35 2b 31 30 22 2e 0a 20 20 20 20 2d 20 22 61 72  5+10"..    - "ar
268d0 72 61 79 20 73 65 74 20 61 20 7b 7d 22 20 6e 6f  ray set a {}" no
268e0 77 20 63 72 65 61 74 65 73 20 61 20 6e 65 77 20  w creates a new 
268f0 61 72 72 61 79 20 76 61 72 20 77 69 74 68 20 61  array var with a
26900 6e 20 65 6d 70 74 79 20 61 72 72 61 79 0a 20 20  n empty array.  
26910 20 20 20 20 76 61 6c 75 65 20 69 66 20 74 68 65      value if the
26920 20 76 61 72 20 64 69 64 6e 27 74 20 61 6c 72 65   var didn't alre
26930 61 64 79 20 65 78 69 73 74 2e 0a 20 20 20 20 2d  ady exist..    -
26940 20 22 6c 72 65 70 6c 61 63 65 20 24 66 6f 6f 20   "lreplace $foo 
26950 65 6e 64 20 65 6e 64 22 20 6e 6f 20 6c 6f 6e 67  end end" no long
26960 65 72 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72  er returns an er
26970 72 6f 72 20 28 6a 75 73 74 20 61 6e 20 65 6d 70  ror (just an emp
26980 74 79 0a 20 20 20 20 20 20 6c 69 73 74 29 20 69  ty.      list) i
26990 66 20 66 6f 6f 20 69 73 20 65 6d 70 74 79 2e 0a  f foo is empty..
269a0 20 20 20 20 2d 20 75 70 76 61 72 20 77 69 6c 6c      - upvar will
269b0 20 6e 6f 20 6c 6f 6e 67 65 72 20 63 72 65 61 74   no longer creat
269c0 65 20 61 20 76 61 72 69 61 62 6c 65 20 69 6e 20  e a variable in 
269d0 61 20 6e 61 6d 65 73 70 61 63 65 20 74 68 61 74  a namespace that
269e0 20 72 65 66 65 72 73 0a 20 20 20 20 20 20 74 6f   refers.      to
269f0 20 61 20 76 61 72 69 61 62 6c 65 20 69 6e 20 61   a variable in a
26a00 20 70 72 6f 63 65 64 75 72 65 2e 0a 20 20 20 20   procedure..    
26a10 2d 20 64 65 6c 65 74 69 6e 67 20 61 20 63 6f 6d  - deleting a com
26a20 6d 61 6e 64 20 74 72 61 63 65 20 77 69 74 68 69  mand trace withi
26a30 6e 20 61 20 63 6f 6d 6d 61 6e 64 20 74 72 61 63  n a command trac
26a40 65 20 63 61 6c 6c 62 61 63 6b 20 77 6f 75 6c 64  e callback would
26a50 0a 20 20 20 20 20 20 6d 61 6b 65 20 74 68 65 20  .      make the 
26a60 63 6f 64 65 20 74 68 61 74 20 63 61 6c 6c 73 20  code that calls 
26a70 74 72 61 63 65 73 20 74 6f 20 72 65 66 65 72 65  traces to refere
26a80 6e 63 65 20 66 72 65 65 64 20 6d 65 6d 6f 72 79  nce freed memory
26a90 2e 0a 20 20 20 20 2d 20 73 69 67 6e 69 66 69 63  ..    - signific
26aa0 61 6e 74 6c 79 20 73 70 65 64 20 75 70 20 22 73  antly sped up "s
26ab0 74 72 69 6e 67 20 66 69 72 73 74 22 20 61 6e 64  tring first" and
26ac0 20 22 73 74 72 69 6e 67 20 6c 61 73 74 22 20 28   "string last" (
26ad0 66 69 78 20 66 72 6f 6d 0a 20 20 20 20 20 20 64  fix from.      d
26ae0 61 72 72 65 6c 40 67 65 6d 73 74 6f 6e 65 2e 63  [email protected]
26af0 6f 6d 29 2e 0a 20 20 20 20 2d 20 73 65 67 20 66  om)..    - seg f
26b00 61 75 6c 74 20 69 6e 20 54 63 6c 5f 4e 65 77 53  ault in Tcl_NewS
26b10 74 72 69 6e 67 4f 62 6a 28 29 20 77 68 65 6e 20  tringObj() when 
26b20 61 20 4e 55 4c 4c 20 69 73 20 70 61 73 73 65 64  a NULL is passed
26b30 20 61 73 20 74 68 65 20 62 79 74 65 0a 20 20 20   as the byte.   
26b40 20 20 20 70 6f 69 6e 74 65 72 20 61 72 67 75 6d     pointer argum
26b50 65 6e 74 20 61 6e 64 20 54 63 6c 20 69 73 20 63  ent and Tcl is c
26b60 6f 6d 70 69 6c 65 64 20 77 69 74 68 20 2d 44 54  ompiled with -DT
26b70 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 2e 0a 20 20  CL_MEM_DEBUG..  
26b80 20 20 2d 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f    - documentatio
26b90 6e 20 61 6e 64 20 65 72 72 6f 72 20 6d 73 67 20  n and error msg 
26ba0 66 69 78 65 73 2e 20 28 42 4c 29 0a 0a 31 31 2f  fixes. (BL)..11/
26bb0 33 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 46  3/97 (bug fix) F
26bc0 69 78 65 64 20 61 20 6e 75 6d 62 65 72 20 6f 66  ixed a number of
26bd0 20 49 2f 4f 20 62 75 67 73 20 72 65 6c 61 74 65   I/O bugs relate
26be0 64 20 74 6f 20 77 6f 72 64 20 73 69 7a 65 73 20  d to word sizes 
26bf0 6f 6e 0a 36 34 2d 62 69 74 20 6d 61 63 68 69 6e  on.64-bit machin
26c00 65 73 2e 20 28 53 53 29 0a 0a 31 31 2f 36 2f 39  es. (SS)..11/6/9
26c10 37 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  7 (bug fix) The 
26c20 65 78 69 74 20 63 6f 64 65 20 6f 66 20 74 68 65  exit code of the
26c30 20 66 69 72 73 74 20 70 72 6f 63 65 73 73 20 63   first process c
26c40 72 65 61 74 65 64 20 62 79 20 54 63 6c 0a 6f 6e  reated by Tcl.on
26c50 20 57 69 6e 64 6f 77 73 20 77 61 73 20 6e 6f 74   Windows was not
26c60 20 70 72 6f 70 65 72 6c 79 20 72 65 70 6f 72 74   properly report
26c70 65 64 20 64 75 65 20 74 6f 20 61 6e 20 69 6e 69  ed due to an ini
26c80 74 69 61 6c 69 7a 61 74 69 6f 6e 0a 70 72 6f 62  tialization.prob
26c90 6c 65 6d 2e 20 28 53 53 29 0a 0a 2d 2d 2d 2d 2d  lem. (SS)..-----
26ca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
26cb0 65 61 73 65 64 20 38 2e 30 70 31 2c 20 31 31 2f  eased 8.0p1, 11/
26cc0 37 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  7/97 -----------
26cd0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31 31  ------------..11
26ce0 2f 31 39 2f 39 37 20 28 62 75 67 20 66 69 78 29  /19/97 (bug fix)
26cf0 20 46 69 78 65 64 20 62 75 67 20 69 6e 20 6c 69   Fixed bug in li
26d00 6e 73 65 72 74 20 77 68 65 72 65 20 69 74 20 73  nsert where it s
26d10 6f 6d 65 74 69 6d 65 73 20 61 63 63 69 64 65 6e  ometimes acciden
26d20 74 6c 79 0a 63 6c 65 61 72 65 64 20 6f 75 74 20  tly.cleared out 
26d30 61 20 73 68 61 72 65 64 20 61 72 67 75 6d 65 6e  a shared argumen
26d40 74 20 6c 69 73 74 20 6f 62 6a 65 63 74 2e 20 28  t list object. (
26d50 42 4c 29 2e 0a 0a 31 31 2f 31 39 2f 39 37 20 28  BL)...11/19/97 (
26d60 62 75 67 20 66 69 78 29 20 41 75 74 6f 6c 6f 61  bug fix) Autoloa
26d70 64 69 6e 67 20 69 6e 20 6e 61 6d 65 73 70 61 63  ding in namespac
26d80 65 73 20 77 61 73 20 6e 6f 74 20 77 6f 72 6b 69  es was not worki
26d90 6e 67 20 70 72 6f 70 65 72 6c 79 2e 0a 61 75 74  ng properly..aut
26da0 6f 5f 6d 6b 69 6e 64 65 78 20 69 73 20 73 74 69  o_mkindex is sti
26db0 6c 6c 20 6e 6f 74 20 72 65 61 6c 6c 79 20 6e 61  ll not really na
26dc0 6d 65 73 70 61 63 65 20 61 77 61 72 65 20 62 75  mespace aware bu
26dd0 74 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 0a 63 61  t most common.ca
26de0 73 65 73 20 73 68 6f 75 6c 64 20 6e 6f 77 20 62  ses should now b
26df0 65 20 68 61 6e 64 6c 65 64 20 70 72 6f 70 65 72  e handled proper
26e00 6c 79 20 28 73 65 65 20 69 6e 69 74 2e 74 65 73  ly (see init.tes
26e10 74 29 2e 20 28 42 57 2c 20 44 4c 29 0a 0a 31 31  t). (BW, DL)..11
26e20 2f 32 30 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d  /20/97 (enhancem
26e30 65 6e 74 29 20 4d 61 64 65 20 74 68 65 20 63 68  ent) Made the ch
26e40 61 6e 67 65 73 20 72 65 71 75 69 72 65 64 20 62  anges required b
26e50 79 20 74 68 65 20 6e 65 77 20 41 70 70 6c 65 0a  y the new Apple.
26e60 55 6e 69 76 65 72 73 61 6c 20 48 65 61 64 65 72  Universal Header
26e70 73 20 56 2e 33 2e 30 2c 20 73 6f 20 74 68 61 74  s V.3.0, so that
26e80 20 54 63 6c 20 77 69 6c 6c 20 63 6f 6d 70 69 6c   Tcl will compil
26e90 65 20 77 69 74 68 20 43 57 20 50 72 6f 20 32 2e  e with CW Pro 2.
26ea0 0a 0a 31 31 2f 32 34 2f 39 37 20 28 62 75 67 20  ..11/24/97 (bug 
26eb0 66 69 78 29 20 46 69 78 65 64 20 74 65 73 74 73  fix) Fixed tests
26ec0 20 69 6e 20 63 6c 6f 63 6b 20 74 65 73 74 20 73   in clock test s
26ed0 75 69 74 65 20 74 68 61 74 20 6e 65 65 64 65 64  uite that needed
26ee0 20 74 68 65 0a 2d 67 6d 74 20 66 6c 61 67 20 73   the.-gmt flag s
26ef0 65 74 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 4a  et.  Thanks to J
26f00 61 6e 20 4e 69 6a 74 6d 61 6e 73 20 66 6f 72 20  an Nijtmans for 
26f10 72 65 70 6f 72 74 69 6e 67 20 74 68 65 20 70 72  reporting the pr
26f20 6f 62 6c 65 6d 2e 20 28 52 4a 29 0a 0a 2d 2d 2d  oblem. (RJ)..---
26f30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52  -------------- R
26f40 65 6c 65 61 73 65 64 20 38 2e 30 70 32 2c 20 31  eleased 8.0p2, 1
26f50 31 2f 32 35 2f 39 37 20 2d 2d 2d 2d 2d 2d 2d 2d  1/25/97 --------
26f60 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  ---------------.
26f70 0a 31 32 2f 33 2f 39 37 20 28 62 75 67 20 66 69  .12/3/97 (bug fi
26f80 78 2f 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20  x/optimization) 
26f90 52 65 6d 6f 76 65 64 20 75 6e 65 65 64 65 64 20  Removed uneeded 
26fa0 61 6e 64 20 70 6f 74 65 6e 74 69 61 6c 6c 79 20  and potentially 
26fb0 64 61 6e 67 65 72 6f 75 73 0a 69 6e 73 74 61 6e  dangerous.instan
26fc0 63 65 73 20 6f 66 20 64 6f 75 62 6c 65 20 65 76  ces of double ev
26fd0 61 6c 75 61 74 69 6f 6e 73 20 69 66 20 22 69 66  aluations if "if
26fe0 22 20 61 6e 64 20 22 65 78 70 72 22 20 73 74 61  " and "expr" sta
26ff0 74 65 6d 65 6e 74 73 20 66 72 6f 6d 0a 74 68 65  tements from.the
27000 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20   library files. 
27010 49 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65  It is recommende
27020 64 20 74 68 61 74 20 75 6e 6c 65 73 73 20 79 6f  d that unless yo
27030 75 20 6e 65 65 64 20 61 20 64 6f 75 62 6c 65 0a  u need a double.
27040 65 76 61 6c 75 61 74 69 6f 6e 20 79 6f 75 20 61  evaluation you a
27050 6c 77 61 79 73 20 75 73 65 20 22 65 78 70 72 20  lways use "expr 
27060 7b 2e 2e 2e 7d 22 20 69 6e 73 74 65 61 64 20 6f  {...}" instead o
27070 66 20 22 65 78 70 72 20 2e 2e 2e 22 20 61 6e 64  f "expr ..." and
27080 0a 22 69 66 20 7b 2e 2e 2e 7d 20 2e 2e 2e 22 20  ."if {...} ..." 
27090 69 6e 73 74 65 61 64 20 6f 66 20 22 69 66 20 2e  instead of "if .
270a0 2e 2e 20 2e 2e 2e 22 2e 20 49 74 20 77 69 6c 6c  .. ...". It will
270b0 20 61 6c 73 6f 20 62 65 20 66 61 73 74 65 72 0a   also be faster.
270c0 74 68 61 6e 6b 73 20 74 6f 20 74 68 65 20 62 79  thanks to the by
270d0 74 65 20 63 6f 6d 70 69 6c 65 72 2e 20 28 44 4c  te compiler. (DL
270e0 29 0a 0a 2d 2d 2d 2d 20 53 68 69 70 70 65 64 20  )..---- Shipped 
270f0 61 73 20 70 61 72 74 20 6f 66 20 74 68 65 20 70  as part of the p
27100 6c 75 67 69 6e 32 2e 30 62 35 20 61 73 20 38 2e  lugin2.0b5 as 8.
27110 30 70 32 50 6c 75 67 69 6e 31 2c 20 44 65 63 20  0p2Plugin1, Dec 
27120 38 74 68 20 39 37 20 2d 2d 2d 2d 0a 0a 31 32 2f  8th 97 ----..12/
27130 38 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 4e  8/97 (bug fix) N
27140 65 65 64 20 74 6f 20 70 72 6f 74 65 63 74 20 74  eed to protect t
27150 68 65 20 6e 65 77 6c 79 20 61 63 63 65 70 74 65  he newly accepte
27160 64 20 63 68 61 6e 6e 65 6c 20 69 6e 20 61 6e 0a  d channel in an.
27170 61 63 63 65 70 74 20 63 61 6c 6c 62 61 63 6b 20  accept callback 
27180 6f 6e 20 61 20 73 6f 63 6b 65 74 2c 20 6f 74 68  on a socket, oth
27190 65 72 77 69 73 65 20 74 68 65 20 63 61 6c 6c 62  erwise the callb
271a0 61 63 6b 20 6d 61 79 20 63 6c 6f 73 65 20 69 74  ack may close it
271b0 20 61 6e 64 0a 63 61 75 73 65 20 61 6e 20 65 72   and.cause an er
271c0 72 6f 72 2c 20 77 68 69 63 68 20 77 6f 75 6c 64  ror, which would
271d0 20 63 61 75 73 65 20 74 68 65 20 43 20 63 6f 64   cause the C cod
271e0 65 20 74 6f 20 61 74 74 65 6d 70 74 20 74 6f 20  e to attempt to 
271f0 63 6c 6f 73 65 20 74 68 65 0a 6e 6f 77 20 64 65  close the.now de
27200 6c 65 74 65 64 20 63 68 61 6e 6e 65 6c 2e 20 42  leted channel. B
27210 75 6d 70 69 6e 67 20 74 68 65 20 72 65 66 63 6f  umping the refco
27220 75 6e 74 20 61 73 73 75 72 65 73 20 74 68 61 74  unt assures that
27230 20 74 68 65 20 63 68 61 6e 6e 65 6c 20 73 74 69   the channel sti
27240 63 6b 73 0a 61 72 6f 75 6e 64 20 74 6f 20 62 65  cks.around to be
27250 20 72 65 61 6c 6c 79 20 63 6c 6f 73 65 64 20 69   really closed i
27260 6e 20 74 68 69 73 20 63 61 73 65 2e 20 28 4a 4c  n this case. (JL
27270 29 0a 0a 31 32 2f 38 2f 39 37 20 28 62 75 67 20  )..12/8/97 (bug 
27280 66 69 78 29 20 4e 65 65 64 20 74 6f 20 70 72 6f  fix) Need to pro
27290 74 65 63 74 20 74 68 65 20 63 68 61 6e 6e 65 6c  tect the channel
272a0 20 69 6e 20 61 20 66 69 6c 65 65 76 65 6e 74 20   in a fileevent 
272b0 73 6f 20 74 68 61 74 20 69 74 0a 69 73 20 6e 6f  so that it.is no
272c0 74 20 64 65 6c 65 74 65 64 20 62 65 66 6f 72 65  t deleted before
272d0 20 74 68 65 20 66 69 6c 65 65 76 65 6e 74 20 68   the fileevent h
272e0 61 6e 64 6c 65 72 20 72 65 74 75 72 6e 73 2e 20  andler returns. 
272f0 28 43 53 2c 20 4a 4c 29 0a 0a 31 32 2f 31 38 2f  (CS, JL)..12/18/
27300 39 37 20 28 62 75 67 20 66 69 78 29 20 49 6e 20  97 (bug fix) In 
27310 74 68 65 20 6f 70 74 20 61 72 67 75 6d 65 6e 74  the opt argument
27320 20 70 61 72 73 69 6e 67 20 70 61 63 6b 61 67 65   parsing package
27330 3a 20 69 66 20 74 68 65 20 64 65 73 63 72 69 70  : if the descrip
27340 74 69 6f 6e 20 0a 68 61 64 20 6f 6e 6c 79 20 66  tion .had only f
27350 6c 61 67 73 2c 20 74 68 65 20 22 74 6f 6f 20 6d  lags, the "too m
27360 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 22 20 63  any arguments" c
27370 61 73 65 20 77 61 73 20 6e 6f 74 20 64 65 74 65  ase was not dete
27380 63 74 65 64 2e 20 54 68 65 20 64 65 66 61 75 6c  cted. The defaul
27390 74 0a 76 61 6c 75 65 20 77 61 73 20 6e 6f 74 20  t.value was not 
273a0 75 73 65 64 20 66 6f 72 20 74 68 65 20 73 70 65  used for the spe
273b0 63 69 61 6c 20 22 61 72 67 73 22 20 65 6e 64 69  cial "args" endi
273c0 6e 67 20 61 72 67 75 6d 65 6e 74 2e 20 28 44 4c  ng argument. (DL
273d0 29 0a 0a 31 2f 31 35 2f 39 38 20 28 69 6d 70 72  )..1/15/98 (impr
273e0 6f 76 65 6d 65 6e 74 29 20 4d 6f 76 65 64 20 63  ovement) Moved c
273f0 6f 6d 6d 6f 6e 20 70 61 72 74 20 6f 66 20 69 6e  ommon part of in
27400 69 74 53 63 72 69 70 74 20 69 6e 20 63 6f 6d 6d  itScript in comm
27410 6f 6e 20 66 69 6c 65 2e 0a 4d 6f 76 65 64 20 77  on file..Moved w
27420 69 6e 64 6f 77 73 20 73 70 65 63 69 66 69 63 20  indows specific 
27430 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 74  initialization t
27440 6f 20 69 6e 69 74 2e 74 63 6c 20 73 6f 20 79 6f  o init.tcl so yo
27450 75 20 63 61 6e 20 69 6e 69 74 69 61 6c 69 7a 65  u can initialize
27460 0a 54 63 6c 20 69 6e 20 77 69 6e 64 6f 77 73 20  .Tcl in windows 
27470 77 69 74 68 6f 75 74 20 68 61 76 69 6e 67 20 74  without having t
27480 6f 20 63 61 6c 6c 20 54 63 6c 5f 49 6e 69 74 20  o call Tcl_Init 
27490 77 68 69 63 68 20 69 73 20 6e 6f 77 20 6f 6e 6c  which is now onl
274a0 79 0a 73 65 61 72 63 68 69 6e 67 20 66 6f 72 20  y.searching for 
274b0 69 6e 69 74 2e 74 63 6c 20 7b 62 61 63 6b 20 70  init.tcl {back p
274c0 6f 72 74 65 64 20 66 72 6f 6d 20 38 2e 31 7d 2e  orted from 8.1}.
274d0 20 28 44 4c 29 0a 0a 2d 2d 2d 2d 20 53 68 69 70   (DL)..---- Ship
274e0 70 65 64 20 61 73 20 70 61 72 74 20 6f 66 20 74  ped as part of t
274f0 68 65 20 70 6c 75 67 69 6e 20 61 73 20 38 2e 30  he plugin as 8.0
27500 70 32 50 6c 75 67 69 6e 32 2c 20 4a 61 6e 20 31  p2Plugin2, Jan 1
27510 35 74 68 20 39 38 20 2d 2d 2d 2d 0a 0a 35 2f 32  5th 98 ----..5/2
27520 37 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 57  7/98 (bug fix) W
27530 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64 72  indows socket dr
27540 69 76 65 72 20 64 69 64 20 6e 6f 74 20 6e 6f 74  iver did not not
27550 69 63 65 20 6e 65 77 20 64 61 74 61 20 61 72 72  ice new data arr
27560 69 76 69 6e 67 0a 6f 6e 20 6e 6f 6e 62 6c 6f 63  iving.on nonbloc
27570 6b 69 6e 67 20 73 6f 63 6b 65 74 73 20 75 6e 74  king sockets unt
27580 69 6c 20 74 68 65 20 65 76 65 6e 74 20 6c 6f 6f  il the event loo
27590 70 20 77 61 73 20 65 6e 74 65 72 65 64 2e 20 28  p was entered. (
275a0 53 53 29 0a 0a 35 2f 32 37 2f 39 38 20 28 62 75  SS)..5/27/98 (bu
275b0 67 20 66 69 78 29 20 57 69 6e 64 6f 77 73 20 73  g fix) Windows s
275c0 6f 63 6b 65 74 20 64 72 69 76 65 72 20 75 73 65  ocket driver use
275d0 64 20 46 49 4f 4e 52 45 41 44 2c 20 77 68 69 63  d FIONREAD, whic
275e0 68 20 69 73 20 6e 6f 74 0a 73 75 70 70 6f 72 74  h is not.support
275f0 65 64 20 63 6f 72 72 65 63 74 6c 79 20 62 79 20  ed correctly by 
27600 57 69 6e 53 6f 63 6b 2e 20 28 53 53 29 0a 0a 36  WinSock. (SS)..6
27610 2f 39 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  /9/98 (bug fix) 
27620 47 65 6e 65 72 69 63 20 63 68 61 6e 6e 65 6c 20  Generic channel 
27630 63 6f 64 65 20 66 61 69 6c 65 64 20 74 6f 20 72  code failed to r
27640 65 70 6f 72 74 20 72 65 61 64 61 62 6c 65 20 66  eport readable f
27650 69 6c 65 0a 65 76 65 6e 74 73 20 6f 6e 20 62 75  ile.events on bu
27660 66 66 65 72 65 64 20 64 61 74 61 20 74 68 61 74  ffered data that
27670 20 77 61 73 20 6c 65 66 74 20 62 65 68 69 6e 64   was left behind
27680 20 62 79 20 61 20 67 65 74 73 20 6f 72 20 72 65   by a gets or re
27690 61 64 20 74 68 61 74 0a 64 69 64 20 6e 6f 74 20  ad that.did not 
276a0 63 6f 6e 73 75 6d 65 20 61 6c 6c 20 61 76 61 69  consume all avai
276b0 6c 61 62 6c 65 20 64 61 74 61 2e 20 28 53 53 29  lable data. (SS)
276c0 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75 67 20 66  ..6/18/98 (bug f
276d0 69 78 29 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20  ix) Compilation 
276e0 6f 66 20 6c 6f 6f 70 20 65 78 70 72 65 73 73 69  of loop expressi
276f0 6f 6e 73 20 77 61 73 20 74 6f 6f 20 61 67 67 72  ons was too aggr
27700 65 73 73 69 76 65 0a 61 6e 64 20 69 6e 63 6f 72  essive.and incor
27710 72 65 63 74 6c 79 20 69 6e 6c 69 6e 65 64 20 6e  rectly inlined n
27720 6f 6e 2d 6c 69 74 65 72 61 6c 20 65 78 70 72 65  on-literal expre
27730 73 73 69 6f 6e 73 2e 20 28 53 53 29 0a 0a 36 2f  ssions. (SS)..6/
27740 31 38 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  18/98 (bug fix) 
27750 22 69 6e 66 6f 20 76 61 72 22 20 61 6e 64 20 22  "info var" and "
27760 69 6e 66 6f 20 6c 6f 63 61 6c 73 22 20 69 6e 63  info locals" inc
27770 6f 72 72 65 63 74 6c 79 20 72 65 70 6f 72 74 65  orrectly reporte
27780 64 0a 74 68 65 20 65 78 69 73 74 65 6e 63 65 20  d.the existence 
27790 6f 66 20 63 6f 6d 70 69 6c 65 72 20 74 65 6d 70  of compiler temp
277a0 6f 72 61 72 79 20 76 61 72 69 61 62 6c 65 73 2e  orary variables.
277b0 20 28 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28   (SS)..6/18/98 (
277c0 62 75 67 20 66 69 78 29 20 44 69 63 74 69 6f 6e  bug fix) Diction
277d0 61 72 79 20 73 6f 72 74 69 6e 67 20 75 73 65 64  ary sorting used
277e0 20 73 69 67 6e 65 64 20 63 68 61 72 61 63 74 65   signed characte
277f0 72 0a 63 6f 6d 70 61 72 69 73 6f 6e 73 2e 20 28  r.comparisons. (
27800 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62 75  SS)..6/18/98 (bu
27810 67 20 66 69 78 29 20 43 6f 6d 70 69 6c 65 20 70  g fix) Compile p
27820 72 6f 63 73 20 63 6f 72 72 75 70 74 65 64 20 74  rocs corrupted t
27830 68 65 20 65 78 63 65 70 74 69 6f 6e 20 73 74 61  he exception sta
27840 63 6b 20 69 6e 20 73 6f 6d 65 0a 63 61 73 65 73  ck in some.cases
27850 2e 20 28 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20  . (SS)..6/18/98 
27860 28 62 75 67 20 66 69 78 29 20 41 72 72 61 79 20  (bug fix) Array 
27870 73 65 74 20 68 61 64 20 65 72 72 61 74 69 63 20  set had erratic 
27880 62 65 68 61 76 69 6f 72 20 77 68 65 6e 20 69 6e  behavior when in
27890 69 74 69 61 6c 69 7a 69 6e 67 20 61 0a 76 61 72  itializing a.var
278a0 69 61 62 6c 65 20 66 72 6f 6d 20 61 6e 20 65 6d  iable from an em
278b0 70 74 79 20 76 61 6c 75 65 20 6c 69 73 74 2e 20  pty value list. 
278c0 28 53 53 29 0a 0a 36 2f 31 38 2f 39 38 20 28 62  (SS)..6/18/98 (b
278d0 75 67 20 66 69 78 29 20 54 68 65 20 57 69 6e 64  ug fix) The Wind
278e0 6f 77 73 20 72 65 67 69 73 74 72 79 20 70 61 63  ows registry pac
278f0 6b 61 67 65 20 68 61 64 20 61 20 62 61 64 20 62  kage had a bad b
27900 6f 75 6e 64 73 20 63 68 65 63 6b 0a 74 68 61 74  ounds check.that
27910 20 63 6f 75 6c 64 20 6c 65 61 64 20 74 6f 20 61   could lead to a
27920 20 63 72 61 73 68 2e 20 28 53 53 29 0a 0a 36 2f   crash. (SS)..6/
27930 31 38 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  18/98 (bug fix) 
27940 54 68 65 20 66 6f 72 65 61 63 68 20 63 6f 6d 70  The foreach comp
27950 69 6c 65 20 70 72 6f 63 20 64 69 64 20 6e 6f 74  ile proc did not
27960 20 63 6f 72 72 65 63 74 6c 79 20 68 61 6e 64 6c   correctly handl
27970 65 0a 6e 6f 6e 2d 6c 6f 63 61 6c 20 76 61 72 69  e.non-local vari
27980 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65 73 2e  able references.
27990 20 28 53 53 29 0a 0a 36 2f 32 35 2f 39 38 20 28   (SS)..6/25/98 (
279a0 6e 65 77 20 66 65 61 74 75 72 65 73 29 20 41 64  new features) Ad
279b0 64 65 64 20 6e 61 6d 65 20 72 65 73 6f 6c 75 74  ded name resolut
279c0 69 6f 6e 20 68 6f 6f 6b 73 20 74 6f 20 73 75 70  ion hooks to sup
279d0 70 6f 72 74 20 5b 69 6e 63 72 20 54 63 6c 5d 2e  port [incr Tcl].
279e0 0a 54 68 65 72 65 20 61 72 65 20 6e 65 77 20 69  .There are new i
279f0 6e 74 65 72 6e 61 6c 20 54 63 6c 5f 2a 52 65 73  nternal Tcl_*Res
27a00 6f 6c 76 65 72 2a 20 41 50 49 73 20 74 6f 20 61  olver* APIs to a
27a10 64 64 2c 20 71 75 65 72 79 20 61 6e 64 20 72 65  dd, query and re
27a20 6d 6f 76 65 20 74 68 65 20 68 6f 6f 6b 73 2e 20  move the hooks. 
27a30 0a 57 69 74 68 20 74 68 69 73 20 63 68 61 6e 67  .With this chang
27a40 65 73 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20  es it should be 
27a50 70 6f 73 73 69 62 6c 65 20 74 6f 20 64 79 6e 61  possible to dyna
27a60 6d 69 63 61 6c 6c 79 20 6c 6f 61 64 20 5b 69 6e  mically load [in
27a70 63 72 20 54 63 6c 5d 0a 61 73 20 61 6e 20 65 78  cr Tcl].as an ex
27a80 74 65 6e 73 69 6f 6e 2e 20 28 4d 4d 29 0a 0a 37  tension. (MM)..7
27a90 2f 31 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /1/97 (bug fix) 
27aa0 54 68 65 20 63 6f 6d 6d 61 6e 64 73 20 22 69 6e  The commands "in
27ab0 66 6f 20 61 72 67 73 2c 20 62 6f 64 79 2c 20 64  fo args, body, d
27ac0 65 66 61 75 6c 74 2c 20 70 72 6f 63 73 22 20 64  efault, procs" d
27ad0 69 64 0a 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79  id.not correctly
27ae0 20 68 61 6e 64 6c 65 20 69 6d 70 6f 72 74 65 64   handle imported
27af0 20 70 72 6f 63 65 64 75 72 65 73 2e 20 28 52 4a   procedures. (RJ
27b00 29 0a 0a 37 2f 36 2f 39 38 20 28 69 6d 70 72 6f  )..7/6/98 (impro
27b10 76 65 6d 65 6e 74 29 20 70 6b 67 5f 6d 6b 49 6e  vement) pkg_mkIn
27b20 64 65 78 20 6e 6f 77 20 69 6d 70 6c 65 6d 65 6e  dex now implemen
27b30 74 73 20 74 68 65 20 22 70 61 63 6b 61 67 65 20  ts the "package 
27b40 72 65 71 75 69 72 65 22 0a 63 6f 6d 6d 61 6e 64  require".command
27b50 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69 74  .  This makes it
27b60 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 63 72 65   possible to cre
27b70 61 74 65 20 69 6e 64 65 78 20 66 69 6c 65 73 20  ate index files 
27b80 66 6f 72 20 70 61 63 6b 61 67 65 73 0a 74 68 61  for packages.tha
27b90 74 20 72 65 71 75 69 72 65 20 61 6e 6f 74 68 65  t require anothe
27ba0 72 20 70 61 63 6b 61 67 65 20 61 6e 64 20 74 68  r package and th
27bb0 65 6e 20 65 78 65 63 75 74 65 20 63 6f 64 65 20  en execute code 
27bc0 66 72 6f 6d 20 74 68 61 74 20 70 61 63 6b 61 67  from that packag
27bd0 65 20 69 6e 0a 74 68 65 69 72 20 66 69 6c 65 2e  e in.their file.
27be0 20 50 72 65 76 69 6f 75 73 6c 79 2c 20 74 68 69   Previously, thi
27bf0 73 20 77 6f 75 6c 64 20 74 68 72 6f 77 20 61 6e  s would throw an
27c00 20 65 72 72 6f 72 20 62 65 63 61 75 73 65 20 74   error because t
27c10 68 65 20 72 65 71 75 69 72 65 64 0a 70 61 63 6b  he required.pack
27c20 61 67 65 20 68 61 64 20 6e 6f 74 20 62 65 65 6e  age had not been
27c30 20 6c 6f 61 64 65 64 2e 20 20 54 68 65 20 2d 6e   loaded.  The -n
27c40 6f 70 6b 67 72 65 71 75 69 65 64 20 66 6c 61 67  opkgrequied flag
27c50 20 69 73 20 70 72 6f 76 69 64 65 64 20 74 6f 0a   is provided to.
27c60 72 65 76 65 72 74 20 62 61 63 6b 20 74 6f 20 74  revert back to t
27c70 68 65 20 6f 6c 64 20 66 75 6e 63 74 69 6f 6e 61  he old functiona
27c80 6c 69 74 79 2e 20 28 45 4d 53 29 0a 0a 37 2f 36  lity. (EMS)..7/6
27c90 2f 39 38 20 28 69 6d 70 72 6f 76 65 6d 65 6e 74  /98 (improvement
27ca0 29 20 62 61 63 6b 2d 70 6f 72 74 65 64 20 74 68  ) back-ported th
27cb0 65 20 2d 64 69 72 65 63 74 20 66 6c 61 67 20 66  e -direct flag f
27cc0 72 6f 6d 20 38 2e 31 20 69 6e 74 6f 0a 70 6b 67  rom 8.1 into.pkg
27cd0 5f 6d 6b 49 6e 64 65 78 2e 20 20 54 68 69 73 20  _mkIndex.  This 
27ce0 72 65 73 75 6c 74 73 20 69 6e 20 70 6b 67 49 6e  results in pkgIn
27cf0 64 65 78 2e 74 63 6c 20 66 69 6c 65 73 20 74 68  dex.tcl files th
27d00 61 74 20 63 6f 6e 74 61 69 6e 20 64 69 72 65 63  at contain direc
27d10 74 0a 73 6f 75 72 63 65 20 6f 72 20 6c 6f 61 64  t.source or load
27d20 20 63 6f 6d 6d 61 6e 64 73 20 69 6e 73 74 65 61   commands instea
27d30 64 20 6f 66 20 74 63 6c 50 6b 67 53 65 74 75 70  d of tclPkgSetup
27d40 20 63 6f 6d 6d 61 6e 64 73 2e 20 28 45 4d 53 29   commands. (EMS)
27d50 0a 0a 37 2f 36 2f 39 38 20 28 69 6d 70 72 6f 76  ..7/6/98 (improv
27d60 65 6d 65 6e 74 29 20 6d 61 64 65 20 63 68 61 6e  ement) made chan
27d70 67 65 73 20 74 6f 20 74 68 65 20 41 75 78 44 61  ges to the AuxDa
27d80 74 61 20 69 74 65 6d 73 20 73 74 72 75 63 74 75  ta items structu
27d90 72 65 73 20 74 6f 20 73 75 70 70 6f 72 74 0a 73  res to support.s
27da0 74 6f 72 61 67 65 20 6f 66 20 63 6f 6d 70 69 6c  torage of compil
27db0 65 64 20 73 63 72 69 70 74 73 20 6f 6e 20 64 69  ed scripts on di
27dc0 73 6b 2e 20 41 6c 73 6f 20 73 6f 6d 65 20 72 65  sk. Also some re
27dd0 6c 61 74 65 64 20 6d 69 6e 6f 72 20 63 68 61 6e  lated minor chan
27de0 67 65 73 20 69 6e 0a 74 68 65 20 63 6f 6d 70 69  ges in.the compi
27df0 6c 61 74 69 6f 6e 20 61 6e 64 20 65 78 65 63 75  lation and execu
27e00 74 69 6f 6e 20 65 6e 67 69 6e 65 2e 20 28 45 4d  tion engine. (EM
27e10 53 29 0a 0a 36 2f 34 2f 39 38 20 28 65 6e 68 61  S)..6/4/98 (enha
27e20 6e 63 65 6d 65 6e 74 29 20 41 64 64 65 64 20 6e  ncement) Added n
27e30 65 77 20 69 6e 74 65 72 6e 61 6c 20 72 6f 75 74  ew internal rout
27e40 69 6e 65 73 20 74 6f 20 73 75 70 70 6f 72 74 20  ines to support 
27e50 69 6e 73 65 72 74 69 6e 67 0a 61 6e 64 20 64 65  inserting.and de
27e60 6c 65 74 69 6e 67 20 66 72 6f 6d 20 74 68 65 20  leting from the 
27e70 73 74 61 74 2c 20 61 63 63 65 73 73 2c 20 61 6e  stat, access, an
27e80 64 20 6f 70 65 6e 2d 66 69 6c 65 2d 63 68 61 6e  d open-file-chan
27e90 6e 65 6c 20 6d 65 63 68 61 6e 69 73 6d 73 2e 0a  nel mechanisms..
27ea0 54 63 6c 41 63 63 65 73 73 49 6e 73 65 72 74 50  TclAccessInsertP
27eb0 72 6f 63 2c 20 54 63 6c 53 74 61 74 49 6e 73 65  roc, TclStatInse
27ec0 72 74 50 72 6f 63 2c 20 26 20 54 63 6c 4f 70 65  rtProc, & TclOpe
27ed0 6e 46 69 6c 65 43 68 61 6e 6e 65 6c 49 6e 73 65  nFileChannelInse
27ee0 72 74 50 72 6f 63 0a 69 6e 73 65 72 74 20 70 6f  rtProc.insert po
27ef0 69 6e 74 65 72 73 20 74 6f 20 73 75 63 68 20 72  inters to such r
27f00 6f 75 74 69 6e 65 73 3b 20 54 63 6c 41 63 63 65  outines; TclAcce
27f10 73 73 44 65 6c 65 74 65 50 72 6f 63 2c 20 54 63  ssDeleteProc, Tc
27f20 6c 53 74 61 74 44 65 6c 65 74 65 50 72 6f 63 2c  lStatDeleteProc,
27f30 0a 26 20 54 63 6c 4f 70 65 6e 46 69 6c 65 43 68  .& TclOpenFileCh
27f40 61 6e 6e 65 6c 44 65 6c 65 74 65 50 72 6f 63 20  annelDeleteProc 
27f50 64 65 6c 65 74 65 20 70 6f 69 6e 74 65 72 73 20  delete pointers 
27f60 74 6f 20 73 75 63 68 20 72 6f 75 74 69 6e 65 73  to such routines
27f70 2e 20 20 53 65 65 0a 74 68 65 20 66 69 6c 65 20  .  See.the file 
27f80 67 65 6e 65 72 69 63 2f 74 63 6c 49 4f 55 74 69  generic/tclIOUti
27f90 6c 73 2e 63 20 66 6f 72 20 6d 6f 72 65 20 64 65  ls.c for more de
27fa0 74 61 69 6c 73 2e 20 28 53 4b 53 29 0a 20 0a 37  tails. (SKS). .7
27fb0 2f 31 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65  /1/98 (enhanceme
27fc0 6e 74 29 20 41 64 64 65 64 20 61 20 6e 65 77 20  nt) Added a new 
27fd0 69 6e 74 65 72 6e 61 6c 20 43 20 76 61 72 69 61  internal C varia
27fe0 62 6c 65 0a 74 63 6c 50 72 65 49 6e 69 74 53 63  ble.tclPreInitSc
27ff0 72 69 70 74 2e 20 20 54 68 69 73 20 69 73 20 61  ript.  This is a
28000 20 70 6f 69 6e 74 65 72 20 74 6f 20 61 20 73 74   pointer to a st
28010 72 69 6e 67 20 74 68 61 74 20 6d 61 79 20 68 6f  ring that may ho
28020 6c 64 20 61 6e 0a 69 6e 69 74 69 61 6c 69 7a 61  ld an.initializa
28030 74 69 6f 6e 20 73 63 72 69 70 74 3b 20 49 66 20  tion script; If 
28040 74 68 69 73 20 70 6f 69 6e 74 65 72 20 69 73 20  this pointer is 
28050 6e 6f 6e 2d 4e 55 4c 4c 20 69 74 20 69 73 20 65  non-NULL it is e
28060 76 61 6c 75 61 74 65 64 20 69 6e 0a 54 63 6c 5f  valuated in.Tcl_
28070 49 6e 69 74 28 29 20 70 72 69 6f 72 20 74 6f 20  Init() prior to 
28080 74 68 65 20 62 75 69 6c 74 2d 69 6e 20 69 6e 69  the built-in ini
28090 74 69 61 6c 69 7a 61 74 69 6f 6e 20 73 63 72 69  tialization scri
280a0 70 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68  pt defined in th
280b0 65 0a 66 69 6c 65 20 67 65 6e 65 72 69 63 2f 74  e.file generic/t
280c0 63 6c 49 6e 69 74 53 63 72 69 70 74 2e 68 2e 20  clInitScript.h. 
280d0 20 28 53 4b 53 29 0a 0a 37 2f 36 2f 39 38 20 28   (SKS)..7/6/98 (
280e0 62 75 67 20 66 69 78 29 20 52 65 6d 6f 76 65 64  bug fix) Removed
280f0 20 64 65 61 64 20 63 6f 64 65 20 69 6e 20 50 6c   dead code in Pl
28100 61 74 66 6f 72 6d 49 6e 69 74 45 78 69 74 48 61  atformInitExitHa
28110 6e 64 6c 65 72 20 73 6f 20 74 68 61 74 0a 74 68  ndler so that.th
28120 65 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 76 61  e TCL_LIBRARY va
28130 6c 75 65 20 63 61 6e 20 62 65 20 73 61 66 65 6c  lue can be safel
28140 79 20 70 61 74 63 68 65 64 20 69 6e 20 62 69 6e  y patched in bin
28150 61 72 69 65 73 2e 20 28 42 57 29 0a 0a 37 2f 32  aries. (BW)..7/2
28160 34 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e  4/98 (enhancemen
28170 74 29 20 49 6e 63 6f 72 70 6f 72 61 74 65 64 20  t) Incorporated 
28180 61 20 6e 65 77 20 76 65 72 73 69 6f 6e 20 6f 66  a new version of
28190 20 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 20 74 68   auto_mkindex th
281a0 61 74 0a 63 61 6e 20 73 75 70 70 6f 72 74 20 74  at.can support t
281b0 68 65 20 5b 69 6e 63 72 20 54 63 6c 5d 20 63 6c  he [incr Tcl] cl
281c0 61 73 73 20 73 74 72 75 63 74 75 72 65 73 2e 20  ass structures. 
281d0 20 54 68 69 73 20 76 65 72 73 69 6f 6e 20 77 69   This version wi
281e0 6c 6c 20 69 6e 64 65 78 0a 61 6c 6c 20 70 72 6f  ll index.all pro
281f0 63 65 64 75 72 65 73 20 69 6e 20 61 20 73 6f 75  cedures in a sou
28200 72 63 65 20 66 69 6c 65 2c 20 6e 6f 74 20 6a 75  rce file, not ju
28210 73 74 20 74 68 6f 73 65 20 77 68 65 72 65 20 22  st those where "
28220 70 72 6f 63 22 20 73 74 61 72 74 73 0a 61 74 20  proc" starts.at 
28230 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66  the beginning of
28240 20 74 68 65 20 6c 69 6e 65 2e 20 20 49 66 20 79   the line.  If y
28250 6f 75 20 77 61 6e 74 20 74 68 65 20 6f 6c 64 20  ou want the old 
28260 62 65 68 61 76 69 6f 72 2c 20 75 73 65 20 74 68  behavior, use th
28270 65 0a 61 75 74 6f 5f 6d 6b 69 6e 64 65 78 5f 6f  e.auto_mkindex_o
28280 6c 64 20 70 72 6f 63 65 64 75 72 65 2e 20 28 4d  ld procedure. (M
28290 4d 29 0a 0a 37 2f 32 34 2f 39 38 20 28 66 65 61  M)..7/24/98 (fea
282a0 74 75 72 65 20 63 68 61 6e 67 65 29 20 43 68 61  ture change) Cha
282b0 6e 67 65 64 20 74 68 65 20 57 69 6e 64 6f 77 73  nged the Windows
282c0 20 72 65 67 69 73 74 72 79 20 6b 65 79 20 74 6f   registry key to
282d0 20 62 65 0a 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d   be.HKEY_LOCAL_M
282e0 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 5c  ACHINE\Software\
282f0 53 63 72 69 70 74 69 63 73 5c 54 63 6c 5c 38 2e  Scriptics\Tcl\8.
28300 30 2c 20 61 6e 64 20 74 6f 20 73 74 6f 72 65 20  0, and to store 
28310 74 68 65 20 70 61 74 68 0a 69 6e 20 74 68 65 20  the path.in the 
28320 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 6e  default value in
28330 73 74 65 61 64 20 6f 66 20 22 52 6f 6f 74 22 2e  stead of "Root".
28340 20 20 41 6c 73 6f 2c 20 74 68 69 73 20 6b 65 79    Also, this key
28350 20 63 61 6e 20 62 65 0a 73 70 65 63 69 66 69 65   can be.specifie
28360 64 20 61 74 20 63 6f 6d 70 69 6c 65 20 74 69 6d  d at compile tim
28370 65 20 69 6e 20 63 61 73 65 20 54 63 6c 20 69 73  e in case Tcl is
28380 20 62 65 69 6e 67 20 75 73 65 64 20 69 6e 20 61   being used in a
28390 20 64 69 66 66 65 72 65 6e 74 0a 63 6f 6e 74 65   different.conte
283a0 78 74 20 77 68 65 72 65 20 69 74 20 6e 65 65 64  xt where it need
283b0 73 20 61 6e 20 61 6c 74 65 72 6e 61 74 65 20 6c  s an alternate l
283c0 69 62 72 61 72 79 20 70 61 74 68 20 66 72 6f 6d  ibrary path from
283d0 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 54 63   the standard Tc
283e0 6c 0a 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 20  l.installation. 
283f0 28 53 53 29 0a 0a 37 2f 32 34 2f 39 38 20 28 66  (SS)..7/24/98 (f
28400 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 43  eature change) C
28410 68 61 6e 67 65 64 20 74 68 65 20 73 65 61 72 63  hanged the searc
28420 68 20 6f 72 64 65 72 20 66 6f 72 20 69 6e 69 74  h order for init
28430 2e 74 63 6c 2e 20 20 54 68 65 0a 74 63 6c 5f 6c  .tcl.  The.tcl_l
28440 69 62 72 61 72 79 20 76 61 72 69 61 62 6c 65 20  ibrary variable 
28450 63 61 6e 20 6e 6f 77 20 62 65 20 73 65 74 20 62  can now be set b
28460 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 54 63  efore calling Tc
28470 6c 5f 49 6e 69 74 20 74 6f 20 61 76 6f 69 64 0a  l_Init to avoid.
28480 64 6f 69 6e 67 20 61 6e 79 20 73 65 61 72 63 68  doing any search
28490 65 73 2e 20 20 49 66 20 69 74 20 69 73 6e 27 74  es.  If it isn't
284a0 20 73 65 74 2c 20 74 68 65 6e 20 54 63 6c 20 63   set, then Tcl c
284b0 68 65 63 6b 73 0a 65 6e 76 28 54 43 4c 5f 4c 49  hecks.env(TCL_LI
284c0 42 52 41 52 59 29 2c 20 74 68 65 20 73 74 61 74  BRARY), the stat
284d0 69 63 20 76 61 6c 75 65 20 73 65 74 20 61 74 20  ic value set at 
284e0 63 6f 6d 70 69 6c 65 20 74 69 6d 65 2c 20 61 6e  compile time, an
284f0 20 69 6e 73 74 61 6c 6c 0a 64 69 72 65 63 74 6f   install.directo
28500 72 79 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74  ry relative to t
28510 68 65 20 65 78 65 63 75 74 61 62 6c 65 2c 20 61  he executable, a
28520 20 73 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72   source director
28530 79 20 72 65 6c 61 74 69 76 65 20 74 6f 0a 74 68  y relative to.th
28540 65 20 65 78 65 63 75 74 61 62 6c 65 2c 20 61 6e  e executable, an
28550 64 20 61 20 74 63 6c 20 64 69 72 65 63 74 6f 72  d a tcl director
28560 79 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68  y relative to th
28570 65 20 73 6f 75 72 63 65 20 68 65 69 72 61 72 63  e source heirarc
28580 68 79 0a 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68  hy.containing th
28590 65 20 65 78 65 63 75 74 61 62 6c 65 2e 20 20 53  e executable.  S
285a0 65 65 20 74 68 65 20 63 6f 6d 6d 65 6e 74 20 61  ee the comment a
285b0 74 20 74 68 65 20 74 6f 70 20 6f 66 0a 67 65 6e  t the top of.gen
285c0 65 72 69 63 2f 74 63 6c 49 6e 69 74 53 63 72 69  eric/tclInitScri
285d0 70 74 2e 68 20 66 6f 72 20 6d 6f 72 65 20 64 65  pt.h for more de
285e0 74 61 69 6c 73 2e 20 28 53 53 29 0a 0a 37 2f 32  tails. (SS)..7/2
285f0 37 2f 39 38 20 28 63 6f 6e 66 69 67 20 63 68 61  7/98 (config cha
28600 6e 67 65 29 20 43 68 61 6e 67 65 64 20 74 68 65  nge) Changed the
28610 20 75 73 65 20 6f 66 20 74 68 65 20 44 42 47 58   use of the DBGX
28620 20 66 6c 61 67 20 69 6e 20 63 6f 6e 66 69 67 75   flag in configu
28630 72 65 2e 69 6e 0a 61 6e 64 20 74 68 65 20 6d 61  re.in.and the ma
28640 6b 65 66 69 6c 65 20 74 6f 20 62 65 20 54 43 4c  kefile to be TCL
28650 5f 44 42 47 58 2e 20 20 55 73 65 72 73 20 6f 66  _DBGX.  Users of
28660 20 74 63 6c 43 6f 6e 66 69 67 2e 73 68 20 6d 61   tclConfig.sh ma
28670 79 20 6e 65 65 64 20 74 6f 20 70 61 73 73 0a 74  y need to pass.t
28680 68 69 73 20 74 68 72 6f 75 67 68 20 74 68 65 69  his through thei
28690 72 20 63 6f 6e 66 69 67 75 72 65 20 66 69 6c 65  r configure file
286a0 73 20 77 69 74 68 20 41 43 5f 53 55 42 53 54 2e  s with AC_SUBST.
286b0 20 28 42 57 29 0a 0a 37 32 39 2f 39 38 20 28 62   (BW)..729/98 (b
286c0 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
286d0 5b 69 6e 66 6f 20 62 6f 64 79 5d 20 74 6f 20 72  [info body] to r
286e0 65 74 75 72 6e 20 61 20 63 6f 70 79 20 6f 66 20  eturn a copy of 
286f0 74 68 65 20 62 6f 64 79 20 6f 66 20 61 0a 63 6f  the body of a.co
28700 6d 70 69 6c 65 64 20 70 72 6f 63 65 64 75 72 65  mpiled procedure
28710 20 69 6e 73 74 65 61 64 20 6f 66 20 74 68 65 20   instead of the 
28720 62 6f 64 79 20 69 74 73 65 6c 66 2c 20 74 6f 20  body itself, to 
28730 61 76 6f 69 64 20 69 6e 76 61 6c 69 64 61 74 69  avoid invalidati
28740 6f 6e 0a 6f 66 20 74 68 65 20 69 6e 74 65 72 6e  on.of the intern
28750 61 6c 20 72 65 70 20 61 6e 64 20 6c 6f 73 73 20  al rep and loss 
28760 6f 66 20 74 68 65 20 62 79 74 65 2d 63 6f 64 65  of the byte-code
28770 73 2e 20 28 45 4d 53 29 0a 0a 38 2f 35 2f 39 38  s. (EMS)..8/5/98
28780 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 70   (bug fix) The p
28790 6c 61 74 66 6f 72 6d 20 69 6e 69 74 20 63 6f 64  latform init cod
287a0 65 20 63 6f 75 6c 64 20 77 61 6c 6b 20 6f 66 66  e could walk off
287b0 20 74 68 65 20 65 6e 64 20 6f 66 20 61 0a 62 75   the end of a.bu
287c0 66 66 65 72 20 77 68 65 6e 20 72 65 61 64 69 6e  ffer when readin
287d0 67 20 74 68 65 20 50 6b 67 50 61 74 68 20 72 65  g the PkgPath re
287e0 67 69 73 74 72 79 20 76 61 6c 75 65 20 6f 6e 20  gistry value on 
287f0 57 69 6e 64 6f 77 73 2e 20 28 53 53 29 0a 0a 38  Windows. (SS)..8
28800 2f 35 2f 39 38 20 28 57 69 6e 64 6f 77 73 20 6d  /5/98 (Windows m
28810 61 6b 65 66 69 6c 65 20 63 68 61 6e 67 65 29 20  akefile change) 
28820 49 6e 74 72 6f 64 75 63 65 64 20 61 20 73 65 74  Introduced a set
28830 20 6f 66 20 6d 61 63 72 6f 73 20 74 6f 20 64 65   of macros to de
28840 61 6c 20 77 69 74 68 0a 65 78 70 6f 72 74 69 6e  al with.exportin
28850 67 20 73 79 6d 62 6f 6c 73 20 77 68 65 6e 20 63  g symbols when c
28860 6f 6d 70 69 6c 69 6e 67 20 44 4c 4c 53 20 6f 6e  ompiling DLLS on
28870 20 57 69 6e 64 6f 77 73 2e 20 53 65 65 20 77 69   Windows. See wi
28880 6e 2f 52 45 41 44 4d 45 20 66 6f 72 0a 64 65 74  n/README for.det
28890 61 69 6c 73 2e 20 28 45 4d 53 29 0a 0a 38 2f 35  ails. (EMS)..8/5
288a0 2f 39 38 20 28 61 64 64 65 6e 64 75 6d 29 20 41  /98 (addendum) A
288b0 64 64 65 64 20 61 20 73 65 63 6f 6e 64 20 57 69  dded a second Wi
288c0 6e 64 6f 77 73 20 72 65 67 69 73 74 72 79 20 6b  ndows registry k
288d0 65 79 20 75 6e 64 65 72 0a 48 4b 45 59 5f 4c 4f  ey under.HKEY_LO
288e0 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74  CAL_MACHINE\Soft
288f0 77 61 72 65 5c 53 63 72 69 70 74 69 63 73 5c 54  ware\Scriptics\T
28900 63 6c 5c 38 2e 30 2c 20 6e 61 6d 65 64 20 22 70  cl\8.0, named "p
28910 6b 67 50 61 74 68 22 2e 0a 54 68 69 73 20 69 73  kgPath"..This is
28920 20 61 20 6d 75 6c 74 69 2d 73 74 72 69 6e 67 20   a multi-string 
28930 76 61 6c 75 65 20 75 73 65 64 20 74 6f 20 69 6e  value used to in
28940 69 74 69 61 6c 69 7a 65 20 74 68 65 20 74 63 6c  itialize the tcl
28950 5f 70 6b 67 50 61 74 68 0a 76 61 72 69 61 62 6c  _pkgPath.variabl
28960 65 2e 20 54 68 69 73 20 69 73 20 72 65 71 75 69  e. This is requi
28970 72 65 64 20 69 66 20 65 78 74 65 6e 73 69 6f 6e  red if extension
28980 20 44 4c 4c 73 20 61 72 65 20 69 6e 20 61 72 63   DLLs are in arc
28990 68 69 74 65 63 74 75 72 65 20 73 70 65 63 69 66  hitecture specif
289a0 69 63 0a 73 75 62 64 69 72 65 63 74 6f 72 69 65  ic.subdirectorie
289b0 73 2e 20 28 53 53 29 0a 0a 38 2f 36 2f 39 38 20  s. (SS)..8/6/98 
289c0 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
289d0 64 65 64 20 74 63 6c 5f 66 69 6e 64 4c 69 62 72  ded tcl_findLibr
289e0 61 72 79 20 74 6f 20 69 6e 69 74 2e 74 63 6c 20  ary to init.tcl 
289f0 66 6f 72 20 75 73 65 20 62 79 0a 65 78 74 65 6e  for use by.exten
28a00 73 69 6f 6e 73 2c 20 69 6e 63 6c 75 64 69 6e 67  sions, including
28a10 20 54 6b 2e 20 20 54 68 69 73 20 73 65 61 72 63   Tk.  This searc
28a20 68 65 73 20 69 6e 20 61 20 63 61 6e 6f 6e 69 63  hes in a canonic
28a30 61 6c 20 77 61 79 20 66 6f 72 0a 61 6e 20 65 78  al way for.an ex
28a40 74 65 6e 73 69 6f 6e 73 20 6c 69 62 72 61 72 79  tensions library
28a50 20 64 69 72 65 63 74 6f 72 79 20 61 6e 64 20 69   directory and i
28a60 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69  nitialization fi
28a70 6c 65 2e 20 28 42 57 29 0a 0a 38 2f 31 30 2f 39  le. (BW)..8/10/9
28a80 38 20 28 62 75 67 20 66 69 78 29 20 49 6d 70 6f  8 (bug fix) Impo
28a90 72 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 75 73  rted commands us
28aa0 65 64 20 74 6f 20 67 65 74 20 6c 6f 73 74 20 69  ed to get lost i
28ab0 66 20 74 68 65 20 74 61 72 67 65 74 0a 6f 66 20  f the target.of 
28ac0 74 68 65 20 69 6d 70 6f 72 74 20 77 61 73 20 72  the import was r
28ad0 65 64 65 66 69 6e 65 64 2e 20 20 54 63 6c 5f 43  edefined.  Tcl_C
28ae0 72 65 61 74 65 43 6f 6d 6d 61 6e 64 20 61 6e 64  reateCommand and
28af0 20 54 63 6c 5f 43 72 65 61 74 65 4f 62 6a 43 6f   Tcl_CreateObjCo
28b00 6d 6d 61 6e 64 0a 77 65 72 65 20 75 70 64 61 74  mmand.were updat
28b10 65 64 20 74 6f 20 72 65 73 74 6f 72 65 20 69 6d  ed to restore im
28b20 70 6f 72 74 20 6c 69 6e 6b 73 2e 20 28 4e 6f 74  port links. (Not
28b30 65 20 74 68 61 74 20 69 66 20 79 6f 75 20 72 65  e that if you re
28b40 6e 61 6d 65 20 61 20 63 6f 6d 6d 61 6e 64 2c 0a  name a command,.
28b50 74 68 65 20 69 6d 70 6f 72 74 20 6c 69 6e 6b 73  the import links
28b60 20 6d 6f 76 65 20 74 6f 20 74 68 65 20 6e 65 77   move to the new
28b70 20 6e 61 6d 65 2c 20 61 6e 64 20 69 66 20 79 6f   name, and if yo
28b80 75 20 64 65 6c 65 74 65 20 61 20 63 6f 6d 6d 61  u delete a comma
28b90 6e 64 20 74 68 65 6e 0a 74 68 65 20 69 6d 70 6f  nd then.the impo
28ba0 72 74 20 6c 69 6e 6b 73 20 67 65 74 20 6c 6f 73  rt links get los
28bb0 74 2e 20 54 68 65 73 65 20 73 65 6d 61 6e 74 69  t. These semanti
28bc0 63 73 20 68 61 76 65 20 6e 6f 74 20 63 68 61 6e  cs have not chan
28bd0 67 65 64 2e 29 20 28 4d 43 29 0a 0a 2d 2d 2d 2d  ged.) (MC)..----
28be0 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  ---- Released 8.
28bf0 30 2e 33 20 74 6f 20 74 68 65 20 54 63 6c 20 43  0.3 to the Tcl C
28c00 6f 6e 73 6f 72 74 69 75 6d 20 43 44 2d 52 4f 4d  onsortium CD-ROM
28c10 20 70 72 6f 6a 65 63 74 2c 20 38 2f 31 30 2f 39   project, 8/10/9
28c20 38 20 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 33 2f 39 38  8 ------..9/3/98
28c30 20 28 62 75 67 20 66 69 78 29 20 54 63 6c 5f 52   (bug fix) Tcl_R
28c40 65 61 6c 6c 6f 63 20 77 61 73 20 66 61 69 6c 69  ealloc was faili
28c50 6e 67 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 73  ng under Windows
28c60 20 62 65 63 61 75 73 65 20 74 68 65 0a 47 6c 6f   because the.Glo
28c70 62 61 6c 52 65 41 6c 6c 6f 63 20 41 50 49 20 77  balReAlloc API w
28c80 61 73 20 6e 6f 74 20 63 6f 72 72 65 63 74 6c 79  as not correctly
28c90 20 72 65 2d 61 6c 6c 6f 63 61 74 69 6e 67 20 62   re-allocating b
28ca0 6c 6f 63 6b 73 20 74 68 61 74 20 77 65 72 65 0a  locks that were.
28cb0 33 32 6b 2b 2e 20 20 54 68 65 20 66 69 78 20 77  32k+.  The fix w
28cc0 61 73 20 74 6f 20 75 73 65 20 6e 65 77 65 72 20  as to use newer 
28cd0 57 69 6e 33 32 20 41 50 49 73 20 28 48 65 61 70  Win32 APIs (Heap
28ce0 41 6c 6c 6f 63 2c 20 48 65 61 70 46 72 65 65 2c  Alloc, HeapFree,
28cf0 20 61 6e 64 0a 48 65 61 70 52 65 41 6c 6c 6f 63   and.HeapReAlloc
28d00 2e 29 20 28 42 53 29 0a 0a 31 30 2f 35 2f 39 38  .) (BS)..10/5/98
28d10 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
28d20 20 62 75 67 20 69 6e 20 70 6b 67 5f 6d 6b 49 6e   bug in pkg_mkIn
28d30 64 65 78 20 74 68 61 74 20 63 61 75 73 65 64 20  dex that caused 
28d40 73 6f 6d 65 20 66 69 6c 65 73 20 74 68 61 74 20  some files that 
28d50 64 6f 0a 61 20 22 70 61 63 6b 61 67 65 20 72 65  do.a "package re
28d60 71 75 69 72 65 22 20 6f 66 20 70 61 63 6b 61 67  quire" of packag
28d70 65 73 20 69 6e 20 74 68 65 20 54 63 6c 20 6c 69  es in the Tcl li
28d80 62 72 61 72 69 65 73 20 74 6f 20 67 69 76 65 20  braries to give 
28d90 61 20 77 61 72 6e 69 6e 67 20 6c 69 6b 65 0a 09  a warning like..
28da0 77 61 72 6e 69 6e 67 3a 20 22 78 78 2e 74 63 6c  warning: "xx.tcl
28db0 22 20 70 72 6f 76 69 64 65 73 20 6d 6f 72 65 20  " provides more 
28dc0 74 68 61 6e 20 6f 6e 65 20 70 61 63 6b 61 67 65  than one package
28dd0 20 28 7b 78 78 20 32 2e 30 7d 20 7b 79 79 20 30   ({xx 2.0} {yy 0
28de0 2e 33 7d 29 0a 61 6e 64 20 67 65 6e 65 72 61 74  .3}).and generat
28df0 65 20 61 20 62 72 6f 6b 65 6e 20 70 6b 67 49 6e  e a broken pkgIn
28e00 64 65 78 2e 74 63 6c 20 66 69 6c 65 2e 20 28 45  dex.tcl file. (E
28e10 4d 53 29 0a 0a 31 30 2f 35 2f 39 38 20 28 62 75  MS)..10/5/98 (bu
28e20 67 20 66 69 78 29 20 50 6b 67 5f 6d 6b 49 6e 64  g fix) Pkg_mkInd
28e30 65 78 20 77 61 73 20 6e 6f 74 20 64 6f 69 6e 67  ex was not doing
28e40 20 61 20 63 61 73 65 2d 69 6e 73 65 6e 73 69 74   a case-insensit
28e50 69 76 65 20 63 6f 6d 70 61 72 69 73 6f 6e 0a 6f  ive comparison.o
28e60 66 20 65 78 74 65 6e 73 69 6f 6e 73 20 74 6f 20  f extensions to 
28e70 64 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 65  determine whethe
28e80 72 20 74 6f 20 6c 6f 61 64 20 6f 72 20 73 6f 75  r to load or sou
28e90 72 63 65 20 61 20 66 69 6c 65 2e 20 54 68 75 73  rce a file. Thus
28ea0 2c 20 75 6e 64 65 72 0a 57 69 6e 64 6f 77 73 2c  , under.Windows,
28eb0 20 4d 59 44 4c 4c 4e 41 4d 45 2e 44 4c 4c 20 77   MYDLLNAME.DLL w
28ec0 61 73 20 73 6f 75 72 63 65 64 2c 20 61 6e 64 20  as sourced, and 
28ed0 6d 79 64 6c 6c 6e 61 6d 65 2e 64 6c 6c 20 6c 6f  mydllname.dll lo
28ee0 61 64 65 64 2e 20 28 45 4d 53 29 0a 0a 31 30 2f  aded. (EMS)..10/
28ef0 35 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75 72  5/98 (new featur
28f00 65 29 20 43 72 65 61 74 65 64 20 61 20 6e 65 77  e) Created a new
28f10 20 54 63 6c 5f 4f 62 6a 20 74 79 70 65 2c 20 22   Tcl_Obj type, "
28f20 70 72 6f 63 62 6f 64 79 22 2e 20 54 68 69 73 20  procbody". This 
28f30 6f 62 6a 65 63 74 27 73 0a 69 6e 74 65 72 6e 61  object's.interna
28f40 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e  l representation
28f50 20 68 6f 6c 64 73 20 61 20 70 6f 69 6e 74 65 72   holds a pointer
28f60 20 74 6f 20 61 20 50 72 6f 63 20 73 74 72 75 63   to a Proc struc
28f70 74 75 72 65 2e 20 45 78 74 65 6e 64 65 64 0a 54  ture. Extended.T
28f80 63 6c 43 72 65 61 74 65 50 72 6f 63 20 74 6f 20  clCreateProc to 
28f90 74 61 6b 65 20 62 6f 74 68 20 73 74 72 69 6e 67  take both string
28fa0 73 20 61 6e 64 20 22 70 72 6f 63 62 6f 64 79 22  s and "procbody"
28fb0 2e 20 28 45 4d 53 29 0a 0a 31 30 2f 31 33 2f 39  . (EMS)..10/13/9
28fc0 38 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20  8 (bug fix) The 
28fd0 22 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 22 20  "info complete" 
28fe0 63 6f 6d 6d 61 6e 64 20 63 61 6e 20 6e 6f 77 20  command can now 
28ff0 68 61 6e 64 6c 65 20 73 74 72 69 6e 67 73 0a 77  handle strings.w
29000 69 74 68 20 4e 55 4c 4c 73 20 65 6d 62 65 64 64  ith NULLs embedd
29010 65 64 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20 63  ed.  Thanks to c
29020 6f 6c 69 6e 40 66 69 65 6c 64 2e 6d 65 64 69 63  [email protected]
29030 69 6e 65 2e 61 64 65 6c 61 69 64 65 2e 65 64 75  ine.adelaide.edu
29040 2e 61 75 20 0a 66 6f 72 20 70 72 6f 76 69 64 69  .au .for providi
29050 6e 67 20 74 68 69 73 20 66 69 78 2e 20 28 52 4a  ng this fix. (RJ
29060 29 0a 0a 31 30 2f 31 33 2f 39 38 20 28 62 75 67  )..10/13/98 (bug
29070 20 66 69 78 29 20 54 68 65 20 22 6c 73 6f 72 74   fix) The "lsort
29080 20 2d 64 69 63 74 69 6f 6e 61 72 79 22 20 63 6f   -dictionary" co
29090 6d 6d 61 6e 64 20 64 69 64 20 6e 6f 74 20 70 72  mmand did not pr
290a0 6f 70 65 72 6c 79 0a 68 61 6e 64 6c 65 20 73 6f  operly.handle so
290b0 6d 65 20 6e 75 6d 62 65 72 73 20 73 74 61 72 74  me numbers start
290c0 69 6e 67 20 77 69 74 68 20 30 2e 20 20 54 68 61  ing with 0.  Tha
290d0 6e 6b 73 20 74 6f 20 52 69 63 68 61 72 64 20 48  nks to Richard H
290e0 69 70 70 0a 3c 64 72 68 40 61 63 6d 2e 6f 72 67  ipp.<[email protected]
290f0 3e 20 66 6f 72 20 73 75 62 6d 69 74 74 69 6e 67  > for submitting
29100 20 74 68 65 20 66 69 78 20 74 6f 20 53 63 72 69   the fix to Scri
29110 70 74 69 63 73 2e 20 28 52 4a 29 0a 0a 31 30 2f  ptics. (RJ)..10/
29120 31 33 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  13/98 (bug fix) 
29130 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 54 63 6c  The function Tcl
29140 5f 53 65 74 4c 69 73 74 4f 62 6a 20 77 61 73 20  _SetListObj was 
29150 63 72 65 61 74 69 6e 67 20 61 6e 20 69 6e 76 61  creating an inva
29160 6c 69 64 0a 54 63 6c 5f 4f 62 6a 20 69 66 20 74  lid.Tcl_Obj if t
29170 68 65 20 6c 69 73 74 20 68 61 64 20 7a 65 72 6f  he list had zero
29180 20 65 6c 65 6d 65 6e 74 73 20 28 64 65 73 70 69   elements (despi
29190 74 65 20 77 68 61 74 20 74 68 65 20 63 6f 6d 6d  te what the comm
291a0 65 6e 74 73 20 73 61 69 64 0a 69 74 20 77 6f 75  ents said.it wou
291b0 6c 64 20 64 6f 29 2e 20 20 54 68 61 6e 6b 73 20  ld do).  Thanks 
291c0 74 6f 20 53 65 62 61 73 74 69 61 6e 20 57 61 6e  to Sebastian Wan
291d0 67 6e 69 63 6b 20 66 6f 72 20 72 65 70 6f 72 74  gnick for report
291e0 69 6e 67 20 74 68 65 0a 70 72 6f 62 6c 65 6d 2e  ing the.problem.
291f0 20 28 52 4a 29 0a 0a 31 30 2f 32 30 2f 39 38 20   (RJ)..10/20/98 
29200 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64  (new feature) Ad
29210 64 65 64 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d  ded tcl_platform
29220 28 64 65 62 75 67 29 20 65 6c 65 6d 65 6e 74 20  (debug) element 
29230 74 6f 20 74 68 65 0a 74 63 6c 5f 70 6c 61 74 66  to the.tcl_platf
29240 6f 72 6d 20 61 72 72 61 79 20 6f 6e 20 57 69 6e  orm array on Win
29250 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 20 20  dows platform.  
29260 54 68 65 20 65 78 69 73 74 65 6e 63 65 20 6f 66  The existence of
29270 20 74 68 65 20 64 65 62 75 67 0a 65 6c 65 6d 65   the debug.eleme
29280 6e 74 20 6f 66 20 74 68 65 20 74 63 6c 5f 70 6c  nt of the tcl_pl
29290 61 74 66 6f 72 6d 20 61 72 72 61 79 20 69 6e 64  atform array ind
292a0 69 63 61 74 65 73 20 74 68 61 74 20 74 68 65 20  icates that the 
292b0 70 61 72 74 69 63 75 6c 61 72 20 54 63 6c 0a 73  particular Tcl.s
292c0 68 65 6c 6c 20 68 61 73 20 62 65 65 6e 20 63 6f  hell has been co
292d0 6d 70 69 6c 65 64 20 77 69 74 68 20 64 65 62 75  mpiled with debu
292e0 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20 20  g information.  
292f0 55 73 69 6e 67 0a 22 69 6e 66 6f 20 65 78 69 73  Using."info exis
29300 74 73 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28  ts tcl_platform(
29310 64 65 62 75 67 29 22 20 61 20 54 63 6c 20 73 63  debug)" a Tcl sc
29320 72 69 70 74 20 63 61 6e 20 64 69 72 65 63 74 20  ript can direct 
29330 74 68 65 0a 69 6e 74 65 72 70 72 65 74 65 72 20  the.interpreter 
29340 74 6f 20 6c 6f 61 64 20 64 65 62 75 67 20 76 65  to load debug ve
29350 72 73 69 6f 6e 73 20 6f 66 20 44 4c 4c 73 20 77  rsions of DLLs w
29360 69 74 68 20 74 68 65 20 6c 6f 61 64 0a 63 6f 6d  ith the load.com
29370 6d 61 6e 64 2e 20 28 53 4b 53 29 0a 0a 31 30 2f  mand. (SKS)..10/
29380 32 30 2f 39 38 20 28 66 65 61 74 75 72 65 20 63  20/98 (feature c
29390 68 61 6e 67 65 29 20 54 68 65 20 4d 61 6b 65 66  hange) The Makef
293a0 69 6c 65 20 61 6e 64 20 63 6f 6e 66 69 67 75 72  ile and configur
293b0 65 20 73 63 72 69 70 74 73 20 68 61 76 65 20 62  e scripts have b
293c0 65 65 6e 0a 63 68 61 6e 67 65 64 20 66 6f 72 20  een.changed for 
293d0 49 52 49 58 20 74 6f 20 62 75 69 6c 64 20 6e 33  IRIX to build n3
293e0 32 20 62 69 6e 61 72 69 65 73 20 69 6e 73 74 65  2 binaries inste
293f0 61 64 20 6f 66 20 74 68 65 20 6f 6c 64 20 33 32  ad of the old 32
29400 20 61 62 69 0a 66 6f 72 6d 61 74 2e 20 20 49 66   abi.format.  If
29410 20 79 6f 75 20 68 61 76 65 20 65 78 74 65 6e 73   you have extens
29420 69 6f 6e 73 20 62 75 69 6c 74 20 77 69 74 68 20  ions built with 
29430 74 68 65 20 6f 33 32 20 61 62 69 27 73 20 79 6f  the o32 abi's yo
29440 75 20 77 69 6c 6c 20 6e 65 65 64 0a 74 6f 20 75  u will need.to u
29450 70 64 61 74 65 20 74 68 65 6d 20 74 6f 20 6e 33  pdate them to n3
29460 32 20 66 6f 72 20 74 68 65 6d 20 74 6f 20 77 6f  2 for them to wo
29470 72 6b 20 77 69 74 68 20 54 63 6c 2e 20 20 28 52  rk with Tcl.  (R
29480 4a 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c  J).*** POTENTIAL
29490 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59   INCOMPATIBILITY
294a0 20 2a 2a 2a 0a 0a 31 30 2f 32 33 2f 39 38 20 28   ***..10/23/98 (
294b0 62 75 67 20 66 69 78 29 20 74 63 6c 5f 66 69 6e  bug fix) tcl_fin
294c0 64 4c 69 62 72 61 72 79 20 68 61 64 20 61 20 73  dLibrary had a s
294d0 74 72 61 79 20 5d 20 69 6e 20 6f 6e 65 20 6f 66  tray ] in one of
294e0 20 74 68 65 0a 70 61 74 68 6e 61 6d 65 73 20 69   the.pathnames i
294f0 74 20 73 65 61 72 63 68 65 64 20 66 6f 72 20 74  t searched for t
29500 68 65 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  he initializatio
29510 6e 20 73 63 72 69 70 74 2e 20 20 74 63 6c 49 6e  n script.  tclIn
29520 69 74 53 63 72 69 70 74 2e 68 0a 77 61 73 20 69  itScript.h.was i
29530 6e 63 6f 72 72 65 63 74 6c 79 20 61 64 64 69 6e  ncorrectly addin
29540 67 20 74 68 65 20 70 61 72 65 6e 74 20 6f 66 20  g the parent of 
29550 74 63 6c 5f 6c 69 62 72 61 72 79 20 74 6f 20 74  tcl_library to t
29560 63 6c 5f 70 6b 67 50 61 74 68 2e 20 20 54 68 69  cl_pkgPath.  Thi
29570 73 0a 6c 6f 67 69 63 20 77 61 73 20 6d 6f 76 65  s.logic was move
29580 64 20 69 6e 74 6f 20 69 6e 69 74 2e 74 63 6c 2c  d into init.tcl,
29590 20 61 6e 64 20 74 68 65 20 69 6e 69 74 69 61 6c   and the initial
295a0 69 7a 61 74 69 6f 6e 20 6f 66 20 61 75 74 6f 5f  ization of auto_
295b0 70 61 74 68 20 77 61 73 0a 64 6f 63 75 6d 65 6e  path was.documen
295c0 74 65 64 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20  ted.  Thanks to 
295d0 44 6f 6e 61 6c 64 20 50 6f 72 74 65 72 20 61 6e  Donald Porter an
295e0 64 20 54 6f 6d 20 53 69 6c 76 61 20 66 6f 72 20  d Tom Silva for 
295f0 72 65 6c 61 74 65 64 0a 70 61 74 63 68 65 73 2e  related.patches.
29600 20 28 42 57 29 0a 0a 31 30 2f 32 39 2f 39 38 20   (BW)..10/29/98 
29610 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
29620 54 63 6c 5f 4e 6f 74 69 66 79 43 68 61 6e 6e 65  Tcl_NotifyChanne
29630 6c 20 74 6f 20 75 73 65 20 54 63 6c 5f 50 72 65  l to use Tcl_Pre
29640 73 65 72 76 65 20 69 6e 73 74 65 61 64 0a 6f 66  serve instead.of
29650 20 54 63 6c 5f 52 65 67 69 73 74 65 72 43 68 61   Tcl_RegisterCha
29660 6e 6e 65 6c 20 73 6f 20 74 68 61 74 20 31 29 20  nnel so that 1) 
29670 75 6e 72 65 67 69 73 74 65 72 65 64 20 63 68 61  unregistered cha
29680 6e 6e 65 6c 73 20 64 6f 20 6e 6f 74 20 67 65 74  nnels do not get
29690 0a 63 6c 6f 73 65 64 20 61 66 74 65 72 20 74 68  .closed after th
296a0 65 69 72 20 66 69 72 73 74 20 66 69 6c 65 65 76  eir first fileev
296b0 65 6e 74 2c 20 61 6e 64 20 32 29 20 65 72 72 6f  ent, and 2) erro
296c0 72 73 20 74 68 61 74 20 6f 63 63 75 72 20 64 75  rs that occur du
296d0 72 69 6e 67 0a 63 6c 6f 73 65 20 69 6e 20 61 20  ring.close in a 
296e0 66 69 6c 65 65 76 65 6e 74 20 73 63 72 69 70 74  fileevent script
296f0 20 61 72 65 20 61 63 74 75 61 6c 6c 79 20 72 65   are actually re
29700 66 6c 65 63 74 65 64 20 62 79 20 74 68 65 20 63  flected by the c
29710 6c 6f 73 65 0a 63 6f 6d 6d 61 6e 64 2e 20 28 42  lose.command. (B
29720 57 29 0a 0a 31 30 2f 33 30 2f 39 38 20 28 62 75  W)..10/30/98 (bu
29730 67 20 66 69 78 29 20 4f 76 65 72 68 61 75 6c 20  g fix) Overhaul 
29740 6f 66 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74  of pkg_mkIndex t
29750 6f 20 64 65 61 6c 20 77 69 74 68 20 74 72 61 6e  o deal with tran
29760 73 69 74 69 76 65 0a 70 61 63 6b 61 67 65 20 72  sitive.package r
29770 65 71 75 69 72 65 73 20 61 6e 64 20 70 61 63 6b  equires and pack
29780 61 67 65 73 20 73 70 6c 69 74 20 61 6d 6f 6e 67  ages split among
29790 20 73 63 72 69 70 74 73 20 61 6e 64 20 62 69 6e   scripts and bin
297a0 61 72 79 20 66 69 6c 65 73 2e 0a 41 6c 73 6f 20  ary files..Also 
297b0 66 69 78 65 64 20 6f 6d 6d 69 73 69 6f 6e 20 6f  fixed ommision o
297c0 66 20 67 6c 6f 62 61 6c 20 66 6f 72 20 65 72 72  f global for err
297d0 6f 72 49 6e 66 6f 20 69 6e 20 74 63 6c 5f 66 69  orInfo in tcl_fi
297e0 6e 64 4c 69 62 72 61 72 79 2e 20 28 42 57 29 0a  ndLibrary. (BW).
297f0 0a 31 31 2f 30 38 2f 39 38 20 28 62 75 67 20 66  .11/08/98 (bug f
29800 69 78 29 20 46 69 78 65 64 20 74 68 65 20 72 65  ix) Fixed the re
29810 73 6f 75 72 63 65 20 63 6f 6d 6d 61 6e 64 20 74  source command t
29820 6f 20 61 6c 77 61 79 73 20 64 65 74 65 63 74 0a  o always detect.
29830 74 68 65 20 63 61 73 65 20 77 68 65 72 65 20 61  the case where a
29840 20 66 69 6c 65 20 69 73 20 6f 70 65 6e 65 64 20   file is opened 
29850 61 20 73 65 63 6f 6e 64 20 74 69 6d 65 20 77 69  a second time wi
29860 74 68 20 74 68 65 20 73 61 6d 65 0a 70 65 72 6d  th the same.perm
29870 69 73 73 69 6f 6e 73 2e 20 20 49 4d 20 63 6c 61  issions.  IM cla
29880 69 6d 73 20 74 68 61 74 20 74 68 69 73 20 77 69  ims that this wi
29890 6c 6c 20 61 6c 77 61 79 73 20 63 61 75 73 65 20  ll always cause 
298a0 74 68 65 20 73 61 6d 65 0a 46 69 6c 65 52 65 66  the same.FileRef
298b0 20 74 6f 20 62 65 20 72 65 74 75 72 6e 65 64 2c   to be returned,
298c0 20 62 75 74 20 69 6e 20 4d 61 63 4f 53 20 38 2e   but in MacOS 8.
298d0 31 2b 2c 20 74 68 69 73 20 69 73 20 6e 6f 20 6c  1+, this is no l
298e0 6f 6e 67 65 72 20 74 68 65 20 63 61 73 65 2c 0a  onger the case,.
298f0 73 6f 20 77 65 20 68 61 76 65 20 74 6f 20 74 65  so we have to te
29900 73 74 20 66 6f 72 20 74 68 69 73 20 65 78 70 6c  st for this expl
29910 69 63 69 74 6c 79 2e 20 28 4a 49 29 0a 0a 31 31  icitly. (JI)..11
29920 2f 31 30 2f 39 38 20 28 66 65 61 74 75 72 65 20  /10/98 (feature 
29930 63 68 61 6e 67 65 29 20 57 68 65 6e 20 63 6f 6d  change) When com
29940 70 69 6c 69 6e 67 20 77 69 74 68 20 4d 65 74 72  piling with Metr
29950 6f 77 65 72 6b 27 73 20 4d 53 4c 2c 20 75 73 65  owerk's MSL, use
29960 20 74 68 65 0a 65 78 69 74 20 66 75 6e 63 74 69   the.exit functi
29970 6f 6e 20 66 72 6f 6d 20 4d 53 4c 20 72 61 74 68  on from MSL rath
29980 65 72 20 74 68 61 6e 20 45 78 69 74 54 6f 53 68  er than ExitToSh
29990 65 6c 6c 2e 20 20 54 68 69 73 20 61 6c 6c 6f 77  ell.  This allow
299a0 73 20 4d 53 4c 20 74 6f 0a 63 6c 65 61 6e 20 75  s MSL to.clean u
299b0 70 20 69 74 73 20 74 65 6d 70 6f 72 61 72 79 20  p its temporary 
299c0 66 69 6c 65 73 2e 20 54 68 61 6e 6b 73 20 74 6f  files. Thanks to
299d0 20 56 69 6e 63 65 20 44 61 72 6c 65 79 20 66 6f   Vince Darley fo
299e0 72 20 74 68 69 73 0a 69 6d 70 72 6f 76 65 6d 65  r this.improveme
299f0 6e 74 2e 20 28 4a 49 29 0a 0a 2d 2d 2d 2d 2d 2d  nt. (JI)..------
29a00 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
29a10 61 73 65 64 20 38 2e 30 2e 34 2c 20 31 31 2f 31  ased 8.0.4, 11/1
29a20 39 2f 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  9/98 -----------
29a30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
29a40 31 31 2f 32 30 2f 39 38 20 28 62 75 67 20 66 69  11/20/98 (bug fi
29a50 78 29 20 48 61 6e 64 6c 65 20 70 6f 73 73 69 62  x) Handle possib
29a60 6c 65 20 4e 55 4c 4c 20 72 65 74 75 72 6e 20 69  le NULL return i
29a70 6e 20 54 63 6c 47 65 74 53 74 64 46 69 6c 65 73  n TclGetStdFiles
29a80 2e 20 28 52 4a 29 0a 0a 31 31 2f 32 30 2f 39 38  . (RJ)..11/20/98
29a90 20 28 62 75 67 20 66 69 78 29 20 54 68 65 20 64   (bug fix) The d
29aa0 6c 74 65 73 74 73 20 77 6f 75 6c 64 20 6e 6f 74  ltests would not
29ab0 20 62 75 69 6c 64 20 6f 6e 20 53 47 49 2e 20 20   build on SGI.  
29ac0 54 68 65 79 20 72 65 70 6f 72 74 65 64 0a 74 68  They reported.th
29ad0 61 74 20 79 6f 75 20 63 6f 75 6c 64 20 6e 6f 74  at you could not
29ae0 20 6d 69 78 20 6e 33 32 20 77 69 74 68 20 30 33   mix n32 with 03
29af0 32 20 62 69 6e 61 72 69 65 73 2e 20 20 54 68 65  2 binaries.  The
29b00 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70   configure scrip
29b10 74 0a 68 61 73 20 62 65 65 6e 20 6d 6f 64 69 66  t.has been modif
29b20 69 65 64 20 74 6f 20 67 65 74 20 74 68 65 20 45  ied to get the E
29b30 58 54 52 41 5f 43 46 4c 41 47 53 20 66 72 6f 6d  XTRA_CFLAGS from
29b40 20 74 68 65 20 74 63 6c 20 63 6f 6e 66 69 67 75   the tcl configu
29b50 72 65 0a 73 63 72 69 70 74 2e 20 20 5b 42 75 67  re.script.  [Bug
29b60 20 69 64 3a 20 38 34 30 5d 20 28 52 4a 29 0a 0a   id: 840] (RJ)..
29b70 31 32 2f 33 2f 39 38 20 28 62 75 67 20 66 69 78  12/3/98 (bug fix
29b80 29 20 57 69 6e 64 6f 77 73 20 4e 54 20 63 72 65  ) Windows NT cre
29b90 61 74 65 73 20 73 6f 63 6b 65 74 73 20 73 6f 20  ates sockets so 
29ba0 74 68 65 79 20 61 72 65 20 69 6e 68 65 72 69 74  they are inherit
29bb0 61 62 6c 65 0a 62 79 20 64 65 66 61 75 6c 74 2e  able.by default.
29bc0 20 20 46 69 78 65 64 20 73 6f 63 6b 65 74 20 63    Fixed socket c
29bd0 6f 64 65 20 73 6f 20 69 74 20 74 75 72 6e 73 20  ode so it turns 
29be0 6f 66 66 20 74 68 69 73 20 62 69 74 20 72 69 67  off this bit rig
29bf0 68 74 20 61 66 74 65 72 0a 63 72 65 61 74 69 6f  ht after.creatio
29c00 6e 20 73 6f 20 73 6f 63 6b 65 74 73 20 61 72 65  n so sockets are
29c10 6e 27 74 20 6b 65 70 74 20 6f 70 65 6e 20 62 79  n't kept open by
29c20 20 65 78 65 63 27 65 64 20 70 72 6f 63 65 73 73   exec'ed process
29c30 65 73 2e 20 5b 42 75 67 3a 20 38 39 32 5d 0a 54  es. [Bug: 892].T
29c40 68 61 6e 6b 73 20 74 6f 20 4b 65 76 69 6e 20 4b  hanks to Kevin K
29c50 65 6e 6e 79 20 66 6f 72 20 74 68 69 73 20 66 69  enny for this fi
29c60 78 2e 20 20 28 53 53 29 0a 0a 31 2f 31 31 2f 39  x.  (SS)..1/11/9
29c70 38 20 28 62 75 67 20 66 69 78 29 20 20 4f 6e 20  8 (bug fix)  On 
29c80 48 50 2c 20 22 69 6e 66 6f 20 73 68 61 72 65 64  HP, "info shared
29c90 6c 69 62 65 78 74 65 6e 73 69 6f 6e 22 20 77 61  libextension" wa
29ca0 73 20 72 65 74 75 72 6e 69 6e 67 20 0a 65 6d 70  s returning .emp
29cb0 74 79 20 73 74 72 69 6e 67 20 6f 6e 20 73 74 61  ty string on sta
29cc0 74 69 63 20 61 70 70 73 2e 20 20 49 74 20 6e 6f  tic apps.  It no
29cd0 77 20 61 6c 77 61 79 73 20 72 65 74 75 72 6e 73  w always returns
29ce0 20 22 2e 73 6c 22 2e 20 20 28 52 4a 29 0a 0a 31   ".sl".  (RJ)..1
29cf0 2f 32 38 2f 39 39 20 28 63 6f 6e 66 69 67 75 72  /28/99 (configur
29d00 65 20 63 68 61 6e 67 65 29 20 4e 6f 77 20 73 75  e change) Now su
29d10 70 70 6f 72 74 20 2d 70 69 70 65 20 6f 70 74 69  pport -pipe opti
29d20 6f 6e 20 6f 6e 20 67 63 63 2e 20 20 28 52 4a 29  on on gcc.  (RJ)
29d30 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66 69  ..2/2/99 (bug fi
29d40 78 29 20 46 69 78 65 64 20 69 6e 69 74 69 61 6c  x) Fixed initial
29d50 69 7a 61 74 69 6f 6e 20 70 72 6f 62 6c 65 6d 20  ization problem 
29d60 6f 6e 20 57 69 6e 64 6f 77 73 20 77 68 65 72 65  on Windows where
29d70 20 6e 6f 0a 73 65 61 72 63 68 69 6e 67 20 66 6f   no.searching fo
29d80 72 20 69 6e 69 74 2e 74 63 6c 20 77 6f 75 6c 64  r init.tcl would
29d90 20 62 65 20 70 65 72 66 6f 72 6d 65 64 20 69 66   be performed if
29da0 20 74 68 65 20 72 65 67 69 73 74 72 79 20 6b 65   the registry ke
29db0 79 73 20 77 65 72 65 0a 6d 69 73 73 69 6e 67 2e  ys were.missing.
29dc0 20 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32    (stanton)..2/2
29dd0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41 64  /99 (bug fix) Ad
29de0 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20  ded support for 
29df0 48 4b 45 59 5f 50 45 52 46 4f 52 4d 41 4e 43 45  HKEY_PERFORMANCE
29e00 5f 44 41 54 41 20 61 6e 64 0a 48 4b 45 59 5f 44  _DATA and.HKEY_D
29e10 59 4e 5f 44 41 54 41 20 6b 65 79 73 20 69 6e 20  YN_DATA keys in 
29e20 74 68 65 20 22 72 65 67 69 73 74 72 79 22 20 63  the "registry" c
29e30 6f 6d 6d 61 6e 64 2e 20 28 73 74 61 6e 74 6f 6e  ommand. (stanton
29e40 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20 66  )..2/2/99 (bug f
29e50 69 78 29 20 45 4e 4f 54 53 55 50 20 61 6e 64 20  ix) ENOTSUP and 
29e60 45 4f 50 4e 4f 54 53 55 50 50 20 63 6c 61 73 68  EOPNOTSUPP clash
29e70 65 64 20 6f 6e 20 73 6f 6d 65 20 4c 69 6e 75 78  ed on some Linux
29e80 0a 76 61 72 69 61 6e 74 73 2e 20 28 73 74 61 6e  .variants. (stan
29e90 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 65 6e  ton)..2/2/99 (en
29ea0 68 61 6e 63 65 6d 65 6e 74 29 20 54 68 65 20 22  hancement) The "
29eb0 6f 70 65 6e 22 20 63 6f 6d 6d 61 6e 64 20 68 61  open" command ha
29ec0 73 20 62 65 65 6e 20 63 68 61 6e 67 65 64 20 74  s been changed t
29ed0 6f 20 75 73 65 20 74 68 65 0a 6f 62 6a 65 63 74  o use the.object
29ee0 20 69 6e 74 65 72 66 61 63 65 73 2e 20 28 73 74   interfaces. (st
29ef0 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28  anton)..2/2/99 (
29f00 62 75 67 20 66 69 78 29 20 49 6e 20 73 6f 6d 65  bug fix) In some
29f10 20 63 61 73 65 73 20 54 63 6c 20 77 6f 75 6c 64   cases Tcl would
29f20 20 63 72 61 73 68 20 64 75 65 20 74 6f 20 61 6e   crash due to an
29f30 20 6f 76 65 72 66 6c 6f 77 20 6f 66 0a 74 68 65   overflow of.the
29f40 20 65 78 63 65 70 74 69 6f 6e 20 73 74 61 63 6b   exception stack
29f50 20 72 65 73 75 6c 74 69 6e 67 20 66 72 6f 6d 20   resulting from 
29f60 61 20 6d 69 73 73 69 6e 67 20 62 79 74 65 20 63  a missing byte c
29f70 6f 64 65 20 69 6e 20 73 6f 6d 65 0a 65 78 70 72  ode in some.expr
29f80 65 73 73 69 6f 6e 73 2e 20 28 73 74 61 6e 74 6f  essions. (stanto
29f90 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20  n)..2/2/99 (bug 
29fa0 66 69 78 29 20 43 68 61 6e 67 65 64 20 63 6f 6e  fix) Changed con
29fb0 66 69 67 75 72 65 20 73 6f 20 4c 69 6e 75 78 20  figure so Linux 
29fc0 61 6e 64 20 49 52 49 58 20 73 68 61 72 65 64 20  and IRIX shared 
29fd0 6c 69 62 72 61 72 69 65 73 0a 61 72 65 20 6c 69  libraries.are li
29fe0 6e 6b 65 64 20 77 69 74 68 20 74 68 65 20 73 79  nked with the sy
29ff0 73 74 65 6d 20 6c 69 62 72 61 72 69 65 73 2e 20  stem libraries. 
2a000 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39  (stanton)..2/2/9
2a010 39 20 28 62 75 67 20 66 69 78 29 20 41 64 64 65  9 (bug fix) Adde
2a020 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 42 53  d support for BS
2a030 44 49 20 34 2e 78 20 28 42 53 44 2f 4f 53 2d 34  DI 4.x (BSD/OS-4
2a040 2a 29 20 74 6f 20 74 68 65 0a 63 6f 6e 66 69 67  *) to the.config
2a050 75 72 65 20 73 63 72 69 70 74 2e 20 28 73 74 61  ure script. (sta
2a060 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62  nton)..2/2/99 (b
2a070 75 67 20 66 69 78 29 20 46 69 78 65 64 20 62 75  ug fix) Fixed bu
2a080 67 20 77 68 65 72 65 20 75 70 76 61 72 20 63 6f  g where upvar co
2a090 75 6c 64 20 72 65 73 75 72 72 65 63 74 20 61 20  uld resurrect a 
2a0a0 6e 61 6d 65 73 70 61 63 65 0a 76 61 72 69 61 62  namespace.variab
2a0b0 6c 65 20 61 66 74 65 72 20 74 68 65 20 6e 61 6d  le after the nam
2a0c0 65 73 70 61 63 65 20 68 61 64 20 62 65 65 6e 20  espace had been 
2a0d0 64 65 6c 65 74 65 64 2e 20 28 73 74 61 6e 74 6f  deleted. (stanto
2a0e0 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75 67 20  n)..2/2/99 (bug 
2a0f0 66 69 78 29 20 49 6e 20 73 6f 6d 65 20 63 61 73  fix) In some cas
2a100 65 73 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67  es when creating
2a110 20 76 61 72 69 61 62 6c 65 73 2c 20 74 68 65 0a   variables, the.
2a120 69 6e 74 65 72 70 72 65 74 65 72 20 72 65 73 75  interpreter resu
2a130 6c 74 20 77 61 73 20 62 65 69 6e 67 20 6d 6f 64  lt was being mod
2a140 69 66 69 65 64 20 65 76 65 6e 20 69 66 20 74 68  ified even if th
2a150 65 20 54 43 4c 5f 4c 45 41 56 45 5f 45 52 52 5f  e TCL_LEAVE_ERR_
2a160 4d 53 47 0a 66 6c 61 67 20 77 61 73 20 73 65 74  MSG.flag was set
2a170 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32  . (stanton)..2/2
2a180 2f 39 39 20 28 62 75 67 20 66 69 78 20 26 20 6e  /99 (bug fix & n
2a190 65 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e  ew feature) Chan
2a1a0 67 65 64 20 74 68 65 20 73 6f 63 6b 65 74 20 64  ged the socket d
2a1b0 72 69 76 65 72 73 20 74 6f 20 70 72 6f 70 65 72  rivers to proper
2a1c0 6c 79 0a 68 61 6e 64 6c 65 20 66 61 69 6c 75 72  ly.handle failur
2a1d0 65 73 20 64 75 72 69 6e 67 20 61 6e 20 61 73 79  es during an asy
2a1e0 6e 63 20 73 6f 63 6b 65 74 20 63 6f 6e 6e 65 63  nc socket connec
2a1f0 74 69 6f 6e 2e 20 20 41 64 64 65 64 20 61 20 6e  tion.  Added a n
2a200 65 77 0a 66 63 6f 6e 66 69 67 75 72 65 20 6f 70  ew.fconfigure op
2a210 74 69 6f 6e 20 22 2d 65 72 72 6f 72 22 20 74 6f  tion "-error" to
2a220 20 72 65 74 72 69 65 76 65 20 74 68 65 20 66 61   retrieve the fa
2a230 69 6c 75 72 65 20 6d 65 73 73 61 67 65 2e 20 20  ilure message.  
2a240 53 65 65 20 74 68 65 0a 73 6f 63 6b 65 74 2e 6e  See the.socket.n
2a250 20 6d 61 6e 75 61 6c 20 65 6e 74 72 79 20 66 6f   manual entry fo
2a260 72 20 64 65 74 61 69 6c 73 2e 20 28 73 74 61 6e  r details. (stan
2a270 74 6f 6e 29 0a 0a 32 2f 32 2f 39 39 20 28 62 75  ton)..2/2/99 (bu
2a280 67 20 66 69 78 29 20 44 65 6c 65 74 69 6e 67 20  g fix) Deleting 
2a290 61 20 72 65 6e 61 6d 65 64 20 69 6e 74 65 72 70  a renamed interp
2a2a0 20 61 6c 69 61 73 20 63 6f 75 6c 64 20 72 65 73   alias could res
2a2b0 75 6c 74 20 69 6e 20 61 0a 70 61 6e 69 63 2e 20  ult in a.panic. 
2a2c0 28 73 74 61 6e 74 6f 6e 29 0a 0a 32 2f 32 2f 39  (stanton)..2/2/9
2a2d0 39 20 28 66 65 61 74 75 72 65 20 63 68 61 6e 67  9 (feature chang
2a2e0 65 2f 62 75 67 20 66 69 78 29 20 43 68 61 6e 67  e/bug fix) Chang
2a2f0 65 64 20 74 68 65 20 62 65 68 61 76 69 6f 72 20  ed the behavior 
2a300 6f 66 20 22 66 69 6c 65 0a 65 78 74 65 6e 73 69  of "file.extensi
2a310 6f 6e 22 20 73 6f 20 74 68 61 74 20 69 74 20 73  on" so that it s
2a320 70 6c 69 74 73 20 61 74 20 74 68 65 20 6c 61 73  plits at the las
2a330 74 20 70 65 72 69 6f 64 2e 20 20 4e 6f 77 20 74  t period.  Now t
2a340 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 66 0a  he extension of.
2a350 61 20 66 69 6c 65 20 6c 69 6b 65 20 22 66 6f 6f  a file like "foo
2a360 2e 2e 6f 22 20 69 73 20 22 2e 6f 22 20 69 6e 73  ..o" is ".o" ins
2a370 74 65 61 64 20 6f 66 20 22 2e 2e 6f 22 20 61 73  tead of "..o" as
2a380 20 69 6e 20 70 72 65 76 69 6f 75 73 20 76 65 72   in previous ver
2a390 73 69 6f 6e 73 2e 20 0a 2a 2a 2a 20 50 4f 54 45  sions. .*** POTE
2a3a0 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42  NTIAL INCOMPATIB
2a3b0 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d 2d 2d 2d  ILITY ***..-----
2a3c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
2a3d0 65 61 73 65 64 20 38 2e 30 2e 35 2c 20 33 2f 39  eased 8.0.5, 3/9
2a3e0 2f 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  /99 ------------
2a3f0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 3d  -------------..=
2a400 3d 3d 3d 3d 3d 3d 3d 20 43 68 61 6e 67 65 73 20  ======= Changes 
2a410 66 6f 72 20 38 2e 30 20 67 6f 20 61 62 6f 76 65  for 8.0 go above
2a420 20 74 68 69 73 20 6c 69 6e 65 20 3d 3d 3d 3d 3d   this line =====
2a430 3d 3d 3d 0a 3d 3d 3d 3d 3d 3d 3d 3d 20 43 68 61  ===.======== Cha
2a440 6e 67 65 73 20 66 6f 72 20 38 2e 31 20 67 6f 20  nges for 8.1 go 
2a450 62 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 20  below this line 
2a460 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 36 2f 31 38 2f 39  ========..6/18/9
2a470 37 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  7 (new feature) 
2a480 54 63 6c 20 6e 6f 77 20 73 75 70 70 6f 72 74 73  Tcl now supports
2a490 20 69 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 20 63   international c
2a4a0 68 61 72 61 63 74 65 72 20 73 65 74 73 3a 0a 20  haracter sets:. 
2a4b0 20 20 20 2d 20 41 6c 6c 20 43 20 41 50 49 73 20     - All C APIs 
2a4c0 6e 6f 77 20 61 63 63 65 70 74 20 55 54 46 2d 38  now accept UTF-8
2a4d0 20 73 74 72 69 6e 67 73 20 69 6e 73 74 65 61 64   strings instead
2a4e0 20 6f 66 20 69 73 6f 38 38 35 39 2d 31 20 73 74   of iso8859-1 st
2a4f0 72 69 6e 67 73 2c 0a 20 20 20 20 20 20 77 68 65  rings,.      whe
2a500 72 65 76 65 72 20 79 6f 75 20 73 65 65 20 22 63  rever you see "c
2a510 68 61 72 20 2a 22 2c 20 75 6e 6c 65 73 73 20 65  har *", unless e
2a520 78 70 6c 69 63 69 74 6c 79 20 6e 6f 74 65 64 20  xplicitly noted 
2a530 6f 74 68 65 72 77 69 73 65 2e 0a 20 20 20 20 2d  otherwise..    -
2a540 20 41 6c 6c 20 54 63 6c 20 73 74 72 69 6e 67 73   All Tcl strings
2a550 20 72 65 70 72 65 73 65 6e 74 65 64 20 69 6e 20   represented in 
2a560 55 54 46 2d 38 2c 20 77 68 69 63 68 20 69 73 20  UTF-8, which is 
2a570 61 20 63 6f 6e 76 65 6e 69 65 6e 74 0a 20 20 20  a convenient.   
2a580 20 20 20 6d 75 6c 74 69 2d 62 79 74 65 20 65 6e     multi-byte en
2a590 63 6f 64 69 6e 67 20 6f 66 20 55 6e 69 63 6f 64  coding of Unicod
2a5a0 65 2e 20 20 56 61 72 69 61 62 6c 65 20 6e 61 6d  e.  Variable nam
2a5b0 65 73 2c 20 70 72 6f 63 65 64 75 72 65 20 6e 61  es, procedure na
2a5c0 6d 65 73 2c 0a 20 20 20 20 20 20 61 6e 64 20 61  mes,.      and a
2a5d0 6c 6c 20 6f 74 68 65 72 20 76 61 6c 75 65 73 20  ll other values 
2a5e0 69 6e 20 54 63 6c 20 6d 61 79 20 69 6e 63 6c 75  in Tcl may inclu
2a5f0 64 65 20 61 72 62 69 74 72 61 72 79 20 55 6e 69  de arbitrary Uni
2a600 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 2e  code characters.
2a610 0a 20 20 20 20 20 20 46 6f 72 20 65 78 61 6d 70  .      For examp
2a620 6c 65 2c 20 74 68 65 20 54 63 6c 20 63 6f 6d 6d  le, the Tcl comm
2a630 61 6e 64 20 22 73 74 72 69 6e 67 20 6c 65 6e 67  and "string leng
2a640 74 68 22 20 72 65 74 75 72 6e 73 20 68 6f 77 20  th" returns how 
2a650 6d 61 6e 79 0a 20 20 20 20 20 20 55 6e 69 63 6f  many.      Unico
2a660 64 65 20 63 68 61 72 61 63 74 65 72 73 20 61 72  de characters ar
2a670 65 20 69 6e 20 74 68 65 20 61 72 67 75 6d 65 6e  e in the argumen
2a680 74 20 73 74 72 69 6e 67 2e 0a 20 20 20 20 2d 20  t string..    - 
2a690 46 6f 72 20 4a 61 76 61 20 63 6f 6d 70 61 74 69  For Java compati
2a6a0 62 69 6c 69 74 79 2c 20 65 6d 62 65 64 64 65 64  bility, embedded
2a6b0 20 6e 75 6c 6c 20 62 79 74 65 73 20 69 6e 20 43   null bytes in C
2a6c0 20 73 74 72 69 6e 67 73 20 61 72 65 0a 20 20 20   strings are.   
2a6d0 20 20 20 72 65 70 72 65 73 65 6e 74 65 64 20 61     represented a
2a6e0 73 20 5c 78 43 30 38 30 20 69 6e 20 55 54 46 2d  s \xC080 in UTF-
2a6f0 38 20 73 74 72 69 6e 67 73 2c 20 62 75 74 20 74  8 strings, but t
2a700 68 65 20 6e 75 6c 6c 20 62 79 74 65 20 61 74 20  he null byte at 
2a710 74 68 65 20 65 6e 64 0a 20 20 20 20 20 20 6f 66  the end.      of
2a720 20 61 20 55 54 46 2d 38 20 73 74 72 69 6e 67 20   a UTF-8 string 
2a730 72 65 6d 61 69 6e 73 20 5c 30 2e 20 20 54 68 75  remains \0.  Thu
2a740 73 20 54 63 6c 20 73 74 72 69 6e 67 73 20 6f 6e  s Tcl strings on
2a750 63 65 20 61 67 61 69 6e 20 64 6f 20 6e 6f 74 0a  ce again do not.
2a760 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 20 6e 75        contain nu
2a770 6c 6c 20 62 79 74 65 73 2c 20 65 78 63 65 70 74  ll bytes, except
2a780 20 66 6f 72 20 74 65 72 6d 69 6e 61 74 69 6f 6e   for termination
2a790 20 62 79 74 65 73 2e 0a 20 20 20 20 2d 20 46 6f   bytes..    - Fo
2a7a0 72 20 4a 61 76 61 20 63 6f 6d 70 61 74 69 62 69  r Java compatibi
2a7b0 6c 69 74 79 2c 20 22 5c 75 58 58 58 58 22 20 69  lity, "\uXXXX" i
2a7c0 73 20 75 73 65 64 20 69 6e 20 54 63 6c 20 74 6f  s used in Tcl to
2a7d0 20 65 6e 74 65 72 20 61 20 55 6e 69 63 6f 64 65   enter a Unicode
2a7e0 0a 20 20 20 20 20 20 63 68 61 72 61 63 74 65 72  .      character
2a7f0 2e 20 20 22 5c 75 30 30 30 30 22 20 74 68 72 6f  .  "\u0000" thro
2a800 75 67 68 20 22 5c 75 66 66 66 66 22 20 61 72 65  ugh "\uffff" are
2a810 20 61 63 63 65 70 74 61 62 6c 65 20 55 6e 69 63   acceptable Unic
2a820 6f 64 65 20 0a 20 20 20 20 20 20 63 68 61 72 61  ode .      chara
2a830 63 74 65 72 73 2e 20 20 0a 20 20 20 20 2d 20 22  cters.  .    - "
2a840 5c 78 58 58 22 20 69 73 20 75 73 65 64 20 74 6f  \xXX" is used to
2a850 20 65 6e 74 65 72 20 61 20 73 6d 61 6c 6c 20 55   enter a small U
2a860 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72  nicode character
2a870 20 28 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20   (between 0 and 
2a880 32 35 35 29 0a 20 20 20 20 20 20 69 6e 20 54 63  255).      in Tc
2a890 6c 2e 0a 20 20 20 20 2d 20 54 63 6c 20 61 75 74  l..    - Tcl aut
2a8a0 6f 6d 61 74 69 63 61 6c 6c 79 20 74 72 61 6e 73  omatically trans
2a8b0 6c 61 74 65 73 20 62 65 74 77 65 65 6e 20 55 54  lates between UT
2a8c0 46 2d 38 20 61 6e 64 20 74 68 65 20 6e 6f 72 6d  F-8 and the norm
2a8d0 61 6c 20 65 6e 63 6f 64 69 6e 67 20 66 6f 72 0a  al encoding for.
2a8e0 20 20 20 20 20 20 74 68 65 20 70 6c 61 74 66 6f        the platfo
2a8f0 72 6d 20 64 75 72 69 6e 67 20 69 6e 74 65 72 61  rm during intera
2a900 63 74 69 6f 6e 73 20 77 69 74 68 20 74 68 65 20  ctions with the 
2a910 73 79 73 74 65 6d 2e 0a 20 20 20 20 2d 20 54 68  system..    - Th
2a920 65 20 66 63 6f 6e 66 69 67 75 72 65 20 63 6f 6d  e fconfigure com
2a930 6d 61 6e 64 20 6e 6f 77 20 73 75 70 70 6f 72 74  mand now support
2a940 73 20 61 20 2d 65 6e 63 6f 64 69 6e 67 20 6f 70  s a -encoding op
2a950 74 69 6f 6e 20 66 6f 72 20 73 70 65 63 69 66 79  tion for specify
2a960 69 6e 67 0a 20 20 20 20 20 20 74 68 65 20 65 6e  ing.      the en
2a970 63 6f 64 69 6e 67 20 6f 66 20 61 6e 20 6f 70 65  coding of an ope
2a980 6e 20 66 69 6c 65 20 6f 72 20 73 6f 63 6b 65 74  n file or socket
2a990 2e 20 20 54 63 6c 20 77 69 6c 6c 20 61 75 74 6f  .  Tcl will auto
2a9a0 6d 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20  matically.      
2a9b0 74 72 61 6e 73 6c 61 74 65 20 62 65 74 77 65 65  translate betwee
2a9c0 6e 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20  n the specified 
2a9d0 65 6e 63 6f 64 69 6e 67 20 61 6e 64 20 55 54 46  encoding and UTF
2a9e0 2d 38 20 64 75 72 69 6e 67 20 49 2f 4f 2e 20 0a  -8 during I/O. .
2a9f0 20 20 20 20 20 20 53 65 65 20 74 68 65 20 64 69        See the di
2aa00 72 65 63 74 6f 72 79 20 6c 69 62 72 61 72 79 2f  rectory library/
2aa10 65 6e 63 6f 64 69 6e 67 20 74 6f 20 66 69 6e 64  encoding to find
2aa20 20 6f 75 74 20 77 68 61 74 20 65 6e 63 6f 64 69   out what encodi
2aa30 6e 67 73 20 61 72 65 0a 20 20 20 20 20 20 73 75  ngs are.      su
2aa40 70 70 6f 72 74 65 64 20 28 65 76 65 6e 74 75 61  pported (eventua
2aa50 6c 6c 79 20 74 68 65 72 65 20 77 69 6c 6c 20 62  lly there will b
2aa60 65 20 61 6e 20 22 65 6e 63 6f 64 69 6e 67 22 20  e an "encoding" 
2aa70 63 6f 6d 6d 61 6e 64 20 74 68 61 74 0a 20 20 20  command that.   
2aa80 20 20 20 6d 61 6b 65 73 20 74 68 69 73 20 69 6e     makes this in
2aa90 66 6f 72 6d 61 74 69 6f 6e 20 6d 6f 72 65 20 61  formation more a
2aaa0 63 63 65 73 73 69 62 6c 65 29 2e 0a 20 20 20 20  ccessible)..    
2aab0 2d 20 54 68 65 72 65 20 61 72 65 20 73 65 76 65  - There are seve
2aac0 72 61 6c 20 6e 65 77 20 43 20 41 50 49 73 20 74  ral new C APIs t
2aad0 68 61 74 20 73 75 70 70 6f 72 74 20 55 54 46 2d  hat support UTF-
2aae0 38 20 61 6e 64 20 76 61 72 69 6f 75 73 20 65 6e  8 and various en
2aaf0 63 6f 64 69 6e 67 73 2e 0a 20 20 20 20 20 20 53  codings..      S
2ab00 65 65 20 55 74 66 2e 33 20 66 6f 72 20 70 72 6f  ee Utf.3 for pro
2ab10 63 65 64 75 72 65 73 20 74 68 61 74 20 74 72 61  cedures that tra
2ab20 6e 73 6c 61 74 65 20 62 65 74 77 65 65 6e 20 55  nslate between U
2ab30 6e 69 63 6f 64 65 20 61 6e 64 20 55 54 46 2d 38  nicode and UTF-8
2ab40 0a 20 20 20 20 20 20 61 6e 64 20 6d 61 6e 69 70  .      and manip
2ab50 75 6c 61 74 65 20 55 54 46 2d 38 20 73 74 72 69  ulate UTF-8 stri
2ab60 6e 67 73 2e 20 53 65 65 20 45 6e 63 6f 64 69 6e  ngs. See Encodin
2ab70 67 2e 33 20 66 6f 72 20 70 72 6f 63 65 64 75 72  g.3 for procedur
2ab80 65 73 20 74 68 61 74 0a 20 20 20 20 20 20 63 72  es that.      cr
2ab90 65 61 74 65 20 6e 65 77 20 65 6e 63 6f 64 69 6e  eate new encodin
2aba0 67 73 20 61 6e 64 20 74 72 61 6e 73 6c 61 74 65  gs and translate
2abb0 20 62 65 74 77 65 65 6e 20 65 6e 63 6f 64 69 6e   between encodin
2abc0 67 73 2e 20 20 53 65 65 0a 20 20 20 20 20 20 54  gs.  See.      T
2abd0 6f 55 70 70 65 72 2e 33 20 66 6f 72 20 70 72 6f  oUpper.3 for pro
2abe0 63 65 64 75 72 65 73 20 74 68 61 74 20 70 65 72  cedures that per
2abf0 66 6f 72 6d 20 63 61 73 65 20 63 6f 6e 76 65 72  form case conver
2ac00 73 69 6f 6e 73 20 6f 6e 20 55 54 46 2d 38 0a 20  sions on UTF-8. 
2ac10 20 20 20 20 20 73 74 72 69 6e 67 73 2e 0a 0a 39       strings...9
2ac20 2f 31 38 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d  /18/97 (enhancem
2ac30 65 6e 74 29 20 4c 69 74 65 72 61 6c 20 6f 62 6a  ent) Literal obj
2ac40 65 63 74 73 20 61 72 65 20 6e 6f 77 20 73 68 61  ects are now sha
2ac50 72 65 64 20 62 79 20 74 68 65 20 42 79 74 65 43  red by the ByteC
2ac60 6f 64 65 0a 73 74 72 75 63 74 75 72 65 73 20 63  ode.structures c
2ac70 72 65 61 74 65 64 20 77 68 65 6e 20 63 6f 6d 70  reated when comp
2ac80 69 6c 65 64 20 64 69 66 66 65 72 65 6e 74 20 73  iled different s
2ac90 63 72 69 70 74 73 2e 20 54 68 69 73 20 73 61 76  cripts. This sav
2aca0 65 73 20 75 70 20 74 6f 20 34 35 25 0a 6f 66 20  es up to 45%.of 
2acb0 74 68 65 20 74 6f 74 61 6c 20 6d 65 6d 6f 72 79  the total memory
2acc0 20 6e 65 65 64 65 64 20 66 6f 72 20 61 6c 6c 20   needed for all 
2acd0 6c 69 74 65 72 61 6c 73 2e 20 28 42 4c 29 0a 0a  literals. (BL)..
2ace0 39 2f 32 34 2f 39 37 20 28 62 75 67 20 66 69 78  9/24/97 (bug fix
2acf0 65 73 29 20 46 69 78 65 64 20 54 63 6c 5f 50 61  es) Fixed Tcl_Pa
2ad00 72 73 65 43 6f 6d 6d 61 6e 64 20 70 61 72 73 69  rseCommand parsi
2ad10 6e 67 20 6f 66 20 62 61 63 6b 73 6c 61 73 68 2d  ng of backslash-
2ad20 6e 65 77 6c 69 6e 65 0a 73 65 71 75 65 6e 63 65  newline.sequence
2ad30 73 20 61 74 20 73 74 61 72 74 20 6f 66 20 63 6f  s at start of co
2ad40 6d 6d 61 6e 64 20 77 6f 72 64 73 2e 20 53 75 70  mmand words. Sup
2ad50 70 72 65 73 73 65 64 20 54 63 6c 5f 45 76 61 6c  pressed Tcl_Eval
2ad60 44 69 72 65 63 74 20 65 72 72 6f 72 20 6c 6f 67  Direct error log
2ad70 67 69 6e 67 0a 69 66 20 6e 6f 6e 2d 54 43 4c 5f  ging.if non-TCL_
2ad80 4f 4b 20 72 65 73 75 6c 74 20 77 61 73 6e 27 74  OK result wasn't
2ad90 20 61 6e 20 65 72 72 6f 72 2e 20 28 42 4c 29 0a   an error. (BL).
2ada0 0a 31 30 2f 31 37 2f 39 37 20 28 66 65 61 74 75  .10/17/97 (featu
2adb0 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  re enhancement) 
2adc0 22 7e 75 73 65 72 6e 61 6d 65 22 20 6e 6f 77 20  "~username" now 
2add0 72 65 66 65 72 73 20 74 6f 20 74 68 65 20 75 73  refers to the us
2ade0 65 72 73 27 20 68 6f 6d 65 0a 64 69 72 65 63 74  ers' home.direct
2adf0 6f 72 79 20 6f 6e 20 57 69 6e 64 6f 77 73 20 28  ory on Windows (
2ae00 70 72 65 76 69 6f 75 73 6c 79 20 61 6c 77 61 79  previously alway
2ae10 73 20 72 65 74 75 72 6e 65 64 20 66 61 69 6c 75  s returned failu
2ae20 72 65 29 2e 20 28 43 43 53 29 0a 0a 31 30 2f 32  re). (CCS)..10/2
2ae30 30 2f 39 37 20 28 69 6d 70 6c 65 6d 65 6e 74 61  0/97 (implementa
2ae40 74 69 6f 6e 20 63 68 61 6e 67 65 29 20 54 68 65  tion change) The
2ae50 20 54 63 6c 20 70 61 72 73 65 72 20 68 61 73 20   Tcl parser has 
2ae60 62 65 65 6e 20 63 6f 6d 70 6c 65 74 65 6c 79 20  been completely 
2ae70 72 65 77 72 69 74 74 65 6e 0a 74 6f 20 6d 61 6b  rewritten.to mak
2ae80 65 20 69 74 20 6d 6f 72 65 20 6d 6f 64 75 6c 61  e it more modula
2ae90 72 2e 20 20 49 74 20 63 61 6e 20 6e 6f 77 20 62  r.  It can now b
2aea0 65 20 75 73 65 64 20 74 6f 20 70 61 72 73 65 20  e used to parse 
2aeb0 61 20 73 63 72 69 70 74 20 77 69 74 68 6f 75 74  a script without
2aec0 20 61 63 74 75 61 6c 6c 79 0a 65 78 65 63 75 74   actually.execut
2aed0 69 6e 67 20 69 74 2e 20 20 54 68 65 20 41 50 49  ing it.  The API
2aee0 73 20 66 6f 72 20 74 68 65 20 6e 65 77 20 70 61  s for the new pa
2aef0 72 73 65 72 20 61 72 65 20 6e 6f 74 20 63 6f 72  rser are not cor
2af00 72 65 63 74 6c 79 20 65 78 70 6f 72 74 65 64 2c  rectly exported,
2af10 20 62 75 74 0a 74 68 65 79 20 77 69 6c 6c 20 65   but.they will e
2af20 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 65 78 70  ventually be exp
2af30 6f 72 74 65 64 20 61 6e 64 20 61 75 67 6d 65 6e  orted and augmen
2af40 74 65 64 20 77 69 74 68 20 54 63 6c 20 63 6f 6d  ted with Tcl com
2af50 6d 61 6e 64 73 20 73 6f 20 74 68 61 74 0a 54 63  mands so that.Tc
2af60 6c 20 73 63 72 69 70 74 73 20 63 61 6e 20 70 61  l scripts can pa
2af70 72 73 65 20 6f 74 68 65 72 20 54 63 6c 20 73 63  rse other Tcl sc
2af80 72 69 70 74 73 2e 20 28 4a 4f 29 0a 0a 31 30 2f  ripts. (JO)..10/
2af90 32 31 2f 39 37 20 28 41 50 49 20 63 68 61 6e 67  21/97 (API chang
2afa0 65 29 20 41 64 64 65 64 20 22 66 6c 61 67 73 22  e) Added "flags"
2afb0 20 61 72 67 75 6d 65 6e 74 20 74 6f 20 54 63 6c   argument to Tcl
2afc0 5f 45 76 61 6c 4f 62 6a 2c 20 72 65 6d 6f 76 65  _EvalObj, remove
2afd0 64 0a 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c  d.Tcl_GlobalEval
2afe0 4f 62 6a 20 70 72 6f 63 65 64 75 72 65 2e 20 20  Obj procedure.  
2aff0 41 64 64 65 64 20 6e 65 77 20 70 72 6f 63 65 64  Added new proced
2b000 75 72 65 73 20 54 63 6c 5f 45 76 61 6c 32 20 61  ures Tcl_Eval2 a
2b010 6e 64 0a 54 63 6c 5f 45 76 61 6c 4f 62 6a 76 2e  nd.Tcl_EvalObjv.
2b020 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (JO).*** POTENT
2b030 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2b040 49 54 59 20 2a 2a 2a 0a 0a 31 30 2f 32 32 2f 39  ITY ***..10/22/9
2b050 37 20 28 41 50 49 20 63 68 61 6e 67 65 29 20 52  7 (API change) R
2b060 65 6e 61 6d 65 64 20 54 63 6c 5f 4f 62 6a 53 65  enamed Tcl_ObjSe
2b070 74 56 61 72 32 20 61 6e 64 20 54 63 6c 5f 4f 62  tVar2 and Tcl_Ob
2b080 6a 47 65 74 56 61 72 32 20 74 6f 0a 54 63 6c 5f  jGetVar2 to.Tcl_
2b090 53 65 74 4f 62 6a 56 61 72 32 20 61 6e 64 20 54  SetObjVar2 and T
2b0a0 63 6c 5f 47 65 74 4f 62 6a 56 61 72 32 20 28 66  cl_GetObjVar2 (f
2b0b0 6f 72 20 63 6f 6e 73 69 73 74 65 6e 63 79 20 77  or consistency w
2b0c0 69 74 68 20 6f 74 68 65 72 20 43 20 41 50 49 73  ith other C APIs
2b0d0 29 0a 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68  ).and changed th
2b0e0 65 20 6e 61 6d 65 20 61 72 67 75 6d 65 6e 74 73  e name arguments
2b0f0 20 74 6f 20 62 65 20 73 74 72 69 6e 67 73 20 69   to be strings i
2b100 6e 73 74 65 61 64 20 6f 66 20 6f 62 6a 65 63 74  nstead of object
2b110 73 2e 20 20 28 4a 4f 29 0a 2a 2a 2a 20 50 4f 54  s.  (JO).*** POT
2b120 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
2b130 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 31 30 2f 32  BILITY ***..10/2
2b140 37 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65 6e  7/97 (enhancemen
2b150 74 29 20 42 79 74 65 63 6f 64 65 20 63 6f 6d 70  t) Bytecode comp
2b160 69 6c 65 72 20 72 65 77 72 69 74 74 65 6e 20 74  iler rewritten t
2b170 6f 20 75 73 65 20 74 68 65 20 6e 65 77 20 54 63  o use the new Tc
2b180 6c 0a 70 61 72 73 65 72 2e 20 28 42 4c 29 0a 0a  l.parser. (BL)..
2b190 31 31 2f 33 2f 39 37 20 28 4e 65 77 20 72 6f 75  11/3/97 (New rou
2b1a0 74 69 6e 65 73 29 20 41 64 64 65 64 20 54 63 6c  tines) Added Tcl
2b1b0 5f 41 70 70 65 6e 64 4f 62 6a 54 6f 4f 62 6a 2c  _AppendObjToObj,
2b1c0 20 77 68 69 63 68 20 61 70 70 65 6e 64 73 20 74   which appends t
2b1d0 68 65 0a 73 74 72 69 6e 67 20 72 65 70 20 6f 66  he.string rep of
2b1e0 20 6f 6e 65 20 54 63 6c 5f 4f 62 6a 20 74 6f 20   one Tcl_Obj to 
2b1f0 61 6e 6f 74 68 65 72 2e 20 41 64 64 65 64 20 54  another. Added T
2b200 63 6c 5f 47 65 74 49 6e 64 65 78 46 72 6f 6d 4f  cl_GetIndexFromO
2b210 62 6a 53 74 72 75 63 74 2c 0a 77 68 69 63 68 20  bjStruct,.which 
2b220 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 54 63  is similar to Tc
2b230 6c 5f 47 65 74 49 6e 64 65 78 46 72 6f 6d 4f 62  l_GetIndexFromOb
2b240 6a 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 79  j, except that y
2b250 6f 75 20 63 61 6e 20 67 69 76 65 20 61 6e 0a 6f  ou can give an.o
2b260 66 66 73 65 74 20 62 65 74 77 65 65 6e 20 73 74  ffset between st
2b270 72 69 6e 67 73 2e 20 54 68 69 73 20 61 6c 6c 6f  rings. This allo
2b280 77 73 20 54 63 6c 5f 47 65 74 49 6e 64 65 78 46  ws Tcl_GetIndexF
2b290 72 6f 6d 4f 62 6a 53 74 72 75 63 74 20 74 6f 20  romObjStruct to 
2b2a0 62 65 0a 63 61 6c 6c 65 64 20 77 69 74 68 20 61  be.called with a
2b2b0 20 74 61 62 6c 65 20 6f 66 20 72 65 63 6f 72 64   table of record
2b2c0 73 20 77 68 69 63 68 20 68 61 76 65 20 73 74 72  s which have str
2b2d0 69 6e 67 73 20 69 6e 20 74 68 65 6d 2e 20 28 53  ings in them. (S
2b2e0 52 50 29 0a 0a 31 32 2f 34 2f 39 37 20 28 65 6e  RP)..12/4/97 (en
2b2f0 68 61 6e 63 65 6d 65 6e 74 29 20 4e 65 77 20 54  hancement) New T
2b300 63 6c 20 65 78 70 72 65 73 73 69 6f 6e 20 70 61  cl expression pa
2b310 72 73 65 72 20 61 64 64 65 64 2e 20 41 64 64 65  rser added. Adde
2b320 64 20 6e 65 77 20 70 72 6f 63 65 64 75 72 65 0a  d new procedure.
2b330 54 63 6c 5f 50 61 72 73 65 45 78 70 72 20 61 6e  Tcl_ParseExpr an
2b340 64 20 6e 65 77 20 74 6f 6b 65 6e 20 74 79 70 65  d new token type
2b350 73 20 54 43 4c 5f 54 4f 4b 45 4e 5f 53 55 42 5f  s TCL_TOKEN_SUB_
2b360 45 58 50 52 20 61 6e 64 0a 54 43 4c 5f 54 4f 4b  EXPR and.TCL_TOK
2b370 45 4e 5f 4f 50 45 52 41 54 4f 52 2e 20 45 78 70  EN_OPERATOR. Exp
2b380 72 65 73 73 69 6f 6e 20 63 6f 6d 70 69 6c 65 72  ression compiler
2b390 20 69 73 20 72 65 69 6d 70 6c 65 6d 65 6e 74 65   is reimplemente
2b3a0 64 20 74 6f 20 75 73 65 20 74 68 69 73 0a 70 61  d to use this.pa
2b3b0 72 73 65 72 2e 20 28 42 4c 29 0a 0a 31 32 2f 39  rser. (BL)..12/9
2b3c0 2f 39 37 20 28 62 75 67 20 66 69 78 29 20 54 63  /97 (bug fix) Tc
2b3d0 6c 5f 45 76 61 6c 4f 62 6a 28 29 20 69 6e 63 72  l_EvalObj() incr
2b3e0 65 6d 65 6e 74 73 2f 64 65 63 72 65 6d 65 6e 74  ements/decrement
2b3f0 73 20 74 68 65 20 72 65 66 63 6f 75 6e 74 20 6f  s the refcount o
2b400 66 20 74 68 65 0a 73 63 72 69 70 74 20 6f 62 6a  f the.script obj
2b410 65 63 74 20 74 6f 20 70 72 65 76 65 6e 74 20 74  ect to prevent t
2b420 68 65 20 6f 62 6a 65 63 74 20 66 72 6f 6d 20 64  he object from d
2b430 65 6c 65 74 69 6e 67 20 69 74 73 65 6c 66 20 77  eleting itself w
2b440 68 69 6c 65 20 69 6e 20 74 68 65 0a 6d 69 64 64  hile in the.midd
2b450 6c 65 20 6f 66 20 62 65 69 6e 67 20 65 76 61 6c  le of being eval
2b460 75 61 74 65 64 2e 20 28 43 43 53 29 0a 0a 31 32  uated. (CCS)..12
2b470 2f 39 2f 39 37 20 28 62 75 67 20 66 69 78 29 20  /9/97 (bug fix) 
2b480 4d 65 6d 6f 72 79 20 6c 65 61 6b 20 69 6e 20 54  Memory leak in T
2b490 63 6c 5f 47 65 74 73 4f 62 6a 43 6d 64 28 29 2e  cl_GetsObjCmd().
2b4a0 20 28 43 43 53 29 0a 0a 31 32 2f 31 31 2f 39 37   (CCS)..12/11/97
2b4b0 20 28 62 75 67 20 66 69 78 29 20 45 6e 76 69 72   (bug fix) Envir
2b4c0 6f 6e 6d 65 6e 74 20 61 72 72 61 79 20 6c 65 61  onment array lea
2b4d0 6b 65 64 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20  ked memory when 
2b4e0 63 6f 6d 70 69 6c 65 64 20 77 69 74 68 0a 56 69  compiled with.Vi
2b4f0 73 75 61 6c 20 43 2b 2b 2e 20 28 53 53 29 0a 0a  sual C++. (SS)..
2b500 31 32 2f 31 31 2f 39 37 20 28 62 75 67 20 66 69  12/11/97 (bug fi
2b510 78 29 20 46 69 6c 65 20 65 76 65 6e 74 73 20 61  x) File events a
2b520 6e 64 20 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 20  nd non-blocking 
2b530 49 2f 4f 20 64 69 64 20 6e 6f 74 20 77 6f 72 6b  I/O did not work
2b540 20 6f 6e 0a 70 69 70 65 73 20 75 6e 64 65 72 20   on.pipes under 
2b550 57 69 6e 64 6f 77 73 2e 20 20 43 68 61 6e 67 65  Windows.  Change
2b560 64 20 74 6f 20 75 73 65 20 74 68 72 65 61 64 73  d to use threads
2b570 20 74 6f 20 61 63 68 69 65 76 65 20 6e 6f 6e 2d   to achieve non-
2b580 62 6c 6f 63 6b 69 6e 67 0a 62 65 68 61 76 69 6f  blocking.behavio
2b590 72 2e 20 28 53 53 29 0a 0a 31 32 2f 31 38 2f 39  r. (SS)..12/18/9
2b5a0 37 20 28 62 75 67 20 66 69 78 65 73 29 20 46 69  7 (bug fixes) Fi
2b5b0 78 65 64 20 73 65 67 66 61 75 6c 74 20 69 6e 20  xed segfault in 
2b5c0 22 6e 61 6d 65 73 70 61 63 65 20 69 6d 70 6f 72  "namespace impor
2b5d0 74 22 3b 20 69 6d 70 6f 72 74 69 6e 67 20 61 0a  t"; importing a.
2b5e0 70 72 6f 63 65 64 75 72 65 20 74 68 61 74 20 63  procedure that c
2b5f0 61 75 73 65 73 20 61 20 63 79 63 6c 65 20 6e 6f  auses a cycle no
2b600 77 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72  w returns an err
2b610 6f 72 2e 20 4d 6f 64 69 66 69 65 64 20 22 69 6e  or. Modified "in
2b620 66 6f 20 70 72 6f 63 73 22 2c 0a 22 69 6e 66 6f  fo procs",."info
2b630 20 61 72 67 73 22 2c 20 22 69 6e 66 6f 20 62 6f   args", "info bo
2b640 64 79 22 2c 20 61 6e 64 20 22 69 6e 66 6f 20 64  dy", and "info d
2b650 65 66 61 75 6c 74 22 20 74 6f 20 72 65 74 75 72  efault" to retur
2b660 6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62  n information ab
2b670 6f 75 74 0a 69 6d 70 6f 72 74 65 64 20 70 72 6f  out.imported pro
2b680 63 65 64 75 72 65 73 20 61 73 20 77 65 6c 6c 20  cedures as well 
2b690 61 73 20 70 72 6f 63 65 64 75 72 65 73 20 64 65  as procedures de
2b6a0 66 69 6e 65 64 20 69 6e 20 61 20 6e 61 6d 65 73  fined in a names
2b6b0 70 61 63 65 2e 20 28 42 4c 29 0a 0a 31 32 2f 31  pace. (BL)..12/1
2b6c0 39 2f 39 37 20 28 65 6e 68 61 6e 63 65 6d 65 6e  9/97 (enhancemen
2b6d0 74 29 20 41 64 64 65 64 20 6e 65 77 20 54 63 6c  t) Added new Tcl
2b6e0 5f 47 65 74 53 74 72 69 6e 67 28 29 20 70 72 6f  _GetString() pro
2b6f0 63 65 64 75 72 65 20 74 68 61 74 20 63 61 6e 20  cedure that can 
2b700 62 65 20 75 73 65 64 0a 69 6e 20 70 6c 61 63 65  be used.in place
2b710 20 6f 66 20 54 63 6c 5f 47 65 74 53 74 72 69 6e   of Tcl_GetStrin
2b720 67 46 72 6f 6d 4f 62 6a 28 29 20 69 66 20 74 68  gFromObj() if th
2b730 65 20 73 74 72 69 6e 67 20 72 65 70 72 65 73 65  e string represe
2b740 6e 74 61 74 69 6f 6e 27 73 20 6c 65 6e 67 74 68  ntation's length
2b750 0a 69 73 6e 27 74 20 6e 65 65 64 65 64 2e 20 28  .isn't needed. (
2b760 42 4c 29 0a 0a 31 32 2f 31 38 2f 39 37 20 28 62  BL)..12/18/97 (b
2b770 75 67 20 66 69 78 29 20 49 6e 20 74 68 65 20 6f  ug fix) In the o
2b780 70 74 20 61 72 67 75 6d 65 6e 74 20 70 61 72 73  pt argument pars
2b790 69 6e 67 20 70 61 63 6b 61 67 65 3a 20 69 66 20  ing package: if 
2b7a0 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20  the description 
2b7b0 0a 68 61 64 20 6f 6e 6c 79 20 66 6c 61 67 73 2c  .had only flags,
2b7c0 20 74 68 65 20 22 74 6f 6f 20 6d 61 6e 79 20 61   the "too many a
2b7d0 72 67 75 6d 65 6e 74 73 22 20 63 61 73 65 20 77  rguments" case w
2b7e0 61 73 20 6e 6f 74 20 64 65 74 65 63 74 65 64 2e  as not detected.
2b7f0 20 54 68 65 20 64 65 66 61 75 6c 74 0a 76 61 6c   The default.val
2b800 75 65 20 77 61 73 20 6e 6f 74 20 75 73 65 64 20  ue was not used 
2b810 66 6f 72 20 74 68 65 20 73 70 65 63 69 61 6c 20  for the special 
2b820 22 61 72 67 73 22 20 65 6e 64 69 6e 67 20 61 72  "args" ending ar
2b830 67 75 6d 65 6e 74 2e 20 28 44 4c 29 0a 0a 31 2f  gument. (DL)..1/
2b840 37 2f 39 38 20 28 63 6c 65 61 6e 20 75 70 29 20  7/98 (clean up) 
2b850 4d 6f 76 65 64 20 65 76 65 72 79 74 68 69 6e 67  Moved everything
2b860 20 6e 6f 74 20 61 62 73 6f 6c 75 74 6c 79 20 6e   not absolutly n
2b870 65 63 65 73 73 61 72 79 20 6f 75 74 20 6f 66 20  ecessary out of 
2b880 69 6e 69 74 2e 74 63 6c 0a 70 72 6f 63 73 20 6e  init.tcl.procs n
2b890 6f 77 20 69 6e 20 61 75 74 6f 2e 74 63 6c 20 61  ow in auto.tcl a
2b8a0 6e 64 20 70 61 63 6b 61 67 65 2e 74 63 6c 20 63  nd package.tcl c
2b8b0 61 6e 20 62 65 20 61 75 74 6f 6c 6f 61 64 65 64  an be autoloaded
2b8c0 20 69 66 20 6e 65 65 64 65 64 2e 20 28 44 4c 29   if needed. (DL)
2b8d0 0a 0a 31 2f 37 2f 39 38 20 28 65 6e 68 61 6e 63  ..1/7/98 (enhanc
2b8e0 65 6d 65 6e 74 29 20 74 63 6c 74 65 73 74 20 6d  ement) tcltest m
2b8f0 61 64 65 20 61 74 20 69 6e 73 74 61 6c 6c 20 74  ade at install t
2b900 69 6d 65 20 77 69 6c 6c 20 73 65 61 72 63 68 20  ime will search 
2b910 66 6f 72 20 69 74 27 73 0a 69 6e 69 74 2e 74 63  for it's.init.tc
2b920 6c 20 77 68 65 72 65 20 69 74 20 69 73 2c 20 65  l where it is, e
2b930 76 65 6e 20 77 68 65 6e 20 75 73 69 6e 67 20 76  ven when using v
2b940 69 72 74 75 61 6c 20 70 61 74 68 20 63 6f 6d 70  irtual path comp
2b950 69 6c 61 74 69 6f 6e 2e 20 28 44 4c 29 0a 0a 31  ilation. (DL)..1
2b960 2f 38 2f 39 38 20 28 6f 73 20 62 75 67 20 77 6f  /8/98 (os bug wo
2b970 72 6b 61 72 6f 75 6e 64 29 20 77 68 65 6e 20 6e  rkaround) when n
2b980 65 65 64 65 64 2c 20 75 73 69 6e 67 20 61 20 72  eeded, using a r
2b990 65 70 6c 61 63 65 6d 65 6e 74 20 66 6f 72 20 6d  eplacement for m
2b9a0 65 6d 63 6d 70 20 73 6f 20 0a 73 74 72 69 6e 67  emcmp so .string
2b9b0 20 63 6f 6d 70 61 72 65 20 22 63 68 61 72 20 77   compare "char w
2b9c0 69 74 68 20 68 69 67 68 20 62 69 74 20 73 65 74  ith high bit set
2b9d0 22 20 22 63 68 61 72 20 77 2f 6f 20 68 69 67 68  " "char w/o high
2b9e0 20 62 69 74 20 73 65 74 22 20 72 65 74 75 72 6e   bit set" return
2b9f0 73 0a 74 68 65 20 65 78 70 65 63 74 65 64 20 76  s.the expected v
2ba00 61 6c 75 65 20 6f 6e 20 61 6c 6c 20 70 6c 61 74  alue on all plat
2ba10 66 6f 72 6d 73 2e 20 28 44 4c 29 0a 0a 31 2f 38  forms. (DL)..1/8
2ba20 2f 39 38 20 28 75 6e 69 78 20 70 6f 72 74 61 62  /98 (unix portab
2ba30 69 6c 69 74 79 2f 63 6f 6e 66 69 67 75 72 65 29  ility/configure)
2ba40 20 62 75 69 6c 64 69 6e 67 20 66 72 6f 6d 20 2e   building from .
2ba50 2e 2e 2f 75 6e 69 78 2f 74 61 72 67 65 74 4e 61  ../unix/targetNa
2ba60 6d 65 2f 20 0a 73 75 62 64 69 72 65 63 74 6f 72  me/ .subdirector
2ba70 69 65 73 20 61 6e 64 20 73 69 6d 70 6c 79 20 75  ies and simply u
2ba80 73 69 6e 67 20 22 2e 2e 2f 63 6f 6e 66 69 67 75  sing "../configu
2ba90 72 65 22 20 73 68 6f 75 6c 64 20 6e 6f 77 20 77  re" should now w
2baa0 6f 72 6b 20 66 69 6e 65 2e 20 28 44 4c 29 0a 0a  ork fine. (DL)..
2bab0 31 2f 31 34 2f 39 38 20 28 65 6e 68 61 6e 63 65  1/14/98 (enhance
2bac0 6d 65 6e 74 29 20 41 64 64 65 64 20 6e 65 77 20  ment) Added new 
2bad0 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69  regular expressi
2bae0 6f 6e 20 70 61 63 6b 61 67 65 20 74 68 61 74 0a  on package that.
2baf0 73 75 70 70 6f 72 74 73 20 41 52 45 73 2c 20 45  supports AREs, E
2bb00 52 45 73 2c 20 61 6e 64 20 42 52 45 73 2e 20 20  REs, and BREs.  
2bb10 54 68 65 20 6e 65 77 20 70 61 63 6b 61 67 65 20  The new package 
2bb20 69 6e 63 6c 75 64 65 73 20 6e 65 77 20 65 73 63  includes new esc
2bb30 61 70 65 0a 63 68 61 72 61 63 74 65 72 73 2c 20  ape.characters, 
2bb40 6d 65 74 61 2d 73 79 6e 74 61 78 2c 20 61 6e 64  meta-syntax, and
2bb50 20 63 68 61 72 61 63 74 65 72 20 63 6c 61 73 73   character class
2bb60 65 73 20 69 6e 73 69 64 65 20 62 72 61 63 6b 65  es inside bracke
2bb70 74 73 2e 0a 52 65 67 65 78 70 73 20 69 6e 76 6f  ts..Regexps invo
2bb80 6c 76 69 6e 67 20 62 61 63 6b 73 6c 61 73 68 65  lving backslashe
2bb90 73 20 6d 61 79 20 62 65 68 61 76 65 20 64 69 66  s may behave dif
2bba0 66 65 72 65 6e 74 6c 79 2e 20 20 28 4d 48 29 0a  ferently.  (MH).
2bbb0 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
2bbc0 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
2bbd0 2a 0a 0a 31 2f 31 36 2f 39 38 20 28 6f 73 20 77  *..1/16/98 (os w
2bbe0 6f 72 6b 61 72 6f 75 6e 64 29 20 55 6e 64 65 72  orkaround) Under
2bbf0 20 77 69 6e 64 6f 77 73 2c 20 22 66 69 6c 65 20   windows, "file 
2bc00 76 6f 6c 75 6d 65 22 20 77 61 73 20 63 61 75 73  volume" was caus
2bc10 69 6e 67 20 63 68 61 74 74 65 72 0a 61 6e 64 2f  ing chatter.and/
2bc20 6f 72 20 73 65 76 65 72 61 6c 20 73 65 63 6f 6e  or several secon
2bc30 64 73 20 6f 66 20 68 61 6e 67 69 6e 67 20 77 68  ds of hanging wh
2bc40 65 6e 20 71 75 65 72 79 69 6e 67 20 65 6d 70 74  en querying empt
2bc50 79 20 66 6c 6f 70 70 79 20 64 72 69 76 65 73 2e  y floppy drives.
2bc60 0a 43 68 61 6e 67 65 64 20 69 6d 70 6c 65 6d 65  .Changed impleme
2bc70 6e 74 61 74 69 6f 6e 20 74 6f 20 63 61 6c 6c 20  ntation to call 
2bc80 61 6e 20 65 6d 70 69 72 69 63 61 6c 6c 79 2d 64  an empirically-d
2bc90 65 72 69 76 65 64 20 66 75 6e 63 74 69 6f 6e 20  erived function 
2bca0 74 68 61 74 20 64 6f 65 73 6e 27 74 0a 63 61 75  that doesn't.cau
2bcb0 73 65 20 74 68 69 73 2e 20 28 43 43 53 29 0a 0a  se this. (CCS)..
2bcc0 31 2f 31 36 2f 39 38 20 28 65 6e 68 61 6e 63 65  1/16/98 (enhance
2bcd0 6d 65 6e 74 29 20 43 6f 6e 76 65 72 74 65 64 20  ment) Converted 
2bce0 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69  regular expressi
2bcf0 6f 6e 73 20 74 6f 20 61 20 54 63 6c 5f 4f 62 6a  ons to a Tcl_Obj
2bd00 20 74 79 70 65 20 73 6f 0a 74 68 65 69 72 20 63   type so.their c
2bd10 6f 6d 70 69 6c 65 64 20 66 6f 72 6d 20 67 65 74  ompiled form get
2bd20 73 20 63 61 63 68 65 64 20 61 75 74 6f 6d 61 74  s cached automat
2bd30 69 63 61 6c 6c 79 2e 20 20 52 65 64 75 63 65 64  ically.  Reduced
2bd40 20 4e 53 55 42 45 58 50 20 66 72 6f 6d 20 31 30   NSUBEXP from 10
2bd50 30 0a 74 6f 20 32 30 2e 20 28 42 57 29 0a 0a 31  0.to 20. (BW)..1
2bd60 2f 31 36 2f 39 38 20 28 64 6f 63 75 6d 65 6e 74  /16/98 (document
2bd70 61 74 69 6f 6e 29 20 43 68 61 6e 67 65 20 75 6e  ation) Change un
2bd80 63 6c 65 61 72 20 64 6f 63 75 6d 65 6e 74 61 74  clear documentat
2bd90 69 6f 6e 20 61 6e 64 20 63 6f 6d 6d 65 6e 74 73  ion and comments
2bda0 20 66 6f 72 0a 66 75 6e 63 74 69 6f 6e 73 20 6c   for.functions l
2bdb0 69 6b 65 20 54 63 6c 5f 54 72 61 6e 73 6c 61 74  ike Tcl_Translat
2bdc0 65 46 69 6c 65 4e 61 6d 65 28 29 20 61 6e 64 20  eFileName() and 
2bdd0 54 63 6c 5f 45 78 74 65 72 6e 61 6c 54 6f 55 74  Tcl_ExternalToUt
2bde0 66 44 53 74 72 69 6e 67 28 29 2e 20 20 4e 6f 77  fDString().  Now
2bdf0 0a 69 74 20 65 78 70 6c 69 63 69 74 6c 79 20 73  .it explicitly s
2be00 61 79 73 20 74 68 65 79 20 74 61 6b 65 20 61 6e  ays they take an
2be10 20 75 6e 69 6e 69 74 69 61 6c 69 7a 65 64 20 6f   uninitialized o
2be20 72 20 66 72 65 65 20 44 53 74 72 69 6e 67 2e 20  r free DString. 
2be30 20 41 20 44 53 74 72 69 6e 67 0a 74 68 61 74 20   A DString.that 
2be40 69 73 20 22 65 6d 70 74 79 22 20 6f 72 20 22 6e  is "empty" or "n
2be50 6f 74 20 68 6f 6c 64 69 6e 67 20 61 6e 79 74 68  ot holding anyth
2be60 69 6e 67 22 20 63 6f 75 6c 64 20 68 61 76 65 20  ing" could have 
2be70 62 65 65 6e 20 69 6e 74 65 72 70 72 65 74 65 64  been interpreted
2be80 20 61 73 20 6f 6e 65 0a 63 75 72 72 65 6e 74 6c   as one.currentl
2be90 79 20 77 69 74 68 20 61 20 7a 65 72 6f 20 6c 65  y with a zero le
2bea0 6e 67 74 68 2c 20 62 75 74 20 77 69 74 68 20 61  ngth, but with a
2beb0 20 6c 61 72 67 65 20 64 79 6e 61 6d 69 63 61 6c   large dynamical
2bec0 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 62 75 66  ly allocated buf
2bed0 66 65 72 2e 0a 28 43 43 53 29 0a 0a 2d 2d 2d 2d  fer..(CCS)..----
2bee0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
2bef0 6c 65 61 73 65 64 20 38 2e 31 61 31 2c 20 31 2f  leased 8.1a1, 1/
2bf00 32 32 2f 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  22/98 ----------
2bf10 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 31  -------------..1
2bf20 2f 32 38 2f 39 38 20 28 6e 65 77 20 66 65 61 74  /28/98 (new feat
2bf30 75 72 65 29 20 41 64 64 65 64 20 61 20 22 2d 64  ure) Added a "-d
2bf40 69 72 65 63 74 22 20 6f 70 74 69 6f 6e 61 6c 20  irect" optional 
2bf50 66 6c 61 67 20 74 6f 20 70 6b 67 5f 6d 6b 49 6e  flag to pkg_mkIn
2bf60 64 65 78 0a 74 6f 20 67 65 6e 65 72 61 74 65 20  dex.to generate 
2bf70 64 69 72 65 63 74 20 6c 6f 61 64 69 6e 67 20 70  direct loading p
2bf80 61 63 6b 61 67 65 20 69 6e 64 65 78 65 73 20 28  ackage indexes (
2bf90 73 75 63 68 20 74 68 6f 73 65 20 79 6f 75 20 6e  such those you n
2bfa0 65 65 64 0a 69 66 20 79 6f 75 20 75 73 65 20 6e  eed.if you use n
2bfb0 61 6d 65 73 70 61 63 65 73 20 61 6e 64 20 70 6c  amespaces and pl
2bfc0 61 6e 20 6f 6e 20 75 73 69 6e 67 20 6e 61 6d 65  an on using name
2bfd0 73 70 61 63 65 20 69 6d 70 6f 72 74 20 6a 75 73  space import jus
2bfe0 74 20 61 66 74 65 72 0a 70 61 63 6b 61 67 65 20  t after.package 
2bff0 72 65 71 75 69 72 65 29 2e 20 70 6b 67 5f 6d 6b  require). pkg_mk
2c000 49 6e 64 65 78 20 73 74 69 6c 6c 20 68 61 73 20  Index still has 
2c010 6c 69 6d 69 74 61 74 69 6f 6e 73 20 72 65 67 61  limitations rega
2c020 72 64 69 6e 67 0a 70 61 63 6b 61 67 65 20 64 65  rding.package de
2c030 70 65 6e 64 65 6e 63 69 65 73 20 62 75 74 20 65  pendencies but e
2c040 72 72 6f 72 73 20 61 72 65 20 6e 6f 77 20 69 67  rrors are now ig
2c050 6e 6f 72 65 64 20 61 6e 64 20 77 69 74 68 20 2d  nored and with -
2c060 64 69 72 65 63 74 2c 20 63 6f 72 72 65 63 74 0a  direct, correct.
2c070 70 61 63 6b 61 67 65 20 69 6e 64 65 78 65 73 20  package indexes 
2c080 63 61 6e 20 62 65 20 67 65 6e 65 72 61 74 65 64  can be generated
2c090 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20 61   even if there a
2c0a0 72 65 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20  re dependencies 
2c0b0 61 73 20 6c 6f 6e 67 20 0a 61 73 20 74 68 65 20  as long .as the 
2c0c0 22 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65  "package provide
2c0d0 22 20 61 72 65 20 64 6f 6e 65 20 65 61 72 6c 79  " are done early
2c0e0 20 65 6e 6f 75 67 68 20 69 6e 20 74 68 65 20 66   enough in the f
2c0f0 69 6c 65 73 2e 20 28 44 4c 29 0a 0a 31 2f 32 38  iles. (DL)..1/28
2c100 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74  /98 (enhancement
2c110 29 20 50 65 72 66 6f 72 6d 61 6e 63 65 20 74 75  ) Performance tu
2c120 6e 69 6e 67 20 6f 66 20 72 65 67 65 78 70 20 61  ning of regexp a
2c130 6e 64 20 72 65 67 73 75 62 2e 20 28 43 43 53 29  nd regsub. (CCS)
2c140 0a 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66  ..1/28/98 (bug f
2c150 69 78 29 20 72 65 67 65 78 70 20 61 6e 64 20 72  ix) regexp and r
2c160 65 67 73 75 62 20 77 69 74 68 20 22 2d 69 6e 64  egsub with "-ind
2c170 69 63 65 73 22 20 72 65 74 75 72 6e 65 64 20 74  ices" returned t
2c180 68 65 20 62 79 74 65 2d 6f 66 66 73 65 74 73 0a  he byte-offsets.
2c190 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72  of the character
2c1a0 73 20 69 6e 20 74 68 65 20 55 54 46 2d 38 20 72  s in the UTF-8 r
2c1b0 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2c 20 6e  epresentation, n
2c1c0 6f 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72  ot the character
2c1d0 20 6f 66 66 73 65 74 73 0a 74 68 65 6d 73 65 6c   offsets.themsel
2c1e0 76 65 73 2e 20 28 43 43 53 29 0a 0a 31 2f 32 38  ves. (CCS)..1/28
2c1f0 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 22 63  /98 (bug fix) "c
2c200 6c 6f 63 6b 20 66 6f 72 6d 61 74 20 30 20 2d 66  lock format 0 -f
2c210 6f 72 6d 61 74 20 25 5a 20 2d 67 6d 74 20 31 22  ormat %Z -gmt 1"
2c220 20 77 6f 75 6c 64 20 72 65 74 75 72 6e 20 74 68   would return th
2c230 65 20 6c 6f 63 61 6c 0a 74 69 6d 65 7a 6f 6e 65  e local.timezone
2c240 20 73 74 72 69 6e 67 20 69 6e 73 74 65 61 64 20   string instead 
2c250 6f 66 20 22 47 4d 54 22 20 6f 6e 20 53 6f 6c 61  of "GMT" on Sola
2c260 72 69 73 20 61 6e 64 20 57 69 6e 64 6f 77 73 2e  ris and Windows.
2c270 0a 0a 31 2f 32 38 2f 39 38 20 28 62 75 67 20 66  ..1/28/98 (bug f
2c280 69 78 29 20 52 65 73 74 6f 72 65 20 74 74 79 20  ix) Restore tty 
2c290 73 65 74 74 69 6e 67 73 20 77 68 65 6e 20 63 6c  settings when cl
2c2a0 6f 73 69 6e 67 20 73 65 72 69 61 6c 20 64 65 76  osing serial dev
2c2b0 69 63 65 20 6f 6e 20 55 6e 69 78 2e 0a 54 68 69  ice on Unix..Thi
2c2c0 73 20 69 73 20 67 6f 6f 64 20 62 65 68 61 76 69  s is good behavi
2c2d0 6f 72 20 77 68 65 6e 20 63 6c 6f 73 69 6e 67 20  or when closing 
2c2e0 72 65 61 6c 20 73 65 72 69 61 6c 20 64 65 76 69  real serial devi
2c2f0 63 65 73 2c 20 65 73 73 65 6e 74 69 61 6c 20 77  ces, essential w
2c300 68 65 6e 0a 63 6c 6f 73 69 6e 67 20 74 68 65 20  hen.closing the 
2c310 70 73 65 75 64 6f 2d 64 65 76 69 63 65 20 2f 64  pseudo-device /d
2c320 65 76 2f 74 74 79 20 62 65 63 61 75 73 65 20 74  ev/tty because t
2c330 68 65 20 75 73 65 72 27 73 20 74 65 72 6d 69 6e  he user's termin
2c340 61 6c 20 73 65 74 74 69 6e 67 73 0a 77 6f 75 6c  al settings.woul
2c350 64 20 62 65 20 6c 65 66 74 20 75 73 65 6c 65 73  d be left useles
2c360 73 2c 20 69 6e 20 72 61 77 20 6d 6f 64 65 2c 20  s, in raw mode, 
2c370 77 68 65 6e 20 74 63 6c 20 71 75 69 74 2e 20 28  when tcl quit. (
2c380 43 43 53 29 0a 0a 31 2f 32 38 2f 39 38 20 28 62  CCS)..1/28/98 (b
2c390 75 67 20 66 69 78 29 20 54 63 6c 5f 4f 70 65 6e  ug fix) Tcl_Open
2c3a0 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29  CommandChannel()
2c3b0 20 77 61 73 20 6d 6f 64 69 66 79 69 6e 67 20 74   was modifying t
2c3c0 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74  he contents of t
2c3d0 68 65 0a 61 72 67 76 20 61 72 72 61 79 20 70 61  he.argv array pa
2c3e0 73 73 65 64 20 74 6f 20 69 74 2c 20 63 61 75 73  ssed to it, caus
2c3f0 69 6e 67 20 70 72 6f 62 6c 65 6d 73 20 66 6f 72  ing problems for
2c400 20 61 6e 79 20 63 61 6c 6c 65 72 20 74 68 61 74   any caller that
2c410 20 77 61 6e 74 65 64 20 74 6f 0a 63 6f 6e 74 69   wanted to.conti
2c420 6e 75 65 20 74 6f 20 75 73 65 20 74 68 65 20 61  nue to use the a
2c430 72 67 76 20 61 72 72 61 79 20 61 66 74 65 72 20  rgv array after 
2c440 63 61 6c 6c 69 6e 67 20 54 63 6c 5f 4f 70 65 6e  calling Tcl_Open
2c450 43 6f 6d 6d 61 6e 64 43 68 61 6e 6e 65 6c 28 29  CommandChannel()
2c460 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20  . (CCS)..2/1/98 
2c470 28 62 75 67 20 66 69 78 29 20 4d 6f 72 65 20 62  (bug fix) More b
2c480 75 67 73 20 77 69 74 68 20 25 5a 20 69 6e 20 66  ugs with %Z in f
2c490 6f 72 6d 61 74 20 73 74 72 69 6e 67 20 61 72 67  ormat string arg
2c4a0 75 6d 65 6e 74 20 74 6f 20 73 74 72 66 74 69 6d  ument to strftim
2c4b0 65 28 29 3a 0a 31 2e 20 42 6f 72 6c 61 6e 64 20  e():.1. Borland 
2c4c0 61 6c 77 61 79 73 20 72 65 74 75 72 6e 65 64 20  always returned 
2c4d0 65 6d 70 74 79 20 73 74 72 69 6e 67 2e 0a 32 2e  empty string..2.
2c4e0 20 4d 53 56 43 20 61 6c 77 61 79 73 20 72 65 74   MSVC always ret
2c4f0 75 72 6e 65 64 20 74 68 65 20 74 69 6d 65 7a 6f  urned the timezo
2c500 6e 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74 68  ne string for th
2c510 65 20 63 75 72 72 65 6e 74 20 74 69 6d 65 2c 20  e current time, 
2c520 6e 6f 74 20 74 68 65 0a 20 20 20 74 69 6d 65 7a  not the.   timez
2c530 6f 6e 65 20 73 74 72 69 6e 67 20 66 6f 72 20 74  one string for t
2c540 68 65 20 73 70 65 63 69 66 69 65 64 20 74 69 6d  he specified tim
2c550 65 2e 20 20 0a 33 2e 20 57 69 74 68 20 4d 53 56  e.  .3. With MSV
2c560 43 2c 20 22 63 6c 6f 63 6b 20 66 6f 72 6d 61 74  C, "clock format
2c570 20 30 20 2d 66 6f 72 6d 61 74 20 25 5a 20 2d 67   0 -format %Z -g
2c580 6d 74 20 31 22 20 77 6f 75 6c 64 20 72 65 74 75  mt 1" would retu
2c590 72 6e 20 22 47 4d 54 22 20 74 68 65 20 66 69 72  rn "GMT" the fir
2c5a0 73 74 0a 20 20 20 74 69 6d 65 20 69 74 20 77 61  st.   time it wa
2c5b0 73 20 63 61 6c 6c 65 64 2c 20 62 75 74 20 77 6f  s called, but wo
2c5c0 75 6c 64 20 72 65 74 75 72 6e 20 74 68 65 20 63  uld return the c
2c5d0 75 72 72 65 6e 74 20 74 69 6d 65 7a 6f 6e 65 20  urrent timezone 
2c5e0 73 74 72 69 6e 67 20 6f 6e 20 61 6c 6c 0a 20 20  string on all.  
2c5f0 20 73 75 62 73 65 71 75 65 6e 74 20 63 61 6c 6c   subsequent call
2c600 73 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38  s. (CCS)..2/1/98
2c610 20 28 62 75 67 20 66 69 78 29 20 22 66 69 6c 65   (bug fix) "file
2c620 20 73 74 61 74 22 20 77 61 73 20 62 72 6f 6b 65   stat" was broke
2c630 6e 20 6f 6e 20 57 69 6e 64 6f 77 73 2e 0a 31 2e  n on Windows..1.
2c640 20 22 66 69 6c 65 20 73 74 61 74 22 20 6f 66 20   "file stat" of 
2c650 61 20 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79  a root directory
2c660 20 28 6c 6f 63 61 6c 20 6f 72 20 6e 65 74 77 6f   (local or netwo
2c670 72 6b 29 20 6f 72 20 61 20 72 65 6c 61 74 69 76  rk) or a relativ
2c680 65 20 70 61 74 68 20 74 68 61 74 0a 20 20 20 72  e path that.   r
2c690 65 73 6f 6c 76 65 64 20 74 6f 20 61 20 72 6f 6f  esolved to a roo
2c6a0 74 20 64 69 72 65 63 74 6f 72 79 20 28 63 3a 2e  t directory (c:.
2c6b0 20 77 68 65 6e 20 69 6e 20 70 77 64 20 77 61 73   when in pwd was
2c6c0 20 63 3a 2f 29 20 77 61 73 20 72 65 74 75 72 6e   c:/) was return
2c6d0 69 6e 67 20 65 72 72 6f 72 2e 0a 32 2e 20 22 66  ing error..2. "f
2c6e0 69 6c 65 20 73 74 61 74 22 20 6f 6e 20 61 20 72  ile stat" on a r
2c6f0 65 67 75 6c 61 72 20 66 69 6c 65 20 28 53 5f 49  egular file (S_I
2c700 46 52 45 47 29 2c 20 74 68 65 20 73 74 5f 6d 6f  FREG), the st_mo
2c710 64 65 20 77 61 73 20 73 69 67 6e 20 65 78 74 65  de was sign exte
2c720 6e 64 65 64 20 74 6f 0a 20 20 20 61 20 6e 65 67  nded to.   a neg
2c730 61 74 69 76 65 20 69 6e 74 20 69 66 20 74 68 65  ative int if the
2c740 20 70 6c 61 74 66 6f 72 6d 2d 64 65 70 65 6e 64   platform-depend
2c750 61 6e 74 20 74 79 70 65 20 22 6d 6f 64 65 5f 74  ant type "mode_t
2c760 22 20 77 61 73 20 64 65 63 6c 61 72 65 64 20 61  " was declared a
2c770 73 20 61 0a 20 20 20 73 68 6f 72 74 20 69 6e 73  s a.   short ins
2c780 74 65 61 64 20 6f 66 20 61 6e 20 75 6e 73 69 67  tead of an unsig
2c790 6e 65 64 20 73 68 6f 72 74 2e 0a 33 2e 20 22 66  ned short..3. "f
2c7a0 69 6c 65 20 73 74 61 74 22 20 6f 66 20 61 20 6e  ile stat" of a n
2c7b0 65 74 77 6f 72 6b 20 64 69 72 65 63 74 6f 72 79  etwork directory
2c7c0 2c 20 74 68 65 20 73 74 5f 64 65 76 20 77 61 73  , the st_dev was
2c7d0 20 69 6e 63 6f 72 72 65 63 74 6c 79 20 72 65 70   incorrectly rep
2c7e0 6f 72 74 65 64 0a 20 20 20 61 73 20 74 68 65 20  orted.   as the 
2c7f0 69 64 20 6f 66 20 74 68 65 20 6c 61 73 74 20 61  id of the last a
2c800 63 63 65 73 73 65 64 20 6c 6f 63 61 6c 20 64 72  ccessed local dr
2c810 69 76 65 20 72 61 74 68 65 72 20 74 68 61 6e 20  ive rather than 
2c820 74 68 65 20 69 64 20 6f 66 20 74 68 65 0a 20 20  the id of the.  
2c830 20 6e 65 74 77 6f 72 6b 20 64 72 69 76 65 2e 20   network drive. 
2c840 28 43 43 53 29 0a 0a 32 2f 31 2f 39 38 20 28 62  (CCS)..2/1/98 (b
2c850 75 67 20 66 69 78 29 20 22 66 69 6c 65 20 61 74  ug fix) "file at
2c860 74 72 69 62 75 74 65 73 22 20 6f 66 20 61 20 72  tributes" of a r
2c870 65 6c 61 74 69 76 65 20 70 61 74 68 20 74 68 61  elative path tha
2c880 74 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 61 0a  t resolved to a.
2c890 72 6f 6f 74 20 64 69 72 65 63 74 6f 72 79 20 77  root directory w
2c8a0 61 73 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72  as returning err
2c8b0 6f 72 2e 20 28 43 43 53 29 0a 0a 32 2f 31 2f 39  or. (CCS)..2/1/9
2c8c0 38 20 28 62 75 67 20 66 69 78 29 20 43 68 61 6e  8 (bug fix) Chan
2c8d0 67 65 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65  ge error message
2c8e0 20 77 68 65 6e 20 22 66 69 6c 65 20 61 74 74 72   when "file attr
2c8f0 69 62 75 74 65 22 20 63 6f 75 6c 64 20 6e 6f 74  ibute" could not
2c900 0a 64 65 74 65 72 6d 69 6e 65 20 74 68 65 20 61  .determine the a
2c910 74 74 72 69 62 75 74 65 73 20 66 6f 72 20 61 20  ttributes for a 
2c920 66 69 6c 65 2e 20 20 50 72 65 76 69 6f 75 73 6c  file.  Previousl
2c930 79 20 69 74 20 77 6f 75 6c 64 20 72 65 74 75 72  y it would retur
2c940 6e 20 64 69 66 66 65 72 65 6e 74 0a 65 72 72 6f  n different.erro
2c950 72 20 6d 65 73 73 61 67 65 73 20 6f 6e 20 55 6e  r messages on Un
2c960 69 78 20 76 73 2e 20 20 57 69 6e 64 6f 77 73 20  ix vs.  Windows 
2c970 76 73 2e 20 4d 61 63 2e 20 28 43 43 53 29 0a 0a  vs. Mac. (CCS)..
2c980 32 2f 34 2f 39 38 20 28 62 75 67 20 66 69 78 65  2/4/98 (bug fixe
2c990 73 29 20 46 69 78 65 64 20 73 65 76 65 72 61 6c  s) Fixed several
2c9a0 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 62 75   instances of bu
2c9b0 67 73 20 77 68 65 72 65 20 74 68 65 20 70 61 72  gs where the par
2c9c0 73 65 72 2f 63 6f 6d 70 69 6c 65 72 20 0a 77 6f  ser/compiler .wo
2c9d0 75 6c 64 20 72 65 61 63 68 20 6f 75 74 73 69 64  uld reach outsid
2c9e0 65 20 74 68 65 20 72 61 6e 67 65 20 6f 66 20 61  e the range of a
2c9f0 6c 6c 6f 63 61 74 65 64 20 6d 65 6d 6f 72 79 2e  llocated memory.
2ca00 20 49 6d 70 72 6f 76 65 64 20 74 68 65 20 61 72   Improved the ar
2ca10 72 61 79 0a 6c 6f 6f 6b 75 70 20 61 6c 67 6f 72  ray.lookup algor
2ca20 69 74 68 6d 20 69 6e 20 73 65 74 20 63 6f 6d 70  ithm in set comp
2ca30 69 6c 61 74 69 6f 6e 2e 20 28 44 4c 29 0a 0a 32  ilation. (DL)..2
2ca40 2f 35 2f 39 38 20 28 63 68 61 6e 67 65 29 20 54  /5/98 (change) T
2ca50 68 65 20 54 43 4c 5f 50 41 52 53 45 5f 50 41 52  he TCL_PARSE_PAR
2ca60 54 31 20 66 6c 61 67 20 66 6f 72 20 53 65 74 2f  T1 flag for Set/
2ca70 47 65 74 28 4f 62 6a 29 56 61 72 32 20 43 20 41  Get(Obj)Var2 C A
2ca80 50 49 73 20 69 73 20 6e 6f 77 0a 64 65 70 72 65  PIs is now.depre
2ca90 63 61 74 65 64 20 61 6e 64 20 69 67 6e 6f 72 65  cated and ignore
2caa0 64 2e 20 54 68 65 20 70 61 72 74 31 20 69 73 20  d. The part1 is 
2cab0 61 6c 77 61 79 73 20 70 61 72 73 65 64 20 77 68  always parsed wh
2cac0 65 6e 20 74 68 65 20 70 61 72 74 32 20 61 72 67  en the part2 arg
2cad0 75 6d 65 6e 74 0a 69 73 20 4e 55 4c 4c 2e 20 54  ument.is NULL. T
2cae0 68 69 73 20 69 73 20 74 6f 20 61 76 6f 69 64 20  his is to avoid 
2caf0 61 20 70 61 74 74 65 72 6e 20 6f 66 20 65 72 72  a pattern of err
2cb00 6f 72 73 20 66 6f 72 20 65 78 74 65 6e 73 69 6f  ors for extensio
2cb10 6e 20 77 72 69 74 65 72 73 20 63 6f 6e 76 65 72  n writers conver
2cb20 74 69 6e 67 0a 66 72 6f 6d 20 73 74 72 69 6e 67  ting.from string
2cb30 20 62 61 73 65 64 20 54 63 6c 5f 53 65 74 56 61   based Tcl_SetVa
2cb40 72 28 29 20 74 6f 20 6e 65 77 20 54 63 6c 5f 53  r() to new Tcl_S
2cb50 65 74 4f 62 6a 56 61 72 32 28 29 20 61 6e 64 20  etObjVar2() and 
2cb60 77 68 6f 20 63 6f 75 6c 64 20 65 61 73 69 6c 79  who could easily
2cb70 0a 66 6f 72 67 65 74 20 74 6f 20 70 72 6f 76 69  .forget to provi
2cb80 64 65 20 74 68 65 20 66 6c 61 67 20 61 6e 64 20  de the flag and 
2cb90 74 68 75 73 20 67 65 74 20 63 6f 64 65 20 77 6f  thus get code wo
2cba0 72 6b 69 6e 67 20 66 6f 72 20 6e 6f 72 6d 61 6c  rking for normal
2cbb0 20 76 61 72 69 61 62 6c 65 73 20 0a 62 75 74 20   variables .but 
2cbc0 6e 6f 74 20 66 6f 72 20 61 72 72 61 79 20 65 6c  not for array el
2cbd0 65 6d 65 6e 74 73 2e 20 54 68 65 20 70 65 72 66  ements. The perf
2cbe0 6f 72 6d 61 6e 63 65 20 68 69 74 20 69 73 20 6d  ormance hit is m
2cbf0 69 6e 69 6d 61 6c 2e 20 41 20 73 69 64 65 20 65  inimal. A side e
2cc00 66 66 65 63 74 0a 6f 66 20 74 68 61 74 20 63 68  ffect.of that ch
2cc10 61 6e 67 65 20 69 73 20 74 68 61 74 20 69 73 20  ange is that is 
2cc20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 70 6f 73  is no longer pos
2cc30 73 69 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20  sible to create 
2cc40 73 63 61 6c 61 72 20 76 61 72 69 61 62 6c 65 73  scalar variables
2cc50 0a 74 68 61 74 20 63 61 6e 27 74 20 62 65 20 61  .that can't be a
2cc60 63 63 65 73 73 65 64 20 62 79 20 74 63 6c 20 73  ccessed by tcl s
2cc70 63 72 69 70 74 73 20 62 65 63 61 75 73 65 20 6f  cripts because o
2cc80 66 20 74 68 65 69 72 20 69 6e 76 61 6c 69 64 20  f their invalid 
2cc90 6e 61 6d 65 20 0a 28 65 6e 64 69 6e 67 20 77 69  name .(ending wi
2cca0 74 68 20 70 61 72 65 6e 74 68 65 73 69 73 29 2e  th parenthesis).
2ccb0 20 4c 69 6b 65 77 69 73 65 20 69 74 20 69 73 20   Likewise it is 
2ccc0 61 6c 73 6f 20 70 61 72 73 65 64 20 61 6e 64 20  also parsed and 
2ccd0 63 68 65 63 6b 65 64 20 74 6f 20 0a 65 6e 73 75  checked to .ensu
2cce0 72 65 20 74 68 61 74 20 79 6f 75 20 64 6f 6e 27  re that you don'
2ccf0 74 20 63 72 65 61 74 65 20 61 72 72 61 79 20 65  t create array e
2cd00 6c 65 6d 65 6e 74 73 20 6f 66 20 61 72 72 61 79  lements of array
2cd10 20 77 68 6f 73 65 20 6e 61 6d 65 20 69 73 20 61   whose name is a
2cd20 20 76 61 6c 69 64 20 0a 61 72 72 61 79 20 65 6c   valid .array el
2cd30 65 6d 65 6e 74 20 62 65 63 61 75 73 65 20 74 68  ement because th
2cd40 65 79 20 77 6f 75 6c 64 20 6e 6f 74 20 62 65 20  ey would not be 
2cd50 61 63 63 65 73 73 69 62 6c 65 20 66 72 6f 6d 20  accessible from 
2cd60 73 63 72 69 70 74 73 20 61 6e 79 77 61 79 2e 20  scripts anyway. 
2cd70 0a 4e 6f 74 65 3a 20 54 68 65 72 65 20 69 73 20  .Note: There is 
2cd80 73 74 69 6c 6c 20 64 75 70 6c 69 63 61 74 65 20  still duplicate 
2cd90 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 73 20 70  array elements p
2cda0 61 72 73 69 6e 67 20 63 6f 64 65 2e 20 28 44 4c  arsing code. (DL
2cdb0 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20  ).*** POTENTIAL 
2cdc0 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20  INCOMPATIBILITY 
2cdd0 2a 2a 2a 0a 0a 32 2f 31 31 2f 39 38 20 28 62 75  ***..2/11/98 (bu
2cde0 67 20 66 69 78 29 20 53 68 61 72 69 6e 67 20 6f  g fix) Sharing o
2cdf0 62 6a 65 63 74 73 20 62 65 74 77 65 65 6e 20 69  bjects between i
2ce00 6e 74 65 72 70 73 2c 20 73 75 63 68 20 61 73 20  nterps, such as 
2ce10 62 79 20 22 69 6e 74 65 72 70 0a 65 76 61 6c 22  by "interp.eval"
2ce20 20 6f 72 20 22 73 65 6e 64 22 20 63 6f 75 6c 64   or "send" could
2ce30 20 63 61 75 73 65 20 61 20 63 72 61 73 68 20 6c   cause a crash l
2ce40 61 74 65 72 20 77 68 65 6e 20 64 65 72 65 66 65  ater when derefe
2ce50 72 65 6e 63 69 6e 67 20 61 6e 20 69 6e 74 65 72  rencing an inter
2ce60 70 0a 74 68 61 74 20 68 61 64 20 62 65 65 6e 20  p.that had been 
2ce70 64 65 6c 65 74 65 64 2c 20 67 69 76 65 6e 20 63  deleted, given c
2ce80 6f 64 65 20 73 75 63 68 20 61 73 3a 0a 09 73 65  ode such as:..se
2ce90 74 20 61 20 7b 73 65 74 20 78 20 79 7d 0a 09 69  t a {set x y}..i
2cea0 6e 74 65 72 70 20 63 72 65 61 74 65 20 66 6f 6f  nterp create foo
2ceb0 0a 09 69 6e 74 65 72 70 20 65 76 61 6c 20 66 6f  ..interp eval fo
2cec0 6f 20 24 61 0a 09 69 6e 74 65 72 70 20 64 65 6c  o $a..interp del
2ced0 65 74 65 20 66 6f 6f 0a 09 75 6e 73 65 74 20 61  ete foo..unset a
2cee0 0a 49 6e 74 65 72 70 20 22 66 6f 6f 22 20 77 61  .Interp "foo" wa
2cef0 73 20 67 6f 6e 65 2c 20 62 75 74 20 22 61 22 20  s gone, but "a" 
2cf00 68 61 64 20 61 20 69 6e 74 65 72 6e 61 6c 20 72  had a internal r
2cf10 65 70 20 63 6f 6e 73 69 73 74 69 6e 67 20 6f 66  ep consisting of
2cf20 20 62 79 74 65 63 6f 64 65 73 0a 63 6f 6e 74 61   bytecodes.conta
2cf30 69 6e 69 6e 67 20 61 20 64 61 6e 67 6c 69 6e 67  ining a dangling
2cf40 20 70 6f 69 6e 74 65 72 20 74 6f 20 22 66 6f 6f   pointer to "foo
2cf50 22 2e 20 20 55 6e 73 65 74 74 69 6e 67 20 22 61  ".  Unsetting "a
2cf60 22 20 77 6f 75 6c 64 20 61 74 74 65 6d 70 74 20  " would attempt 
2cf70 74 6f 0a 72 65 74 75 72 6e 20 72 65 73 6f 75 72  to.return resour
2cf80 63 65 73 20 62 61 63 6b 20 74 6f 20 22 66 6f 6f  ces back to "foo
2cf90 22 2c 20 63 61 75 73 69 6e 67 20 61 20 63 72 61  ", causing a cra
2cfa0 73 68 20 61 73 20 72 61 6e 64 6f 6d 20 6d 65 6d  sh as random mem
2cfb0 6f 72 79 20 77 61 73 0a 61 63 63 65 73 73 65 64  ory was.accessed
2cfc0 2e 20 20 54 68 65 20 6c 65 73 73 6f 6e 20 69 73  .  The lesson is
2cfd0 20 74 68 61 74 20 74 68 61 74 20 69 66 20 61 6e   that that if an
2cfe0 20 6f 62 6a 65 63 74 27 73 20 69 6e 74 65 72 6e   object's intern
2cff0 61 6c 20 72 65 70 20 64 65 70 65 6e 64 73 20 6f  al rep depends o
2d000 6e 0a 61 6e 20 69 6e 74 65 72 70 20 28 6f 72 20  n.an interp (or 
2d010 61 6e 79 20 6f 74 68 65 72 20 64 61 74 61 20 73  any other data s
2d020 74 72 75 63 74 75 72 65 29 20 69 74 20 6d 75 73  tructure) it mus
2d030 74 20 70 72 65 73 65 72 76 65 20 74 68 61 74 20  t preserve that 
2d040 64 61 74 61 20 69 6e 0a 73 6f 6d 65 20 66 61 73  data in.some fas
2d050 68 69 6f 6e 2e 20 28 43 43 53 29 0a 0a 32 2f 31  hion. (CCS)..2/1
2d060 31 2f 39 38 20 28 65 6e 68 61 6e 63 65 6d 65 6e  1/98 (enhancemen
2d070 74 29 20 54 68 65 20 22 69 6e 74 65 72 70 22 20  t) The "interp" 
2d080 63 6f 6d 6d 61 6e 64 20 77 61 73 20 72 65 74 75  command was retu
2d090 72 6e 69 6e 67 20 69 6e 63 6f 6e 73 69 73 74 65  rning inconsiste
2d0a0 6e 74 20 65 72 72 6f 72 0a 6d 65 73 73 61 67 65  nt error.message
2d0b0 73 20 77 68 65 6e 20 74 68 65 20 73 70 65 63 69  s when the speci
2d0c0 66 69 65 64 20 73 6c 61 76 65 20 69 6e 74 65 72  fied slave inter
2d0d0 70 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66  p could not be f
2d0e0 6f 75 6e 64 2e 20 28 43 43 53 29 0a 0a 32 2f 31  ound. (CCS)..2/1
2d0f0 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 52  1/98 (bug fix) R
2d100 65 73 75 6c 74 20 63 6f 64 65 73 20 6c 69 6b 65  esult codes like
2d110 20 54 43 4c 5f 42 52 45 41 4b 20 61 6e 64 20 54   TCL_BREAK and T
2d120 43 4c 5f 43 4f 4e 54 49 4e 55 45 20 77 65 72 65  CL_CONTINUE were
2d130 20 6e 6f 74 0a 70 72 6f 70 61 67 61 74 69 6e 67   not.propagating
2d140 20 74 68 72 6f 75 67 68 20 74 68 65 20 6d 61 73   through the mas
2d150 74 65 72 2f 73 6c 61 76 65 20 69 6e 74 65 72 70  ter/slave interp
2d160 20 62 6f 75 6e 64 61 72 69 65 73 2c 20 73 75 63   boundaries, suc
2d170 68 20 61 73 20 22 69 6e 74 65 72 70 0a 65 76 61  h as "interp.eva
2d180 6c 22 20 61 6e 64 20 22 69 6e 74 65 72 70 20 61  l" and "interp a
2d190 6c 69 61 73 22 2e 20 20 54 43 4c 5f 4f 4b 2c 20  lias".  TCL_OK, 
2d1a0 54 43 4c 5f 45 52 52 4f 52 2c 20 61 6e 64 20 6e  TCL_ERROR, and n
2d1b0 6f 6e 2d 73 74 61 6e 64 61 72 64 20 63 6f 64 65  on-standard code
2d1c0 73 20 6c 69 6b 65 0a 74 65 68 20 69 6e 74 65 67  s like.teh integ
2d1d0 65 72 20 35 37 20 77 6f 72 6b 2e 20 20 54 68 65  er 57 work.  The
2d1e0 72 65 20 69 73 20 73 74 69 6c 6c 20 61 20 71 75  re is still a qu
2d1f0 65 73 74 69 6f 6e 20 61 73 20 74 6f 20 77 68 65  estion as to whe
2d200 74 68 65 72 20 54 43 4c 5f 52 45 54 55 52 4e 0a  ther TCL_RETURN.
2d210 63 61 6e 2f 73 68 6f 75 6c 64 20 70 72 6f 70 61  can/should propa
2d220 67 61 74 65 2e 20 28 43 43 53 29 0a 0a 32 2f 31  gate. (CCS)..2/1
2d230 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54  1/98 (bug fix) T
2d240 63 6c 43 6f 6d 70 69 6c 65 53 63 72 69 70 74 28  clCompileScript(
2d250 29 20 77 61 73 20 64 65 72 65 66 65 72 69 6e 67  ) was derefering
2d260 20 6d 65 6d 6f 72 79 20 31 20 62 79 74 65 20 62   memory 1 byte b
2d270 65 66 6f 72 65 0a 73 74 61 72 74 20 6f 66 20 74  efore.start of t
2d280 68 65 20 73 74 72 69 6e 67 20 74 6f 20 63 6f 6d  he string to com
2d290 70 69 6c 65 2c 20 6c 6f 6f 6b 69 6e 67 20 66 6f  pile, looking fo
2d2a0 72 20 27 5d 27 2e 20 28 43 43 53 2c 44 4c 29 0a  r ']'. (CCS,DL).
2d2b0 0a 32 2f 31 31 2f 39 38 20 28 62 75 67 20 66 69  .2/11/98 (bug fi
2d2c0 78 29 20 54 63 6c 5f 45 76 61 6c 32 28 29 20 77  x) Tcl_Eval2() w
2d2d0 61 73 20 64 65 72 65 66 65 72 69 6e 67 20 6d 65  as derefering me
2d2e0 6d 6f 72 79 20 31 20 62 79 74 65 20 62 65 66 6f  mory 1 byte befo
2d2f0 72 65 20 73 74 61 72 74 0a 6f 66 20 74 68 65 20  re start.of the 
2d300 73 74 72 69 6e 67 20 74 6f 20 65 76 61 6c 2c 20  string to eval, 
2d310 6c 6f 6f 6b 69 6e 67 20 66 6f 72 20 27 5d 27 2e  looking for ']'.
2d320 20 28 43 43 53 2c 44 4c 29 0a 0a 32 2f 31 31 2f   (CCS,DL)..2/11/
2d330 39 38 20 28 62 75 67 20 66 69 78 29 20 43 6f 6d  98 (bug fix) Com
2d340 70 69 6c 69 6e 67 20 22 73 65 74 20 61 28 62 22  piling "set a(b"
2d350 20 77 61 73 20 72 75 6e 6e 69 6e 67 20 6f 66 66   was running off
2d360 20 65 6e 64 20 6f 66 20 73 74 72 69 6e 67 2e 20   end of string. 
2d370 28 43 43 53 2c 44 4c 29 0a 0a 32 2f 31 31 2f 39  (CCS,DL)..2/11/9
2d380 38 20 28 62 75 67 20 66 69 78 29 20 57 69 6e 64  8 (bug fix) Wind
2d390 6f 77 73 20 69 6e 69 74 69 61 6c 69 7a 61 74 69  ows initializati
2d3a0 6f 6e 20 63 6f 64 65 20 77 61 73 20 64 65 72 65  on code was dere
2d3b0 66 65 72 65 6e 63 69 6e 67 0a 75 6e 69 6e 69 74  ferencing.uninit
2d3c0 69 61 6c 69 7a 65 64 20 6d 65 6d 6f 72 79 20 69  ialized memory i
2d3d0 66 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 65 6e  f TCL_LIBRARY en
2d3e0 76 69 72 6f 6e 6d 65 6e 74 20 64 69 64 6e 27 74  vironment didn't
2d3f0 20 65 78 69 73 74 2e 20 28 43 43 53 29 0a 0a 32   exist. (CCS)..2
2d400 2f 31 31 2f 39 38 20 28 62 75 67 20 66 69 78 29  /11/98 (bug fix)
2d410 20 57 69 6e 64 6f 77 73 20 22 72 65 67 69 73 74   Windows "regist
2d420 72 79 22 20 63 6f 6d 6d 61 6e 64 20 77 61 73 20  ry" command was 
2d430 64 65 72 65 66 65 72 65 6e 63 69 6e 67 0a 75 6e  dereferencing.un
2d440 69 6e 69 74 69 61 6c 69 7a 65 64 20 6d 65 6d 6f  initialized memo
2d450 72 79 20 77 68 65 6e 20 63 6f 6e 73 74 72 75 63  ry when construc
2d460 74 69 6e 67 20 74 68 65 20 24 65 72 72 6f 72 43  ting the $errorC
2d470 6f 64 65 20 66 6f 72 20 61 20 66 61 69 6c 65 64  ode for a failed
2d480 0a 72 65 67 69 73 74 72 79 20 63 61 6c 6c 2e 20  .registry call. 
2d490 28 43 43 53 29 0a 0a 32 2f 31 31 2f 39 38 20 28  (CCS)..2/11/98 (
2d4a0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 45 6c 69  enhancement) Eli
2d4b0 6d 69 6e 61 74 65 20 74 68 65 20 54 43 4c 5f 55  minate the TCL_U
2d4c0 53 45 5f 54 49 4d 45 5a 4f 4e 45 5f 56 41 52 20  SE_TIMEZONE_VAR 
2d4d0 64 65 66 69 6e 69 74 69 6f 6e 20 66 72 6f 6d 0a  definition from.
2d4e0 63 6f 6e 66 69 67 75 72 65 2e 69 6e 2c 20 62 65  configure.in, be
2d4f0 63 61 75 73 65 20 69 74 20 77 61 73 20 74 68 65  cause it was the
2d500 20 73 61 6d 65 20 69 6e 66 6f 72 6d 61 74 69 6f   same informatio
2d510 6e 20 61 73 20 74 68 65 20 61 6c 72 65 61 64 79  n as the already
2d520 20 65 78 69 73 74 69 6e 67 0a 48 41 56 45 5f 54   existing.HAVE_T
2d530 4d 5f 5a 4f 4e 45 20 64 65 66 69 6e 69 74 69 6f  M_ZONE definitio
2d540 6e 2e 20 20 54 68 65 20 6c 61 63 6b 20 6f 66 20  n.  The lack of 
2d550 48 41 56 45 5f 54 4d 5f 5a 4f 4e 45 20 69 73 20  HAVE_TM_ZONE is 
2d560 75 73 65 64 20 74 6f 20 77 6f 72 6b 20 61 72 6f  used to work aro
2d570 75 6e 64 20 61 0a 53 6f 6c 61 72 69 73 20 61 6e  und a.Solaris an
2d580 64 20 57 69 6e 64 6f 77 73 20 62 75 67 20 77 68  d Windows bug wh
2d590 65 72 65 20 22 63 6c 6f 63 6b 20 66 6f 72 6d 61  ere "clock forma
2d5a0 74 20 5b 63 6c 6f 63 6b 20 73 65 63 5d 20 2d 66  t [clock sec] -f
2d5b0 6f 72 6d 61 74 20 25 5a 20 2d 67 6d 74 20 31 22  ormat %Z -gmt 1"
2d5c0 20 0a 70 72 6f 64 75 63 65 73 20 74 68 65 20 6c   .produces the l
2d5d0 6f 63 61 6c 20 74 69 6d 65 7a 6f 6e 65 20 73 74  ocal timezone st
2d5e0 72 69 6e 67 20 69 6e 73 74 65 61 64 20 6f 66 20  ring instead of 
2d5f0 22 47 4d 54 22 2e 20 28 43 43 53 29 0a 0a 32 2f  "GMT". (CCS)..2/
2d600 31 31 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  11/98 (bug fix) 
2d610 4d 65 6d 6c 65 61 6b 73 20 61 6e 64 20 64 65 72  Memleaks and der
2d620 65 66 65 72 65 6e 63 69 6e 67 20 6f 66 20 75 6e  eferencing of un
2d630 69 6e 69 74 69 61 6c 69 7a 65 64 20 6d 65 6d 6f  initialized memo
2d640 72 79 20 69 6e 0a 72 65 67 65 78 70 20 69 66 20  ry in.regexp if 
2d650 61 6e 20 65 72 72 6f 72 20 6f 63 63 75 72 72 65  an error occurre
2d660 64 20 77 68 69 6c 65 20 63 6f 6d 70 69 6c 69 6e  d while compilin
2d670 67 20 61 20 72 65 67 75 6c 61 72 20 65 78 70 72  g a regular expr
2d680 65 73 73 69 6f 6e 2e 20 28 43 43 53 29 2e 0a 0a  ession. (CCS)...
2d690 32 2f 31 38 2f 39 38 20 28 6e 65 77 20 66 65 61  2/18/98 (new fea
2d6a0 74 75 72 65 29 20 41 64 64 65 64 20 6d 75 74 65  ture) Added mute
2d6b0 78 65 73 20 61 6e 64 20 74 68 72 65 61 64 20 6c  xes and thread l
2d6c0 6f 63 61 6c 20 73 74 6f 72 61 67 65 20 69 6e 20  ocal storage in 
2d6d0 6f 72 64 65 72 0a 74 6f 20 6d 61 6b 65 20 54 63  order.to make Tc
2d6e0 6c 20 74 68 72 65 61 64 20 73 61 66 65 2e 20 20  l thread safe.  
2d6f0 46 6f 72 20 74 65 73 74 69 6e 67 20 70 75 72 70  For testing purp
2d700 6f 73 65 73 2c 20 74 68 65 72 65 20 69 73 20 61  oses, there is a
2d710 20 74 65 73 74 74 68 72 65 61 64 0a 63 6f 6d 6d   testthread.comm
2d720 61 6e 64 20 74 68 61 74 20 63 72 65 61 74 65 73  and that creates
2d730 20 61 20 6e 65 77 20 74 68 72 65 61 64 20 61 6e   a new thread an
2d740 64 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 72  d an interpreter
2d750 20 69 6e 73 69 64 65 20 69 74 2e 20 20 53 65 65   inside it.  See
2d760 0a 74 68 72 65 61 64 2e 74 65 73 74 20 66 6f 72  .thread.test for
2d770 20 65 78 61 6d 70 6c 65 73 2c 20 62 75 74 20 74   examples, but t
2d780 68 69 73 20 73 63 72 69 70 74 2d 6c 65 76 65 6c  his script-level
2d790 20 69 6e 74 65 72 66 61 63 65 20 69 73 20 6e 6f   interface is no
2d7a0 74 20 66 69 78 65 64 2e 0a 45 61 63 68 20 74 68  t fixed..Each th
2d7b0 72 65 61 64 20 68 61 73 20 69 74 73 20 6f 77 6e  read has its own
2d7c0 20 6e 6f 74 69 66 69 65 72 20 69 6e 73 74 61 6e   notifier instan
2d7d0 63 65 20 74 6f 20 6d 61 6e 61 67 65 20 69 74 73  ce to manage its
2d7e0 20 6f 77 6e 20 65 76 65 6e 74 73 2c 0a 61 6e 64   own events,.and
2d7f0 20 74 68 72 65 61 64 73 20 63 61 6e 20 70 6f 73   threads can pos
2d800 74 20 6d 65 73 73 61 67 65 73 20 74 6f 20 65 61  t messages to ea
2d810 63 68 20 6f 74 68 65 72 27 73 20 6d 65 73 73 61  ch other's messa
2d820 67 65 20 71 75 65 75 65 2e 0a 54 68 69 73 20 75  ge queue..This u
2d830 73 65 73 20 70 74 68 72 65 61 64 73 20 6f 6e 20  ses pthreads on 
2d840 55 4e 49 58 2c 20 61 6e 64 20 6e 61 74 69 76 65  UNIX, and native
2d850 20 74 68 72 65 61 64 20 73 75 70 70 6f 72 74 20   thread support 
2d860 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f 72  on other platfor
2d870 6d 73 2e 0a 59 6f 75 20 65 6e 61 62 6c 65 20 74  ms..You enable t
2d880 68 69 73 20 62 79 20 63 6f 6e 66 69 67 75 72 69  his by configuri
2d890 6e 67 20 77 69 74 68 20 2d 2d 65 6e 61 62 6c 65  ng with --enable
2d8a0 2d 74 68 72 65 61 64 73 2e 20 20 4e 6f 74 65 20  -threads.  Note 
2d8b0 74 68 61 74 20 61 74 0a 74 68 69 73 20 74 69 6d  that at.this tim
2d8c0 65 20 2a 54 6b 2a 20 69 73 20 73 74 69 6c 6c 20  e *Tk* is still 
2d8d0 6e 6f 74 20 74 68 72 65 61 64 20 73 61 66 65 2e  not thread safe.
2d8e0 20 53 70 65 63 69 61 6c 20 74 68 61 6e 6b 73 20   Special thanks 
2d8f0 74 6f 0a 52 69 63 68 61 72 64 20 48 69 70 70 3a  to.Richard Hipp:
2d900 20 68 69 73 20 65 61 72 6c 69 65 72 20 69 6d 70   his earlier imp
2d910 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 69 6e 73 70  lementation insp
2d920 69 72 65 64 20 74 68 69 73 20 77 6f 72 6b 2e 20  ired this work. 
2d930 28 42 57 2c 20 53 53 2c 20 4a 49 29 0a 0a 32 2f  (BW, SS, JI)..2/
2d940 31 38 2f 39 38 20 28 68 69 64 64 65 6e 20 66 65  18/98 (hidden fe
2d950 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 54 68  ature change) Th
2d960 65 20 77 61 79 20 74 68 65 20 65 6e 76 28 29 20  e way the env() 
2d970 61 72 72 61 79 20 69 73 20 73 68 61 72 65 64 20  array is shared 
2d980 61 6d 6f 6e 67 0a 69 6e 74 65 72 70 72 65 74 65  among.interprete
2d990 72 73 20 63 68 61 6e 67 65 64 2e 20 20 55 70 64  rs changed.  Upd
2d9a0 61 74 65 73 20 74 6f 20 65 6e 76 20 75 73 65 64  ates to env used
2d9b0 20 74 6f 20 74 72 69 67 67 65 72 20 77 72 69 74   to trigger writ
2d9c0 65 20 74 72 61 63 65 73 20 69 6e 0a 6f 74 68 65  e traces in.othe
2d9d0 72 20 69 6e 74 65 72 70 72 65 74 65 72 73 2e 20  r interpreters. 
2d9e0 20 54 68 69 73 20 75 6e 64 6f 63 75 6d 65 6e 74   This undocument
2d9f0 65 64 20 66 65 61 74 75 72 65 20 69 73 20 6e 6f  ed feature is no
2da00 20 6c 6f 6e 67 65 72 20 69 6d 70 6c 65 6d 65 6e   longer implemen
2da10 74 65 64 2e 0a 49 6e 73 74 65 61 64 2c 20 76 61  ted..Instead, va
2da20 72 69 61 62 6c 65 20 74 72 61 63 69 6e 67 20 69  riable tracing i
2da30 73 20 75 73 65 64 20 74 6f 20 6b 65 65 70 20 74  s used to keep t
2da40 68 65 20 43 2d 6c 65 76 65 6c 20 65 6e 76 69 72  he C-level envir
2da50 6f 6e 20 61 72 72 61 79 20 69 6e 20 73 79 6e 63  on array in sync
2da60 0a 77 69 74 68 20 74 68 65 20 54 63 6c 2d 6c 65  .with the Tcl-le
2da70 76 65 6c 20 65 6e 76 20 61 72 72 61 79 2e 20 54  vel env array. T
2da80 68 69 73 20 72 65 71 75 69 72 65 64 20 61 64 64  his required add
2da90 69 6e 67 20 54 43 4c 5f 54 52 41 43 45 5f 41 52  ing TCL_TRACE_AR
2daa0 52 41 59 20 73 75 70 70 6f 72 74 0a 74 6f 20 54  RAY support.to T
2dab0 63 6c 5f 54 72 61 63 65 56 61 72 32 20 73 6f 20  cl_TraceVar2 so 
2dac0 74 68 61 74 20 61 72 72 61 79 20 6e 61 6d 65 73  that array names
2dad0 20 77 6f 72 6b 73 20 70 72 6f 70 65 72 6c 79 2e   works properly.
2dae0 20 28 42 57 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54   (BW).*** POTENT
2daf0 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c  IAL INCOMPATIBIL
2db00 49 54 59 20 2a 2a 2a 0a 0a 32 2f 31 38 2f 39 38  ITY ***..2/18/98
2db10 20 28 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 43   (enhancement) C
2db20 6f 6e 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69  onditional compi
2db30 6c 61 74 69 6f 6e 20 66 6f 72 20 75 6e 69 78 20  lation for unix 
2db40 73 79 73 74 65 6d 73 20 28 65 2e 67 2e 2c 0a 49  systems (e.g.,.I
2db50 52 49 58 2c 20 53 43 4f 29 20 74 68 61 74 20 75  RIX, SCO) that u
2db60 73 65 20 66 5f 62 73 69 7a 65 20 69 6e 73 74 65  se f_bsize inste
2db70 61 64 20 6f 66 20 73 74 5f 62 6c 6b 73 69 7a 65  ad of st_blksize
2db80 20 74 6f 20 64 65 74 65 72 6d 69 6e 65 20 64 69   to determine di
2db90 73 6b 20 62 6c 6f 63 6b 0a 73 69 7a 65 2e 20 28  sk block.size. (
2dba0 43 43 53 29 0a 0a 32 2f 32 33 2f 39 38 20 28 62  CCS)..2/23/98 (b
2dbb0 75 67 20 66 69 78 29 20 46 69 78 65 64 20 74 68  ug fix) Fixed th
2dbc0 65 20 65 6d 75 6c 61 74 69 6f 6e 20 6f 66 20 70  e emulation of p
2dbd0 6f 6c 6c 69 6e 67 20 73 65 6c 65 63 74 73 20 69  olling selects i
2dbe0 6e 20 74 68 65 20 74 68 72 65 61 64 65 64 0a 76  n the threaded.v
2dbf0 65 72 73 69 6f 6e 20 6f 66 20 74 68 65 20 55 6e  ersion of the Un
2dc00 69 78 20 6e 6f 74 69 66 69 65 72 2e 20 20 54 68  ix notifier.  Th
2dc10 65 20 62 75 67 20 77 61 73 20 73 68 6f 77 69 6e  e bug was showin
2dc20 67 20 75 70 20 6f 6e 20 61 20 6d 75 6c 74 69 70  g up on a multip
2dc30 72 6f 63 65 73 73 6f 72 0a 61 73 20 73 74 61 72  rocessor.as star
2dc40 76 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 6e 6f  vation of the no
2dc50 74 69 66 69 65 72 20 74 68 72 65 61 64 2e 20 28  tifier thread. (
2dc60 42 57 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  BW)..-----------
2dc70 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  ------ Released 
2dc80 38 2e 31 61 32 2c 20 46 65 62 20 32 33 20 31 39  8.1a2, Feb 23 19
2dc90 39 38 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  98 -------------
2dca0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32 32  ----------..9/22
2dcb0 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 43 68  /98 (bug fix) Ch
2dcc0 61 6e 67 65 64 20 74 68 65 20 76 61 6c 75 65 20  anged the value 
2dcd0 6f 66 20 54 43 4c 5f 54 52 41 43 45 5f 41 52 52  of TCL_TRACE_ARR
2dce0 41 59 20 73 6f 20 69 74 20 6e 6f 20 6c 6f 6e 67  AY so it no long
2dcf0 65 72 0a 63 6f 6e 66 6c 69 63 74 73 20 77 69 74  er.conflicts wit
2dd00 68 20 74 68 65 20 64 65 70 72 65 63 61 74 65 64  h the deprecated
2dd10 20 54 43 4c 5f 50 41 52 53 45 5f 50 41 52 54 31   TCL_PARSE_PART1
2dd20 20 66 6c 61 67 2e 20 20 54 68 69 73 20 73 68 6f   flag.  This sho
2dd30 75 6c 64 0a 69 6d 70 72 6f 76 65 20 70 6f 72 74  uld.improve port
2dd40 61 62 69 6c 69 74 79 20 6f 66 20 43 20 63 6f 64  ability of C cod
2dd50 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 30  e. (stanton)..10
2dd60 2f 36 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  /6/98 (bug fix) 
2dd70 54 68 65 20 63 6f 6d 70 69 6c 65 20 70 72 6f 63  The compile proc
2dd80 65 64 75 72 65 20 66 6f 72 20 22 69 66 22 20 69  edure for "if" i
2dd90 6e 63 6f 72 72 65 63 74 6c 79 20 61 74 74 65 6d  ncorrectly attem
2dda0 70 74 65 64 0a 74 6f 20 6d 61 74 63 68 20 61 67  pted.to match ag
2ddb0 61 69 6e 73 74 20 74 68 65 20 6c 69 74 65 72 61  ainst the litera
2ddc0 6c 20 73 74 72 69 6e 67 20 22 69 66 22 2c 20 72  l string "if", r
2ddd0 65 73 75 6c 74 69 6e 67 20 69 6e 20 61 20 73 74  esulting in a st
2dde0 61 63 6b 0a 6f 76 65 72 66 6c 6f 77 20 77 68 65  ack.overflow whe
2ddf0 6e 20 22 3a 3a 69 66 22 20 77 61 73 20 63 6f 6d  n "::if" was com
2de00 70 69 6c 65 64 2e 20 20 49 74 20 61 6c 73 6f 20  piled.  It also 
2de10 77 6f 75 6c 64 20 69 6e 63 6f 72 72 65 63 74 6c  would incorrectl
2de20 79 20 61 63 63 65 70 74 0a 22 69 66 22 20 69 6e  y accept."if" in
2de30 73 74 65 61 64 20 6f 66 20 22 65 6c 73 69 66 22  stead of "elsif"
2de40 20 69 6e 20 6c 61 74 65 72 20 63 6c 61 75 73 65   in later clause
2de50 73 2e 20 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  s.  (stanton)..1
2de60 30 2f 31 35 2f 39 38 20 28 6e 65 77 20 66 65 61  0/15/98 (new fea
2de70 74 75 72 65 29 20 41 64 64 65 64 20 61 20 22 74  ture) Added a "t
2de80 6f 74 69 74 6c 65 22 20 73 75 62 63 6f 6d 6d 61  otitle" subcomma
2de90 6e 64 20 74 6f 20 74 68 65 20 22 73 74 72 69 6e  nd to the "strin
2dea0 67 22 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 63 6f  g".command to co
2deb0 6e 76 65 72 74 20 73 74 72 69 6e 67 73 20 74 6f  nvert strings to
2dec0 20 63 61 70 69 74 61 6c 69 7a 65 20 74 68 65 20   capitalize the 
2ded0 66 69 72 73 74 20 63 68 61 72 61 63 74 65 72 20  first character 
2dee0 6f 66 20 61 20 73 74 72 69 6e 67 0a 61 6e 64 20  of a string.and 
2def0 6c 6f 77 65 72 63 61 73 65 20 61 6c 6c 20 6f 66  lowercase all of
2df00 20 74 68 65 20 6f 74 68 65 72 20 63 68 61 72 61   the other chara
2df10 63 74 65 72 73 2e 20 28 73 74 61 6e 74 6f 6e 29  cters. (stanton)
2df20 0a 0a 31 30 2f 31 35 2f 39 38 20 28 62 75 67 20  ..10/15/98 (bug 
2df30 66 69 78 29 20 43 68 61 6e 67 65 64 20 72 65 67  fix) Changed reg
2df40 65 78 70 20 61 6e 64 20 73 74 72 69 6e 67 20 63  exp and string c
2df50 6f 6d 6d 61 6e 64 73 20 74 6f 20 70 72 6f 70 65  ommands to prope
2df60 72 6c 79 0a 68 61 6e 64 6c 65 20 63 61 73 65 20  rly.handle case 
2df70 66 6f 6c 64 69 6e 67 20 61 63 63 6f 72 64 69 6e  folding accordin
2df80 67 20 74 6f 20 74 68 65 20 55 6e 69 63 6f 64 65  g to the Unicode
2df90 20 63 68 61 72 61 63 74 65 72 0a 74 61 62 6c 65   character.table
2dfa0 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 30  s. (stanton)..10
2dfb0 2f 32 31 2f 39 38 20 28 6e 65 77 20 66 65 61 74  /21/98 (new feat
2dfc0 75 72 65 29 20 41 64 64 65 64 20 61 6e 20 22 65  ure) Added an "e
2dfd0 6e 63 6f 64 69 6e 67 22 20 63 6f 6d 6d 61 6e 64  ncoding" command
2dfe0 20 74 6f 20 66 61 63 69 6c 69 74 61 74 65 0a 74   to facilitate.t
2dff0 72 61 6e 73 6c 61 74 69 6f 6e 73 20 6f 66 20 73  ranslations of s
2e000 74 72 69 6e 67 73 20 62 65 74 77 65 65 6e 20 64  trings between d
2e010 69 66 66 65 72 65 6e 74 20 63 68 61 72 61 63 74  ifferent charact
2e020 65 72 20 65 6e 63 6f 64 69 6e 67 73 2e 20 20 53  er encodings.  S
2e030 65 65 0a 74 68 65 20 65 6e 63 6f 64 69 6e 67 2e  ee.the encoding.
2e040 6e 20 6d 61 6e 75 61 6c 20 65 6e 74 72 79 20 66  n manual entry f
2e050 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e  or more details.
2e060 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 33   (stanton)..11/3
2e070 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 54 68  /98 (bug fix) Th
2e080 65 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73  e regular expres
2e090 73 69 6f 6e 20 63 68 61 72 61 63 74 65 72 20 63  sion character c
2e0a0 6c 61 73 73 69 66 69 63 61 74 69 6f 6e 0a 73 79  lassification.sy
2e0b0 6e 74 61 78 20 6e 6f 77 20 69 6e 63 6c 75 64 65  ntax now include
2e0c0 73 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63  s Unicode charac
2e0d0 74 65 72 73 20 69 6e 20 74 68 65 20 73 75 70 70  ters in the supp
2e0e0 6f 72 74 65 64 0a 63 6c 61 73 73 65 73 2e 20 28  orted.classes. (
2e0f0 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 36 2f 39  stanton)..11/6/9
2e100 38 20 28 62 75 67 20 66 69 78 29 20 56 61 72 69  8 (bug fix) Vari
2e110 61 62 6c 65 20 74 72 61 63 65 73 20 77 65 72 65  able traces were
2e120 20 63 61 75 73 69 6e 67 20 63 72 61 73 68 65 73   causing crashes
2e130 20 77 68 65 6e 20 75 70 76 61 72 0a 76 61 72 69   when upvar.vari
2e140 61 62 6c 65 73 20 77 65 6e 74 20 6f 75 74 20 6f  ables went out o
2e150 66 20 73 63 6f 70 65 2e 20 5b 42 75 67 3a 20 37  f scope. [Bug: 7
2e160 39 36 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  96] (stanton)..1
2e170 31 2f 39 2f 39 38 20 28 62 75 67 20 66 69 78 29  1/9/98 (bug fix)
2e180 20 22 66 6f 72 6d 61 74 22 20 6e 6f 77 20 63 6f   "format" now co
2e190 72 72 65 63 74 6c 79 20 68 61 6e 64 6c 65 73 20  rrectly handles 
2e1a0 6d 75 6c 74 69 62 79 74 65 20 63 68 61 72 61 63  multibyte charac
2e1b0 74 65 72 73 0a 69 6e 20 25 73 20 66 6f 72 6d 61  ters.in %s forma
2e1c0 74 20 73 74 72 69 6e 67 73 2e 20 28 73 74 61 6e  t strings. (stan
2e1d0 74 6f 6e 29 0a 0a 31 31 2f 31 30 2f 39 38 20 28  ton)..11/10/98 (
2e1e0 6e 65 77 20 66 65 61 74 75 72 65 29 20 22 72 65  new feature) "re
2e1f0 67 65 78 70 22 20 6e 6f 77 20 61 63 63 65 70 74  gexp" now accept
2e200 73 20 74 68 72 65 65 20 6e 65 77 20 73 77 69 74  s three new swit
2e210 63 68 65 73 0a 28 22 2d 6c 69 6e 65 22 2c 20 22  ches.("-line", "
2e220 2d 6c 69 6e 65 61 6e 63 68 6f 72 22 2c 20 61 6e  -lineanchor", an
2e230 64 20 22 2d 6c 69 6e 65 73 74 6f 70 22 29 20 74  d "-linestop") t
2e240 68 61 74 20 63 6f 6e 74 72 6f 6c 20 68 6f 77 20  hat control how 
2e250 72 65 67 75 6c 61 72 0a 65 78 70 72 65 73 73 69  regular.expressi
2e260 6f 6e 73 20 74 72 65 61 74 20 6c 69 6e 65 20 62  ons treat line b
2e270 72 65 61 6b 73 2e 20 53 65 65 20 74 68 65 20 72  reaks. See the r
2e280 65 67 65 78 70 20 6d 61 6e 75 61 6c 20 65 6e 74  egexp manual ent
2e290 72 79 20 66 6f 72 20 6d 6f 72 65 0a 64 65 74 61  ry for more.deta
2e2a0 69 6c 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ils. (stanton)..
2e2b0 31 31 2f 31 37 2f 39 38 20 28 62 75 67 20 66 69  11/17/98 (bug fi
2e2c0 78 29 20 22 73 63 61 6e 22 20 6e 6f 77 20 63 6f  x) "scan" now co
2e2d0 72 72 65 63 74 6c 79 20 68 61 6e 64 6c 65 73 20  rrectly handles 
2e2e0 55 6e 69 63 6f 64 65 0a 63 68 61 72 61 63 74 65  Unicode.characte
2e2f0 72 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31  rs. (stanton)..1
2e300 31 2f 31 37 2f 39 38 20 28 6e 65 77 20 66 65 61  1/17/98 (new fea
2e310 74 75 72 65 29 20 22 73 63 61 6e 22 20 6e 6f 77  ture) "scan" now
2e320 20 73 75 70 70 6f 72 74 73 20 58 50 47 33 20 70   supports XPG3 p
2e330 6f 73 69 74 69 6f 6e 20 73 70 65 63 69 66 69 65  osition specifie
2e340 72 73 0a 61 6e 64 20 74 68 65 20 22 25 6e 22 20  rs.and the "%n" 
2e350 63 6f 6e 76 65 72 73 69 6f 6e 20 63 68 61 72 61  conversion chara
2e360 63 74 65 72 2e 20 20 53 65 65 20 74 68 65 20 22  cter.  See the "
2e370 73 63 61 6e 22 20 6d 61 6e 75 61 6c 20 65 6e 74  scan" manual ent
2e380 72 79 20 66 6f 72 0a 6d 6f 72 65 20 64 65 74 61  ry for.more deta
2e390 69 6c 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ils. (stanton)..
2e3a0 31 31 2f 31 37 2f 39 38 20 28 62 75 67 20 66 69  11/17/98 (bug fi
2e3b0 78 29 20 54 68 65 20 54 63 6c 20 6d 65 6d 6f 72  x) The Tcl memor
2e3c0 79 20 61 6c 6c 6f 63 61 74 6f 72 20 6e 6f 77 20  y allocator now 
2e3d0 72 65 74 75 72 6e 73 20 38 2d 62 79 74 65 20 61  returns 8-byte a
2e3e0 6c 69 67 6e 65 64 0a 63 68 75 6e 6b 73 20 6f 66  ligned.chunks of
2e3f0 20 6d 65 6d 6f 72 79 20 77 68 69 63 68 20 69 6d   memory which im
2e400 70 72 6f 76 65 73 20 70 65 72 66 6f 72 6d 61 6e  proves performan
2e410 63 65 20 6f 6e 20 57 69 6e 64 6f 77 73 20 61 6e  ce on Windows an
2e420 64 20 61 76 6f 69 64 73 0a 63 72 61 73 68 65 73  d avoids.crashes
2e430 20 6f 6e 20 6f 74 68 65 72 20 70 6c 61 74 66 6f   on other platfo
2e440 72 6d 73 2e 20 5b 42 75 67 3a 20 38 33 34 5d 20  rms. [Bug: 834] 
2e450 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 32 33  (stanton)..11/23
2e460 2f 39 38 20 28 62 75 67 20 66 69 78 29 20 41 70  /98 (bug fix) Ap
2e470 70 6c 69 65 64 20 76 61 72 69 6f 75 73 20 72 65  plied various re
2e480 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e  gular expression
2e490 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 75 67   performance bug
2e4a0 0a 66 69 78 65 73 20 73 75 70 70 6c 69 65 64 20  .fixes supplied 
2e4b0 62 79 20 48 65 6e 72 79 20 53 70 65 6e 63 65 72  by Henry Spencer
2e4c0 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f  . (stanton)..11/
2e4d0 33 30 2f 39 38 20 28 62 75 67 20 66 69 78 29 20  30/98 (bug fix) 
2e4e0 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 74 68  Fixed various th
2e4f0 72 65 61 64 20 72 65 6c 61 74 65 64 20 72 61 63  read related rac
2e500 65 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 5b 42  e conditions. [B
2e510 75 67 3a 0a 38 38 30 20 26 20 36 30 37 5d 20 28  ug:.880 & 607] (
2e520 73 74 61 6e 74 6f 6e 29 0a 0a 31 31 2f 33 30 2f  stanton)..11/30/
2e530 39 38 20 28 62 75 67 20 66 69 78 29 20 46 69 78  98 (bug fix) Fix
2e540 65 64 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 6d  ed a number of m
2e550 65 6d 6f 72 79 20 6f 76 65 72 66 6c 6f 77 20 61  emory overflow a
2e560 6e 64 20 6c 65 61 6b 0a 62 75 67 73 2e 20 5b 42  nd leak.bugs. [B
2e570 75 67 3a 20 35 38 34 5d 20 28 73 74 61 6e 74 6f  ug: 584] (stanto
2e580 6e 29 0a 0a 31 32 2f 31 2f 39 38 20 28 6e 65 77  n)..12/1/98 (new
2e590 20 66 65 61 75 72 65 29 20 41 64 64 65 64 20 73   feaure) Added s
2e5a0 75 70 70 6f 72 74 20 66 6f 72 20 4b 6f 72 65 61  upport for Korea
2e5b0 6e 20 65 6e 63 6f 64 69 6e 67 73 2e 20 28 73 74  n encodings. (st
2e5c0 61 6e 74 6f 6e 29 0a 0a 31 32 2f 31 2f 39 38 20  anton)..12/1/98 
2e5d0 28 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29  (feature change)
2e5e0 20 43 68 61 6e 67 65 64 20 74 68 65 20 54 63 6c   Changed the Tcl
2e5f0 5f 45 76 61 6c 4f 62 6a 76 20 69 6e 74 65 72 66  _EvalObjv interf
2e600 61 63 65 20 74 6f 20 72 65 6d 6f 76 65 0a 74 68  ace to remove.th
2e610 65 20 73 74 72 69 6e 67 20 61 6e 64 20 6c 65 6e  e string and len
2e620 67 74 68 20 61 72 67 75 6d 65 6e 74 73 2e 0a 2a  gth arguments..*
2e630 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
2e640 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
2e650 68 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68 61  h previous alpha
2e660 20 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a 31   releases ***..1
2e670 32 2f 32 2f 39 38 20 28 62 75 67 20 66 69 78 29  2/2/98 (bug fix)
2e680 20 46 69 78 65 64 20 76 61 72 69 6f 75 73 20 62   Fixed various b
2e690 75 67 73 20 72 65 6c 61 74 65 64 20 74 6f 20 6c  ugs related to l
2e6a0 69 6e 65 20 66 65 65 64 0a 74 72 61 6e 73 6c 61  ine feed.transla
2e6b0 74 69 6f 6e 2e 20 5b 42 75 67 3a 20 38 38 37 5d  tion. [Bug: 887]
2e6c0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 31 32 2f 34   (stanton)..12/4
2e6d0 2f 39 38 20 28 6e 65 77 20 66 65 61 74 75 72 65  /98 (new feature
2e6e0 29 20 41 64 64 65 64 20 61 20 6d 65 73 73 61 67  ) Added a messag
2e6f0 65 20 63 61 74 61 6c 6f 67 20 66 61 63 69 6c 69  e catalog facili
2e700 74 79 20 74 6f 20 68 65 6c 70 20 77 69 74 68 0a  ty to help with.
2e710 6c 6f 63 61 6c 69 7a 69 6e 67 20 54 63 6c 20 73  localizing Tcl s
2e720 63 72 69 70 74 73 2e 20 20 54 68 61 6e 6b 73 20  cripts.  Thanks 
2e730 74 6f 20 4d 61 72 6b 20 48 61 72 72 69 73 6f 6e  to Mark Harrison
2e740 20 66 6f 72 20 63 6f 6e 74 72 69 62 75 74 69 6e   for contributin
2e750 67 20 74 68 65 0a 69 6e 69 74 69 61 6c 20 69 6d  g the.initial im
2e760 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20  plementation of 
2e770 74 68 65 20 22 6d 73 67 63 61 74 22 20 70 61 63  the "msgcat" pac
2e780 6b 61 67 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  kage. (stanton).
2e790 0a 31 32 2f 37 2f 39 38 20 28 62 75 67 20 66 69  .12/7/98 (bug fi
2e7a0 78 29 20 54 68 65 20 6d 65 6d 6f 72 79 20 61 6c  x) The memory al
2e7b0 6c 6f 63 61 74 6f 72 20 77 61 73 20 66 61 69 6c  locator was fail
2e7c0 69 6e 67 20 74 6f 20 75 70 64 61 74 65 20 74 68  ing to update th
2e7d0 65 0a 62 6c 6f 63 6b 20 6c 69 73 74 20 66 6f 72  e.block list for
2e7e0 20 6c 61 72 67 65 20 6d 65 6d 6f 72 79 20 62 6c   large memory bl
2e7f0 6f 63 6b 73 20 74 68 61 74 20 77 65 72 65 20 72  ocks that were r
2e800 65 61 6c 6c 6f 63 61 74 65 64 20 69 6e 74 6f 20  eallocated into 
2e810 61 0a 64 69 66 66 65 72 65 6e 74 20 61 64 64 72  a.different addr
2e820 65 73 73 2e 20 5b 42 75 67 3a 20 39 33 33 5d 20  ess. [Bug: 933] 
2e830 28 73 74 61 6e 74 6f 6e 29 0a 0a 2d 2d 2d 2d 2d  (stanton)..-----
2e840 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
2e850 65 61 73 65 64 20 38 2e 31 62 31 2c 20 44 65 63  eased 8.1b1, Dec
2e860 20 31 30 20 31 39 39 38 20 2d 2d 2d 2d 2d 2d 2d   10 1998 -------
2e870 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2e880 0a 0a 31 32 2f 32 32 2f 39 38 20 28 70 65 72 66  ..12/22/98 (perf
2e890 6f 72 6d 61 6e 63 65 20 69 6d 70 72 6f 76 65 6d  ormance improvem
2e8a0 65 6e 74 29 20 49 6d 70 72 6f 76 65 64 20 74 68  ent) Improved th
2e8b0 65 20 2d 63 6f 6d 6d 61 6e 64 20 6f 70 74 69 6f  e -command optio
2e8c0 6e 20 6f 66 20 74 68 65 0a 6c 73 6f 72 74 20 63  n of the.lsort c
2e8d0 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 74 74 65 72  ommand to better
2e8e0 20 75 73 65 20 74 68 65 20 6f 62 6a 65 63 74 20   use the object 
2e8f0 73 79 73 74 65 6d 20 66 6f 72 20 69 6d 70 72 6f  system for impro
2e900 76 65 64 0a 70 65 72 66 6f 72 6d 61 6e 63 65 20  ved.performance 
2e910 28 61 62 6f 75 74 20 35 78 20 73 70 65 65 64 20  (about 5x speed 
2e920 75 70 29 2e 20 20 54 68 61 6e 6b 73 20 74 6f 20  up).  Thanks to 
2e930 53 79 64 20 50 6f 6c 6b 20 66 6f 72 20 73 75 70  Syd Polk for sup
2e940 70 6c 69 6e 67 20 74 68 65 0a 70 61 74 63 68 2e  pling the.patch.
2e950 20 5b 52 46 45 3a 20 37 32 36 5d 20 28 72 6a 6f   [RFE: 726] (rjo
2e960 68 6e 73 6f 6e 29 0a 0a 32 2f 31 30 2f 39 39 20  hnson)..2/10/99 
2e970 28 62 75 67 20 66 69 78 29 20 52 65 73 74 6f 72  (bug fix) Restor
2e980 65 64 20 74 68 65 20 54 63 6c 5f 4f 62 6a 53 65  ed the Tcl_ObjSe
2e990 74 56 61 72 32 2f 54 63 6c 5f 4f 62 6a 47 65 74  tVar2/Tcl_ObjGet
2e9a0 56 61 72 32 0a 69 6e 74 65 72 66 61 63 65 73 20  Var2.interfaces 
2e9b0 66 72 6f 6d 20 38 2e 30 20 61 6e 64 20 72 65 6e  from 8.0 and ren
2e9c0 61 6d 65 64 20 74 68 65 20 54 63 6c 5f 47 65 74  amed the Tcl_Get
2e9d0 4f 62 6a 56 61 72 32 2f 54 63 6c 5f 53 65 74 4f  ObjVar2/Tcl_SetO
2e9e0 62 6a 56 61 72 32 0a 69 6e 74 65 72 66 61 63 65  bjVar2.interface
2e9f0 73 20 74 6f 20 54 63 6c 5f 47 65 74 56 61 72 32  s to Tcl_GetVar2
2ea00 45 78 20 61 6e 64 20 54 63 6c 5f 53 65 74 56 61  Ex and Tcl_SetVa
2ea10 72 32 45 78 2e 20 20 54 68 69 73 20 73 68 6f 75  r2Ex.  This shou
2ea20 6c 64 20 70 72 6f 76 69 64 65 0a 62 65 74 74 65  ld provide.bette
2ea30 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20  r compatibility 
2ea40 77 69 74 68 20 38 2e 30 2e 20 28 73 74 61 6e 74  with 8.0. (stant
2ea50 6f 6e 29 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41  on).*** POTENTIA
2ea60 4c 20 49 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54  L INCOMPATIBILIT
2ea70 59 20 77 69 74 68 20 70 72 65 76 69 6f 75 73 20  Y with previous 
2ea80 61 6c 70 68 61 2f 62 65 74 61 20 72 65 6c 65 61  alpha/beta relea
2ea90 73 65 73 20 2a 2a 2a 0a 0a 32 2f 31 30 2f 39 39  ses ***..2/10/99
2eaa0 20 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20   (bug fix) Made 
2eab0 74 68 65 20 65 76 61 6c 20 69 6e 74 65 72 66 61  the eval interfa
2eac0 63 65 73 20 63 6f 6d 70 61 74 69 62 6c 65 20 77  ces compatible w
2ead0 69 74 68 20 38 2e 30 20 62 79 0a 72 65 6e 61 6d  ith 8.0 by.renam
2eae0 69 6e 67 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 20  ing Tcl_EvalObj 
2eaf0 74 6f 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 45 78  to Tcl_EvalObjEx
2eb00 2c 20 72 65 6e 61 6d 69 6e 67 20 54 63 6c 5f 45  , renaming Tcl_E
2eb10 76 61 6c 32 20 74 6f 0a 54 63 6c 5f 45 76 61 6c  val2 to.Tcl_Eval
2eb20 45 78 20 61 6e 64 20 72 65 73 74 6f 72 69 6e 67  Ex and restoring
2eb30 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 20 61 6e 64   Tcl_EvalObj and
2eb40 20 54 63 6c 5f 47 6c 6f 62 61 6c 45 76 61 6c 4f   Tcl_GlobalEvalO
2eb50 62 6a 20 69 6e 74 65 72 66 61 63 65 73 0a 73 6f  bj interfaces.so
2eb60 20 74 68 65 79 20 6d 61 74 63 68 20 54 63 6c 20   they match Tcl 
2eb70 38 2e 30 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 2a  8.0. (stanton).*
2eb80 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43  ** POTENTIAL INC
2eb90 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77 69 74  OMPATIBILITY wit
2eba0 68 20 70 72 65 76 69 6f 75 73 20 61 6c 70 68 61  h previous alpha
2ebb0 2f 62 65 74 61 20 72 65 6c 65 61 73 65 73 20 2a  /beta releases *
2ebc0 2a 2a 0a 0a 32 2f 32 35 2f 39 39 20 28 62 75 67  **..2/25/99 (bug
2ebd0 20 66 69 78 2f 6e 65 77 20 66 65 61 74 75 72 65   fix/new feature
2ebe0 29 20 4f 6e 20 57 69 6e 64 6f 77 73 2c 20 74 68  ) On Windows, th
2ebf0 65 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  e channel driver
2ec00 73 20 66 6f 72 0a 63 6f 6e 73 6f 6c 65 73 20 61  s for.consoles a
2ec10 6e 64 20 73 65 72 69 61 6c 20 70 6f 72 74 73 20  nd serial ports 
2ec20 6e 6f 77 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73  now completely s
2ec30 75 70 70 6f 72 74 20 66 69 6c 65 20 65 76 65 6e  upport file even
2ec40 74 73 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f  ts. (redman)..3/
2ec50 35 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 49  5/99 (bug fix) I
2ec60 6e 74 65 67 72 61 74 65 64 20 70 61 74 63 68 65  ntegrated patche
2ec70 73 20 74 6f 20 66 69 78 20 76 61 72 69 6f 75 73  s to fix various
2ec80 20 63 6f 6e 66 69 67 75 72 65 20 70 72 6f 62 6c   configure probl
2ec90 65 6d 73 0a 74 68 61 74 20 61 66 66 65 63 74 65  ems.that affecte
2eca0 64 20 48 50 2d 55 58 2d 31 31 2c 20 36 34 2d 62  d HP-UX-11, 64-b
2ecb0 69 74 20 49 52 49 58 2c 20 4c 69 6e 75 78 2c 20  it IRIX, Linux, 
2ecc0 61 6e 64 20 53 6f 6c 61 72 69 73 2e 20 28 73 74  and Solaris. (st
2ecd0 61 6e 74 6f 6e 29 0a 0a 33 2f 39 2f 39 39 20 28  anton)..3/9/99 (
2ece0 62 75 67 20 66 69 78 29 20 49 6e 74 65 67 72 61  bug fix) Integra
2ecf0 74 65 64 20 76 61 72 69 6f 75 73 20 41 49 58 20  ted various AIX 
2ed00 72 65 6c 61 74 65 64 20 70 61 74 63 68 65 73 20  related patches 
2ed10 74 6f 20 69 6d 70 72 6f 76 65 0a 73 75 70 70 6f  to improve.suppo
2ed20 72 74 20 66 6f 72 20 73 68 61 72 65 64 20 6c 69  rt for shared li
2ed30 62 72 61 72 69 65 73 2e 20 28 73 74 61 6e 74 6f  braries. (stanto
2ed40 6e 29 0a 0a 33 2f 39 2f 39 39 20 28 6e 65 77 20  n)..3/9/99 (new 
2ed50 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20 74  feature) Added t
2ed60 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 75 73 65 72  cl_platform(user
2ed70 29 20 74 6f 20 70 72 6f 76 69 64 65 20 61 20 70  ) to provide a p
2ed80 6f 72 74 61 62 6c 65 0a 77 61 79 20 74 6f 20 67  ortable.way to g
2ed90 65 74 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74  et the name of t
2eda0 68 65 20 63 75 72 72 65 6e 74 20 75 73 65 72 2e  he current user.
2edb0 20 28 77 65 6c 63 68 29 0a 0a 33 2f 39 2f 39 39   (welch)..3/9/99
2edc0 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20 49   (new feature) I
2edd0 6e 74 65 67 72 61 74 65 64 20 74 68 65 20 73 74  ntegrated the st
2ede0 75 62 20 6c 69 62 72 61 72 79 20 6d 65 63 68 61  ub library mecha
2edf0 6e 69 73 6d 20 63 6f 6e 74 72 69 62 75 74 65 64  nism contributed
2ee00 0a 62 79 20 4a 61 6e 20 4e 69 6a 74 6d 61 6e 73  .by Jan Nijtmans
2ee10 2c 20 50 61 75 6c 20 44 75 66 66 69 6e 2c 20 61  , Paul Duffin, a
2ee20 6e 64 20 4a 65 61 6e 2d 43 6c 61 75 64 65 20 57  nd Jean-Claude W
2ee30 69 70 70 6c 65 72 2e 20 20 54 68 69 73 20 66 65  ippler.  This fe
2ee40 61 74 75 72 65 0a 73 68 6f 75 6c 64 20 6d 61 6b  ature.should mak
2ee50 65 20 69 74 20 70 6f 73 73 69 62 6c 65 20 74 6f  e it possible to
2ee60 20 77 72 69 74 65 20 65 78 74 65 6e 73 69 6f 6e   write extension
2ee70 73 20 74 68 61 74 20 73 75 70 70 6f 72 74 20 6d  s that support m
2ee80 75 6c 74 69 70 6c 65 0a 76 65 72 73 69 6f 6e 73  ultiple.versions
2ee90 20 6f 66 20 54 63 6c 20 73 69 6d 75 6c 74 61 6e   of Tcl simultan
2eea0 65 6f 75 73 6c 79 2e 20 20 49 74 20 61 6c 73 6f  eously.  It also
2eeb0 20 6d 61 6b 65 73 20 69 74 20 70 6f 73 73 69 62   makes it possib
2eec0 6c 65 20 74 6f 0a 64 79 6e 61 6d 69 63 61 6c 6c  le to.dynamicall
2eed0 79 20 6c 6f 61 64 20 65 78 74 65 6e 73 69 6f 6e  y load extension
2eee0 73 20 69 6e 74 6f 20 73 74 61 74 69 63 61 6c 6c  s into staticall
2eef0 79 20 6c 69 6e 6b 65 64 20 69 6e 74 65 72 70 72  y linked interpr
2ef00 65 74 65 72 73 2e 20 20 54 68 69 73 0a 70 61 74  eters.  This.pat
2ef10 63 68 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20  ch includes the 
2ef20 66 6f 6c 6c 6f 77 69 6e 67 20 63 68 61 6e 67 65  following change
2ef30 73 3a 0a 20 20 20 20 20 20 2d 09 41 64 64 65 64  s:.      -.Added
2ef40 20 61 20 54 63 6c 5f 49 6e 69 74 53 74 75 62 73   a Tcl_InitStubs
2ef50 28 29 20 69 6e 74 65 72 66 61 63 65 0a 20 20 20  () interface.   
2ef60 20 20 20 2d 09 41 64 64 65 64 20 54 63 6c 5f 50     -.Added Tcl_P
2ef70 6b 67 50 72 6f 76 69 64 65 45 78 2c 20 54 63 6c  kgProvideEx, Tcl
2ef80 5f 50 6b 67 52 65 71 75 69 72 65 45 78 2c 20 54  _PkgRequireEx, T
2ef90 63 6c 5f 50 6b 67 50 72 65 73 65 6e 74 45 78 2c  cl_PkgPresentEx,
2efa0 0a 20 20 20 20 20 20 09 61 6e 64 20 54 63 6c 5f  .      .and Tcl_
2efb0 50 6b 67 50 72 65 73 65 6e 74 2e 0a 20 20 20 20  PkgPresent..    
2efc0 20 20 2d 20 41 64 64 65 64 20 76 61 5f 6c 69 73    - Added va_lis
2efd0 74 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 61 6c  t versions of al
2efe0 6c 20 56 41 52 41 52 47 53 20 66 75 6e 63 74 69  l VARARGS functi
2eff0 6f 6e 73 20 73 6f 20 74 68 65 79 20 63 61 6e 20  ons so they can 
2f000 62 65 0a 09 69 6e 76 6f 6b 65 64 20 66 72 6f 6d  be..invoked from
2f010 20 77 72 61 70 70 65 72 20 66 75 6e 63 74 69 6f   wrapper functio
2f020 6e 73 2e 0a 53 65 65 20 74 68 65 20 6d 61 6e 75  ns..See the manu
2f030 61 6c 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f  al for more info
2f040 72 6d 61 74 69 6f 6e 2e 20 28 73 74 61 6e 74 6f  rmation. (stanto
2f050 6e 29 0a 0a 0a 33 2f 31 30 2f 39 39 20 28 66 65  n)...3/10/99 (fe
2f060 61 74 75 72 65 20 63 68 61 6e 67 65 29 20 52 65  ature change) Re
2f070 70 6c 61 63 65 64 20 54 63 6c 5f 41 6c 65 72 74  placed Tcl_Alert
2f080 4e 6f 74 69 66 69 65 72 20 77 69 74 68 0a 54 63  Notifier with.Tc
2f090 6c 5f 54 68 72 65 61 64 41 6c 65 72 74 20 73 69  l_ThreadAlert si
2f0a0 6e 63 65 20 74 68 65 20 54 63 6c 5f 41 6c 65 72  nce the Tcl_Aler
2f0b0 74 4e 6f 74 69 66 69 65 72 20 66 75 6e 63 74 69  tNotifier functi
2f0c0 6f 6e 20 72 65 6c 69 65 64 20 6f 6e 20 70 61 73  on relied on pas
2f0d0 73 69 6e 67 0a 69 6e 74 65 72 6e 61 6c 20 64 61  sing.internal da
2f0e0 74 61 20 73 74 72 75 63 74 75 72 65 73 2e 20 28  ta structures. (
2f0f0 73 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54  stanton).*** POT
2f100 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
2f110 42 49 4c 49 54 59 20 77 69 74 68 20 70 72 65 76  BILITY with prev
2f120 69 6f 75 73 20 61 6c 70 68 61 2f 62 65 74 61 20  ious alpha/beta 
2f130 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a 33 2f  releases ***..3/
2f140 31 30 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75  10/99 (new featu
2f150 72 65 29 20 41 64 64 65 64 20 61 20 54 63 6c 5f  re) Added a Tcl_
2f160 47 65 74 56 65 72 73 69 6f 6e 20 41 50 49 20 74  GetVersion API t
2f170 6f 20 6d 61 6b 65 20 69 74 20 65 61 73 69 65 72  o make it easier
2f180 20 74 6f 0a 63 68 65 63 6b 20 74 68 65 20 54 63   to.check the Tc
2f190 6c 20 76 65 72 73 69 6f 6e 20 61 6e 64 20 70 61  l version and pa
2f1a0 74 63 68 20 6c 65 76 65 6c 20 66 72 6f 6d 20 43  tch level from C
2f1b0 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 33 2f 31 34  . (redman)..3/14
2f1c0 2f 39 39 20 28 66 65 61 74 75 72 65 20 63 68 61  /99 (feature cha
2f1d0 6e 67 65 29 20 54 72 69 65 64 20 74 6f 20 75 6e  nge) Tried to un
2f1e0 69 66 79 20 74 68 65 20 54 63 6c 70 49 6e 69 74  ify the TclpInit
2f1f0 4c 69 62 72 61 72 79 20 70 61 74 68 0a 72 6f 75  Library path.rou
2f200 74 69 6e 65 73 20 74 6f 20 6c 6f 6f 6b 20 69 6e  tines to look in
2f210 20 73 69 6d 69 6c 61 72 20 70 6c 61 63 65 73 20   similar places 
2f220 66 72 6f 6d 20 57 69 6e 64 6f 77 73 20 74 6f 20  from Windows to 
2f230 55 4e 49 58 2e 20 20 54 68 65 20 6e 65 77 0a 6c  UNIX.  The new.l
2f240 69 62 72 61 72 79 20 73 65 61 72 63 68 20 70 61  ibrary search pa
2f250 74 68 20 69 73 3a 20 54 43 4c 5f 4c 49 42 52 41  th is: TCL_LIBRA
2f260 52 59 2c 20 54 43 4c 5f 4c 49 42 52 41 52 59 2f  RY, TCL_LIBRARY/
2f270 2e 2e 2f 74 63 6c 38 2e 31 2c 20 72 65 6c 61 74  ../tcl8.1, relat
2f280 69 76 65 0a 74 6f 20 44 4c 4c 20 28 57 69 6e 64  ive.to DLL (Wind
2f290 6f 77 73 20 4f 6e 6c 79 29 20 72 65 6c 61 74 69  ows Only) relati
2f2a0 76 65 20 74 6f 20 69 6e 73 74 61 6c 6c 65 64 20  ve to installed 
2f2b0 65 78 65 63 75 74 61 62 6c 65 2c 20 72 65 6c 61  executable, rela
2f2c0 74 69 76 65 20 74 6f 0a 64 65 76 65 6c 6f 70 20  tive to.develop 
2f2d0 65 78 65 63 75 74 61 62 6c 65 2c 20 61 6e 64 20  executable, and 
2f2e0 72 65 6c 61 74 69 76 65 20 74 6f 20 63 6f 6d 70  relative to comp
2f2f0 69 6c 65 64 2d 69 6e 20 69 6e 20 6c 6f 63 61 74  iled-in in locat
2f300 69 6f 6e 20 28 55 4e 49 58 0a 4f 6e 6c 79 2e 29  ion (UNIX.Only.)
2f310 20 20 54 68 69 73 20 66 69 78 20 69 6e 63 6c 75    This fix inclu
2f320 64 65 64 3a 0a 20 20 20 20 2d 20 44 65 66 69 6e  ded:.    - Defin
2f330 69 6e 67 20 61 20 54 63 6c 70 46 69 6e 64 45 78  ing a TclpFindEx
2f340 65 63 75 74 61 62 6c 65 0a 20 20 20 20 2d 20 4d  ecutable.    - M
2f350 6f 76 69 6e 67 20 54 63 6c 5f 46 69 6e 64 45 78  oving Tcl_FindEx
2f360 65 63 75 74 61 62 6c 65 20 74 6f 20 61 20 63 6f  ecutable to a co
2f370 6d 6d 6f 6e 20 61 72 65 61 20 69 6e 20 74 63 6c  mmon area in tcl
2f380 45 6e 63 6f 64 69 6e 67 2e 63 0a 20 20 20 20 2d  Encoding.c.    -
2f390 20 4d 6f 64 69 66 79 69 6e 67 20 74 68 65 20 54   Modifying the T
2f3a0 63 6c 70 49 6e 69 74 4c 69 62 72 61 72 79 50 61  clpInitLibraryPa
2f3b0 74 68 20 72 6f 75 74 69 6e 65 73 2e 0a 28 73 75  th routines..(su
2f3c0 72 6c 65 73 29 0a 0a 33 2f 31 34 2f 39 39 20 28  rles)..3/14/99 (
2f3d0 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
2f3e0 41 64 64 65 64 20 68 6f 6f 6b 73 20 66 6f 72 20  Added hooks for 
2f3f0 54 63 6c 50 72 6f 20 57 72 61 70 70 65 72 20 74  TclPro Wrapper t
2f400 6f 20 69 6e 69 74 69 61 6c 69 7a 65 0a 74 68 65  o initialize.the
2f410 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65   location of the
2f420 20 65 6e 63 6f 64 69 6e 67 20 66 69 6c 65 73 20   encoding files 
2f430 61 6e 64 20 6c 69 62 72 61 72 69 65 73 2e 20 20  and libraries.  
2f440 54 68 69 73 20 66 69 78 20 69 6e 63 6c 75 64 65  This fix include
2f450 64 3a 0a 20 20 20 20 2d 20 41 64 64 69 6e 67 20  d:.    - Adding 
2f460 74 68 65 20 54 63 6c 53 65 74 50 65 72 49 6e 69  the TclSetPerIni
2f470 74 53 63 72 69 70 74 20 72 6f 75 74 69 6e 65 2e  tScript routine.
2f480 0a 20 20 20 20 2d 20 4d 6f 64 69 66 79 69 6e 67  .    - Modifying
2f490 20 74 68 65 20 54 63 6c 5f 49 6e 69 74 20 72 6f   the Tcl_Init ro
2f4a0 75 74 69 6e 65 73 20 74 6f 20 65 76 61 6c 75 61  utines to evalua
2f4b0 74 65 20 74 68 65 20 6e 6f 6e 2d 4e 55 4c 4c 0a  te the non-NULL.
2f4c0 20 20 20 20 20 20 70 72 65 2d 69 6e 69 74 20 73        pre-init s
2f4d0 63 72 69 70 74 2e 0a 20 20 20 20 2d 20 41 64 64  cript..    - Add
2f4e0 69 6e 67 20 74 68 65 20 54 63 6c 5f 53 65 74 64  ing the Tcl_Setd
2f4f0 65 66 61 75 6c 74 45 6e 63 6f 64 69 6e 67 44 69  efaultEncodingDi
2f500 72 20 61 6e 64 20 54 63 6c 5f 47 65 74 44 65 66  r and Tcl_GetDef
2f510 61 75 6c 74 45 6e 63 6f 64 69 6e 67 44 69 72 0a  aultEncodingDir.
2f520 20 20 20 20 20 20 72 6f 75 74 69 6e 65 73 2e 0a        routines..
2f530 20 20 20 20 2d 20 4d 6f 64 69 66 79 69 6e 67 20      - Modifying 
2f540 74 68 65 20 54 63 6c 70 49 6e 69 74 4c 69 62 72  the TclpInitLibr
2f550 61 72 79 20 72 6f 75 74 69 6e 65 73 20 74 6f 20  ary routines to 
2f560 61 70 70 65 6e 64 20 74 68 65 20 64 65 66 61 75  append the defau
2f570 6c 74 0a 20 20 20 20 20 20 65 6e 63 6f 64 69 6e  lt.      encodin
2f580 67 20 64 69 72 2e 0a 28 73 75 72 6c 65 73 29 0a  g dir..(surles).
2f590 0a 33 2f 31 34 2f 39 39 20 28 66 65 61 74 75 72  .3/14/99 (featur
2f5a0 65 20 63 68 61 6e 67 65 29 20 54 65 73 74 20 73  e change) Test s
2f5b0 75 69 74 65 20 6e 6f 77 20 75 73 65 73 20 22 74  uite now uses "t
2f5c0 65 73 74 22 20 6e 61 6d 65 73 70 61 63 65 20 74  est" namespace t
2f5d0 6f 0a 64 65 66 69 6e 65 20 74 68 65 20 74 65 73  o.define the tes
2f5e0 74 20 70 72 6f 63 65 64 75 72 65 20 61 6e 64 20  t procedure and 
2f5f0 6f 74 68 65 72 20 61 75 78 69 6c 69 61 72 79 20  other auxiliary 
2f600 70 72 6f 63 65 64 75 72 65 73 20 61 73 20 77 65  procedures as we
2f610 6c 6c 20 61 73 0a 67 6c 6f 62 61 6c 20 76 61 72  ll as.global var
2f620 69 61 62 6c 65 73 2e 0a 20 20 20 20 2d 20 47 6c  iables..    - Gl
2f630 6f 62 61 6c 20 61 72 72 61 79 20 74 65 73 74 43  obal array testC
2f640 6f 6e 66 69 67 65 20 69 73 20 6e 6f 77 20 63 61  onfige is now ca
2f650 6c 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 74 65 73  lled ::test::tes
2f660 74 43 6f 6e 66 69 67 2e 0a 20 20 20 20 2d 20 47  tConfig..    - G
2f670 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65 20 56  lobal variable V
2f680 45 52 42 4f 53 45 20 69 73 20 6e 6f 77 20 63 61  ERBOSE is now ca
2f690 6c 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 76 65 72  lled ::test::ver
2f6a0 62 6f 73 65 2c 20 61 6e 64 0a 20 20 20 20 20 20  bose, and.      
2f6b0 3a 3a 74 65 73 74 3a 3a 76 65 72 62 6f 73 65 20  ::test::verbose 
2f6c0 6e 6f 20 6c 6f 6e 67 65 72 20 77 6f 72 6b 73 20  no longer works 
2f6d0 77 69 74 68 20 6e 75 6d 65 72 69 63 61 6c 20 76  with numerical v
2f6e0 61 6c 75 65 73 2e 20 20 57 65 27 76 65 0a 20 20  alues.  We've.  
2f6f0 20 20 20 20 73 77 69 74 63 68 65 64 20 74 6f 20      switched to 
2f700 61 20 62 69 74 77 69 73 65 20 63 68 61 72 61 63  a bitwise charac
2f710 74 65 72 20 73 74 72 69 6e 67 2e 20 20 59 6f 75  ter string.  You
2f720 20 63 61 6e 20 73 65 74 0a 20 20 20 20 20 20 3a   can set.      :
2f730 3a 74 65 73 74 3a 3a 76 65 72 62 6f 73 65 20 62  :test::verbose b
2f740 79 20 75 73 69 6e 67 20 74 68 65 20 2d 76 65 72  y using the -ver
2f750 62 6f 73 65 20 6f 70 74 69 6f 6e 20 6f 6e 20 74  bose option on t
2f760 68 65 20 54 63 6c 20 63 6f 6d 6d 61 6e 64 0a 20  he Tcl command. 
2f770 20 20 20 20 20 6c 69 6e 65 2e 0a 20 20 20 20 2d       line..    -
2f780 20 47 6c 6f 62 61 6c 20 76 61 72 69 61 62 6c 65   Global variable
2f790 20 54 45 53 54 53 20 69 73 20 6e 6f 77 20 63 61   TESTS is now ca
2f7a0 6c 6c 65 64 20 3a 3a 74 65 73 74 3a 3a 6d 61 74  lled ::test::mat
2f7b0 63 68 69 6e 67 54 65 73 74 73 2c 20 61 6e 64 0a  chingTests, and.
2f7c0 20 20 20 20 20 20 63 61 6e 20 62 65 20 73 65 74        can be set
2f7d0 20 6f 6e 20 74 68 65 20 54 63 6c 20 63 6f 6d 6d   on the Tcl comm
2f7e0 61 6e 64 20 6c 69 6e 65 20 76 69 61 20 74 68 65  and line via the
2f7f0 20 2d 6d 61 74 63 68 20 6f 70 74 69 6f 6e 2e 0a   -match option..
2f800 20 20 20 20 2d 20 54 68 65 72 65 20 69 73 20 6e      - There is n
2f810 6f 77 20 61 20 3a 3a 74 65 73 74 3a 3a 73 6b 69  ow a ::test::ski
2f820 70 54 65 73 74 73 20 76 61 72 69 61 62 6c 65 20  pTests variable 
2f830 28 77 6f 72 6b 73 20 73 69 6d 69 6c 61 72 6c 79  (works similarly
2f840 20 74 6f 0a 20 20 20 20 20 20 3a 3a 74 65 73 74   to.      ::test
2f850 3a 3a 6d 61 74 63 68 54 65 73 74 73 29 20 74 68  ::matchTests) th
2f860 61 74 20 63 61 6e 20 62 65 20 73 65 74 20 6f 6e  at can be set on
2f870 20 74 68 65 20 54 63 6c 20 63 6f 6d 6d 61 6e 64   the Tcl command
2f880 20 6c 69 6e 65 20 76 69 61 0a 20 20 20 20 20 20   line via.      
2f890 74 68 65 20 2d 6d 61 74 63 68 20 6f 70 74 69 6f  the -match optio
2f8a0 6e 2e 0a 20 20 20 20 2d 20 54 68 65 20 74 65 73  n..    - The tes
2f8b0 74 20 73 75 69 74 65 20 63 61 6e 20 6e 6f 77 20  t suite can now 
2f8c0 62 65 20 72 75 6e 20 69 6e 20 61 6e 79 20 77 6f  be run in any wo
2f8d0 72 6b 69 6e 67 20 64 69 72 65 63 74 6f 72 79 2e  rking directory.
2f8e0 20 20 57 68 65 6e 0a 20 20 20 20 20 20 79 6f 75    When.      you
2f8f0 20 72 75 6e 20 22 6d 61 6b 65 20 74 65 73 74 22   run "make test"
2f900 2c 20 74 68 65 20 77 6f 72 6b 69 6e 67 20 64 69  , the working di
2f910 72 65 63 74 6f 72 79 20 69 73 20 6e 6f 6c 6f 6e  rectory is nolon
2f920 67 65 72 20 73 77 69 74 63 68 65 64 0a 20 20 20  ger switched.   
2f930 20 20 20 74 6f 20 2e 2e 2f 74 65 73 74 73 2e 0a     to ../tests..
2f940 28 68 69 72 73 63 68 6c 29 0a 2a 2a 2a 20 50 4f  (hirschl).*** PO
2f950 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54  TENTIAL INCOMPAT
2f960 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 2d 2d 2d  IBILITY ***..---
2f970 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c  ------------ Rel
2f980 65 61 73 65 64 20 38 2e 31 62 32 2c 20 4d 61 72  eased 8.1b2, Mar
2f990 63 68 20 31 36 2c 20 31 39 39 39 20 2d 2d 2d 2d  ch 16, 1999 ----
2f9a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
2f9b0 2d 2d 0a 0a 33 2f 31 38 2f 39 39 20 28 62 75 67  --..3/18/99 (bug
2f9c0 20 66 69 78 29 20 46 69 78 65 64 20 6d 69 73 73   fix) Fixed miss
2f9d0 69 6e 67 2f 69 6e 63 6f 72 72 65 63 74 20 63 68  ing/incorrect ch
2f9e0 61 72 61 63 74 65 72 73 20 69 6e 20 73 68 69 66  aracters in shif
2f9f0 74 2d 6a 69 73 20 74 61 62 6c 65 0a 28 73 74 61  t-jis table.(sta
2fa00 6e 74 6f 6e 29 0a 0a 33 2f 31 38 2f 39 39 20 28  nton)..3/18/99 (
2fa10 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
2fa20 54 68 65 20 67 6c 6f 62 20 63 6f 6d 6d 61 6e 64  The glob command
2fa30 20 69 67 6e 6f 72 65 73 20 74 68 65 0a 46 53 5f   ignores the.FS_
2fa40 43 41 53 45 5f 49 53 5f 50 52 45 53 45 52 56 45  CASE_IS_PRESERVE
2fa50 44 20 62 69 74 20 6f 6e 20 66 69 6c 65 20 73 79  D bit on file sy
2fa60 73 74 65 73 6d 20 61 6e 64 20 61 6c 77 61 79 73  stesm and always
2fa70 20 72 65 74 75 72 6e 73 0a 65 78 61 63 74 6c 79   returns.exactly
2fa80 20 77 68 61 74 20 69 74 20 67 65 74 73 20 66 72   what it gets fr
2fa90 6f 6d 20 74 68 65 20 73 79 73 74 65 6d 2e 20 28  om the system. (
2faa0 73 74 61 6e 74 6f 6e 29 0a 2a 2a 2a 20 50 4f 54  stanton).*** POT
2fab0 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50 41 54 49  ENTIAL INCOMPATI
2fac0 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 33 2f 31 39  BILITY ***..3/19
2fad0 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65  /99 (new feature
2fae0 29 20 41 64 64 65 64 20 73 75 70 70 6f 72 74 20  ) Added support 
2faf0 66 6f 72 20 2d 2d 65 6e 61 62 6c 65 2d 36 34 62  for --enable-64b
2fb00 69 74 2e 20 20 46 6f 72 20 6e 6f 77 2c 0a 74 68  it.  For now,.th
2fb10 69 73 20 69 73 20 6f 6e 6c 79 20 73 75 70 70 6f  is is only suppo
2fb20 72 74 65 64 20 6f 6e 20 53 6f 6c 61 72 69 73 20  rted on Solaris 
2fb30 37 20 36 34 62 69 74 20 28 53 75 6e 4f 53 20 35  7 64bit (SunOS 5
2fb40 2e 37 29 20 75 73 69 6e 67 20 74 68 65 20 53 75  .7) using the Su
2fb50 6e 0a 63 6f 6d 70 69 6c 65 72 2e 20 28 72 65 64  n.compiler. (red
2fb60 6d 61 6e 29 0a 0a 33 2f 32 33 2f 39 39 20 28 62  man)..3/23/99 (b
2fb70 75 67 20 66 69 78 29 20 46 69 78 65 64 20 66 69  ug fix) Fixed fi
2fb80 6c 65 65 76 65 6e 74 73 20 61 6e 64 20 67 65 74  leevents and get
2fb90 73 20 6f 6e 20 57 69 6e 64 6f 77 73 20 63 6f 6e  s on Windows con
2fba0 73 6f 6c 65 73 20 61 6e 64 0a 73 65 72 69 61 6c  soles and.serial
2fbb0 20 64 65 76 69 63 65 73 20 73 6f 20 74 68 61 74   devices so that
2fbc0 20 6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 20 63 68   non-blocking ch
2fbd0 61 6e 6e 65 6c 73 20 64 6f 20 6e 6f 74 20 62 6c  annels do not bl
2fbe0 6f 63 6b 20 6f 6e 20 70 61 72 74 69 61 6c 0a 69  ock on partial.i
2fbf0 6e 70 75 74 20 6c 69 6e 65 73 2e 20 20 28 72 65  nput lines.  (re
2fc00 64 6d 61 6e 29 0a 0a 33 2f 32 33 2f 39 39 20 28  dman)..3/23/99 (
2fc10 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20 61  bug fix) Added a
2fc20 20 6e 65 77 20 54 63 6c 5f 53 65 72 76 69 63 65   new Tcl_Service
2fc30 4d 6f 64 65 48 6f 6f 6b 20 69 6e 74 65 72 66 61  ModeHook interfa
2fc40 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64  ce..This is used
2fc50 20 6f 6e 20 57 69 6e 64 6f 77 73 20 74 6f 20 61   on Windows to a
2fc60 76 6f 69 64 20 74 68 65 20 76 61 72 69 6f 75 73  void the various
2fc70 20 70 72 6f 62 6c 65 6d 73 20 74 68 61 74 20 70   problems that p
2fc80 65 6f 70 6c 65 0a 68 61 76 65 20 62 65 65 6e 20  eople.have been 
2fc90 73 65 65 69 6e 67 20 77 68 65 72 65 20 74 68 65  seeing where the
2fca0 20 73 79 73 74 65 6d 20 68 61 6e 67 73 20 77 68   system hangs wh
2fcb0 65 6e 20 74 63 6c 73 68 20 69 73 20 72 75 6e 6e  en tclsh is runn
2fcc0 69 6e 67 0a 6f 75 74 73 69 64 65 20 6f 66 20 74  ing.outside of t
2fcd0 68 65 20 65 76 65 6e 74 20 6c 6f 6f 70 2e 20 41  he event loop. A
2fce0 73 20 70 61 72 74 20 6f 66 20 74 68 69 73 2c 20  s part of this, 
2fcf0 72 65 6e 61 6d 65 64 0a 54 63 6c 70 41 6c 65 72  renamed.TclpAler
2fd00 74 4e 6f 74 69 66 69 65 72 20 62 61 63 6b 20 74  tNotifier back t
2fd10 6f 20 54 63 6c 5f 41 6c 65 72 74 4e 6f 74 69 66  o Tcl_AlertNotif
2fd20 69 65 72 20 73 69 6e 63 65 20 69 74 20 69 73 20  ier since it is 
2fd30 70 75 62 6c 69 63 2e 0a 28 73 74 61 6e 74 6f 6e  public..(stanton
2fd40 29 0a 0a 33 2f 32 33 2f 39 39 20 28 66 65 61 74  )..3/23/99 (feat
2fd50 75 72 65 20 63 68 61 6e 67 65 29 20 54 65 73 74  ure change) Test
2fd60 20 73 75 69 74 65 20 6e 6f 77 20 75 73 65 73 20   suite now uses 
2fd70 22 74 63 6c 74 65 73 74 22 20 6e 61 6d 65 73 70  "tcltest" namesp
2fd80 61 63 65 20 74 6f 0a 64 65 66 69 6e 65 20 74 68  ace to.define th
2fd90 65 20 74 65 73 74 20 70 72 6f 63 65 64 75 72 65  e test procedure
2fda0 20 61 6e 64 20 6f 74 68 65 72 20 61 75 78 69 6c   and other auxil
2fdb0 69 61 72 79 20 70 72 6f 63 65 64 75 72 65 73 20  iary procedures 
2fdc0 61 73 20 77 65 6c 6c 20 61 73 0a 67 6c 6f 62 61  as well as.globa
2fdd0 6c 20 76 61 72 69 61 62 6c 65 73 2e 20 20 54 68  l variables.  Th
2fde0 65 20 70 72 65 76 69 6f 75 73 6c 79 20 63 68 6f  e previously cho
2fdf0 73 65 6e 20 22 74 65 73 74 22 20 6e 61 6d 65 73  sen "test" names
2fe00 70 61 63 65 20 77 61 73 20 74 68 6f 75 67 68 74  pace was thought
2fe10 0a 74 6f 20 62 65 20 74 6f 6f 20 67 65 6e 65 72  .to be too gener
2fe20 69 63 20 61 6e 64 20 6c 69 6b 65 6c 79 20 74 6f  ic and likely to
2fe30 20 63 72 65 61 74 65 20 63 6f 6e 66 6c 69 74 73   create conflits
2fe40 2e 0a 28 68 69 72 73 63 68 6c 29 0a 2a 2a 2a 20  ..(hirschl).*** 
2fe50 50 4f 54 45 4e 54 49 41 4c 20 49 4e 43 4f 4d 50  POTENTIAL INCOMP
2fe60 41 54 49 42 49 4c 49 54 59 20 2a 2a 2a 0a 0a 33  ATIBILITY ***..3
2fe70 2f 32 34 2f 39 39 20 28 62 75 67 20 66 69 78 29  /24/99 (bug fix)
2fe80 20 4d 61 6b 65 20 73 6f 63 6b 65 74 73 20 74 68   Make sockets th
2fe90 72 65 61 64 20 73 61 66 65 20 6f 6e 20 57 69 6e  read safe on Win
2fea0 64 6f 77 73 2e 0a 28 72 65 64 6d 61 6e 29 0a 0a  dows..(redman)..
2feb0 33 2f 32 34 2f 39 39 20 28 62 75 67 20 66 69 78  3/24/99 (bug fix
2fec0 29 20 46 69 78 20 63 61 73 65 73 20 77 68 65 72  ) Fix cases wher
2fed0 65 20 65 78 70 72 20 77 6f 75 6c 64 20 69 6e 63  e expr would inc
2fee0 6f 72 72 65 63 74 20 72 65 74 75 72 6e 0a 61 20  orrect return.a 
2fef0 66 6c 6f 61 74 69 6e 67 20 70 6f 69 6e 74 20 76  floating point v
2ff00 61 6c 75 65 20 69 6e 73 74 65 61 64 20 6f 66 20  alue instead of 
2ff10 61 6e 20 69 6e 74 65 67 65 72 2e 20 28 73 74 61  an integer. (sta
2ff20 6e 74 6f 6e 29 0a 0a 33 2f 32 35 2f 39 39 20 28  nton)..3/25/99 (
2ff30 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20 41  bug fix) Added A
2ff40 53 43 49 49 20 74 6f 20 62 69 67 35 20 61 6e 64  SCII to big5 and
2ff50 20 67 62 32 33 31 32 20 65 6e 63 6f 64 69 6e 67   gb2312 encoding
2ff60 73 2e 0a 28 73 74 61 6e 74 6f 6e 29 0a 0a 33 2f  s..(stanton)..3/
2ff70 32 35 2f 39 39 20 28 66 65 61 74 75 72 65 20 63  25/99 (feature c
2ff80 68 61 6e 67 65 29 20 43 68 61 6e 67 65 64 20 73  hange) Changed s
2ff90 6f 20 61 6c 69 61 73 65 73 20 61 72 65 20 69 6e  o aliases are in
2ffa0 76 6f 6b 65 64 20 61 74 20 63 75 72 72 65 6e 74  voked at current
2ffb0 0a 73 63 6f 70 65 20 69 6e 20 74 68 65 20 74 61  .scope in the ta
2ffc0 72 67 65 74 20 69 6e 74 65 72 70 72 65 74 65 72  rget interpreter
2ffd0 20 69 6e 73 74 65 61 64 20 6f 66 20 61 74 20 74   instead of at t
2ffe0 68 65 20 67 6c 6f 62 61 6c 20 73 63 6f 70 65 2e  he global scope.
2fff0 20 20 54 68 69 73 0a 77 61 73 20 61 6e 20 69 6e    This.was an in
30000 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 69 6e  compatibility in
30010 74 72 6f 64 75 63 65 64 20 69 6e 20 38 2e 31 20  troduced in 8.1 
30020 74 68 61 74 20 69 73 20 62 65 69 6e 67 20 72 65  that is being re
30030 6d 6f 76 65 64 2e 0a 28 73 74 61 6e 74 6f 6e 29  moved..(stanton)
30040 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
30050 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 77  NCOMPATIBILITY w
30060 69 74 68 20 70 72 65 76 69 6f 75 73 20 62 65 74  ith previous bet
30070 61 20 72 65 6c 65 61 73 65 73 20 2a 2a 2a 0a 0a  a releases ***..
30080 33 2f 32 36 2f 39 39 20 28 66 65 61 74 75 72 65  3/26/99 (feature
30090 20 63 68 61 6e 67 65 29 20 2d 2d 65 6e 61 62 6c   change) --enabl
300a0 65 2d 73 68 61 72 65 64 20 69 73 20 6e 6f 77 20  e-shared is now 
300b0 74 68 65 20 64 65 66 61 75 6c 74 20 61 6e 64 20  the default and 
300c0 62 75 69 6c 64 0a 54 63 6c 20 61 73 20 61 20 73  build.Tcl as a s
300d0 68 61 72 65 64 20 6c 69 62 72 61 72 79 3b 20 73  hared library; s
300e0 70 65 63 69 66 79 20 2d 2d 64 69 73 61 62 6c 65  pecify --disable
300f0 2d 73 68 61 72 65 64 20 74 6f 20 62 75 69 6c 64  -shared to build
30100 20 61 20 73 74 61 74 69 63 20 54 63 6c 0a 6c 69   a static Tcl.li
30110 62 72 61 72 79 20 61 6e 64 20 73 68 65 6c 6c 2e  brary and shell.
30120 0a 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49  .*** POTENTIAL I
30130 4e 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a  NCOMPATIBILITY *
30140 2a 2a 0a 0a 33 2f 32 39 2f 39 39 20 28 62 75 67  **..3/29/99 (bug
30150 20 66 69 78 29 20 20 52 65 6d 6f 76 65 64 20 74   fix)  Removed t
30160 68 65 20 73 74 75 62 20 66 75 6e 63 74 69 6f 6e  he stub function
30170 73 20 61 6e 64 20 63 68 61 6e 67 65 64 20 74 68  s and changed th
30180 65 20 73 74 75 62 0a 6d 61 63 72 6f 73 20 74 6f  e stub.macros to
30190 20 6a 75 73 74 20 75 73 65 20 74 68 65 20 6e 61   just use the na
301a0 6d 65 20 77 69 74 68 6f 75 74 20 70 61 72 61 6d  me without param
301b0 73 2e 20 50 61 73 73 20 26 74 63 6c 53 74 75 62  s. Pass &tclStub
301c0 73 20 69 6e 74 6f 20 74 68 65 0a 69 6e 74 65 72  s into the.inter
301d0 70 20 28 64 6f 6e 27 74 20 75 73 65 20 74 63 6c  p (don't use tcl
301e0 53 74 75 62 73 50 74 72 20 62 65 63 61 75 73 65  StubsPtr because
301f0 20 6f 66 20 63 6f 6c 6c 69 73 69 6f 6e 73 20 77   of collisions w
30200 69 74 68 20 74 68 65 20 73 74 75 62 73 20 6f 6e  ith the stubs on
30210 0a 53 6f 6c 61 72 69 73 29 2e 20 28 72 65 64 6d  .Solaris). (redm
30220 61 6e 29 0a 0a 33 2f 33 30 2f 39 39 20 28 62 75  an)..3/30/99 (bu
30230 67 20 66 69 78 29 20 4c 6f 61 64 61 62 6c 65 20  g fix) Loadable 
30240 6d 6f 64 75 6c 65 73 20 61 72 65 20 6e 6f 77 20  modules are now 
30250 75 6e 6c 6f 61 64 65 64 20 61 74 20 74 68 65 20  unloaded at the 
30260 6c 61 73 74 0a 70 6f 73 73 69 62 6c 65 20 6d 6f  last.possible mo
30270 6d 65 6e 74 20 64 75 72 69 6e 67 20 54 63 6c 5f  ment during Tcl_
30280 46 69 6e 61 6c 69 7a 65 20 74 6f 20 66 69 78 20  Finalize to fix 
30290 76 61 72 69 6f 75 73 20 65 78 69 74 2d 74 69 6d  various exit-tim
302a0 65 20 63 72 61 73 68 65 73 2e 0a 28 77 65 6c 63  e crashes..(welc
302b0 68 29 0a 0a 33 2f 33 30 2f 39 39 20 28 62 75 67  h)..3/30/99 (bug
302c0 20 66 69 78 29 20 54 63 6c 20 6e 6f 20 6c 6f 6e   fix) Tcl no lon
302d0 67 65 72 20 63 61 6c 6c 73 20 73 65 74 6c 6f 63  ger calls setloc
302e0 61 6c 65 28 29 2e 20 20 49 74 20 6c 6f 6f 6b 73  ale().  It looks
302f0 20 61 74 0a 65 6e 76 28 4c 41 4e 47 29 20 61 6e   at.env(LANG) an
30300 64 20 65 6e 76 28 4c 43 5f 54 59 50 45 29 20 69  d env(LC_TYPE) i
30310 6e 73 74 65 61 64 2e 20 20 28 73 74 61 6e 74 6f  nstead.  (stanto
30320 6e 29 0a 0a 34 2f 31 2f 39 39 20 28 62 75 67 20  n)..4/1/99 (bug 
30330 66 69 78 29 20 46 69 78 65 64 20 74 68 65 20 55  fix) Fixed the U
30340 6c 74 72 69 78 20 6d 75 6c 74 69 70 6c 65 20 73  ltrix multiple s
30350 79 6d 62 6f 6c 20 64 65 66 69 6e 69 74 69 6f 6e  ymbol definition
30360 20 70 72 6f 62 6c 65 6d 2e 0a 4e 6f 77 2c 20 65   problem..Now, e
30370 76 65 6e 20 54 63 6c 20 69 6e 63 6c 75 64 65 73  ven Tcl includes
30380 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 54   a copy of the T
30390 63 6c 20 73 74 75 62 20 6c 69 62 72 61 72 79 2e  cl stub library.
303a0 20 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 31 2f 39   (redman)..4/1/9
303b0 39 20 28 62 75 67 20 66 69 78 29 20 49 6e 74 65  9 (bug fix) Inte
303c0 72 6e 61 74 69 6f 6e 61 6c 69 7a 65 64 20 74 68  rnationalized th
303d0 65 20 72 65 67 69 73 74 72 79 20 70 61 63 6b 61  e registry packa
303e0 67 65 2e 0a 0a 34 2f 31 2f 39 39 20 28 62 75 67  ge...4/1/99 (bug
303f0 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 74 68   fix) Changed th
30400 65 20 69 6d 70 6c 65 6d 65 6e 61 74 69 6f 6e 20  e implemenation 
30410 6f 66 20 54 63 6c 5f 43 6f 6e 64 69 74 69 6f 6e  of Tcl_Condition
30420 57 61 69 74 20 61 6e 64 0a 54 63 6c 5f 43 6f 6e  Wait and.Tcl_Con
30430 64 69 74 69 6f 6e 4e 6f 74 69 66 79 20 6f 6e 20  ditionNotify on 
30440 57 69 6e 64 6f 77 73 2e 20 20 54 68 65 20 6e 65  Windows.  The ne
30450 77 20 61 6c 67 6f 72 69 74 68 6d 20 65 6c 69 6d  w algorithm elim
30460 69 6e 61 74 65 73 20 61 20 72 61 63 65 0a 63 6f  inates a race.co
30470 6e 64 69 74 69 6f 6e 20 61 6e 64 20 77 61 73 20  ndition and was 
30480 73 75 67 67 65 73 74 65 64 20 62 79 20 4a 69 6d  suggested by Jim
30490 20 44 61 76 69 64 73 6f 6e 2e 20 28 77 65 6c 63   Davidson. (welc
304a0 68 29 0a 0a 34 2f 32 2f 39 39 20 28 6e 65 77 20  h)..4/2/99 (new 
304b0 61 70 69 73 29 20 20 4d 61 64 65 20 76 61 72 69  apis)  Made vari
304c0 6f 75 73 20 55 6e 69 63 6f 64 65 20 75 74 69 6c  ous Unicode util
304d0 69 74 79 20 66 75 6e 63 74 69 6f 6e 73 20 70 75  ity functions pu
304e0 62 6c 69 63 2e 0a 54 63 6c 5f 55 74 66 54 6f 55  blic..Tcl_UtfToU
304f0 6e 69 43 68 61 72 44 53 74 72 69 6e 67 2c 20 54  niCharDString, T
30500 63 6c 5f 55 6e 69 43 68 61 72 54 6f 55 74 66 44  cl_UniCharToUtfD
30510 53 74 72 69 6e 67 2c 20 54 63 6c 5f 55 6e 69 43  String, Tcl_UniC
30520 68 61 72 4c 65 6e 2c 0a 54 63 6c 5f 55 6e 69 43  harLen,.Tcl_UniC
30530 68 61 72 4e 63 6d 70 2c 20 54 63 6c 5f 55 6e 69  harNcmp, Tcl_Uni
30540 43 68 61 72 49 73 41 6c 6e 75 6d 2c 20 54 63 6c  CharIsAlnum, Tcl
30550 5f 55 6e 69 43 68 61 72 49 73 41 6c 70 68 61 2c  _UniCharIsAlpha,
30560 0a 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 44 69  .Tcl_UniCharIsDi
30570 67 69 74 2c 20 54 63 6c 5f 55 6e 69 43 68 61 72  git, Tcl_UniChar
30580 49 73 4c 6f 77 65 72 2c 20 54 63 6c 5f 55 6e 69  IsLower, Tcl_Uni
30590 43 68 61 72 49 73 53 70 61 63 65 2c 0a 54 63 6c  CharIsSpace,.Tcl
305a0 5f 55 6e 69 43 68 61 72 49 73 55 70 70 65 72 2c  _UniCharIsUpper,
305b0 20 54 63 6c 5f 55 6e 69 43 68 61 72 49 73 57 6f   Tcl_UniCharIsWo
305c0 72 64 43 68 61 72 2c 20 54 63 6c 5f 57 69 6e 55  rdChar, Tcl_WinU
305d0 74 66 54 6f 54 43 68 61 72 2c 0a 54 63 6c 5f 57  tfToTChar,.Tcl_W
305e0 69 6e 54 43 68 61 72 54 6f 55 74 66 20 28 73 74  inTCharToUtf (st
305f0 61 6e 74 6f 6e 29 0a 0a 34 2f 32 2f 39 39 20 28  anton)..4/2/99 (
30600 66 65 61 74 75 72 65 20 63 68 61 6e 67 65 29 20  feature change) 
30610 41 64 64 20 6e 65 77 20 44 44 45 20 70 61 63 6b  Add new DDE pack
30620 61 67 65 20 61 6e 64 20 72 65 6d 6f 76 65 64 20  age and removed 
30630 74 68 65 20 54 6b 0a 73 65 6e 64 20 63 6f 6d 6d  the Tk.send comm
30640 61 6e 64 20 66 72 6f 6d 20 74 68 65 20 57 69 6e  and from the Win
30650 64 6f 77 73 20 76 65 72 73 69 6f 6e 2e 20 20 43  dows version.  C
30660 68 61 6e 67 65 64 20 44 44 45 2d 62 61 73 65 64  hanged DDE-based
30670 20 73 65 6e 64 0a 63 6f 64 65 20 69 6e 74 6f 20   send.code into 
30680 22 64 64 65 20 65 76 61 6c 22 20 63 6f 6d 6d 61  "dde eval" comma
30690 6e 64 2e 20 20 54 68 65 20 44 44 45 20 70 61 63  nd.  The DDE pac
306a0 6b 61 67 65 20 63 61 6e 20 62 65 20 6c 6f 61 64  kage can be load
306b0 65 64 0a 69 6e 74 6f 20 74 63 6c 73 68 2c 20 6e  ed.into tclsh, n
306c0 6f 74 20 6a 75 73 74 20 77 69 73 68 2e 20 20 57  ot just wish.  W
306d0 69 6e 64 6f 77 73 20 6f 6e 6c 79 2e 20 28 72 65  indows only. (re
306e0 64 6d 61 6e 29 0a 0a 34 2f 35 2f 39 39 20 28 62  dman)..4/5/99 (b
306f0 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20  ug fix) Changed 
30700 73 61 66 65 2d 74 63 6c 20 73 6f 20 74 68 61 74  safe-tcl so that
30710 20 74 68 65 20 65 6e 63 6f 64 69 6e 67 20 63 6f   the encoding co
30720 6d 6d 61 6e 64 0a 69 73 20 61 6e 20 61 6c 69 61  mmand.is an alia
30730 73 20 74 68 61 74 20 6d 61 73 6b 73 20 6f 75 74  s that masks out
30740 20 74 68 65 20 22 65 6e 63 6f 64 69 6e 67 20 73   the "encoding s
30750 79 73 74 65 6d 22 20 73 75 62 63 6f 6d 6d 61 6e  ystem" subcomman
30760 64 2e 0a 28 72 65 64 6d 61 6e 29 0a 0a 34 2f 35  d..(redman)..4/5
30770 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 43 6f  /99 (bug fix) Co
30780 6e 66 69 67 75 72 65 20 70 61 74 63 68 65 73 20  nfigure patches 
30790 74 6f 20 69 6d 70 72 6f 76 65 20 73 75 70 70 6f  to improve suppo
307a0 72 74 20 66 6f 72 0a 4f 53 2f 33 39 30 20 61 6e  rt for.OS/390 an
307b0 64 20 42 53 44 2f 4f 53 20 34 2e 2a 2e 20 28 73  d BSD/OS 4.*. (s
307c0 74 61 6e 74 6f 6e 29 0a 0a 34 2f 35 2f 39 39 20  tanton)..4/5/99 
307d0 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
307e0 63 72 61 73 68 20 69 6e 20 74 68 65 20 63 6c 6f  crash in the clo
307f0 63 6b 20 63 6f 6d 6d 61 6e 64 20 74 68 61 74 20  ck command that 
30800 6f 63 63 75 72 72 65 64 0a 77 69 74 68 20 6e 65  occurred.with ne
30810 67 61 74 69 76 65 20 74 69 6d 65 20 76 61 6c 75  gative time valu
30820 65 73 20 69 6e 20 74 69 6d 65 7a 6f 6e 65 73 20  es in timezones 
30830 65 61 73 74 20 6f 66 20 47 4d 54 2e 20 28 73 74  east of GMT. (st
30840 61 6e 74 6f 6e 29 0a 0a 34 2f 36 2f 39 39 20 28  anton)..4/6/99 (
30850 62 75 67 20 66 69 78 29 20 4d 6f 76 65 64 20 74  bug fix) Moved t
30860 68 65 20 22 61 72 72 61 79 20 73 65 74 22 20 43  he "array set" C
30870 20 6c 65 76 65 6c 20 63 6f 64 65 20 69 6e 74 6f   level code into
30880 20 61 20 63 6f 6d 6d 6f 6e 0a 72 6f 75 74 69 6e   a common.routin
30890 65 20 28 54 63 6c 41 72 72 61 79 53 65 74 29 2e  e (TclArraySet).
308a0 20 20 54 68 65 20 54 63 6c 53 65 74 75 70 45 6e    The TclSetupEn
308b0 76 20 72 6f 75 74 69 6e 65 20 6e 6f 77 20 75 73  v routine now us
308c0 65 73 20 74 68 69 73 20 41 50 49 20 74 6f 0a 63  es this API to.c
308d0 72 65 61 74 65 20 61 6e 20 65 6e 76 20 61 72 72  reate an env arr
308e0 61 79 20 77 2f 20 6e 6f 20 65 6c 65 6d 65 6e 74  ay w/ no element
308f0 73 2e 20 20 54 68 69 73 20 66 69 78 65 73 20 74  s.  This fixes t
30900 68 65 20 62 75 67 20 63 61 75 73 65 64 20 77 68  he bug caused wh
30910 65 6e 0a 65 76 65 72 79 20 65 6e 76 69 72 6f 6e  en.every environ
30920 20 76 61 72 61 69 62 6c 65 20 69 73 20 72 65 6d   varaible is rem
30930 6f 76 65 64 2c 20 61 6e 64 20 74 68 65 20 54 63  oved, and the Tc
30940 6c 20 65 6e 76 20 76 61 72 69 61 62 6c 65 20 69  l env variable i
30950 73 0a 73 79 6e 63 68 65 64 2e 20 20 49 66 20 6e  s.synched.  If n
30960 6f 20 65 6e 76 69 72 6f 6e 20 76 61 72 73 20 65  o environ vars e
30970 78 69 73 74 65 64 2c 20 74 68 65 20 54 63 6c 20  xisted, the Tcl 
30980 65 6e 76 20 76 61 72 20 77 6f 75 6c 64 20 6e 65  env var would ne
30990 76 65 72 20 62 65 0a 63 72 65 61 74 65 64 2e 20  ver be.created. 
309a0 28 73 75 72 6c 65 73 29 0a 0a 34 2f 36 2f 39 39  (surles)..4/6/99
309b0 20 28 62 75 67 20 66 69 78 29 20 4d 61 64 65 20   (bug fix) Made 
309c0 74 68 65 20 45 6e 76 20 6d 6f 64 75 6c 65 20 49  the Env module I
309d0 31 38 4e 20 63 6f 6d 70 6c 69 61 6e 74 2e 20 28  18N compliant. (
309e0 73 75 72 6c 65 73 29 0a 0a 34 2f 36 2f 39 39 20  surles)..4/6/99 
309f0 28 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65  (bug fix) Change
30a00 64 20 74 68 65 20 46 69 6e 64 56 61 72 69 61 62  d the FindVariab
30a10 6c 65 20 72 6f 75 74 69 6e 65 20 74 6f 20 54 63  le routine to Tc
30a20 6c 70 46 69 6e 64 56 61 72 69 61 62 6c 65 2c 0a  lpFindVariable,.
30a30 74 68 61 74 20 6e 6f 77 20 64 6f 65 73 20 61 20  that now does a 
30a40 63 61 73 65 20 69 6e 73 65 6e 73 69 74 69 76 65  case insensitive
30a50 20 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 69 73   string comparis
30a60 6f 6e 20 6f 6e 20 57 69 6e 64 6f 77 73 2c 20 61  on on Windows, a
30a70 6e 64 20 6e 6f 74 0a 6f 6e 20 55 4e 49 58 2e 20  nd not.on UNIX. 
30a80 28 73 75 72 6c 65 73 29 0a 0a 2d 2d 2d 2d 2d 2d  (surles)..------
30a90 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73  --------- Releas
30aa0 65 64 20 38 2e 31 62 33 2c 20 41 70 72 69 6c 20  ed 8.1b3, April 
30ab0 36 2c 20 31 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d  6, 1999 --------
30ac0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a  --------------..
30ad0 34 2f 39 2f 39 39 20 28 62 75 67 20 66 69 78 29  4/9/99 (bug fix)
30ae0 20 20 46 69 78 65 64 20 6e 6f 74 69 66 69 65 72    Fixed notifier
30af0 20 64 65 61 64 6c 6f 63 6b 20 73 69 74 75 61 74   deadlock situat
30b00 69 6f 6e 20 77 68 65 6e 20 74 68 65 20 70 69 70  ion when the pip
30b10 65 20 75 73 65 64 0a 74 6f 20 74 61 6c 6b 20 62  e used.to talk b
30b20 61 63 6b 20 6e 6f 74 69 66 69 65 72 20 74 68 72  ack notifier thr
30b30 65 61 64 20 69 73 20 66 69 6c 6c 65 64 20 77 69  ead is filled wi
30b40 74 68 20 64 61 74 61 2e 20 20 46 6f 75 6e 64 20  th data.  Found 
30b50 61 73 20 61 20 72 65 73 75 6c 74 20 6f 66 20 74  as a result of t
30b60 68 65 0a 66 6f 63 75 73 2e 74 65 73 74 20 66 6f  he.focus.test fo
30b70 72 20 54 6b 20 68 61 6e 67 69 6e 67 2e 20 28 72  r Tk hanging. (r
30b80 65 64 6d 61 6e 29 0a 0a 34 2f 31 33 2f 39 39 20  edman)..4/13/99 
30b90 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64 20  (bug fix) Fixed 
30ba0 62 75 67 20 77 68 65 72 65 20 73 6f 63 6b 65 74  bug where socket
30bb0 20 2d 61 73 79 6e 63 20 63 6f 6d 62 69 6e 65 64   -async combined
30bc0 20 77 69 74 68 0a 66 69 6c 65 65 76 65 6e 74 20   with.fileevent 
30bd0 66 6f 72 20 77 72 69 74 69 6e 67 20 64 69 64 20  for writing did 
30be0 6e 6f 74 20 77 6f 72 6b 20 75 6e 64 65 72 20 57  not work under W
30bf0 69 6e 64 6f 77 73 20 4e 54 2e 20 28 72 65 64 6d  indows NT. (redm
30c00 61 6e 29 0a 0a 34 2f 31 33 2f 39 39 20 28 65 6e  an)..4/13/99 (en
30c10 63 6f 64 69 6e 67 20 66 69 78 29 20 52 65 73 74  coding fix) Rest
30c20 6f 72 65 64 20 74 68 65 20 64 6f 75 62 6c 65 20  ored the double 
30c30 62 79 74 65 20 64 65 66 69 6e 69 74 69 6f 6e 20  byte definition 
30c40 6f 66 20 47 42 32 33 31 32 0a 61 6e 64 20 61 64  of GB2312.and ad
30c50 64 65 64 20 74 68 65 20 45 55 43 2d 43 4e 20 65  ded the EUC-CN e
30c60 6e 63 6f 64 69 6e 67 2e 20 20 45 55 43 2d 43 4e  ncoding.  EUC-CN
30c70 20 69 73 20 61 20 76 61 72 69 61 6e 74 20 6f 66   is a variant of
30c80 20 47 42 32 33 31 32 20 74 68 61 74 0a 73 68 69   GB2312 that.shi
30c90 66 74 73 20 74 68 65 20 63 68 61 72 61 63 74 65  fts the characte
30ca0 72 73 20 69 6e 74 6f 20 62 79 74 65 73 20 77 69  rs into bytes wi
30cb0 74 68 20 74 68 65 20 68 69 67 68 20 62 69 74 20  th the high bit 
30cc0 73 65 74 20 61 6e 64 20 69 6e 63 6c 75 64 65 73  set and includes
30cd0 0a 41 53 43 49 49 20 61 73 20 61 20 73 75 62 73  .ASCII as a subs
30ce0 65 74 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34  et. (stanton)..4
30cf0 2f 32 37 2f 39 39 20 28 62 75 67 20 66 69 78 29  /27/99 (bug fix)
30d00 20 41 64 64 65 64 20 27 65 78 74 65 72 6e 20 22   Added 'extern "
30d10 43 22 20 7b 7d 27 20 62 6c 6f 63 6b 20 61 72 6f  C" {}' block aro
30d20 75 6e 64 20 74 68 65 20 73 74 75 62 20 74 61 62  und the stub tab
30d30 6c 65 0a 70 6f 69 6e 74 65 72 20 64 65 63 6c 61  le.pointer decla
30d40 72 61 74 69 6f 6e 20 73 6f 20 74 68 65 20 73 74  ration so the st
30d50 75 62 20 6c 69 62 72 61 72 79 20 63 61 6e 20 62  ub library can b
30d60 65 20 75 73 65 64 20 66 72 6f 6d 20 43 2b 2b 2e  e used from C++.
30d70 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 2d 2d 2d 2d   (stanton)..----
30d80 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65  ----------- Rele
30d90 61 73 65 64 20 38 2e 31 20 66 69 6e 61 6c 2c 20  ased 8.1 final, 
30da0 41 70 72 69 6c 20 32 39 2c 20 31 39 39 39 20 2d  April 29, 1999 -
30db0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
30dc0 2d 2d 2d 2d 2d 0a 0a 34 2f 32 32 2f 39 39 20 28  -----..4/22/99 (
30dd0 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
30de0 20 57 69 6e 64 6f 77 73 20 4e 54 20 73 6f 63 6b   Windows NT sock
30df0 65 74 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  et implementatio
30e00 6e 20 74 6f 20 61 76 6f 69 64 0a 63 72 65 61 74  n to avoid.creat
30e10 69 6e 67 20 61 20 63 6f 6d 6d 75 6e 69 63 61 74  ing a communicat
30e20 69 6f 6e 20 77 69 6e 64 6f 77 2e 20 20 54 68 69  ion window.  Thi
30e30 73 20 61 76 6f 69 64 73 20 74 68 65 20 70 72 6f  s avoids the pro
30e40 62 6c 65 6d 20 77 68 65 72 65 20 74 68 65 0a 73  blem where the.s
30e50 79 73 74 65 6d 20 68 61 6e 67 73 20 77 61 69 74  ystem hangs wait
30e60 69 6e 67 20 66 6f 72 20 74 63 6c 73 68 20 74 6f  ing for tclsh to
30e70 20 72 65 73 70 6f 6e 64 20 74 6f 20 61 20 73 79   respond to a sy
30e80 73 74 65 6d 2d 77 69 64 65 20 73 79 6e 63 68 72  stem-wide synchr
30e90 6f 6e 6f 75 73 0a 62 72 6f 61 64 63 61 73 74 20  onous.broadcast 
30ea0 28 65 2e 67 2e 20 69 66 20 79 6f 75 20 63 68 61  (e.g. if you cha
30eb0 6e 67 65 20 73 79 73 74 65 6d 20 63 6f 6c 6f 72  nge system color
30ec0 73 29 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 34 2f  s). (redman)..4/
30ed0 32 32 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  22/99 (bug fix) 
30ee0 41 64 64 65 64 20 63 61 6c 6c 20 74 6f 20 54 63  Added call to Tc
30ef0 6c 57 69 6e 49 6e 69 74 20 66 72 6f 6d 20 54 63  lWinInit from Tc
30f00 6c 70 49 6e 69 74 50 6c 61 74 66 6f 72 6d 20 77  lpInitPlatform w
30f10 68 65 6e 0a 62 75 69 6c 64 69 6e 67 20 61 20 73  hen.building a s
30f20 74 61 74 69 63 20 6c 69 62 72 61 72 79 20 73 69  tatic library si
30f30 6e 63 65 20 44 6c 6c 4d 61 69 6e 20 77 69 6c 6c  nce DllMain will
30f40 20 6e 6f 74 20 62 65 20 69 6e 76 6f 6b 65 64 2e   not be invoked.
30f50 20 20 54 68 69 73 0a 63 6f 75 6c 64 20 62 72 65    This.could bre
30f60 61 6b 20 6f 6c 64 20 63 6f 64 65 20 74 68 61 74  ak old code that
30f70 20 65 78 70 6c 69 63 69 74 6c 79 20 63 61 6c 6c   explicitly call
30f80 65 64 20 54 63 6c 57 69 6e 49 6e 69 74 2c 20 62  ed TclWinInit, b
30f90 75 74 20 73 68 6f 75 6c 64 20 62 65 0a 73 69 6d  ut should be.sim
30fa0 70 6c 65 72 20 69 6e 20 74 68 65 20 6c 6f 6e 67  pler in the long
30fb0 20 72 75 6e 2e 20 28 73 74 61 6e 74 6f 6e 29 0a   run. (stanton).
30fc0 2a 2a 2a 20 50 4f 54 45 4e 54 49 41 4c 20 49 4e  *** POTENTIAL IN
30fd0 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 20 2a 2a  COMPATIBILITY **
30fe0 2a 0a 0a 34 2f 32 33 2f 39 39 20 28 62 75 67 20  *..4/23/99 (bug 
30ff0 66 69 78 29 20 41 64 64 65 64 20 73 75 70 70 6f  fix) Added suppo
31000 72 74 20 66 6f 72 20 74 68 65 20 6b 6f 69 38 2d  rt for the koi8-
31010 72 20 43 79 72 69 6c 6c 69 63 0a 65 6e 63 6f 64  r Cyrillic.encod
31020 69 6e 67 2e 20 5b 42 75 67 3a 20 31 37 37 31 5d  ing. [Bug: 1771]
31030 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 34 2f 32 38   (stanton)..4/28
31040 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 43 68  /99 (bug fix) Ch
31050 61 6e 67 65 64 20 69 6e 74 65 72 6e 61 6c 20 54  anged internal T
31060 63 6c 5f 4f 62 6a 20 75 73 61 67 65 20 74 6f 20  cl_Obj usage to 
31070 61 76 6f 69 64 20 66 72 65 65 69 6e 67 20 74 68  avoid freeing th
31080 65 0a 69 6e 74 65 72 6e 61 6c 20 72 65 70 72 65  e.internal repre
31090 73 65 6e 74 61 74 69 6f 6e 20 61 66 74 65 72 20  sentation after 
310a0 74 68 65 20 73 74 72 69 6e 67 20 72 65 70 72 65  the string repre
310b0 73 65 6e 74 61 74 69 6f 6e 20 68 61 73 20 62 65  sentation has be
310c0 65 6e 0a 66 72 65 65 64 2e 20 20 54 68 69 73 20  en.freed.  This 
310d0 6d 61 6b 65 73 20 69 74 20 65 61 73 69 65 72 20  makes it easier 
310e0 74 6f 20 64 65 62 75 67 20 65 78 74 65 6e 73 69  to debug extensi
310f0 6f 6e 73 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ons. (stanton)..
31100 34 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  4/30/99 (bug fix
31110 29 20 46 69 78 65 64 20 61 20 6d 65 6d 6f 72 79  ) Fixed a memory
31120 20 6c 65 61 6b 20 69 6e 20 43 6f 6d 6d 61 6e 64   leak in Command
31130 43 6f 6d 70 6c 65 74 65 2e 20 28 73 74 61 6e 74  Complete. (stant
31140 6f 6e 29 0a 0a 35 2f 33 2f 39 39 20 28 62 75 67  on)..5/3/99 (bug
31150 20 66 69 78 29 20 46 69 78 65 64 20 61 20 62 75   fix) Fixed a bu
31160 67 20 77 68 65 72 65 20 74 68 65 20 54 63 6c 5f  g where the Tcl_
31170 4f 62 6a 54 79 70 65 20 77 61 73 20 6e 6f 74 20  ObjType was not 
31180 62 65 69 6e 67 20 73 65 74 0a 69 6e 20 61 20 64  being set.in a d
31190 75 70 6c 69 63 61 74 65 64 20 54 63 6c 5f 4f 62  uplicated Tcl_Ob
311a0 6a 2e 20 5b 42 75 67 3a 20 31 39 37 35 2c 20 32  j. [Bug: 1975, 2
311b0 30 34 37 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  047] (stanton)..
311c0 35 2f 33 2f 39 39 20 28 62 75 67 20 66 69 78 29  5/3/99 (bug fix)
311d0 20 43 68 61 6e 67 65 64 20 54 63 6c 5f 50 61 72   Changed Tcl_Par
311e0 73 65 43 6f 6d 6d 61 6e 64 20 74 6f 20 61 76 6f  seCommand to avo
311f0 69 64 20 6d 6f 64 69 66 79 69 6e 67 20 65 76 61  id modifying eva
31200 6c 27 65 64 0a 73 74 72 69 6e 67 73 20 74 68 61  l'ed.strings tha
31210 74 20 61 72 65 20 61 6c 72 65 61 64 79 20 6e 75  t are already nu
31220 6c 6c 20 74 65 72 6d 69 6e 61 74 65 64 2e 20 20  ll terminated.  
31230 5b 42 75 67 3a 20 31 37 39 33 5d 20 28 73 74 61  [Bug: 1793] (sta
31240 6e 74 6f 6e 29 0a 0a 35 2f 33 2f 39 39 20 28 6e  nton)..5/3/99 (n
31250 65 77 20 66 65 61 74 75 72 65 29 20 41 70 70 6c  ew feature) Appl
31260 69 65 64 20 4a 65 66 66 20 48 6f 62 62 73 27 73  ied Jeff Hobbs's
31270 20 73 74 72 69 6e 67 20 70 61 74 63 68 20 77 68   string patch wh
31280 69 63 68 20 69 6e 63 6c 75 64 65 73 0a 74 68 65  ich includes.the
31290 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 68 61 6e 67   following chang
312a0 65 73 3a 0a 20 20 20 20 2d 20 61 64 64 65 64 20  es:.    - added 
312b0 6e 65 77 20 73 75 62 63 6f 6d 6d 61 6e 64 73 3a  new subcommands:
312c0 20 65 71 75 61 6c 2c 20 72 65 70 65 61 74 2c 20   equal, repeat, 
312d0 6d 61 70 2c 20 69 73 2c 20 72 65 70 6c 61 63 65  map, is, replace
312e0 20 0a 20 20 20 20 2d 20 61 64 64 65 64 20 2d 6c   .    - added -l
312f0 65 6e 67 74 68 20 6f 70 74 69 6f 6e 20 74 6f 20  ength option to 
31300 22 73 74 72 69 6e 67 20 63 6f 6d 70 61 72 65 7c  "string compare|
31310 65 71 75 61 6c 22 0a 20 20 20 20 2d 20 61 64 64  equal".    - add
31320 65 64 20 2d 6e 6f 63 61 73 65 20 6f 70 74 69 6f  ed -nocase optio
31330 6e 20 74 6f 20 22 73 74 72 69 6e 67 20 63 6f 6d  n to "string com
31340 70 61 72 65 7c 65 71 75 61 6c 7c 6d 61 74 63 68  pare|equal|match
31350 22 0a 20 20 20 20 2d 20 73 74 72 69 6e 67 20 61  ".    - string a
31360 6e 64 20 6c 69 73 74 20 69 6e 64 69 63 65 73 20  nd list indices 
31370 63 61 6e 20 62 65 20 61 6e 20 69 6e 74 65 67 65  can be an intege
31380 72 20 6f 72 20 65 6e 64 3f 2d 69 6e 74 65 67 65  r or end?-intege
31390 72 3f 2e 0a 20 20 20 20 2d 20 61 64 64 65 64 20  r?..    - added 
313a0 6f 70 74 69 6f 6e 61 6c 20 66 69 72 73 74 20 61  optional first a
313b0 6e 64 20 6c 61 73 74 20 69 6e 64 65 78 20 61 72  nd last index ar
313c0 67 73 20 74 6f 20 73 74 72 69 6e 67 20 74 6f 75  gs to string tou
313d0 70 70 65 72 2c 20 65 74 20 61 6c 2e 0a 53 65 65  pper, et al..See
313e0 20 74 68 65 20 73 74 72 69 6e 67 2e 6e 20 6d 61   the string.n ma
313f0 6e 75 61 6c 20 65 6e 74 72 79 20 66 6f 72 20 6d  nual entry for m
31400 6f 72 65 20 64 65 74 61 69 6c 73 20 61 62 6f 75  ore details abou
31410 74 20 74 68 65 20 6e 65 77 20 73 74 72 69 6e 67  t the new string
31420 0a 66 65 61 74 75 72 65 73 2e 20 20 5b 42 75 67  .features.  [Bug
31430 3a 20 31 38 34 35 5d 20 28 73 74 61 6e 74 6f 6e  : 1845] (stanton
31440 29 0a 0a 35 2f 36 2f 39 39 20 28 6e 65 77 20 66  )..5/6/99 (new f
31450 65 61 74 75 72 65 29 20 41 64 64 65 64 20 54 63  eature) Added Tc
31460 6c 5f 55 74 66 4e 63 6d 70 20 61 6e 64 20 54 63  l_UtfNcmp and Tc
31470 6c 5f 55 74 66 4e 63 61 73 65 63 6d 70 20 74 6f  l_UtfNcasecmp to
31480 20 6d 61 6b 65 20 55 74 66 0a 73 74 72 69 6e 67   make Utf.string
31490 20 63 6f 6d 70 61 72 69 73 69 6f 6e 20 65 61 73   comparision eas
314a0 69 65 72 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  ier. (stanton)..
314b0 35 2f 37 2f 39 39 20 28 62 75 67 20 66 69 78 29  5/7/99 (bug fix)
314c0 20 49 6d 70 72 6f 76 65 64 20 4f 53 2f 33 39 30   Improved OS/390
314d0 20 73 75 70 70 6f 72 74 2e 20 5b 42 75 67 3a 20   support. [Bug: 
314e0 31 39 37 36 2c 20 31 39 39 37 5d 20 28 73 74 61  1976, 1997] (sta
314f0 6e 74 6f 6e 29 0a 0a 35 2f 31 32 2f 39 39 20 28  nton)..5/12/99 (
31500 62 75 67 20 66 69 78 29 20 43 68 61 6e 67 65 64  bug fix) Changed
31510 20 57 69 6e 64 6f 77 73 20 69 6e 69 74 69 61 6c   Windows initial
31520 69 7a 61 74 69 6f 6e 20 63 6f 64 65 20 74 6f 20  ization code to 
31530 61 76 6f 69 64 20 75 73 69 6e 67 0a 47 65 74 55  avoid using.GetU
31540 73 65 72 4e 61 6d 65 20 73 79 73 74 65 6d 20 63  serName system c
31550 61 6c 6c 20 69 6e 20 66 61 76 6f 72 20 6f 66 20  all in favor of 
31560 74 68 65 20 65 6e 76 28 55 53 45 52 4e 41 4d 45  the env(USERNAME
31570 29 20 76 61 72 69 61 62 6c 65 2e 20 20 54 68 69  ) variable.  Thi
31580 73 0a 70 72 6f 76 69 64 65 73 20 61 20 73 69 67  s.provides a sig
31590 6e 69 66 69 63 61 6e 74 20 73 74 61 72 74 75 70  nificant startup
315a0 20 73 70 65 65 64 20 69 6d 70 72 6f 76 65 6d 65   speed improveme
315b0 6e 74 2e 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 35  nt. (stanton)..5
315c0 2f 31 32 2f 39 39 20 28 62 75 67 20 66 69 78 29  /12/99 (bug fix)
315d0 20 52 65 70 6c 61 63 65 64 20 74 68 65 20 70 65   Replaced the pe
315e0 72 2d 69 6e 74 65 72 70 72 65 74 65 72 20 72 65  r-interpreter re
315f0 67 65 78 70 20 63 61 63 68 65 20 77 69 74 68 20  gexp cache with 
31600 61 0a 70 65 72 2d 74 68 72 65 61 64 20 63 61 63  a.per-thread cac
31610 68 65 2e 20 20 43 68 61 6e 67 65 64 20 74 68 65  he.  Changed the
31620 20 52 65 67 65 78 70 20 6f 62 6a 65 63 74 20 74   Regexp object t
31630 6f 20 74 61 6b 65 20 61 64 76 61 6e 74 61 67 65  o take advantage
31640 20 6f 66 20 74 68 69 73 0a 65 78 74 72 61 20 63   of this.extra c
31650 61 63 68 65 2e 20 20 41 64 64 65 64 20 61 20 72  ache.  Added a r
31660 65 66 65 72 65 6e 63 65 20 63 6f 75 6e 74 20 74  eference count t
31670 6f 20 74 68 65 20 54 63 6c 52 65 67 65 78 70 20  o the TclRegexp 
31680 74 79 70 65 20 73 6f 20 72 65 67 65 78 70 73 0a  type so regexps.
31690 63 61 6e 20 62 65 20 73 68 61 72 65 64 20 62 79  can be shared by
316a0 20 6d 75 6c 74 69 70 6c 65 20 6f 62 6a 65 63 74   multiple object
316b0 73 2e 20 20 52 65 6d 6f 76 65 64 20 74 68 65 20  s.  Removed the 
316c0 70 65 72 2d 69 6e 74 65 72 70 20 72 65 67 65 78  per-interp regex
316d0 70 20 63 61 63 68 65 0a 66 72 6f 6d 20 74 68 65  p cache.from the
316e0 20 69 6e 74 65 72 70 72 65 74 65 72 2e 20 20 4e   interpreter.  N
316f0 6f 77 20 72 65 67 65 78 70 73 20 63 61 6e 20 62  ow regexps can b
31700 65 20 75 73 65 64 20 77 69 74 68 20 6e 6f 20 6e  e used with no n
31710 65 65 64 20 66 6f 72 20 61 6e 0a 69 6e 74 65 72  eed for an.inter
31720 70 72 65 74 65 72 2e 20 54 68 69 73 20 73 65 74  preter. This set
31730 20 6f 66 20 63 68 61 6e 67 65 73 20 73 68 6f 75   of changes shou
31740 6c 64 20 70 72 6f 76 69 64 65 20 73 69 67 6e 69  ld provide signi
31750 66 69 63 61 6e 74 20 73 70 65 65 64 0a 69 6d 70  ficant speed.imp
31760 72 6f 76 65 6d 65 6e 74 73 20 66 6f 72 20 6d 61  rovements for ma
31770 6e 79 20 54 63 6c 20 73 63 72 69 70 74 73 2e 20  ny Tcl scripts. 
31780 20 5b 42 75 67 3a 20 31 30 36 33 5d 20 28 73 74   [Bug: 1063] (st
31790 61 6e 74 6f 6e 29 0a 0a 35 2f 31 34 2f 39 39 20  anton)..5/14/99 
317a0 28 62 75 67 20 66 69 78 29 20 44 75 72 69 6e 69  (bug fix) Durini
317b0 6e 67 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f  ng initializatio
317c0 6e 20 6f 6e 20 55 6e 69 78 2c 20 54 63 6c 20 6e  n on Unix, Tcl n
317d0 6f 77 20 65 78 74 72 61 63 74 73 20 74 68 65 0a  ow extracts the.
317e0 65 6e 63 6f 64 69 6e 67 20 73 75 62 66 69 65 6c  encoding subfiel
317f0 64 20 66 72 6f 6d 20 74 68 65 20 4c 41 4e 47 2f  d from the LANG/
31800 4c 43 5f 41 4c 4c 20 65 6e 76 69 72 6f 6e 6d 65  LC_ALL environme
31810 6e 74 20 76 61 72 69 61 62 6c 65 73 20 69 6e 20  nt variables in 
31820 63 61 73 65 73 0a 77 68 65 72 65 20 74 68 65 20  cases.where the 
31830 6c 6f 63 61 6c 65 20 69 73 20 6e 6f 74 20 66 6f  locale is not fo
31840 75 6e 64 20 69 6e 20 74 68 65 20 62 75 69 6c 74  und in the built
31850 2d 69 6e 20 6c 6f 63 61 6c 65 20 74 61 62 6c 65  -in locale table
31860 2e 20 20 49 74 20 61 6c 73 6f 0a 61 74 74 65 6d  .  It also.attem
31870 70 74 73 20 74 6f 20 69 6e 69 74 69 61 6c 69 7a  pts to initializ
31880 65 20 74 68 65 20 6c 6f 63 61 6c 65 20 73 75 62  e the locale sub
31890 73 79 73 74 65 6d 20 73 6f 20 58 31 31 20 69 73  system so X11 is
318a0 20 68 61 70 70 79 2e 20 5b 42 75 67 3a 20 31 39   happy. [Bug: 19
318b0 38 39 5d 0a 28 73 74 61 6e 74 6f 6e 29 20 0a 0a  89].(stanton) ..
318c0 35 2f 31 34 2f 39 39 20 28 62 75 67 20 66 69 78  5/14/99 (bug fix
318d0 29 20 41 70 70 6c 69 65 64 20 74 68 65 20 70 61  ) Applied the pa
318e0 74 63 68 20 74 6f 20 66 69 78 20 31 30 30 2d 79  tch to fix 100-y
318f0 65 61 72 20 61 6e 64 20 34 30 30 2d 79 65 61 72  ear and 400-year
31900 0a 62 6f 75 6e 64 61 72 69 65 73 20 69 6e 20 6c  .boundaries in l
31910 65 61 70 20 79 65 61 72 20 63 6f 64 65 2c 20 66  eap year code, f
31920 72 6f 6d 20 49 73 61 61 63 20 48 6f 6c 6c 61 6e  rom Isaac Hollan
31930 64 65 72 2e 20 20 5b 42 75 67 3a 20 32 30 36 36  der.  [Bug: 2066
31940 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 35 2f 31 34  ] (redman)..5/14
31950 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69  /99 (bug fix) Fi
31960 78 65 64 20 61 20 63 72 61 73 68 20 63 61 75 73  xed a crash caus
31970 65 64 20 62 79 20 61 20 66 61 69 6c 75 72 65 20  ed by a failure 
31980 74 6f 20 72 65 73 65 74 20 74 68 65 20 72 65 73  to reset the res
31990 75 6c 74 0a 62 65 66 6f 72 65 20 65 76 61 6c 75  ult.before evalu
319a0 61 74 69 6e 67 20 74 68 65 20 74 65 73 74 20 65  ating the test e
319b0 78 70 72 65 73 73 69 6f 6e 20 69 6e 20 61 6e 20  xpression in an 
319c0 75 6e 63 6f 6d 70 69 6c 65 64 20 66 6f 72 0a 73  uncompiled for.s
319d0 74 61 74 65 6d 65 6e 74 2e 20 28 73 74 61 6e 74  tatement. (stant
319e0 6f 6e 29 0a 0a 35 2f 31 38 2f 39 39 20 28 62 75  on)..5/18/99 (bu
319f0 67 20 66 69 78 29 20 4d 6f 64 69 66 69 65 64 20  g fix) Modified 
31a00 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 63  initialization c
31a10 6f 64 65 20 6f 6e 20 57 69 6e 64 6f 77 73 20 74  ode on Windows t
31a20 6f 20 61 76 6f 69 64 0a 69 6e 68 65 72 65 6e 74  o avoid.inherent
31a30 69 6e 67 20 63 6c 6f 73 65 64 20 6f 72 20 69 6e  ing closed or in
31a40 76 61 6c 69 64 20 63 68 61 6e 6e 65 6c 73 2e 20  valid channels. 
31a50 20 49 66 20 74 68 65 20 73 74 61 6e 64 61 72 64   If the standard
31a60 20 69 6e 70 75 74 20 69 73 0a 61 6e 79 74 68 69   input is.anythi
31a70 6e 67 20 6f 74 68 65 72 20 74 68 61 6e 20 61 20  ng other than a 
31a80 63 6f 6e 73 6f 6c 65 2c 20 66 69 6c 65 2c 20 73  console, file, s
31a90 65 72 69 61 6c 20 70 6f 72 74 2c 20 6f 72 20 70  erial port, or p
31aa0 69 70 65 2c 20 74 68 65 6e 20 77 65 20 66 61 6c  ipe, then we fal
31ab0 6c 0a 62 61 63 6b 20 74 6f 20 74 68 65 20 73 74  l.back to the st
31ac0 61 6e 64 61 72 64 20 54 6b 20 77 69 6e 64 6f 77  andard Tk window
31ad0 20 63 6f 6e 73 6f 6c 65 2e 20 28 73 74 61 6e 74   console. (stant
31ae0 6f 6e 29 0a 0a 35 2f 31 39 2f 39 39 20 28 62 75  on)..5/19/99 (bu
31af0 67 20 66 69 78 29 20 41 64 64 65 64 20 61 6e 20  g fix) Added an 
31b00 65 78 74 65 72 6e 20 22 43 22 20 62 6c 6f 63 6b  extern "C" block
31b10 20 61 72 6f 75 6e 64 20 74 68 65 20 65 6e 74 69   around the enti
31b20 72 65 20 74 63 6c 2e 68 0a 68 65 61 64 65 72 20  re tcl.h.header 
31b30 66 69 6c 65 20 74 6f 20 61 76 6f 69 64 20 43 2b  file to avoid C+
31b40 2b 20 6c 69 6e 6b 61 67 65 20 69 73 73 75 65 73  + linkage issues
31b50 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 35 2f 31 39  . (redman)..5/19
31b60 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65  /99 (new feature
31b70 29 20 41 70 70 6c 69 65 64 20 4a 65 66 66 20 48  ) Applied Jeff H
31b80 6f 62 62 27 73 20 70 61 74 63 68 20 74 6f 20 61  obb's patch to a
31b90 64 64 0a 54 63 6c 5f 53 74 72 69 6e 67 43 61 73  dd.Tcl_StringCas
31ba0 65 4d 61 74 63 68 20 74 6f 20 73 75 70 70 6f 72  eMatch to suppor
31bb0 74 20 63 61 73 65 20 69 6e 73 65 6e 73 69 74 69  t case insensiti
31bc0 76 65 20 67 6c 6f 62 20 73 74 79 6c 65 20 6d 61  ve glob style ma
31bd0 74 63 68 69 6e 67 20 61 6e 64 0a 54 63 6c 5f 55  tching and.Tcl_U
31be0 6e 69 43 68 61 72 49 73 2a 20 63 68 61 72 61 63  niCharIs* charac
31bf0 74 65 72 20 63 6c 61 73 73 69 66 69 63 61 74 69  ter classificati
31c00 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 2e 20 28 73  on functions. (s
31c10 74 61 6e 74 6f 6e 29 0a 0a 35 2f 32 30 2f 39 39  tanton)..5/20/99
31c20 20 28 62 75 67 20 66 69 78 29 20 41 64 64 65 64   (bug fix) Added
31c30 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 63   the directory c
31c40 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 65 78  ontaining the ex
31c50 65 63 75 74 75 62 6c 65 20 61 6e 64 20 74 68 65  ecutuble and the
31c60 0a 2e 2e 2f 6c 69 62 20 64 69 72 65 63 74 6f 72  .../lib director
31c70 79 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68  y relative to th
31c80 61 74 20 74 6f 20 74 68 65 20 61 75 74 6f 5f 70  at to the auto_p
31c90 61 74 68 20 76 61 72 69 61 62 6c 65 2e 20 28 72  ath variable. (r
31ca0 65 64 6d 61 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d  edman)..--------
31cb0 2d 2d 2d 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64  ------- Released
31cc0 20 38 2e 31 2e 31 2c 20 4d 61 79 20 32 35 2c 20   8.1.1, May 25, 
31cd0 31 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  1999 -----------
31ce0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 35 2f 32  -----------..5/2
31cf0 31 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46  1/99 (bug fix) F
31d00 69 78 65 64 20 6c 61 75 6e 63 68 69 6e 67 20 63  ixed launching c
31d10 6f 6d 6d 61 6e 64 2e 63 6f 6d 20 6f 6e 20 57 69  ommand.com on Wi
31d20 6e 39 35 2f 39 38 2c 20 6e 6f 20 6c 6f 6e 67 65  n95/98, no longe
31d30 72 0a 68 61 6e 67 73 2e 20 5b 42 75 67 3a 20 32  r.hangs. [Bug: 2
31d40 31 30 35 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 35  105] (redman)..5
31d50 2f 32 38 2f 39 39 20 28 62 75 67 20 66 69 78 29  /28/99 (bug fix)
31d60 20 46 69 78 65 64 20 62 75 67 20 77 68 65 72 65   Fixed bug where
31d70 20 64 64 65 20 63 61 6c 6c 73 20 77 65 72 65 20   dde calls were 
31d80 62 65 69 6e 67 20 70 61 73 73 65 64 20 61 6e 0a  being passed an.
31d90 69 6e 76 61 6c 69 64 20 64 64 65 20 68 61 6e 64  invalid dde hand
31da0 6c 65 2e 20 5b 42 75 67 3a 20 32 31 32 34 5d 20  le. [Bug: 2124] 
31db0 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 31 2f 39  (stanton)..6/1/9
31dc0 39 20 20 28 62 75 67 20 66 69 78 29 20 53 6d 61  9  (bug fix) Sma
31dd0 6c 6c 20 63 6f 6e 66 69 67 75 72 65 2e 69 6e 20  ll configure.in 
31de0 70 61 74 63 68 65 73 2e 20 5b 42 75 67 3a 20 32  patches. [Bug: 2
31df0 31 32 31 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a  121] (stanton)..
31e00 36 2f 31 2f 39 39 20 20 28 62 75 67 20 66 69 78  6/1/99  (bug fix
31e10 29 20 41 70 70 6c 69 65 64 20 6c 61 74 65 73 74  ) Applied latest
31e20 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73   regular express
31e30 69 6f 6e 20 70 61 74 63 68 65 73 20 74 6f 20 66  ion patches to f
31e40 69 78 20 61 6e 0a 69 6e 66 69 6e 69 74 65 20 6c  ix an.infinite l
31e50 6f 6f 70 20 62 75 67 20 61 6e 64 20 61 64 64 20  oop bug and add 
31e60 73 75 70 70 6f 72 74 20 66 6f 72 20 74 65 73 74  support for test
31e70 69 6e 67 20 77 68 65 74 68 65 72 20 61 20 73 74  ing whether a st
31e80 72 69 6e 67 20 63 6f 75 6c 64 0a 6d 61 74 63 68  ring could.match
31e90 20 77 69 74 68 20 61 64 64 69 74 69 6f 6e 61 6c   with additional
31ea0 20 69 6e 70 75 74 2e 20 5b 42 75 67 3a 20 32 31   input. [Bug: 21
31eb0 31 37 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36  17] (stanton)..6
31ec0 2f 32 2f 39 39 20 20 28 62 75 67 20 66 69 78 29  /2/99  (bug fix)
31ed0 20 46 69 78 65 64 20 69 6e 63 6f 72 72 65 63 74   Fixed incorrect
31ee0 20 63 6f 6d 70 75 74 61 74 69 6f 6e 20 6f 66 20   computation of 
31ef0 72 65 6c 61 74 69 76 65 20 6f 72 64 65 72 69 6e  relative orderin
31f00 67 20 69 6e 0a 55 74 66 20 63 61 73 65 2d 69 6e  g in.Utf case-in
31f10 73 65 6e 73 69 74 69 76 65 20 63 6f 6d 70 61 72  sensitive compar
31f20 69 73 6f 6e 2e 20 5b 42 75 67 3a 20 32 31 33 35  ison. [Bug: 2135
31f30 5d 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 33  ] (stanton)..6/3
31f40 2f 39 39 20 20 28 62 75 67 20 66 69 78 29 20 46  /99  (bug fix) F
31f50 78 69 65 64 20 62 75 67 20 77 68 65 72 65 20 73  xied bug where s
31f60 74 72 69 6e 67 20 65 71 75 61 6c 2f 63 6f 6d 70  tring equal/comp
31f70 61 72 65 20 2d 6e 6f 63 61 73 65 0a 72 65 70 6f  are -nocase.repo
31f80 72 74 65 64 20 77 72 6f 6e 67 20 72 65 73 75 6c  rted wrong resul
31f90 74 20 6f 6e 20 6e 75 6c 6c 20 73 74 72 69 6e 67  t on null string
31fa0 73 2e 20 5b 42 75 67 3a 20 32 31 33 38 5d 20 28  s. [Bug: 2138] (
31fb0 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 34 2f 39 39  stanton)..6/4/99
31fc0 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20    (new feature) 
31fd0 57 69 6e 64 6f 77 73 20 62 75 69 6c 64 20 6e 6f  Windows build no
31fe0 77 20 75 73 65 73 20 43 79 67 77 69 6e 20 74 6f  w uses Cygwin to
31ff0 6f 6c 73 20 70 6c 75 73 20 47 4e 55 0a 6d 61 6b  ols plus GNU.mak
32000 65 20 61 6e 64 20 61 75 74 6f 63 6f 6e 66 20 74  e and autoconf t
32010 6f 20 62 75 69 6c 64 20 73 74 61 74 69 63 2f 64  o build static/d
32020 79 6e 61 6d 69 63 20 61 6e 64 20 64 65 62 75 67  ynamic and debug
32030 2f 6e 6f 64 65 62 75 67 2e 20 28 73 74 61 6e 74  /nodebug. (stant
32040 6f 6e 29 0a 0a 36 2f 37 2f 39 39 20 20 28 6e 65  on)..6/7/99  (ne
32050 77 20 66 65 61 74 75 72 65 29 20 4f 70 74 69 6d  w feature) Optim
32060 69 7a 65 64 20 73 74 72 69 6e 67 20 69 6e 64 65  ized string inde
32070 78 2c 20 6c 65 6e 67 74 68 2c 20 72 61 6e 67 65  x, length, range
32080 2c 20 61 6e 64 0a 61 70 70 65 6e 64 20 63 6f 6d  , and.append com
32090 6d 61 6e 64 73 2e 20 41 64 64 65 64 20 61 20 6e  mands. Added a n
320a0 65 77 20 55 6e 69 63 6f 64 65 20 6f 62 6a 65 63  ew Unicode objec
320b0 74 20 74 79 70 65 2e 20 28 68 65 72 73 68 65 79  t type. (hershey
320c0 29 0a 0a 36 2f 38 2f 39 39 20 20 28 62 75 67 20  )..6/8/99  (bug 
320d0 66 69 78 29 20 52 6f 6c 6c 65 64 20 62 61 63 6b  fix) Rolled back
320e0 20 57 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20   Windows socket 
320f0 64 72 69 76 65 72 20 74 6f 20 38 2e 31 2e 30 0a  driver to 8.1.0.
32100 76 65 72 73 69 6f 6e 2e 20 28 73 74 61 6e 74 6f  version. (stanto
32110 6e 29 0a 0a 36 2f 39 2f 39 39 20 20 28 6e 65 77  n)..6/9/99  (new
32120 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64 20   feature) Added 
32130 54 63 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 4f  Tcl_RegExpMatchO
32140 62 6a 20 61 6e 64 20 54 63 6c 5f 52 65 67 45 78  bj and Tcl_RegEx
32150 70 47 65 74 49 6e 66 6f 0a 74 6f 20 70 75 62 6c  pGetInfo.to publ
32160 69 63 20 54 63 6c 20 41 50 49 2c 20 74 68 65 73  ic Tcl API, thes
32170 65 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20  e functions are 
32180 6e 65 65 64 65 64 20 62 79 20 45 78 70 65 63 74  needed by Expect
32190 2e 20 20 43 68 61 6e 67 65 64 0a 74 6f 6f 6c 73  .  Changed.tools
321a0 2f 67 65 6e 53 74 75 62 73 2e 74 63 6c 20 74 6f  /genStubs.tcl to
321b0 20 61 6c 77 61 79 73 20 77 72 69 74 65 20 6f 75   always write ou
321c0 74 70 75 74 20 69 6e 20 4c 46 20 6d 6f 64 65 2e  tput in LF mode.
321d0 20 28 73 74 61 6e 74 6f 6e 29 0a 0a 36 2f 31 34   (stanton)..6/14
321e0 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72 65  /99 (new feature
321f0 29 20 4d 65 72 67 65 64 20 73 74 72 69 6e 67 20  ) Merged string 
32200 61 6e 64 20 55 6e 69 63 6f 64 65 20 6f 62 6a 65  and Unicode obje
32210 63 74 20 74 79 70 65 73 2e 20 20 41 64 64 65 64  ct types.  Added
32220 0a 6e 65 77 20 70 75 62 6c 69 63 20 54 63 6c 20  .new public Tcl 
32230 41 50 49 20 66 75 6e 63 74 69 6f 6e 73 3a 20 20  API functions:  
32240 54 63 6c 5f 4e 65 77 55 6e 69 63 6f 64 65 4f 62  Tcl_NewUnicodeOb
32250 6a 2c 20 54 63 6c 5f 53 65 74 55 6e 69 63 6f 64  j, Tcl_SetUnicod
32260 65 4f 62 6a 2c 0a 54 63 6c 5f 47 65 74 55 6e 69  eObj,.Tcl_GetUni
32270 63 6f 64 65 2c 20 54 63 6c 5f 47 65 74 55 6e 69  code, Tcl_GetUni
32280 43 68 61 72 2c 20 54 63 6c 5f 47 65 74 43 68 61  Char, Tcl_GetCha
32290 72 4c 65 6e 67 74 68 2c 20 54 63 6c 5f 47 65 74  rLength, Tcl_Get
322a0 52 61 6e 67 65 2c 0a 54 63 6c 5f 41 70 70 65 6e  Range,.Tcl_Appen
322b0 64 55 6e 69 63 6f 64 65 54 6f 4f 62 6a 2e 20 28  dUnicodeToObj. (
322c0 68 65 72 73 68 65 79 29 0a 0a 36 2f 31 36 2f 39  hershey)..6/16/9
322d0 39 20 28 6e 65 77 20 66 65 61 74 75 72 65 29 20  9 (new feature) 
322e0 43 68 61 6e 67 65 64 20 74 6f 20 63 6f 6e 66 6f  Changed to confo
322f0 72 6d 20 74 6f 20 54 45 41 20 73 70 65 63 69 66  rm to TEA specif
32300 69 63 61 74 69 6f 6e 2c 20 61 64 64 65 64 0a 74  ication, added.t
32310 63 6c 2e 6d 34 20 61 6e 64 20 61 63 6c 6f 63 61  cl.m4 and acloca
32320 6c 2e 6d 34 20 6d 61 63 72 6f 20 6c 69 62 72 61  l.m4 macro libra
32330 72 69 65 73 20 66 6f 72 20 63 6f 6e 66 69 67 75  ries for configu
32340 72 65 2e 20 20 28 77 61 72 74 29 0a 0a 36 2f 31  re.  (wart)..6/1
32350 37 2f 39 39 20 28 6e 65 77 20 66 65 61 74 75 72  7/99 (new featur
32360 65 29 20 41 64 64 65 64 20 6e 65 77 20 72 65 67  e) Added new reg
32370 65 78 70 20 69 6e 74 65 72 66 61 63 65 73 3a 20  exp interfaces: 
32380 2d 65 78 70 61 6e 64 65 64 2c 20 2d 6c 69 6e 65  -expanded, -line
32390 2c 0a 2d 6c 69 6e 65 73 74 6f 70 2c 20 61 6e 64  ,.-linestop, and
323a0 20 2d 6c 69 6e 65 61 6e 63 68 6f 72 20 73 77 69   -lineanchor swi
323b0 74 63 68 65 73 2e 20 20 52 65 6e 61 6d 65 64 20  tches.  Renamed 
323c0 54 63 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 4f  Tcl_RegExpMatchO
323d0 62 6a 20 74 6f 0a 54 63 6c 5f 52 65 67 45 78 70  bj to.Tcl_RegExp
323e0 45 78 65 63 4f 62 6a 20 61 6e 64 20 61 64 64 65  ExecObj and adde
323f0 64 20 6e 65 77 20 54 63 6c 5f 52 65 67 45 78 70  d new Tcl_RegExp
32400 4d 61 74 63 68 4f 62 6a 20 74 68 61 74 20 69 73  MatchObj that is
32410 20 65 71 75 69 76 61 6c 65 6e 74 0a 74 6f 20 54   equivalent.to T
32420 63 6c 5f 52 65 67 45 78 70 4d 61 74 63 68 2e 20  cl_RegExpMatch. 
32430 20 41 64 64 65 64 20 70 75 62 6c 69 63 20 6d 61   Added public ma
32440 63 72 6f 73 20 66 6f 72 20 72 65 67 65 78 70 20  cros for regexp 
32450 66 6c 61 67 73 2e 20 20 41 64 64 65 64 0a 52 45  flags.  Added.RE
32460 47 5f 42 4f 53 4f 4e 4c 59 20 66 6c 61 67 20 74  G_BOSONLY flag t
32470 6f 20 61 6c 6c 6f 77 20 45 78 70 65 63 74 20 74  o allow Expect t
32480 6f 20 69 74 65 72 61 74 65 20 74 68 72 6f 75 67  o iterate throug
32490 68 20 61 20 73 74 72 69 6e 67 20 61 6e 64 20 6f  h a string and o
324a0 6e 6c 79 0a 66 69 6e 64 20 6d 61 74 63 68 65 73  nly.find matches
324b0 20 74 68 61 74 20 73 74 61 72 74 20 61 74 20 74   that start at t
324c0 68 65 20 63 75 72 72 65 6e 74 20 70 6f 73 69 74  he current posit
324d0 69 6f 6e 20 77 69 74 68 69 6e 20 74 68 65 0a 73  ion within the.s
324e0 74 72 69 6e 67 2e 20 28 73 74 61 6e 74 6f 6e 29  tring. (stanton)
324f0 0a 0a 36 2f 32 31 2f 39 39 20 28 62 75 67 20 66  ..6/21/99 (bug f
32500 69 78 29 20 46 69 78 65 64 20 6d 65 6d 6f 72 79  ix) Fixed memory
32510 20 6c 65 61 6b 20 69 6e 20 54 63 6c 70 54 68 72   leak in TclpThr
32520 65 61 64 43 72 65 61 74 65 20 77 68 65 72 65 20  eadCreate where 
32530 74 68 72 65 61 64 0a 61 74 74 72 69 62 75 74 65  thread.attribute
32540 73 20 77 65 72 65 20 6e 6f 74 20 62 65 69 6e 67  s were not being
32550 20 72 65 6c 65 61 73 65 64 2e 20 20 5b 42 75 67   released.  [Bug
32560 3a 20 32 32 35 34 5d 20 28 73 74 61 6e 74 6f 6e  : 2254] (stanton
32570 29 0a 0a 36 2f 32 33 2f 39 39 20 28 6e 65 77 20  )..6/23/99 (new 
32580 66 65 61 74 75 72 65 29 20 55 70 64 61 74 65 64  feature) Updated
32590 20 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74   Unicode charact
325a0 65 72 20 74 61 62 6c 65 73 20 74 6f 20 72 65 66  er tables to ref
325b0 6c 65 63 74 0a 55 6e 69 63 6f 64 65 20 32 2e 31  lect.Unicode 2.1
325c0 20 64 61 74 61 2e 20 28 73 74 61 6e 74 6f 6e 29   data. (stanton)
325d0 0a 0a 36 2f 32 35 2f 39 39 20 28 6e 65 77 20 66  ..6/25/99 (new f
325e0 65 61 74 75 72 65 29 20 46 69 78 65 64 20 62 75  eature) Fixed bu
325f0 67 73 20 69 6e 20 6e 6f 6e 2d 67 72 65 65 64 79  gs in non-greedy
32600 20 71 75 61 6e 74 69 66 69 65 72 73 20 66 6f 72   quantifiers for
32610 20 72 65 67 75 6c 61 72 0a 65 78 70 72 65 73 73   regular.express
32620 69 6f 6e 20 63 6f 64 65 2e 20 28 73 74 61 6e 74  ion code. (stant
32630 6f 6e 29 0a 0a 36 2f 32 35 2f 39 39 20 28 6e 65  on)..6/25/99 (ne
32640 77 20 66 65 61 74 75 72 65 29 20 41 64 64 65 64  w feature) Added
32650 20 69 6e 69 74 69 61 6c 20 69 6d 70 6c 65 6d 65   initial impleme
32660 6e 74 61 74 69 6f 6e 20 6f 66 20 6e 65 77 20 54  ntation of new T
32670 63 6c 20 74 65 73 74 0a 68 61 72 6e 65 73 73 20  cl test.harness 
32680 70 61 63 6b 61 67 65 2e 20 20 4d 6f 64 69 66 69  package.  Modifi
32690 65 64 20 74 65 73 74 20 66 69 6c 65 73 20 74 6f  ed test files to
326a0 20 75 73 65 20 6e 65 77 20 74 63 6c 74 65 73 74   use new tcltest
326b0 20 70 61 63 6b 61 67 65 2e 0a 28 6a 65 6e 6e 29   package..(jenn)
326c0 0a 0a 36 2f 32 36 2f 39 39 20 28 6e 65 77 20 66  ..6/26/99 (new f
326d0 65 61 74 75 72 65 29 20 41 70 70 6c 69 65 64 20  eature) Applied 
326e0 70 61 74 63 68 20 66 72 6f 6d 20 50 65 74 65 72  patch from Peter
326f0 20 48 61 72 64 69 65 20 74 6f 20 61 64 64 20 70   Hardie to add p
32700 6f 6b 65 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 64  oke.command to d
32710 64 65 20 61 6e 64 20 63 68 61 6e 67 65 64 20 74  de and changed t
32720 68 65 20 64 64 65 20 70 61 63 6b 61 67 65 20 76  he dde package v
32730 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72 20 74 6f  ersion number to
32740 0a 31 2e 31 2e 20 28 72 65 64 6d 61 6e 29 20 0a  .1.1. (redman) .
32750 0a 36 2f 32 38 2f 39 39 20 28 62 75 67 20 66 69  .6/28/99 (bug fi
32760 78 29 20 41 70 70 6c 69 65 64 20 70 61 74 63 68  x) Applied patch
32770 20 66 72 6f 6d 20 50 65 74 65 72 20 48 61 72 64   from Peter Hard
32780 69 65 20 74 6f 20 66 69 78 20 70 72 6f 62 6c 65  ie to fix proble
32790 6d 20 69 6e 0a 54 63 6c 5f 47 65 74 49 6e 64 65  m in.Tcl_GetInde
327a0 78 46 72 6f 6d 4f 62 6a 28 29 20 77 68 65 6e 20  xFromObj() when 
327b0 74 68 65 20 6b 65 79 20 62 65 69 6e 67 20 70 61  the key being pa
327c0 73 73 65 64 20 69 73 20 74 68 65 20 65 6d 70 74  ssed is the empt
327d0 79 20 73 74 72 69 6e 67 2e 0a 5b 42 75 67 3a 20  y string..[Bug: 
327e0 31 37 33 38 5d 20 28 72 65 64 6d 61 6e 29 0a 0a  1738] (redman)..
327f0 36 2f 32 39 2f 39 39 20 28 6e 65 77 20 66 65 61  6/29/99 (new fea
32800 74 75 72 65 29 20 41 64 64 65 64 20 6f 70 74 69  ture) Added opti
32810 6f 6e 73 20 74 6f 20 74 63 6c 74 65 73 74 20 70  ons to tcltest p
32820 61 63 6b 61 67 65 3a 20 2d 70 72 65 73 65 72 76  ackage: -preserv
32830 65 63 6f 72 65 2c 0a 2d 6c 69 6d 69 74 63 6f 6e  ecore,.-limitcon
32840 73 74 72 61 69 6e 74 73 2c 20 2d 68 65 6c 70 2c  straints, -help,
32850 20 2d 66 69 6c 65 2c 20 2d 6e 6f 74 66 69 6c 65   -file, -notfile
32860 2c 20 61 6e 64 20 66 6c 61 67 73 2e 20 20 28 6a  , and flags.  (j
32870 65 6e 6e 29 0a 0a 37 2f 33 2f 39 39 20 20 28 6e  enn)..7/3/99  (n
32880 65 77 20 66 65 61 74 75 72 65 29 20 43 68 61 6e  ew feature) Chan
32890 67 65 64 20 70 61 72 73 69 6e 67 20 6f 66 20 76  ged parsing of v
328a0 61 72 69 61 62 6c 65 20 6e 61 6d 65 73 20 74 6f  ariable names to
328b0 20 61 6c 6c 6f 77 20 65 6d 70 74 79 0a 61 72 72   allow empty.arr
328c0 61 79 20 6e 61 6d 65 73 2e 20 20 4e 6f 77 20 22  ay names.  Now "
328d0 24 28 66 6f 6f 29 22 20 69 73 20 61 20 76 61 72  $(foo)" is a var
328e0 69 61 62 6c 65 20 72 65 66 65 72 65 6e 63 65 2e  iable reference.
328f0 20 20 50 72 65 76 69 6f 75 73 6c 79 20 79 6f 75    Previously you
32900 0a 68 61 64 20 74 6f 20 75 73 65 20 73 6f 6d 65  .had to use some
32910 74 68 69 6e 67 20 6c 69 6e 65 20 24 3a 3a 28 66  thing line $::(f
32920 6f 6f 29 2c 20 77 68 69 63 68 20 69 73 20 73 6c  oo), which is sl
32930 6f 77 65 72 2e 20 20 54 68 69 73 20 63 68 61 6e  ower.  This chan
32940 67 65 20 77 61 73 0a 72 65 71 75 65 73 74 65 64  ge was.requested
32950 20 62 79 20 4a 65 61 6e 2d 4c 75 63 20 46 6f 6e   by Jean-Luc Fon
32960 74 61 69 6e 65 20 66 6f 72 20 68 69 73 20 53 54  taine for his ST
32970 4f 4f 4f 50 20 70 61 63 6b 61 67 65 2e 20 28 77  OOOP package. (w
32980 65 6c 63 68 29 0a 0a 37 2f 33 2f 39 39 20 20 28  elch)..7/3/99  (
32990 6e 65 77 20 66 65 61 74 75 72 65 29 20 41 64 64  new feature) Add
329a0 65 64 20 54 63 6c 5f 53 65 74 4e 6f 74 69 66 69  ed Tcl_SetNotifi
329b0 65 72 20 28 70 75 62 6c 69 63 20 41 50 49 29 20  er (public API) 
329c0 61 6e 64 0a 61 73 73 6f 63 69 61 74 65 64 20 68  and.associated h
329d0 6f 6f 6b 20 70 6f 69 6e 74 73 20 69 6e 20 74 68  ook points in th
329e0 65 20 6e 6f 74 69 66 69 65 72 73 20 74 6f 20 62  e notifiers to b
329f0 65 20 61 62 6c 65 20 74 6f 20 72 65 70 6c 61 63  e able to replac
32a00 65 20 74 68 65 0a 6e 6f 74 69 66 69 65 72 20 63  e the.notifier c
32a10 61 6c 6c 73 20 61 74 20 72 75 6e 74 69 6d 65 2e  alls at runtime.
32a20 20 54 68 65 20 58 74 20 6e 6f 74 69 66 69 65 72   The Xt notifier
32a30 20 61 6e 64 20 74 65 73 74 20 70 72 6f 67 72 61   and test progra
32a40 6d 20 75 73 65 20 74 68 69 73 0a 68 6f 6f 6b 2e  m use this.hook.
32a50 20 20 28 77 65 6c 63 68 29 0a 0a 37 2f 33 2f 39    (welch)..7/3/9
32a60 39 20 20 28 6e 65 77 20 66 65 61 74 75 72 65 29  9  (new feature)
32a70 20 41 64 64 65 64 20 61 20 6e 65 77 20 76 61 72   Added a new var
32a80 69 61 6e 74 20 6f 66 20 74 68 65 20 22 54 72 66  iant of the "Trf
32a90 20 63 6f 72 65 20 70 61 74 63 68 22 20 66 72 6f   core patch" fro
32aa0 6d 0a 41 6e 64 72 65 61 73 20 4b 75 70 72 69 65  m.Andreas Kuprie
32ab0 73 20 74 68 61 74 20 61 64 64 73 20 6e 65 77 20  s that adds new 
32ac0 43 20 41 50 49 73 20 54 63 6c 5f 53 74 61 63 6b  C APIs Tcl_Stack
32ad0 43 68 61 6e 6e 65 6c 2c 0a 54 63 6c 5f 55 6e 73  Channel,.Tcl_Uns
32ae0 74 61 63 6b 43 68 61 6e 6e 65 6c 2c 20 61 6e 64  tackChannel, and
32af0 20 54 63 6c 5f 47 65 74 53 74 61 63 6b 65 64 43   Tcl_GetStackedC
32b00 68 61 6e 6e 65 6c 2e 20 20 54 68 69 73 20 61 6c  hannel.  This al
32b10 6c 6f 77 73 20 74 68 65 20 54 72 66 0a 65 78 74  lows the Trf.ext
32b20 65 6e 73 69 6f 6e 20 74 6f 20 77 6f 72 6b 20 77  ension to work w
32b30 69 74 68 6f 75 74 20 61 70 70 6c 79 69 6e 67 20  ithout applying 
32b40 70 61 74 63 68 65 73 20 74 6f 20 74 68 65 20 54  patches to the T
32b50 63 6c 20 63 6f 72 65 2e 20 28 77 65 6c 63 68 29  cl core. (welch)
32b60 0a 0a 37 2f 36 2f 39 39 20 20 28 6e 65 77 20 66  ..7/6/99  (new f
32b70 65 61 74 75 72 65 29 20 41 64 64 65 64 20 2d 74  eature) Added -t
32b80 69 6d 65 6f 75 74 20 6f 70 74 69 6f 6e 20 74 6f  imeout option to
32b90 20 68 74 74 70 2e 74 63 6c 20 74 6f 20 68 61 6e   http.tcl to han
32ba0 64 6c 65 0a 74 69 6d 65 6f 75 74 73 20 74 68 61  dle.timeouts tha
32bb0 74 20 6f 63 63 75 72 20 64 75 72 69 6e 67 20 63  t occur during c
32bc0 6f 6e 6e 65 63 74 69 6f 6e 20 61 74 74 65 6d 70  onnection attemp
32bd0 74 73 20 74 6f 20 68 6f 73 74 73 20 74 68 61 74  ts to hosts that
32be0 20 61 72 65 0a 64 6f 77 6e 2e 20 28 77 65 6c 63   are.down. (welc
32bf0 68 29 0a 0a 37 2f 36 2f 39 39 20 20 28 62 75 67  h)..7/6/99  (bug
32c00 20 66 69 78 29 20 41 70 70 6c 69 65 64 20 6e 65   fix) Applied ne
32c10 77 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e  w implementation
32c20 20 6f 66 20 74 68 65 20 57 69 6e 64 6f 77 73 20   of the Windows 
32c30 73 65 72 69 61 6c 0a 70 6f 72 74 20 64 72 69 76  serial.port driv
32c40 65 72 20 66 72 6f 6d 20 52 6f 6c 66 20 53 63 68  er from Rolf Sch
32c50 72 6f 65 64 74 65 72 20 74 68 61 74 20 66 69 78  roedter that fix
32c60 65 73 20 72 65 61 64 69 6e 67 20 6f 6e 6c 79 20  es reading only 
32c70 6f 6e 65 20 62 79 74 65 20 66 72 6f 6d 0a 74 68  one byte from.th
32c80 65 20 70 6f 72 74 20 61 74 20 61 20 74 69 6d 65  e port at a time
32c90 2e 20 20 55 73 65 73 20 70 6f 6c 6c 69 6e 67 20  .  Uses polling 
32ca0 65 76 65 72 79 20 31 30 6d 73 20 74 6f 20 69 6d  every 10ms to im
32cb0 70 6c 65 6d 65 6e 74 0a 66 69 6c 65 65 76 65 6e  plement.fileeven
32cc0 74 73 2e 20 5b 42 75 67 3a 20 31 39 38 30 20 32  ts. [Bug: 1980 2
32cd0 32 31 37 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37  217] (redman)..7
32ce0 2f 38 2f 39 39 20 20 28 62 75 67 20 66 69 78 29  /8/99  (bug fix)
32cf0 20 41 70 70 6c 69 65 64 20 66 69 78 20 66 6f 72   Applied fix for
32d00 20 62 75 67 20 69 6e 20 44 46 41 20 73 74 61 74   bug in DFA stat
32d10 65 20 63 61 63 68 69 6e 67 20 75 6e 64 65 72 0a  e caching under.
32d20 6c 6f 6f 6b 61 68 65 61 64 20 63 6f 6e 64 69 74  lookahead condit
32d30 69 6f 6e 73 20 28 72 65 67 75 6c 61 72 20 65 78  ions (regular ex
32d40 70 72 65 73 73 69 6f 6e 73 29 2e 20 20 5b 42 75  pressions).  [Bu
32d50 67 3a 20 32 33 31 38 5d 20 28 73 74 61 6e 74 6f  g: 2318] (stanto
32d60 6e 29 0a 0a 37 2f 38 2f 39 39 20 20 28 62 75 67  n)..7/8/99  (bug
32d70 20 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20   fix) Fixed bug 
32d80 69 6e 20 73 74 72 69 6e 67 20 72 61 6e 67 65 20  in string range 
32d90 62 6f 75 6e 64 73 20 63 68 65 63 6b 69 6e 67 0a  bounds checking.
32da0 63 6f 64 65 2e 20 28 73 74 61 6e 74 6f 6e 29 0a  code. (stanton).
32db0 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
32dc0 20 52 65 6c 65 61 73 65 64 20 38 2e 32 62 31 2c   Released 8.2b1,
32dd0 20 4a 75 6c 79 20 31 34 2c 20 31 39 39 39 20 2d   July 14, 1999 -
32de0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
32df0 2d 2d 2d 2d 2d 0a 0a 37 2f 31 36 2f 39 39 20 28  -----..7/16/99 (
32e00 62 75 67 20 66 69 78 29 20 41 64 64 65 64 20 54  bug fix) Added T
32e10 63 6c 5f 53 65 74 4e 6f 74 69 66 69 65 72 20 74  cl_SetNotifier t
32e20 6f 20 73 74 75 62 20 74 61 62 6c 65 2e 20 5b 42  o stub table. [B
32e30 75 67 3a 20 32 33 36 34 5d 0a 41 64 64 65 64 20  ug: 2364].Added 
32e40 63 68 65 63 6b 20 66 6f 72 20 41 6c 70 68 61 2f  check for Alpha/
32e50 4c 69 6e 75 78 20 74 6f 20 63 6f 72 72 65 63 74  Linux to correct
32e60 20 74 68 65 20 49 45 45 45 20 20 66 6c 6f 61 74   the IEEE  float
32e70 69 6e 67 20 70 6f 69 6e 74 20 66 6c 61 67 2c 0a  ing point flag,.
32e80 70 61 74 63 68 20 66 72 6f 6d 20 44 6f 6e 20 50  patch from Don P
32e90 6f 72 74 65 72 2e 20 28 72 65 64 6d 61 6e 29 0a  orter. (redman).
32ea0 0a 37 2f 32 30 2f 39 39 20 28 62 75 67 20 66 69  .7/20/99 (bug fi
32eb0 78 29 20 4d 65 72 67 65 64 20 38 2e 30 2e 35 20  x) Merged 8.0.5 
32ec0 63 6f 64 65 20 74 6f 20 68 61 6e 64 6c 65 20 74  code to handle t
32ed0 63 6c 5f 6c 69 62 72 61 72 79 20 70 72 6f 70 65  cl_library prope
32ee0 72 6c 79 2c 0a 61 6c 73 6f 20 66 69 78 65 64 20  rly,.also fixed 
32ef0 61 20 62 75 67 20 74 68 61 74 20 63 61 75 73 65  a bug that cause
32f00 64 20 54 43 4c 5f 4c 49 42 52 41 52 59 20 74 6f  d TCL_LIBRARY to
32f10 20 62 65 20 69 67 6e 6f 72 65 64 2e 20 28 68 65   be ignored. (he
32f20 72 73 68 65 79 29 0a 0a 37 2f 32 31 2f 39 39 20  rshey)..7/21/99 
32f30 28 62 75 67 20 66 69 78 29 20 49 6d 70 6c 65 6d  (bug fix) Implem
32f40 65 6e 74 65 64 20 6d 6f 64 69 66 69 65 64 20 73  ented modified s
32f50 6f 63 6b 65 74 20 64 72 69 76 65 72 20 66 6f 72  ocket driver for
32f60 20 57 69 6e 64 6f 77 73 20 74 68 61 74 0a 75 73   Windows that.us
32f70 65 73 20 61 20 74 68 72 65 61 64 20 74 6f 20 6d  es a thread to m
32f80 61 6e 61 67 65 20 74 68 65 20 73 6f 63 6b 65 74  anage the socket
32f90 20 65 76 65 6e 74 20 77 69 6e 64 6f 77 2e 20 20   event window.  
32fa0 43 6f 64 65 20 77 6f 72 6b 73 20 74 68 65 20 73  Code works the s
32fb0 61 6d 65 0a 6f 6e 20 61 6c 6c 20 73 75 70 70 6f  ame.on all suppo
32fc0 72 74 65 64 20 76 65 72 73 69 6f 6e 73 20 6f 66  rted versions of
32fd0 20 57 69 6e 64 6f 77 73 20 61 6e 64 20 77 61 73   Windows and was
32fe0 20 62 61 73 65 64 20 6f 6e 20 6f 72 69 67 69 6e   based on origin
32ff0 61 6c 20 38 2e 31 2e 30 0a 63 6f 64 65 2e 20 20  al 8.1.0.code.  
33000 5b 42 75 67 3a 20 32 31 37 38 20 32 32 35 36 20  [Bug: 2178 2256 
33010 32 32 35 39 20 32 33 32 39 20 32 33 32 33 20 32  2259 2329 2323 2
33020 33 35 35 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37  355] (redman)..7
33030 2f 32 31 2f 39 39 20 28 6e 65 77 20 66 65 61 74  /21/99 (new feat
33040 75 72 65 29 20 41 70 70 6c 69 65 64 20 70 61 74  ure) Applied pat
33050 63 68 20 66 72 6f 6d 20 52 6f 6c 66 20 53 63 68  ch from Rolf Sch
33060 72 6f 65 64 74 65 72 20 74 6f 20 61 64 64 0a 2d  roedter to add.-
33070 70 6f 6c 6c 69 6e 74 65 72 76 61 6c 20 6f 70 74  pollinterval opt
33080 69 6f 6e 20 74 6f 20 66 63 6f 6e 66 69 67 75 72  ion to fconfigur
33090 65 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 73 65  e for Windows se
330a0 72 69 61 6c 20 70 6f 72 74 73 2e 20 20 41 6c 6c  rial ports.  All
330b0 6f 77 73 0a 74 68 65 20 6d 61 78 62 6c 6f 63 6b  ows.the maxblock
330c0 74 69 6d 65 20 74 6f 20 62 65 20 6d 6f 64 69 66  time to be modif
330d0 69 65 64 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 68  ied to control h
330e0 6f 77 20 6f 66 74 65 6e 20 73 65 72 69 61 6c 20  ow often serial 
330f0 70 6f 72 74 73 20 61 72 65 0a 63 68 65 63 6b 65  ports are.checke
33100 64 20 66 6f 72 20 66 69 6c 65 65 76 65 6e 74 73  d for fileevents
33110 2e 20 20 41 6c 73 6f 20 61 64 64 65 64 20 64 6f  .  Also added do
33120 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20  cumentation for 
33130 5c 5c 2e 5c 63 6f 6d 58 0a 6e 6f 74 61 74 69 6f  \\.\comX.notatio
33140 6e 20 66 6f 72 20 6f 70 65 6e 69 6e 67 20 73 65  n for opening se
33150 72 69 61 6c 20 70 6f 72 74 73 20 6f 6e 20 57 69  rial ports on Wi
33160 6e 64 6f 77 73 2e 20 20 28 72 65 64 6d 61 6e 29  ndows.  (redman)
33170 0a 0a 37 2f 32 31 2f 39 39 20 28 62 75 67 20 66  ..7/21/99 (bug f
33180 69 78 29 20 43 68 61 6e 67 65 64 20 41 50 49 73  ix) Changed APIs
33190 20 69 6e 20 73 74 75 62 20 74 61 62 6c 65 73 20   in stub tables 
331a0 74 6f 20 75 73 65 20 22 75 6e 73 69 67 6e 65 64  to use "unsigned
331b0 20 6c 6f 6e 67 22 0a 69 6e 73 74 65 61 64 20 6f   long".instead o
331c0 66 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 2d 73  f the platform-s
331d0 70 65 63 69 66 69 63 20 22 73 69 7a 65 5f 74 22  pecific "size_t"
331e0 2c 20 70 72 69 6d 61 72 69 6c 79 20 61 66 74 65  , primarily afte
331f0 72 20 53 75 6e 4f 53 20 34 0a 75 73 65 72 73 20  r SunOS 4.users 
33200 63 6f 75 6c 64 20 6e 6f 20 6c 6f 6e 67 65 72 20  could no longer 
33210 63 6f 6d 70 69 6c 65 2e 20 28 72 65 64 6d 61 6e  compile. (redman
33220 29 0a 0a 37 2f 32 32 2f 39 39 20 28 62 75 67 20  )..7/22/99 (bug 
33230 66 69 78 29 20 46 69 78 65 64 20 63 72 61 73 68  fix) Fixed crash
33240 69 6e 67 20 64 75 72 69 6e 67 20 22 61 72 72 61  ing during "arra
33250 79 20 73 65 74 20 61 28 62 29 20 7b 7d 22 2e 20  y set a(b) {}". 
33260 0a 5b 42 75 67 3a 20 32 34 32 37 5d 20 28 72 65  .[Bug: 2427] (re
33270 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39 39 20 28  dman)..7/22/99 (
33280 62 75 67 20 66 69 78 29 20 54 68 65 20 69 6e 73  bug fix) The ins
33290 74 61 6c 6c 2d 73 68 20 73 63 72 69 70 74 20 6d  tall-sh script m
332a0 75 73 74 20 62 65 20 67 69 76 65 6e 20 65 78 65  ust be given exe
332b0 63 75 74 65 0a 70 65 72 6d 69 73 73 69 6f 6e 73  cute.permissions
332c0 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e   prior to runnin
332d0 67 2e 20 20 5b 42 75 67 3a 20 32 34 31 33 5d 20  g.  [Bug: 2413] 
332e0 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39  (redman)..7/22/9
332f0 39 20 28 62 75 67 20 66 69 78 29 20 41 70 70 6c  9 (bug fix) Appl
33300 69 65 64 20 70 61 74 63 68 20 66 72 6f 6d 20 55  ied patch from U
33310 6c 72 69 63 68 20 52 69 6e 67 20 74 6f 20 72 65  lrich Ring to re
33320 6d 6f 76 65 20 41 4e 53 49 2d 73 74 79 6c 65 0a  move ANSI-style.
33330 70 72 6f 74 6f 74 79 70 65 73 20 69 6e 20 74 68  prototypes in th
33340 65 20 63 6f 64 65 2e 20 20 5b 42 75 67 3a 20 32  e code.  [Bug: 2
33350 33 39 31 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37  391] (redman)..7
33360 2f 32 32 2f 39 39 20 28 62 75 67 20 66 69 78 29  /22/99 (bug fix)
33370 20 41 64 64 65 64 20 23 69 66 20 62 6c 6f 63 6b   Added #if block
33380 73 20 61 72 6f 75 6e 64 20 23 69 6e 63 6c 75 64  s around #includ
33390 65 73 20 6f 66 20 73 79 73 2f 2a 2e 68 20 68 65  es of sys/*.h he
333a0 61 64 65 72 0a 66 69 6c 65 73 2c 20 74 6f 20 61  ader.files, to a
333b0 6c 6c 6f 77 20 61 6e 20 65 78 74 65 6e 73 69 6f  llow an extensio
333c0 6e 20 61 75 74 68 6f 72 20 6f 6e 20 57 69 6e 64  n author on Wind
333d0 6f 77 73 20 74 6f 20 75 73 65 20 74 68 65 20 4d  ows to use the M
333e0 65 74 72 6f 57 65 72 6b 73 0a 63 6f 6d 70 69 6c  etroWerks.compil
333f0 65 72 2e 20 5b 42 75 67 3a 20 32 33 38 35 5d 20  er. [Bug: 2385] 
33400 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 32 2f 39  (redman)..7/22/9
33410 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
33420 64 20 72 75 6e 6e 69 6e 67 20 74 68 65 20 73 61  d running the sa
33430 66 65 2e 74 65 73 74 20 74 65 73 74 20 73 75 69  fe.test test sui
33440 74 65 2c 20 6f 6e 65 20 63 68 61 6e 67 65 0a 74  te, one change.t
33450 6f 20 74 68 65 20 57 69 6e 64 6f 77 73 20 4d 61  o the Windows Ma
33460 6b 65 66 69 6c 65 2e 69 6e 20 74 6f 20 66 69 78  kefile.in to fix
33470 20 70 61 74 68 73 20 61 6e 64 20 61 6e 6f 74 68   paths and anoth
33480 65 72 20 69 6e 20 73 61 66 65 2e 74 65 73 74 20  er in safe.test 
33490 74 6f 0a 63 68 65 63 6b 20 66 6f 72 20 74 68 65  to.check for the
334a0 20 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 28 74 68   tcl_platform(th
334b0 72 65 61 64 65 64 29 20 76 61 72 69 61 62 6c 65  readed) variable
334c0 20 70 72 6f 70 65 72 6c 79 2e 20 28 72 65 64 6d   properly. (redm
334d0 61 6e 29 0a 0a 37 2f 32 32 2f 39 39 20 28 62 75  an)..7/22/99 (bu
334e0 67 20 66 69 78 29 20 46 69 78 65 64 20 68 61 6e  g fix) Fixed han
334f0 67 69 6e 67 20 69 6e 20 6e 65 77 20 57 69 6e 33  ging in new Win3
33500 32 20 73 6f 63 6b 65 74 20 64 72 69 76 65 72 20  2 socket driver 
33510 77 69 74 68 0a 74 68 72 65 61 64 73 20 65 6e 61  with.threads ena
33520 62 6c 65 64 2e 20 28 72 65 64 6d 61 6e 29 0a 0a  bled. (redman)..
33530 37 2f 32 36 2f 39 39 20 28 62 75 67 20 66 69 78  7/26/99 (bug fix
33540 29 20 46 69 78 65 64 20 74 65 72 6d 69 6e 61 74  ) Fixed terminat
33550 69 6e 67 20 6f 66 20 68 65 6c 70 65 72 20 74 68  ing of helper th
33560 72 65 61 64 73 20 62 79 20 68 6f 6c 64 69 6e 67  reads by holding
33570 20 61 6e 79 0a 6d 75 74 65 78 65 73 20 66 72 6f   any.mutexes fro
33580 6d 20 74 68 65 20 70 72 69 6d 61 72 79 20 74 68  m the primary th
33590 72 65 61 64 20 77 68 69 6c 65 20 77 61 69 74 69  read while waiti
335a0 6e 67 20 66 6f 72 20 74 68 65 20 68 65 6c 70 65  ng for the helpe
335b0 72 20 74 68 72 65 61 64 20 74 6f 0a 74 65 72 6d  r thread to.term
335c0 69 6e 61 74 65 2e 20 20 46 69 78 65 73 20 64 75  inate.  Fixes du
335d0 61 6c 2d 43 50 55 20 57 69 6e 4e 54 20 68 61 6e  al-CPU WinNT han
335e0 67 73 2c 20 6f 6e 6c 79 20 6f 6e 65 20 72 61 72  gs, only one rar
335f0 65 20 73 70 6f 72 61 64 69 63 20 68 61 6e 67 0a  e sporadic hang.
33600 74 68 61 74 20 73 74 69 6c 6c 20 65 78 69 73 74  that still exist
33610 73 20 77 69 74 68 20 64 75 61 6c 2d 43 50 55 20  s with dual-CPU 
33620 57 69 6e 4e 54 2e 20 20 41 6c 73 6f 20 66 69 78  WinNT.  Also fix
33630 65 64 20 74 65 73 74 20 63 61 73 65 73 20 73 6f  ed test cases so
33640 20 74 68 61 74 0a 74 68 65 79 20 77 6f 75 6c 64   that.they would
33650 20 6e 6f 74 20 64 65 70 65 6e 64 20 61 73 20 6d   not depend as m
33660 75 63 68 20 6f 6e 20 74 69 6d 69 6e 67 20 66 6f  uch on timing fo
33670 72 20 64 75 61 6c 2d 43 50 55 20 57 69 6e 4e 54  r dual-CPU WinNT
33680 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 32 37  . (redman)..7/27
33690 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 53 6f  /99 (bug fix) So
336a0 6d 65 20 74 65 73 74 20 73 75 69 74 65 20 63 6c  me test suite cl
336b0 65 61 6e 75 70 2e 20 28 6a 65 6e 6e 29 0a 0a 37  eanup. (jenn)..7
336c0 2f 32 39 2f 39 39 20 28 62 75 67 20 66 69 78 29  /29/99 (bug fix)
336d0 20 41 70 70 6c 69 65 64 20 70 61 74 63 68 20 74   Applied patch t
336e0 6f 20 66 69 78 20 74 79 70 6f 20 69 6e 20 2e 53  o fix typo in .S
336f0 48 20 4e 41 4d 45 20 6c 69 6e 65 20 69 6e 0a 64  H NAME line in.d
33700 6f 63 2f 45 6e 63 6f 64 69 6e 67 2e 6e 20 5b 42  oc/Encoding.n [B
33710 75 67 3a 20 32 34 35 31 5d 2e 20 20 41 70 70 6c  ug: 2451].  Appl
33720 69 65 64 20 70 61 74 63 68 20 74 6f 20 61 76 6f  ied patch to avo
33730 69 64 20 6c 69 6e 6b 69 6e 67 20 70 61 63 6b 2e  id linking pack.
33740 6e 20 74 6f 0a 70 61 63 6b 2d 6f 6c 64 2e 6e 20  n to.pack-old.n 
33750 5b 42 75 67 3a 20 32 34 36 39 5d 2e 20 50 61 74  [Bug: 2469]. Pat
33760 63 68 65 73 20 66 72 6f 6d 20 44 6f 6e 20 50 6f  ches from Don Po
33770 72 74 65 72 2e 20 28 72 65 64 6d 61 6e 29 0a 0a  rter. (redman)..
33780 37 2f 32 39 2f 39 39 20 28 62 75 67 20 66 69 78  7/29/99 (bug fix
33790 29 20 41 6c 6c 6f 77 20 74 63 6c 20 74 6f 20 6f  ) Allow tcl to o
337a0 70 65 6e 20 43 4f 4e 20 61 6e 64 20 4e 55 4c 2c  pen CON and NUL,
337b0 20 65 76 65 6e 20 66 6f 72 20 72 65 64 69 72 65   even for redire
337c0 63 74 69 6f 6e 0a 6f 66 20 73 74 64 20 63 68 61  ction.of std cha
337d0 6e 6e 65 6c 73 2e 20 20 5b 42 75 67 3a 20 32 33  nnels.  [Bug: 23
337e0 39 33 20 32 33 39 32 20 32 32 30 39 20 32 34 35  93 2392 2209 245
337f0 38 5d 20 28 72 65 64 6d 61 6e 29 0a 0a 37 2f 33  8] (redman)..7/3
33800 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 41  0/99 (bug fix) A
33810 70 70 6c 69 65 64 20 66 69 78 65 64 20 54 72 66  pplied fixed Trf
33820 20 70 61 74 63 68 20 66 72 6f 6d 20 41 6e 64 72   patch from Andr
33830 65 61 73 20 4b 75 70 72 69 65 73 2e 20 0a 5b 42  eas Kupries. .[B
33840 75 67 3a 20 32 33 38 36 5d 20 28 68 6f 62 62 73  ug: 2386] (hobbs
33850 29 0a 0a 37 2f 33 30 2f 39 39 20 28 62 75 67 20  )..7/30/99 (bug 
33860 66 69 78 29 20 46 69 78 65 64 20 62 75 67 20 69  fix) Fixed bug i
33870 6e 20 69 6e 66 6f 20 63 6f 6d 70 6c 65 74 65 2e  n info complete.
33880 20 5b 42 75 67 3a 20 32 33 38 33 20 32 34 36 36   [Bug: 2383 2466
33890 5d 20 28 68 6f 62 62 73 29 0a 0a 37 2f 33 30 2f  ] (hobbs)..7/30/
338a0 39 39 20 28 62 75 67 20 66 69 78 29 20 41 70 70  99 (bug fix) App
338b0 6c 69 65 64 20 70 61 74 63 68 20 74 6f 20 66 69  lied patch to fi
338c0 78 20 74 68 72 65 61 64 69 6e 67 20 6f 6e 20 49  x threading on I
338d0 72 69 78 20 36 2e 35 2c 20 70 61 74 63 68 0a 70  rix 6.5, patch.p
338e0 72 6f 76 69 64 65 64 20 62 79 20 4a 61 6d 65 73  rovided by James
338f0 20 44 65 6e 6e 65 74 74 2e 20 20 5b 42 75 67 3a   Dennett.  [Bug:
33900 20 32 34 35 30 5d 20 28 72 65 64 6d 61 6e 29 0a   2450] (redman).
33910 0a 37 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69  .7/30/99 (bug fi
33920 78 29 20 46 69 78 65 64 20 6c 61 75 6e 63 68 69  x) Fixed launchi
33930 6e 67 20 6f 66 20 31 36 62 69 74 20 61 70 70 6c  ng of 16bit appl
33940 69 63 61 74 69 6f 6e 73 20 6f 6e 20 57 69 6e 39  ications on Win9
33950 78 20 66 72 6f 6d 0a 77 69 73 68 2e 20 20 54 68  x from.wish.  Th
33960 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 77  e command line w
33970 61 73 20 62 65 69 6e 67 20 70 72 69 6d 65 64 20  as being primed 
33980 77 69 74 68 20 74 63 6c 70 69 70 38 32 2e 64 6c  with tclpip82.dl
33990 6c 2c 20 62 75 74 20 69 74 20 77 61 73 0a 69 67  l, but it was.ig
339a0 6e 6f 72 65 64 20 6c 61 74 65 72 2e 20 0a 0a 37  nored later. ..7
339b0 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29  /30/99 (bug fix)
339c0 20 41 64 64 65 64 20 66 75 6e 63 74 69 6f 6e 73   Added functions
339d0 20 74 6f 20 73 74 75 62 20 74 61 62 6c 65 2c 20   to stub table, 
339e0 70 61 74 63 68 20 70 72 6f 76 69 64 65 64 20 62  patch provided b
339f0 79 20 4a 61 6e 0a 4e 69 6a 74 6d 61 6e 73 2e 20  y Jan.Nijtmans. 
33a00 5b 42 75 67 3a 20 32 34 34 35 5d 20 28 68 6f 62  [Bug: 2445] (hob
33a10 62 73 29 0a 0a 38 2f 31 2f 39 39 20 20 28 62 75  bs)..8/1/99  (bu
33a20 67 20 66 69 78 29 20 43 68 61 6e 67 65 64 20 57  g fix) Changed W
33a30 69 6e 64 6f 77 73 20 73 6f 63 6b 65 74 20 64 72  indows socket dr
33a40 69 76 65 72 20 74 6f 20 74 65 72 6d 69 6e 61 74  iver to terminat
33a50 65 20 74 68 72 65 61 64 73 0a 62 79 20 73 65 6e  e threads.by sen
33a60 64 69 6e 67 20 61 20 6d 65 73 73 61 67 65 20 74  ding a message t
33a70 6f 20 74 68 65 20 77 69 6e 64 6f 77 20 72 61 74  o the window rat
33a80 68 65 72 20 74 68 61 6e 20 63 61 6c 6c 69 6e 67  her than calling
33a90 0a 54 65 72 6d 69 6e 61 74 65 54 68 72 65 61 64  .TerminateThread
33aa0 28 29 2c 20 77 68 69 63 68 20 73 65 65 6d 73 20  (), which seems 
33ab0 74 6f 20 6c 65 61 6b 20 61 62 6f 75 74 20 34 6b  to leak about 4k
33ac0 20 66 72 6f 6d 20 74 68 65 20 68 65 6c 70 65 72   from the helper
33ad0 0a 74 68 72 65 61 64 27 73 20 73 74 61 63 6b 20  .thread's stack 
33ae0 73 70 61 63 65 2e 20 28 72 65 64 6d 61 6e 29 0a  space. (redman).
33af0 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  .---------------
33b00 20 52 65 6c 65 61 73 65 64 20 38 2e 32 62 32 2c   Released 8.2b2,
33b10 20 41 75 67 75 73 74 20 35 2c 20 31 39 39 39 20   August 5, 1999 
33b20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
33b30 2d 2d 2d 2d 2d 2d 0a 0a 38 2f 34 2f 39 39 20 28  ------..8/4/99 (
33b40 62 75 67 20 66 69 78 29 20 41 70 70 6c 69 65 64  bug fix) Applied
33b50 20 70 61 74 63 68 65 73 20 73 75 70 70 6c 69 65   patches supplie
33b60 64 20 62 79 20 48 65 6e 72 79 20 53 70 65 6e 63  d by Henry Spenc
33b70 65 72 20 74 6f 20 67 72 65 61 74 6c 79 0a 65 6e  er to greatly.en
33b80 68 61 6e 63 65 20 70 65 72 66 6f 72 6d 61 6e 63  hance performanc
33b90 65 20 6f 66 20 63 65 72 74 61 69 6e 20 63 6c 61  e of certain cla
33ba0 73 73 65 73 20 6f 66 20 72 65 67 75 6c 61 72 20  sses of regular 
33bb0 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 0a 5b 42  expressions. .[B
33bc0 75 67 3a 20 32 34 34 30 20 32 34 34 37 5d 20 28  ug: 2440 2447] (
33bd0 73 74 61 6e 74 6f 6e 29 0a 0a 38 2f 35 2f 39 39  stanton)..8/5/99
33be0 20 28 64 6f 63 20 63 68 61 6e 67 65 29 20 4d 61   (doc change) Ma
33bf0 64 65 20 69 74 20 63 6c 65 61 72 20 74 68 61 74  de it clear that
33c00 20 74 63 6c 5f 70 6b 67 50 61 74 68 20 77 61 73   tcl_pkgPath was
33c10 20 6e 6f 74 20 73 65 74 20 66 6f 72 0a 57 69 6e   not set for.Win
33c20 64 6f 77 73 2e 20 5b 42 75 67 3a 20 32 34 35 35  dows. [Bug: 2455
33c30 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35 2f 39  ] (hobbs)..8/5/9
33c40 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
33c50 64 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 62  d reference to b
33c60 79 74 65 73 20 74 68 61 74 20 6d 69 67 68 74 20  ytes that might 
33c70 6e 6f 74 20 62 65 20 6e 75 6c 6c 0a 74 65 72 6d  not be null.term
33c80 69 6e 61 74 65 64 20 69 6e 20 74 63 6c 4c 69 74  inated in tclLit
33c90 65 72 61 6c 2e 63 2e 20 5b 42 75 67 3a 20 32 34  eral.c. [Bug: 24
33ca0 39 36 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 35  96] (hobbs)..8/5
33cb0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69  /99 (bug fix) Fi
33cc0 78 65 64 20 74 79 70 6f 20 69 6e 20 68 74 74 70  xed typo in http
33cd0 2e 74 63 6c 2e 20 5b 42 75 67 3a 20 32 35 30 32  .tcl. [Bug: 2502
33ce0 5d 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39 2f 39  ] (hobbs)..8/9/9
33cf0 39 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65  9 (bug fix) Fixe
33d00 64 20 74 65 73 74 20 73 75 69 74 65 20 74 6f 20  d test suite to 
33d10 68 61 6e 64 6c 65 20 6c 61 72 67 65 72 20 69 6e  handle larger in
33d20 74 65 67 65 72 73 0a 28 36 34 62 69 74 29 2e 20  tegers.(64bit). 
33d30 50 61 74 63 68 20 66 72 6f 6d 20 44 6f 6e 20 50  Patch from Don P
33d40 6f 72 74 65 72 2e 20 28 68 6f 62 62 73 29 0a 0a  orter. (hobbs)..
33d50 38 2f 39 2f 39 39 20 28 64 6f 63 75 6d 65 6e 74  8/9/99 (document
33d60 61 74 69 6f 6e 20 66 69 78 29 20 43 6c 61 72 69  ation fix) Clari
33d70 66 69 65 64 20 54 63 6c 5f 44 65 63 72 52 65 66  fied Tcl_DecrRef
33d80 43 6f 75 6e 74 20 64 6f 63 73 20 0a 5b 42 75 67  Count docs .[Bug
33d90 3a 20 31 39 35 32 5d 2e 20 43 6c 61 72 69 66 69  : 1952]. Clarifi
33da0 65 64 20 61 72 72 61 79 20 70 61 74 74 65 72 6e  ed array pattern
33db0 20 64 6f 63 73 20 5b 42 75 67 3a 20 31 33 33 30   docs [Bug: 1330
33dc0 5d 2e 20 46 69 78 65 64 20 63 6c 6f 63 6b 20 64  ]. Fixed clock d
33dd0 6f 63 73 0a 5b 42 75 67 3a 20 36 39 33 5d 2e 20  ocs.[Bug: 693]. 
33de0 46 69 78 65 64 20 66 6f 72 6d 61 74 74 69 6e 67  Fixed formatting
33df0 20 65 72 72 6f 72 73 20 5b 42 75 67 3a 20 32 31   errors [Bug: 21
33e00 38 38 20 32 31 38 39 5d 2e 20 46 69 78 65 64 20  88 2189]. Fixed 
33e10 64 6f 63 20 65 72 72 6f 72 0a 69 6e 20 74 63 6c  doc error.in tcl
33e20 76 61 72 73 2e 6e 20 5b 42 75 67 3a 20 32 30 34  vars.n [Bug: 204
33e30 32 5d 2e 20 28 68 6f 62 62 73 29 0a 0a 38 2f 39  2]. (hobbs)..8/9
33e40 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 46 69  /99 (bug fix) Fi
33e50 78 65 64 20 70 61 74 68 20 68 61 6e 64 6c 69 6e  xed path handlin
33e60 67 20 69 6e 20 61 75 74 6f 5f 65 78 65 63 6f 6b  g in auto_execok
33e70 20 5b 42 75 67 3a 20 31 32 37 36 5d 20 28 68 6f   [Bug: 1276] (ho
33e80 62 62 73 29 0a 0a 38 2f 39 2f 39 39 20 28 69 6e  bbs)..8/9/99 (in
33e90 74 65 72 6e 61 6c 20 61 70 69 20 63 68 61 6e 67  ternal api chang
33ea0 65 29 20 52 65 6d 6f 76 65 64 20 74 68 65 20 54  e) Removed the T
33eb0 63 6c 70 4d 75 74 65 78 4c 6f 63 6b 20 61 6e 64  clpMutexLock and
33ec0 20 54 63 6c 70 4d 75 74 65 78 55 6e 6c 6f 63 6b   TclpMutexUnlock
33ed0 0a 41 50 49 73 20 61 6e 64 20 61 64 64 65 64 20  .APIs and added 
33ee0 61 20 6e 65 77 20 65 78 70 6f 72 74 65 64 20 61  a new exported a
33ef0 70 69 2c 20 54 63 6c 5f 47 65 74 41 6c 6c 6f 63  pi, Tcl_GetAlloc
33f00 4d 75 74 65 78 2e 20 54 68 65 73 65 20 41 50 49  Mutex. These API
33f10 73 20 61 72 65 20 61 6c 6c 20 66 6f 72 0a 74 68  s are all for.th
33f20 65 20 6d 75 74 65 78 20 75 73 65 64 20 69 6e 20  e mutex used in 
33f30 74 68 65 20 73 69 6d 70 6c 65 20 6d 65 6d 6f 72  the simple memor
33f40 79 20 61 6c 6c 6f 63 61 74 6f 72 73 2e 20 20 42  y allocators.  B
33f50 79 20 6d 61 6b 69 6e 67 20 74 68 69 73 20 63 68  y making this ch
33f60 61 6e 67 65 0a 77 65 20 61 72 65 20 61 62 6c 65  ange.we are able
33f70 20 74 6f 20 73 75 62 73 74 69 74 75 74 65 20 64   to substitute d
33f80 69 66 66 65 72 65 6e 74 20 69 6d 70 6c 65 6d 65  ifferent impleme
33f90 6e 74 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20  ntations of the 
33fa0 74 68 72 65 61 64 2d 72 65 6c 61 74 65 64 0a 41  thread-related.A
33fb0 50 49 73 20 77 69 74 68 6f 75 74 20 68 61 76 69  PIs without havi
33fc0 6e 67 20 74 6f 20 72 65 63 6f 6d 70 69 6c 65 20  ng to recompile 
33fd0 74 68 65 20 54 63 6c 20 63 6f 72 65 2e 20 28 77  the Tcl core. (w
33fe0 65 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 6e  elch)..8/9/99 (n
33ff0 65 77 20 43 20 41 50 49 29 20 54 63 6c 5f 47 65  ew C API) Tcl_Ge
34000 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 73 20 72 65  tChannelNames re
34010 74 75 72 6e 73 20 61 20 6c 69 73 74 20 6f 66 20  turns a list of 
34020 6f 70 65 6e 20 63 68 61 6e 6e 65 6c 0a 6e 61 6d  open channel.nam
34030 65 73 20 69 6e 20 74 68 65 20 69 6e 74 65 72 70  es in the interp
34040 72 65 74 65 72 20 72 65 73 75 6c 74 2e 20 20 53  reter result.  S
34050 74 69 6c 6c 20 6e 6f 20 54 63 6c 2d 6c 65 76 65  till no Tcl-leve
34060 6c 20 76 65 72 73 69 6f 6e 20 6f 66 20 74 68 69  l version of thi
34070 73 2c 0a 62 75 74 20 73 65 72 76 65 72 2d 6c 69  s,.but server-li
34080 6b 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 73 20  ke applications 
34090 63 61 6e 20 75 73 65 20 74 68 69 73 20 74 6f 20  can use this to 
340a0 63 6c 65 61 6e 20 75 70 20 66 69 6c 65 73 20 77  clean up files w
340b0 69 74 68 6f 75 74 0a 64 65 6c 65 74 69 6e 67 20  ithout.deleting 
340c0 69 6e 74 65 72 70 72 65 74 65 72 73 2e 20 28 77  interpreters. (w
340d0 65 6c 63 68 29 0a 0a 38 2f 39 2f 39 39 20 28 62  elch)..8/9/99 (b
340e0 75 67 20 66 69 78 29 20 54 72 61 63 65 73 20 77  ug fix) Traces w
340f0 65 72 65 20 6e 6f 74 20 66 69 72 69 6e 67 20 6f  ere not firing o
34100 6e 20 22 69 6e 66 6f 20 65 78 69 73 74 73 22 2c  n "info exists",
34110 20 77 68 69 63 68 20 75 73 65 64 20 74 6f 0a 68   which used to.h
34120 61 70 70 65 6e 20 69 6e 20 54 63 6c 20 37 2e 36  appen in Tcl 7.6
34130 20 61 6e 64 20 65 61 72 6c 69 65 72 2e 20 41 6e   and earlier. An
34140 20 22 69 6e 66 6f 20 65 78 69 73 74 73 22 20 6e   "info exists" n
34150 6f 77 20 66 69 72 65 73 20 61 20 72 65 61 64 20  ow fires a read 
34160 74 72 61 63 65 2c 0a 69 66 20 64 65 66 69 6e 65  trace,.if define
34170 64 2e 20 20 54 68 69 73 20 6d 61 6b 65 73 20 69  d.  This makes i
34180 74 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 66 75  t possible to fu
34190 6c 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 20 76 61  lly implement va
341a0 72 69 61 62 6c 65 73 20 74 68 61 74 0a 61 72 65  riables that.are
341b0 20 64 65 66 69 6e 65 64 20 76 69 61 20 74 72 61   defined via tra
341c0 63 65 73 2e 20 28 77 65 6c 63 68 29 0a 0a 38 2f  ces. (welch)..8/
341d0 31 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  10/99 (bug fix) 
341e0 46 69 78 65 64 20 42 72 65 6e 74 27 73 20 63 68  Fixed Brent's ch
341f0 61 6e 67 65 73 20 73 6f 20 74 68 61 74 20 74 68  anges so that th
34200 65 79 20 77 6f 72 6b 20 6f 6e 0a 57 69 6e 64 6f  ey work on.Windo
34210 77 73 2e 20 28 72 65 64 6d 61 6e 29 0a 0a 2d 2d  ws. (redman)..--
34220 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 52 65  ------------- Re
34230 6c 65 61 73 65 64 20 38 2e 32 62 33 2c 20 41 75  leased 8.2b3, Au
34240 67 75 73 74 20 31 31 2c 20 31 39 39 39 20 2d 2d  gust 11, 1999 --
34250 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34260 2d 2d 2d 2d 0a 0a 38 2f 31 32 2f 39 39 20 28 4d  ----..8/12/99 (M
34270 61 63 29 20 52 65 61 72 72 61 6e 67 65 20 70 72  ac) Rearrange pr
34280 6f 6a 65 63 74 73 20 69 6e 20 74 63 6c 4d 61 63  ojects in tclMac
34290 50 72 6f 6a 65 63 74 73 2e 73 65 61 2e 68 71 78  Projects.sea.hqx
342a0 20 73 6f 20 74 68 61 74 20 74 68 65 0a 62 75 69   so that the.bui
342b0 6c 64 20 64 69 72 65 63 74 6f 72 79 20 69 73 20  ld directory is 
342c0 73 65 70 61 72 61 74 65 20 66 72 6f 6d 20 74 68  separate from th
342d0 65 20 73 6f 75 72 63 65 73 2e 20 28 4a 69 6d 20  e sources. (Jim 
342e0 49 6e 67 68 61 6d 29 0a 0a 38 2f 31 32 2f 39 39  Ingham)..8/12/99
342f0 20 28 62 75 67 20 66 69 78 29 20 46 69 78 65 64   (bug fix) Fixed
34300 20 62 75 67 20 69 6e 20 54 63 6c 5f 45 76 61 6c   bug in Tcl_Eval
34310 45 78 20 77 68 65 72 65 20 74 68 65 20 74 65 72  Ex where the ter
34320 6d 4f 66 66 73 65 74 20 77 61 73 20 6e 6f 74 0a  mOffset was not.
34330 62 65 69 6e 67 20 75 70 64 61 74 65 64 20 69 6e  being updated in
34340 20 63 61 73 65 73 20 77 68 65 72 65 20 74 68 65   cases where the
34350 20 65 76 61 6c 75 61 74 69 6f 6e 20 72 65 74 75   evaluation retu
34360 72 6e 65 64 20 61 20 6e 6f 6e 20 54 43 4c 5f 4f  rned a non TCL_O
34370 4b 0a 65 72 72 6f 72 20 63 6f 64 65 2e 20 5b 42  K.error code. [B
34380 75 67 3a 20 32 35 33 35 5d 20 28 73 74 61 6e 74  ug: 2535] (stant
34390 6f 6e 29 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  on)..-----------
343a0 2d 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  ---- Released 8.
343b0 32 2e 30 2c 20 41 75 67 75 73 74 20 31 37 2c 20  2.0, August 17, 
343c0 31 39 39 39 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  1999 -----------
343d0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 39 2f 32  -----------..9/2
343e0 31 2f 39 39 20 28 63 6f 6e 66 69 67 20 66 69 78  1/99 (config fix
343f0 65 73 29 20 66 69 78 65 64 20 73 65 76 65 72 61  es) fixed severa
34400 6c 20 41 49 58 20 63 6f 6e 66 69 67 75 72 61 74  l AIX configurat
34410 69 6f 6e 20 69 73 73 75 65 73 2e 20 20 67 63 63  ion issues.  gcc
34420 20 61 6e 64 0a 74 68 72 65 61 64 69 6e 67 20 6d   and.threading m
34430 61 79 20 73 74 69 6c 6c 20 63 61 75 73 65 20 70  ay still cause p
34440 72 6f 62 6c 65 6d 73 20 6f 6e 20 41 49 58 2e 20  roblems on AIX. 
34450 28 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39  (hobbs)..9/21/99
34460 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
34470 20 65 78 70 72 20 64 6f 75 62 6c 65 2d 65 76 61   expr double-eva
34480 6c 20 70 72 6f 62 6c 65 6d 2e 20 5b 42 75 67 3a  l problem. [Bug:
34490 20 37 33 32 5d 20 28 68 6f 62 62 73 29 0a 0a 39   732] (hobbs)..9
344a0 2f 32 31 2f 39 39 20 28 62 75 67 20 66 69 78 29  /21/99 (bug fix)
344b0 20 66 69 78 65 64 20 73 74 61 74 69 63 20 62 75   fixed static bu
344c0 66 66 65 72 20 6f 76 65 72 66 6c 6f 77 20 70 72  ffer overflow pr
344d0 6f 62 6c 65 6d 2e 20 5b 42 75 67 3a 20 32 34 38  oblem. [Bug: 248
344e0 33 5d 20 28 68 6f 62 62 73 29 0a 0a 39 2f 32 31  3] (hobbs)..9/21
344f0 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66 69  /99 (bug fix) fi
34500 78 65 64 20 65 6e 64 2d 69 6e 74 20 6c 69 6e 73  xed end-int lins
34510 65 72 74 20 69 6e 74 65 72 70 72 65 74 61 74 69  ert interpretati
34520 6f 6e 2e 20 5b 42 75 67 3a 20 32 36 39 33 5d 20  on. [Bug: 2693] 
34530 28 68 6f 62 62 73 29 0a 0a 39 2f 32 31 2f 39 39  (hobbs)..9/21/99
34540 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
34550 20 62 75 67 20 77 68 65 6e 20 73 65 74 74 69 6e   bug when settin
34560 67 20 61 72 72 61 79 20 69 6e 20 6e 6f 6e 2d 65  g array in non-e
34570 78 69 73 74 65 6e 74 0a 6e 61 6d 65 73 70 61 63  xistent.namespac
34580 65 2e 20 5b 42 75 67 3a 20 32 36 31 33 5d 20 28  e. [Bug: 2613] (
34590 68 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65  hobbs)..--- Rele
345a0 61 73 65 64 20 38 2e 32 2e 31 2c 20 4f 63 74 6f  ased 8.2.1, Octo
345b0 62 65 72 20 30 34 2c 20 31 39 39 39 20 2d 2d 2d  ber 04, 1999 ---
345c0 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66   See ChangeLog f
345d0 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a  or details ---..
345e0 31 30 2f 33 30 2f 39 39 20 28 66 65 61 74 75 72  10/30/99 (featur
345f0 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 6e  e enhancement) n
34600 65 77 20 72 65 67 65 78 70 20 65 6e 67 69 6e 65  ew regexp engine
34610 20 66 72 6f 6d 20 48 65 6e 72 79 20 53 70 65 6e   from Henry Spen
34620 63 65 72 0a 77 61 73 20 70 61 74 63 68 65 64 20  cer.was patched 
34630 69 6e 20 2d 20 73 68 6f 75 6c 64 20 67 72 65 61  in - should grea
34640 74 6c 79 20 72 65 64 75 63 65 20 73 74 61 63 6b  tly reduce stack
34650 20 73 70 61 63 65 20 75 73 61 67 65 2e 20 28 73   space usage. (s
34660 70 65 6e 63 65 72 29 0a 0a 31 30 2f 33 30 2f 39  pencer)..10/30/9
34670 39 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65  9 (bug fix) fixe
34680 64 20 50 75 72 69 66 79 20 72 65 70 6f 72 74 65  d Purify reporte
34690 64 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 73 20 69  d memory leaks i
346a0 6e 20 66 69 6e 64 65 78 65 63 75 74 61 62 6c 65  n findexecutable
346b0 0a 74 65 73 74 20 63 6f 6d 6d 61 6e 64 2c 20 54  .test command, T
346c0 63 6c 70 43 72 65 61 74 65 50 72 6f 63 65 73 73  clpCreateProcess
346d0 20 6f 6e 20 55 6e 69 78 2c 20 69 6e 20 68 61 6e   on Unix, in han
346e0 64 6c 69 6e 67 20 6f 66 20 43 20 65 6e 76 69 72  dling of C envir
346f0 6f 6e 20 61 72 72 61 79 2c 0a 61 6e 64 20 69 6e  on array,.and in
34700 20 74 65 73 74 74 68 72 65 61 64 20 63 6f 64 65   testthread code
34710 2e 20 20 4e 6f 20 6d 6f 72 65 20 6b 6e 6f 77 6e  .  No more known
34720 20 28 72 65 70 6f 72 74 65 64 29 20 6d 65 6d 20   (reported) mem 
34730 6c 65 61 6b 73 20 66 6f 72 20 54 63 6c 0a 62 75  leaks for Tcl.bu
34740 69 6c 74 20 75 73 69 6e 67 20 67 63 63 20 6f 6e  ilt using gcc on
34750 20 53 6f 6c 61 72 69 73 20 32 2e 35 2e 31 2e 20   Solaris 2.5.1. 
34760 20 41 6c 73 6f 20 6e 6f 6e 65 20 72 65 70 6f 72   Also none repor
34770 74 65 64 20 66 6f 72 20 54 63 6c 20 6f 6e 20 4e  ted for Tcl on N
34780 54 0a 28 75 73 69 6e 67 20 50 75 72 69 66 79 20  T.(using Purify 
34790 36 2e 30 29 2e 20 28 68 6f 62 62 73 29 0a 0a 31  6.0). (hobbs)..1
347a0 30 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  0/30/99 (bug fix
347b0 29 20 66 69 78 65 64 20 69 6d 70 72 6f 70 65 72  ) fixed improper
347c0 20 62 79 74 65 63 6f 64 65 20 68 61 6e 64 6c 69   bytecode handli
347d0 6e 67 20 6f 66 20 0a 27 65 76 61 6c 20 7b 73 65  ng of .'eval {se
347e0 74 20 61 72 72 61 79 28 24 75 6e 6b 6e 6f 77 6e  t array($unknown
347f0 76 61 72 29 20 35 7d 27 20 28 61 6c 73 6f 20 66  var) 5}' (also f
34800 6f 72 20 69 6e 63 72 29 20 28 68 6f 62 62 73 29  or incr) (hobbs)
34810 0a 0a 31 30 2f 33 30 2f 39 39 20 28 62 75 67 20  ..10/30/99 (bug 
34820 66 69 78 29 20 66 69 78 65 64 20 65 76 65 6e 74  fix) fixed event
34830 2f 69 6f 20 74 68 72 65 61 64 69 6e 67 20 70 72  /io threading pr
34840 6f 62 6c 65 6d 73 20 62 79 20 6d 61 6b 69 6e 67  oblems by making
34850 0a 74 72 69 67 67 65 72 50 69 70 65 20 6e 6f 6e  .triggerPipe non
34860 2d 62 6c 6f 63 6b 69 6e 67 20 28 6e 69 63 6b 20  -blocking (nick 
34870 6b 69 73 73 65 72 62 65 74 68 29 0a 0a 31 30 2f  kisserbeth)..10/
34880 33 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20  30/99 (bug fix) 
34890 66 69 78 65 64 20 54 63 6c 5f 41 70 70 65 6e 64  fixed Tcl_Append
348a0 53 74 72 69 6e 67 73 54 6f 4f 62 6a 56 41 20 61  StringsToObjVA a
348b0 6e 64 20 54 63 6c 5f 41 70 70 65 6e 64 52 65 73  nd Tcl_AppendRes
348c0 75 6c 74 56 41 0a 74 6f 20 6f 6e 6c 79 09 69 74  ultVA.to only.it
348d0 65 72 61 74 65 73 20 6f 6e 63 65 20 6f 76 65 72  erates once over
348e0 20 74 68 65 20 76 61 5f 6c 69 73 74 20 28 61 76   the va_list (av
348f0 6f 69 64 69 6e 67 20 6e 6f 6e 2d 70 6f 72 74 61  oiding non-porta
34900 62 6c 65 20 6d 65 6d 63 70 79 29 2e 0a 28 6a 6f  ble memcpy)..(jo
34910 65 20 65 6e 67 6c 69 73 68 2c 20 68 6f 62 62 73  e english, hobbs
34920 29 0a 0a 31 30 2f 33 30 2f 39 39 20 28 62 75 67  )..10/30/99 (bug
34930 20 66 69 78 29 20 72 65 6d 6f 76 65 64 20 73 61   fix) removed sa
34940 76 65 64 43 68 61 72 20 74 72 69 63 6b 20 69 6e  vedChar trick in
34950 20 74 63 6c 43 6f 6d 70 69 6c 65 2e 63 20 74 68   tclCompile.c th
34960 61 74 20 61 70 70 65 61 72 65 64 0a 74 6f 20 62  at appeared.to b
34970 65 20 63 61 75 73 69 6e 67 20 61 20 73 65 67 76  e causing a segv
34980 20 77 68 65 6e 20 74 68 65 20 6c 69 74 65 72 61   when the litera
34990 6c 20 74 61 62 6c 65 20 77 61 73 20 72 65 6c 65  l table was rele
349a0 61 73 65 64 2e 0a 5b 42 75 67 3a 20 32 34 35 39  ased..[Bug: 2459
349b0 2c 20 32 35 31 35 5d 20 28 44 61 76 69 64 20 57  , 2515] (David W
349c0 68 69 74 65 68 6f 75 73 65 29 0a 0a 31 30 2f 33  hitehouse)..10/3
349d0 30 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66  0/99 (bug fix) f
349e0 69 78 65 64 20 5b 73 74 72 69 6e 67 20 69 6e 64  ixed [string ind
349f0 65 78 5d 20 74 6f 20 72 65 74 75 72 6e 20 42 79  ex] to return By
34a00 74 65 41 72 72 61 79 4f 62 6a 0a 77 68 65 6e 20  teArrayObj.when 
34a10 69 6e 64 65 78 69 6e 67 20 69 6e 74 6f 20 6f 6e  indexing into on
34a20 65 20 28 74 65 73 74 20 63 61 73 65 20 73 74 72  e (test case str
34a30 69 6e 67 2d 35 2e 31 36 29 20 5b 42 75 67 3a 20  ing-5.16) [Bug: 
34a40 32 38 37 31 5d 20 28 68 6f 62 62 73 29 0a 0a 31  2871] (hobbs)..1
34a50 30 2f 33 30 2f 39 39 20 28 62 75 67 20 66 69 78  0/30/99 (bug fix
34a60 29 20 66 69 78 65 73 20 66 6f 72 20 6d 61 63 20  ) fixes for mac 
34a70 55 54 46 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e  UTF filename han
34a80 64 6c 69 6e 67 20 28 69 6e 67 68 61 6d 29 0a 0a  dling (ingham)..
34a90 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e 32  --- Released 8.2
34aa0 2e 32 2c 20 4e 6f 76 65 6d 62 65 72 20 30 34 2c  .2, November 04,
34ab0 20 31 39 39 39 20 2d 2d 2d 20 53 65 65 20 43 68   1999 --- See Ch
34ac0 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65 74 61  angeLog for deta
34ad0 69 6c 73 20 2d 2d 2d 0a 0a 31 31 2f 31 39 2f 39  ils ---..11/19/9
34ae0 39 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  9 (feature enhan
34af0 63 65 6d 65 6e 74 29 20 62 75 67 20 66 69 78 65  cement) bug fixe
34b00 73 20 66 6f 72 20 68 74 74 70 20 70 61 63 6b 61  s for http packa
34b10 67 65 20 61 73 20 77 65 6c 6c 20 61 73 0a 70 61  ge as well as.pa
34b20 74 63 68 20 72 65 71 75 69 72 65 64 20 62 79 20  tch required by 
34b30 54 4c 53 20 28 53 53 4c 29 20 65 78 74 65 6e 73  TLS (SSL) extens
34b40 69 6f 6e 20 74 68 61 74 20 61 64 64 73 20 68 74  ion that adds ht
34b50 74 70 3a 3a 28 75 6e 29 72 65 67 69 73 74 65 72  tp::(un)register
34b60 0a 61 6e 64 20 2d 74 79 70 65 20 74 6f 20 68 74  .and -type to ht
34b70 74 70 3a 3a 67 65 74 75 72 6c 2e 20 20 55 70 27  tp::geturl.  Up'
34b80 64 20 68 74 74 70 20 70 6b 67 20 76 65 72 73 69  d http pkg versi
34b90 6f 6e 20 74 6f 20 32 2e 32 2e 0a 0a 31 31 2f 31  on to 2.2...11/1
34ba0 39 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 72  9/99 (bug fix) r
34bb0 65 6d 6f 76 65 64 20 65 78 74 72 61 20 64 65 63  emoved extra dec
34bc0 72 20 6f 66 20 6e 75 6d 4c 65 76 65 6c 73 20 69  r of numLevels i
34bd0 6e 20 54 63 6c 5f 45 76 61 6c 4f 62 6a 45 78 0a  n Tcl_EvalObjEx.
34be0 74 68 61 74 20 63 6f 75 6c 64 20 63 61 75 73 65  that could cause
34bf0 20 73 65 67 20 66 61 75 6c 74 20 28 6d 6a 61 6e   seg fault (mjan
34c00 73 65 6e 40 77 65 6e 64 74 2e 64 65 29 0a 0a 31  [email protected])..1
34c10 31 2f 31 39 2f 39 39 20 28 62 75 67 20 66 69 78  1/19/99 (bug fix
34c20 65 73 29 20 6e 75 6d 65 72 6f 75 73 20 6d 69 6e  es) numerous min
34c30 6f 72 20 62 69 67 20 66 69 78 65 73 2c 20 69 6e  or big fixes, in
34c40 63 6c 75 64 69 6e 67 20 63 6f 72 72 65 63 74 69  cluding correcti
34c50 6e 67 20 74 68 65 0a 69 6e 73 74 61 6c 6c 61 74  ng the.installat
34c60 69 6f 6e 20 6f 66 20 74 68 65 20 6b 6f 69 38 2d  ion of the koi8-
34c70 72 20 65 6e 63 6f 64 69 6e 67 20 61 6e 64 20 74  r encoding and t
34c80 63 6c 74 65 73 74 31 2e 30 20 6f 6e 20 57 69 6e  cltest1.0 on Win
34c90 64 6f 77 73 2e 0a 0a 31 31 2f 33 30 2f 39 39 20  dows...11/30/99 
34ca0 28 62 75 67 20 66 69 78 29 20 66 69 78 65 73 20  (bug fix) fixes 
34cb0 73 63 61 6e 20 77 68 65 72 65 20 25 5b 2e 2e 5d  scan where %[..]
34cc0 20 64 69 64 6e 27 74 20 6d 61 74 63 68 20 61 6e   didn't match an
34cd0 79 74 68 69 6e 67 0a 0a 31 31 2f 33 30 2f 39 39  ything..11/30/99
34ce0 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
34cf0 20 73 65 74 74 69 6e 67 20 6f 66 20 69 73 4e 6f   setting of isNo
34d00 6e 42 6c 6f 63 6b 69 6e 67 20 66 6c 61 67 20 69  nBlocking flag i
34d10 6e 20 50 69 70 65 42 6c 6f 63 6b 4d 6f 64 65 50  n PipeBlockModeP
34d20 72 6f 63 0a 73 6f 20 79 6f 75 20 63 61 6e 20 6e  roc.so you can n
34d30 6f 77 20 63 6c 6f 73 65 20 61 20 6e 6f 6e 2d 62  ow close a non-b
34d40 6c 6f 63 6b 69 6e 67 20 63 68 61 6e 6e 65 6c 20  locking channel 
34d50 77 69 74 68 6f 75 74 20 77 61 69 74 69 6e 67 2e  without waiting.
34d60 0a 0a 31 31 2f 33 30 2f 39 39 20 28 62 75 67 20  ..11/30/99 (bug 
34d70 77 6f 72 6b 2d 61 72 6f 75 6e 64 29 20 70 72 65  work-around) pre
34d80 76 65 6e 74 65 64 20 74 68 65 20 75 6e 6c 6f 61  vented the unloa
34d90 64 69 6e 67 20 6f 66 20 44 4c 4c 73 20 66 6f 72  ding of DLLs for
34da0 20 55 6e 69 78 20 69 6e 0a 54 63 6c 46 69 6e 61   Unix in.TclFina
34db0 6c 69 7a 65 4c 6f 61 64 2e 20 20 54 68 69 73 20  lizeLoad.  This 
34dc0 73 74 6f 70 73 20 74 68 65 20 73 65 67 20 66 61  stops the seg fa
34dd0 75 6c 74 20 6f 6e 20 65 78 69 74 20 74 68 61 74  ult on exit that
34de0 20 73 6f 6d 65 20 75 73 65 72 73 20 77 6f 75 6c   some users woul
34df0 64 0a 73 65 65 20 28 69 65 20 77 69 74 68 20 6f  d.see (ie with o
34e00 72 61 74 63 6c 29 20 77 68 65 6e 20 75 73 69 6e  ratcl) when usin
34e10 67 20 44 4c 4c 73 20 74 68 61 74 20 64 6f 20 6e  g DLLs that do n
34e20 61 73 74 79 20 74 68 69 6e 67 73 20 6c 69 6b 65  asty things like
34e30 20 72 65 67 69 73 74 65 72 0a 61 74 65 78 69 74   register.atexit
34e40 20 68 61 6e 64 6c 65 72 73 2e 0a 0a 31 32 2f 30   handlers...12/0
34e50 37 2f 39 39 20 28 62 75 67 20 66 69 78 29 20 66  7/99 (bug fix) f
34e60 69 78 65 73 20 66 6f 72 20 27 65 78 70 72 20 2b  ixes for 'expr +
34e70 20 7b 5b 69 6e 63 72 5d 7d 27 20 61 6e 64 20 27   {[incr]}' and '
34e80 65 78 70 72 20 2b 20 7b 5b 65 72 72 6f 72 5d 7d  expr + {[error]}
34e90 27 0a 63 61 73 65 73 20 28 64 69 66 66 65 72 65  '.cases (differe
34ea0 6e 74 20 63 61 75 73 65 73 29 2e 0a 0a 2d 2d 2d  nt causes)...---
34eb0 20 52 65 6c 65 61 73 65 64 20 38 2e 32 2e 33 2c   Released 8.2.3,
34ec0 20 44 65 63 65 6d 62 65 72 20 31 36 2c 20 31 39   December 16, 19
34ed0 39 39 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e 67  99 --- See Chang
34ee0 65 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c 73  eLog for details
34ef0 20 2d 2d 2d 0a 0a 31 39 39 39 2d 30 39 2d 31 34   ---..1999-09-14
34f00 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
34f10 65 6d 65 6e 74 29 20 61 64 64 65 64 20 2d 73 74  ement) added -st
34f20 61 72 74 20 73 77 69 74 63 68 20 74 6f 20 72 65  art switch to re
34f30 67 65 78 70 20 61 6e 64 20 72 65 67 73 75 62 2e  gexp and regsub.
34f40 0a 0a 31 39 39 39 2d 30 39 2d 31 35 20 28 66 65  ..1999-09-15 (fe
34f50 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
34f60 74 29 20 61 64 64 20 27 61 72 72 61 79 20 75 6e  t) add 'array un
34f70 73 65 74 27 20 63 6f 6d 6d 61 6e 64 2e 0a 0a 31  set' command...1
34f80 39 39 39 2d 30 39 2d 31 35 20 28 66 65 61 74 75  999-09-15 (featu
34f90 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  re enhancement) 
34fa0 72 65 77 72 6f 74 65 20 72 75 6e 74 69 6d 65 20  rewrote runtime 
34fb0 6c 69 62 72 61 72 69 65 73 20 74 6f 20 75 73 65  libraries to use
34fc0 20 6e 65 77 0a 73 74 72 69 6e 67 20 66 75 6e 63   new.string func
34fd0 74 69 6f 6e 73 0a 0a 31 39 39 39 2d 30 38 2d 31  tions..1999-08-1
34fe0 38 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e  8 (feature enhan
34ff0 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 27 66  cement) added 'f
35000 69 6c 65 20 63 68 61 6e 6e 65 6c 73 27 20 63 6f  ile channels' co
35010 6d 6d 61 6e 64 2c 20 61 6c 6f 6e 67 20 77 69 74  mmand, along wit
35020 68 0a 54 63 6c 5f 47 65 74 43 68 61 6e 6e 65 6c  h.Tcl_GetChannel
35030 4e 61 6d 65 73 28 45 78 29 20 70 75 62 6c 69 63  Names(Ex) public
35040 20 43 20 41 50 49 73 2e 0a 0a 31 39 39 39 2d 31   C APIs...1999-1
35050 30 2d 31 39 20 28 66 65 61 74 75 72 65 20 65 6e  0-19 (feature en
35060 68 61 6e 63 65 6d 65 6e 74 29 20 65 6e 68 61 6e  hancement) enhan
35070 63 65 64 20 74 63 6c 74 65 73 74 20 70 61 63 6b  ced tcltest pack
35080 61 67 65 0a 0a 31 39 39 39 2d 30 39 2d 31 36 20  age..1999-09-16 
35090 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65  (feature enhance
350a0 6d 65 6e 74 29 20 61 64 64 65 64 20 2d 6d 69 6c  ment) added -mil
350b0 6c 69 73 65 63 6f 6e 64 73 20 73 77 69 74 63 68  liseconds switch
350c0 20 74 6f 20 27 63 6c 6f 63 6b 20 63 6c 69 63 6b   to 'clock click
350d0 73 27 0a 0a 31 39 39 39 2d 31 30 2d 32 38 20 28  s'..1999-10-28 (
350e0 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
350f0 65 6e 74 29 20 61 64 64 65 64 20 73 75 70 70 6f  ent) added suppo
35100 72 74 20 66 6f 72 20 69 6e 6c 69 6e 65 20 27 73  rt for inline 's
35110 63 61 6e 27 0a 0a 31 39 39 39 2d 31 30 2d 32 38  can'..1999-10-28
35120 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
35130 65 6d 65 6e 74 29 20 61 64 64 65 64 20 73 75 70  ement) added sup
35140 70 6f 72 74 20 66 6f 72 20 74 6f 75 63 68 20 66  port for touch f
35150 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 62 79 0a  unctionality by.
35160 65 78 74 65 6e 64 65 64 69 6e 67 20 27 66 69 6c  extendeding 'fil
35170 65 20 61 74 69 6d 65 27 20 61 6e 64 20 27 66 69  e atime' and 'fi
35180 6c 65 20 6d 74 69 6d 65 27 20 74 6f 20 74 61 6b  le mtime' to tak
35190 65 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 69  e an optional ti
351a0 6d 65 20 61 72 67 75 6d 65 6e 74 0a 0a 31 39 39  me argument..199
351b0 39 2d 31 31 2d 32 34 20 28 66 65 61 74 75 72 65  9-11-24 (feature
351c0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64   enhancement) ad
351d0 64 65 64 20 27 66 63 6f 6e 66 69 67 75 72 65 20  ded 'fconfigure 
351e0 24 73 6f 63 6b 20 2d 6c 61 73 74 65 72 72 6f 72  $sock -lasterror
351f0 27 0a 63 6f 6d 6d 61 6e 64 20 74 6f 20 57 69 6e  '.command to Win
35200 64 6f 77 73 20 74 6f 20 71 75 65 72 79 20 74 68  dows to query th
35210 65 20 6c 61 73 74 20 65 72 72 6f 72 20 72 65 63  e last error rec
35220 65 69 76 65 64 20 6f 6e 20 61 20 73 65 72 69 61  eived on a seria
35230 6c 20 73 6f 63 6b 65 74 2e 0a 0a 31 39 39 39 2d  l socket...1999-
35240 31 31 2d 33 30 20 28 62 75 67 20 66 69 78 29 20  11-30 (bug fix) 
35250 66 69 78 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f  fixed handling o
35260 66 20 25 5a 20 6f 6e 20 4e 54 20 66 6f 72 20 74  f %Z on NT for t
35270 69 6d 65 7a 6f 6e 65 73 20 74 68 61 74 20 64 6f  imezones that do
35280 6e 27 74 0a 68 61 76 65 20 44 53 54 0a 0a 31 39  n't.have DST..19
35290 39 39 2d 31 32 2d 30 33 20 28 66 65 61 74 75 72  99-12-03 (featur
352a0 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69  e enhancement) i
352b0 6d 70 72 6f 76 65 64 20 65 72 72 6f 72 20 6d 65  mproved error me
352c0 73 73 61 67 65 20 69 6e 20 62 61 64 20 6f 63 74  ssage in bad oct
352d0 61 6c 20 63 61 73 65 73 0a 61 6e 64 20 69 6d 70  al cases.and imp
352e0 72 6f 70 65 72 20 75 73 65 20 6f 66 20 63 6f 6d  roper use of com
352f0 6d 65 6e 74 73 2e 20 28 68 6f 62 62 73 29 0a 0a  ments. (hobbs)..
35300 31 39 39 39 2d 31 32 2d 30 37 20 28 62 75 67 20  1999-12-07 (bug 
35310 66 69 78 29 20 66 69 78 65 64 20 54 63 6c 5f 53  fix) fixed Tcl_S
35320 63 61 6e 43 6f 75 6e 74 65 64 45 6c 65 6d 65 6e  canCountedElemen
35330 74 20 74 6f 20 6e 6f 74 20 73 74 65 70 0a 62 65  t to not step.be
35340 79 6f 6e 64 20 74 68 65 20 65 6e 64 20 6f 66 20  yond the end of 
35350 74 68 65 20 63 6f 75 6e 74 65 64 20 73 74 72 69  the counted stri
35360 6e 67 0a 0a 31 39 39 39 2d 31 32 2d 30 39 20 28  ng..1999-12-09 (
35370 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
35380 65 6e 74 29 20 72 65 6d 6f 76 65 64 20 61 6c 6c  ent) removed all
35390 20 72 65 66 65 72 65 6e 63 65 73 20 74 6f 20 31   references to 1
353a0 36 20 62 69 74 0a 63 6f 6d 70 61 74 69 62 69 6c  6 bit.compatibil
353b0 69 74 79 20 63 6f 64 65 20 66 6f 72 20 57 69 6e  ity code for Win
353c0 64 6f 77 73 20 28 68 6f 62 62 73 29 0a 0a 31 39  dows (hobbs)..19
353d0 39 39 2d 31 32 2d 31 30 20 28 62 75 67 20 66 69  99-12-10 (bug fi
353e0 78 29 20 72 65 6d 6f 76 65 64 20 63 68 65 63 6b  x) removed check
353f0 20 66 6f 72 20 76 66 6f 72 6b 20 2d 20 54 63 6c   for vfork - Tcl
35400 20 6e 6f 77 20 75 73 65 73 20 6f 6e 6c 79 20 66   now uses only f
35410 6f 72 6b 20 69 6e 0a 65 78 65 63 2e 20 28 68 6f  ork in.exec. (ho
35420 62 62 73 29 0a 0a 31 39 39 39 2d 31 32 2d 31 30  bbs)..1999-12-10
35430 20 28 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 29 20   (optimization) 
35440 63 68 61 6e 67 65 64 20 54 63 6c 5f 43 6f 6e 63  changed Tcl_Conc
35450 61 74 4f 62 6a 20 74 6f 20 72 65 74 75 72 6e 20  atObj to return 
35460 61 20 6c 69 73 74 0a 6f 62 6a 65 63 74 20 77 68  a list.object wh
35470 65 6e 20 69 74 20 72 65 63 65 69 76 65 73 20 61  en it receives a
35480 6c 6c 20 70 75 72 65 20 6c 69 73 74 20 6f 62 6a  ll pure list obj
35490 65 63 74 73 20 61 73 20 69 6e 70 75 74 20 28 75  ects as input (u
354a0 73 65 64 20 62 79 20 27 63 6f 6e 63 61 74 27 29  sed by 'concat')
354b0 2c 0a 61 64 64 65 64 20 6f 70 74 69 6d 69 7a 61  ,.added optimiza
354c0 74 69 6f 6e 73 20 69 6e 20 54 63 6c 5f 45 76 61  tions in Tcl_Eva
354d0 6c 4f 62 6a 45 78 20 66 6f 72 20 70 75 72 65 20  lObjEx for pure 
354e0 6c 69 73 74 20 63 61 73 65 2c 20 61 6e 64 20 6f  list case, and o
354f0 70 74 69 6d 69 7a 65 64 0a 49 4e 53 54 5f 54 52  ptimized.INST_TR
35500 59 5f 43 56 54 5f 54 4f 5f 4e 55 4d 45 52 49 43  Y_CVT_TO_NUMERIC
35510 20 69 6e 20 54 63 6c 45 78 65 63 75 74 65 42 79   in TclExecuteBy
35520 74 65 43 6f 64 65 20 66 6f 72 20 62 6f 6f 6c 65  teCode for boole
35530 61 6e 20 6f 62 6a 65 63 74 73 2e 0a 28 6f 61 6b  an objects..(oak
35540 6c 65 79 2c 20 68 6f 62 62 73 29 0a 0a 31 39 39  ley, hobbs)..199
35550 39 2d 31 32 2d 31 32 20 28 66 65 61 74 75 72 65  9-12-12 (feature
35560 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 65 6e   enhancement) en
35570 68 61 6e 63 65 64 20 67 6c 6f 62 20 63 6f 6d 6d  hanced glob comm
35580 61 6e 64 20 77 69 74 68 20 2d 74 79 70 65 2c 20  and with -type, 
35590 2d 70 61 74 68 2c 0a 2d 64 69 72 65 63 74 6f 72  -path,.-director
355a0 79 20 61 6e 64 20 2d 6a 6f 69 6e 20 73 77 69 74  y and -join swit
355b0 63 68 65 73 2e 20 28 64 61 72 6c 65 79 2c 20 68  ches. (darley, h
355c0 6f 62 62 73 29 0a 0a 31 39 39 39 2d 31 32 2d 32  obbs)..1999-12-2
355d0 31 20 28 62 75 67 20 66 69 78 29 20 63 68 61 6e  1 (bug fix) chan
355e0 67 65 64 20 43 72 65 61 74 65 54 68 72 65 61 64  ged CreateThread
355f0 20 74 6f 20 5f 62 65 67 69 6e 74 68 72 65 61 64   to _beginthread
35600 65 78 20 61 6e 64 0a 45 78 69 74 54 68 72 65 61  ex and.ExitThrea
35610 64 20 74 6f 20 5f 65 6e 64 74 68 72 65 61 64 65  d to _endthreade
35620 78 20 74 6f 20 70 72 65 76 65 6e 74 20 34 4b 20  x to prevent 4K 
35630 6d 65 6d 20 6c 65 61 6b 20 28 67 72 61 76 65 72  mem leak (graver
35640 65 61 75 78 29 0a 0a 31 39 39 39 2d 31 32 2d 32  eaux)..1999-12-2
35650 31 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65  1 (bug fix) fixe
35660 64 20 61 70 70 6c 65 73 63 72 69 70 74 20 66 6f  d applescript fo
35670 72 20 49 31 38 4e 0a 0a 31 39 39 39 2d 31 32 2d  r I18N..1999-12-
35680 32 31 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  21 (feature enha
35690 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 2d  ncement) added -
356a0 75 6e 69 71 75 65 20 6f 70 74 69 6f 6e 20 74 6f  unique option to
356b0 20 6c 73 6f 72 74 20 28 68 6f 62 62 73 29 0a 0a   lsort (hobbs)..
356c0 31 39 39 39 2d 31 32 2d 32 31 20 28 62 75 67 20  1999-12-21 (bug 
356d0 66 69 78 29 20 63 68 61 6e 67 65 64 20 74 68 72  fix) changed thr
356e0 65 61 64 20 69 64 73 20 74 6f 20 6c 6f 6e 67 73  ead ids to longs
356f0 20 28 66 6f 72 20 36 34 62 69 74 20 73 79 73 74   (for 64bit syst
35700 65 6d 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73  ems)..--- Releas
35710 65 64 20 38 2e 33 62 31 2c 20 44 65 63 65 6d 62  ed 8.3b1, Decemb
35720 65 72 20 32 32 2c 20 31 39 39 39 20 2d 2d 2d 20  er 22, 1999 --- 
35730 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f  See ChangeLog fo
35740 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32  r details ---..2
35750 30 30 30 2d 30 31 2d 31 30 20 28 66 65 61 74 75  000-01-10 (featu
35760 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20  re enhancement) 
35770 63 6c 6f 63 6b 20 73 63 61 6e 20 6e 6f 77 20 73  clock scan now s
35780 75 70 70 6f 72 74 73 20 74 68 65 20 63 6f 6d 6d  upports the comm
35790 6f 6e 0a 49 53 4f 20 38 36 30 31 20 64 61 74 65  on.ISO 8601 date
357a0 2f 74 69 6d 65 20 66 6f 72 6d 61 74 73 2e 20 20  /time formats.  
357b0 53 65 65 20 64 6f 63 73 20 66 6f 72 20 64 65 74  See docs for det
357c0 61 69 6c 73 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a  ails. (melski)..
357d0 32 30 30 30 2d 30 31 2d 31 30 20 28 62 75 67 20  2000-01-10 (bug 
357e0 66 69 78 29 20 70 72 65 76 65 6e 74 65 64 20 5c  fix) prevented \
357f0 6f 6f 6f 20 73 75 62 73 74 69 74 75 74 69 6f 6e  ooo substitution
35800 20 66 72 6f 6d 20 61 63 63 65 70 74 69 6e 67 0a   from accepting.
35810 6e 6f 6e 2d 6f 63 74 61 6c 20 64 69 67 69 74 73  non-octal digits
35820 20 5b 42 75 67 3a 20 33 39 37 35 5d 20 28 68 6f   [Bug: 3975] (ho
35830 62 62 73 29 0a 0a 32 30 30 30 2d 30 31 2d 31 31  bbs)..2000-01-11
35840 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
35850 20 69 6d 70 72 6f 70 65 72 20 68 61 6e 64 6c 69   improper handli
35860 6e 67 20 6f 66 20 44 53 54 20 62 79 20 63 6c 6f  ng of DST by clo
35870 63 6b 20 77 68 65 6e 0a 75 73 69 6e 67 20 72 65  ck when.using re
35880 6c 61 74 69 76 65 20 74 69 6d 65 73 20 28 6c 69  lative times (li
35890 6b 65 20 22 31 20 6d 6f 6e 74 68 22 20 6f 72 20  ke "1 month" or 
358a0 22 74 6f 6d 6f 72 72 6f 77 22 29 2e 20 28 6d 65  "tomorrow"). (me
358b0 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 31 2d 31  lski)..2000-01-1
358c0 32 20 28 62 75 67 20 66 69 78 29 20 69 6d 70 72  2 (bug fix) impr
358d0 6f 76 65 64 20 62 75 69 6c 64 20 73 75 70 70 6f  oved build suppo
358e0 72 74 20 66 6f 72 20 54 72 75 36 34 20 76 35 2c  rt for Tru64 v5,
358f0 20 4e 65 74 42 53 44 0a 61 6e 64 20 52 65 6c 69   NetBSD.and Reli
35900 61 6e 74 20 55 6e 69 78 20 28 68 6f 62 62 73 29  ant Unix (hobbs)
35910 0a 0a 32 30 30 30 2d 30 31 2d 31 32 20 28 62 75  ..2000-01-12 (bu
35920 67 20 66 69 78 29 20 6d 61 64 65 20 69 6d 70 6f  g fix) made impo
35930 72 74 65 64 20 63 6f 6d 6d 61 6e 64 73 20 61 6c  rted commands al
35940 73 6f 20 69 6d 70 6f 72 74 20 74 68 65 69 72 0a  so import their.
35950 63 6f 6d 70 69 6c 65 20 70 72 6f 63 65 64 75 72  compile procedur
35960 65 20 28 64 75 66 66 69 6e 29 0a 0a 32 30 30 30  e (duffin)..2000
35970 2d 30 31 2d 31 32 20 28 62 75 67 20 66 69 78 29  -01-12 (bug fix)
35980 20 66 69 78 65 64 20 27 69 6e 66 6f 20 70 72 6f   fixed 'info pro
35990 63 73 20 3a 3a 6e 61 6d 65 73 70 3a 3a 2a 27 20  cs ::namesp::*' 
359a0 62 65 68 61 76 69 6f 72 20 74 6f 20 72 65 74 75  behavior to retu
359b0 72 6e 0a 70 72 6f 63 73 20 69 6e 20 61 20 6e 61  rn.procs in a na
359c0 6d 65 73 70 61 63 65 20 28 64 65 6a 6f 6e 67 29  mespace (dejong)
359d0 0a 0a 32 30 30 30 2d 30 31 2d 31 32 20 28 66 65  ..2000-01-12 (fe
359e0 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
359f0 74 29 20 61 64 64 65 64 20 73 75 70 70 6f 72 74  t) added support
35a00 20 66 6f 72 20 73 65 74 74 69 6e 67 20 70 65 72   for setting per
35a10 6d 69 73 73 69 6f 6e 73 0a 73 79 6d 62 6f 6c 69  missions.symboli
35a20 63 6c 79 20 28 6c 69 6b 65 20 63 68 6d 6f 64 29  cly (like chmod)
35a30 20 69 6e 20 5b 66 69 6c 65 20 61 74 74 72 69 62   in [file attrib
35a40 75 74 65 73 20 24 66 69 6c 65 20 2d 70 65 72 6d  utes $file -perm
35a50 69 73 73 69 6f 6e 73 20 2e 2e 2e 5d 20 28 73 63  issions ...] (sc
35a60 68 6f 65 62 65 6c 29 0a 0a 32 30 30 30 2d 30 31  hoebel)..2000-01
35a70 2d 31 33 20 28 62 75 67 20 66 69 78 29 20 66 69  -13 (bug fix) fi
35a80 78 65 64 20 6c 73 6f 72 74 20 2d 64 69 63 74 69  xed lsort -dicti
35a90 6f 6e 61 72 79 20 70 72 6f 62 6c 65 6d 20 77 68  onary problem wh
35aa0 65 6e 20 73 6f 72 74 69 6e 67 0a 63 68 61 72 61  en sorting.chara
35ab0 63 74 65 72 73 20 62 65 74 77 65 65 6e 20 27 5a  cters between 'Z
35ac0 27 20 61 6e 64 20 27 61 27 20 28 66 6c 61 77 65  ' and 'a' (flawe
35ad0 64 20 75 70 70 65 72 2f 6c 6f 77 65 72 20 63 6f  d upper/lower co
35ae0 6d 70 61 72 69 73 6f 6e 20 6c 6f 67 69 63 29 20  mparison logic) 
35af0 28 6d 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52 65  (melski)..--- Re
35b00 6c 65 61 73 65 64 20 38 2e 33 62 32 2c 20 4a 61  leased 8.3b2, Ja
35b10 6e 75 61 72 79 20 31 33 2c 20 32 30 30 30 20 2d  nuary 13, 2000 -
35b20 2d 2d 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67  -- See ChangeLog
35b30 20 66 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d   for details ---
35b40 0a 0a 32 30 30 30 2d 30 31 2d 31 34 20 28 66 65  ..2000-01-14 (fe
35b50 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
35b60 74 29 20 63 6c 6f 63 6b 20 66 6f 72 6d 61 74 20  t) clock format 
35b70 25 51 20 61 64 64 65 64 2c 20 63 6c 6f 63 6b 20  %Q added, clock 
35b80 73 63 61 6e 20 75 70 64 61 74 65 64 0a 0a 32 30  scan updated..20
35b90 30 30 2d 30 31 2d 32 30 20 28 62 75 67 20 66 69  00-01-20 (bug fi
35ba0 78 29 20 63 6f 72 72 65 63 74 65 64 20 63 6f 6d  x) corrected com
35bb0 70 6c 65 78 20 61 72 72 61 79 20 65 6c 65 6d 20  plex array elem 
35bc0 63 6f 6d 70 69 6c 69 6e 67 20 28 53 70 6a 75 74  compiling (Spjut
35bd0 68 29 0a 0a 32 30 30 30 2d 30 31 2d 32 30 20 28  h)..2000-01-20 (
35be0 62 75 67 20 66 69 78 29 20 6d 61 64 65 20 5b 69  bug fix) made [i
35bf0 6e 66 6f 20 62 6f 64 79 5d 20 61 6c 77 61 79 73  nfo body] always
35c00 20 72 65 74 75 72 6e 20 61 20 73 74 72 69 6e 67   return a string
35c10 20 74 79 70 65 20 61 72 67 2c 0a 74 6f 20 70 72   type arg,.to pr
35c20 65 76 65 6e 74 20 70 6f 73 73 69 62 6c 65 20 6d  event possible m
35c30 69 73 75 73 65 20 6f 66 20 62 79 74 65 63 6f 64  isuse of bytecod
35c40 65 73 20 69 6e 20 74 68 65 20 77 72 6f 6e 67 20  es in the wrong 
35c50 63 6f 6e 74 65 78 74 20 28 68 6f 62 62 73 29 0a  context (hobbs).
35c60 0a 32 30 30 30 2d 30 31 2d 32 30 20 28 62 75 67  .2000-01-20 (bug
35c70 20 66 69 78 65 73 29 20 73 65 76 65 72 61 6c 20   fixes) several 
35c80 66 69 78 65 73 20 74 6f 20 76 61 72 69 61 62 6c  fixes to variabl
35c90 65 20 68 61 6e 64 6c 69 6e 67 20 74 6f 20 70 72  e handling to pr
35ca0 65 76 65 6e 74 0a 70 6f 73 73 69 62 6c 65 20 63  event.possible c
35cb0 72 61 73 68 65 73 2c 20 61 6e 64 20 66 75 72 74  rashes, and furt
35cc0 68 65 72 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f  her definition o
35cd0 66 20 63 6f 72 72 65 63 74 20 62 65 68 61 76 69  f correct behavi
35ce0 6f 72 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30  or (melski)..200
35cf0 30 2d 30 31 2d 32 35 20 28 62 75 67 20 66 69 78  0-01-25 (bug fix
35d00 65 73 29 20 69 6d 70 72 6f 76 65 64 20 51 4e 58  es) improved QNX
35d10 2c 20 55 6c 74 72 69 78 20 61 6e 64 20 4f 53 46  , Ultrix and OSF
35d20 31 20 28 54 72 75 36 34 29 20 63 6f 6e 66 69 67  1 (Tru64) config
35d30 20 61 6e 64 0a 63 6f 6d 70 61 74 69 62 69 6c 69   and.compatibili
35d40 74 79 20 28 65 64 67 65 2c 20 66 75 72 75 6b 61  ty (edge, furuka
35d50 77 61 29 0a 0a 32 30 30 30 2d 30 31 2d 32 35 20  wa)..2000-01-25 
35d60 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64 20  (bug fix) fixed 
35d70 6d 65 6d 20 6c 65 61 6b 20 77 68 65 6e 20 63 61  mem leak when ca
35d80 6c 6c 69 6e 67 20 6c 73 6f 72 74 20 77 69 74 68  lling lsort with
35d90 20 61 20 62 61 64 20 2d 63 6f 6d 6d 61 6e 64 0a   a bad -command.
35da0 61 72 67 75 6d 65 6e 74 20 28 68 6f 62 62 73 29  argument (hobbs)
35db0 0a 0a 32 30 30 30 2d 30 31 2d 32 37 20 28 66 65  ..2000-01-27 (fe
35dc0 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
35dd0 74 29 20 70 61 63 6b 61 67 65 20 6d 65 63 68 61  t) package mecha
35de0 6e 69 73 6d 20 6f 76 65 72 68 61 75 6c 3a 20 63  nism overhaul: c
35df0 68 61 6e 67 65 64 0a 62 65 68 61 76 69 6f 72 20  hanged.behavior 
35e00 6f 66 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74  of pkg_mkIndex t
35e10 6f 20 64 6f 20 2d 64 69 72 65 63 74 20 62 79 20  o do -direct by 
35e20 64 65 66 61 75 6c 74 2c 20 61 64 64 65 64 20 2d  default, added -
35e30 6c 61 7a 79 20 6f 70 74 69 6f 6e 2e 0a 46 69 78  lazy option..Fix
35e40 65 64 20 70 6b 67 5f 6d 6b 49 6e 64 65 78 20 74  ed pkg_mkIndex t
35e50 6f 20 68 61 6e 64 6c 65 20 6f 64 64 20 70 72 6f  o handle odd pro
35e60 63 20 6e 61 6d 65 73 20 61 6e 64 20 61 75 74 6f  c names and auto
35e70 5f 6d 6b 49 6e 64 65 78 20 74 6f 20 75 73 65 20  _mkIndex to use 
35e80 70 6c 61 74 66 6f 72 6d 0a 69 6e 64 65 70 65 6e  platform.indepen
35e90 64 65 6e 74 20 66 69 6c 65 20 70 61 74 68 73 2e  dent file paths.
35ea0 20 20 4f 74 68 65 72 20 66 69 78 65 73 20 66 6f    Other fixes fo
35eb0 72 20 6f 64 64 20 70 61 63 6b 61 67 65 20 71 75  r odd package qu
35ec0 69 72 6b 73 2e 20 20 41 64 64 65 64 0a 3a 3a 70  irks.  Added.::p
35ed0 6b 67 20 6e 61 6d 65 73 70 61 63 65 20 61 6e 64  kg namespace and
35ee0 20 3a 3a 70 6b 67 3a 3a 63 72 65 61 74 65 20 68   ::pkg::create h
35ef0 65 6c 70 65 72 20 66 75 6e 63 74 69 6f 6e 2e 20  elper function. 
35f00 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30  (melski)..2000-0
35f10 32 2d 30 31 20 28 62 75 67 20 66 69 78 29 20 66  2-01 (bug fix) f
35f20 69 78 65 64 20 70 72 6f 62 6c 65 6d 20 77 68 65  ixed problem whe
35f30 72 65 20 68 74 74 70 20 50 4f 53 54 20 77 6f 75  re http POST wou
35f40 6c 64 20 73 65 6e 64 20 6f 6e 65 20 65 78 74 72  ld send one extr
35f50 61 0a 6e 65 77 6c 69 6e 65 20 28 76 61 73 69 6c  a.newline (vasil
35f60 6a 65 76 69 63 29 0a 0a 32 30 30 30 2d 30 32 2d  jevic)..2000-02-
35f70 30 32 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  02 (feature enha
35f80 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 64  ncement) added d
35f90 6f 63 73 20 66 6f 72 20 6e 65 77 20 72 65 67 65  ocs for new rege
35fa0 78 70 20 2d 69 6e 6c 69 6e 65 20 61 6e 64 0a 2d  xp -inline and.-
35fb0 61 6c 6c 20 73 77 69 74 63 68 65 73 2e 20 28 68  all switches. (h
35fc0 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 32 2d 30  obbs)..2000-02-0
35fd0 38 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72  8 (bug fix) corr
35fe0 65 63 74 65 64 20 68 61 6e 64 6c 69 6e 67 20 6f  ected handling o
35ff0 66 20 22 6e 65 78 74 20 6d 6f 6e 74 68 6e 61 6d  f "next monthnam
36000 65 22 20 69 6e 20 63 6c 6f 63 6b 20 73 63 61 6e  e" in clock scan
36010 0a 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d  .(melski)..2000-
36020 30 32 2d 30 39 20 28 62 75 67 20 66 69 78 29 20  02-09 (bug fix) 
36030 72 65 73 74 6f 72 65 64 20 4d 61 63 20 73 6f 75  restored Mac sou
36040 72 63 65 20 74 6f 20 62 75 69 6c 64 20 72 65 61  rce to build rea
36050 64 69 6e 65 73 73 20 61 6e 64 20 70 72 65 76 65  diness and preve
36060 6e 74 65 64 0a 6d 61 63 20 70 61 6e 69 63 20 66  nted.mac panic f
36070 72 6f 6d 20 61 6e 20 65 72 72 6f 72 20 77 68 65  rom an error whe
36080 6e 20 63 6c 6f 73 69 6e 67 20 61 6e 20 61 73 79  n closing an asy
36090 6e 63 20 73 6f 63 6b 65 74 20 28 73 74 65 66 66  nc socket (steff
360a0 65 6e 2c 20 69 6e 67 68 61 6d 29 0a 0a 32 30 30  en, ingham)..200
360b0 30 2d 30 32 2d 31 30 20 28 66 65 61 74 75 72 65  0-02-10 (feature
360c0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 69 6d   enhancement) im
360d0 70 72 6f 76 65 64 20 65 72 72 6f 72 20 72 65 70  proved error rep
360e0 6f 72 74 69 6e 67 20 66 6f 72 20 66 61 69 6c 65  orting for faile
360f0 64 0a 6c 6f 61 64 73 20 6f 6e 20 57 69 6e 64 6f  d.loads on Windo
36100 77 73 20 28 64 65 6a 6f 6e 67 2c 20 68 6f 62 62  ws (dejong, hobb
36110 73 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64  s)..--- Released
36120 20 38 2e 33 2e 30 2c 20 46 65 62 72 75 61 72 79   8.3.0, February
36130 20 31 30 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65   10, 2000 --- Se
36140 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20  e ChangeLog for 
36150 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30  details ---..200
36160 30 2d 30 33 20 28 62 75 67 20 66 69 78 65 73 2c  0-03 (bug fixes,
36170 20 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65   feature enhance
36180 6d 65 6e 74 29 20 6f 76 65 72 68 61 75 6c 20 6f  ment) overhaul o
36190 66 20 68 74 74 70 20 70 61 63 6b 61 67 65 20 66  f http package f
361a0 6f 72 0a 70 72 6f 70 65 72 20 68 61 6e 64 6c 69  or.proper handli
361b0 6e 67 20 6f 66 20 61 73 79 6e 63 20 63 61 6c 6c  ng of async call
361c0 62 61 63 6b 73 20 28 6e 65 77 20 6f 70 74 69 6f  backs (new optio
361d0 6e 73 29 2c 20 76 65 72 73 69 6f 6e 20 69 73 20  ns), version is 
361e0 6e 6f 77 20 61 74 20 32 2e 33 0a 28 74 61 6d 68  now at 2.3.(tamh
361f0 61 6e 6b 61 72 2c 20 77 65 6c 63 68 29 0a 0a 32  ankar, welch)..2
36200 30 30 30 2d 30 33 20 28 70 65 72 66 6f 72 6d 61  000-03 (performa
36210 6e 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  nce enhancement)
36220 20 73 70 65 65 64 75 70 20 69 6e 20 57 69 6e 64   speedup in Wind
36230 6f 77 73 20 66 69 6c 65 6e 61 6d 65 20 68 61 6e  ows filename han
36240 64 6c 69 6e 67 20 28 6e 65 77 6d 61 6e 29 0a 61  dling (newman).a
36250 6e 64 20 3d 3d 2f 21 3d 20 65 6d 70 74 79 20 73  nd ==/!= empty s
36260 74 72 69 6e 67 20 69 6e 20 65 78 70 72 73 2e 20  tring in exprs. 
36270 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 33  (hobbs)..2000-03
36280 2d 32 37 20 28 62 75 67 20 66 69 78 29 20 61 64  -27 (bug fix) ad
36290 64 65 64 20 75 6e 69 71 27 69 6e 67 20 74 65 73  ded uniq'ing tes
362a0 74 20 74 6f 20 6e 61 6d 65 73 70 61 63 65 20 65  t to namespace e
362b0 78 70 6f 72 74 20 6c 69 73 74 20 74 6f 0a 70 72  xport list to.pr
362c0 65 76 65 6e 74 20 75 6e 6e 65 63 65 73 73 61 72  event unnecessar
362d0 79 20 6d 65 6d 20 67 72 6f 77 74 68 20 28 68 6f  y mem growth (ho
362e0 62 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39  bbs)..2000-03-29
362f0 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
36300 20 6d 65 6d 20 6c 65 61 6b 20 77 68 65 6e 20 72   mem leak when r
36310 65 70 65 61 74 65 64 6c 79 20 73 6f 75 72 63 69  epeatedly sourci
36320 6e 67 20 74 68 65 20 73 61 6d 65 0a 62 79 74 65  ng the same.byte
36330 63 6f 6d 70 69 6c 65 64 20 28 74 62 63 29 20 63  compiled (tbc) c
36340 6f 64 65 20 72 65 70 65 61 74 65 64 6c 79 20 61  ode repeatedly a
36350 63 72 6f 73 73 20 64 69 66 66 65 72 65 6e 74 20  cross different 
36360 69 6e 74 65 72 70 72 65 74 65 72 73 20 28 68 6f  interpreters (ho
36370 62 62 73 29 0a 0a 32 30 30 30 2d 30 33 2d 32 39  bbs)..2000-03-29
36380 20 28 63 6f 6e 66 69 67 20 65 6e 68 61 6e 63 65   (config enhance
36390 6d 65 6e 74 29 20 69 6d 70 72 6f 76 65 64 20 62  ment) improved b
363a0 75 69 6c 64 20 73 75 70 70 6f 72 74 20 66 6f 72  uild support for
363b0 20 67 63 63 2f 6d 69 6e 67 77 20 6f 6e 0a 57 69   gcc/mingw on.Wi
363c0 6e 64 6f 77 73 20 28 6e 69 6a 74 6d 61 6e 73 2c  ndows (nijtmans,
363d0 20 68 6f 62 62 73 29 20 61 6e 64 20 61 64 64 65   hobbs) and adde
363e0 64 20 52 50 4d 20 74 61 72 67 65 74 20 28 6d 65  d RPM target (me
363f0 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 33 2d 33  lski)..2000-03-3
36400 31 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72  1 (bug fix) corr
36410 65 63 74 65 64 20 64 61 74 61 20 65 6e 63 6f 64  ected data encod
36420 69 6e 67 20 70 72 6f 62 6c 65 6d 20 77 68 65 6e  ing problem when
36430 20 75 73 69 6e 67 0a 22 65 78 65 63 20 3c 3c 20   using."exec << 
36440 24 64 61 74 61 22 20 63 6f 6e 73 74 72 75 63 74  $data" construct
36450 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d   (melski)..2000-
36460 30 34 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  04 (feature enha
36470 6e 63 65 6d 65 6e 74 29 20 6f 76 65 72 68 61 75  ncement) overhau
36480 6c 20 6f 66 20 74 68 72 65 61 64 69 6e 67 20 6d  l of threading m
36490 65 63 68 61 6e 69 73 6d 20 74 6f 20 62 65 74 74  echanism to bett
364a0 65 72 0a 73 75 70 70 6f 72 74 20 74 63 6c 20 6c  er.support tcl l
364b0 65 76 65 6c 20 74 68 72 65 61 64 20 63 6f 6d 6d  evel thread comm
364c0 61 6e 64 20 28 6e 65 77 20 41 50 49 73 20 54 63  and (new APIs Tc
364d0 6c 5f 43 6f 6e 64 69 74 69 6f 6e 46 69 6e 61 6c  l_ConditionFinal
364e0 69 7a 65 2c 0a 54 63 6c 5f 4d 75 74 65 78 46 69  ize,.Tcl_MutexFi
364f0 6e 61 6c 69 7a 65 2c 20 54 63 6c 5f 43 72 65 61  nalize, Tcl_Crea
36500 74 65 54 68 72 65 61 64 2c 20 65 74 63 2c 20 61  teThread, etc, a
36510 6c 6c 20 64 6f 63 73 20 69 6e 20 54 68 72 65 61  ll docs in Threa
36520 64 2e 33 29 2e 0a 28 6b 75 70 72 69 65 73 2c 20  d.3)..(kupries, 
36530 67 72 61 76 65 72 61 75 78 29 0a 54 68 69 73 20  graveraux).This 
36540 65 6e 61 62 6c 65 73 20 74 68 65 20 74 63 6c 20  enables the tcl 
36550 6c 65 76 65 6c 20 74 68 72 65 61 64 20 65 78 74  level thread ext
36560 65 6e 73 69 6f 6e 2e 20 28 77 65 6c 63 68 29 0a  ension. (welch).
36570 0a 32 30 30 30 2d 30 34 2d 31 30 20 28 62 75 67  .2000-04-10 (bug
36580 20 66 69 78 29 20 66 69 78 65 64 20 69 6e 66 69   fix) fixed infi
36590 6e 69 74 65 20 6c 6f 6f 70 20 63 61 73 65 20 69  nite loop case i
365a0 6e 20 72 65 67 65 78 70 20 2d 61 6c 6c 20 28 6d  n regexp -all (m
365b0 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 34 2d  elski)..2000-04-
365c0 31 33 20 28 63 6f 6e 66 69 67 20 65 6e 68 61 6e  13 (config enhan
365d0 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 73 75  cement) added su
365e0 70 70 6f 72 74 20 66 6f 72 20 2d 2d 65 6e 61 62  pport for --enab
365f0 6c 65 2d 36 34 62 69 74 2d 76 69 73 0a 53 70 61  le-64bit-vis.Spa
36600 72 63 20 74 61 72 67 65 74 2e 20 28 68 6f 62 62  rc target. (hobb
36610 73 29 0a 0a 32 30 30 30 2d 30 34 2d 31 38 20 28  s)..2000-04-18 (
36620 62 75 67 20 66 69 78 29 20 6d 6f 76 65 64 20 74  bug fix) moved t
36630 63 6c 4c 69 62 72 61 72 79 50 61 74 68 20 74 6f  clLibraryPath to
36640 20 74 68 72 65 61 64 2d 6c 6f 63 61 6c 20 73 74   thread-local st
36650 6f 72 61 67 65 20 74 6f 20 66 69 78 0a 70 6f 73  orage to fix.pos
36660 73 69 62 6c 65 20 72 61 63 65 20 63 6f 6e 64 69  sible race condi
36670 74 69 6f 6e 20 6f 6e 20 4d 50 20 6d 61 63 68 69  tion on MP machi
36680 6e 65 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30  nes (hobbs)..200
36690 30 2d 30 34 2d 31 38 20 28 63 6f 6e 66 69 67 20  0-04-18 (config 
366a0 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64 64  enhancement) add
366b0 65 64 20 4d 61 63 4f 53 20 58 20 62 75 69 6c 64  ed MacOS X build
366c0 20 74 61 72 67 65 74 20 61 6e 64 0a 74 63 6c 4c   target and.tclL
366d0 6f 61 64 44 79 6c 64 2e 63 20 64 6c 20 74 79 70  oadDyld.c dl typ
366e0 65 2e 20 28 73 61 6e 63 68 65 7a 29 0a 0a 32 30  e. (sanchez)..20
366f0 30 30 2d 30 34 2d 32 33 20 28 62 75 67 20 66 69  00-04-23 (bug fi
36700 78 29 20 73 65 76 65 72 61 6c 20 4d 61 63 20 73  x) several Mac s
36710 6f 63 6b 65 74 20 66 69 78 65 73 20 28 69 6e 67  ocket fixes (ing
36720 68 61 6d 29 0a 0a 32 30 30 30 2d 30 34 2d 32 34  ham)..2000-04-24
36730 20 28 62 75 67 20 66 69 78 29 20 66 69 78 65 64   (bug fix) fixed
36740 20 68 61 6e 67 20 69 6e 20 74 68 72 65 61 64 65   hang in threade
36750 64 20 55 6e 69 78 20 63 61 73 65 20 77 68 65 6e  d Unix case when
36760 20 62 61 63 6b 67 72 6f 75 6e 64 65 64 0a 65 78   backgrounded.ex
36770 65 63 20 70 72 6f 63 65 73 73 20 77 61 73 20 72  ec process was r
36780 75 6e 6e 69 6e 67 20 28 64 65 6a 6f 6e 67 29 0a  unning (dejong).
36790 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20 38 2e  .--- Released 8.
367a0 33 2e 31 2c 20 41 70 72 69 6c 20 32 36 2c 20 32  3.1, April 26, 2
367b0 30 30 30 20 2d 2d 2d 20 53 65 65 20 43 68 61 6e  000 --- See Chan
367c0 67 65 4c 6f 67 20 66 6f 72 20 64 65 74 61 69 6c  geLog for detail
367d0 73 20 2d 2d 2d 0a 0a 32 30 30 30 2d 30 34 2d 32  s ---..2000-04-2
367e0 36 20 28 64 6f 63 20 66 69 78 29 20 75 70 64 61  6 (doc fix) upda
367f0 74 65 64 2f 61 64 64 65 64 20 64 6f 63 75 6d 65  ted/added docume
36800 6e 74 61 74 69 6f 6e 20 66 6f 72 20 6d 61 6e 79  ntation for many
36810 20 41 50 49 27 73 20 61 6e 64 0a 63 6f 6d 6d 61   API's and.comma
36820 6e 64 73 20 28 6d 65 6c 73 6b 69 29 0a 0a 32 30  nds (melski)..20
36830 30 30 2d 30 35 2d 30 32 20 28 66 65 61 74 75 72  00-05-02 (featur
36840 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61  e enhancement) a
36850 64 64 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  dded support for
36860 20 6a 6f 69 6e 61 62 6c 65 20 74 68 72 65 61 64   joinable thread
36870 73 3b 0a 65 78 74 65 6e 64 65 64 20 41 50 49 27  s;.extended API'
36880 73 20 66 6f 72 20 63 68 61 6e 6e 65 6c 73 20 74  s for channels t
36890 6f 20 61 6c 6c 6f 77 20 63 68 61 6e 6e 65 6c 73  o allow channels
368a0 20 74 6f 20 6d 6f 76 65 20 62 65 74 77 65 65 6e   to move between
368b0 20 74 68 72 65 61 64 73 0a 28 6b 75 70 72 69 65   threads.(kuprie
368c0 73 29 0a 0a 32 30 30 30 2d 30 35 2d 30 32 20 28  s)..2000-05-02 (
368d0 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d  feature enhancem
368e0 65 6e 74 29 20 63 68 61 6e 67 65 64 20 65 72 72  ent) changed err
368f0 6f 72 20 72 65 74 75 72 6e 20 66 6f 72 20 70 72  or return for pr
36900 6f 63 65 64 75 72 65 73 0a 77 69 74 68 20 69 6e  ocedures.with in
36910 63 6f 72 72 65 63 74 20 61 72 67 73 20 74 6f 20  correct args to 
36920 62 65 20 6c 69 6b 65 20 74 68 65 20 54 63 6c 5f  be like the Tcl_
36930 57 72 6f 6e 67 4e 75 6d 41 72 67 73 20 41 50 49  WrongNumArgs API
36940 2c 20 77 69 74 68 20 61 20 22 77 72 6f 6e 67 0a  , with a "wrong.
36950 23 20 61 72 67 73 3a 20 2e 2e 2e 22 20 6d 65 73  # args: ..." mes
36960 73 61 67 65 20 70 72 69 6e 74 65 64 2c 20 77 69  sage printed, wi
36970 74 68 20 61 6e 20 61 72 67 73 20 6c 69 73 74 20  th an args list 
36980 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 35  (hobbs)..2000-05
36990 2d 30 38 20 28 66 65 61 74 75 72 65 20 65 6e 68  -08 (feature enh
369a0 61 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20  ancement) added 
369b0 5b 61 72 72 61 79 20 73 74 61 74 69 73 74 69 63  [array statistic
369c0 73 5d 20 63 6f 6d 6d 61 6e 64 0a 0a 32 30 30 30  s] command..2000
369d0 2d 30 35 2d 30 38 20 28 70 65 72 66 6f 72 6d 61  -05-08 (performa
369e0 6e 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  nce enhancement)
369f0 20 72 65 77 72 6f 74 65 20 54 63 6c 5f 53 74 72   rewrote Tcl_Str
36a00 69 6e 67 43 61 73 65 4d 61 74 63 68 0a 61 6c 67  ingCaseMatch.alg
36a10 6f 72 69 74 68 6d 20 66 6f 72 20 62 65 74 74 65  orithm for bette
36a20 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 3b 20 74  r performance; t
36a30 68 69 73 20 61 66 66 65 63 74 73 20 74 68 65 20  his affects the 
36a40 5b 73 74 72 69 6e 67 20 6d 61 74 63 68 5d 0a 63  [string match].c
36a50 6f 6d 6d 61 6e 64 3b 20 61 64 64 65 64 20 22 65  ommand; added "e
36a60 71 22 20 61 6e 64 20 22 6e 65 22 20 6f 70 65 72  q" and "ne" oper
36a70 61 6e 64 73 20 74 6f 20 65 78 70 72 2c 20 66 6f  ands to expr, fo
36a80 72 20 74 65 73 74 69 6e 67 0a 73 74 72 69 6e 67  r testing.string
36a90 20 65 71 75 61 6c 69 74 79 20 61 6e 64 20 69 6e   equality and in
36aa0 65 71 75 61 6c 69 74 79 20 28 68 6f 62 62 73 29  equality (hobbs)
36ab0 0a 0a 32 30 30 30 2d 30 35 2d 30 39 20 28 66 65  ..2000-05-09 (fe
36ac0 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
36ad0 74 29 20 65 78 74 65 6e 64 65 64 20 5b 6c 73 65  t) extended [lse
36ae0 61 72 63 68 5d 20 74 6f 20 73 75 70 70 6f 72 74  arch] to support
36af0 20 73 6f 72 74 65 64 0a 6c 69 73 74 20 73 65 61   sorted.list sea
36b00 72 63 68 65 73 20 61 6e 64 20 74 79 70 65 64 20  rches and typed 
36b10 6c 69 73 74 20 73 65 61 72 63 68 65 73 20 28 6d  list searches (m
36b20 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 35 2d  elski)..2000-05-
36b30 31 30 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  10 (feature enha
36b40 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 5b  ncement) added [
36b50 6e 61 6d 65 73 70 61 63 65 20 65 78 69 73 74 73  namespace exists
36b60 5d 20 63 6f 6d 6d 61 6e 64 0a 28 64 61 72 6c 65  ] command.(darle
36b70 79 29 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20 28  y)..2000-05-18 (
36b80 62 75 69 6c 64 20 65 6e 68 61 6e 63 65 6d 65 6e  build enhancemen
36b90 74 29 20 61 64 64 65 64 20 73 75 70 70 6f 72 74  t) added support
36ba0 20 66 6f 72 20 6d 69 6e 67 77 20 63 6f 6d 70 69   for mingw compi
36bb0 6c 65 20 65 6e 76 20 61 6e 64 0a 63 72 6f 73 73  le env and.cross
36bc0 2d 63 6f 6d 70 69 6c 69 6e 67 20 28 64 65 6a 6f  -compiling (dejo
36bd0 6e 67 29 0a 0a 32 30 30 30 2d 30 35 2d 31 38 20  ng)..2000-05-18 
36be0 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
36bf0 74 65 64 20 63 6c 6f 63 6b 20 67 72 61 6d 6d 61  ted clock gramma
36c00 72 20 74 6f 20 70 72 6f 70 65 72 6c 79 20 68 61  r to properly ha
36c10 6e 64 6c 65 20 74 68 65 0a 22 61 67 6f 22 20 6b  ndle the."ago" k
36c20 65 79 77 6f 72 64 20 77 68 65 6e 20 69 74 20 66  eyword when it f
36c30 6f 6c 6c 6f 77 73 20 6d 75 6c 74 69 70 6c 65 20  ollows multiple 
36c40 72 65 6c 61 74 69 76 65 20 75 6e 69 74 20 73 70  relative unit sp
36c50 65 63 69 66 69 65 72 73 0a 28 6d 65 6c 73 6b 69  ecifiers.(melski
36c60 29 0a 0a 32 30 30 30 2d 30 35 2d 32 32 20 28 63  )..2000-05-22 (c
36c70 6f 6d 70 69 6c 65 20 66 69 78 29 20 74 79 70 65  ompile fix) type
36c80 20 63 61 73 74 20 63 6c 65 61 6e 75 70 73 20 28   cast cleanups (
36c90 64 65 6a 6f 6e 67 29 0a 0a 32 30 30 30 2d 30 35  dejong)..2000-05
36ca0 2d 32 33 20 28 70 65 72 66 6f 72 6d 61 6e 63 65  -23 (performance
36cb0 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 64   enhancement) ad
36cc0 64 65 64 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65  ded byte-compile
36cd0 64 0a 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e  d.implementation
36ce0 20 6f 66 20 5b 72 65 74 75 72 6e 5d 20 63 6f 6d   of [return] com
36cf0 6d 61 6e 64 20 61 6e 64 20 5b 73 74 72 69 6e 67  mand and [string
36d00 5d 20 63 6f 6d 6d 61 6e 64 20 28 6d 65 6c 73 6b  ] command (melsk
36d10 69 29 0a 0a 32 30 30 30 2d 30 35 2d 32 36 20 28  i)..2000-05-26 (
36d20 70 65 72 66 6f 72 6d 61 6e 63 65 20 65 6e 68 61  performance enha
36d30 6e 63 65 6d 65 6e 74 29 20 65 78 74 65 6e 64 65  ncement) extende
36d40 64 20 62 79 74 65 2d 63 6f 6d 70 69 6c 65 64 20  d byte-compiled 
36d50 5b 73 74 72 69 6e 67 5d 0a 63 6f 6d 6d 61 6e 64  [string].command
36d60 20 77 69 74 68 20 73 75 70 70 6f 72 74 20 66 6f   with support fo
36d70 72 20 5b 73 74 72 69 6e 67 20 63 6f 6d 70 61 72  r [string compar
36d80 65 2f 69 6e 64 65 78 2f 6d 61 74 63 68 5d 20 28  e/index/match] (
36d90 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 35 2d  hobbs)..2000-05-
36da0 32 37 20 28 66 65 61 74 75 72 65 20 65 6e 68 61  27 (feature enha
36db0 6e 63 65 6d 65 6e 74 29 20 61 64 64 65 64 20 61  ncement) added a
36dc0 62 69 6c 69 74 79 20 74 6f 20 73 65 74 20 5b 69  bility to set [i
36dd0 6e 66 6f 20 73 63 72 69 70 74 5d 0a 72 65 74 75  nfo script].retu
36de0 72 6e 20 76 61 6c 75 65 20 28 5b 69 6e 66 6f 20  rn value ([info 
36df0 73 63 72 69 70 74 20 3f 6e 65 77 46 69 6c 65 4e  script ?newFileN
36e00 61 6d 65 3f 5d 29 20 28 77 65 6c 63 68 29 0a 0a  ame?]) (welch)..
36e10 32 30 30 30 2d 30 35 2d 33 31 20 28 66 65 61 74  2000-05-31 (feat
36e20 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  ure enhancement)
36e30 20 61 64 64 65 64 20 73 75 70 70 6f 72 74 20 66   added support f
36e40 6f 72 20 72 65 67 65 78 70 20 61 6e 64 20 65 78  or regexp and ex
36e50 61 63 74 0a 70 61 74 74 65 72 6e 20 6d 61 74 63  act.pattern matc
36e60 68 69 6e 67 20 66 6f 72 20 5b 61 72 72 61 79 20  hing for [array 
36e70 6e 61 6d 65 73 5d 20 28 67 61 7a 65 74 74 61 29  names] (gazetta)
36e80 0a 0a 32 30 30 30 2d 30 35 2d 33 31 20 28 66 65  ..2000-05-31 (fe
36e90 61 74 75 72 65 20 65 6e 68 61 6e 63 65 6d 65 6e  ature enhancemen
36ea0 74 29 20 61 64 64 65 64 20 2d 6e 6f 63 6f 6d 70  t) added -nocomp
36eb0 6c 61 69 6e 20 61 6e 64 20 2d 2d 20 66 6c 61 67  lain and -- flag
36ec0 73 20 74 6f 0a 5b 75 6e 73 65 74 5d 20 74 6f 20  s to.[unset] to 
36ed0 61 6c 6c 6f 77 20 66 6f 72 20 73 69 6c 65 6e 74  allow for silent
36ee0 20 75 6e 73 65 74 20 6f 70 65 72 61 74 69 6f 6e   unset operation
36ef0 20 28 68 6f 62 62 73 29 0a 0a 2d 2d 2d 20 52 65   (hobbs)..--- Re
36f00 6c 65 61 73 65 64 20 38 2e 34 61 31 2c 20 4a 75  leased 8.4a1, Ju
36f10 6e 65 20 36 2c 20 32 30 30 30 20 2d 2d 2d 20 53  ne 6, 2000 --- S
36f20 65 65 20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72  ee ChangeLog for
36f30 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30   details ---..20
36f40 30 30 2d 30 35 2d 32 39 20 28 62 75 67 20 66 69  00-05-29 (bug fi
36f50 78 29 20 63 6f 72 72 65 63 74 65 64 20 72 65 73  x) corrected res
36f60 6f 75 72 63 65 20 63 6c 65 61 6e 75 70 20 69 6e  ource cleanup in
36f70 20 68 74 74 70 20 65 72 72 6f 72 20 63 61 73 65   http error case
36f80 73 2e 0a 49 6d 70 72 6f 76 65 64 20 68 61 6e 64  s..Improved hand
36f90 6c 69 6e 67 20 6f 66 20 65 72 72 6f 72 20 63 61  ling of error ca
36fa0 73 65 73 20 69 6e 20 68 74 74 70 2e 20 28 74 61  ses in http. (ta
36fb0 6d 68 61 6e 6b 61 72 29 0a 0a 32 30 30 30 2d 30  mhankar)..2000-0
36fc0 37 20 28 66 65 61 74 75 72 65 20 72 65 77 72 69  7 (feature rewri
36fd0 74 65 29 20 63 6f 6d 70 6c 65 74 65 20 72 65 77  te) complete rew
36fe0 72 69 74 65 20 6f 66 20 74 68 65 20 54 63 6c 20  rite of the Tcl 
36ff0 49 4f 20 63 68 61 6e 6e 65 6c 20 73 75 62 73 79  IO channel subsy
37000 73 74 65 6d 0a 74 6f 20 63 6f 72 72 65 63 74 20  stem.to correct 
37010 70 72 6f 62 6c 65 6d 73 20 28 68 61 6e 67 73 2c  problems (hangs,
37020 20 63 6f 72 65 20 64 75 6d 70 73 29 20 77 69 74   core dumps) wit
37030 68 20 74 68 65 20 69 6e 69 74 69 61 6c 20 73 74  h the initial st
37040 61 63 6b 65 64 20 63 68 61 6e 6e 65 6c 0a 69 6d  acked channel.im
37050 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2e 20 20 54  plementation.  T
37060 68 65 20 6e 65 77 20 73 79 73 74 65 6d 20 68 61  he new system ha
37070 73 20 6d 61 6e 79 20 6d 6f 72 65 20 74 65 73 74  s many more test
37080 73 20 66 6f 72 20 72 6f 62 75 73 74 6e 65 73 73  s for robustness
37090 20 61 6e 64 0a 73 63 61 6c 61 62 69 6c 69 74 79   and.scalability
370a0 2e 20 20 54 68 65 72 65 20 61 72 65 20 6e 65 77  .  There are new
370b0 20 43 20 41 50 49 73 20 28 73 65 65 20 54 63 6c   C APIs (see Tcl
370c0 5f 43 72 65 61 74 65 43 68 61 6e 6e 65 6c 29 2c  _CreateChannel),
370d0 20 62 75 74 20 6f 6e 6c 79 0a 73 74 61 63 6b 65   but only.stacke
370e0 64 20 63 68 61 6e 6e 65 6c 20 64 72 69 76 65 72  d channel driver
370f0 73 20 61 72 65 20 61 66 66 65 63 74 65 64 20 28  s are affected (
37100 69 65 3a 20 54 4c 53 2c 20 54 72 66 2c 20 69 6f  ie: TLS, Trf, io
37110 67 74 29 2e 20 20 54 68 65 20 69 6f 67 74 0a 65  gt).  The iogt.e
37120 78 74 65 6e 73 69 6f 6e 20 68 61 73 20 62 65 65  xtension has bee
37130 6e 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 63  n added to the c
37140 6f 72 65 20 74 65 73 74 20 63 6f 64 65 20 74 6f  ore test code to
37150 20 74 65 73 74 20 74 68 65 20 73 79 73 74 65 6d   test the system
37160 2e 0a 28 68 6f 62 62 73 2c 20 6b 75 70 72 69 65  ..(hobbs, kuprie
37170 73 29 0a 09 2a 2a 2a 2a 20 50 4f 54 45 4e 54 49  s)..**** POTENTI
37180 41 4c 20 49 4e 43 4f 4d 50 41 54 41 42 49 4c 49  AL INCOMPATABILI
37190 54 59 20 2a 2a 2a 2a 0a 0a 32 30 30 30 2d 30 37  TY ****..2000-07
371a0 20 28 62 75 69 6c 64 20 69 6d 70 72 6f 76 65 6d   (build improvem
371b0 65 6e 74 73 29 20 63 6c 65 61 6e 75 70 20 6f 66  ents) cleanup of
371c0 20 74 68 65 20 6d 61 6b 65 66 69 6c 65 73 20 61   the makefiles a
371d0 6e 64 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72  nd configure scr
371e0 69 70 74 73 0a 74 6f 20 63 6f 72 72 65 63 74 20  ipts.to correct 
371f0 73 75 70 70 6f 72 74 20 66 6f 72 20 62 75 69 6c  support for buil
37200 64 69 6e 67 20 75 6e 64 65 72 20 67 63 63 20 66  ding under gcc f
37210 6f 72 20 57 69 6e 64 6f 77 73 2e 20 28 64 65 6a  or Windows. (dej
37220 6f 6e 67 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37  ong)..2000-08-07
37230 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65   (bug fix) corre
37240 63 74 65 64 20 73 69 7a 65 6f 66 20 65 72 72 6f  cted sizeof erro
37250 72 20 69 6e 20 54 63 6c 5f 47 65 74 49 6e 64 65  r in Tcl_GetInde
37260 78 46 72 6f 6d 4f 62 6a 53 74 72 75 63 74 2e 0a  xFromObjStruct..
37270 28 70 65 72 6b 69 6e 73 29 0a 0a 32 30 30 30 2d  (perkins)..2000-
37280 30 38 2d 30 37 20 28 62 75 67 20 66 69 78 29 20  08-07 (bug fix) 
37290 63 6f 72 72 65 63 74 20 6f 66 66 2d 62 79 2d 6f  correct off-by-o
372a0 6e 65 20 65 72 72 6f 72 20 69 6e 20 48 69 73 74  ne error in Hist
372b0 49 6e 64 65 78 2c 20 77 68 69 63 68 20 77 61 73  Index, which was
372c0 0a 63 61 75 73 69 6e 67 20 5b 68 69 73 74 6f 72  .causing [histor
372d0 79 20 72 65 64 6f 5d 20 74 6f 20 73 74 61 72 74  y redo] to start
372e0 20 69 74 73 20 73 65 61 72 63 68 20 61 74 20 74   its search at t
372f0 68 65 20 77 72 6f 6e 67 20 65 76 65 6e 74 20 69  he wrong event i
37300 6e 64 65 78 2e 20 28 6d 65 6c 73 6b 69 29 0a 0a  ndex. (melski)..
37310 32 30 30 30 2d 30 38 2d 30 37 20 28 62 75 67 20  2000-08-07 (bug 
37320 66 69 78 29 20 63 6f 72 72 65 63 74 65 64 20 73  fix) corrected s
37330 65 74 6c 6f 63 61 6c 65 20 63 61 6c 6c 73 20 66  etlocale calls f
37340 6f 72 20 58 49 4d 20 73 75 70 70 6f 72 74 20 61  or XIM support a
37350 6e 64 20 6c 6f 63 61 6c 65 0a 69 73 73 75 65 73  nd locale.issues
37360 20 69 6e 20 73 74 61 72 74 75 70 2e 20 28 74 61   in startup. (ta
37370 6b 61 68 61 73 68 69 29 0a 0a 32 30 30 30 2d 30  kahashi)..2000-0
37380 38 2d 30 37 20 28 62 75 67 20 66 69 78 29 20 63  8-07 (bug fix) c
37390 6f 72 72 65 63 74 20 63 6f 64 65 20 74 6f 20 68  orrect code to h
373a0 61 6e 64 6c 65 20 6c 6f 63 61 6c 65 20 73 70 65  andle locale spe
373b0 63 69 66 69 63 20 72 65 74 75 72 6e 20 76 61 6c  cific return val
373c0 75 65 73 0a 66 72 6f 6d 20 73 74 72 66 74 69 6d  ues.from strftim
373d0 65 2c 20 69 66 20 61 6e 79 2e 20 28 77 61 67 6e  e, if any. (wagn
373e0 65 72 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20  er)..2000-08-07 
373f0 28 62 75 67 20 66 69 78 29 20 74 77 65 61 6b 65  (bug fix) tweake
37400 64 20 67 72 61 6d 6d 61 72 20 74 6f 20 70 72 6f  d grammar to pro
37410 70 65 72 6c 79 20 68 61 6e 64 6c 65 20 74 68 65  perly handle the
37420 20 22 61 67 6f 22 20 6b 65 79 77 6f 72 64 0a 77   "ago" keyword.w
37430 68 65 6e 20 69 74 20 66 6f 6c 6c 6f 77 73 20 6d  hen it follows m
37440 75 6c 74 69 70 6c 65 20 72 65 6c 61 74 69 76 65  ultiple relative
37450 20 75 6e 69 74 20 73 70 65 63 69 66 69 65 72 73   unit specifiers
37460 2c 20 61 73 20 69 6e 0a 22 32 20 64 61 79 73 20  , as in."2 days 
37470 32 20 68 6f 75 72 73 20 61 67 6f 22 2e 20 28 6d  2 hours ago". (m
37480 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 38 2d  elski)..2000-08-
37490 30 37 20 28 64 6f 63 20 66 69 78 65 73 29 20 6e  07 (doc fixes) n
374a0 75 6d 65 72 6f 75 73 20 64 6f 63 20 66 69 78 65  umerous doc fixe
374b0 73 20 74 6f 20 63 6f 72 72 65 63 74 20 53 45 45  s to correct SEE
374c0 20 41 4c 53 4f 20 61 6e 64 20 4e 41 4d 45 0a 73   ALSO and NAME.s
374d0 65 63 74 69 6f 6e 73 2e 20 28 65 6e 67 6c 69 73  ections. (englis
374e0 68 29 0a 0a 32 30 30 30 2d 30 38 2d 30 37 20 28  h)..2000-08-07 (
374f0 62 75 67 20 66 69 78 29 20 6e 65 77 20 6d 61 6e  bug fix) new man
37500 20 70 61 67 65 73 20 6d 65 6d 6f 72 79 2e 6e 2c   pages memory.n,
37510 20 54 43 4c 5f 4d 45 4d 5f 44 45 42 55 47 2e 33   TCL_MEM_DEBUG.3
37520 2c 20 49 6e 69 74 2e 33 20 61 6e 64 0a 44 75 6d  , Init.3 and.Dum
37530 70 41 63 74 69 76 65 4d 65 6d 6f 72 79 2e 33 2e  pActiveMemory.3.
37540 20 28 6d 65 6c 73 6b 69 29 0a 0a 2d 2d 2d 20 52   (melski)..--- R
37550 65 6c 65 61 73 65 64 20 38 2e 33 2e 32 2c 20 41  eleased 8.3.2, A
37560 75 67 75 73 74 20 39 2c 20 32 30 30 30 20 2d 2d  ugust 9, 2000 --
37570 2d 20 53 65 65 20 43 68 61 6e 67 65 4c 6f 67 20  - See ChangeLog 
37580 66 6f 72 20 64 65 74 61 69 6c 73 20 2d 2d 2d 0a  for details ---.
37590 0a 32 30 30 30 2d 30 36 20 74 68 72 75 20 32 30  .2000-06 thru 20
375a0 30 30 2d 31 31 20 28 62 75 69 6c 64 20 69 6d 70  00-11 (build imp
375b0 72 6f 76 65 6d 65 6e 74 73 29 20 41 64 64 65 64  rovements) Added
375c0 20 73 75 70 70 6f 72 74 20 66 6f 72 20 6d 69 6e   support for min
375d0 67 77 20 28 67 63 63 20 6f 6e 0a 57 69 6e 64 6f  gw (gcc on.Windo
375e0 77 73 29 2c 20 41 49 58 2d 35 20 61 6e 64 20 57  ws), AIX-5 and W
375f0 69 6e 36 34 20 62 75 69 6c 64 73 20 28 64 65 6a  in64 builds (dej
37600 6f 6e 67 2c 20 68 6f 62 62 73 29 0a 0a 32 30 30  ong, hobbs)..200
37610 30 2d 30 36 2d 32 33 20 28 66 65 61 74 75 72 65  0-06-23 (feature
37620 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29 20 61 62   enhancement) ab
37630 69 6c 69 74 79 20 74 6f 20 75 73 65 20 54 63 6c  ility to use Tcl
37640 5f 4f 62 6a 20 2a 73 20 61 73 20 68 61 73 68 20  _Obj *s as hash 
37650 6b 65 79 73 20 28 64 75 66 66 69 6e 29 0a 0a 32  keys (duffin)..2
37660 30 30 30 2d 30 36 2d 32 39 20 28 6e 65 77 20 66  000-06-29 (new f
37670 65 61 74 75 72 65 73 29 20 61 64 64 65 64 20 5b  eatures) added [
37680 6d 63 6d 61 78 5d 20 61 6e 64 20 5b 6d 63 6d 73  mcmax] and [mcms
37690 65 74 5d 20 61 6e 64 20 65 78 74 65 6e 64 65 64  et] and extended
376a0 20 5b 75 6e 6b 6e 6f 77 6e 5d 20 69 6e 0a 6d 73   [unknown] in.ms
376b0 67 63 61 74 20 70 61 63 6b 61 67 65 20 28 64 75  gcat package (du
376c0 70 65 72 76 61 6c 2c 20 6b 72 6f 6e 65 2c 20 6e  perval, krone, n
376d0 65 6c 73 6f 6e 29 0a 3d 3e 20 6d 73 67 63 61 74  elson).=> msgcat
376e0 20 31 2e 31 0a 0a 32 30 30 30 2d 30 38 20 74 68   1.1..2000-08 th
376f0 72 75 20 32 30 30 30 2d 30 39 20 61 64 64 65 64  ru 2000-09 added
37700 20 74 63 6c 50 6c 61 74 44 65 63 6c 73 2e 68 20   tclPlatDecls.h 
37710 74 6f 20 64 65 66 61 75 6c 74 20 69 6e 73 74 61  to default insta
37720 6c 6c 20 28 6d 65 6c 73 6b 69 2c 20 68 6f 62 62  ll (melski, hobb
37730 73 29 0a 0a 32 30 30 30 2d 30 38 2d 32 34 20 28  s)..2000-08-24 (
37740 6e 65 77 20 66 65 61 74 75 72 65 29 20 45 6e 68  new feature) Enh
37750 61 6e 63 65 64 20 74 72 61 63 65 20 73 79 6e 74  anced trace synt
37760 61 78 20 74 6f 20 61 64 64 3a 0a 09 74 72 61 63  ax to add:..trac
37770 65 20 7b 61 64 64 7c 72 65 6d 6f 76 65 7c 6c 69  e {add|remove|li
37780 73 74 7d 20 7b 76 61 72 69 61 62 6c 65 7c 63 6f  st} {variable|co
37790 6d 6d 61 6e 64 7d 20 6e 61 6d 65 20 6f 70 73 20  mmand} name ops 
377a0 63 6f 6d 6d 61 6e 64 0a 28 64 61 72 6c 65 79 2c  command.(darley,
377b0 20 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30   melski)..2000-0
377c0 39 2d 30 36 20 28 63 72 6f 73 73 2d 70 6c 61 74  9-06 (cross-plat
377d0 66 6f 72 6d 20 66 65 61 74 75 72 65 29 20 53 65  form feature) Se
377e0 74 20 5e 5a 20 28 5c 33 32 29 20 61 73 20 64 65  t ^Z (\32) as de
377f0 66 61 75 6c 74 20 45 4f 46 20 63 68 61 72 2e 20  fault EOF char. 
37800 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 30 39  (hobbs)..2000-09
37810 2d 30 37 20 70 61 72 74 69 61 6c 20 66 69 78 20  -07 partial fix 
37820 66 6f 72 20 62 75 67 20 32 34 36 30 20 74 6f 20  for bug 2460 to 
37830 70 72 65 76 65 6e 74 20 65 78 65 63 20 6d 65 6d  prevent exec mem
37840 20 6c 65 61 6b 20 6f 6e 20 57 69 6e 64 6f 77 73   leak on Windows
37850 20 66 6f 72 20 74 68 65 0a 63 6f 6d 6d 6f 6e 20   for the.common 
37860 63 61 73 65 20 28 67 72 61 76 65 72 65 61 75 78  case (gravereaux
37870 29 0a 0a 32 30 30 30 2d 30 39 2d 31 34 20 49 6d  )..2000-09-14 Im
37880 70 72 6f 76 65 64 20 73 74 72 69 6e 67 20 61 6c  proved string al
37890 6c 6f 63 61 74 69 6f 6e 20 67 72 6f 77 74 68 20  location growth 
378a0 66 6f 72 20 6c 61 72 67 65 20 73 74 72 69 6e 67  for large string
378b0 73 20 28 68 69 6e 74 65 72 6d 61 79 65 72 2c 0a  s (hintermayer,.
378c0 6d 65 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39  melski)..2000-09
378d0 2d 31 34 20 4e 65 77 20 6e 6f 6e 2d 70 61 6e 69  -14 New non-pani
378e0 63 27 69 6e 67 20 6d 65 6d 20 61 6c 6c 6f 63 61  c'ing mem alloca
378f0 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 54  tion functions T
37900 63 6c 5f 41 74 74 65 6d 70 74 41 6c 6c 6f 63 2c  cl_AttemptAlloc,
37910 0a 54 63 6c 5f 41 74 74 65 6d 70 74 52 65 61 6c  .Tcl_AttemptReal
37920 6c 6f 63 2c 20 54 63 6c 5f 41 74 74 65 6d 70 74  loc, Tcl_Attempt
37930 53 65 74 4f 62 6a 4c 65 6e 67 74 68 20 28 6d 65  SetObjLength (me
37940 6c 73 6b 69 29 0a 0a 32 30 30 30 2d 30 39 2d 32  lski)..2000-09-2
37950 30 20 28 6e 65 77 20 66 65 61 74 75 72 65 73 29  0 (new features)
37960 20 63 6f 6d 70 6c 65 74 65 6c 79 20 6e 65 77 2c   completely new,
37970 20 65 6e 68 61 6e 63 65 64 20 73 79 6e 74 61 78   enhanced syntax
37980 20 69 6e 20 74 63 6c 74 65 73 74 20 70 61 63 6b   in tcltest pack
37990 61 67 65 2e 0a 42 61 63 6b 77 61 72 64 73 20 63  age..Backwards c
379a0 6f 6d 70 61 74 61 62 6c 65 20 77 69 74 68 20 74  ompatable with t
379b0 63 6c 74 65 73 74 20 76 31 2e 20 28 68 6f 6d 29  cltest v1. (hom)
379c0 0a 3d 3e 20 74 63 6c 74 65 73 74 20 32 2e 30 0a  .=> tcltest 2.0.
379d0 0a 32 30 30 30 2d 30 39 2d 32 37 20 28 62 75 67  .2000-09-27 (bug
379e0 20 66 69 78 29 20 66 69 78 65 64 20 61 20 62 75   fix) fixed a bu
379f0 67 20 69 6e 74 72 6f 64 75 63 65 64 20 62 79 20  g introduced by 
37a00 61 20 70 61 72 74 69 61 6c 20 66 69 78 20 69 6e  a partial fix in
37a10 20 38 2e 33 2e 32 20 74 68 61 74 0a 64 69 64 6e   8.3.2 that.didn
37a20 27 74 20 73 65 74 20 6e 6f 6e 42 6c 6f 63 6b 69  't set nonBlocki
37a30 6e 67 20 63 6f 72 72 65 63 74 6c 79 20 77 68 65  ng correctly whe
37a40 6e 20 72 65 73 65 74 74 69 6e 67 20 74 68 65 20  n resetting the 
37a50 66 6c 61 67 73 20 66 6f 72 20 74 68 65 20 77 72  flags for the wr
37a60 69 74 65 0a 73 69 64 65 20 28 6d 65 6d 20 6c 65  ite.side (mem le
37a70 61 6b 29 20 43 6f 72 72 65 63 74 20 6d 65 6d 20  ak) Correct mem 
37a80 6c 65 61 6b 20 69 6e 20 63 68 61 6e 6e 65 6c 73  leak in channels
37a90 20 77 68 65 6e 20 73 74 61 74 65 50 74 72 20 77   when statePtr w
37aa0 61 73 20 72 65 6c 65 61 73 65 64 0a 28 68 6f 62  as released.(hob
37ab0 62 73 29 0a 0a 32 30 30 30 2d 30 39 2d 32 39 20  bs)..2000-09-29 
37ac0 28 62 75 67 20 66 69 78 29 20 63 6f 72 72 65 63  (bug fix) correc
37ad0 74 65 64 20 72 65 70 6f 72 74 69 6e 67 20 6f 66  ted reporting of
37ae0 20 73 70 61 63 65 20 70 61 72 69 74 79 20 6f 6e   space parity on
37af0 20 57 69 6e 64 6f 77 73 20 28 45 61 73 6f 6e 29   Windows (Eason)
37b00 0a 0a 32 30 30 30 2d 31 30 2d 30 36 20 28 62 75  ..2000-10-06 (bu
37b10 67 20 66 69 78 29 20 63 6f 72 72 65 63 74 65 64  g fix) corrected
37b20 20 5b 66 69 6c 65 20 63 68 61 6e 6e 65 6c 73 5d   [file channels]
37b30 20 74 6f 20 6f 6e 6c 79 20 72 65 74 75 72 6e 20   to only return 
37b40 63 68 61 6e 6e 65 6c 73 20 69 6e 0a 74 68 65 20  channels in.the 
37b50 63 75 72 72 65 6e 74 20 69 6e 74 65 72 70 72 65  current interpre
37b60 74 65 72 20 28 68 6f 62 62 73 29 0a 0a 32 30 30  ter (hobbs)..200
37b70 30 2d 31 30 2d 32 30 20 28 70 65 72 66 6f 72 6d  0-10-20 (perform
37b80 61 6e 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74  ance enhancement
37b90 29 20 63 61 6c 6c 20 73 74 61 74 20 6f 6e 6c 79  ) call stat only
37ba0 20 77 68 65 6e 20 6e 65 63 65 73 73 61 72 79 20   when necessary 
37bb0 69 6e 20 27 67 6c 6f 62 27 20 74 6f 0a 73 70 65  in 'glob' to.spe
37bc0 65 64 20 75 70 20 63 6f 6d 6d 61 6e 64 20 73 69  ed up command si
37bd0 67 6e 69 66 69 63 61 6e 74 6c 79 20 69 6e 20 62  gnificantly in b
37be0 61 73 65 20 63 61 73 65 73 20 28 68 6f 62 62 73  ase cases (hobbs
37bf0 29 0a 0a 32 30 30 30 2d 31 30 2d 32 37 20 46 69  )..2000-10-27 Fi
37c00 78 65 64 20 6d 65 6d 20 6c 65 61 6b 20 69 6e 20  xed mem leak in 
37c10 54 63 6c 5f 43 72 65 61 74 65 43 68 61 6e 6e 65  Tcl_CreateChanne
37c20 6c 2e 20 52 65 2d 70 75 72 69 66 69 65 64 20 63  l. Re-purified c
37c30 6f 72 65 20 76 69 61 20 74 65 73 74 0a 73 75 69  ore via test.sui
37c40 74 65 73 2e 20 20 28 68 6f 62 62 73 29 0a 0a 32  tes.  (hobbs)..2
37c50 30 30 30 2d 31 30 2d 33 30 20 28 6e 65 77 20 66  000-10-30 (new f
37c60 65 61 74 75 72 65 29 20 61 64 64 20 22 6a 61 5f  eature) add "ja_
37c70 4a 50 2e 65 75 63 4a 50 22 20 6d 61 70 20 74 6f  JP.eucJP" map to
37c80 20 22 65 75 63 2d 6a 70 22 20 65 6e 63 6f 64 69   "euc-jp" encodi
37c90 6e 67 20 28 74 61 6b 61 68 61 73 68 69 29 0a 0a  ng (takahashi)..
37ca0 32 30 30 30 2d 31 31 2d 30 31 20 28 6d 65 6d 20  2000-11-01 (mem 
37cb0 6c 65 61 6b 29 20 43 6f 72 72 65 63 74 65 64 20  leak) Corrected 
37cc0 65 78 63 65 73 73 69 76 65 20 6d 65 6d 20 75 73  excessive mem us
37cd0 65 20 6f 66 20 69 6e 66 6f 20 65 78 69 73 74 73  e of info exists
37ce0 20 6f 6e 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65   on a.non-existe
37cf0 6e 74 20 61 72 72 61 79 20 65 6c 65 6d 65 6e 74  nt array element
37d00 20 28 68 6f 62 62 73 29 0a 0a 32 30 30 30 2d 31   (hobbs)..2000-1
37d10 31 2d 30 32 20 28 62 75 67 20 66 69 78 29 20 43  1-02 (bug fix) C
37d20 6f 72 72 65 63 74 65 64 20 73 68 61 72 69 6e 67  orrected sharing
37d30 20 6f 66 20 74 63 6c 4c 69 62 72 61 72 79 50 61   of tclLibraryPa
37d40 74 68 20 69 6e 20 74 68 72 65 61 64 65 64 0a 65  th in threaded.e
37d50 6e 76 69 72 6f 6e 6d 65 6e 74 20 28 67 72 61 76  nvironment (grav
37d60 65 72 65 61 75 78 29 0a 0a 32 30 30 30 2d 31 31  ereaux)..2000-11
37d70 2d 30 33 20 28 6e 65 77 20 66 65 61 74 75 72 65  -03 (new feature
37d80 29 20 54 63 6c 5f 53 65 74 4d 61 69 6e 4c 6f 6f  ) Tcl_SetMainLoo
37d90 70 20 65 6e 61 62 6c 65 73 20 64 65 66 69 6e 69  p enables defini
37da0 6e 67 20 61 6e 20 65 76 65 6e 74 20 6c 6f 6f 70  ng an event loop
37db0 20 66 6f 72 0a 74 63 6c 73 68 2e 20 20 54 68 69   for.tclsh.  Thi
37dc0 73 20 65 6e 61 62 6c 65 73 20 54 6b 20 61 73 20  s enables Tk as 
37dd0 61 20 74 72 75 6c 79 20 6c 6f 61 64 61 62 6c 65  a truly loadable
37de0 20 70 61 63 6b 61 67 65 2e 20 28 68 6f 62 62 73   package. (hobbs
37df0 29 0a 0a 2d 2d 2d 20 52 65 6c 65 61 73 65 64 20  )..--- Released 
37e00 38 2e 34 61 32 2c 20 4e 6f 76 65 6d 62 65 72 20  8.4a2, November 
37e10 33 2c 20 32 30 30 30 20 2d 2d 2d 20 53 65 65 20  3, 2000 --- See 
37e20 43 68 61 6e 67 65 4c 6f 67 20 66 6f 72 20 64 65  ChangeLog for de
37e30 74 61 69 6c 73 20 2d 2d 2d 0a 0a 32 30 30 30 2d  tails ---..2000-
37e40 30 39 2d 32 37 20 28 62 75 67 20 66 69 78 29 20  09-27 (bug fix) 
37e50 66 69 78 65 64 20 61 20 62 75 67 20 69 6e 74 72  fixed a bug intr
37e60 6f 64 75 63 65 64 20 62 79 20 61 20 70 61 72 74  oduced by a part
37e70 69 61 6c 20 66 69 78 20 69 6e 20 38 2e 33 2e 32  ial fix in 8.3.2
37e80 20 74 68 61 74 0a 64 69 64 6e 27 74 20 73 65 74   that.didn't set
37e90 20 6e 6f 6e 42 6c 6f 63 6b 69 6e 67 20 63 6f 72   nonBlocking cor
37ea0 72 65 63 74 6c 79 20 77 68 65 6e 20 72 65 73 65  rectly when rese
37eb0 74 74 69 6e 67 20 74 68 65 20 66 6c 61 67 73 20  tting the flags 
37ec0 66 6f 72 20 74 68 65 20 77 72 69 74 65 0a 73 69  for the write.si
37ed0 64 65 20 28 6d 65 6d 20 6c 65 61 6b 29 20 43 6f  de (mem leak) Co
37ee0 72 72 65 63 74 20 6d 65 6d 20 6c 65 61 6b 20 69  rrect mem leak i
37ef0 6e 20 63 68 61 6e 6e 65 6c 73 20 77 68 65 6e 20  n channels when 
37f00 73 74 61 74 65 50 74 72 20 77 61 73 20 72 65 6c  statePtr was rel
37f10 65 61 73 65 64 0a 28 68 6f 62 62 73 29 0a 0a 32  eased.(hobbs)..2
37f20 30 30 30 2d 30 39 2d 32 39 20 28 62 75 67 20 66  000-09-29 (bug f
37f30 69 78 29 20 63 6f 72 72 65 63 74 65 64 20 72 65  ix) corrected re
37f40 70 6f 72 74 69 6e 67 20 6f 66 20 73 70 61 63 65  porting of space
37f50 20 70 61 72 69 74 79 20 6f 6e 20 57 69 6e 64 6f   parity on Windo
37f60 77 73 20 28 45 61 73 6f 6e 29 0a 0a 32 30 30 30  ws (Eason)..2000
37f70 2d 31 30 2d 30 36 20 28 62 75 67 20 66 69 78 29  -10-06 (bug fix)
37f80 20 63 6f 72 72 65 63 74 65 64 20 5b 66 69 6c 65   corrected [file
37f90 20 63 68 61 6e 6e 65 6c 73 5d 20 74 6f 20 6f 6e   channels] to on
37fa0 6c 79 20 72 65 74 75 72 6e 20 63 68 61 6e 6e 65  ly return channe
37fb0 6c 73 20 69 6e 0a 74 68 65 20 63 75 72 72 65 6e  ls in.the curren
37fc0 74 20 69 6e 74 65 72 70 72 65 74 65 72 20 28 68  t interpreter (h
37fd0 6f 62 62 73 29 0a 0a 32 30 30 30 2d 31 30 2d 32  obbs)..2000-10-2
37fe0 30 20 28 70 65 72 66 6f 72 6d 61 6e 63 65 20 65  0 (performance e
37ff0 6e 68 61 6e 63 65 6d 65 6e 74 29 20 63 61 6c 6c  nhancement) call
38000 20 73 74 61 74 20 6f 6e 6c 79 20 77 68 65 6e 20   stat only when 
38010 6e 65 63 65 73 73 61 72 79 20 69 6e 20 27 67 6c  necessary in 'gl
38020 6f 62 27 20 74 6f 0a 73 70 65 65 64 20 75 70 20  ob' to.speed up 
38030 63 6f 6d 6d 61 6e 64 20 73 69 67 6e 69 66 69 63  command signific
38040 61 6e 74 6c 79 20 69 6e 20 62 61 73 65 20 63 61  antly in base ca
38050 73 65 73 20 28 68 6f 62 62 73 29 0a 0a 32 30 30  ses (hobbs)..200
38060 30 2d 31 31 2d 30 31 20 28 6d 65 6d 20 6c 65 61  0-11-01 (mem lea
38070 6b 29 20 43 6f 72 72 65 63 74 65 64 20 65 78 63  k) Corrected exc
38080 65 73 73 69 76 65 20 6d 65 6d 20 75 73 65 20 6f  essive mem use o
38090 66 20 69 6e 66 6f 20 65 78 69 73 74 73 20 6f 6e  f info exists on
380a0 20 61 0a 6e 6f 6e 2d 65 78 69 73 74 65 6e 74 20   a.non-existent 
380b0 61 72 72 61 79 20 65 6c 65 6d 65 6e 74 20 28 68  array element (h
380c0 6f 62 62 73 29 0a 0a 32 30 30 30 2d 31 31 2d 30  obbs)..2000-11-0
380d0 32 20 28 62 75 67 20 66 69 78 29 20 43 6f 72 72  2 (bug fix) Corr
380e0 65 63 74 65 64 20 73 68 61 72 69 6e 67 20 6f 66  ected sharing of
380f0 20 74 63 6c 4c 69 62 72 61 72 79 50 61 74 68 20   tclLibraryPath 
38100 69 6e 20 74 68 72 65 61 64 65 64 0a 65 6e 76 69  in threaded.envi
38110 72 6f 6e 6d 65 6e 74 20 28 67 72 61 76 65 72 65  ronment (gravere
38120 61 75 78 29 0a 0a 32 30 30 30 2d 31 31 2d 32 33  aux)..2000-11-23
38130 20 28 6d 65 6d 20 6c 65 61 6b 29 20 66 69 78 65   (mem leak) fixe
38140 64 20 70 6f 74 65 6e 74 69 61 6c 20 6d 65 6d 6f  d potential memo
38150 72 79 20 6c 65 61 6b 20 69 6e 20 65 72 72 6f 72  ry leak in error
38160 20 63 61 73 65 20 6f 66 20 6c 73 6f 72 74 0a 28   case of lsort.(
38170 66 65 6c 6c 6f 77 73 29 0a 0a 32 30 30 30 2d 31  fellows)..2000-1
38180 32 2d 30 39 20 28 66 65 61 74 75 72 65 20 65 6e  2-09 (feature en
38190 68 61 6e 63 65 6d 65 6e 74 29 20 63 68 61 6e 67  hancement) chang
381a0 65 64 20 25 6f 20 61 6e 64 20 25 78 20 74 6f 20  ed %o and %x to 
381b0 75 73 65 20 73 74 72 74 6f 75 6c 20 69 6e 73 74  use strtoul inst
381c0 65 61 64 0a 6f 66 20 73 74 72 74 6f 6c 20 74 6f  ead.of strtol to
381d0 20 63 6f 72 72 65 63 74 6c 79 20 70 72 65 73 65   correctly prese
381e0 72 76 65 20 73 63 61 6e 3c 3e 66 6f 72 6d 61 74  rve scan<>format
381f0 20 63 6f 6e 76 65 72 73 69 6f 6e 20 6f 66 20 6c   conversion of l
38200 61 72 67 65 20 69 6e 74 65 67 65 72 73 0a 28 68  arge integers.(h
38210 6f 62 62 73 29 0a 46 69 78 65 64 20 68 61 6e 64  obbs).Fixed hand
38220 6c 69 6e 67 20 6f 66 20 7b 21 3c 62 6f 6f 6c 65  ling of {!<boole
38230 61 6e 3e 7d 20 69 6e 20 65 78 70 72 65 73 73 69  an>} in expressi
38240 6f 6e 73 20 28 68 6f 62 62 73 2c 20 66 65 6c 6c  ons (hobbs, fell
38250 6f 77 73 29 0a 0a 32 30 30 30 2d 31 32 2d 31 34  ows)..2000-12-14
38260 20 28 66 65 61 74 75 72 65 20 65 6e 68 61 6e 63   (feature enhanc
38270 65 6d 65 6e 74 29 20 69 6d 70 72 6f 76 65 64 20  ement) improved 
38280 28 73 29 72 61 6e 64 20 66 6f 72 20 36 34 2d 62  (s)rand for 64-b
38290 69 74 20 70 6c 61 74 66 6f 72 6d 73 0a 28 70 6f  it platforms.(po
382a0 72 74 65 72 29 0a 0a 32 30 30 31 2d 30 31 2d 30  rter)..2001-01-0
382b0 34 20 28 62 75 67 20 66 69 78 29 20 63 6f 72 72  4 (bug fix) corr
382c0 65 63 74 65 64 20 70 61 72 73 69 6e 67 20 6f 66  ected parsing of
382d0 20 24 74 63 6c 5f 6c 69 62 50 61 74 68 20 61 74   $tcl_libPath at
382e0 20 73 74 61 72 74 75 70 20 6f 6e 0a 57 69 6e 64   startup on.Wind
382f0 6f 77 73 20 28 70 6f 72 74 65 72 29 0a 0a 32 30  ows (porter)..20
38300 30 31 2d 30 31 2d 33 30 20 28 62 75 67 20 66 69  01-01-30 (bug fi
38310 78 29 20 46 69 78 65 64 20 70 6f 73 73 69 62 6c  x) Fixed possibl
38320 65 20 68 61 6e 67 73 20 69 6e 20 66 63 6f 70 79  e hangs in fcopy
38330 2e 20 28 70 6f 72 74 65 72 29 0a 0a 32 30 30 31  . (porter)..2001
38340 2d 30 32 2d 31 35 20 28 70 65 72 66 6f 72 6d 61  -02-15 (performa
38350 6e 63 65 20 65 6e 68 61 6e 63 65 6d 65 6e 74 29  nce enhancement)
38360 20 69 6d 70 72 6f 76 65 64 20 65 66 66 69 63 69   improved effici
38370 65 6e 63 79 20 6f 66 20 5b 73 74 72 69 6e 67 20  ency of [string 
38380 73 70 6c 69 74 5d 0a 28 66 65 6c 6c 6f 77 73 29  split].(fellows)
38390 0a 0a 32 30 30 31 2d 30 33 2d 31 33 20 28 62 75  ..2001-03-13 (bu
383a0 67 20 66 69 78 29 20 43 6f 72 72 65 63 74 6c 79  g fix) Correctly
383b0 20 70 6f 73 73 69 62 6c 65 20 6d 65