sync
[bitrig.git] / bin / ksh / BUG-REPORTS
blob19c879cc5b115f5d641cae09ee77ce50cebba159
1 $OpenBSD: BUG-REPORTS,v 1.18 2008/05/08 16:51:30 sobrado Exp $
3 List of reported problems (problems reported and fixed before 5.0.4 not
4 included).  Unresolved problems (may or may not still exist) marked by *,
5 problems believed to be fixed marked by x.
7 * pdksh 5.0.3, MIPS RISC/os 5.0 (bsd universe) (noted by Michael Rendell):
8   for interactive, job controlled shells, the kernel's tty state gets twisted
9   in such a way that all output is lost (eg, if ttyXX is wedged then
10   "echo hi > /dev/ttyXX" from a separate login appears to succeed but produces
11   no output on ttyXX).
12   Work around is to run a program and hit ^C.
14 * pdksh 5.0.1, NetBSD 0.9a? (reported by Simon J. Gerraty): problem with
15   job control not finding tty
16   [from Mail.1:71]:
17     Also, I have noticed (with 5.0.1 anyway) that if as root I su to a
18     user I get: 
19     root:511$ su foobar
20     warning: won't have full job control
21     [1] + Stopped (tty output) stty erase ^? 
22     foobar:1$
24 * pdksh 5.0.8, - (reported by Sean Hogan): attempting file name completion
25   on a word with a single backquote causes a "no closing quote" error and
26   loses the partially entered command (vi mode).
27   [see Mail.2:48]
28   [partly fixed in 5.2.14: backquote ok, but happens for the likes of ${.]
30 * pdksh 5.0.10, - (reported by Andrew Moore): no overflow checking is done
31   in integer parsing code.
32   [see Mail.3:78]
34 * pdksh 5.0.6+5.1.2, BSD43/MachTen (reported by Dan Menchaca): ksh freezes up
35   terminal after a while after printing process exit message.  5.1.2 causes
36   system to hang after executing two commands.
37   [see Mail.3:96,5:42]
39 * pdksh 5.1.3, - (reported by Brad Warkentin & others): if the last command of
40   a pipeline is a shell builtin, it is not executed in the parent shell,
41   so "echo a b | read foo bar" does not set foo and bar in the parent
42   shell (at&t ksh will).
43   [see Mail.7:32,Mail.9:65]
45 * pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs/vi doesn't have \ as quote
46   character.
47   [see Mail.7:87]
49 * pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs default bindings doesn't
50   have vt52 arrow keys or vt100 alternate keypad mode bindings.
51   [see Mail.7:87]
53 * pdksh 5.1.3, SCO 3.2.2 (reported by Gabor Zahemszky): shell hangs
54   waiting for finished process to finish.
55   [see Mail.7:87]
57 * pdksh 5.2.0, - (reported by Gabor Zahemszky): ^V in vi leaves cursor at
58   start of the line.
59   [see Mail.8:43]
61 * enhancements that haven't been merged yet
62         - Mail.6:36-39,78,84 recursive function diffs (add hard limit on
63           depeth of recursion)
65 * pdksh 5.2.3, - (reported by David Gast(? gast@twinsun.com)): history (fc,
66   et al) don't work in shell scripts.
67   [see Mail.10:49]
69 * pdksh 5.2.4, - (reported by Gabor Zahemszky): emacs: ^P steps through
70   multiline commands - should go to start of command.
71   [see Mail.XXX:XXX]
73 * pdksh 5.2.7, - (reported by Adrian Marsh): typeset -L20u xxx is ok is ksh88
74   but not in pdksh.
75   [see Mail.XXX:XXX]
77 * pdksh 5.2.7, - (reported by Gabor Zahemszky): TMOUT doesn't effect
78   select and read operations.
79   [see Mail.XXX:XXX]
81 * pdksh 5.2.10, - (reported by Simon J. Gerraty): in emacs, <ESC><ESC> applied
82   to a word with a macro does not complete the word (only expands the macro).
83   [see Mail.XXX]
85 * pdksh 5.2.12, - (reported by Han Holl <jeholl@euronet.nl>): pdksh does not
86   parse the whole script before executing, so some syntax errors are not
87   detected (if the shell exits before reading the whole file).
88   [see Mail.XXX]
90 * pdksh 5.2.12, (reported by Michael Staats): emacs: file completion does
91   not complete as much as possible when file is ~/something (will list
92   possible completions but won't fill in to the first difference).
93   Happens since code doesn't distinguish between globbing and ~ (needs
94   special case to strip & replace a leading ~ during the completion
95   process).
97 * pdksh 5.2.13, (reported by Martin Dalecki): shell dumps core when set -x
98   is used on some scripts
99   [awaiting more info...]
101 * pdksh 5.2.13, (reported by Arthor Pool): interactive shells can't be
102   interrupted when processing ${foo#bar} expressions.
103   [same goes for globbing - fixing this means checking for interrupts in
104   the `tight' loops - could slow things down quite a bit]
106 --------------------- put fixed problems below this line ---------------------
108 x pdksh 5.0.3, NetBSD 0.9a (reported by Simon J. Gerraty): pipelines
109   occasionally hang.
110   [from Mail.1:71]:
111     Yes, I just built 5.0.3 on zen (NetBSD) and the menu stuff worked fine.
112     However I've just done:
114     sjg:910$ diff -cb /etc/profile profile | more
116     And it has been sitting there ever since.
117   [... gdb output indicating process groups set up ok - presumed problem is
118    with tty process group]
119   [Fixed in 5.0.4 - do tcsetpgrp() in both parent and child for first process]
121 x pdksh 5.0.2, ISC unix 3.01 (reported by Sean Hogan): set +o monitor (in
122   interactive shell?) closes tty
123   [from Mail.1:64]:
124     I'm having two problems with the job control code, which I believe might
125     be related.  The first one is that "set +o monitor" closes the tty,
126     which causes the shell to exit since its input is gone.  According to
127     the code, that would imply that FTALKING has mysteriously been turned
128     off (jobs.c:343).  But my understanding of the code is that FTALKING
129     would only be clear for background processes, and set would be done by
130     the shell.  Do you have any insights here?  It's not a big deal of course;
131     I don't need to turn off monitor anyway.
132   [fixed in 5.0.5 - problem was tty process group was being restored so
133    shell could no longer read from tty]
135 x pdksh 5.0.4, - (reported by Simon J. Gerraty and Sean Hogan):
136   test "" -a x would fail.
137   [fixed in 5.0.5 - t_wp being unnecessarily decremented in primary()]
139 x pdksh 5.0.4, -: test -p foo would always fail.
140   [fixed in 5.0.5 - spell S_ISFIFO correctly]
142 x pdksh 5.0.4, -: test ! ! foo would generate error (unexpected !)
143   [fixed in 5.0.5 - nexpr() always calls nexpr(), changes to posix code]
145 x pdksh 5.0.4, -: set -i would generate an internal error.
146   [fixed in 5.0.5 - use OF_SET in creating set_opts]
148 x pdksh 5.0.4, -: let 0>22 would evaluate to true (and 0<22 false)
149   [fixed in 5.0.5 - reversed order of O_LT and O_GT in enum]
151 x pdksh 5.0.4, - (reported by Sean Hogan): echo does not process escape
152   characters (ie, echo "foo\c" doesn't to the sysV thing)
153   [see Mail.1:98]
154   [fixed in 5.0.5 - echo now behaves like sysv echo]
156 x pdksh 5.0.4, - (reported by Sean Hogan): tty process groups not restored
157   properly (vi, :sh, exit causes vi to received SIGTTOU).
158   [see Mail.1:98]
159   [fixed in 5.0.5 - restore tty process group in j_exit]
161 x pdksh 5.0.4, - (reported by Sean Hogan): the exit command does not do the
162   stopped jobs check.
163   [see Mail.1:94,95,98]
164   [fixed in 5.0.5 - added LSHELL, hack c_exitreturn to use it]
166 x pdksh 5.0.3, ISC unix 3.01 (reported by Sean Hogan): if notify is set,
167   running cat & produces "[1] + Stopped (tty input) cat", but jobs, fg,
168   etc. don't know about the job.
169   [from Mail.1:76]
170     I get [1] + Stopped (tty input)  cat.  Interestingly, "jobs" reports
171     nothing, and "fg" doesn't see it either.  But it's definitely there in
172     the ps output.  It only responds to kill -9, nothing else.  I guess this
173     is a side track?
174   [see also Mail.1:97,Mail.2:2,3]
175   [fixed in 5.0.6 - don't remove stopped jobs in the notify code of check_job()]
177 x pdksh 5.0.5, - (reported by Sean Hogan): repeated history commands were being
178   echoed after the command was executed.
179   [see Mail.2:5,6]
180   [fixed in 5.0.6 - call shf_flush() in case SHIST: of yylex()]
182 x pdksh 5.0.5, -: wait with no arguments would hang forever.
183   [fixed in 5.0.6 - only wait for running jobs in waitfor()]
185 x pdksh 5.0.2, HP-UX 9.01 (reported by Sean Hogan): scripts occasionally get
186   stopped with SIGTTIN
187   [from Mail.1:68]:
188     I noticed another small problem today, which is that occasionally
189     (on an HP 9000/715, HP-UX 9.01, cc from the ANSI C developer set)
190     a background process which is definitely not reading from its input
191     stops with SIGTTIN.  I first noticed this with a nohup'ed process, but
192     it periodically happens without as well.  The process is a perl script,
193     if that makes any difference.  Have you seen this on your HP(s)?
194   [hasn't been seen in 5.0.3: Mail.1:73,76]
195   [not a shell bug, see Mail.2:14,15]
197 x pdksh 5.0.6, - (reported by Gordan Larson, Ed Ferguson): shell does not
198   compile when VI isn't defined.
199   [see Mail.2:22,40]
200   [fixed in 5.0.7 - fixed up lex.c]
202 x pdksh 5.0.6, - (reported by Gordan Larson): ksh.1 font typo.
203   [see Mail.2:23]
204   [fixed in 5.0.7]
206 x pdksh 5.0.6, FreeBSd 1.1.5 (reported by Thomas Gellekum): CLK_TCK is defined
207   to wrong value on FreeBSD; no depend target in Makefile; update /etc/shells
208   in install target.
209   [see Mail.2:28]
210   [fixed in 5.0.7 - include <limits.h> in sh.h to get the right value; added
211    depend target; print warning if ksh not in /etc/shells]
213 x pdksh 5.0.6, - (reported by Michael Haardt): shell does not compile if JOBS
214   not defined.
215   [see Mail.2:32]
216   [fixed in 5.0.7 - added ifdefs to jobs.c(check_job)]
218 x pdksh 5.0.6, - (reported by Nick Holloway): exit status of command
219   substitution is lost (known problem).
220   [from Mail.2:33]:
221     This is a variation on a theme of bug number 10 (and is one reason why
222     currently ksh can not be used for Linux's MAKEDEV).
224     The exit status from command substitution is not available when used with
225     variable assignment.
227             x=`false` && echo "Non-zero exit status lost".
228   [fixed in 5.0.7 - instead of faking :, set rv to subst_exstat]
230 x pdksh 5.0.7 - (reported by Sean Hogan): CMASK redefined in emacs.c
231   [see Mail.2:44]
232   [fixed in 5.0.8 changed CMASK to CHARMASK]
234 x pdksh 5.0.7 - (reported by Sean Hogan): "r" (fc -e -) doesn't work.
235   [see Mail.2:45]
236   [fixed in 5.0.8 - increment wp, change strcmp() test]
238 x pdksh 5.0.7 - (reported by Thomas Gellekum): make install typeo.
239   [see Mail.2:46]
240   [fixed in 5.0.8 - added missing $]
242 x pdksh 5.0.8 - (reported by Sean Hogan): "FOO=bar exec blah" does not
243   put FOO in environment.
244   [see Mail.2:50]
245   [fixed in 5.0.9 - re-arranged exec/command/builtin code in comexec()]
247 x pdksh 5.0.8, QNX 4.2 (reported by Brian Campbell): "exec > /dev/null"
248   generates an error.
249   [see Mail.2:51]
250   [see Mail.2.58 - caused by ambitious compiler using same label for c_exec()
251    and c_builtin()]
252   [fixed in 5.0.9 - c_exec() no longer an empty function.]
254 x pdksh 5.0.8, - (reported by Brian Campbell): "echo a{b," prints a "Missing }"
255   error - at&t ksh does not.  at&t ksh always has brace-expansion on (unless
256   set -o nogolob).
257   [see Mail.2:51]
258   [fixed in 5.0.9 - brace expansion now compatible with at&t ksh]
260 x pdksh 5.0.8, - (reported by Sean Hogan): ulimit output garbled; syntax error
261   in c_ulimit.c; no configure check for HAVE_SETRLIMIT.
262   [see Mail.2:64]
263   [fixed in 5.0.9 - use shprintf instead of shellf to print values; add 
264    setrlimit() check to configure]
266 x pdksh 5.0.7, - (reported by Jan Djarv): `echo > /foo/bar' causes a script to
267   exit - POSIX says it shouldn't.
268   [see Mail.2:60]
269   [fixed in 5.0.9 - iosetup returns error code, error messages cleaned up, etc]
271 x pdksh 5.0.8, - : `more /etc/passwd &' followed by fg messes up tty settings.
272   [fixed in 5.0.9 - only save new tty settings if job originally started in fg]
274 x pdksh 5.0.9, - (reported by Andrew Moore): a blank line causes $? to be
275   set to zero, newline after a here-document marker isn't read.
276   [see Mail.3:5,6]
277   [fixed in 5.0.10 - don't execute null trees, read the newline]
279 x pdksh 5.0.9, - (reported by Michael Sullivan): mail checking reports you
280   have mail, when there is only old mail.
281   [fixed in 5.0.10 - use atime/mtime instead of size]
283 x pdksh 5.0.9, - (reported by Chris Oates): if RANDOM is in ksh's environ
284   when it starts, the shell dumps core.
285   [see Mail.3:7,8]
286   [fixed in 5.0.10 - var.c(typeset): free t->val.s instead of
287    t->val.s + t->type]
289 x pdksh 5.0.9, - (reported by Seah Hogan): ISC 3.01's make is confused by
290   a backslash followed by a blank line.
291   [see Mail.3:9,13]
292   [fixed in 5.0.10 - changed make depend target to change blank lines to sh.h]
294 x pdksh 5.0.9, - (reported by Andrew Moore): commands without a newline cause
295   syntax errors - sh/ksh execute the commands.
296   [see Mail.3:15]
297   [fixed in 5.0.10 - have yyparse() accept newline and EOF]
299 x pdksh 5.0.9, - (reported by Andrew Moore): empty arithmetic expressions not
300   accepted.
301   [see Mail.3:15,17]
302   [fixed in 5.0.10 - v_evaluate(): if first token is END, changed to literal 0]
304 x pdksh 5.0.9, - (reported by Andrew Moore): nulls in input are not ignored.
305   [see Mail.3:15]
306   [fixed in 5.0.10 - added strip_nuls() function and calls to it]
308 x pdksh 5.0.9, - (reported by Andrew Moore): \241 (M-!) not passed through
309   command substitutions.
310   [see Mail.3:15]
311   [fixed in 5.0.10 - evaluate(): cast c to a char before comparing to MAGIC]
313 x pdksh 5.0.9, - (reported by Andrew Moore): newlines after here-documents
314   are read twice; shell reports an error if newline is missing.
315   [see Mail.3:25]
316   [fixed in 5.0.10 - fixed up readhere()]
318 x pdksh 5.0.9, - (reported with fix by Mike Jetzer): 'r r' repeats the r
319   command forever.
320   [see Mail.3:38]
321   [fixed in 5.0.10 - start the search from the previous command]
323 x pdksh 5.0.9, - (reported by Mike Jetzer): edit of multi-line commands
324   does not result in single history entry.
325   [see Mail.3:38]
326   [fixed in 5.0.10 - use hist_append() to add second+ lines]
328 x pdksh 5.0.9, - (reported by Dale DePriest): ksh_times.h uses BROKEN_TIMES
329   [see Mail.3:43]
330   [fixed in 5.0.10 - changed ksh_times.h]
332 x pdksh 5.0.9, - (reported by J. T. Conklin): using [ instead of test is slow.
333   [see Mail.3:46]
334   [fixed in 5.0.10 - put in kludgy check for [ in eval.c(glob)]
336 x pdksh 5.0.9, - (reported by Michael Haardt): signals do not interrupt
337   read commands.
338   [see Mail.3:20]
339   [fixed in 5.0.10 - changed c_read() to check for fatal signals after EINTR]
341 x pdksh 5.0.10, BSDI (reported by David Tamkin): use of _POSIX_VDISABLE in
342   tty.h causes compiler error.
343   [see Mail.3:67]
344   [fixed in 5.0.10.1 - new variable vdisable_c set/used in edit.c]
346 x pdksh 5.0.8, - (reported by Donald Craig): on systems with both union wait
347   and waitpid(), waitpid() is passed a union wait pointer instead of an int
348   pointer.
349   [see Mail.2:54]
350   [fixed in 5.1 - added ksh_waitpid() define; cast status arg as needed.]
352 x pdksh 5.0.10, - (reported by David Tamkin): space in vi command mode does
353   nothing.
354   [see Mail.3:76]
355   [fixed in 5.1 - vi.c(classify[]) table got changed by accident.]
357 x pdksh 5.0.10, - (reported by Danial Quinlan): forward-word and
358   delete-word-forward functions in emacs don't go to the right place.
359   [see Mail.3:79]
360   [Fixed in 5.1 - changed order of loops in emacs.c(x_fword())]
362 x pdksh 5.0.10, - (reported by David Tamkin): eof in multiline command
363   causes shell to exit, even if ignoreeof is set.
364   [see Mail.3:76]
365   [Fixed in 5.1 - reset eof after longjmp() in main.c(shell)]
367 x pdksh 5.0.9, Ultrix 4.2 (reported by Matthew Nethook): type-ahead while
368   shell is waiting for a command to finish is temporarily lost until a
369   program that reads from stdin or goes a stty/gtty is run.
370   [see Mail.3:61,62]
371   [Fixed in 5.1 - changed aclocal.m4 to not define HAVE_TERMIOS_H on ultrix]
373 x pdksh 5.0.10, - (reported by David Tamkin): if INT is trapped, ^C in
374   vi/emacs won't flush buffer/re-issue new prompt.
375   [see Mail.3:5,76]
376   [Fixed in 5.1 - use unwind() in vi/emacs to get back to shell()]
378 x pdksh 5.0.10, - (reported by Dale DePriest): in emacs mode, file completions
379   resulting in long names (>256) cause core dumps
380   [see Mail.3:72]
381   [Fixed in 5.1 - use dynamically sized buffers in emacs code]
383 x pdksh 5.0.10, - (reported by Dale DePriest): in emacs mode, command
384   completions (^[=) resulting in multiple hits caused internal memory error.
385   [see Mail.4:8]
386   [Fixed in 5.1 - don't call list_stash() twice in compl_command]
388 x pdksh 5.0.10, - (reported by Dave Hatton): autoloading functions fail
389   on the first attempt, then work.
390   [see Mail.4:10]
391   [Fixed in 5.1 - in findcom(), check for include() returning non-0 (was 0)]
393 x pdksh 5.0.10, - (reported by Art Pina via Dale DePriest): when SECONDS
394   parameter is assigned, it always acts as if 0 were assigned.
395   [see Mail.4:12]
396   [Fixed in 5.1 - set internal seconds variable to time - assigned value]
398 x pdksh 5.1.0 - (reported by Larry Bouzane): for/select loops don't allow
399   {..} to be used instead of do...done.
400   [see Mail.4:16]
401   [Fixed in 5.1.1 - changed syn.c(dogroup) to allow {/} instead of do/done]
403 x pdksh 5.1.0 - (reported by Andrew Moore and Larry Bouzane): a command ending
404   in ; or & that is not followed by a newline causes a syntax error.
405   [see Mail.4:126,128]
406   [Fixed in 5.1.1 - don't call syntaxerr() in get_command() if EOF is read]
408 x pdksh 5.1.0, - (reported by Simon J. Gerraty): ksh died reading history
409   file (complex history, in hist_skip_backup()).
410   [see Mail.4:24]
411   [Fixed in 5.1.1 - hist_skip_back(): don't start past the end of the buffer]
413 x pdksh 5.1.0 BSDI 1.1 (reported by Karl Denninger): after receipt of SIGHUP,
414   shell waits for foreground process to complete.
415   [see Mail.4:50,57]
416   [Fixed in 5.1.1 - added fatal_trap flag, check in jobs.c(j_waitj)]
418 x pdksh 5.1.0 - (reported by Bob Manson): a leading non-white-space IFS
419   character does cause a field to be delimited.
420   [see Mail.4:68]
421   [Fixed in 5.1.2 - changed expand() to do the right thing.]
423 x pdksh 5.1.2, -: ^c during $ENV or .profile kills shell; should just go
424   to prompt.
425   [see Mail.5:14]
426   [fixed in 5.2.4 - added intr_ok flag to main.c(include)]
428 x pdksh 5.1.2, - (reported by Dan Quinlan): when shell prints out
429   execution trees (typeset -f), if botches elif statements.
430   [see Mail.5:17]
431   [fixed in 5.1.3 - changed tree.c(ptree) to deal with elif.]
433 x pdksh 5.1.2, - (reported by Dale DePriest): fc -l -- -40 fails if there
434   are fewer than 40 commands.
435   [see Mail.5:19]
436   [fixed in 5.1.3 - changed history.c(histget) to allow out of range numbers]
438 x pdksh 5.1.2, - (reported by Art Mills): file completion in command mode
439   doesn't work on a single character.
440   [see Mail.5:13]
441   [fixed in 5.1.3 - in vi.c(vi_cmd) call complete_word() with 1 not 0]
443 x pdksh 5.1.2, - (reported by Dan Quinlan): an error in a let statement
444   causes shell to exit function/script.  at&t ksh just prints error and
445   returns from let.
446   [see Mail.5:17]
447   [fixed in 5.2.3 - added error_ok arg to evaluate() and v_evaluate()]
449 x pdksh 5.1.2, - (reported by Art Mills): if markdirs option is set, file
450   completion in vi adds two slashes to directories.
451   [see Mail.5:35]
452   [fixed in 5.1.3 - vi.c(complete_word), don't add / if file ends in one]
454 x pdksh 5.1.2, - (reported by Dale DePriest): history read from history file
455   have negative numbers and can't be accessed (fc thinks neg numbers are
456   relative).
457   [see Mail.5:39]
458   [fixed in 5.1.3 - EASY_HISTORY/hist_init: increment line for each line]
460 x pdksh 5.1.2, - (reported by David Tamkin): FPATH isn't searched if PATH
461   search can't find command (undocumented at&t ksh feature).
462   [see Mail.5:45]
463   [fixed in 5.1.3 - exec.c(findcom) search FPATH if PATH search fails]
465 x pdksh 5.1.2, - (reported by Dan Quinlan): output typeset -f isn't
466   very pretty (no indenting done).
467   [see Mail.5:17]
468   [fixed in 5.1.3 - indenting added to ptree routines]
470 x pdksh 5.0.9, ISC 3.2 (reported by cobra@guarany.cpd.unb.br): Running the
471   following script with pdksh crashes the machine:
472     cat > /tmp/foobar
473   The same command in an interactive pdksh does not cause a crash.
474   [see Mail.3:21,Mail.5:62]
475   [Fixed by Interactive - it is caused by an OS bug for which there is a patch]
477 x pdksh 5.1.3, linux - (reported by Dan Quinlan): doesn't compile under new
478   linux due to declaration conflict between basename() in unistd.h and
479   pdksh'd basename.
480   [see Mail.5:90]
481   [fixed in 5.2.0 - changed basename() to arrayname()]
483 x pdksh 5.1.3, - (reported by William Hudacek): very long prompts cause
484   vi command line editor grief.
485   [see Mail.6:2]
486   [fixed in 5.2.0 - initial part of prompt is stripped if its too long]
488 x pdksh 5.1.3, - (reported by Roberto Zacheo): when set -u, variable trimming
489   with always causes an error.
490   [see Mail.6:21]
491   [fixed in 5.2.0 - fixed varsub() to test if variable is null]
493 x pdksh 5.1.3, - (reported by David Tamkin): when a function is autoloaded,
494   ksh complains the definition file didn't define the function, even if it did.
495   [see Mail.6:52]
496   [fixed in 5.2.0 - exec.c(comexec): when checking if defined, use cp,
498 x pdksh 5.1.3, ICS unix 3.2 (reported by Robert Clark): auto configuration
499   test for memmove doesn't work
500   [see Mail.6:65]
501   [fixed in 5.2.0 - special cases added for memmove, bcopy, memset]
503 x pdksh 5.1.3, Unixware (Intel-SVR4.2) (reported by Thanh Ma): auto
504   configuration test for memset doesn't work; same for rlimit type.
505   [see Mail.6:67]
506   [fixed in 5.2.0 - special cases added for memmove, bcopy, memset; rlim_t
507    configuration stuff re-arranged]
509 x pdksh 5.1.3, - (reported by Mike Jetzer + fix): . in vi doesn't work
510   after history motion or after one command is completed and another is being
511   edited.
512   [see Mail.6:85]
513   [fixed in 5.2.0 - fix up classify table, special case for empty initial
514    insert]
516 x pdksh 5.1.3, - Janjaap van Velthooven: ^v (version) missing in vi mode.
517   [see Mail.6:98]
518   [fixed in 5.2.0 - added]
520 x pdksh 5.1.3, - : y% on or before right bracket/paren/brace doesn't yank the
521   brackets - just what is in the brackets...
522   [fixed in 5.2.0 - changes to vi.c(domove,vi_cmd)]
524 x pdksh 5.1.3, - (reported by Rob Mayoff): [[ ]] command doesn't do lazy
525   evaluation.
526   [see Mail.7:2]
527   [fixed in 5.2.1 - test routines re-arranged to deal with this]
529 x pdksh 5.1.3, - (reported by Will Renkel): "r | more" doesn't work (nothing
530   is sent to more).
531   [see Mail.7:13]
532   [fixed in 5.2.0 - history commands now done in c_fc, not pushed onto input
533    stack]
535 x pdksh 5.1.3, - (reported by Rod Byrne, John Rochester): if a program leaves
536   the non-blocking (O_NONBLOCK) flag set after it exists, the shell
537   exits (multiple eofs).
538   [see Mail.7:15,16,51]
539   [fixed in 5.2.0: O_NONBLOCK is reset if read fails with EAGAIN,EWOULDBLOCK]
541 x pdksh 5.1.3, - (reported by Dale DePriest + fix): emacs: can't delete chars
542   from pattern in incremental search mode.
543   [see Mail.7:17]
544   [fixed in 5.2.0 - handle it]
546 x pdksh 5.1.3, Linux 1.2.2 (reported by Fritz Heinrichmeyer + fix): siglist.sh
547   doesn't work due to bug in bash 1.4.3 (trap is called incorrectly in
548   subshell causing temp file to be removed prematurely).
549   [see Mail.7:21]
550   [fixed in 5.2.0 - clear all traps in subshell so file isn't removed]
552 x pdksh 5.1.3, - (reported by Dale DePriest + fix): emacs: can't prefix
553   commands with more than single digit; many commands don't use nnumber
554   prefix.
555   [see Mail.7:26,40]
556   [fixed in 5.2.0 - x_set_arg reads sequence of numbers, other commands
557   changed to use x_arg]
559 x pdksh 5.1.3, - (reported by Dale DePriest): fc command line parsing
560   (and its interaction with history alias) doesn't act like at&t ksh:
561   history -40 gives bad option 4 error.
562   [see Mail.7:41,49]
563   [fixed in 5.2.1 - kludge parsing of -40 (numbers are option letters)]
565 x pdksh 5.1.3, - (reported by Dale DePriest): if PS1 contains paramaters that
566   get expanded, and if those parameters contain any ! characters, the !'s get
567   changed to history numbers.
568   [see Mail.7:44]
569   [fixed in 5.2.0 - substitution done after ! and !! substitution]
571 x pdksh 5.1.3, - (reported by Steve Wallis): set -a (set -o allexport) has
572   no effect.
573   [see Mail.7:47]
574   [fixed in 5.2.0 - changes to c_read, c_getopts, and comexec]
576 x pdksh 5.1.3, - (reported by Alexander S. Jones): (sleep 10000&) waits for
577   the sleep to complete.
578   [see Mail.7:54]
579   [fixed in 5.2.0 - execute() case TASYNC clears EXEC flag in call to execute]
581 x pdksh 5.1.3, - (reported by Will Renkel): positional parameters can't be
582   accessed within temporary variable assignments (eg, "FOO=$1 blah" doesn't
583   set FOO to $1.
584   [see Mail.7:57]
585   [fixed in 5.2.0 - var.c(newblock) - copy argc/argv from previous environment]
587 x pdksh 5.1.3, SCO unix ? (reported by Sean Hogan): job control stuff doesn't
588   work as sco doesn't do job control operations on /dev/tty.
589   [see Mail.7:30,43,69,70,74]
590   [fixed in 5.2.0 - don't try opening /dev/tty if on SCO]
592 x pdksh 5.1.3, - (reported with fix by Mike Jetzer): vi globing tacks
593   * at the end of files even if there are globing chars in last component
594   of filename (at&t ksh does not).
595   [see Mail.7:71]
596   [fixed in 5.2.0 - don't append * if there are unescaped globing chars]
598 x pdksh 5.1.3, - (reported with fix by Gabor Zahemszky): typoes in acconfig.h,
599   sh.h uses SVR3_PGRP insteda of SYSV_PGRP.
600   [see Mail.7:87]
601   [fixed in 5.2.0]
603 x pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs doesn't have ^[^].
604   [see Mail.7:87]
605   [fixed in 5.2.0 - added search-char-backward]
607 x pdksh 5.2.0, - (reported by David Tamkin): pwd -P doesn't strip .. and .
608   properly.
609   [see Mail.7:98]
610   [fixed in 5.2.0 - include ksh_stat.h in c_ksh.c]
612 x pdksh 5.2.0, - (reported by Dale DePriest): unistd.h config test
613   doesn't include sys/types before dirent.h.
614   [see Mail.8:2]
615   [fixed in 5.2.0]
617 x pdksh 5.2.0, - (reported by Robert Gallant): emacs file/command completion
618   code can clobber memory.
619   [see Mail.8:11]
620   [fixed in 5.2.1 - wrong variable being checked in buffer growing in
621    emacs.c(compl_file,compl_command)]
623 x pdksh 5.2.0, - (reported by David Tamkin): when CDPATH set and cd'ing to a
624   directory that doesn't exist, the error message contains the last element
625   of the CDPATH.
626   [see Mail.8:8]
627   [fixed in 5.2.0 - fixed error message]
629 x pdksh 5.2.0, - (reported by David Tamkin): if PS1 has an error in it
630   (eg, parameter expansion error), the shell loops forever printing
631   the error.
632   [see Mail.8:32]
633   [fixed in 5.2.3 - create error handling environment while expanding PS1]
635 x pdksh 5.2.0, Coherent machines (reported by Gabor Zahemszky): insert after
636   movement in emacs mode replaces all chars with first char on line.
637   System's bcopy doesn't handle overlapping src/dst.
638   [see Mail.8:38,43]
639   [fixed in 5.2.1 - check for broken memmove/bcopy in aclocal.m4]
641 x pdksh 5.2.0, - (reported by Gabor Zahemszky): ^[= in vi prints empty
642   strings for directory matches if markdirs is set.
643   [see Mail.8:48]
644   [fixed in 5.2.1 - skip trailing /'s before looking for last /]
646 x pdksh 5.2.0, - (reported by Gabor Zahemszky): <ESC>^H bound to del-back-char
647   not del-back-word
648   [see Mail.8:50-52]
649   [fixed in 5.2.1 - fixed x_emacs_keys]
651 x pdksh 5.2.1, - (reported by David Tamkin): compile fails due to lack
652   of c_test.h
653   [see Mail.8:58]
654   [fixed in 5.2.2 - fixed put c_test.h in distribution]
656 x pdksh 5.2.2, - (reported by Simon J. Gerraty): hist_source not being
657   initialized in complex history.
658   [see Mail.8:64]
659   [fixed in 5.2.3 - set it in second hist_init()]
661 x pdksh 5.2.2, - (reported by Gabor Zahemszky): set -A does not reset
662   the array contents.
663   [see Mail.8:65]
664   [fixed in 5.2.3 - changed var.c(unset) to unset whole array if appropriate]
666 x pdksh 5.2.2, - (reported by Gabor Zahemszky): getopts stops after an error;
667   at&t ksh carries on with next option.
668   [see Mail.8:65]
669   [fixed in 5.2.3 - remove GI_DONE flag from ksh_getopt()]
671 x pdksh 5.2.2, - (reported by Gabor Zahemszky): getopts prints shell name
672   twice in error messages.
673   [see Mail.8:65]
674   [fixed in 5.2.3 - added GI_NONAME flag]
676 x pdksh 5.2.2, - (reported by Gabor Zahemszky): pdksh's test doesn't know about
677   /dev/fd/n.
678   [see Mail.8:65]
679   [fixed in 5.2.3 - added test_stat() and test_eaccess()]
681 x pdksh 5.2.2, - (reported by Thomas Gellekum): config test for memmove/bcopy
682   missing semi-colon
683   [see Mail.8:67]
684   [fixed in 5.2.3]
686 x pdksh 5.2.2, - (reported by Donald Craig): fc string doesn't find string
687   if it is the most recent command.
688   [see Mail.8:76]
689   [fixed in 5.2.3 - fixed off by one error in history.c(hist_get)]
691 x pdksh 5.2.2, - (reported by Gabor Zahemszky): pdksh doesn't do the
692   "You have running jobs" when user attempts to log out.
693   [see Mail.8:74]
694   [fixed in 5.2.3 - added set -o nohup option with supporting code]
696 x pdksh 5.2.2, - (reported by Gabor Zahemszky): configure test for
697   broken memmove/bcopy doesn't work.
698   [see Mail.8:93]
699   [fixed in 5.2.3 - fixed test to copy overlapping buffers]
701 x pdksh 5.1.3, - (reported by <wendt@sv5.mch.sni.de>): doesn't compile on
702   solaris 5.x with COMPLEX_HISTORY defined.
703   [see Mail.8:98]
704   [fixed in 5.2.3 - undef COMPLEX_HISTORY if flock not available]
706 x pdksh 5.2.2, - (reported by Gabor Zahemszky): tilde expansion not preformed
707   in word part of ${foo[-+=?} substitution.
708   [see Mail.9:7]
709   [fixed in 5.2.3 - allow ~foo to end in a close brace]
711 x pdksh 5.2.2, - (reported by Gabor Zahemszky): "fc 30" edits from 30 to
712   most recent history (should be just 30).
713   [see Mail.9:7]
714   [fixed in 5.2.3 - if !-l and no last given, use first]
716 x pdksh 5.2.2, - (reported by Gabor Zahemszky): [many problems with man page]
717   [see Mail.9:12]
718   [fixed in 5.2.3 - fixed problems]
720 x pdksh 5.2.2, - (reported by Gabor Zahemszky): #else followed by non-comment
721   in sigact.c.
722   [see Mail.9:13]
723   [fixed in 5.2.3 - turn it into a comment]
725 x pdksh 5.2.2, - (reported with fix by Gabor Zahemszky): two argument form of
726   cd doesn't work.
727   [see Mail.9:14]
728   [fixed in 5.2.3 - in c_cd(), use current_wd not path]
730 x pdksh 5.2.2, - (reported with fix by Gabor Zahemszky): command -V doesn't
731   report reserved words.
732   [see Mail.9:30]
733   [fixed in 5.2.3 - in c_whence(), look for reserved words if vflag set]
735 x pdksh 5.2.3, - (reported by Dale DePriest): at&t's tbl wants space
736   between font specification and end of table descrption (ie, fB . not
737   fB.).
738   [see Mail.9:41]
739   [fixed in 5.2.4 - put spaces in]
741 x pdksh 5.2.3, - (reported by David Tamkin & Claus L{gel Rasmussen): PS1
742   isn't imported from environment anymore.
743   [see Mail.9:43,76]
744   [fixed in 5.2.4 - main: don't set PS1 if it is already set]
746 x pdksh 5.2.3, - (reported by Gary Rafe): If PS1 contains newlines, vi
747   editing mode dones't redraw lines properly.
748   [see Mail.9:63]
749   [fixed in 5.2.4 - added prompt_skip stuff to vi/emacs]
751 x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): cd: error message if
752   directory didn't exist was wrong.
753   [see Mail.9:66]
754   [fixed in 5.2.4 - print correct string in error message]
756 x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): vi: <ESC>* shouldn't append
757   a * if word contains a $.
758   [see Mail.9:66]
759   [fixed in 5.2.4 - vi.c(glob_word): check for $ in word, check for null
760    expansion]
762 x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): vi: <ESC>= doesn't
763   list expansions in column form.
764   [see Mail.9:66]
765   [fixed in 5.2.4 - use pr_menu to print things nicely]
767 x pdksh 5.2.3, - (reported Larry Bouzane): should be a way of installing
768   binary/man page as pdksh instead of ksh.
769   [see Mail.9:100]
770   [fixed in 5.2.4 - use the --enable-shell=pdksh option to configure]
772 x pdksh 5.2.3, - (reported by Gabor Zahemszky): [many problems with man
773   page]
774   [see Mail.10:20]
775   [fixed in 5.2.4 - fixed problems]
777 x pdksh 5.2.3, - (reported by Gabor Zahemszky): exec 1<&9 reports
778   error with ">&9" in it.
779   [see Mail.10:20]
780   [fixed in 5.2.4 - changed iosetup()]
782 x pdksh 5.2.3, - (reported by Gabor Zahemszky): man page doesn't document
783   /dev/fd/N
784   [see Mail.10:20]
785   [fixed in 5.2.4 - updated manual]
787 x pdksh 5.2.3, - (reported by Ted Coady): [[ foo/bar = foo* ]]
788   fails; should succeed.
789   [see Mail.10:32]
790   [fixed in 5.2.4 - fixed problem in exec.c(dbteste_getopnd)]
792 x pdksh 5.2.3, - (reported by Ruei-wun Tu): make on NeXT/NeXTSTEP 3.3
793   doesn't understand .PRECIOUS target and so does nothing.
794   [see Mail.10:43]
795   [fixed in 5.2.4 - moved .PRECIOUS after all in Makefile.in]
797 x pdksh 5.2.3, - (reported & fixed by Paul Borman): shell doesn't kill
798   foreground process when SIGHUP received; Also, CONT sent before HUP.
799   [see Mail.10:44]
800   [fixed in 5.2.4 - j_exit now sends HUP to foreground process]
802 x pdksh 5.2.3, AIX 3.2.5 (reported by Ian Portsmouth): C compiler compains
803   about sigtraps[] being re-declared in trap.c.
804   [see Mail.10:73]
805   [fixed in 5.2.4 - use cpp define to avoid bogus re-declaration error]
807 x pdksh 5.2.3, - (reported by Michael Haardt): ENV should not be
808   included if shell is compiled as sh and posix option not set.
809   [see Mail.10:83]
810   [fixed in 5.2.4 - only include ENV if POSIX, if compiled as sh]
812 x pdksh 5.2.3, - (reported & fixed by DaviD W. Sanderson): case statements
813   don't allow {/} in place of IN/ESAC.
814   [see Mail.10:77,78]
815   [fixed in 5.2.4 - allow {/} in case statements]
817 x pdksh 5.2.3, - (reported by Larry Daffner): $? is incorrectly zero'd
818   at start of traps.
819   [see Mail.11:9]
820   [fixed in 5.2.4 - don't clear exstat in main.c(shell)]
822 x pdksh 5.2.3, - (reported by Frank "Crash" Edwards): configure on linux XXX
823   doesn't detect the presence of lstat().
824   [see Mail.11:36]
825   [fixed in 5.2.4 - change configure to include <sys/stat.h> in lstat() test]
827 x pdksh 5.2.3, - (reported by Gabor Zahemszky): typeset -f dumps core
828   in the after using autoload functions.
829   [see Mail.11:74?]
830   [fixed in 5.2.4 - c_typeset no longer traverses the array link for functions]
832 x pdksh 5.2.3, - (reported by Gabor Zahemszky): typeset -f does not report
833   undefined autoload functions
834   [see Mail.11:74?]
835   [fixed in 5.2.4 - c_typeset: don't ignore unset functions]
837 x pdksh 5.2.3, - (reported by Dale DePriest): alias -t -r does not
838   reset aliases.
839   [see Mail.11:99]
840   [fixed in 5.2.4 - c_alias: call ksh_getopt_reset() before calling c_unalias]
842 x pdksh 5.2.3, - (reported & fixed by Jason Tyler): 'echo abc^Jfc -e - a=b e'
843   echos b, not bbc.
844   [see Mail.11:100?]
845   [fixed in 5.2.4 - hist_replace: use s, not last]
847 x pdksh 5.2.3, - (reported by Jason Tyler): 'fc -e -' when there is
848   no history causes infinite loop.
849   [see Mail.11:100?]
850   [fixed in 5.2.4 - histbackup: allow histptr to go below history]
852 x pdksh 5.2.4, - (reported by David Tamkin): jmp_buf is used instead of
853   sigjmp_buf.
854   [see Mail.XXX:XXX]
855   [fixed in 5.2.5 - added ksh_jmp_buf and defined appropriately]
857 x pdksh 5.2.4, - (reported by Stephen Coffin): /<RETURN> in vi mode does not
858   repeat last search.
859   [see Mail.XXX:XXX]
860   [fixed in 5.2.5 - vi.c(vi_hook) - make it repeat last search]
862 x pdksh 5.2.4, - (reported by Gabor Zahemszky): functions containing select
863   commands aren't printed correctly by typeset.
864   [see Mail.XXX:XXX]
865   [fixed in 5.2.5 - tree.c(ptree) - add case for TSELECT]
867 x pdksh 5.2.4, - (reported & fixed by Stefan Dalibor): COLUMNS isn't set on
868   shell start up (and window size is ignored) 'cause tty_fd isn't valid when
869   x_init() is called.
870   [see Mail.XXX:XXX]
871   [fixed in 5.2.5 - call x_init() after j_init() is called]
873 x pdksh 5.2.4, - (reported by Will Renkel): "echo -" just prints a blank
874   line - should print the minus.
875   [see Mail.XXX:XXX]
876   [fixed in 5.2.5 - c_ksh.c(c_print): don't do argument parsing on lone -]
878 x pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs doesn't have ^[*.
879   [see Mail.7:87]
880   [fixed in 5.2.5]
882 x pdksh 5.2.3, - (reported by Mike Jetzer): in vi, <ESC>= doesn't append
883   a / after directories.
884   [see Mail.9:66]
885   [fixed in 5.2.5]
887 x pdksh 5.2.0, - (reported by Gabor Zahemszky): can set readonly variables
888   via command assignments (eg, "readonly x=y; x=z /bin/echo hi" should
889   fail and doesn't).
890   [see Mail.8:50,65]
891   [fixed in 5.2.5 - LOCAL_COPY flag passed from comexec() down to local()]
893 x pdksh 5.2.4, - (reported by Tom Karches): history: "r old=new", with
894   no commands prefix given, prints "fc: too mnay arguments" - it should
895   do the subst on the previous command.
896   [see Mail.XXX:XXX]
897   [fixed in 5.2.5]
899 x pdksh 5.2.3, - (reported by Vigen Pogosyan): assignments in $(( ... ))
900   remember the base that was assigned in pdksh - does not in at&t ksh.
901   [see Mail.10:54]
902   [fixed in 5.2.5: uset setint() in expr.c(evalexpr)]
904 x pdksh 5.2.4, - (reported by Gabor Zahemszky): emacs: ^O steps down
905   two lines (should be 1).
906   [see Mail.XXX:XXX]
907   [fixed in 5.2.5: convert history line to command number, then convert back]
909 x pdksh 5.2.3, - (reported by David Gast(? gast@twinsun.com)): fc -ln -1 -1
910   reports the current command, not the previous command.
911   [see Mail.10:49]
912   [fixed in 5.2.5]
914 x pdksh 5.2.3, - (reported by Matthew Green): foo=`^Jecho bar` doesn't
915   set foo to bar (foo is empty).
916   [see Mail.XXX:XXX]
917   [fixed in 5.2.5: syn.c: set multiline.on when source is SSTRING]
919 x pdksh 5.2.5, - (reported by Gabor Zahemszky): continue/break: if n
920   is too big, shell prints internal error message.
921   [see Mail.XXX:XXX]
922   [fixed in 5.2.6: fix c_brkcont to use last loop if n is too big]
924 x pdksh 5.2.5, - (reported by Gabor Zahemszky): set: +o in ksh93
925   prints command that sets various options.
926   [see Mail.XXX:XXX]
927   [fixed in 5.2.6: changed misc.c(printoptions)]
929 x pdksh 5.2.5, - (reported by Gabor Zahemszky): COLUMNS/LINES variables
930   are not exported.
931   [see Mail.XXX:XXX]
932   [fixed in 5.2.6: use typeset() in edit.c(x_init) to export COLUMNS/LINES]
934 x pdksh 5.2.5, - (reported by Gabor Zahemszky): emacs: <ESC><ESC> puts
935   space after completed directories.
936   [see Mail.XXX:XXX]
937   [fixed in 5.2.6: check for single/non-directory match in emacs.c(do_complete)]
939 x pdksh 5.2.5, - (reported by Gabor Zahemszky): vi: # removes comment
940   and executes if command already commented.
941   [see Mail.XXX:XXX]
942   [fixed in 5.2.6: added vi.c(do_comment)]
944 x pdksh 5.2.7, - (reported by Adrian Marsh): test doesn't have == operator.
945   [see Mail.XXX:XXX]
946   [fixed in 5.2.8: added == to c_test.c operator table]
948 x pdksh 5.2.7, - (reported by Mike Jetzer): pdksh sets/exports COLUMNS/LINES
949   which causes applications not to respond to window size changes.
950   [see Mail.XXX:XXX]
951   [fixed in 5.2.8: COLUMNS/LINES no longer exported automatically]
953 x pdksh 5.2.7, - (reported by Gabor Zahemszky): getopts sets OPTIND differently
954   that at&t ksh when a bad option is given.
955   [see Mail.XXX:XXX]
956   [fixed in 5.2.8: OPTIND not set if option was bad - fragile fix - may go away]
958 x pdksh 5.2.7, - (reported with fix by Marc Olzheim): sh version shouldn't
959   have mail check stuff, macro expansion in PS[0-9].
960   [fixed in 5.2.8: added lots of ifdefs]
962 x pdksh 5.2.7, - (reported by Gabor Zahemszky): sub commands in PS1 cause
963   a warning message to be printed.
964   [see Mail.XXX:XXX]
965   [fixed in 5.2.8: lex.c(set_prompt) - don't print the warning message]
967 x pdksh 5.2.7, - (reported by Tom Watson): some environment variables
968   (eg, PATH) are converted to uppercase on 16-bit int machine.
969   [see Mail.XXX:XXX]
970   [fixed in 5.2.8: struct tbl.flag (32 bit thing) was being treated as an
971    int in some places]
973 x pdksh 5.2.7, - (reported by Gabor Zahemszky): unset always returns 0 - should
974   return 1 if variable/function is not set.
975   [see Mail.XXX:XXX]
976   [fixed in 5.2.8: fixed c_sh.c(c_unset)]
978 x pdksh 5.2.7, - (reported by Gabor Zahemszky): select should only print the
979   menu the first time, if REPLAY is empty, or if a blank line is entered.
980   [see Mail.XXX:XXX]
981   [fixed in 5.2.8: fixed up exec.c(execute,do_selectargs)]
983 x pdksh 5.2.7, - (reported by Gabor Zahemszky): shell reports "cannot execute"
984   error if file exists, even if . not in path.
985   [see Mail.XXX:XXX]
986   [fixed in 5.2.8: fixed up exec.c(comexec)]
988 x pdksh 5.1.3, - (reported with partial fix by ra@rhi.hi.is): shell doesn't
989   listen to sigwinch.
990   [see Mail.7:7 and related]
991   [fixed in 5.2.8: changed edit.c(x_init) to catch sigwinch]
993 x pdksh 5.2.7, - (reported by Gabor Zahemszky): typeset doesn't report
994   variables that have attributes (like export) but no values.
995   [see Mail.XXX:XXX]
996   [fixed in 5.2.8: fixed up c_ksh.c(c_typeset)]
998 x pdksh 5.2.7, - (reported by Gabor Zahemszky): error message printed as
999   a result of "set -o nounset" is different from at7t ksh.
1000   [see Mail.XXX:XXX]
1001   [fixed in 5.2.8: fixed error messges in eval.c]
1003 x pdksh 5.2.7, - (reported by Gabor Zahemszky): vi/emacs: when listing
1004   command/file completions, should go back at most one space.  Also, should
1005   allow completions on zero length names.
1006   [see Mail.XXX:XXX]
1007   [fixed in 5.2.8: fixed edit.c(x_locate_word); now allows zero-length
1008    file completions (but not command)]
1010 * pdksh 5.2.7, - (reported by Gabor Zahemszky): emacs: <esc># doesn't do
1011   the comment thing.
1012   [see Mail.XXX:XXX]
1013   [fixed in 5.2.8: added emacs.c(x_comment) et al.]
1015 x pdksh 5.2.7, - (reported by Gabor Zahemszky): arithmatic expressions
1016   containing variables not expanded as in at&t ksh. eg, "x=1+2, let y=x"
1017   fails.
1018   [see Mail.XXX:XXX]
1019   [fixed in 5.2.8: added evaling/INEXPREVAL/ET_RECURSIVE code to expr.c]
1021 x pdksh 5.2.7, - (reported by Gabor Zahemszky): unsetting the 0th element
1022   of an array kills the whole array.
1023   [see Mail.XXX:XXX]
1024   [fixed in 5.2.8: var.c(unset) - allow ARRAY to be preserved]
1026 x pdksh 5.2.7, - (reported by Gabor Zahemszky): unsetting a function while
1027   it is being executed can result in core dump.
1028   [see Mail.XXX:XXX]
1029   [fixed in 5.2.8: table.c(texpand) - dont free if FINUSE is set]
1031 * pdksh 5.2.7, - (reported by Gabor Zahemszky): exec 3<&p doesn't close
1032   shells copy of the coprocess file desc.
1033   [see Mail.XXX:XXX]
1034   [fixed in 5.2.8: coprocess stuff made to act like ksh93 co-processes]
1036 x pdksh 5.2.8, - (reported with fix by Lars Hecking): doesn't compile as
1037   sh - c_ksh.c and jobs.c boom out.
1038   [see Mail.XXX:XXX]
1039   [fixed in 5.2.9: added ifdef KSH to appropriate places]
1041 x pdksh 5.2.8, - (reported by Paolo Zeppegno): assignments containing brackets
1042   are treated as commands.
1043   [see Mail.XXX:XXX]
1044   [fixed in 5.2.9: fixed bug in vars.c(skip_wdvarname).]
1046 x pdksh 5.2.5, - (reported by Adrian Marsh): configuration on Linux FT fails.
1047   Caused by configure script using -g flag - gcc passes -lg to ld, ld fails
1048   to find -lg (autoconf or Linux FT bug).
1049   [see Mail.XXX:XXX]
1050   [fixed in 5.2.9: changed autoconf's -g test to do linking as well.]
1052 x pdksh 5.2.8, Solaris 2.5.1 (reported by Stefan Dalibor): 2 tests
1053   (xxx-exec-environment-1 and 2) fail because printenv isn't found.
1054   [see Mail.XXX:XXX]
1055   [fixed in 5.2.9: changed test to use env instead]
1057 x pdksh 5.2.8, - (reported by Stefan Dalibor): shell assumes 80 columns when
1058   it starts up if COLUMNS is set correctly in the environ.
1059   [see Mail.XXX:XXX]
1060   [fixed in 5.2.9: fixed so window size is checked at startup]
1062 x pdksh 5.2.8, NeXT machines (reported by Kai Wong): clock_t, which lives
1063   in sys/time.h, isn't found by configure (causes warning messages).
1064   [fixed in 5.2.9: configure now checks in sys/time.h]
1066 x pdksh 5.2.3, - (reported by Mike Jetzer): in vi, <ESC>= on word with ~
1067   but no /, beeps (or prints final path component?).
1068   [see Mail.9:66]
1069   [fixed in 5.2.9: fixed edit.c(add_glob) so no * is appended to ~username]
1071 x pdksh 5.1.3, NeXT machines (reported by Jason Baugher): job control doesn't
1072   work on NeXT machines (both m68k and x86 based) in rlogin sessions.
1073   (caused by open("/dev/tty") failing - rlogin on NeXT doesn't set up
1074   controlling tty properly).
1075   [see Mail.7:29]
1076   [fixed in 5.2.9: added hack to main to get a controlling tty]
1078 x pdksh 5.2.8, NeXT 3.2 (reported by Andrew S Townley): the output of the
1079   siglist.sh script fills the disk.  Also, the signal list generated (by the
1080   fixed script) is mostly empty.
1081   [see Mail.XXX]
1082   [fixed in 5.2.9: fixed siglist.sh script to avoid infinite loops.  Added
1083    comment to README warning of problem with NeXT's native cc -E]
1085 x pdksh 5.2.9, - (reported by Loris Talpo): long prompts are messed up in
1086   vi mode.
1087   [see Mail.XXX]
1088   [fixed in 5.2.9: lex.c(pprompt) was broken]
1090 x pdksh 5.2.9, - (reported by Will Renkel): a double backslash followed
1091   by a newline in an unquoted here document results in one of the backslashes
1092   and the newline being stripped.
1093   [see Mail.XXX]
1094   [fixed in 5.2.10: fixed backslash-newline processing in lex.c]
1096 x pdksh 5.2.9, - (reported by Han Holl): read x?prompt doesn't work 
1097   on non-interactive shells when the input is from a tty.
1098   [see Mail.XXX]
1099   [fixed in 5.2.10: changed test in c_read() from FTALKING to isatty]
1101 x pdksh 5.2.10, - (reported by Dale DePriest): expanding aliases causes
1102   extra input.
1103   [see Mail.XXX]
1104   [fixed in 5.2.11: fixed syn.c(c_list).]
1106 x pdksh 5.2.10, - (reported by John Rochester): window size changes don't
1107   happen on Dec unix (osf) because TIOCGWINSZ is defined in <sys/ioctl.h>
1108   not in <termios.h>.
1109   [see Mail.XXX]
1110   [fixed in 5.2.12: sys/ioctl.h included with termios.h/termio.h if possible]
1112 x pdksh 5.2.11, - (reported by Randy Bouzane): aliases in command substitutions
1113   result in code dumps.
1114   [see Mail.XXX]
1115   [fixed in 5.2.12: lex.c(getsc__): break if eof is read]
1117 x pdksh 5.2.11, - (reported by Will Renkel): aliases containing ;<newline>
1118   or <newline><newline> aren't fully read/executed.
1119   [see Mail.XXX]
1120   [fixed in 5.2.12: syn.c(get_command): call inalias()]
1122 x pdksh 5.2.11, SGI/IRIX 5.2 (reported by bert@xpilot.com): pipelines
1123   containing built in commands hang forever.
1124   [see Mail.XXX]
1125   [fixed in 5.2.12: fixed pgrp sync code in jobs.c]
1127 x pdksh 5.2.11, - (reported by Herbert Thielen via Larry Daffner): shell leaves
1128   temp files around when executing shell scripts that have functions with
1129   here documents which end in an exec.
1130   [see Mail.XXX]
1131   [fixed in 5.2.12: call main.c(cleanup_proc_env()) from exec.c(execute()).]
1133 x pdksh 5.2.12, - (reported with fix by Eric J. Chet via Thomas Gellekum):
1134   . can cause core dump when cleaning up.
1135   [see Mail.XXX]
1136   [fixed in 5.2.13: call shf_close() before quitenv()]
1138 x pdksh 5.2.12, - (reported by Bruce Burns): test with a single -t option
1139   always returns true (does a string test instead of isatty(1)).
1140   [see Mail.XXX]
1141   [fixed in 5.2.13: do the isatty(1) unless in posix mode]
1143 x pdksh 5.2.12, - (reported by David Tamkin): aliases ending in "; "
1144   cause continuation prompt to be printed.
1145   [see Mail.XXX]
1146   [fixed in 5.2.13: syn.c(c_list) now handles blank lines, removed cf=CONTIN
1147    in syn.c(get_command)]
1149 x pdksh 5.2.12, - (reported by Herbert Thielen via Larry Daffner): set
1150   does not allow +o and -o options in the same command line.
1151   [see Mail.XXX]
1152   [fixed in 5.2.13: changed ksh_getopt to remove exclusion code.]
1154 x pdksh 5.2.12, - (reported by Han Holl <jeholl@euronet.nl>):
1155   set -A foo -- bar doesn't skip the --.
1156   [see Mail.XXX]
1157   [fixed in 5.2.13: changed misc.c(parse_args) so A takes an option]
1159 x pdksh 5.2.12, - (reported by David Tamkin): -e (errexit) should be ignored
1160   when processing profile and ENV.
1161   [see Mail.XXX]
1162   [fixed in 5.2.13: errexit saved/cleared/restored in main()]
1164 x pdksh 5.2.12, - (reported by Han Holl <jeholl@euronet.nl>):
1165   [ -x foo ] succeeds for root if foo exists.
1166   [see Mail.XXX]
1167   [fixed in 5.2.13: changed c_test.c(test_access) to use stat in this case]
1169 x pdksh 5.2.4, - (reported by Gabor Zahemszky): echo ${foo[*]#/} generates
1170   bad substsitution error, newer ksh's don't (older ones do);
1171   error includes {...#@(/)}.
1172   [fixed in 5.2.13: moved the @(..) hack from yylex() to expand()]
1174 x pdksh 5.2.8, - : extended pattern globing doesn't handle nested parens (),
1175   e.g., [[ aby = +(a|b(x|y)) ]]
1177 x pdksh 5.2.12, - (reported by Marc Olzheim <marcolz@stack.nl>):
1178   "echo a | (echo b | echo c)" causes a core dump.
1179   [see Mail.XXX]
1180   [fixed in 5.2.13: clear XPIPEI,XPIPEO at start of jobs.c(exchild)]
1182 x pdksh 5.2.12, - (reported by Curt Finch <curt@pnk.com>): in an interactive
1183   shell, globbing isn't done on redirections if the command is part of
1184   a pipeline.  e.g., in "cat < /tmp/*gz | grep foo", the /tmp/*gz is
1185   not expanded.
1186   [see Mail.XXX]
1187   [fixed in 5.2.13: clear XPIPEI,XPIPEO at start of jobs.c(exchild)]
1189 x pdksh 5.2.12, - (reported with fix by Greg A. Woods <woods@most.weird.com>):
1190   in emacs, ^[_ (aka ^[.) gets the word from the previous line relative to
1191   where the current line came from in the history.  It should get it from
1192   the last executed line ala at&t ksh.
1193   [see Mail.XXX]
1194   [fixed in 5.2.13: use absolute last command]
1196 x pdksh 5.2.12, - (reported by Gabor Zahemszky): MAILCHECK and MAIL
1197   don't report `new mail' unless MAIL is re-assigned.
1198   [see Mail.XXX]
1199   [fixed in 5.2.13: mail code was using variables memory, which was later
1200    trashed by exporting the MAIL variable.  Fixed by saving copy of value.]
1202 x pdksh 5.2.12, - (reported by Gabor Zahemszky): memory gets badly fragmented
1203   when reversing a (large) file using a simple while read loop and variable
1204   concatenation.
1205   [see Mail.XXX]
1206   [fixed in 5.2.13: alloc.c changed to allow malloc() to deal with large
1207    blocks.]
1209 x pdksh 5.2.12, - (reported by Bernd Eggink <eggink@rrz.uni-hamburg.de>)
1210   ksh style functions don't save/reset/restore OPTIND.
1211   [see Mail.XXX]
1212   [fixed in 5.2.13: save and restore user_opt for ksh-style functions.]
1214 x pdksh 5.2.12, - (reported by Marc Olzheim <marcolz@stack.nl>)
1215   ${..%..} stuff don't work in SH mode.
1216   [see Mail.XXX]
1217   [fixed in 5.2.13: removed ifdef KSH from misc.c(do_gmatch)]
1219 x pdksh 5.2.12, - (reported with fix by George Robbins
1220   <grr@shandakor.tharsis.com>)
1221   in sh, "exec 3>&1" does not keep fd 3 open in executed commands.
1222   [see Mail.XXX]
1223   [fixed in 5.2.13: c_sh.c(c_exec): added ifdef KSH around fd_clexec() call]
1225 x pdksh 5.2.12, - (reported with fix by George White
1226   <gwhite@bodnext.bio.dfo.ca>)
1227   in remove_temps(main.c), space for name field is not allocated correctly.
1228   [see Mail.XXX]
1229   [fixed in 5.2.13: initialize t->name in new structure]
1231 x pdksh 5.2.12, - (reported with fix by Marc Olzheim <marcolz@stack.nl>):
1232   when at (past) end of the line, word/command completion will skip back
1233   [see Mail.XXX]
1234   [fixed in 5.2.13: edit.c(x_locate_word): delete special handling of
1235    end-of-buffer]
1237 x pdksh 5.2.12, - (reported by Mike Kelly <tfsmiles@ecst.csuchico.edu>):
1238   doting a directory (or a empty path) is allowed.
1239   [see Mail.XXX]
1240   [fixed in 5.2.13: exec.c(search_access): don't do non-regular files for R_OK]
1242 x pdksh 5.2.13, - (reported by Mike Kelly <tfsmiles@ecst.csuchico.edu>):
1243   typeset -f FUNC doesn't print follows command (and expression) substitutions.
1244   [see Mail.XXX]
1245   [fixed in 5.2.14: tree.c(tputS): add wp++]
1247 x pdksh 5.2.13, - (reported by Thomas Gellekum):
1248   make check fails on freebsd with "chmod 644 abcx failed - Inappropriate ...".
1249   [see Mail.XXX]
1250   [fixed in 5.2.14: make test/th convert permissions to octal]
1252 x pdksh 5.2.13, - (reported with fix by David E. Wexelblat):
1253   when re-allocating memory, too much may be copied from old memory.
1254   [see Mail.XXX]
1255   [fixed in 5.2.14: use min old old size and new size]
1257 x pdksh 5.2.13, - (reported with fix by David E. Wexelblat):
1258   set -o printed some options sans names.
1259   [see Mail.XXX]
1260   [fixed in 5.2.14: use 0 instead of null in options[] table]
1262 x pdksh 5.2.13, - (reported by Gabor Zahemszky):
1263   emacs mode: <esc>. in very fist command causes core dump.
1264   [see Mail.XXX]
1265   [fixed in 5.2.14: ring bell if no history in emacs.c(x_prev_histword)]
1267 x pdksh 5.2.13, - (reported by Keith S McCabe): pdksh dumps core
1268   after a cd command.
1269   [see Mail.XXX]
1270   [fixed in 5.2.14: exec.c(flushcom) was setting bits in table entry, instead
1271    of clearing a single bit]
1273 x pdksh 5.2.12, - (reported by Jaime A. Urquidi): typeset -i reports
1274   on array elements that have no value (at&t ksh reports on array
1275   base name - no index).
1276   [see Mail.XXX]
1277   [fixed in 5.2.14: hack to c_ksh.c(c_typeset) to generate the ksh88 style
1278    output]
1280 x pdksh 5.2.13, - (reported with fix by Todd C. Miller):
1281   ulimit -ctn unlimittttted kills shell (resource exceeded).
1282   [see Mail.XXX]
1283   [fixed in 5.2.14: hacked c_ulimit to generate error val is 0 and expr doesn't
1284    start with a digit]
1286 x pdksh 5.2.13, - (reported with fix by Theo de Raadt):
1287   ". /dev/null" says access denied.
1288   [see Mail.XXX]
1289   [fixed in 5.2.14: exec.c(search_access): allow non-regular file if reading]
1291 x pdksh 5.2.13, - (reported with fix by Eric Youngdale): flag field in aliases
1292   incorrectly changed (all flags set instead of clearing ISSET) in
1293   exec.c(flushcom).
1294   [see Mail.XXX]
1295   [fixed in 5.2.14: exec.c(flushcom): change = ~ISSET to &= ~ISSET]
1297 x pdksh 5.2.13, - (reported by Andre Delafontaine): ${#array[*]} prints
1298   largest index instead of number of (set) elements in an array (ksh88 does
1299   the former).
1300   [see Mail.XXX]
1301   [fixed in 5.2.14: eval.c(varsub): count number of elements]
1303 x pdksh 5.2.13, - (reported by Clifford Wolf): sys_siglist[] doesn't
1304   always have NSIG non-null entries...
1305   [see Mail.XXX]
1306   [fixed in 5.2.14: trap.c(inittrap): check for null sys_siglist entries.]
1308 x pdksh 5.2.13, - (reported with fix by Todd C. Miller): waitfor in jobs.c
1309   can cause core dump if j_lookup fails.
1310   [fixed in 5.2.14: jobs.c(waitfor): return if j_lookup fails]
1312 x pdksh 5.2.13, - (reported by Martin Bond): if shell is started several
1313   times in quick succession, echo $RANDOM produces the same results.
1314   [fixed in 5.2.14: main.c(main): seed RANDOM using time, pid, ppid]
1316 x pdksh 5.2.13, - (reported by Martin Bond): repeating "echo `echo $RANDOM`"
1317   will always produce the same number.
1318   [fixed in 5.2.14: call var.c(change_random) from jobs.c(exchild)]
1320 x pdksh 5.2.13, hpux 10.x (reported by Mike Kelly): pwd will dump core if
1321   current directory is not readable.
1322   [fixed in 5.2.14: config test & code to work around hpux C library bug]
1324 x pdksh 5.2.13, linux (reported by Mike Jetzer): getwd warning from linker
1325   [fixed in 5.2.14: configure.in/misc.c: check for getcwd, use it over getwd]
1327 x pdksh 5.2.13, (reported by Dmitri Kulginov): "trap exit 1" does not set a
1328   trap for HUP (exit is mistaken as a signal name, not a command).
1329   [fixed in 5.2.14: c_sh.c(c_trap): use case sensitive lookup for first arg]
1331 x pdksh 5.2.13, (reported by Mark Funkenhauser): eval "$(false)" does not
1332   result in $? being set to 1 (is 0).
1333   [fixed in 5.2.14: c_sh.c(c_eval): set exstat to subst_exstat before shell()]
1335 x pdksh 5.2.13, (reported with fix by Kevin Schoedel): word boundaries in
1336   file completion are only spaces - at&t ksh uses ()<>&| and spaces.
1337   [fixed in 5.2.14: edit.c(IS_WORDC): changed macro to be LEX1 + quotes]
1339 x pdksh 5.2.13.5, (reported with fix by Martin Lucina <mato@kotelna.sk>):
1340   exit status parsing in exit command incorrect (sets status to random
1341   value if no argument given).
1342   [fixed in 5.2.14: c_sh.c(c_exitreturn): only set exstat if arg given]
1344 x pdksh 5.2.13.5, (reported with fix by Martin Lucina <mato@kotelna.sk>):
1345   KSH_CHECK_H_TYPE in aclocal.m4 has too many [] around the patterns.
1346   [fixed in 5.2.14: aclocal.m4(KSH_CHECK_H_TYPE): remove two pairs on []]
1348 x pdksh 5.2.13.5, (reported by Charles M. Hannum <root@ihack.net>): An exit
1349   trap set in a subshell is not executed (unless explicit exit used).
1350   [fixed in 5.2.14: exec.c(execute): changed exit(rv) to unwind(LEXIT).]
1352 x pdksh 5.2.12, - : MAILCHECK isn't preserved from the environment on startup.
1353   [fixed in 5.2.14: changed main's initcoms[].]
1355 x pdksh 5.2.13, (reported by Marc Olzheim): time at the end of a pipeline
1356   doesn't print anything.
1357   [fixed in 5.2.14: exec.c(execute): clear XEXEC when calling timex().]
1359 x pdksh 5.2.13, (reported by David J. McMahon): here documents in subshells
1360   don't work if the parent exits before the subshell.
1361   [fixed in 5.2.14: heredocs now saved in memory, written to temp when needed.]
1363 x pdksh 5.2.13, (reported by Seiichi Namba): emacs: keys bound in .profile/$ENV
1364   are overridden by stty settings (eg, binding ^U in .profile has no effect).
1365   [fixed in 5.2.14: emacs.c: added x_bound array to track what user has set.]
1367 x pdksh 5.2.13: vi: failed redo (.) commands caused line to be returned to the
1368   shell (eg, "echo hi/there^[Bdf/.").
1369   [fixed in 5.2.14: vi.c(vi_hook): removed !=0 from VREDO switch expression]
1371 x pdksh 5.2.13, (reported by Arthor Pool): man page: (a) the time reserved
1372   word is not described; (b) description of command line wrapping is in vi
1373   section only (not in emacs); (c) limit on array indices not mentioned;
1374   (d) ignoreeof ignored if eof read 13 times.
1375   [fixed in 5.2.14: man page updated]
1377 x pdksh 5.2.13, (reported by Arthor Pool): set -u causes loss of stdout
1378   when command substitution with undefined parameter reference is run
1379   in an interactive shell.
1380   [fixed in 5.2.14: jobs.c(fill_command): don't eval TCOM arguments]
1382   XXX fd 1 lost (general fd pool handler?, error handler for comsub?)
1384   AP messages:
1385       time not descr
1386       vi/emacs <+>
1387       trap
1388       typeset -f ... "$(jasdsjh)" ...
1389       array
1390       os2 interrupts + pattern 
1391       ignoreeof
1392       set -A --
1393       set -u -> comsub errors & fill_command eval
1395 x pdksh 5.2.13, (reported by Dave Hillman): test -nt
1396   and test -ot do not succeed if file2 (file2) does not exist.
1397   [fixed in 5.2.14: c_test.c(test_eval): return true if appropriate stat fails]