I wrote:
> The only user of this MIN macro is file-has-acl.c, and it already includes
> "minmax.h".

This was incorrect. Leading to a compilation error on Solaris 11 with gcc:

../../../gettext-tools/gnulib-lib/set-permissions.c: In function 
‘set_acls_from_mode’:
../../../gettext-tools/gnulib-lib/set-permissions.c:76:21: warning: implicit 
declaration of function ‘MIN’ [-Wimplicit-function-declaration]
         alloc_max = MIN (INT_MAX, SIZE_MAX / sizeof (ace_t))
                     ^~~
../../../gettext-tools/gnulib-lib/set-permissions.c:76:21: warning: nested 
extern declaration of ‘MIN’ [-Wnested-externs]
../../../gettext-tools/gnulib-lib/set-permissions.c:77:7: error: enumerator 
value for ‘alloc_max’ is not an integer constant
       };
       ^

This patch fixes it.


2023-09-15  Bruno Haible  <br...@clisp.org>

        acl-permissions: Fix compilation error on Solaris 11 (regr. 2023-09-04).
        * lib/set-permissions.c: Include minmax.h.
        * modules/acl-permissions (Depends-on): Add minmax.

diff --git a/lib/set-permissions.c b/lib/set-permissions.c
index 1d6732cc78..9fce4a6970 100644
--- a/lib/set-permissions.c
+++ b/lib/set-permissions.c
@@ -22,6 +22,7 @@
 #include "acl.h"
 
 #include "acl-internal.h"
+#include "minmax.h"
 
 #if USE_ACL
 # if ! defined HAVE_ACL_FROM_MODE && defined HAVE_ACL_FROM_TEXT /* FreeBSD, 
IRIX, Tru64, Cygwin >= 2.5 */
diff --git a/modules/acl-permissions b/modules/acl-permissions
index 3ecbb95d9d..9738016bfe 100644
--- a/modules/acl-permissions
+++ b/modules/acl-permissions
@@ -14,6 +14,7 @@ m4/acl.m4
 Depends-on:
 extern-inline
 fstat
+minmax
 stat
 stdbool
 sys_stat




Reply via email to