Signed-off-by: Michael Witten <mfwit...@gmail.com> --- parse.y | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/parse.y b/parse.y index b61c4d0..eaae077 100644 --- a/parse.y +++ b/parse.y @@ -4453,7 +4453,7 @@ read_token_word (character) { peek_char = shell_getc (1); /* $(...), <(...), >(...), $((...)), ${...}, and $[...] constructs */ - if MBTEST(peek_char == '(' || \ + if MBTEST(peek_char == '(' || ((peek_char == '{' || peek_char == '[') && character == '$')) /* ) ] } */ { if (peek_char == '{') /* } */ @@ -4654,8 +4654,8 @@ got_token: is a `<', or a `&', or the character which ended this token is a '>' or '<', then, and ONLY then, is this input token a NUMBER. Otherwise, it is just a word, and should be returned as such. */ - if MBTEST(all_digit_token && (character == '<' || character == '>' || \ - last_read_token == LESS_AND || \ + if MBTEST(all_digit_token && (character == '<' || character == '>' || + last_read_token == LESS_AND || last_read_token == GREATER_AND)) { if (legal_number (token, &lvalue) && (int)lvalue == lvalue) -- 1.7.4.22.g14b16.dirty