Subject: bug#62792: Emacs 29.0.90 build fails

From: Eli Zaretskii <[email-masked]>
Date: Wed, 12 Apr 2023 20:44:52 +0300

> 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.