Re: Bash reference manual feedback

2022-09-19 Thread Chet Ramey

On 9/11/22 11:30 AM, David Apps wrote:

I hope that you are well.

Thank you for your work on this great software.

I have some feedback about the document at:
http://www.gnu.org/software/bash/manual/bash.html

the Bash shell (version 5.1, 21 December 2020).


Thanks for your careful reading of the manual and your feedback. I applied
the changes where appropriate.

Chet

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRUc...@case.eduhttp://tiswww.cwru.edu/~chet/




Re: bash-5.1.16 fails to unlink named pipes if pipeline terminates prematurely

2022-09-19 Thread Chet Ramey

On 9/12/22 5:52 PM, RVP wrote:

On Fri, 9 Sep 2022, Chet Ramey wrote:


Bash is out of the picture by the time the diff command dies due to
SIGPIPE. It performs word expansions, including process substitution,
and execs diff. It's no longer around to remove the named pipes.



Without the `| head' to provoke a SIGPIPE, the named pipes are removed.


It's not the SIGPIPE per se; the bash fatal signal handler removes existing
named pipes when it dies due to SIGPIPE.

In the pipeline case, bash optimizes away the fork for the `diff' and just
executes it. When the SIGPIPE comes, bash is out of the picture.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRUc...@case.eduhttp://tiswww.cwru.edu/~chet/




Re: self-reference to assoc.-array variable

2022-09-19 Thread Martin D Kealey
Regression appears to have occurred between bash-5.0.18 and bash-5.1-alpha
at commit 712f80b0. (I note that this commit is missing from the master
branch, which only includes bash-5.0.17 at commit.)
 I tried to find the change in the devel branch, but ugh, git diff between
devel & master is unhelpful.

On Fri, 16 Sept 2022 at 06:46, kurt  wrote:

> Configuration Information [Automatically generated, do not change]:
> Machine: x86_64
> OS: linux-gnu
> Compiler: gcc
> Compilation CFLAGS: -g -O2 -flto=auto -ffat-lto-objects -flto=auto
> -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security
> -Wall
> uname output: Linux kurt-OptiPlex-7020 5.15.0-47-generic #51-Ubuntu SMP
> Thu Aug 11 07:51:15 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
> Machine Type: x86_64-pc-linux-gnu
>
> Bash Version: 5.1
> Patch Level: 16
> Release Status: release
>
> Description:
> a declaration like the following was possible before bash-version
> 5.1:
> declare -r -A MYAR=(
>   ['first']="NUMBER ONE"
>   # --- 'self-reference' to declaring array variable MYAR
>   ['top']="${MYAR['first']}"
> )
> echo "${MYAR[@]}"
> now bash complains with a syntax-error on the
> ['top']="${MYAR['first']}" construct
>
> Repeat-By:
> execute the above example-code
>
>
>