[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] errno: make EEXIST != ENOTEMPTY on AIX
From: |
Bruno Haible |
Subject: |
Re: [PATCH] errno: make EEXIST != ENOTEMPTY on AIX |
Date: |
Wed, 07 Aug 2024 11:58:57 +0200 |
Hi Paul,
> +2024-07-31 Paul Eggert <eggert@cs.ucla.edu>
> +
> + errno: make EEXIST != ENOTEMPTY on AIX
> + ...
> + * tests/test-errno.c (e1, ..., e131): Remove, replacing with ...
> + (CHECK_POSIX_ERRNOS, POSITIVE_INTEGER_CONSTANT_EXPRESSION)
> + (INDEXED_BY_ERRNO, ERRNO_COUNT): These new macros.
> + Check that all errno values are positive integer constant expressions.
> + Check that they are all distinct, except perhaps for
> + EWOULDBLOCK == EAGAIN and ENOTSUP == EOPNOTSUPP.
> + Also check ESOCKTNOSUPPORT, added in POSIX.1-2024.
> + Also, check that errno values are distinct except when POSIX says
> + they needn’t be distinct, since POSIX.1-2024 gives license to
> + GNU/Linux’s non-distinct values.
This patch makes 'test-errno' uncompilable on GNU/Hurd.
The object file test-errno.o is 1073745616 bytes large (> 1 GB),
and I had to kill the link command that was meant to produce the
'test-errno' program before it caused an out-of-memory on my machine.
I think this change needs to be reworked. Did it possibly embody the
assumption that errno values are small integers or all near together?
Bruno