summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2015-01-10 17:25:16 -0500
committerNick Mathewson <nickm@torproject.org>2015-01-10 17:31:48 -0500
commitb2663298e9179368d521d9088b2bbf0f12b490e2 (patch)
tree7fe56d062ba6c2161e78c01dea8a90ed65980b9b /src
parentdc25fb7382b5cb930aaf0cdc842490ff5c11233e (diff)
downloadtor-b2663298e9179368d521d9088b2bbf0f12b490e2.tar.gz
tor-b2663298e9179368d521d9088b2bbf0f12b490e2.zip
Fix tortls.c build with GCC<4.6
apparantly, "pragma GCC diagnostic push/pop" don't exist with older versions. Fixes bug in 740e592790f570c446cbb5e6d4a77f842f75; bug not in any released Tor.
Diffstat (limited to 'src')
-rw-r--r--src/common/tortls.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/common/tortls.c b/src/common/tortls.c
index ea6ee0dee4..ca629135a6 100644
--- a/src/common/tortls.c
+++ b/src/common/tortls.c
@@ -31,7 +31,13 @@
#endif
#ifdef __GNUC__
+#define GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
+#endif
+
+#if __GNUC__ && GCC_VERSION >= 402
+#if GCC_VERSION >= 406
#pragma GCC diagnostic push
+#endif
/* Some versions of OpenSSL declare SSL_get_selected_srtp_profile twice in
* srtp.h. Suppress the GCC warning so we can build with -Wredundant-decl. */
#pragma GCC diagnostic ignored "-Wredundant-decls"
@@ -45,8 +51,12 @@
#include <openssl/bio.h>
#include <openssl/opensslv.h>
-#ifdef __GNUC__
+#if __GNUC__ && GCC_VERSION >= 402
+#if GCC_VERSION >= 406
#pragma GCC diagnostic pop
+#else
+#pragma GCC diagnostic warning "-Wredundant-decls"
+#endif
#endif
#ifdef USE_BUFFEREVENTS