libc-config.h + cdefs.h

2017-09-02 Thread Gisle Vanem
The new files libc-config.h and cdefs.h, break MSVC in several ways: 1) libc-config.h: # undef __inline '__inline' is a built-in reserved word used through-out the MS SDK. 2) MSVC doesn't accept this: #define libc_hidden_proto(name, attrs...) Why not simply? #define libc_hidden_pr

Re: max_align_t fails with clang 6.1 on OS X 10.10

2017-09-02 Thread Werner LEMBERG
> Could you try incorporating the std-gnu11 module into your package, > and see whether that fixes things? If so, perhaps we could fix this > problem for everybody by having stddef depend on std-gnu11. This approach worked, cf. https://travis-ci.org/source-foundry/ttfautohint-build/builds/271

Re: [PATCH 06/18] posix: Remove glob GET_LOGIN_NAME_MAX usage

2017-09-02 Thread Paul Eggert
On 08/11/2017 07:50 AM, Adhemerval Zanella wrote: There is no actual login to resize the buffer in case of the resizing the buffer in case of ERANGE, so a static buffer using glibc default LOGIN_NAME_MAX is suffice. Although I had trouble parsing that, I think you're saying that because the c

Re: [PATCH 2/3] scratch_buffer: new module

2017-09-02 Thread Paul Eggert
On 09/02/2017 02:11 AM, Paul Eggert wrote: struct scratch_buffer depends on a GNU C extension: assignment to an object changes its dynamic type.  It is not standard C.   Standard C only allows one way to allocate untyped memory, and that is malloc. That should not be a problem, as Gnulib code

Re: uint8_t and stdint.h

2017-09-02 Thread Paul Eggert
Bruno Haible wrote: On all platform we've tested on, since 2006, this worked fine. Ah, I didn't see that. You're right, it's testing for POSIX, not just the C standard. Hmm, should we make this test stronger by verifying that uint8_t is really exactly 8 bits wide? verify (UINT8_MAX == 0x

Re: uint8_t and stdint.h

2017-09-02 Thread Bruno Haible
Hi Paul, > >- Whether C99 requires it or not, does not matter here: The 'glob' > > module depends on 'stdint', and the 'stdint' module provides > > uint8_t unconditionally (for several years already). > > gl_STDINT_H's tests of uint8_t all depend on UINT8_MAX being defined, which >

Re: 0001-glob-simplify-symlink-detection.patch

2017-09-02 Thread Paul Eggert
Bruno Haible wrote: Such precautions are not needed, because - gnulib for sure will not be ported to architectures where no 8-bit integer type exists. Although that's true for much of Gnulib, many Gnulib modules would work just fine on such hosts. - Whether C99 requires it or not

Re: 0002-glob-backupfile-inode-0-is-a-valid-inode-number.patch

2017-09-02 Thread Bruno Haible
> * doc/posix-headers/dirent.texi (dirent.h): > Document more readdir portability issues. Let me add the list of platforms: 2017-09-02 Bruno Haible dirent: Update doc. * doc/posix-headers/dirent.texi: More concrete list of platforms. diff --git a/doc/posix-headers/dire

[PATCH] glob: fix getpwnam_r errno typo

2017-09-02 Thread Paul Eggert
* lib/glob.c (glob): Fix longstanding misuse of errno after getpwnam_r, which returns an error number rather than setting errno. --- ChangeLog | 5 + lib/glob.c | 15 +++ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4dd0367..b5c3430

Re: [PATCH 05/18] posix: Rewrite to use struct scratch_buffer instead of extend_alloca

2017-09-02 Thread Paul Eggert
Adhemerval Zanella wrote: + p = getpwnam (pwtmpbuf.data); That won't work on non-glibc platforms that lack getpwnam_r, as the argument should be 'name'. I installed the attached patch to Gnulib to fix this. >From 88855bf9f1cfc2e5165e4200bf62aa949e76db90 Mon Sep 17 00:00:00 2001

Re: 0001-glob-simplify-symlink-detection.patch

2017-09-02 Thread Bruno Haible
Hi Paul, > Use uint_fast8_t not uint8_t, as C99 does not require uint8_t. Such precautions are not needed, because - gnulib for sure will not be ported to architectures where no 8-bit integer type exists. - Whether C99 requires it or not, does not matter here: The 'glob' module depend

Re: [PATCH 2/3] scratch_buffer: new module

2017-09-02 Thread Paul Eggert
Florian Weimer wrote: This configure test is invalid because __libc_scratch_buffer_grow is a GLIBC_PRIVATE symbol not part of the ABI. You really need to rename those __libc_* functions because they are in the internal glibc namespace. Done by installing the first attached patch into Gnulib. T

Re: [PATCH 2/3] scratch_buffer: new module

2017-09-02 Thread Florian Weimer
On 09/02/2017 01:33 AM, Paul Eggert wrote: > +AC_CHECK_FUNCS_ONCE([__libc_scratch_buffer_grow]) This configure test is invalid because __libc_scratch_buffer_grow is a GLIBC_PRIVATE symbol not part of the ABI. You really need to rename those __libc_* functions because they are in the internal gli