aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorLIU Hao <lh_mouse@126.com>2023-01-06 23:18:15 +0800
committerJonathan Yong <10walls@gmail.com>2023-01-07 06:51:06 +0000
commit902c755930326cb4405672aa3ea13c35c653cbff (patch)
tree85bf90bbe6b8030c78b94e14cc3f0bce4abf28aa /gcc
parentd808db1f7b20a3fc3cf1c173f8a3d7e289cb1e60 (diff)
downloadgcc-902c755930326cb4405672aa3ea13c35c653cbff.zip
gcc-902c755930326cb4405672aa3ea13c35c653cbff.tar.gz
gcc-902c755930326cb4405672aa3ea13c35c653cbff.tar.bz2
Always define `WIN32_LEAN_AND_MEAN` before <windows.h>
Recently, mingw-w64 has got updated <msxml.h> from Wine which is included indirectly by <windows.h> if `WIN32_LEAN_AND_MEAN` is not defined. The `IXMLDOMDocument` class has a member function named `abort()`, which gets affected by our `abort()` macro in "system.h". `WIN32_LEAN_AND_MEAN` should, nevertheless, always be defined. This can exclude 'APIs such as Cryptography, DDE, RPC, Shell, and Windows Sockets' [1], and speed up compilation of these files a bit. [1] https://learn.microsoft.com/en-us/windows/win32/winprog/using-the-windows-headers gcc/ PR middle-end/108300 * config/xtensa/xtensa-dynconfig.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. * diagnostic-color.cc: Likewise. * plugin.cc: Likewise. * prefix.cc: Likewise. gcc/ada/ PR middle-end/108300 * adaint.c: Define `WIN32_LEAN_AND_MEAN` before `#include <windows.h>`. * cio.c: Likewise. * ctrl_c.c: Likewise. * expect.c: Likewise. * gsocket.h: Likewise. * mingw32.h: Likewise. * mkdir.c: Likewise. * rtfinal.c: Likewise. * rtinit.c: Likewise. * seh_init.c: Likewise. * sysdep.c: Likewise. * terminals.c: Likewise. * tracebak.c: Likewise. gcc/jit/ PR middle-end/108300 * jit-w32.h: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libatomic/ PR middle-end/108300 * config/mingw/lock.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libffi/ PR middle-end/108300 * src/aarch64/ffi.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libgcc/ PR middle-end/108300 * config/i386/enable-execute-stack-mingw32.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. * libgcc2.c: Likewise. * unwind-generic.h: Likewise. libgfortran/ PR middle-end/108300 * intrinsics/sleep.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libgomp/ PR middle-end/108300 * config/mingw32/proc.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libiberty/ PR middle-end/108300 * make-temp-file.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. * pex-win32.c: Likewise. libssp/ PR middle-end/108300 * ssp.c: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. libstdc++-v3/ PR middle-end/108300 * src/c++11/system_error.cc: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. * src/c++11/thread.cc: Likewise. * src/c++17/fs_ops.cc: Likewise. * src/filesystem/ops.cc: Likewise. libvtv/ PR middle-end/108300 * vtv_malloc.cc: Define `WIN32_LEAN_AND_MEAN` before <windows.h>. * vtv_rts.cc: Likewise. * vtv_utils.cc: Likewise.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/adaint.c1
-rw-r--r--gcc/ada/cio.c1
-rw-r--r--gcc/ada/ctrl_c.c1
-rw-r--r--gcc/ada/expect.c1
-rw-r--r--gcc/ada/gsocket.h1
-rw-r--r--gcc/ada/mingw32.h1
-rw-r--r--gcc/ada/mkdir.c1
-rw-r--r--gcc/ada/rtfinal.c1
-rw-r--r--gcc/ada/rtinit.c1
-rw-r--r--gcc/ada/seh_init.c1
-rw-r--r--gcc/ada/sysdep.c2
-rw-r--r--gcc/ada/terminals.c1
-rw-r--r--gcc/ada/tracebak.c2
-rw-r--r--gcc/config/xtensa/xtensa-dynconfig.c1
-rw-r--r--gcc/diagnostic-color.cc1
-rw-r--r--gcc/jit/jit-w32.h1
-rw-r--r--gcc/plugin.cc1
-rw-r--r--gcc/prefix.cc1
18 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index d2604ca..2cbad88 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -227,6 +227,7 @@ UINT __gnat_current_ccs_encoding;
#elif defined (_WIN32)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <accctrl.h>
#include <aclapi.h>
diff --git a/gcc/ada/cio.c b/gcc/ada/cio.c
index fa731ca..f004b4b 100644
--- a/gcc/ada/cio.c
+++ b/gcc/ada/cio.c
@@ -67,6 +67,7 @@ extern "C" {
#endif
#ifdef RTX
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <Rtapi.h>
#endif
diff --git a/gcc/ada/ctrl_c.c b/gcc/ada/ctrl_c.c
index eeec3e6..6b9fc85 100644
--- a/gcc/ada/ctrl_c.c
+++ b/gcc/ada/ctrl_c.c
@@ -126,6 +126,7 @@ __gnat_uninstall_int_handler (void)
#elif defined (__MINGW32__)
+#define WIN32_LEAN_AND_MEAN
#include "mingw32.h"
#include <windows.h>
diff --git a/gcc/ada/expect.c b/gcc/ada/expect.c
index 48fb107..87dc168 100644
--- a/gcc/ada/expect.c
+++ b/gcc/ada/expect.c
@@ -71,6 +71,7 @@
#ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <process.h>
#include <signal.h>
diff --git a/gcc/ada/gsocket.h b/gcc/ada/gsocket.h
index 561f2ff..804994e 100644
--- a/gcc/ada/gsocket.h
+++ b/gcc/ada/gsocket.h
@@ -167,6 +167,7 @@
#endif
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#elif defined(VMS)
diff --git a/gcc/ada/mingw32.h b/gcc/ada/mingw32.h
index d038211..7f6622a 100644
--- a/gcc/ada/mingw32.h
+++ b/gcc/ada/mingw32.h
@@ -53,6 +53,7 @@
#define _X86INTRIN_H_INCLUDED
#define _EMMINTRIN_H_INCLUDED
#endif
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
/* After including this file it is possible to use the character t as prefix
diff --git a/gcc/ada/mkdir.c b/gcc/ada/mkdir.c
index d54d5ec..1da321c 100644
--- a/gcc/ada/mkdir.c
+++ b/gcc/ada/mkdir.c
@@ -43,6 +43,7 @@
#endif
#ifdef __MINGW32__
+#define WIN32_LEAN_AND_MEAN
#include "mingw32.h"
#include <windows.h>
#ifdef MAXPATHLEN
diff --git a/gcc/ada/rtfinal.c b/gcc/ada/rtfinal.c
index 543e3a2..bd73e2c 100644
--- a/gcc/ada/rtfinal.c
+++ b/gcc/ada/rtfinal.c
@@ -46,6 +46,7 @@ extern int __gnat_rt_init_count;
/* see initialize.c */
#if defined (__MINGW32__)
+#define WIN32_LEAN_AND_MEAN
#include "mingw32.h"
#include <windows.h>
diff --git a/gcc/ada/rtinit.c b/gcc/ada/rtinit.c
index 1b351d3..cd34716 100644
--- a/gcc/ada/rtinit.c
+++ b/gcc/ada/rtinit.c
@@ -70,6 +70,7 @@ int __gnat_rt_init_count = 0;
and finalize properly the run-time. */
#if defined (__MINGW32__)
+#define WIN32_LEAN_AND_MEAN
#include "mingw32.h"
#include <windows.h>
diff --git a/gcc/ada/seh_init.c b/gcc/ada/seh_init.c
index 16a1f69..85895b6 100644
--- a/gcc/ada/seh_init.c
+++ b/gcc/ada/seh_init.c
@@ -34,6 +34,7 @@
#if defined (_WIN32) || (defined (__CYGWIN__) && defined (__SEH__))
/* Include system headers, before system.h poisons malloc. */
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <excpt.h>
#endif
diff --git a/gcc/ada/sysdep.c b/gcc/ada/sysdep.c
index 7bdfcbc..edf3b78 100644
--- a/gcc/ada/sysdep.c
+++ b/gcc/ada/sysdep.c
@@ -217,6 +217,7 @@ __gnat_ttyname (int filedes)
#endif /* __CYGWIN__ */
#if defined (__CYGWIN__) || defined (__MINGW32__)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
int __gnat_is_windows_xp (void);
@@ -589,6 +590,7 @@ getc_immediate_common (FILE *stream,
Ada programs. */
#ifdef WINNT
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
/* Provide functions to echo the values passed to WinMain (windows bindings
diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c
index 330128a..9e7c2de 100644
--- a/gcc/ada/terminals.c
+++ b/gcc/ada/terminals.c
@@ -151,6 +151,7 @@ __gnat_setup_winsize (void *desc ATTRIBUTE_UNUSED,
#include <stdio.h>
#include <stdlib.h>
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <winternl.h>
#include <io.h>
diff --git a/gcc/ada/tracebak.c b/gcc/ada/tracebak.c
index f4e739d..c43aade 100644
--- a/gcc/ada/tracebak.c
+++ b/gcc/ada/tracebak.c
@@ -93,6 +93,7 @@ extern void (*Unlock_Task) (void);
#if defined (_WIN64) && defined (__SEH__)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define IS_BAD_PTR(ptr) (IsBadCodePtr((FARPROC)ptr))
@@ -455,6 +456,7 @@ struct layout
#elif defined (__i386__) || defined (__x86_64__)
#if defined (__WIN32)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define IS_BAD_PTR(ptr) (IsBadCodePtr((FARPROC)ptr))
#elif defined (__sun__)
diff --git a/gcc/config/xtensa/xtensa-dynconfig.c b/gcc/config/xtensa/xtensa-dynconfig.c
index 0a611fd..91d02ef 100644
--- a/gcc/config/xtensa/xtensa-dynconfig.c
+++ b/gcc/config/xtensa/xtensa-dynconfig.c
@@ -29,6 +29,7 @@
#if defined (HAVE_DLFCN_H)
#include <dlfcn.h>
#elif defined (_WIN32)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#define ENABLE_PLUGIN
#endif
diff --git a/gcc/diagnostic-color.cc b/gcc/diagnostic-color.cc
index 532f319..5f2856d 100644
--- a/gcc/diagnostic-color.cc
+++ b/gcc/diagnostic-color.cc
@@ -22,6 +22,7 @@
#include "diagnostic-url.h"
#ifdef __MINGW32__
+# define WIN32_LEAN_AND_MEAN
# include <windows.h>
#endif
diff --git a/gcc/jit/jit-w32.h b/gcc/jit/jit-w32.h
index 14b7576..3c65ff1 100644
--- a/gcc/jit/jit-w32.h
+++ b/gcc/jit/jit-w32.h
@@ -20,6 +20,7 @@ along with GCC; see the file COPYING3. If not see
#include "config.h"
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
namespace gcc {
diff --git a/gcc/plugin.cc b/gcc/plugin.cc
index 71ddbfe..142f3fa 100644
--- a/gcc/plugin.cc
+++ b/gcc/plugin.cc
@@ -41,6 +41,7 @@ along with GCC; see the file COPYING3. If not see
#ifndef NOMINMAX
#define NOMINMAX
#endif
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#endif
diff --git a/gcc/prefix.cc b/gcc/prefix.cc
index f03d357..c2a37bd 100644
--- a/gcc/prefix.cc
+++ b/gcc/prefix.cc
@@ -67,6 +67,7 @@ License along with GCC; see the file COPYING3. If not see
#include "system.h"
#include "coretypes.h"
#if defined(_WIN32) && defined(ENABLE_WIN32_REGISTRY)
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#endif
#include "prefix.h"