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 have been freak chance. I mistook the output of "file /dev/null" to name a /dev/null empty device rather than an empty file of that name. Also this has happened to me a couple of times before, and in the past it always caused very obvious problems on the entire system.

I am sorry for the inconvenience.


Best regards,

Mathias

On 1/22/21 3:09 PM, Chet Ramey wrote:
On 1/22/21 2:53 AM, Eduardo A. Bustamante López wrote:

- Notice that the value returned by `fstat(0, ...)' indicates that /dev/null in your system is a *regular* file (it should be `st_mode=S_IFCHR|0666', but instead it is `st_mode=S_IFCHR|0666'). It also indicates that its size is 73 bytes (`st_size=73'). - Notice that `cat' reads from file descriptor 0 (i.e. /dev/null), and the return value is a string of 73 bytes in length.
- `cat' then writes that string out to `./config.status'

73 happens to be the length of the string that has been causing issues for you:

   $ echo "extern void free (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));" | wc -c
   73

This is a first-class observation.


      • ... Chet Ramey
        • ... Mathias Steiger
          • ... Eduardo Bustamante
            • ... mathias . steiger--- via Bug reports for the GNU Bourne Again SHell
              • ... Eduardo A . Bustamante López
              • ... Tadeus Prastowo
              • ... Oğuz
              • ... Elias Haisch
              • ... Chet Ramey
              • ... Alex fxmbsw7 Ratchev
              • ... Mathias Steiger
            • ... mathias . steiger--- via Bug reports for the GNU Bourne Again SHell
          • ... Chet Ramey
            • ... Mathias Steiger
      • ... Mathias Steiger
  • Re: ob... Dale R. Worley

Reply via email to