This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH] Fix C++ compilation on MinGW
- From: orgads at gmail dot com
- To: gdb-patches at sourceware dot org
- Cc: Orgad Shaneh <orgads at gmail dot com>
- Date: Wed, 2 Nov 2016 11:45:25 +0200
- Subject: [PATCH] Fix C++ compilation on MinGW
- Authentication-results: sourceware.org; auth=none
From: Orgad Shaneh <orgads@gmail.com>
When compiling with MinGW, pyconfig.h renames hypot to _hypot.
If math.h is included later, hypot is not declared correctly.
When g++ is used, it has 'using ::hypot', which doesn't exist.
---
gdb/python/python-internal.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h
index 8545c7b..9b43255 100644
--- a/gdb/python/python-internal.h
+++ b/gdb/python/python-internal.h
@@ -88,6 +88,10 @@
/* Request clean size types from Python. */
#define PY_SSIZE_T_CLEAN
+// math.h has to be included before Python.h, since pyconfig.h
+// renames hypot to _hypot, and this breaks MinGW compilation with g++.
+#include <math.h>
+
/* Include the Python header files using angle brackets rather than
double quotes. On case-insensitive filesystems, this prevents us
from including our python/python.h header file. */
--
2.10.1.windows.1