Here is my MinGW information. ota@Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90 $ which gcc /mingw/bin/gcc.exe ota@Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90 $ gcc --version gcc.exe (GCC) 5.3.0 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ota@Tak-Dell-XPS15 /c/d/pub/emacs/emacs-29.0.90 $ gcc -v Using built-in specs. COLLECT_GCC=C:\MinGW\bin\gcc.exe COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/5.3.0/lto-wrapper.exe Target: mingw32 Configured with: ../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu --host=mingw32 --prefix=/mingw --disable-win32-registry --target=mingw32 --with-arch=i586 --enable-languages=c,c++,objc,obj-c++,fortran,ada --enable-static --enable-shared --enable-threads --with-dwarf2 --disable-sjlj-exceptions --enable-version-specific-runtime-libs --with-libintl-prefix=/mingw --enable-libstdcxx-debug --with-tune=generic --enable-libgomp --disable-libvtv --enable-nls : (reconfigured) ../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu --host=mingw32 --prefix=/mingw --disable-win32-registry --target=mingw32 --with-arch=i586 --enable-languages=c,c++,objc,obj-c++,fortran,ada --enable-static --enable-shared --enable-threads --with-dwarf2 --disable-sjlj-exceptions --enable-version-specific-runtime-libs --with-libiconv-prefix=/mingw --with-libintl-prefix=/mingw --enable-libstdcxx-debug --with-tune=generic --enable-libgomp --disable-libvtv --enable-nls Thread model: win32 gcc version 5.3.0 (GCC) On Wed, Apr 12, 2023 at 8:32 AM Eli Zaretskii wrote: > > From: Tak Ota > > Date: Tue, 11 Apr 2023 11:16:28 -0700 > > > > When attempted to build using MinGW the next section of code in > src/w32.c conflicts with the definition > > in MinGW/include/wincon.h > > Thank you for your report. > > Please show the exact compilation error message you get due to this > conflict. I don't see any errors here, and Emacs 29 compiles with > MinGW flawlessly here. > > > This typedef was not in src/w32.c of Emacs 28.2. > > > > #if _WIN32_WINNT < 0x0501 > > typedef struct > > { > > DWORD nFont; > > COORD dwFontSize; > > } CONSOLE_FONT_INFO; > > #endif > > Also, which flavor of MinGW and which version are you using? The > above should be only visible with _WIN32_WINNT that is smaller than > 0x0501, which should not happen with latest MinGW64. And looking at > the latest MinGW64 headers, I see the definition of CONSOLE_FONT_INFO > structure there that is identical to the above, so how can it > conflict? >