emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Suspicious warning in W64 build


From: Eli Zaretskii
Subject: Re: Suspicious warning in W64 build
Date: Fri, 08 Sep 2017 11:02:39 +0300

> Date: Fri, 08 Sep 2017 09:49:44 +0300
> From: Eli Zaretskii <address@hidden>
> Cc: address@hidden, address@hidden, address@hidden
> 
> > From: Richard Copley <address@hidden>
> > Date: Thu, 7 Sep 2017 21:02:05 +0100
> > Cc: Eli Zaretskii <address@hidden>, Angelo Graziosi <address@hidden>, 
> >     Emacs Development <address@hidden>
> > 
> >  On 7 September 2017 at 20:26, Paul Eggert <address@hidden> wrote:
> > > Try putting an 'eassume (0 <= nglyphs);' before the line in question.
> > 
> > The warning goes away.
> 
> OK, I will commit that change, then.

Done.

> > By the way, there's another warning which is both true and easy to fix.
> > "(1 << ((n) % 32)))" should read "(1u << ((n) % 32)))" on line 2191.
> > 
> >   CC       w32font.o
> > w32font.c: In function 'font_supported_scripts':
> > w32font.c:2191:32: warning: result of '1 << 31' requires 33 bits to
> > represent, but 'int' only has 32 bits [-Wshift-overflow=]
> >    if (subranges[(n) / 32] & (1 << ((n) % 32))) \
> >                                 ^
> > w32font.c:2246:3: note: in expansion of macro 'SUBRANGE'
> >    SUBRANGE (31, Qsymbol);
> >    ^~~~~~~~
> > w32font.c:2191:32: warning: result of '1 << 31' requires 33 bits to
> > represent, but 'int' only has 32 bits [-Wshift-overflow=]
> >    if (subranges[(n) / 32] & (1 << ((n) % 32))) \
> >                                 ^
> > w32font.c:2308:3: note: in expansion of macro 'SUBRANGE'
> >    SUBRANGE (95, Qtai_le);
> >    ^~~~~~~~
> 
> Yes, I've seen this and have a fix for it.

Pushed to master.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]