Changes since 2012-06-19 follow.

:::::::: INIT ::::::::

12-06-26 fix "npt foo" to handle function-like macro foo()
12-06-20 use $KSH for rt in "results test"

:::::::: ksh93 ::::::::

12-06-28  --- Release ksh93u+ ---
12-06-28  Fix ulimit -a to list (Kibytes) instead of (kbytes).
12-06-27  Fix unitialized data reference for <CR> as first char in --vi mode.
12-06-26  The formatting of printf "%q" for multibyte locales has changed to
	  output using \u[xxx] format for valid wide characters.
12-06-25  The size limit for read -N and read -n has been raised to INT_MAX.
12-06-22  A bug in which an exit trap set in a subshell might not be triggered
	  when the last command was a simple executable has been fixed.
12-06-22  A bug which could cause the shell to hang when a coprocess exits
	  while a command inside a command substitution is reading from it has
	  been fixed.
12-06-21 +ksh new accepts for commands of the form for i; <nl> do;...;done
12-06-19  Tab completion after a / when there is only one match not completes
	  with that match rather than generating a menu of matches.
12-06-19  A bug in which patterns containing {...} where not processed
	  correctly inside ${var/pattern/string} has been fixed.  

:::::::: 3d ::::::::

12-06-25 change strcpy() within buffer to strcopy()
12-06-22,utimensat3d.c: add utimensat()

:::::::: nmake ::::::::

12-06-20 O_cloexec|F_dupfd_cloexec edit

:::::::: re ::::::::

12-06-25 test*.c: handle \u[U+...]
12-06-23 testoldmatch.c: add tests for legacy astsa/strmatch.c

:::::::: warp ::::::::

12-06-22 warp.c: add utimensat()

:::::::: libast ::::::::

12-06-28 vmalloc/malloc.c: use sbrk() unless VMALLOC_OPTIONS=mmap or asoinit(0,0,0)!=0 (workaround until next malloc update)
12-06-28 aso/aso.c: asoinit(0,0,0): 0: no specific init, 1: app initialized
12-06-27 sfio/sfvprintf.c: allow { L* z* } aliases for I* -- posix will probably pick one
12-06-26 regex/regnexec.c: fix uninitialized variable reference
12-06-26 comp/setlocale.c: utf8_wctomb() now calls (the corrrect) wc2utf8()
12-06-25 string/chresc.c: accept \u[U+<hex>] and \u{U+<hex>}
12-06-24 regex/regcomp.c: mb [^...] must be marked "complicated"
12-06-20 port/astconf.c: increase DEBUG_astconf error debug levels (may leach into rt output)

:::::::: libardir ::::::::

111-08-31 ar-omf.c: fix FILENAME #pragma prototyped incompatibility

:::::::: libcmd ::::::::

12-06-25 getconf.c: don't defer to native getconf if we are it -- doh
12-06-19 tail.c: be nice and use sh_sigcheck() and tvsleep() to verify interrupts

June 29, 2012