aboutsummaryrefslogtreecommitdiff
path: root/shell/ash.c
diff options
context:
space:
mode:
Diffstat (limited to 'shell/ash.c')
-rw-r--r--shell/ash.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 45c747dbc..713219b6e 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -197,7 +197,20 @@
197#define IF_BASH_PATTERN_SUBST IF_ASH_BASH_COMPAT 197#define IF_BASH_PATTERN_SUBST IF_ASH_BASH_COMPAT
198#define BASH_SUBSTR ENABLE_ASH_BASH_COMPAT 198#define BASH_SUBSTR ENABLE_ASH_BASH_COMPAT
199#define IF_BASH_SUBSTR IF_ASH_BASH_COMPAT 199#define IF_BASH_SUBSTR IF_ASH_BASH_COMPAT
200/* [[ EXPR ]] */ 200/* BASH_TEST2: [[ EXPR ]]
201 * Status of [[ support:
202 * We replace && and || with -a and -o
203 * TODO:
204 * singleword+noglob expansion:
205 * v='a b'; [[ $v = 'a b' ]]; echo 0:$?
206 * [[ /bin/* ]]; echo 0:$?
207 * -a/-o are not AND/OR ops! (they are just strings)
208 * quoting needs to be considered (-f is an operator, "-f" and ""-f are not; etc)
209 * = is glob match operator, not equality operator: STR = GLOB
210 * (in GLOB, quoting is significant on char-by-char basis: a*cd"*")
211 * == same as =
212 * add =~ regex match operator: STR =~ REGEX
213 */
201#define BASH_TEST2 (ENABLE_ASH_BASH_COMPAT * ENABLE_ASH_TEST) 214#define BASH_TEST2 (ENABLE_ASH_BASH_COMPAT * ENABLE_ASH_TEST)
202#define BASH_SOURCE ENABLE_ASH_BASH_COMPAT 215#define BASH_SOURCE ENABLE_ASH_BASH_COMPAT
203#define BASH_PIPEFAIL ENABLE_ASH_BASH_COMPAT 216#define BASH_PIPEFAIL ENABLE_ASH_BASH_COMPAT