[committed] libstdc++: Define _GNU_SOURCE for secure_getenv on Cygwin [PR107511]
Jonathan Wakely
jwakely@redhat.com
Fri Nov 4 14:06:12 GMT 2022
Tested powerpc64le-linux. Pushed to trunk.
-- >8 --
As in r12-6867-ge20486d508afdf we need to define _GNU_SOURCE explicitly
for Cygwin, because configure finds it in libc but it isn't declared
unless we request it.
libstdc++-v3/ChangeLog:
PR libstdc++/107511
* libsupc++/eh_alloc.cc (_GNU_SOURCE): Define.
---
libstdc++-v3/libsupc++/eh_alloc.cc | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/libstdc++-v3/libsupc++/eh_alloc.cc b/libstdc++-v3/libsupc++/eh_alloc.cc
index e93f14c887b..83d15f39ca4 100644
--- a/libstdc++-v3/libsupc++/eh_alloc.cc
+++ b/libstdc++-v3/libsupc++/eh_alloc.cc
@@ -25,6 +25,11 @@
// This is derived from the C++ ABI for IA-64. Where we diverge
// for cross-architecture compatibility are noted with "@@@".
+#ifndef _GNU_SOURCE
+// Cygwin needs this for secure_getenv
+# define _GNU_SOURCE 1
+#endif
+
#include <exception> // std::exception
#include <new> // std::terminate
#include <cstdlib> // std::malloc, std::free, std::strtoul
--
2.38.1
More information about the Libstdc++
mailing list