From: l0rd
To: bug-bash@gnu.org
Subject: obscure bug "extern void free (void *__ptr) __attribute__
((__nothrow__ , __leaf__));"
Configuration Information [Automatically generated, do not change]:
Machine: x86_64
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS: -march=x86-64 -mtune=generic -O2 -p
n the file "output"?
Where does the mysterious line "extern void free (void *__ptr)
__attribute__ ((__nothrow__ , __leaf__));" come from? A line that is not
contained in the script or the rest of the code.
On 1/21/21 8:19 PM, Chet Ramey wrote:
On 1/21/21 1:11 PM, Mathias
21 4:27 PM, Mathias Steiger wrote:
No.
If you read the the rest of the bug report, it might become clearer
to you.
Suppose I wrote a simple script:
{if echo "27ac5e2f757302" >& /dev/null; then echo "yes"; else
echo "no"; fi } > output
Suppose you
w that this is a bug in bash, because realistically
this can never make sense as it is.
In my limited knowledge, it looks to me like some pointer address
overflowed - due to the length and complexity of the script - and then
it just reads from some arbitrary old buffer.
On 1/21/21 10:27 PM
I will write a report to automake.
On 1/22/21 4:01 AM, Chet Ramey wrote:
This is why I advised you to report it to bug-autoconf. They're more
familiar with the code generator and what problems might result from it.
I am ashamed to say, /dev/null being a regular file was the source of
the problem.
Actually this was one of the very first ideas I had and I tested against
it in multiple ways. I ran:
echo asdf > /dev/null ; cat /dev/null and cat /dev/null
several times, always returning empty. It must h
22/21 12:27 AM, Eduardo Bustamante wrote:
On Thu, Jan 21, 2021 at 2:07 PM Mathias Steiger
wrote:
As such bugs are likely related to buffer issues, maybe even in
underlying APIs, and since they only surface after very lengthy
mysterious sequences of commands - often just on single specific s
It is /bin/sh which is a symlink to bash on Archlinux.
On 1/22/21 12:27 AM, Eduardo Bustamante wrote:
Greg pointed out earlier that the construct you're trying to use
doesn't work well when the shell is not Bash. Are you 100% confident
that it is /bin/bash that is running the script and not /b