Changes since 2010-08-26 follow.
:::::::: INIT ::::::::
11-02-02 Makefile: add :MAPLIB: check for ancient -lw
11-02-02 make.probe: handle -print-multi-directory => 64 => /usr/lib64 /lib64
11-02-02 package.sh: HOSTTYPE=*,*cc*[,-*,...] sets CC [ and CCFLAGS ]
11-02-02 make.probe: handle gcc $ORIGIN link but exec failure -- gee thanks
11-01-25 cc.hp.ia64: bundled cc is a pile of shaving cream
11-01-07 iffe.sh: check debug==3 for is_hdr() failure
10-11-22 ditto.sh: fix timing problem between |& and exec &p
10-11-10 package.sh: fix cc cross compile check to use checkcc absolute path
10-10-10 package.sh: list main env vars at start of make action
10-10-10 ratz.c: tweak widnows delays
10-09-10 ratz.c: add _SEAR_ARGS for _SEAR_EXEC
10-09-01 package.sh: fix ratz from source logic
:::::::: ksh93 ::::::::
11-02-08 --- Release ksh93u ---
11-02-08 A bug in which opening standard output after it has been closed with
exec 1>&- doesn't work has been fixed.
11-02-07 A bug on some systems for which a command subtitution could hang
has been fixed.
11-01-28 A bug in file name completion for files containing both multibyte
characters shell special characters has been fixed.
11-01-18 The .sh.match variable now shows elements that do not match as
as not set rather than an empty string.
11-01-18 A bug with typeset -m of an array into an element of an indexed
array has been fixed.
11-01-13 A bug in handling of arrays of compound variables inside ((...)) which
reported a syntax error been fixed.
11-01-10 A bug in arithmetic assignment operators of the form op= for array
variables when the same array was referenced on the left and the
right hand side with different indices has been fixed.
11-01-10 A bug in which the output of time was lost when { time...;} 2>&1
occured inside command substition has been fixed.
11-01-07 [[ -v sh.match[i] ]] was returning false when sh.match[i] was set.
11-01-05 Added and modified warning messages with sh -n.
11-01-02 Fixed bugs with typeset -l/-u/-M and arrays.
10-12-28 Fixed a bug with typeset -l/-u/-M values in arithmetric expressions.
10-12-26 Fixed a time parsing bug in sleep and localeconv() initialization.
10-12-23 Prevented the shell from generating a core dump when it sends itself
a termination signal because the last command terminated with that
signal. This prevents a core dump to be overwritten by the shell.
10-12-22 A bug in the expansion of ${A[@]} ${B[@]}, introduced in 10-12-01
when A="" B=B has been fixed.
10-12-21 +Use MS_3D in b_vpath() for setting win32 WoW mount defaults.
10-12-17 A bug in the expansion of ${var:i:j} which caused a core dump when
i > ${#var} has been fixed.
10-12-16 +sleep now treats . as decimal point even in locales that use comma.
10-12-16 +typeset -M mapname was added to generalize on toupper and tolowwer
mapping as provided with wctrans().
10-12-10 A bug in which typeset -l displayed namespaces as well as lower case
variables has been fixed.
10-12-06 A bug in which a pipeline could terminate prematurely for a pipeline
whose right hand side is a builtin, and whose left hand side ends in
a simple command that has standard output redirected has been fixed.
10-12-06 A bug in hexfloat assignments when the right hand side is a string
variable starting with 0x has been fixed.
10-12-01 A bug in the expansion of ${$1+"$@"} which causes the last positional
parameter to disappear when it is empty has been fixed.
10-12-01 A number of changes were made to reduce the startup time.
10-11-29 When wait is interrupted by a signal that is caught, it now exits
with a non-zero exit status.
10-11-29 When a variable is used directly in an arithmetic expression,
leading zeros no longer cause the value to be treated as an
octal constant. This was true in previous versions for justified
variables.
10-11-29 An incorrect warning message was eliminated with the -n option for
arithmetic expressions with associative arrays.
10-11-29 Some changes were made to slightly reduces startup time.
10-11-24 A bug in which a name reference is make to arr[0] when arr is not
an array has been fixed.
10-11-23 If a type definition is made without a compound variable assignment it
produces an error message and no longer shows up as a defined type.
10-11-22 The handling of inside [...] for for shell and ~(E) patterns has
been fixed.
10-11-22 A patch was made to pfsh to handle an error case.
10-11-22 +Modified types defined in namespace so that they do not clash with
types in other namespaces. Types can be referenced using
.namespace.typename.
10-11-22 A bug which caused functions addressed as .namespace.funct to not
work has been fixed.
10-11-22 A bug in which if nr was a name reference to an unset associative
array subscript, then ${!nr} did not output the subscript correctly
has been fixed.
10-11-18 A bug in which shcomp -n was not processing double quotes correctly
has been fixed.
10-11-18 Fixed a bug in which typeset -T foo; typeset -T could cause a
core dump.
10-11-17 Fixed a bug in which the error message for set -u could come out
garbeled.
10-11-17 Modified the parser so that typeset -a var=(...) no longer checks
the first index for aliases and reserved words.
10-11-17 A bug in which a subshell command consisted of only a for or until
command has been fixed.
10-11-16 Fixed a bug in which typeset -u would display namespace variables
as well as upper case variables.
10-11-16 A bug which could cause a core dump when unsetting a type variable
when there are references to type elements has been fixed.
10-11-15 A bug which could cause a core dump when unsetting a compound
array variable when there are references to array subscripts has
been fixed.
10-11-15 A bug in which using typeset -m to move an indexed array instance
to another array could cause the array to display incorrectly has
been fixed.
10-11-12 A bug in which the unset discipline function for a type is called
when the type is initialized has been fixed.
10-11-12 The sequences \< and \> are now preserved after patterns contaning
~(E) in ${var/pattern/string} expansions.
10-11-11 A bug in typeset -m when the variables were compound arrary instances
has been fixed.
10-11-10 A bug in output of a compound variable with types containing types
has been fixed.
10-11-10 Fixed ``name=value export [-p]'' to list environment.
10-11-09 shtests resets SIGPIPE to SIG_DFL for all tests.
10-11-09 Fixed a bug in expansion of $"..." when used in assignments.
10-11-09 Fixed a getaddrinfo() memory leak that didn't call freeaddrinfo()
after an interrupt.
10-11-08 Modified the behavior of set -u so that the shell terminates with
error message when when var is unset with ${!var} and ${#var}.
10-11-02 Fix a bug in which a signal received while in a subshell could be
ignored.
10-10-26 Fix a bug where terminal interrupt was ignored while in vi/emacs
edit search mode.
10-10-26 Fix $'a b'c to expand to 'ac'.
10-10-26 Provide user defined round() if not in <math.h>.
10-10-26 Fix bug where $((undefined_function(1))) dumped core.
10-10-22 Provide user defined iszero() if not in <math.h>.
10-10-22 Fixed a bug with BGX compile option that could cause the shell to
hang.
10-10-22 Fixed a bug with user define math function on systems for which
char is unsigned.
10-10-21 A bug in which function autoloaded in a function leaves a file open
has been fixed.
10-10-20 Modified the behavior of set -u so that the shell terminates when
when var is unset with ${var op string} when op is #, % or /.
10-10-20 Fixed a bug with the AUDIT option in which the audit file was not
not close-on-exec.
10-10-20 +Made a number of changes and fixes for the NAMESPACE compile option
which as added on 10-06-09 but some problems still remain.
10-10-15 Fixed a bug in which arithmetic functions (added on 10-03-24) did
not work when the function definition was in the same compound
command in which the function was referenced.
10-10-13 A bug in which creating an associative array of compound variables
with no members as an element of a compound variable did not work
has been fixed.
10-10-08 A bug in which killing the last command in a function defined
with function name, terminated the calling script has been fixed.
10-10-08 A bug which could cause a core dump if IFS is unset inside a function
has been fixed.
10-10-07 +To reduce unwanted side effects, invoking typeset without the export
option and without an assignment now causes the variables to be unset
if the variable is inherited from the environment.
10-10-06 The closing brace for ${ command } is now a token no matter what
character follows it.
10-10-04 The change for $'...' expansion on 10-08-09 did not expand parameters
contained in the error message and this has been fixed.
10-10-04 A bug in which a declaration of indexed array (-a_ in a type
definition would be displayed as a compound indexed array (-C -a)
has been fixed.
10-09-30 The C99 math funtion ldexp has been added.
10-09-30 A bug with two dimensional arrays with expansion of the form
${ref[0..5]} where ref is a nameref to array[i] has been fixed.
10-09-29 A bug in which an eval with redirections invoked from a dot script
would not restore the file has been fixed.
10-09-29 A bug in which loading a function from FPATH could leave a file
descriptor open has been fixed.
10-09-28 +A new compile option SHOPT_FIXEDARRAY has been added and is being
evaluation. It allows fixed sized indexed arrays be to defined
using "typeset array[dim1][dim2]...[dimn]". Fixed sized arrays
are used the same way indexed arrays are. Currently, only fixed
arrays of fixed objects (float, int, and justifies objects) are
supported.
10-09-22 A bug which could cause an excpetion when a function with static
variables was redefined has been fixed.
10-09-21 A bug in the processing of (command&) which created a job in the
parent process has been fixed.
10-09-21 A for loop optimization bug with arithmetic expression evaluation
has been fixed.
10-09-21 A bug in which a recursive function containing a pipeline could
lead to an exception fixed after 8 levels of recursion has been
fixed.
10-09-18 A bug in which the count of elements in an array was wrong leading
to an excpetion has been fixed.
10-09-13 A bug which occured when both xtrace and showme options where
specified in which the xtrace option disabled showme has been fixed.
10-09-13 A bug in which creating a reference to an array variable with any
elements could cause subsequent array elements to be treated as
compound variables has been fixed.
10-09-09 A bug which caused ((c.ar[x][y])) to be treated as a syntax error
has been fixed.
10-09-08 A bug in the processing of references to multidimensional arrays
in arithmetic expressions has been fixed.
10-09-08 A bug in the handling of multi-dimensional arrays which caused
the number of elements in each dimension to be incorrect has
been fixed.
10-09-07 The change for messages on 10-08-09 did not handle message in
assignments and this has been fixed.
10-09-07 A bug in the indentation of compound variables in arrays when
output with print -v has been fixed.
10-09-07 A rare bug with indexed arrays when assigned a null string that could
cause a core dump has been fixed.
10-09-03 A number of changes were made for jobs pools.
10-08-31 typeset -p was modified to output name references after other
variables so that the output could be used as input.
10-08-31 A bug with typeset -p in which variables with attributes but
without attributes were not displayed correctly has been fixed.
10-08-27 +When running a subshell, the current pool is unset.
10-08-27 A bug in which jobs started from within for or while lists in
interactive shells could generate completion messages has been fixed.
:::::::: pax ::::::::
11-02-02 pax-pds.c: ident now requires at least one dir entry
10-10-10 file.c: don't prune state.update dirs based on time -- doh
10-10-04 pax.c,misc.c: fix --meter off-by-one bugs for long paths
10-10-04 pax.c: add #updated files to --update --verbose summary
10-10-04 pax.c: --meter implies --verbose summary
10-09-01 pax.c: RE errors => exit(2)
10-08-27 add -U, --different to update files with different <mtime,size,mode>
:::::::: html ::::::::
10-09-07 use += to append to compond values
:::::::: proto ::::::::
11-02-02 Makefile: don't update ../INIT/proto.c if no change or if cpp hack failed
10-10-10 sear.sh: retain .exe suffix in sear -- its dos on the other side!
10-09-10 sear.sh: add --args=args
:::::::: msgcc ::::::::
10-10-20 msgcc.sh: add raw type (like str) for ksh -D style strings
:::::::: nmake ::::::::
11-02-02 --- release 5.6 ---
11-02-02 command.c: fix .AFTER prereq bug that executed target twice
11-02-02 Makerules.mk: add :LIBRARY: --static --private
11-02-02 Makerules.mk: fix mam %.req to check for $INSTALLROOT/lib/lib/%
11-01-21 expand.c: fix active() non-terminating loop for joint targets
11-01-21 Makerules.mk: add "::" (.OPTIONS.$(<)) : .PARAMETER
11-01-18 Makerules.mk: handle sh patterns on rhs of :MAKE:
11-01-11 Makerules.mk: handle .INSTALL.COMMON - - -
11-01-04 rules-win32.mk: add 32/64 conditionals for c++ mangle compatibility
10-11-12 Makerules.mk: add .MAM.STATE.VARS. for FOO=BAR => -DFOO=BAR in mamake!
10-11-12 command.c: fix .AFTER .FORCE .REPEAT infinite loop -- wow
10-11-10 object.c: fix old_header.version puns for strict-aliasing
10-10-20 Makerules.mk: fix .SHARED.LIST. to honor top level .MULTIPLE
10-10-20 msgcat.mk: ksh -D strings => raw string
:::::::: builtin ::::::::
10-11-03 od.c: use is[w]print() for printable char check
10-10-19 od.c: speed up inner loop
10-09-15 od.c: fix (unsigned char*) (char*) mismatches
10-09-08 tr.c: handle tr abc '[%*]xyz'
:::::::: flat ::::::::
10-11-12 flat.c: eliminate strict-aliasing puns
:::::::: ip_t ::::::::
11-01-21 testiv.c: change to store hop prefix&name in segment data
:::::::: num_t ::::::::
11-02-02 num_t.c: pow10 => pow_10 to avoid <math.h> clash
:::::::: mailx ::::::::
10-09-08 fix edited To: in message to override command line recipients
:::::::: re ::::::::
10-12-10 grep.c: fix some empty line buffer boundary bugs
10-11-22 testregex.dat: add more [......] tests
10-09-01 grep.c: RE errors => exit(2)
:::::::: std ::::::::
11-01-28 file.c: add -a, --all to list all magic table matches
11-01-11 dd.c,iconv.c: convert Iconv_disc_t* for iconv_move() and iconv_write()
11-01-11 iconv.c: add posix { -c,--omit -l,--list -s,--silent }
10-12-01 ps*: update freebsd procfs logic
:::::::: tw ::::::::
10-11-30 tw.tst: add "begin" scope tests
10-09-01 find.c: RE errors => exit(2)
:::::::: jmake ::::::::
11-01-25 JAR.mk: fix -C directory vs viewpath logic
11-01-11 JAVA.mk,JAR.mk: fix :JAVA: to compile class files
10-12-01 add com jmake.jar.tm jmake.sh to source list for non-java tgz
10-09-22 add EAR.mk EAR.1M, explicit :JAR: prereq glob override
10-08-29 *.mk: tweaks to handle real world examples
:::::::: libast ::::::::
11-02-08 misc/stk.c: change STK_FSIZE to (1024*sizeof(char*)) for 64 bit normalization
11-02-02 sfio/sfmode.c: don't call sfsetbuf() on unbuffered stream to make it unbuffered
11-02-02 features/wchar: handle hp.ia64 va_list interactions
11-02-02 comp/omitted.c: fix mismatch between stat() vs _stat()
11-01-31 std/wctype,features/wctype: add to handle <wchar.h> interactions
11-01-28 add -lw for ancient sunos
11-01-28 include/magic.h,misc/magic.c: add MAGIC_ALL
11-01-27 tm/tmxfmt.c,tmpoff.c: %_z for SHH:MM
11-01-25 features/wchar: change <wctype.h> <wchar.h> ordering
10-12-24 sfstrtof.h: fix thousand grouping bug that did not check last group
10-12-21 pathkey.c: add win32 { /32 /64 } preroot to hash
10-12-09 pathprog.c: handle intermediate path != '* and fix invalid pathpath() call
10-12-01 astconf.c: fix look.standard undefined variable reference
10-12-01 sfset.c: SF_LINE|SF_WCWIDTH => no need for sfsetbuf() to call isatty()
10-12-01 sfsetbuf.c: cache /dev/null <dev,ino> to cut down /dev/null stat()'s
10-12-01 optget.c: delay dictionary initialization until needed
10-11-30 malloc.c: drop { VMDEBUG VMETHOD VMPROFILE VMTRACE } env checks
10-11-30 port/astconf.c: eliminate esaccess() calls for OP_universe checks
10-11-24 regcomp.c: [[=]=]] must at least match itself in non-C locales
10-11-23 glob.h,glob.c: add GLOB_GROUP => REG_SHELL_GROUP
10-11-20 glob.c: handle mode switches across /
10-11-19 regcomp.c: REG_SHELL => REG_CLASS_ESCAPE
10-11-16 vmalloc.h: add VMFL tracing to vmstrdup()
10-11-16 ast.h: simplify VMDEBUG _BLD_DEBUG and VMFL logic
10-11-12 tm/tmlocale.c: ast TM_* extensions default to C locale
10-11-10 regex/regnexec.c,vmalloc/vmstat.c: eliminate strict-aliasing puns
10-10-20 misc/translate.c: change debug translation to drop " in (a,b,c,"d")
10-10-10 misc/glob.c: drop ancient D_FILENO(d)!=0 test and trust readdir()
10-10-06 misc/translate.c: fix "debug" locale logic
10-10-04 misc/magic.c: fix magic() skip check to honor the continuation
10-10-04 regex/regcoll.c: add wchar_t* args to regcollate(), drop ucs name lookup
10-09-28 comp/setlocale.c: add utf8_wctomb()
10-09-28 string/chresc.c,regex/regcoll.c: fix \S[.X.] (\C[.X.] never worked!)
10-09-24 string/chresc.c: \Cc for control c, \S[.X.] for collating symbol X
10-09-24 string/chresc.c: { c \ } deprecated
10-09-22 regex/regcomp.c: fix off-by-one collation class allocation bug
10-09-20 regex/regclass.c: fix CTYPES off-by-one bug
10-09-14 comp/conf.sh: const int conf_elements, prefix_elements;
10-09-08 add features/sizeof => ast_sizeof.h
10-08-31 comp/getopt[l].c: export functions for dlls
:::::::: libcmd ::::::::
11-01-27 date: add { -R, --rfc-2822, -T, --rfc-3339=type }
11-01-03 chgrp.c: --symlink => --physical
10-12-10 rm.c: fix not-writable logic
10-12-01 tee.c: add iterrupt logic for slow open(1) -- needs to be generalized
10-11-30 chgrp.c: add -N,--numeric to bypass name lookup
10-10-20 cp: add --timestamps (preserv timestamps and permissions)
10-10-20 ln: fix 'cannot replace existing file' logic
10-10-10 cp,mv: add --remove-destination
:::::::: libdll ::::::::
10-10-20 dllscan.c: version arg "-" => 0
10-10-19 dllplug.c: fix bug that wiped out dlopen() error message
10-10-19 dllplug.c: un-localize lookup names (happens with cut and paste)
10-10-19 dllscan.c: still no code for implicit libs missed by dlopen()
:::::::: libexpr ::::::::
10-11-30 fix "begin" scope logic that caused tw bug
:::::::: libbz ::::::::
10-11-08 bzlib.[ch]: change bzReadGetUnused 3rd arg to void* for strict aliasing
:::::::: libpp ::::::::
10-09-01 RE errors => exit(2)
10-09-01 ppcall.c: no disgnostic for 0 actual args for 1 formal arg
:::::::: libtk ::::::::
10-11-12 eliminate strict-aliasing puns
:::::::: libvcodex ::::::::
11-01-31 Makefile: use `...` instead of $( ... ) for bootstrap build
|