This is the mail archive of the cygwin-patches mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Apr 17 10:54, Yaakov Selkowitz wrote: > GCC 7 is able to see straight through this trick, so use a more formal > method to avoid the warning. > > Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com> > --- > winsup/cygwin/random.cc | 14 +++++--------- > 1 file changed, 5 insertions(+), 9 deletions(-) > > diff --git a/winsup/cygwin/random.cc b/winsup/cygwin/random.cc > index 802c33b8a..163fc040c 100644 > --- a/winsup/cygwin/random.cc > +++ b/winsup/cygwin/random.cc > @@ -279,14 +279,6 @@ srandom(unsigned x) > (void)random(); > } > > -/* Avoid a compiler warning when we really want to get at the junk in > - an uninitialized variable. */ > -static unsigned long > -dummy (unsigned volatile long *x) > -{ > - return *x; > -} > - > /* > * srandomdev: > * > @@ -313,7 +305,11 @@ srandomdev() > unsigned long junk; > > gettimeofday(&tv, NULL); > - srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ dummy(&junk)); > + /* Avoid a compiler warning when we really want to get at the > + junk in an uninitialized variable. */ > +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" > + srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ junk); > +#pragma GCC diagnostic pop > return; > } > > -- > 2.17.0 Yes, please push. Thanks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat
Attachment:
signature.asc
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |