mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-02-13 11:42:21 +00:00
57 lines
2.4 KiB
Text
57 lines
2.4 KiB
Text
TODO for AT&T ksh93, 93u+m bugfix branch
|
|
|
|
______
|
|
Fix regression test failures:
|
|
|
|
- On OpenBSD, there are 15 locale-related test failures in variables.sh.
|
|
- There are many regression test failures on NetBSD.
|
|
|
|
______
|
|
Fix build system:
|
|
|
|
- ksh does not currently build on AIX or QNX.
|
|
- Reimport the removed nmake. It is necessary for changes in Makefiles
|
|
to take effect. The machine-generated Mamfiles are now used as a fallback,
|
|
but they are not meant to be edited by hand.
|
|
|
|
______
|
|
Fix currently known bugs affecting shell scripting. These are identified by
|
|
their modernish IDs. For exact details, see code/comments in:
|
|
https://github.com/modernish/modernish/tree/0.16/lib/modernish/cap/
|
|
|
|
- BUG_BRACQUOT: shell quoting within bracket patterns has no effect. This
|
|
bug means the '-' retains it special meaning of 'character range', and an
|
|
initial ! (and, on some shells, ^) retains the meaning of negation, even
|
|
in quoted strings within bracket patterns, including quoted variables.
|
|
|
|
- BUG_CMDEXPAN: if the 'command' command results from an expansion, it acts
|
|
like 'command -v', showing the path of the command instead of executing it.
|
|
For example:
|
|
v=command; "$v" ls
|
|
or
|
|
set -- command ls; "$@"
|
|
don't work.
|
|
See also: https://github.com/att/ast/issues/963
|
|
|
|
- BUG_CMDSPEXIT: preceding a "special builtin"[*] (other than 'eval', 'exec',
|
|
'return' or 'exit') with 'command' does not always stop it from exiting
|
|
the shell if the builtin encounters error.
|
|
[*] https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_14
|
|
|
|
- BUG_CSUBSTDO: If standard output (file descriptor 1) is closed before
|
|
entering a $(command substitution), and any other file descriptors are
|
|
redirected within the command substitution, commands such as 'echo' will
|
|
not work within the command substitution, acting as if standard output is
|
|
still closed.
|
|
|
|
- BUG_IFSGLOBS: In glob pattern matching (as in case or parameter
|
|
substitution with # and %), if IFS starts with ? or * and the "$*"
|
|
parameter expansion inserts any IFS separator characters, those characters
|
|
are erroneously interpreted as wildcards when quoted "$*" is used as the
|
|
glob pattern.
|
|
|
|
- BUG_LOOPRET2: If a 'return' command is given without a status argument
|
|
within the set of conditional commands in a 'while' or 'until' loop (i.e.,
|
|
between 'while'/'until' and 'do'), the exit status passed down from the
|
|
previous command is ignored and the function returns with status 0
|
|
instead.
|