From: Roland McGrath Date: Wed, 15 Aug 2012 23:03:58 +0000 (-0700) Subject: Suppress regcomp.c warnings in 32-bit builds. X-Git-Tag: glibc-2.17~680 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=329bc0186823da075e1a41aab9a4cdc78fb858aa;p=thirdparty%2Fglibc.git Suppress regcomp.c warnings in 32-bit builds. --- diff --git a/ChangeLog b/ChangeLog index a31fa486b45..3f7759e10ce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2012-08-15 Roland McGrath + * posix/regcomp.c (init_word_char): Use temporaries to hold the 64-bit + constants, which avoids warnings in 32-bit builds. + * bits/fcntl.h [__USE_POSIX199309 || __USE_UNIX98]: (O_DSYNC, O_RSYNC): New macros (with NetBSD values). diff --git a/posix/regcomp.c b/posix/regcomp.c index 373a52ecffe..e85b2351459 100644 --- a/posix/regcomp.c +++ b/posix/regcomp.c @@ -932,8 +932,12 @@ init_word_char (re_dfa_t *dfa) { if (sizeof (dfa->word_char[0]) == 8) { - dfa->word_char[0] = UINT64_C (0x03ff000000000000); - dfa->word_char[1] = UINT64_C (0x07fffffe87fffffe); + /* The extra temporaries here avoid "implicitly truncated" + warnings in the case when this is dead code, i.e. 32-bit. */ + const uint64_t wc0 = UINT64_C (0x03ff000000000000); + const uint64_t wc1 = UINT64_C (0x07fffffe87fffffe); + dfa->word_char[0] = wc0; + dfa->word_char[1] = wc1; i = 2; } else if (sizeof (dfa->word_char[0]) == 4)