From: Paul Eggert Date: Thu, 14 Oct 2010 03:44:12 +0000 (-0700) Subject: install: avoid warning with Solaris 10 cc X-Git-Tag: v8.6~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c586bff1c0d36fc7b57c35fe7e5e8fbd00f83342;p=platform%2Fupstream%2Fcoreutils.git 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. --- diff --git a/src/install.c b/src/install.c index 9702914..467e500 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. */