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: Sat, 16 Sep 2017 09:40:37 +0300

> From: Richard Copley <address@hidden>
> Date: Sat, 16 Sep 2017 00:05:44 +0100
> Cc: Fabrice Popineau <address@hidden>, 
>       Emacs Development <address@hidden>
> 
> On 15 September 2017 at 09:54, Eli Zaretskii <address@hidden> wrote:
> > About this warning:
> >
> >   w32.c:7550:1: warning: no previous prototype for 'sys_strerror' 
> > [-Wmissing-prototypes]
> >    sys_strerror (int error_no)
> >    ^~~~~~~~~~~~
> >
> > What MinGW64 header has the prototype of strerror?  I thought it was
> > string.h, like in mingw.org's headers, but evidently that's not true?
> > If the prototype is in string.h, then why is this warning being
> > displayed?
> 
> It is in string.h.
> Forgive me if I misunderstood, but isn't it because the warning is
> about a prototype for sys_strerror, not a prototype for strerror?

If you look at the beginning of w32.c, you will see that we include
string.h before we #undef strerror.  The header nt/inc/ms-w32.h
#define's strerror to sys_strerror, so the inclusion of string.h
should have supplied the prototype for sys_strerror.  Why doesn't it
do that in MinGW64?  Does some system header #undef strerror too
early?



reply via email to

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