From c586bff1c0d36fc7b57c35fe7e5e8fbd00f83342 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 13 Oct 2010 20:44:12 -0700 Subject: [PATCH] install: avoid warning with Solaris 10 cc * src/install.c (extra_mode): Don't assign ~S_IRWXUGO & ~S_IFMT to a mode_t variable, as the number might be too big to fit. Solaris 10 cc warns about this, and the C standard says it has undefined behavior. --- src/install.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/install.c b/src/install.c index 97029140c3..467e50046a 100644 --- a/src/install.c +++ b/src/install.c @@ -186,8 +186,8 @@ have_same_content (int a_fd, int b_fd) static bool extra_mode (mode_t input) { - const mode_t mask = ~S_IRWXUGO & ~S_IFMT; - return !! (input & mask); + mode_t mask = S_IRWXUGO | S_IFMT; + return !! (input & ~ mask); } /* Return true if copy of file SRC_NAME to file DEST_NAME is necessary. */ -- 2.47.2