xref: /titanic_41/usr/src/lib/libast/common/RELEASE (revision 26f3cdf03f1adcc98f6d3d99843ee71e9229a8c0)
110-03-08 features/tvlib: fix utimensat probe to include all macros/structs
210-03-07 features/lib: change stream_peek to test pipes only
310-03-07 string/strelapsed.c: fix next char return overrun
410-03-06 tm/tvtouch.c: use runtime fallback if utimensat() fails with ENOSYS
510-03-05 path/pathtemp.c: add pfx /seed for regression testing
610-03-04 vmalloc/vmwalk.c: add user supplied handle arg
710-03-04 path/pathtemp.c: properly handle mktemp()-style *+(X) templates
810-03-03 include/ast_getopt.h: remove NULL guard - _AST_GETOPT_H now handles it
910-02-24 comp/getopt.h: fix ast_std.h interactions
1010-02-24 vmalloc/malloc.c: empty { VMALLOC_OPTION VMDEBUG ... } => no debug!
1110-02-02 string/base64.c: fix corner case output buffer overflow
1210-02-02 features/fs: sys/mnttab.h requires stdio.h on some systems!!
1310-02-01 misc/optget.c: uppercase --html heading -- doh
1410-01-29 misc/optget.c: [+NAME?...] overrides error_info.id for >= STYLE_man
1510-01-25 vmalloc/vmprivate.c: fix seg ptr initialization bug (24 years old!!)
1610-01-20 misc/optget.c: handle nested {...} rendering
1710-01-20 misc/state.c: add ast.version for runtime api version
1810-01-20 port/astconf.c: "_AST_VERSION" now returns ast.version
1910-01-20 include/ast_std.h: add ast.version for runtime api version
2010-01-19 astlicense.c: add epl
2110-01-01 vmalloc: VMALLOC_OPTIONS env var for all runtime options
2210-01-01 include: change some <ast.h> refs to less intrusive <ast_*.h>
2310-01-01 setlocale.c,translate.c,fmterror.c: AST_LC_internal retains prev state
2410-01-01 comp/setlocale.c: AST_LC_setenv defers to LC_ALL (for sh)
2510-01-01 ast_std.h: add { AST_LC_internal AST_LC_setenv }
2609-12-24 comp/setlocale.c: fix setlocale(LC_ALL,"") when already initialized
2709-12-17 misc/optget.c: handle mixed solaris usage="x:f:(in)yo:(out)"
2809-12-11 regex/regcomp.c: posix semantics for [z-a]
2909-12-11 regex/regcomp.c: fix BRE/ERE ^^ logic
3009-12-11 regex/regcomp.c: fix regcomb() for REG_LEFT|REG_RIGHT
3109-12-11 regex/regcomp.c: bm complete=0 if REX_END
3209-12-11 comp/sigflag.c: add with npt check in features/sig.sh
3309-12-11 tm/tminit.c: fix _tzset_environ logic
3409-12-09 tm/tmlocale.c: include "ast_nl_types.h" to pull nl_langinfo in!
3509-12-04 features/options: add "opt map-libc" check
3609-12-03 tm/tmxdate.c: fix 'next month final day' for dec -> jan
3709-11-21 misc/magic.tab: add gimp XCF
3809-11-20 vmalloc/vmtrace.c: add pid to assertion disgnostics
3909-11-11 regex.h,regcomp.c: add REG_CLASS_ESCAPE, \ inside [...] literal by default
4009-11-03 regex/regcache.c: change to variable length pattern strings
4109-10-28 include/error.h: fix ERROR_translate() arg parens
4209-10-26 port/lcgen.c,comp/setlocale.c: handle LANG init after LC_* already defined
4309-10-05 _sfopen.c: add but ignore 'F' flags for stdio compatibility
4409-09-28 fts.h,ftwalk.h,fts.c: promote { namelen pathlen level } to (s)size_t
4509-09-28 locales: add AST_LC_LANG for $LANG
4609-09-28 setlocale.c: fix logic for dynamic { LANG LC_ALL LC_* } changes
4709-09-17 include/sfio.h,sfio/sfwalk.c: add sfwalk()
4809-09-09 sfio/sfputr.c: add SIGPIPE hang fix
4909-08-24 sfio/sfreserve.c: fix SF_UNBOUND logic with pushed streams
5009-08-18 include/ast_std.h,ast.h: add ast.mb_sync to sync mbchar() after error
5109-08-17 comp/setlocale.c: add AST_LC_utf8 and { utf8_mbtowc() utf8_mblen() }
5209-08-11 comp/setlocale.c: treat "en"/"en_US" AST_LC_MESSAGES as "C"/"POSIX"
5309-08-10 vmalloc/vmhdr.h: add user-defined _AST_PAGESIZE and computed VMHEAPINCR
5409-08-09 comp/conf.tab: add NPROCESSORS_MAX
5509-07-29 astlicense.c: fix first name=value logic error
5609-07-22 string/fmtip6.c: don't drop trailing 0 in 44::1:0:0
5709-06-30 port/astconf.c: standard PATH_RESOLVE is "physical" (not "metaphysical")
5809-06-19 vmalloc: sync with kpv
5909-06-19 include/shcmd.h: add sh_context(p) cast
6009-06-11 misc/magic.tab: differentiate pc 386 32/64 bit dll/exe/obj
6109-06-06 port/astconf.c: fix look->name null pointer reference
6209-06-05 port/astconf.c: fix 'UNIVERSE = value' synthesize logic
6309-05-25 tm/tmxduration.c: add
6409-05-08 comp/syslog.c: add _UWIN /var/log/syslog preference
6509-05-01 comp/setlocale.c: fix _UWIN intercepts to return NiL on unknown locales
6609-04-27 sfio/sfpool.c: fix bug that did not return pool on delete
6709-04-22 include/regex.h,regex/regcomp.c: add REG_REGEXP <regexp.h> compatibility
6809-04-15 tm/tmxdate.c: handle "4th thursday in november"
6909-03-31 string/strvcmp.c,string/strnvcmp.c: add version strcmp(3)
7009-03-31 string/strpcmp.c,string/strnpcmp.c: add path prefix strcmp(3)
7109-03-29 misc/optget.c: clean up num = number casts
7209-03-04 tm/tmxmake.c: add tmxtm() with zone override
7309-03-03 tm/tmxfmt.c: add %(...)<c>, specifically %(...)z for output zone
7409-02-22 tm/tmxdate.c: add iso P... durations
7509-02-02 path/pathprog.c: add
7609-02-02 misc/opthdr.h,optget.c: fix flags mixup, handle old '-' as option
7709-02-02 sfio/sfprints.c: fix sfvaprints() return value to not count trailing '\0'
7809-02-02 misc/cmdarg.c: handle !defined(ARG_MAX)
7909-02-02 port/astconf.c: fix UNIVERSE overwrite of null[] value!
8009-01-31 features/sys: drop header sys/localedef.h
8109-01-28 include/fs3d.h,misc/fs3d.c: mount() => fs3d_mount() for diff std prototypes
8209-01-14 misc/fts_open.c: delay top list reorder until first fts_read()
8309-01-14 include/ls.h: LS_W_INUMBER => 9 to accomodate large st_ino
8409-01-14 misc/optget.c: expand STYLE_usage input text
8509-01-09 features/uwin,stdio/_stdfun.c: iffe for _p__iob and __p__iob
8609-01-09 misc/magic.tab: add ISO filesystem image entries
8709-01-07 string/strtoi.c: strtol() etc. do not consume [lLuU] suffix -- thanks jkf
8809-01-07 sfio/sfstrtof.h: strtod() etc. do not consume [fFlL] suffix -- thanks jkf
8909-01-05 string/strlcat.c: fix logic to match docs (not that easy)
9008-12-30 tm/tmxdate.c,include/tm.h: add TM_WORK { "workday" "working" "work" }
9108-12-28 sfio/sfcvt.c: fix 'a' format rounding
9208-12-21 tm/tmdata.c: add 2008-12-31+23:59:60-0000 leap second event
9308-12-19 tm/tmxdate.c: check for dates near the epoch rolling back to the future
9408-12-19 tm/tmxfmt.c: change %s for now==0 to be the epoch
9508-12-07 include/ast_std.h,misc/getenv.c: no _ast_getenv for uwin ast54 compatibility
9608-12-07 tm/tmxfmt.c: add %[_][EO]K for [space pad] [full|long] iso
9708-12-07 sfio/sfvscanf.c: fix ok[] short by one allocation
9808-12-07 comp/setlocale.c: fix off by one composite initialition loop test
9908-12-07 path/pathkey.c: fix off by one loop test
10008-12-04 vmalloc/vmbest.c: catch sbrk() wraparound
10108-12-04 comp/spawnveg.c: clean up attrs on failure too
10208-11-04 regex/regcomp.c: fix locale [!-...] and [^-...] re-initialization
10308-11-04 stdio: add flockfile.c ftrylockfile.c funlockfile.c
10408-10-24 port/astconf.c: handle multiple/trailing '/' in universe initialization
10508-09-10 misc/magic.c: handle old vcodex() indices
10608-09-10 sfio/sfvprintf.c: drop SF_WCWIDTH, use %Lc or %Ls instead
10708-09-05 Makefile: ibm.risc joins the :NOOPTIMIZE: crowd
10808-09-04 regex/regnexec.c: fix nested delimiter match beyond end of subject
10908-08-20 misc/fts.c: fix st_nlink stat() optimization logic
11008-08-19 sfio/sfpkrd.c: workaround macosx recv(PEEK) data consumption on non-socket
11108-08-19 strn?tol?d: handle long double with smaller exponent range than double
11208-08-18 sfio/sfcvt.c: eliminate excessive multiplies and integral overprecision
11308-08-11 tm/tmxfmt.c: handle %10N and %010N
11408-08-06 include/shcmd.h: add 'int invariant;' for builtin invariant arg count
11508-08-05 features/ndbm: favor sleepycat ndbm compatibility
11608-07-21 include/glob.h,misc/glob.c: GLOB_STARSTAR only forces lstat on chdir
11708-07-17 sfio: sync with kpv
11808-07-17 misc/optget.c: call astwinsize() each time terminal width required
11908-07-16 sfio/sfvscanf.c: fix %% to skip leading space per posix
12008-07-16 vmalloc/vmbest.c: add VMCHECK=m, VM_mmap to favor mmap() alloc
12108-07-16 features/stdio,stdio/f(read|write).c: size_t return value!! ouch
12208-06-24 tm/tmxfmt.c: fix %z to handle tm_isdst -- doh
12308-06-24 misc/astintercept.c,misc/getenv.c: split from misc/setenviron.c
12408-06-17 misc/setenviron.c: add { astintercept() getenv() }
12508-06-09 tm/tmlocale.c: use _DATE_FMT if defined for TM_DEFAULT
12608-06-06 misc/optget.c: handle sub-component about details
12708-06-04 misc/optget.c: fix [-n?\n...\n] version parse
12808-06-04 include/debug.h,misc/debug.c: merge with kpvdebug.h
12908-06-02 features/ndbm: add to tame dbmlib.iffe replication
13008-06-01 comp/resolvepath.c,realpath.c: fix resolvepath() return value type
13108-05-22 tm/tmxdate.c: fix a few ordinal/last/this/next bugs
13208-05-18 string/fmtre.c: fix omitted stack var initialization bug
13308-05-14 regex/regcomp.c,regcoll.c: fix UTF-8 collation sequence logic
13408-05-11 tm/tmxfmt.c: :NOOPTIMIZE:, otherwise %Q/../../ fails
13508-05-01 tm/tmxdate.c: mon 1..12 => mon[13] -- doh
13608-04-30 misc/glob.c,reegex/regcomp.c: ~(R) => ~(O) to avoid pcre clash
13708-04-24 port/astconf.c: 'name = value' does assignment without system init
13808-04-15 port/astconf.c: SC#N treated like 'SC(N)'
13908-04-14 misc/optget.c: clean up nroff output
14008-04-01 port/astconf.c: add RELEASE => /proc/version fallback
14108-03-30 misc/optget.c: [-n]... to enable -number & +number options
14208-03-06 misc/optget.c: ---* and +++* are now operands
14308-03-06 misc/errorx.c: fix old error_info.translate workaround
14408-02-05 regex/regcomp.c: allow REG_SHELL {,n}... => {0,n}...
14508-02-27 misc/stk.c: top element during allocation relocated to top
14608-02-18 include/ip6.h,string/strtoip6.c,fmtip6.c: add ipv6 addr support
14708-02-14 regex/regsubexec.c: fix null match (tricky)
14808-02-14 regex/regsubcomp.c: fix SRE to match ksh
14908-02-11 comp/spawnveg.c: return proper errno on [v]fork() failure
15008-02-11 tm/tmxdate.c,tmdata.c: handle more ISO 8601:2000 forms
15108-02-02 regex/reglib.h: add REGMULTIREF to REG_COMP
15208-02-02 string/strmatch.c: fix str="" pat="" sub values
15308-01-31 comp/conf.sh,conf.tab: handle /bin/sh \ in read data, redir subshell
15408-01-18 misc/magic.tab: amd-x68, 64-bit => x86-64
15508-01-18 string/strnton.c,strntonll.c: add
15607-12-10 string/strelapsed.c: "0" is a valid elapsed time!
15707-12-02 sfio/sfreserve.c: preserve SF_SHARE sfrd() via sfreserve(f,0,0)
15807-11-21 comp/setlocale.c: add sjis_mbtowc() to work around [\~] translation
15907-11-15 features/signal.c: RT(1) .. RT(MAX-1) => RTMIN+1 .. RTMAX-1
16007-11-14 features/float: favor sscanf() due to gnu strto[l]d() nan bugs
16107-10-31 regex/regcomp.c: fix REX_COLL_CLASS node allocation size
16207-10-31 sfio/sfcvt.c: use signbit() if available
16307-10-31 features/isoc99: _ISOC99_SOURCE tests
16407-10-31 port/astmath.c: add -DN=8 for signbit()
16507-10-31 sfio/sfstrtod.h: don't forget about -0.0
16607-10-26 features/map.c: add { optopt optarg optind opterr }
16707-10-26 features/stdio: add _filbuf => _ast__filbuf
16807-10-26 comp/getsubopt.c: fix #undef that interfered with <ast_map.h>
16907-10-26 regex/regcomp.c: fix bug that missed ')' in ~(F)...
17007-10-12 port/astconf.c: fix CONF_ALLOC 16 bit overflow
17107-10-12 misc/fts.c: fix fts_close() to free the handle -- doh
17207-10-11 comp/setlocale.c: second and subsequent setlocale(*,"") reverts to previous
17307-10-11 path/pathprobe.c: add vfs ST_NOSUID check
17407-10-10 comp/conf.tab: add a few more xpg6 deferrals
17507-09-28 astsa: update to share with mainline src via _PACKAGE_astsa
17607-09-25 sfio/sfgetr.c: no limit on string stream line size
17707-09-25 sfio/sfextern.c: increase _Sfmaxr to 256*1024
17807-09-18 misc/procopen.c: tighten up SIGCHLD logic between parent/child
17907-09-18 misc/signal.c: unblock SIG_DFL after setting handler, sig<0 => don't unblock
18007-09-13 misc/fs3d.c: no $LD_PRELOAD => no 3d and avoids invalid mount(2) call
18107-09-11 vmalloc: vmstat(0,0)==1 => region in use, drop VM_primary|VM_secondary
18207-09-05 misc/recstr.c: handle [lL] gobbled by strtol() -- ouch
18307-08-17 path/pathprobe.c: handle '\r' in VERSION string
18407-07-17 regex/regcache.c: regcache(0,n,0) extends cache to size n (no shrinking)
18507-07-16 tm/tmdata.c: add 2005-12-31, drop 1999-12-31 (where did that come from?)
18607-05-21 tm/tmxfmt.c,tmxscan.c: %F => %L (TM_DEFAULT); %F => %Y-%m-%d
18707-05-15 sfio/sfvprintf.c: %h? and SFFMT_SHORT => raw bytes
18807-05-09 features/signal.c,features/siglist: use kill -l & strsignal()
18907-04-25 misc/optctx.c: add for opt_info switching
19007-04-24 misc/cmdarg.c,include/cmdarg.h: add CMD_CHECKED, CMD_SILENT
19107-04-24 misc/procopen.c,include/proc.h: add PROC_CHECK
19207-04-24 misc/procrun.c: add flags arg (current use PROC_ARGMOD)
19307-04-24 misc/cmdarg.c,include/cmdarg.h: move from src/cmd/tw
19407-04-20 port/(lclang.h|lc.c|mc.c|lclib.h|lcgen.c): separate lctab.c
19507-04-20 comp/conf.sh: defer to systems without 'grep -q' -- sigh
19607-04-20 comp/conf.sh: probe for LL integer constant initializer suffix
19707-04-20 include/syslog.h: <namval.h> => <ast_namval.h> for win32
19807-04-20 ast_namval.h: add as copy of include/namval.h for win32
19907-04-19 comp/conf.tab: fix SVID SI entries to probe SI_* (not _SI_*)
20007-04-13 tm/tmxdate.c,tm/tmzone.c: handle [-+]0000 UTC zone offset
20107-04-11 sfio/sfvprintf.c: add %F, propagate SFFMT_UPPER
20207-04-11 sfio/sfcvt.c: handle SFFMT_UPPER => nan/inf vs. NAN/INF
20307-04-02 comp/conf.tab,comp/conf.sh: add C/POSIX <stdint.h> symbols
20407-03-28 misc/optget.c: fix l10n --?-
20507-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic
20607-03-21 error.h: move from error_info to (*_error_data_)
20707-03-21 misc/error.c: add errorctx() for error_info switching
20807-03-21 option.h: move from opt_info to (*_opt_data_)
20907-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP
21007-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions
21107-02-27 comp/conf.sh: handle native getconf invalid numeric values
21207-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX
21307-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification
21407-02-14 features/common: cover <stdint.h>, move to int_(bits)_t
21507-02-14 include/int.h: drop
21607-02-14 include/sfio.h: add SF_WCWIDTH
21707-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc.
21807-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix
21907-02-12 features/float: *LONGLONG* => *LLONG* to match posix
22007-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral
22107-02-12 stdio/vasprintf.c: add trailing '\0' -- doh
22207-02-04 string/fmtelapsed.c: fix naive multi month/year logic
22307-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3)
22407-01-26 string/chresc.c: use mbchar()
22507-01-26 misc/optget.c: handle "o:-:" usage for old-style long options
22607-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek
22707-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h
22807-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1
22907-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?)
23007-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP)
23107-01-05 misc/error.c: fix multibyte vs. printable logic
23207-01-01 comp/conf.sh: LC_ALL=C
23306-12-26 tm/tmxdate.c: handle nn*.nnnn* == sec.ns
23406-12-20 features/libpath.sh: generalize sol.* LIBPATH patterns
23506-12-18 comp/setlocale.c: include ast_standards.h and ast_wchar.h !
23606-12-12 string/strperm.c: octal modes are absolute!
23706-12-11 comp/conf.tab: always defer ARG_MAX
23806-12-07 Makefile: fix conftab.c generation CCFLAGS to match build - doh
23906-12-04 sfio/sfcvt.c: fix (int) vs. (long) cast mismatches
24006-12-01 comp/conf.tab: add changes to cover solaris { bin xpg4 xpg6 }
24106-12-01 regex/reginit.c: adjust { SRE KRE } escaped (){}*? inside [...]
24206-12-01 sfio/sfcvt.c: add signbit/copysign tests
24306-11-22 comp/spawnveg.c: fix _real_vfork logic to work with 3d
24406-11-20 features/common: bias _ast_int8_t "long long" before "__int64"
24506-11-20 string/strperm.c: fix X to work with all ops (not just +)
24606-11-15 astconf.c,conf.tab: add CONF_DEFER_* for variable constants
24706-11-11 port/astconf.c: validate path arg w.r.t. underlying calls
24806-11-11 comp/conf.sh: fix S CONF_STANDARD bug, add D to defer to native
24906-11-11 comp/conf.tab: add D to defer to native
25006-11-01 include/vmalloc.h: avoid VM_FLAGS sys/v*.h clash
25106-11-01 include/ast.h: add FMT_PARAM for fmtquote()
25206-10-31 disc/sfdcseekable.c: add SFSK_DISCARD for seekable window control
25306-10-31 comp/spawnveg.c,features/lib: handle posix_spawn exit status 127
25406-10-30 features/lib: fix posix_spawn() fork() prototype conflicts
25506-10-30 string/fmtscale.c: fix 1024 rounding bugs
25606-10-27 disc/sfkeyprintf.c: handle 'i' (=='d') -- oops
25706-10-26 sfio/sfvprintf.c: %#d => fmtscale(1000), %#i => fmtscale(1024)
25806-10-26 features/map.c: _map_libc cleanup
25906-10-26 features/fcntl: add to the circle of trust
26006-10-26 features/sys: add <sys/socket.h> socklen_t
26106-10-26 include/regex.h: handle include before <ast_map.h>
26206-10-25 astconf "SHELL" => "SH" to avoid _POSIX_SHELL conflict
26306-10-25 comp/conf.*: drop no-op duplicate conftab.c entries
26406-10-18 string/fmtscale.c: 1000: n[.]n[n](kMGTPE), 1024: n[.]n[n](KMGTPE)i
26506-10-11 ast_std.h: now implies <sys/stat.h> (did on most before anyway)
26606-10-11 strtoi.h: ignore sign for 0, validate scale shift
26706-10-11 strdup.c,vmstrdup.c: handle 0 arg
26806-10-11 add sfstruse()/sfstropen() error checks
26906-10-10 misc/procopen.c: envv==environ => don't modify environ
27006-10-10 misc/procclose.c: return valid exit(1) status
27106-10-06 port/astconf.c,comp/conf.sh,comp/conf.tab: play nice with getconf(1)
27206-10-01 comp/conf.tab: SHELL default checks { _CS_PATH } X { ksh ksh93 sh }
27306-10-01 comp/conf.sh: export CONF_getconf to shell actions
27406-10-01 comp/putenv.c: always enable setenv() for procopen()
27506-10-01 misc/procopen.c: use pathshell() or astconf("SHELL",0,0) if PARANOID
27606-10-01 path/pathshell.c: localize the shell path patterns and accept ksh93
27706-09-28 Makefile: avoid ast <stdio.h> vix iffe -X ast -- doh
27806-09-27 regex/regdecomp.c: add
27906-09-26 regex/regcomp.c: handle KRE ~(...)<invalid-kre>
28006-09-25 reorganize to avoid native header intercepts
28106-09-15 uwin/crypt.c: _UWIN only!
28206-09-14 Makefile: tweak the ast_common.h bootstrap again (finally?)
28306-09-14 misc/optget.c: noncommercial => OPT_proprietary
28406-09-12 string/strelapsed.c: fix multi-char qualifier parse
28506-09-12 string/strtoi.h: drop [cClLqQwW] multipliers
28606-09-11 misc/optget.c: add numeric arg validity check
28706-09-07 misc/optget.c,tm/tmfix.c: fix uninitialzed var refs
28806-09-05 path/pathprobe.c: add version header verification
28906-08-01 Makefile: handle iffe vs FEATURE/common vs ast_common.h
29006-08-31 Makefile: add ast_map.h to the bootstrap list
29106-08-30 misc/glob.c: fix ~(E)re bug that stripped ~(E) before regcomp
29206-08-30 include/ast.h: add { integralof(x) pointerof(x) }
29306-08-27 string/strelapsed.c: fix off-by-one (too little) parse bug
29406-08-25 misc/optget.c: 0*<n>.* numeric option args => <n>.*
29506-08-22 misc/glob.c: handle ~(...) pattern options
29606-08-16 string/strelapsed.c: fix off-by-one (too far) parse bug
29706-08-16 regex/regcomp.c: accept but ignore ~(N)
29806-08-14 features/libpath.sh: add solaris LD_LIBRARY_PATH_64 check
29906-08-05 sfio/sfpool.c: pool SF_READ|SF_WRITE loop fix
30006-08-02 misc/fts.c: fix FTS_NOSTAT optimization to check for ..
30106-07-28 include/glob.h: add gl_extra for user globlist_t expansion
30206-07-27 features/common: #include "ast_map.h"
30306-07-26 comp/fnmatch.[ch]: allow <ast_map.h> to map fnmatch()
30406-07-22 cdt: snarf from kpv
30506-07-17 string/strperm.c: perm==-1 skips umask(1)
30606-07-17 sfio/sfvprintf.c: handle format invalid mb seq
30706-07-17 regex/regcomp.c: inline REG_SHELL => anchored, otherwise not
30806-07-17 regex/regcomp.c: inline B|G:basic E:REG_EXTENDED F|L:REG_LITERAL
30906-07-17 regex/regcomp.c: inline l:REG_LEFT r:REG_RIGHT
31006-07-17 regex/regcomp.c: inline a:REG_LEFT|REG_RIGHT p:~REG_LENIENT
31106-07-17 string/chresc.c: add \Uxxxxxxxx
31206-07-17 sfio/sfstrtof.h: ignore thousands sep after decimal
31306-07-17 string/tokline.c: splice() => spliceline() for bsd
31406-06-27 features/float,sfio/sfcvt.c: fix Nan logic
31506-06-27 port/astmath.c: fix long double isnan() test
31606-06-27 features/map.c: _map_libc for std => _ast_std
31706-06-25 string/strperm.c: handle posix = w.r.t. umask
31806-06-19 port/mnt.c,features/fs: handle netbsd getmntent api change
31906-06-18 regex/regstat.c: add REG_LITERAL check
32006-06-11 cdt/dtview.c: update from kpv
32106-05-31 sfio/sfhdr.h: fix _SFOPEN() typo
32206-05-09 comp/conf.sh: add native getconf -a names to the mix
32306-04-28 misc/optget.c: add solaris long option name compatibility
32406-03-09 string/strmatch.c: add REG_ADVANCE => REG_* flags
32506-02-14 comp/iconv.c: fix uwin iconv_list() /reg/ generator
32606-02-10 port/astconf.c: relax standard prefix filter
32706-02-08 sfrd.c,sfsync.c: lock logic bug fix
32806-02-01 port/astlicense.c: add { parent incorporation }
32906-01-26 port/astconf.c: fix { LIBPREFIX LIBSUFFIX } length
33006-01-06 features/lib: change _UNIV_DEFAULT probe to use cross{...}
33106-01-04 misc/stk.c: fix n**2 realloc behavior
33206-01-01 include/sfio.h: export { _Sfi _Sfmaxr }
33305-12-13 string/chresc.c: handle \C-X => control-X, \M- => ESC
33405-11-22 regex/regcache.c: add, convert string/strmatch.c to regcache()
33505-10-06 string/ccmap.c: update ebcdic-u to be idempotent
33605-09-28 vmalloc: snarf from kpv; fixes large block brk() thrashing
33705-09-26 misc/magic.c,misc/magic.tab: handle latest vcodex header
33805-09-12 misc/optget.c: reset opt_info.offset on error
339	 string/strtoi.h: strton() '.' multiplier only if m>1
340	 string/fmtesc.c: add unadvertized FMT_PARM for FMT_SHELL
34105-09-09 string/fmtesc.c: fix FMT_SHELL logic w.r.t. [$`]
34205-08-11 string/strerror.c: fix { sys_errlist sys_nerr } prototypes
34305-08-03 sfio: snarf sfvaprints sfaprints
34405-07-21 port/astconf.c: retain most recent synthesized lookup
34505-07-20 sfio/sfsetbuf.c: default file io size now 64K on all systems
34605-07-17 ccmap*: add microfocus cobol EBCDIC_U
34705-06-29 regex/regcomp.c: fix the A & B inline flag logic
34805-06-15 include/recfmt.h: add fs format flag to fmtrec()
34905-06-14 error.c: add ERROR_OPTIONS { break count match }
35005-06-07 features/stdio: drop FEATURE/limits to fix bootstrap circular dep
35105-06-02 features/*,Makefile: drop vestigel iffeio.h bootstrap workaround
35205-05-31 string/fmtbuf.c: unlock (spin) before each return -- doh
35305-05-30 sfio/sfpkrd.c: work around macos 10.4 recv(MSG_PEEK) bug
35405-05-27 regex: add REX_NEST (?%[S.][T.][OT])
355	 magic.tab: ammend bsd db magic
35605-05-23 regex: REX_NEST (?%[D.][E.][L.][Q.][oc]...)
35705-05-21 regex: state.fold[] is now locale specific -- doh
35805-05-19 regex: add REX_NEST (?%\\()<>[]""...) %(...) nested match
35905-05-15 recfmt.h: add recstr() reclen() fmtrec()
36005-05-13 optget.c: allow boolean options to take numeric values
36105-05-12 recfmt.c: add to recfmt.h, adjust Recfmt_t encodings
36205-04-30 sfio: add sfmaxr(), default 64K
36305-04-22 comp/omitted.c: fix magic() logic for files < 512 bytes
36405-04-20 cdt: snarf update from kpv; void* Dt_t.user added
365	 misc/error.c: library => ERROR_LIBRARY
36605-04-19 regex/regcomp.c: handle REG_SHELL [^...] == [!...]
36705-04-11 tm/tmxscan.c: handle yyy.mm.dd[-+.]hh.mm.ss.nnnnnn
36805-04-07 regex/regnexec.c: fix out of bounds boundary check -- ouch
369	 features/align.c: add jmp_buf to the alignment mix (ia64)
370	 vmalloc/vmhdr.h: add jmp_buf to the alignment mix (ia64)
37105-03-31 misc/optget.c: fix option { - _ } separator matching
37205-03-30 misc/glob.c: eliminate superfluous GLOB_NOMATCH stat() calls
37305-03-24 port/astwinsize.c: include <sys/ioctl.h> if possible
37405-03-23 string/ccmap.c: add ebcdic-m mvs cobol table
37505-03-11 comp/omitted.c: handle utime[s](const,const)
376	 comp/conf.tab: fix linux PID_MAX probe
37705-03-10 comp/setlocale.c: LC_* value "" => unset -- doh
378	 misc/optget.c: reorder _PACKAGE_astsa code for msgcc
37905-03-08 misc/optget.c: delete leading space in STYLE_nroff output
38005-03-07 sfio/sfhdr.h: drop extern _sfdscan -- clashes with sfvscanf.c static
38105-03-01 tm/tminit.c: add tmlocaltime() for tzset() getenv() override workaround
38205-02-20 features/tvlib: tmsettimeofday only for systems that have settimeofday
383	 features/float: fix mvs.s390 NaN tests
38405-02-18 tm/tmxmake.c: fix <0 west of GMT bug that warped to 1800's -- wow
38505-02-11 port/mnt.c: handle lynxos MOUNTED=/etc/fstab
38605-02-08 features/float,sfio.h,sfcvt.c,sftable.c: add INF and fix NAN
38705-02-04 features/lib: add _std_strtol (for lynxos)
388	 include/ast_std.h: add _std_strtol tests
389	 comp/strtod.c: #define S2F_function strtod
390	 misc/signal.c: fix ancient bsd SV_INTERRUPT vs. SV_ABORT clash
39105-01-11 sfio/sfmove.c: try to seek(fr) when fw==0
392	 comp/omitted.c: intercept utimes() too
393	 comp/omitted.c: add DOSPATHVARS env var path value conversions
394	 features/tvlib,tm/tvtouch.c: check for utimets()
395	 misc/optget.c: handle '-' or '_' option word separators
396	 sfio/_sfopen.c: allow stream mode changes after initialization
397	 sfio: sync with kpv: SF_SYNCED fix for ksh input loss bug
39805-01-09 tm/tmxfmt.c: fix %6N for n<100000000
39905-01-08 regex/regcomp.c: conj() => con() to avoid C99 clash
40005-01-05 tm/*: fix { %U %V %W } logic -- my head hurts
40104-12-30 tm/tmxtime.c: fix tm_isdst<0 loop
40204-12-23 vmalloc/vmbest.c: fix vmresize bug that didn't 0 new data
40304-12-19 misc/optget.c: broaden - long option match
40404-12-09 string/strtoi.h: fix terabyte 't' suffix math
405	 string/strmatch.c: flush cache on locale change
40604-12-01 tm/tmsleep.c: add
407	 tv.h,tv*.c,tv.3: move from pax
408	 tmx.h,tmx*.c,tmx.3: add high resolution tm(3) counterparts
409	 features/lib: add *another* sgi linux.ia64 memccpy bug check
41004-10-31 Makefile: __OBSOLETE__ now computed <6 months ago year>0101
411	 ccode.h,ccmapid.c: add ccmaplist(Ccmap_t*) iterator
412	 option.h,optesc.c: add 3rd arg, 1 => quote '?' too
413	 misc/magic.c: fix bug that terminated `string \0a' at \0
414	 misc/magic.c: handle vcodex() via decompose()
415	 misc/magic.tab: add vcodex magic
416	 features/stdio: handle _LARGEFILE64_SOURCE -- oops
417	 stdio/(fseek|ftell|fseeko|fsetpos|fgetpos|ftello).c: oops^2
41804-10-28 string/swapop.c: size==-4 => size=4 and extend op=3 to op=7
419	 tm/tmfix.c: fix tm_mon<0 logic
42004-10-22 tm/tmdate.c: handle 'final day feb 2004'
421	 port/astlicense.c: add query=all|id|${...}${...}
422	 port/astlicense.c: "free" => "mit"
423	 comp/omitted.c: revert to the open source license
424	 string/stropt.c: drop siz==0 => tab is hash table
425	 include/sfio.h: incorporate <sfstr.h>
426	 include/sfstr.h: drop
427	 disc/sfstrtmp.c: drop -- use sfstrbuf()
42804-10-20 misc/magic.tab: update tar magic
42904-10-18 ufc-crypt.h,crypt_util.c: drop GPL code
430	 crypt.c: add BSD code
431	 pathpath.c: disable { $0 $_ $PWD } related root search
43204-10-01 normalize ident stamps
433	 port/astlicense.c: add type=cpl -- yeah
43404-09-25 string/swapop.c: return op < size -- duh
43504-09-23 comp/spawnveg.c: :NOOPTIMIZE: -- volatile sometimes ignored
43604-09-21 comp/spawnveg.c: exec_errno_ptr is volatile -- duh
43704-09-14 tm/tmscan.c: add %| alternation and %& => tmdate()
43804-09-08 misc/optget.c: add :!value: omitted optional arg value
439	 misc/optget.c: fix --noNAME ambiguous option logic
44004-08-26 string/strperm.c: add who^mode to propagate least restrictive up
441	 astmath.c: add { frexpl ldexpl } checks for ast.req
442	 port/astlicense.c: ignore first option if non-assignment
443	 include/ast_dir.h: move d_fileno map before struct defs -- duh
44404-08-24 vmalloc/vmbest.c: add {VM_region} VMCHECK=+r for region segment checks
445	 misc/recfmt.c,include/recfmt.h: add
44604-08-23 vmalloc/vmbest.c: add {VM_primary VM_secondary} VMCHECK=-s for primary
447	 features/common: punt to <stdarg.h> for unknown va_list
44804-08-11 vmalloc: sync _UWIN libposix hooks
44904-07-27 features/common,features/limits.c: ULL suffix for unsigned _ast_int8_t
45004-07-22 include/ast.h,comp/eaccess.c: add eaccess() for effective access()
45104-07-19 comp/open.c,sfio/_sfopen.c: { O_RDONLY O_WRONLY O_RDWR } are values
45204-06-28 misc/error.c: check level after error_info.auxilliary
45304-06-24 string/strmatch.c: strgrpmatch() match[] now variable size array
45404-06-17 features/common: change _DLL null define to (the standard ast) 1
45504-06-11 misc/optget.c: allow optional [-|+|--|++] optstr() option prefix
456	 misc/optget.c: reset optstr() state on 0 return
457	 misc/optget.c: text()=>textout() linux.ppc symbol hijack workaround
45804-05-31 sfio/sfreserve.c: no side buffer if user buffer is large enough
45904-05-27 string/fmtbuf.c: handle one concurrent buf > sizeof(buf)
46004-05-24 regcomp.c: fix no-advance initialization
46104-05-05 conf.tab,conf.sh: update to align with standards
462	 magic.tab: ms suffix update
46304-05-04 port/lcgen.c: fix territory initialization
46404-04-15 tm/tmdate.c,include/tm.h: fix specific and ordinal days
46504-04-08 astconf: retain { HOSTTYPE LIBPATH LIBPREFIX LIBSUFFIX } strict vals
46604-04-07 vmalloc/vmbest.c: fix alpha tiny block bug
467	 vmalloc/malloc.c: re-enable on alpha
46804-03-30 tm/tminit.c: GMT => UCT only if tz.daylight not defined
46904-03-25 vmalloc/malloc.c: _AST_std_malloc=1 for __alpha
470	 path/pathprobe.c: per-user probe dir => $HOME/.probe/$HOSTTYPE
47104-03-23 regex/reglib.h: fix isw*() redefines
47204-03-17 features/stdio: no __FILE override for __CYGWIN_ (sys/reent.h clash)
473	 sfio/sfhdr.h,sfio/sfsetbuf.c: lower sfmove() default buf size 4x
47404-02-29 comp/omitted.c: move env trace after PATH fixup
475	 comp/omitted.c: cygwin spawn _P_DETACH => _P_NOWAIT+setpgid(pid,0)
476	 misc/optget.c: fix html mailto: match
477	 port/astlicense.c: add type=test for fixed 2001 date
478	 features/float: check local NaNQ first
479	 vmalloc/vmhdr.h: fix _vmextern_ vm_truncate return type
480	 misc/magic.tab: add elf s390 index=22
48104-02-26 vmalloc: VMCHECK a:assertions c:arena-check w:warn-instead-of-abort
482	 sfio/sfvscanf.c: fix extf arg selection
48304-02-24 features/dirent: set nodefine to avoid ast_std.h _typ_off64_t undef
484	 disc/sfkeyprintf.c: only case pattern must be ()[] balanced
48504-02-14 include/sfio_t.h: add SF_DCDOWN, SFDCNEXT(), SFDCPREV()
48604-02-13 string/strmatch.c: fix bug that didn't save one-time sub[] size
487	 vmalloc: -g: export VMCHECK=1 enable malloc/free checks
488	 vmalloc: -g: free(0) to check and disable malloc/free checks
489	 vmalloc: -g: free(1) to check and enable malloc/free checks
49004-02-11 Makefile: add :P=A: to conf and lcgen exec for cross-compile
491	 regex: use MBSIZE() instead of mbsize() to grab 1 char on err
492	 vmalloc/vmbest.c: updated to do more comprehensive DEBUG tests
49304-02-04 sfio/sfraise.c: add sfraise(0,a,b) to iterate over all streams
49404-02-01 vmalloc/vmbest.c: _BLD_DEBUG free(0) checks the arena
49504-01-31 features/vmalloc: fix typo that missed _mmap_zero
49604-01-23 string/strerror.c: handle real strerror() return value overwrite
49704-01-11 path/pathpath.c: fix size vs. sizeof(buf) typo
49803-12-22 misc/magic.tab: dos EXE tweaks
49903-12-05 vmalloc: sync with kpv, adding exceptf announcements
50003-12-04 port/astlicense.c: fix expand() loop sentinel bug
50103-12-02 include/ast.h: mbchar() advances by 1 on mbtowc() error
502	 misc/fts.c: increase MINNAME to 32
50303-11-21 vmalloc/vmbest.c: export VMCHECK=1 to enable $(CC.DEBUG) vmcheck()
504         vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT
505	 misc/magic.c: add { cobol copybook pl1 } and suffix preference
50603-11-12 features/stdio: drop cuserid,getopt for SUSV3
50703-11-11 vmalloc/*: merge kpv update -- this should stomp the compaction bug
50803-10-23 comp/iconv.c: fix sfreserve lock fallback
50903-10-20 sfio/_sfopen.c: add to allow user sfopen() intercept
51003-10-17 regnexec.c: fix exec time REG_LEFT, \x.... => wctomb()
51103-10-12 string/strtoi.h: fix strton '.' overconsumption
51203-10-12 comp/iconv.c: identity is always (iconv_t)0
51303-10-09 string/fmtesc.c: fix FMT_SHELL to check for all shell magic chars
51403-10-01 port/astlicense.c: unknown authors copied verbatim (instead of ignored)
51503-09-30 string/chresc.c: handle \u..., \x... consumes all trailing hex digits
516	 string/stresc.c: \u... and \x... > UCHAR_MAX => wctomb()
51703-09-29 fnv.h: add
51803-09-23 modedata.c: table is for external modes, so no arch specific hacks
519	 optget.c: fix option prefix match translation bug
520	 optget.c: add `<length> <name>=<value>\n' to optstr()
521	 features/lib: add memcmp() test for sgi optimzation bug
52203-09-22 regex.h,regcomp.c: add regncomp()
523	 regclass.c: fix for loop dangling ; in regaddclass()
52403-09-20 sftable.c,sfvprintf.c: fix SFFMT_CHAR handling to match extf api
52503-09-19 sfmode.c: update release to kpv's
52603-09-17 regcomp.c: add pedantic backref error checks
52703-09-16 regnexec.c: exec time REG_LEFT => don't advance past initial position
528	 regclass.c: add regaddclass() for user defined [:class:]
529	 regexec.h: REG_VERSION_N2X, add redisc_t {re_map} ccode map
530	 regstat.c: add regstat_t
53103-09-11 optget.c: --n:=v sets opt_info.assign=':', opt_info.number enabled
53203-09-09 disc/sfkeyprintf.c: *pn on lookup is arg separator; lookup "" arg too
53303-09-05 optget.c: [f:l*?] preserves user long name past '*' in opt_info.name[]
53403-09-03 sfstr.h: add sfstrpend() for #pending bytes in read buffer
53503-08-25 regex: add REG_FIRST, optimize bm
536	 features/lib: _AST_no_spawnveg==1 falls back to fork/exec
53703-08-22 features/stdio,stdio/asprintf.c,stdio/vasprintf.c: add
53803-08-21 path/pathnative.c,path/pathposix.c: interix updates
539	 features/botched: add cygwin _stat => _stat64
54003-08-15 include/ast.h: map out bsd strmode()
541	 features/common: add interix _ast_intmax_t workarounds
542	 misc/fs3d.c: 3d mount test now uses "" instead of NiL (or cygwin dumps)
54303-08-11 string/fmtesc.c: fix optional quoting checks
544	 tm/tmdate.c: fix > 1 year of seconds arithmetic
545	 tm/tmfix.c: fix leap year adjustments
54603-08-01 features/lib: beef up sock_peek test for interix
54703-07-29 features/float: add -lm to frexp... test
548	 Makefile: fix -lm astmath test sense
54903-07-26 features/mem.c: favor _mem_sbrk over _mem_mmap_*
55003-07-22 vmalloc/vmbest.c: fall back to sbrk() if mmap() fails
551	 features/mem.c: _mem_sbrk means sbrk() and brk() work
55203-07-17 regex/regcomp.c: fix bug that treated KRE X{n,m} like {n,m}(X)
553	 misc/magic.c: check MAGIC_VERBOSE for all load() messages
55403-07-14 misc/optget.c: handle [...]{[...]\f...\f...}
55503-06-21 misc/sigcrit.c: block SIGCHLD if _lib_sigprocmask || _lib_sigsetmask
556	 comp/spawnveg.c,sfio/sfmode.c: use sigcritical() SIG_REG_* macros
557	 comp/spawnveg.c: drop ENOEXEC logic
558	 vmalloc/*: snarf kpv KPVCOMPACT() fix
559	 vmalloc/vmbest.c: export VMCHECK=2 to disable KPVCOMPACT (just in case)
560	 string/strdup.c: drop __strdup() etc. intercepts -- malloc gets it
561	 features/mem: define _mem_method and _mem_* possible values
562	 vmalloc/malloc.c: _AST_mem_method==_mem_* to force mem get method
563	 sfio/sfputr.c: __ia64 memccpy is bogus -- how many tries do they get?
564	 path/pathshell.c: verify abs path and access(path,X_OK) -- duh
565	 vmalloc/vmhdr.h: add private _Vmessage() for non-sfio ASSERT()
566	 port/astconf.c: fix bug that always returned the minmax value
56703-06-11 comp/*.c: reorder macro hding for mvs.390 and <ast_map.h>
568	 features/vmalloc: add _lib_brk and _lib_sbrk verification
569	 include/ast_std.h,etc.: add _map_malloc for malloc => _ast_malloc
570	 comp/conf.sh: fix SI_* and *_SI_* macro redefs
571	 ast.h: VMDEBUG or _BLD_DEBUG enable <vmalloc.h> and VMFL tracing
572	 vmalloc/vmtrace.c: _PACKAGE_ast __FUNCTION__ is a string
573	 vmalloc/vmtrace.c: set trace file fd FD_CLOEXEC
574	 vmalloc/vmbest.c: set /dev/zero mmap fd FD_CLOEXEC
575	 features/mmap: fix ancient read() vs. mmap() time arithmetic typo
576	 vmalloc/malloc.c: _AST_std_malloc==1 to force standard malloc
57703-06-09 comp/omitted.c: add _imp__FUNCTION sybols for __CYGWIN__ static link
578	 vmalloc/vmbest.c: handle systems with sbrk() but no brk()
57903-06-04 port/astconf.c: drop non-standard diagnostics
58003-06-03 comp/conf.sh: rework symbol collision logic
58103-05-30 conf.tab,conf.sh,astconf.c: add <sys/systeminfo.h> sysinfo() SI_*
58203-05-29 ccode.h: rework for extensibility, drop obsolete mematoe(), memetoa()
58303-05-28 regex/*: recode to use isw*() directly when needed, is*() otherwise
58403-05-27 features/vmalloc: fix _std_malloc test
58503-05-25 misc/optget.c: fix optstr() ???* internal options
58603-05-24 misc/optget.c: fix (ancient) argv null dereference
58703-05-23 comp/getcwd.c: don't intercept on _WINIX -- unreliable st_ino
58803-05-22 sfio/sfsprintf.c: n<0 => don't append '\0'
58903-05-18 misc/fts.c: re-stat FTS_DP to update nlink/times
590	 misc/fts.c: add FTSENT.stack to eliminate getlist() recursion
591	 regex/ucs_names.h: use "..." catenation to placate some cc's
59203-05-11 string/strtoi.h: handle "-" "+" "0x" "11#"
59303-05-09 vmalloc/vmbest.c: large memory allocation tweaks
59403-05-06 misc/optget.c: fix getopt_long() prefix==1 bug that missed short flags
59503-04-27 comp/system.c: handle <ast_map.h>
59603-04-24 vmalloc/vmmopen.c: drop dup <unistd.h>
59703-04-21 tm/tmdate.c: fix next hour/min logic
59803-04-15 vmalloc/malloc.c: intercept __malloc() along with __libc_malloc()
599	 string/strdup.c: intercept __strdup() along with __libc_strdup()
600	 features/mmap: consolidate from features/(lib|sfio|vmalloc)
601	 add _NO_MMAP==1 to disable all mmap()/munmap() calls
602	 path/pathposix.c: add
60303-04-14 comp/setlocale.c: fix debug_mbtowc() return value for *s==0 || n < 1
604	 comp/iconv.c: fix error return errno values
60503-04-11 misc/stk.c: fix stkgrow() realloc bug
60603-04-05 string/tok.c: support readonly single token input strings
607	 disc/sfdcdio.c: fix F_DIOINFO and FDIRECT #ifdef's
608	 include/ast_std.h: allow _LARGEFILE64_SOURCE on __hppa
609	 features/common: fix `tst _foo_' => `tst foo_' typo
610	 features/float: fix `tst _foo_' => `tst foo_' typo
611	 features/float: add FLTMAX_(UINTMAX_MAX,INTMAX_MAX,INTMAX_MIN)
612	 comp/omitted.c: fix pathconf => _pathconf => _ast_pathconf loop
61303-04-03 features/float: add _ast_no_um2fm: no usinged intmax => floatmax cast
614	 vmalloc/vmbest.c: add getenv("VMCHECK") to initialize Vmcheck
61503-03-28 include/ast_dir.h: add D_TYPE; { D_FILENO D_TYPE } must be #ifdef'd
616	 misc/fts.c|getcwd.c|glob.c,preroot/getpreroot.c: add D_FILENO #ifdef's
617	 Makefile: make sure _BLD_ast is defined for all compiles
61803-03-27 ast_vfork.h: generate from features/vfork to pick up headers/pragmas
61903-03-25 comp/omitted.c: drop free() of live environ
620	 path/pathshell.c: allow trailing .exe -- pox on that
621	 string/strtoi.h: fix bug leading 3 digits before thousands sep bug
622	 string/(fmt|str)[gu]id.c: we know root when we see it
62303-03-24 misc/optget.c: handle : and ? in := default value
62403-03-21 ast_std.h: drop all spawn*() but spawnveg()
625	 obsolete/spawn.c: add for dropped spawn*()
626	 features/lib: _use_spawnveg if spawnveg() is a win over fork()/exec()
627	 features/lib: drop NutForkExecve() and _map_spawnve
628	 features/lib: fix memccpy test to clean up /tmp droppings
629	 comp/spawnveg.c: call posix_spawn() if implemented
630	 comp/omitted.c: add spawnve() intercept
631	 comp/getoptl.c: set getopt_long() optind even if no options
632	 tm/tmfmt.c: add %Q<delim>recent<delim>distant<delim>
633	 misc/optget.c: fix trailing '*' for option and option args
634	 sfio/sfmode.c: getenv("_AST_SFIO_OPTIONS") [,]SF_LINE[,] for fd {0,1,2}
635	 vmalloc/*: kpv sync for uwin build independent of libast
63603-03-18 port/astconf.c: switch to dynamic string values (saves 7K data/bss)
637	 string/strmatch.c: switch to dynamic regex cache (saves 3K data/bss)
638	 regex/regcoll.c,ucs_names.h: initialize rw tables from smaller ro data
639	 features/lib: add vfork test for passing SIG_IGN across exec
640	 features/lib: add spawn test for passing SIG_IGN across spawn
64103-03-17 comp/omitted.c: unlink() renames to .deleted dir in case file open
642	 sfio/sfpopen.c: handle mode "" for spawn with no pipe
643	 features/float,comp/frexp.c,comp/frexpl.c: add pow2() table alternative
64403-03-12 features/lib: fix linux.ia64 memccpy() tests -- now its their turn
645	 features/vmalloc: fix /dev/zero test
646	 features/align: _ast_intmax_t and _ast_fltmax_t join the union
647	 misc/stk.c: fix struct frame size to align data
648	 disc/sfdcdos.c: change sfslen() => sfvalue(f)
64903-03-10 misc/optget.c: handle [f\f:x:lll\f?ddd]
65003-03-07 port/astconf.c: uninitialized CONFORMANCE + POSIXLY_CORRECT => standard
65103-03-05 comp/omitted.c: make sure at least /bin is in PATH to find cygwin dlls
65203-03-02 path/pathshell.c: write access to /bin is effectively root
65303-02-28 features/float: add (FLT|DBL|LDBL)_U?(LONG|LONGLONG|INTMAX)_(MIN|MAX)
65403-02-25 features/lib: change vfork() test to use _exit() instead of exit()
65503-02-23 include/error.h: update ERROR_VERSION for error_info.number space
65603-02-22 comp/conf.sh: wrap ksh check in eval to avoid premature exit
65703-02-21 misc/fts.c: verify chdir(..) to avoid malicious dir rename()
65803-02-19 string/strtoip4.c: isspace() instead of ' '||'\t'
65903-02-17 regex/regcomp.c: fix stats.l REX_REP logic that botched REX_BM
66003-02-13 string/base64.c: handle catenated encodings
66103-02-11 features/libpath.sh: change LIBPATH to <dir>[:<env>[:<pat>]][,...]
66203-02-07 path/pathfind.c: allow "/dev/null" to be PATH_REGULAR
66303-02-06 include/ast.h,fmtquote.c: add FMT_ALWAYS|FMT_ESCAPED|FMT_SHELL|FMT_WIDE
66403-02-05 tm/tmdate.c,tm/tmword.c,string/strelapsed.c: '_' treated like ' '
66503-02-01 string/strelapsed.c: handle ps style [day-][hour:]min:sec
66603-01-31 port/astlicense.c: fix author=* match
66703-01-30 include/tm.h: add tmisleapyear() macro
66803-01-29 comp/getopt.h,comp/getoptl.c: add gnu getopt_long(), getopt_long_only()
669	 include/ast_getopt.h: for non-gnu part of comp/getopt.h
670	 include/ast_std.h: include <ast_getopt.h> instead of <getopt.h>
67103-01-28 ast.h,string/base64.c: add base64encode() and base64decode()
672	 path/pathfind.c: verify S_ISREG()
67303-01-24 path/pathexists.c: fix abs dir bug and deal with case ignorance
67403-01-23 path/pathpath.c: honor PATH_ABSOLUTE for the easy case too
67503-01-22 path/pathprobe.c: fix search to find both the probe script and command
67603-01-17 misc/magic.tab: application/zip => appplication/(gzip|pzip|zip)
67703-01-14 misc/optget.c: change href="" to href="."
67803-01-10 include/ast_std.h: strtold() import hackery for static __CYGWIN__
67903-01-03 include/regex.h,regex/regcomp.h: add REG_SHELL_GROUP
680	 include/ast.h,string/strmatch.c: add STR_GROUP for REG_SHELL_GROUP
68102-12-15 include/error.h: errorcontext => Error_context_s (compatible til 2004)
68202-12-06 misc/sigdata.c: add NoF(sigdadata) -- why nmake was uninterruptable!
68302-12-03 comp/omitted.c,features/omitted: handle cygwin alarm() return botch
68402-11-27 misc/swapop.c: op=3,size=4 => op=7
685	 string/strlcat.c,strlcpy.c: fix uwin decl clash
68602-11-26 sfio/sfvprintf.c: fix sfsprintf() '\0' termination bug
68702-11-22 misc/glob.c: move static struniq() to libast extern
688	 string/fmtversion.c,include/ast.h: add fmtversion
68902-11-18 string/strncopy.c: add
690	 misc/magic.tab: list size for magicid.h magic
69102-11-14 sfio/sfvprintf.c: add %#c for C escapes
692	 include/error.h: add ERROR_NOTIFY context flag for builtin commands
69302-11-11 string/strtoi.h: add S2I_size for strnto*() size_t 2nd arg
694	 sfio/sfstrtof.h: add S2I_size for strnto*() size_t 2nd arg
695	 comp/putenv.c: add setenv() and unsetenv() wrappers for setenviron()
69602-10-31 path/pathfind.c: add dir of including file to the pathinclude() list
697	 misc/optesc.c: add
69802-10-30 string/strtoip4.c: set next char pointer even on error
69902-10-29 comp/resolvepath.c: add (size_t version of realpath())
700	 misc/mime.c: fix mimehead() to ignore null content values
70102-10-28 misc/glob.c: add GLOB_STARSTAR for /**/ and GLOB_NOTDIR optimization
70202-10-27 string/struniq.c: add
70302-10-23 features/common: fix off-by-one loop check
70402-10-18 include/ast_std.h: avoid off_t,ftruncate,lseek,truncate redefinitions
70502-10-17 misc/mime.c: handle type/* match, fix bogus header parse
70602-10-04 sfio/sfstrtof.h: S2F_static <0:export =0:private >0:static
70702-10-02 features/common: don't define _WIN32; define _WINIX => unix on windows
708	 features/tty: finally stomp the bsd _POSIX_VDISABLE redefinition
709	 misc/fastfind.c: add more specific findwrite() error messages
710	 comp/omitted.c: fix cygwin utime() to update st_ctime
711	 comp/strtol.c,strtoul.c: __CYGWIN__ static link workaround XXX
712	 string/fmtls.c,fmttime.c: tmform() => tmfmt()
71302-09-22 port/astconf.c: return values in fmtbuf() buffer instead of stack
714	 port/mnt.c: don't set MNT_REMOTE for win32 ?:\* paths
715	 sfio/sfvscanf.c: _sfdscan() is library global (not static)
71602-09-21 path/pathkey.c: add tool arg for mamake compatible hash
717	 features/fcntl.c: handle iffe _hdr_lcl_* => _lcl_* change
71802-09-15 comp/conf.sh: fix enum vs. macro test
719	 cdt: kpv sync
72002-09-11 ast.h,features/common: move _WIN32 macro init to features/common
721	 features/common: enable __EXTERN__ and __DEFINE__ for _WIN32&!_UWIN
722	 features/float: add -lm to _ast_*_nan_init tests
723	 vmalloc: kpv sync with vmresizef => vmgetmem
724	 features/iconv: must have both <iconv.h> and iconv_open()!
725	 features/vmalloc: alloca test must compile *and* link
726	 sfio/sfvscanf.c,sfstrtof.h: add flag arg to char get, fix NaN loop
72702-09-10 vmalloc/vmhdr.h: enable getpagesize() and sbrk() prototypes
728	 features/fcntl.c: enable mmap64() prototype
729	 include/ast_windows.h: windows.h wrapper with ast namespace workarounds
73002-09-07 misc/mime.c: fix quoted value parse bug that ate the whole line
73102-09-05 features/vmalloc: add free() to _std_malloc test
732	 include/ast.h: NoF(x) now defines _DATA_x for !_BLD_DLL too
733	 tm/tmlocale.c: { C POSIX en } == unix dadgummit
73402-08-29 path/pathfind.c: initialize Dir_t.next=0
73502-08-28 uwin/rint.c: update
736	 features/libpath.sh: "bin" is now the default value
73702-08-22 vmtrace.h: add for debugging
73802-08-20 misc/magic.c: convert to use <cdt.h>
739	 vmalloc/vmresizef.c: add for generic discipline resizef default
740	 string/strelapsed.c: allow long time component names
74102-08-19 misc/optget.c: add `.fp 5 CW' to --nroff output
742	 string/(fmtfs|fmtuid|fmtgid|strgid|struid).c: convert to use <cdt.h>
743	 include/dt.h,cdt/dtnew.c: add for dtopen() in specific vm region
74402-08-13 comp/omitted.c: fix bzero logic for e.g. unixware.i386
745	 include/ast.h: add fmtbase->fmtbasell; swap in 2003-09-01
74602-08-12 regex/regnexec.c: fix REG_MINIMAL REX_DOT mb bug
74702-08-08 features/iconv: <ast_common.h> instead of <sys/types.h> <ast_common.h>
74802-08-07 regex/regcomp.c: recognize anchors in BRE subexpressions
74902-08-06 comp/iconv.c: handle win32 cpNNNN == windows-NNNN aliases
75002-08-05 cdt/*: sync with kpv src
75102-08-02 features/iconv: include sys/types.h for ast_types.h
75202-08-01 misc/magic.c: magic file "." names the default
753	 misc/magic.c: handle addr type (from irix string)
754	 features/lib: move malloc tests to features/vmalloc
755	 features/vmalloc: snarf tests from features/lib
756	 vmalloc/*: sync with kpv src
757	 comp/libc.c: dropped -- __libc_* intercepts moved to vmalloc/malloc.c
75802-07-30 features/lib: handle __libc_malloc() in _std_malloc test
759	 vmalloc/malloc.c: add gnu pvalloc()
760	 features/vmalloc: fix alloca check
76102-07-29 features/limits.c: handle netbsd guards
76202-07-27 sfio/sfpoll.c: handle rw pipes
76302-07-25 features/iconv: include ast_types.h for size_t in ast_iconv.h
76402-07-18 apply LARGEFILE64 header prototype clash patches
765	 misc/optget.c: __EXTERN__ _opt_info_ instead of opt_info
76602-07-17 ast_std.h: memzero() now defaults to memset() instead of bzero()
76702-07-16 ast_std.h: add ast.env_serial
768	 misc/setenviron.c: increment ast.env_serial
769	 include/tm.h: tmset() now calls tminit() directly
770	 tm/tminit.c: check ast.env_serial for env change
771	 tm/tmfix.c: speed up for large values of tm_mday
77202-07-15 comp/fnmatch.c: fix memory leak caused by missing regfree()
773	 comp/strstr.c: fix broken interpretation and implementation
774	 comp/iconv.c: intercept (but no-op) null to and from buffer pointers
77502-06-27 ast_std.h: map _sysconf => _ast_sysconf for sun
77602-06-26 cdt,sfio,vmalloc: kpv sync -- is this ever easy?
77702-06-24 sfio: kpv sync, vfwscanf(),fputw() fix (wcslen(x)*sizeof(wchar_t)!!)
778	 misc/fts.c: fix symlink chdir() optimzation bug
77902-06-11 sfio/sfwrite.c: string to file fix
780	 Makefile: __OBSOLETE__==20020101
78102-06-01 regex/regcomp.c: REG_DELIMITED now consumes the delimiter
78202-05-31 regex/reglib.h,regcomp.c,regnexec.c: null subexpression fixes
78302-05-24 misc/fts.c: disable dir link counts in 3d
784	 misc/magic.c: fix "*(mkfile)" sh pattern to "*@(mkfile)"
78502-05-20 regex.h,regex/regsubcomp.c,regex/regsubexec.c: add
786	 regex/regsub.c: deprecate
78702-05-16 tm/tmfix.c: fix '60+n min/sec ago' bug for n min/sec after the hour
78802-05-14 regex/regsub.c: fix (^|x) null match early termination bug
78902-05-13 dir/dirlib.h: drop errant extern==__EXPORT__
790	 features/uwin: add uwin lib tests
791	 uwin/*.c: check features/uwin for stubs
792	 features/float: add nan representation generation
793	 sfio/sftable.h: used _ast_*_nan_init for huge values
79402-05-09 misc/fts.c: fix virtual top to force ``child'' stat()
795	 features/common: define va_copy() only if not in <stdarg.h>
79602-05-01 string/strtoip4.c: cisco inverted quad mask must have 4 parts
79702-04-30 misc/magic.tab: fix pzip version check
79802-04-19 string/strtoip4.c: handle cisco inverted quad mask n.n.n.n/i.i.i.i
79902-04-18 misc/fts.c: add chdir() verification stat() optimizations
800	 path/pathkey.c: check PROBE_ATTRIBUTES for list of vars
80102-04-12 port/astlicense.c: type=open tweak, fix author list spacing
80202-04-11 regex/regcomp.c: check for pattern number overflow
80302-04-05 tm/tmfmt.c: add %u
80402-04-04 sfkeyprintf.c: fix %c numeric value
805	 path/pathpath.c: check plain path first -- duh
80602-04-03 misc/fts.c: fix (FTS_PHYSICAL|FTS_NOSTAT) stat optimizations
807	 ftwalk.c: only clear FTW_DELAY if FTW_CHILDREN
808	 ftwalk.h: add FTW_NSOK for FTW_DELAY
80902-03-29 ast.h: drop strerror() prototype -- already in <ast_std.h>
810	 features/stdio: check for _SFIO_H redundant _Sfstd* declarations
81102-03-26 misc/glob.c: fix GLOB_LIST gl_flags values
81202-03-24 port/mnt.c: update bsd fstype name and mount option logic
81302-03-23 Makefile: add ast_wchar.h to the .check.hdr list (for mamake)
81402-03-17 features/stdio: hack around g++ 3.* clashes
815	 Makefile: add ast_nl_types.h to the .check.hdr list (for mamake)
816	 string/strtoip4.c: fix validity check bug that only checked last part
81702-03-14 misc/optget.c: fix --keys to not expand inline \f...\f
81802-03-12 port/astlicense.c: add type=free
819	 path/pathaccess.c: sibling ".." search ignores relative dirs
820	 sfio/sfvscanf.c: sfstrtof get() must return 0 on eof
82102-03-11 path/pathexists.c: check path by pairs checking {ENOTDIR,ENOENT}
82202-02-14 features/float: copy local min/max macros to avoid printf roundoff
823	 features/wchar: include <ast_common.h>, not <ast_std.h>
824	 misc/magic.c: match[]=>matches[] to fix K&R match() macro conflict
825	 include/vmalloc.h: include <stdlib.h> for !_PACKAGE_ast
826	 uwin/mini.sym: add sprintf (now required by features/common)
827	 regex/regnexec.c: truncate wide chars for <ctype.h> functions
828	 Makefile: fix MAM ast_common.h sequencing bug by making it first
829	 cdt/dthash.c: fix DT_DELETE memory leak (DT_DETACH typo)
830	 cdt/dthash.c: fix DT_DELETE double free (dt->data->here typo)
831	 regex/regcomp.c: fix recomb() to reject RE with backref
832	 features/iffeio: explicitly generate stdio.lcl
833	 stdio: add {fcloseall,f(get|put)s_unlocked,fmemopen,getdelim,getline}
834	 tmmake,tmtime: allow negative time_t if native localtime/gmtime do
835	 tmdate: allow years before 1969
836	 fmtfmt: add
837	 include/ast.h: add { PATH_TOUCH_CREATE PATH_TOUCH_VERBATIM }
838	 Makefile: add std/*.h for std header iffe overrides
839	 comp/iconv.c: fix non-C win32 sfreserve() loop
84002-02-11 features/common: separate long long / long double tests
841	 features/common: verify printf handles long long / long double
84202-02-02 include/ast_std.h,sfio/sfhdr.h: drop _hdr_locale tests -- always on now
843	 include/ast_std.h: trust _UWIN <unistd.h>
84402-01-31 port/mnt.c: add aix options field
84502-01-30 comp/strstr.c: add for ancient s5
846	 stdio/_flsbuf.c: only on systems that transfer to native (e.g., uwin)
847	 string/strtoi.h: cat min/max error return values
84802-01-28 features/tty: add cf[gs]et[io]speed macros for <termio.h>
849	 comp/rename.c: punt to (ancient) /usr/lib/mv_dir on EISDIR
85002-01-24 sigcrit.c: fix SIGCLD!=SIGCHLD interrupt loop
851	 sfvprintf.c: convert fast io macros to functions for uts.390 cc
852	 string/strtoi.h: drop #pragma prototyped for standalone sfio
853	 sfdcsubstr.c: rename from sfdcsubstream.c for 14 char fs
85402-01-22 execlp,execvp,execvpe,spawnlp,spawnvp,spawnvpe: fix __EXPORT__
855	 spawnlp,spawnve,spawnvp,spawnvpe: handle ms mode arg -- barf
856	 sftable.c: ifdef hacks for _WIN32&_ALPHA_ fp exception
857	 _stdfun.c: add _UWIN&_ALPHA_ iob map
85802-01-18 sfio/sfstrtof.h: drop #pragma prototyped for standalone sfio
85902-01-17 features/hdr: don't include <stddef.h> after it doesn't check out!
86002-01-16 misc/magic.c: add version type for YYYYMMDD or [a.][b.]c.d
861	 misc/magic.c: recode mime %s parse -- sensible and no buffer overflow
86202-01-15 misc/magic.tab,magicid.h: add generic binary magic number and header
86302-01-12 tm/tmlocale.c: override win32 default date for {C,POSIX,en} locales
864	 comp/omitted.c: fix cygwin workaround logic bugs
86502-01-09 stdio/fseeko.c,ftello.c: add from UNIX98
86602-01-08 comp/conf.sh: use $cc instead of cc
86702-01-07 string/strlcat.c,string/strlcpy.c: add bsd api
86801-12-18 comp/conf.tab: fix LFS_CFLAGS default for sun _CS_LFS_CFLAGS botch
869	 features/common: add hdr stdarg test
870	 tm/tmdate.c: handle YYYY/MM/DD
87101-12-10 misc/magic.tab: add generic 0x00010203 binary magic
87201-12-03 path/pathprobe.c: return HOME relative path if readonly/non-suid fs
87301-11-30 misc/optget.c: add simple cache for repeat offenders (like ksh read)
874	 sfio/sfhdr.h: preserve errno across SFMMSEQON-SFMMSEQOFF
87501-11-29 magic.tab: fix GIF version number listing
87601-11-28 string/fmtbase.c: p!=0 => base always included in output
87701-11-26 misc/fts.c: empty path is an error
87801-11-14 misc/optget.c: fix --?+SECTION queries to include paragraphs
87901-11-20 regex/regnexec.c: fix REG_MINIMAL character class match bug
88001-11-19 features/lib: retain _lib_confstr for all solaris releases
88101-11-16 comp/setlocale.c: fix !_lib_setlocale typo
88201-10-31 regex/ucs_names.h: add string catenation to keep line length low
883	 misc/fastfind.c: handle gnu slocate db read
884	 misc/optget.c: add --?+SECTION queries
885	 comp/fnmatch.h: add FNM_NOSYS
88601-10-30 tm/tmdate.c: fix cron specs when both wday and mday are specified
88701-10-20 misc/glob.c: fix bug that called \ trim() twice on same path
888	 misc/glob.c: fix \ trim() bug that restored / to wrong position
889	 string/fmtre.c: fix { ^ . $ } translations
890	 misc/optget.c: use original string if translation fails -- duh
891	 sfio/sfhdr.h: assume <errno.h> assigns proper atttibutes to errno
892	 comp/regcmp.c: __ia64 workaround fixed by proper CC.DLL probe
893	 comp/getdate.c: __ia64 workaround fixed by proper CC.DLL probe
894	 features/lib: add lib getdate
89501-10-18 features/lib: check for strtod static link collision
896	 features/float: add another signed cast for old bsd cc
897	 features/wchar: add <stdlib.h> <stdio.h> before <wchar.h> for old bsd
89801-10-17 sfio/sfcvt.c: limit max precision to { FLT_DIG DBL_DIG LDBL_DIG }
899	 sfio/sfcvt.c: fix %[aA] format to always have leading 0[xX]1.
900	 sfio/sfvprintf.c: handle %C %lc %S %ls for wchar_t args
901	 sfio/sfvscanf.c: handle %C %lc %S %ls for wchar_t args
902	 string/fmtmode.c: fix bug that omitted trailing '\0'
90301-10-12 misc/optget.c: . => \&. for --??nroff
904	 comp/wc.c: fix mbstate_t initialization typo
905	 features/float: fix max integer / float loop termiation
906	 features/float: fix LDBL_UINTMAX_MAX typo that did DBL_UINTMAX_MAX
90701-10-11 include/sfio.h: fix _Sfstd* import/export
908	 features/common: fix _UWIN __DYNAMIC__() definition
90901-10-06 features/fcntl.c: { O_BINARY O_TEXT } default to 0
910	 features/omitted: add for comp/omitted.c
911	 sfio/sfopen.c: O_BINARY default for _WIN32&&!_UWIN
91201-10-05 misc/glob.c: fix `\(x/*' GLOB_NOMATCH bug that returned `(x'
913	 misc/optget.c: fix localization lookup that didn't drop doubled : ? ]
91401-10-04 comp/setlocale.c: handle sizeof(wchar_t)!=4 in debug locale
915	 comp/conf.sh: handle sytems where _SC_* is both an enum and a macro
91601-09-25 astconf: add LIBPREFIX
91701-09-20 features/common: add __DYNAMIC__() for dll externs
91801-09-19 cdt: kpv update
919	 mb*() macros: update for ksh conversion, extend debug locale
92001-09-16 tm/tmlocale.c: add compiled in defaults for C locale
921	 misc/glob.c: add gl_nextdir callback for GLOB_COMPLETE
92201-08-14 clarify _WIN32 vs. _UWIN vs. __CYGWIN__
923	 tminit: fix standard & daylight initialization
92401-09-11 pathnative.c: add for native fs representation
925	 regex.h: fix regerror_t prototype
92601-09-04 regex/regnexec.c: fix REG_ICASE for multi-char collating elements
927	 tm/tmlocale.c: fix old ascii LC_TIME load
928	 locale*: add new LC_* categories
929	 comp/omitted.c: add CYGWIN workarounds
930	 features/lib: add CYGWIN workarounds
93101-08-11 features/common: some compilers have long long but no LL constants!
932	 features/lib: add mmap64 implementation test (for linux.s390)
933	 regex/regcomp.c: fix \ in [...] parse
934	 setlocale: retain user locale spelling in setlocale() return value
935	 features/limits.c: don't include ./limits.h -- duh
936	 fmtesc: don't escape multibyte chars
937	 tm/tmlocale.c: fix native C locale default
93801-08-08 features/float: some compilers (msdev) forget long long vs. double
93901-07-31 misc/optget.c: handle suboptions
94001-07-27 cdt.h: add DTDISC()
94101-07-17 iffeio.h: move to include for stdio bootstrap iffe workarounds
94201-06-25 regex: perl extensions added and tested
94301-06-21 misc/error: add ERROR_OPTIONS=prefix=string for message processing
94401-06-15 string/chresc: only 2 hex digits max for \xxx
945	 regex/regsub: handle REG_SHELL ~(nnn) rhs backrefs
94601-06-11 regex: handle embedded \0 in pattern and subject string
947	 regex: add (?nnn) for backrefs > 9
948	 comp/fnmatch: add FNM_LEADING_DIR for gnu compatibility
949	 features/float: _ast_flt_unsigned_max_t for bsd.i386 omission
95001-06-06 misc/optget.c: add o option for old ps,ar,tar with optional leading -
951	 regex/regcomp.c: REG_LENIENT|REG_DELIMITED \<newline> => <newline>
952	 regex/regcomp.c: REG_LENIENT \000 => NUL
95301-06-04 features/dirent: replace Makefile hack with iffe semi-hack
954	 regex/regnexec.c: negation must also check REG_SHELL_DOT
95501-06-03 sprintf.c: change buf size from SF_BUFSIZE to INT_MAX
95601-05-31 glob: fix gl_fignore to ignore leading . by default
957	 features/lib: add botch_d_ino_dirent64 for linux botch
95801-05-25 port/lc.tab: add a few missing language_territory's
95901-05-23 string/chresc: \C[.collation-element.]
960	 fmtmatch,fmtre: update for <regex.h> syntax extensions
96101-05-21 regex: add perl extensions, unicode names for collation elements
96201-05-11 string/chresc: \e == \E == escape, \cX == control X, \x{..} == \x..
96301-05-09 path/pathtemp.c: pathtemp(0,0,0,"/private",0) for mode S_IRUSR|S_IWUSR
964	 port/touch.c: handle utime(2) EPERM to fix bug that truncated
965	 regex: change REG_MINIMAL to avoid negation -- much faster now
96601-05-08 *.h: add some off_t macro guards for suse linux
96701-05-03 regcomp.c: optimize ((x)!)* to ((x)!)
968	 wchar: add <wchar.h> and stdio wchar routines
96901-05-02 feaures/wchar: add <wchar.h> intercept, add stdio wchar functions
97001-05-01 string/strtoi.h: signed strtoi accepts qualified unsigned constants
97101-04-30 comp/setlocale.c: fix code that relied on 2 simultaneous getenv()'s
972	 tm/tmlocale.c: check for UTF-8 encoded LC_TIME files
973	 misc/magic.tab: add utf-8 and utf-16 U+FEFF magic
97401-04-26 features/common: some cc's have _ast_int8_t but not LL constants
97501-04-24 features/lib: add _std_strtod for mac os X
97601-04-23 ccode: add CC_sub for ms embedded EOF char on ebcdic -- no joke
97701-04-20 iconv: handle ebcdic<=>utf
978	 mc.h,mc.c: add mcindex()
979	 ast_std.h: add AST_MESSAGE_SET
98001-04-18 features/libpath.sh: fix mvs probe
981	 *: sundry mvs fixes
982	 glob: fix GLOB_NOCHECK to avoid stat() and properly trim patterns
98301-04-01 strtod,strtold: add
984	 strtol,strtoul,strtoll,strtoull,strton,strtonl: handle locale & ERANGE
985	 sfvprintf,sfvscanf: handle locale decimal_point,thousands_sep
986	 sfvprintf,sfvscanf: handle %a,%A
987	 setlocale: add LC_NUMERIC decimal_point,thousands_sep init
988	 ast_std.h: __OPTIMIZE_SIZE__==1 to disable non-std __GNUC__ inlines
989	 pathexists: path cache to cut down pathpath() access(2) calls
990	 features/stdio: __FILE_TAG == _sfio_s for solaris
99101-03-23 iconv: fix iconv_move buffer boundary bug that stopped at 1 block
99201-03-19 glob: add GLOB_AUGMENTED
993	 regex: REG_SHELL syntax error implies REG_LITERAL match
994	 strto[ln][ll]: add overflow checks
99501-03-17 locale: reimplemented to provide canonical locale namespace
996	 locale: add LC_ALL=local for local system user default
997	 tm.h: TM_*_3 => TM_*_ABBREV
998	 tmfmt: handle standard E and O format modifiers
999	 tmlocale: consult nl_langinfo() if defined
1000	 fmtquote("\"",1) => shell quote
100101-03-08 regex: handle multibyte chars and collation classes
1002	 strmatch,strgrpmatch: now a wrapper on regex
1003	 ast_std.h: add mb*() multibyte and collation support
1004	 sfvscanf: handle locale decimal and thousand
1005	 proc*,system: handle ignored SIGCHLD
1006	 sfkeyprintf: handle %*C
100701-03-06 locale: add locale data cache for efficient multiple locale switching
1008	 optget: fix LC_MESSAGES!=C --man bug
100901-03-01 Makefile: HEADEROPT is not optional for win32.*
1010	 comp/syslog.h: comply with the de factos
1011	 optget(): fix \f...\f stack bug that referenced data after pop
101201-02-27 *locale*: a batch of fixes for native LC_MESSAGE&LC_TIME hooks
101301-02-22 pathprobe: reprobe test now checks probe.ini too
1014	 sfio_s.h: advertize public Sfio_t members with _ prefix
1015	 sfio.h,features/stdio: add <sfio_s.h> reference
1016	 sfhdr.h: map <sfio_s.h> _foo to foo
1017	 sfio.h: SF_APPEND=>SF_APPENDWR, SF_CLOSE=>SF_CLOSING
101801-02-14 comp/conf.sh: probe <unistd.h> for _(CS|PC|SC)_* getconf symbols
1019	 stdio/*: update for uwin stdio.dll binary compatibility
1020	 sfread: finally fixed premature pipe read EOF bug
1021	 fmtscale: format tenths for number > 0 && number < 10
102201-02-09 _sfmode(),_sftype(),_Sfextern: UWIN binary stdio compatibility exports
102301-02-08 sfgetm,sfputm,_sfputm: fix max clash with k&r max() macro
1024	 setlocale: undef valid for sun4 k&r valid() macro
102501-02-07 catopen.c: don't do native catopen for the debug locale
102601-02-06 sfraise.c: add SF_FINAL check to avoid (posibly) freed disciplines
102701-01-01 features/common: fix uwin __DEFINE__
1028	 sftable: initialize decimal and thousand
1029	 magic.tab: add corel wordperfect document
1030	 syslog: add LOG_LEVEL, add '\n' only if needed
1031	 include/tm.h: #undef daylight for _WIN32
1032	 sfio.h: add _SF_APPEND and _SF_CLOSE for native namespace incursion
1033	 ast_std.h: add AST_LC_multibyte for MB_CUR_MAX>1
1034	 setlocale: set AST_LC_multibyte
1035	 strmatch: check AST_LC_multibyte
1036	 features/limits.c: add _BITS_POSIX1_LIM_H guard for linux
1037	 features/libpath.sh: fix for aix LIBPATH
1038	 procopen,procclose: block SIGCHLD if PROC_FOREGROUND (e.g., system(3))
1039	 optget.c: add enumerated option argument values
1040	 optget.c: add <!--INTERNAL--> for private --html
1041	 optget.c: fix memory leak that hit shell builtins hard
1042	 sfio: drop sfread small chunk logic
104300-12-25 mnt.c: handle " and ' quoting for fstab
1044	 sftmp.c: let pathtemp() open the fd O_EXCL
104500-12-15 conf.sh: add -v for verbose trace
1046	 features/(limits|unistd).c: no FEATURE/types because of _POSIX_SOURCE
1047	 features/time: add default for CLOCKS_PER_SEC
1048	 features/lib: std_malloc now handles NeXT
104900-12-13 strton: recognize qualifier only if preceded by a digit
1050	 features/lib: change return in vfork() test to exit() for linux sparc
1051	 fmtquote: fix $'...' quote logic
105200-12-11 tmdate: fix cron format bug that mishandled months
105300-12-01 optget: handle $Id: ... $ in --?-version
1054	 features/fcntl.c: fix _STDPP_ mmap munmap
105500-11-27 magic: drop dup sfclose() in load()
1056	 optget: handle error_info.id==0
105700-11-22 features/stdio: add _FILEDEFED for sol9.sun4
1058	 strton,stronll: handle [u|U][l|L][ll|LL] qualifiers
105900-10-31 tmdate: add TM_DATESTYLE and mmddHHMM[cc]yy
1060	 astlicense.c: #include <hashkey.h> MAM workaround
1061	 astlicense.c: check for non-empty CONTRIBUTORS
106200-10-26 features/stdio: add _FILE and __FILE for gnu
1063	 misc/stk.c: fix stack pointer check off-by-one (dgk does it too!)
106400-10-23 syslog.h: sync with bsd values
106500-10-18 _STUB_* now functions instead of common symbols
1066	 all extern data declared with definition to eliminate common symbols
1067	 fastfind: add mac/bsd /var/db/locate.database
106800-10-17 features/lib: add apple osX (darwin.ppc) workarounds
106900-10-12 add: fmtbuf(), fmtclock(), fmtip4(), strtoip4()
1070	 fmt*() now use fmtbuf() for tmp fmt buf allocation
107100-10-05 regex: add REG_DISCIPLINE and regdisc_t for alloc/error disc
107200-09-29 features/lib: pipe_rw==0 for sgi: boot rw == bin incompatibility
107300-09-21 astlicense: handle \' and \" in license values
107400-09-20 sfwrite: fix write() error in sfprintf() loop
107500-08-11 hdr,vmhdr.h: check/hide { getpagesize sbrk } prototypes
1076	 astlicense: add noncommercial
107700-07-31 fflush: don't seek on pipes
1078	 sfresize: add
1079	 setlocale: fix bad newof() call
108000-06-01 strmatch: initialize match.current.beg[0] to avoid dump at line 670
1081	 sfio/stdio: a few more errno tweaks
1082	 astquery: sfstdin/sfstderr by default
108300-05-26 sfmode: errno=EBADF for invalid stream use
108400-05-22 rewind: fix for xopen test
108500-05-18 mcfind: returns absolute path
108600-05-16 optget: --keys must catch \f...\f too
1087	 translate,mc: errno cleanup
108800-05-09 magic: add netbsd binary magic
1089	 fts: PATH_RESOLVE!=logical => FTS_SEEDOTDIR
1090	 ftwflags: call fts_flags()
1091	 astconf: astconf(0,0,0) re-syncs with _AST_FEATURES
109200-05-08 optget: --usage & --keys for last -catalog group only
109300-05-02 iconv.c: add; use codes[] in ccmapid() and ccmapname(); "" for native
109400-05-01 pathtmp: copy env values (libshell or putenv may change)
109500-04-01 optget: drop bar from [-foo?bar] for --??keys
1096	 sfvscanf: add %X -- duh
1097	 features/common: fix va_listval() for power pc
1098	 findopen: fix FIND_GENERATE codes file search
1099	 magic: add ERROR_translate() and msgcat.key
1100	 tmlocale: add for LC_TIME locale info
1101	 tmlex: check tm_info.format and tm_data.format
1102	 tmfix: fix for tm_wday special case (via nl_langinfo on LC_TIME fields)
1103	 strftime: fix for nl_langinfo special case
1104	 ast_std.h: provide LC_* defauls if not defined
1105	 sfnew: check ${_AST_sfio_bufsize} -- don't tell kpv
1106	 catopen,nl_types.h: add intercept to mc* routines
1107	 magic.tab: add ast message catalog
1108	 strerror: add _ast_strerror intercept with ERROR_translate("errno")
1109	 fmtquote: escapes >0177 only if (flags&2)
111000-03-17 feof: stdio macro functions only for _UWIN
1111	 optget: proper ERROR_translate() calls
1112	 astgetconf: add for thread safe error message control
1113	 astlicense: fix type=special but with non-null notice
1114	 errorx: add for ERROR_translate() support
1115	 ERROR_translate: add locale id args for alternate dictionary
1116	 option.h: move _OPT_PRIVATE_ to pointer to avoid dll size mismatch
1117	 ftwalk: fix FTW_CHILDREN bug that hit top level non-dirs twice
1118	 translate.c: default error_info.translate
1119	 astconf: fix dup loop thrash that never returns, add _AST_VERSION
112000-03-10 ast_std.h: do _LARGEFILE_SOURCE initialization before std headers
1121	 fmtquote: handle $'...' quotes
112200-03-07 optget: fix numeric option support test
1123	 sfkeyprintf: add %q for '...' quoting with ansi escapes
112400-03-06 features/stdio: fix _sfflsbuf prototype (dingold@gte.net)
112500-02-14 pathtmp: fix pid cache bug that sometimes repeated after ~10 attempts
1126	 optget: "..." attribute quote
1127	 pathfind: eliminate *: prefix in lib, not type
1128	 proc: PROC_FOREGROUND for system(3) semantics (wait status return)
1129	 pathtmp: fix mktemp() logic
1130	 fts: fix FTS_NOSEEDOTDIR bug that botched ./* in top list
1131	 include/ast/prototyped.h includes include/prototyped.h
1132	 pathpath: fix strdup(0) bug
1133	 optget: --html <foo@bar> => ...mailto:foo@bar...
1134	 sscanf: fix sfsscanf => sfvsscanf typo
1135	 magic.tab: strengthen tar recognition
113600-02-08 conf.sh: fix ifdef for systems that think sysconf(FOO) is const
113700-02-04 glob: fix globlist_t.gl_flags
113800-02-02 vm*: add NoF() for data only files
113900-01-27 fts: fix top level .==.. statp bug (thanks to dr. ek)
114000-01-25 conf.tab: fix LFS*_*LAGS typo
114100-01-24 astlicense: handle type=verbose, license.notice, author=*
114200-01-11 pathprobe: generate info for first probe script on PATH - duh
1143	 ast.h: add NoF(x) for files that define no functions
1144	 tmpfile: fix implementation
1145	 global change for string ERROR_translate() dictionary names
1146	 optget: fix new way but no long names off by one
1147	 optget: handle [--dictionary?name]
114899-11-19 comp/conf.sh: `expr length XXX` is not universal
1149	 drop sfstdio; stdio via functions everywhere
1150	 drop Makefile conditionals (and follow our own advice for once)
1151	 sfio: new stream after atexit() bug fix
1152	 tm: Tm_zone_t.daylight=0 for standard time within zone
1153	 stdio: fopen => _ast_fopen: only way short of binary compatibility
1154	 Makefile: atmain.C falls back to atmain.c
1155	 optget: add --keys, s<section> option
1156	 stdio: _UWIN check for foreign stdio
115799-11-11 astlicense: add
115899-10-31 glob: fix regexec pattern; add PATH_ATTRIBUTES case check
1159	 pathpath: path==0 means malloc space
116099-10-22 tmfmt: %C=2-digit-century, %k=date(1), %y=2-digit-year-in-century
116199-10-18 fastfind: expanded default db lookup
116299-08-11 magic: fix off by one registry malloc
1163	 features/fs: add __RENAME checks for stat familiy (netbsd)
1164	 features/fs: major()/minor() fixes for s5
1165	 features/libpath.sh: netbsd fix -- ld.so not in std places
1166	 misc/fastfind: fix codes path generation bug
1167	 optget: beef up --?* description, fix <TR>...</TR> nesting
1168	 pathprobe: check for override (writable key file) first
1169	 features/time: int tmtimeofday(struct timeval*);
1170	 optget: fix opt_info.num, even if opt_info.arg!=0
1171	 fts: FTS_PHYSICAL => FTS_SEEDOTDIR, add FTS_CHOP
1172	 fastfind: init dir tab with logical and physical name
1173	 glob: add gnu GLOB_ALTDIRFUNC
117499-07-17 sfio: kpv update and sfhdr.h sync!
117599-06-24 stdio: fix fflush() to ignore sfseek(0) return value
117699-06-23 magic: '\r' is text not control to placate m$
117799-06-08 stdio: fix fseek,ftell semantics
1178	 uwin stdio: fflush() => _doflsh() to avoid __cplusplus clash
1179	 getopt: call liberror() to avoid error() conflict
1180	 tmfmt,tmscan: %N zone type (nation code), %z zone minutes west offset
1181	 tmfmt: - no pad _ space pad 0 leading 0 pad
118299-05-28 magic: fix 'x' == '*' for any number, magic.tab tweaks
1183	 features/lib: verify that stat64 really works
118499-05-21 tm*: add TM_WINDOW==69 for consistent century windowing guard year
118599-05-18 tmtime: add century leap year calc anticipating unsigned time_t
118699-05-17 sfkeyprintf: handle %o and %x!!
118799-05-09 pathprobe: $HOME/.probe if not suid and st_uid!=geteuid()
118899-04-28 magic,magic.tab: add registry()
118999-04-24 regcomp: fix ksh pattern +! parse
1190	 regfatalpat: add
1191	 optget: make : ? ] double escape consistent in all contexts
119299-04-01 features: drop iffeio.h and stdio.h when only printf() used
1193	 regex: fix stats() .l and .k count
1194	 fmtquote: added; most general fmtesc() form
119599-03-22 fmtesc.c,ast.h: add fmtnesq()
1196	 optget: --?x works for -x option flag
119799-03-17 features/limits.c: workaround solaris __EXTENSIONS__ _timespec bug
1198	 workaround limits.h circular prereq with ignore stdio.h
1199	 sfvprintf: %04e left-pad zero fixed
120099-03-03 fts: uncle already: add FTS_SEEDOTDIR to retain leading ./
1201	 regex: REG_MULTIPLE, BM for fixed string alternation
1202	 optget: embedded `-' optional in long options, prefix={0,1,2}
120399-02-14 fastfind: fix dir format bug that emitted wrong paths
1204	 astconf: fix redef off by one bug
120599-02-11 pathcanon(): don't cache astconf("PATH_LEADING_SLASHES", NiL, NiL)
120699-01-23 optget: move <old_opt.h> back into <option.h>, no open-close
1207	 optget: add "[index:long-name:description]" for --long-name
1208	 comp/gross: add weak __libc_attr for irix < 6.5 compatibility
1209	 features/limits.c: tweak the guards again
121099-01-11 fastfind: handle old format count byte order
1211	 magic.tab: fix elf to use real phdr offset
1212	 magic.c,magic.tab: fix | to act like switch/case
1213	 comp/fross.c,features/hack: for gross hacks
1214	 features/stdio: avoid sfio namespace pollution
121598-12-25 tmdate: yyyy.mm.dd
1216	 pathprobe: fix procrun() cmd path bug
1217	 fmtesq: add
1218	 features/common: win32.alpha va_list
1219	 magic: add pc alpha object
122098-11-11 strmatch: add STR_ICASE
1221	 pathprobe: punt to $HOME/.probe/<key+HOSTTYPE> if not S_ISUID
1222	 tmzone,tmdate: handle +-minutes, nn/MMM/yyyy
1223	 stropt: fix nested quote pop
1224	 tmfmt: add %K => %Y-%m-%d/%H:%M:%S
1225	 sfio/stdio: fix fseek() SF_PUBLIC omissions
1226	 fmtesc: catch '\\' (duh)
1227	 vmalloc: vmbest round bug fix
122898-11-01 fts.c: no pathcanon() if (fts_flags & FTS_PHYSICAL)
122998-10-01 features/stdio prototype fixes
1230	 optget: strton() instead of strtol() for #
123198-09-22 regcomp: add REG_DELIMITED and REG_ESCAPE delimited re support
123298-09-15 fix _LARGEFILE64_SOURCE stuff
1233	 ast_std.h: provide mmap() prototype
123498-08-11 fix sfpopen() to ignore SIGPIPE by ignoresig() for sfio but not stdio
1235	 fix procopen() to ignore SIGPIPE by ignoresig() for PROC_IGNORE
1236	 sfio sfpopen/popen update
1237	 magic.src: fix ustar entry
123898-07-17 fix ftwalk() short by one malloc()
1239	 add fts_notify()
124098-06-25 sfdcmore,sfdcprefix: add
124198-06-19 tokscan: add %f %g
124298-06-01 disc/sf*.c: memset(0) after disc malloc()
124398-05-11 strelapsed: y==Y
1244	 fts: pathcanon() top list
124598-04-01 error: error_info.time for all msgs, just after cmd id
1246	 error: no sfsync(sfstdin)
1247	 sfio: sfpool, Sffmt_t update
1248	 magic.tab: sgi core dumps -- why aren't these elf?
1249	 stropt: (v+n) for unknown option is option value if n!=0
1250	 procopen: fix setsid() for spawnveg() only
125198-03-19 malloc: add realloc foreign region check
1252	 sfdisc.h: rename to match kpv disciplines
1253	 fastfind: fix strcasecmp/strcmp directory prefix mixup
125498-03-17 features/fcntl.c,pathtmp,sftmp: add O_TEMPORARY
125598-03-01 pathcanon: fix PATH_LEADING_SLASHES to stat() both slashes
1256	 pathcanon: add PATH_VERIFIED
1257	 tmdate: add skip[] to expand separator char set
1258	 fastfind: FIND_OLD for old 7 bit db, FIND_TYPE for new 8 bit typed db
1259	 fastfind: default generates gnu LOCATE02 8 bit db
1260	 magic: handle %s in mime description
1261	 cdt: kpv update
1262	 sfio: kpv update
1263	 stdio: fpos64_t fseek64(), ftell64(), fgetpos64(), fsetpos64()
1264	 stdio: fseek() => sfseek(SF_PUBLIC) to avoid locking
1265	 fts: initialize parent stat[bp] from top level *after* statf done
1266	 astmath: add -lm requirement test
1267	 *: Astlong_t => _ast_*_t
1268	 regex: simplify regcollate() (from doug)
1269	 tmtime: preserve Tm_t*tm when calling tminit()
1270	 astconf: add readonly PATH_ATTRIBUTES=[cirw]
127198-02-14 fastfind: add FIND_ICASE to ignore case
1272	 tmdate,tmgoff: handle (+|-)hh[[:]mm[[:]ss]] absolute timezone
1273	 tmdate: `<n> <part>' now assumes `next <n> <part>' instead of `this'
1274	 tmfix: fix leap year bug that forgot to add 1900
1275	 proc: add PROC_ZOMBIE
127698-02-06 strmatch() char class range bug fix
1277	 regex char class range bug fix
127898-01-23 _WIN32: changed the #if logic again to accomodate _GNUC_
1279	 mnt: grab the mount options too
1280	 ast_std.h: hide getopt,getsubopt from stdlib.h
1281	 features/limits.c: add gnu guard macros to avoid limits.h recursion
1282	 features/mode.c: include "limits.h" instead of "FEATURE/limits.lcl"
128398-01-11 sfio.h: use Astlong_t, move Sfio_t Sfdisc_t typedef to top for stdio.h
1284	 sfhdr.h: #undef SETLOCAL for hpux
1285	 sfvprintf,sfvscanf: %I*x for sizeof(int_arg)
1286	 handle ftruncate64 and truncate64
1287	 dtopen.c: __hppa dll needs Dtset Dtlist Dttree refs here
128897-12-18 fmtnum: add
128997-12-11 magic: handle sgi 64 bit core dumps
129097-12-07 pathtmp: add override for TMPPATH,TMPDIR and cycling
129197-11-11 tm: handle 0 return from gmtime(),localtime() (dos negative time_t)
1292	 features/stdio: fix fflush() macro to do physical sync
129397-10-31 astconf PATH_RESOLVE is logical if 3d&&!std, metaphysical otherwise
1294	 magic: fix #! mime bug
1295	 tm: tmtime() now calls tmfix() and adjusts tm_isdst too=>mtime() works
129697-10-11 dllfind,dlfcn: move to separate -ldll so -last can link static, duh
1297	 Makefile,state.c: move forced header generation state.c => Makefile
1298	 sfio: update including SF_WHOLE
129997-10-01 sfdostext: add \r\n => \n sfio discipline
1300	 stropt: NiL table => p=name for all name=value
130197-08-11 pathtmp: check pid to note forks
1302	 procopen: FD_CLOEXEC rfd && wfd
1303	 fts: fts_close() after fts_children() with no fts_read() now works
130497-07-17 error: sfsync(sfstdin,sfstdout,sfstderr) instead of sfsync(NiL)
1305	 _sfcvinit: add sfio internal interface to base conversion tables
1306	 strton: use _Sfcv* base conversion tables instead of sfsscanf()
1307	 sfvscanf: use _Sfcv* base conversion tables
1308	 mime: x- permutations now matched if exact fails
1309	 mime: original- stripped from content-* headers
1310	 tmdate: add yyyy-jjj, yyyy-mm-dd
1311	 dllfind: add
1312	 ccmapid: fix buf copy loop limit
1313	 ccmapname,ccmapcpy: add
1314	 sfstrtmp: add
131597-05-09 streval: fix up casts for pseudo-ansi cc
1316	 features/types: use _ast_int_8 vars to verify support
1317	 string/modedata: check for mvs.390 S_IFMT
1318	 include/ast(_std).h: add #define __FILE_typedef
1319	 magic: add ccode text check
1320	 include/ftwalk.h: FTW_PATH=>FTS_NOCHDIR to avoid FTS_AGAIN (duh)
1321	 fts: clear status for FTS_AGAIN (fixes rm -r bug)
1322	 mnt: add mvs openedition w_getmntent()
1323	 sfhdr: _hdr_float && <float.h> for correct MAXDOUBLE
1324	 vmalloc/vmbest: if _std_malloc then use malloc()/free() not sbrk()
1325	 remove: check _std_remove
1326	 procopen: handle pio[{0,1}]=={0,1}
1327	 setenviron,features/uinstd: test for mvs.390 dll environ hacks
132896-12-25 <sfio_p.h> -> <ast_common.h>
1329	 __EXTERN__(type,object)
1330	 __DEFINE__(type,object,value)
1331	 magic: check strings in !CC_NATIVE code set too
1332	 system: cmd==0 means check for shell access (xopen)
1333	 sfhdr.h: fix sfrsrv prototype
1334	 add __libc_malloc etc for gnu/linux
1335	 astconf(NiL,path,name) == astconf(name,path,NiL) + no liberror
1336	 fts_open: if toplist() stat fails return 0
1337	 ftwalk: handle fts_open()==0 via one phony userf() call
1338	 sfmode: S_ISFIFO default is SF_SHARE=0
1339	 features/lib: _WIN32 _lib_vfork=1 by default
1340	 unsigned<0 comparison and other fixes via sgi.mips4 cc
1341	 stk.c: use <align.h> ALIGN_BOUND for stkalloc()
1342	 features/lib,vfork: uwin fix
1343	 ast_std.h: fix strto[u]ll prototypes with features/types _ast_int_8
1344	 getsubopt: add for xopen 4.2 compatibility
1345	 drop function __IMPORT__
1346	 magic: more magic
1347	 change #define FILE from Sfio_t to struct _sfio_s
1348	 state.c: add generated includes that may be hit by std for MAM
1349	 bytesex: forgot about sizeof(long)=>7; could we fix the name too?
1350	 vmalloc.h: fix vmnewof() definition
1351	 sfio.h,stdio.h,ast_common.h: pollution cleanup
1352	 magic.c: add | op for switch
1353	 Makefile: stdio.h was on both HEADERSRC and HEADERGEN -- don't do that
1354	 drop pp:notice to get <sfio.h> ... <ast.h> to work
1355	 regex: add [[:<:]]==\< and [[:>:]]==\> for bsd compat
1356	 mime.c: ignore X-* headers while scanning for Content-*
1357	 magic.c: check for negative indirect offsets
1358	 magic.tab: fix dos entry that generated negative indirect offsets
1359	 vmalloc.h: add vmstrdup() prototype
1360	 hash.h: add hashgetbucket() macro
1361	 magic.c: MAGIFILE is now a : file list
1362	 mnt.c: another 4.4 bsd fix -- users must include <sys/crap.h>
1363	 common: fix _WIN32 chicken&egg with va_copy
1364	 sfio: forgot to set f->val along with _Sfi in sfexcept()
1365	 Makefile: add mini target for uwin libmini.a
1366	 sfcvt.c: workaround for flaky long double optimizers
1367	 features/common: fix to work with va_list==void*
1368	 regexec.c: fix REG_STARTEND subexpression offsets
1369	 strmatch.c: don't forget <wctype.h>
1370	 regrexec.c: fix REG_INVERT end boundary bug that missed last record
1371	 astconf.c: notify(0,0,"a=b") called for each setenviron("a=b")
1372	 pathcanon.c: check astconf(PATH_LEADING_SLASHES) to preserve //*
137396-11-28 _LARGEFILE64_SOURCE by default if possible: NOTE: assumes xopen
1374	 regerror: fix for xopen
1375	 getopt: fix for xopen
1376	 magic: add ciao virtual database
1377	 astconf: posix/strict/xopen implies "standard" conformance
1378	 fs3d.h: hide mount prototype
1379	 ast_std.h,mnt.c,features/fs: ncr port tweaks
138096-10-31 version 5.0
1381	 add strtoll() strtoull()
1382	 sfkeyprintf: upgrade to int_max args
1383	 ast.h: add ssizeof() to work around unsigned botch
1384	 conf.sh: add shell actions to conf.tab
1385	 _DLL*: drop for _BLD_<lib> + __EXPORT__ + __IMPORT__
1386	 sfio,cdt,vmalloc: kpv update
138796-10-11 <ccode.h>: add character code map support
1388	 procclose: return shell style exit status
1389	 features/fs: pun statvfs.f_basetype to statvfs.f_reserved7 for mvs
1390	 uwin: add subdir for uwin additions
1391	 ast_std.h: swab() is from <stdlib.h>
1392	 sfio.h: <ast_std.h> if _PACKAGE_ast
1393	 magic.tab: add mips[1-4], 64-bit
1394	 port tweaks for sol.sun4 and sun4
139596-09-06 strerror: add
1396	 fmterror: uses strerror
1397	 str*search: use sfiso646() order
1398	 strpsearch: add
1399	 magic: add Magic_t.mime mime type return for magictype()
1400	 mime.h: add
1401	 strton: use sfsscanf()
1402	 strperm: factor in umask() if no who
1403	 pathtmp: add TMPPATH check
1404	 libevent: add
1405	 magic: add discipline to magicopen()
1406	 mime: add discipline to mimeopen()
140796-08-31 regex: fix BM fail table generator
140896-08-11 mntread: fix mnt.type for SCO variant
1409	 conf.tab: add SCO KERNEL_* sysconf() vars
1410	 fastfind: add findwrite(), fix findread() FF_OFF omission
1411	 ftwalk: reimplement on top of fts
1412	 fnmatch,re_comp,regexp: reimplement on top of regex
1413	 basename,dirname,fmtmsg,fts,ftw,getdate,getsubopt,glob: add
1414	 hsearch,nftw,realpath,strftime,strptime,swab,tempnam: add
1415	 tsearch,wordexp: add
1416	 getcwd: cache last path for easy test
141796-07-17 error: sfsync(NiL) ... write ... sfsync(sfstderr)
1418	 astconf: handle readonly *(DEV|DIR) vars
141996-04-01 swapop: fix stupid return value bug
1420	 features/int.c: fix int_swap generation bug
1421	 regnexec,regrexec: fix unsigned underflow init error
1422	 ls.h: fix iblocks() to be in units of LS_BLOCKSIZE
142396-02-29 magic: space before function is definition with no call
1424	 hash: drop hash_info from public interface
1425	 hash: OBSOLETE hashlast()
1426	 hash: add Hash_root_t.Hash_last_t to public interface
1427	 add strsearch() and strnsearch() to complement strlook()
1428	 add hashkey.h for keyword->long hash
1429	 pathpath: pathpath(0,0,"",0) disables $0 $_ $PWD relative search
1430	 sfio: sfstrtod+sfhdr update
1431	 regex: fix REG_LENIENT to map BRE \[+?|] to ERE [+?|]
1432	 change _std_malloc iffe test so it doesn't hang on alpha
1433	 sfhdr.h: features/sfio generates _lib_cvt instead of _i386_cvt
1434	 ast_hdr.h: add va_copy(a,b) to copy va_list b to a
1435	 getopt: fix stupid getopt() -> optget() bug
1436	 sfvprintf: %h? now downcasts
1437	 regex: handle strto?l() errno in regcomp()
1438	 sfstrtod: _Sfstrtod_already_defined -> _STUB_sfstrtod
1439	 ast_std.h: hide valloc() and ignore <strings.h>
1440	 sfkeyprintf: pass phony va_list for '2'
1441	 regex: change HIT var type from int to size_t in special()
1442	 ast.h: add EXIT_STATUS(x) to convert wait() status to sh exit status
144396-02-14 regex: add _ to \<...\> isalnum test
1444	 regex: fix BM inner loop breakout
1445	 features/types: size_t is signed on some systems! => _ast_size_t
1446	 sfio: sfrd discipline peek optimization
1447	 vmalloc: vmalloc.h malloc family macro upgrade
1448	 tokopen: fix newline bug for non-restore open
1449	 sfio: no inline for gcc until it emits for -g too
145096-02-12 sfio: internal upgrade
145196-02-09 regex: Boyer-Moore boundary fix
1452	 vmalloc: snarf latest
145396-02-06 regex: add regrecord() and regrexec() for Boyer-Moore record filtering
1454	 regex: rearrange regnexec() args to match buffer,count arg style
145596-01-31 stk: add STK_NULL to stk.h and stk.c
1456	 regex: privatize regex.h and fix min re length computation
1457	 workaround lazy strdup() implementations in features/lib _std_malloc
1458	 fix stkclose() to free(stream) -- purify missed because of sfio links
1459	 unused var cleanup
1460	 port/mnt.c must include <ls.h> to get <ast_fs.h>
1461	 add SF_FINAL to sfio and stk
1462	 sfio reads now on natural block boundaries
1463	 add #!!! <level> <message> !!! to tokline()
1464	 add REX_BM pre-filter to regcomp/regnexec
146596-01-22 add regcomp env.paren overflow checks
146696-01-11 add Doug McIlroy's regex (converted to C from C++ by gsf)
1467	 AT&T Research now
1468	 sfgetr optimization
1469	 regex buglets
147096-01-05 tweak magic.tab for win32
147195-12-25 add !(...) -> (...)! to fmtre()
1472	 nt tweaks -- functions with no header proto must be defined extern
147395-11-24 version 4.1
1474	 add mnt.h mntopen mntread mntclose
1475	 convert fmtfs to mnt.h
1476	 add RE_LEFTANCHOR and RE_RIGHTANCHOR
1477	 gcc inlines must also have global library function instantiation!
1478	 add hashview()
1479	 fix strtape() internal buffer flow
1480	 fix mntread() fs/dir transposition for uts mnttab
148195-10-31 change features/unistd.c includes to break limits-param cycle
1482	 add cdt from kpv
1483	 sfio snarf from kpv
1484	 add [ht]search for _WIN32
148595-10-11 clarify PARANOID pathcheck() warning
1486	 fix procopen() LIB_SPAWN environ bug with setenviron() cache
1487	 fix setenviron() bug that forgot to reset environ if == 0
1488	 add %Z '\0' output format to sfkeyprintf()
1489	 sfio snarf for sfvprintf fix
1490	 allow multiple hashscan() with scope caveat
1491	 add comp/fakelink.h to synthesize a few symlink text patterns
1492	 add !<xxx> magic to misc/magic.tab
1493	 add FTW_TOP to inhibit recursion (for ftw side effects on top level)
1494	 add memfatal() common malloc fatal exception message
1495	 add dos \r\n test to misc/magic.c/cklang()
1496	 sftmp() O_EXCL+random to avoid collisions
1497	 pathtemp() uses sftmp() randomizing
1498	 features/fs uses SF_APPENDWR
1499	 sftmp() uses pathtemp() -- don't worry, its not circular
1500	 a few more _WIN32 compatibility additions
1501	 realloc fixed to use VM_RSCOPY|VM_RSMOVE instead of obsolete 1
1502	 add hashlook(tab, oldname, HASH_RENAME, newname)
1503	 a few more tweaks to satisfy port warnings
1504	 add _SFIO_INLINE_PRIVATE to provide real function too
1505	 fix <dirent.h> installation test
1506	 oops object / shared library compat with _sfgetl2 _sfgetu2
150795-09-11 add getopt() compatibility
1508	 add fstat,lstat,mknod,stat fixes for _x versions in sys/stat.h
1509	 add getconf CONFORMANCE - posix for things that aren't ast default
1510	 sfio_t.h: #ifndef _SFIO_H #include "sfio.h" #endif
1511	 snarf vmalloc from kpv
151295-08-11 fix malloc bug in magic
1513	 update linux and bsd 386 magic entries
1514	 error_info.auxilliary returns new level, |=ERROR_OUTPUT if msg done
1515	 drop fnmatch from strmatch for sparc (solaris) until it collates
151695-07-17 fix port/astconf universe initialization
1517	 fix misc/optget opt_info.nopt initialization
1518	 drop tmset() TZ=... because it only worked when TZ=... was ignored
151995-05-09 mongo <ast.h> namespace cleanup
1520	 drop > 2 year old obsolete interfaces
1521	 sfvprintf.c fix for (char:8 short:16 int:32 long:64) architectures
1522	 TMP_MAX back into conf.tab
1523	 pathbin() and pathshell() now use astconf()
1524	 fix pathtemp() to not cache getenv("TMPDIR")
1525	 fix ftwalk() metaphysical to handle non-dirs too
1526	 initialize *_info = { 0 }; for ancient ld semantics (NeXT)
1527	 fix magic() to do vmfree()
1528	 astconf(X_OK) must prefix lines with "getconf"
1529	 use <wchar.h> and wctype in strmatch() if available
1530	 _lib_utime_now checks utime(path,0)
1531	 _lib_poll_notimer checks poll(x,0,timeout)
1532	 add another _lib_utime_now check to port/touch.c
1533	 fix dd_buf cast in dir/opendir.c
1534	 split getconf.h into conftab.h and conftab.c for :READONLY:
1535	 use mbtowc() only if MB_LEN_MAX>1
1536	 sfio char* -> Void_t* cleanup
1537	 handle old syntax in misc/magic.c
1538	 sigdata.c holds readonly signal strings
1539	 pathcheck() does AT&T checks for tools matching PARANOID - yuk
1540	 unused var cleanup
1541	 deprecate hash_info in favor of hashlast()
1542	 fix bad conf.sh ksh integer interactions
1543	 dll cleanup
1544	 magic.c falls back to malloc for now
1545	 add environ to <ast.h> -- C library global data syms are *RESERVED*
1546	 sfhdr.h memccpy(1,2,3,size_t) prototype
154795-04-01 version 4.0
1548	 convert to vmalloc
1549	 allow sigcritical() nesting mismatch to work around vfork() bug
1550	 add strexpr() primitive for streval() with user handle (like ftwalk)
1551	 add <magic.h> and magic.c file command magic interface
1552	 update magic mail message entry
1553	 fix keyprintf() invisible char count nesting bug
1554	 add sfstrnew(SF_READ|SF_WRITE) for alternate sfstropen() modes
1555	 sfstrnew(SF_READ) but reading requires sfseek(), sfreserve()
1556	 add conf.tab and conf.sh to nail C/POSIX limits/unistd macros
1557	 add getconf() string interface to *conf*
1558	 _DLL_INTERMEDIATE_DATA for systems that require indirect globals
1559	 _DLL for building shared libraries with _DLL_INTERMEDIATE_DATA
1560	 vecfile() restricted to S_ISREG()
1561	 add spawnveg() for job control
1562	 convert procopen() PROC_PGRP(id) to spawnveg()
1563	 fmterror() returns error text given errno (strerror() does same)
1564	 fmtsignal() returns signal text given errno (strsignal() does same)
1565	 {sig_name,sig_text,SIG_MAX} -> sig_info.{name,text,sigmax}
1566	 liberror("",...) omits [%s library] prefix
1567	 update features/signal.c table
1568	 add vmdisc() and change vmnewof() to use vmresize()
1569	 fix conf.sh to allow refs to previously defined limits
1570	 fix undefined entries in getconf()
1571	 magic data in magic.tab
1572	 fix stropt() pointer cast
1573	 vmalloc() exception handler replaces nomalloc()
1574	 merge sigdata.c into fmtsignal.c -- sun link needs function w/ data!
1575	 sftmp() bug fix
1576	 drop local <unistd.h> even with _POSIX_SOURCE
1577	 fix vmstrdup() macro arg miscount
1578	 fix conf.sh to handle enum'd symbolic constants in unistd.h
1579	 drop malloc() et.al. prototypes from vmalloc.h
1580	 fix sfvprintf() %d argument reference
1581	 add OSF/1 AES symbol(s) to conf.tab
1582	 determine standards prefix from conf.tab
1583	 add _CS_SHELL to conf.tab
1584	 getpath() default is confstr(_CS_PATH)
1585	 getshell() default is confstr(_CS_SHELL)
1586	 unify keyprintf user function args (should have learned by now!)
1587	 add quad type to magic
1588	 add astfeature() to unify universe style dynamic features
1589	 add ftwflags() to determine FTW_* flags from astfeature()
159095-03-11 fix stropt() to not modify its *const* arg
1591	 handle "'\ quotes and chresc() in stropt() values
1592	 , treated like :space: between stropt() options
1593	 fix procopen() fd dup to ignore self-dups
1594	 add library id[] to misc/state.c
1595	 add ftwalk(FTW_METAPHYSICAL) for posix -H
1596	 sfvprintf() now handles balanced () in %()
1597	 add tmfmt() with buffer size check to replace tmform()
1598	 add fmttime() calling tmfmt() to fit fmt*() mold
1599	 add <keyprintf.h> and keyprintf() to support %(...)? in commands
1600	 add Hash_table_t for size==0 in stropt()
1601	 add EXTTYPE extended header to tar.h
160295-02-14 sfmove() buffer size overflow fix
1603	 add _SFSTDIO_H to sfio.h
1604	 rename setenv() to setenviron() -- posix finally decided
1605	 rename <option.h> opt_* to opt_info.*
1606	 update features/unistd.c for _SC_* and _PC_* posix additions
160795-01-19 (char*)uchar cast in fmtesc()
1608	 fix hash bucket memory leak in hashlook() [via John Mocenigo]
1609	 update strings/strtape()
1610	 fix optget()/optjoin() to handle leading +
1611	 add ALIGN_ prefix to <align.h> identifiers
161295-01-11 change tm/*.c tmset(0) to tmset(tm_info.zone) to keep user setting
1613	 fix tmform() %Z null pointer dereference
161495-01-01 add this RELEASE file
1615	 fix strperm() to properly handle "644 file"
1616	 fix tokline() to return last '\0' terminated line in string
1617	 fix tokscan() to properly handle \\n splice
1618	 add fmtesc() to complement stresc()
1619	 add LS_NUMBER to fmtls()
1620	 drop spurious optusage() ' '
1621