Re: Bug#771052: fish: FTBFS on hurd-i386
On Wed, 2014-11-26 at 22:01 +0800, David Adam wrote:
> On Wed, 26 Nov 2014, Svante Signell wrote:
> > Currently fish FTBFS on GNU/Hurd due to usage of sys_nerr and
> > sys_errlist, for error strings, which is not defined on Hurd and
> > depreciated (but still defined on other architectures): e.g.
> > /usr/include/x86_64-linux-gnu/bits/sys_errlist.h
> > /* sys_errlist and sys_nerr are depreciated. Use strerror instead. */
> >
> > The attached patch solves this by using strerror().
>
> Hi Svante,
>
> Above the lines you have changed is a comment:
>
> // In general, strerror is not async-safe, and therefore we cannot use it directly
> // So instead we have to grub through sys_nerr and sys_errlist directly
>
> Do you know if this has changed in recent glibc? If not, I would caution
> against changing this on all platforms.
According to the strerror(3) man page:
The strerror() function is not thread-safe.
The strerror_r() function is thread-safe.
I don't know about async-safe. Maybe they mean thread-safe?
However I found one link about the issue:
https://github.com/fish-shell/fish-shell/issues/495
Running the tests shows that the low-level ones pass.
Reply to: