Subject: bug#62792: Emacs 29.0.90 build fails

From: Tak Ota <[email-masked]>
Date: Wed, 12 Apr 2023 11:45:58 -0700

#define __MINGW32_VERSION           3022004L
#define __MINGW32_MAJOR_VERSION           3
#define __MINGW32_MINOR_VERSION          22
#define __MINGW32_PATCHLEVEL              4

On Wed, Apr 12, 2023 at 10:44 AM Eli Zaretskii <[email-masked]> wrote:

> > Cc: [email-masked]
> > Date: Wed, 12 Apr 2023 19:37:31 +0300
> > From: Eli Zaretskii <[email-masked]>
> >
> > > w32.c:551:3: error: conflicting types for 'CONSOLE_FONT_INFO'
> > >  } CONSOLE_FONT_INFO;
> > >    ^
> > > In file included from c:\mingw\include\windows.h:43:0,
> > >                  from c:\mingw\include\winsock2.h:22,
> > >                  from
> c:/d/pub/emacs/emacs-29.0.90/nt/inc/sys/socket.h:57,
> > >                  from thread.h:25,
> > >                  from lisp.h:2268,
> > >                  from w32.c:98:
> > > c:\mingw\include\wincon.h:86:3: note: previous declaration of
> 'CONSOLE_FONT_INFO' was here
> > >  } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
> > >    ^
> >
> > Please show the definition of CONSOLE_FONT_INFO in your wincon.h, it
> > should begin a few lines before line 86 of wincon.h.
>
> And in addition, please show the values of
>
>   __MINGW32_VERSION
>   __MINGW32_MAJOR_VERSION
>   __MINGW32_MINOR_VERSION
>   __MINGW32_PATCHLEVEL
>
> They should all be defined in c:\mingw\include\_mingw.h
>
> I think you are using a very old version of MinGW, where this
> declaration was not protected by a suitable #if condition.
>