bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Latest push for command substitutions


From: Koichi Murase
Subject: Re: Latest push for command substitutions
Date: Thu, 24 Jun 2021 18:44:36 +0900

Maybe this is not caused by the change of this time, but another
related problem. When the nested command substitutions are incomplete,
an error message of the (false) syntax error is printed before PS2.
The command is still executed correctly after closing the command
substitutions.

$ LANG=C ./bash --norc
$ echo $(echo $(echo A
bash: command substitution: line 3: unexpected EOF while looking for
matching `)'
> )
> echo B
> )
A B
$

A non-nested command substitution works as expected.

$ echo $(echo A
> )
A
$

Actually, Bash 5.1 seems to have behaved in an even stranger way. It
shows a new PS1 after the error message, but we can still continue to
input the remaining part of the previous command and run it correctly:

$ LANG=C bash-5.1 --norc
$ echo $(echo $(echo A
bash-5.1: unexpected EOF while looking for matching `)'
$ )
> echo B
> )
A B
$

The behavior of Bash 5.0 is the expected one:

$ LANG=C bash-5.0 --norc
$ echo $(echo $(echo A
> )
> echo B
> )
A B

--
Koichi

2021年6月23日(水) 5:41 Chet Ramey <chet.ramey@case.edu>:
>
> The latest devel branch push has a rewrite of parse_comsub() to recursively
> call the parser (yyparse()). I was finally able to get all the state
> working correctly, though it will probably only work with bison.
>
> Please run it through any tests or scripts you have so we can shake out any
> bugs early.
>
> Chet
> --
> ``The lyf so short, the craft so long to lerne.'' - Chaucer
>                  ``Ars longa, vita brevis'' - Hippocrates
> Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]