From 349ef96bb5eae3c487884dd0e88c84a6ba0a1efa Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 21 May 2010 15:46:24 +0200 Subject: [PATCH] hush: reorganized TODO comment at top Signed-off-by: Denys Vlasenko --- shell/hush.c | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/shell/hush.c b/shell/hush.c index c713ce808..1937d24e4 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -37,9 +37,14 @@ * handle the recursion implicit in the various substitutions, especially * across continuation lines. * - * POSIX syntax not implemented: + * TODOs: + * grep for "TODO" and fix (some of them are easy) + * special variables (done: PWD, PPID, RANDOM) + * tilde expansion * aliases - * Tilde Expansion + * follow IFS rules more precisely, including update semantics + * builtins mandated by standards we don't support: + * [un]alias, command, fc, getopts, newgrp, readonly, times * * Bash compat TODO: * redirection of stdout+stderr: &> and >& @@ -49,20 +54,13 @@ * process substitution: <(list) and >(list) * =~: regex operator * let EXPR [EXPR...] - * Each EXPR is an arithmetic expression (ARITHMETIC EVALUATION) - * If the last arg evaluates to 0, let returns 1; 0 otherwise. - * NB: let `echo 'a=a + 1'` - error (IOW: multi-word expansion is used) + * Each EXPR is an arithmetic expression (ARITHMETIC EVALUATION) + * If the last arg evaluates to 0, let returns 1; 0 otherwise. + * NB: let `echo 'a=a + 1'` - error (IOW: multi-word expansion is used) * ((EXPR)) - * The EXPR is evaluated according to ARITHMETIC EVALUATION. - * This is exactly equivalent to let "EXPR". + * The EXPR is evaluated according to ARITHMETIC EVALUATION. + * This is exactly equivalent to let "EXPR". * $[EXPR]: synonym for $((EXPR)) - * - * TODOs: - * grep for "TODO" and fix (some of them are easy) - * special variables (done: PWD, PPID, RANDOM) - * follow IFS rules more precisely, including update semantics - * builtins mandated by standards we don't support: - * [un]alias, command, fc, getopts, newgrp, readonly, times * export builtin should be special, its arguments are assignments * and therefore expansion of them should be "one-word" expansion: * $ export i=`echo 'a b'` # export has one arg: "i=a b" -- 2.25.1