Fix a bug in the old-gcc version of ENABLE_GCC_WARNING

Fixes bug 19901; bugfix on 0.2.9.1-alpha.
This commit is contained in:
Nick Mathewson 2016-08-11 19:58:13 -04:00
parent d5c47f0436
commit 60997a00e8
2 changed files with 12 additions and 7 deletions

5
changes/bug19901 Normal file
View File

@ -0,0 +1,5 @@
o Minor bugfixes (compilation):
v - Fix a compilation warning on GCC versions before 4.6. Our
ENABLE_GCC_WARNING macro used the word "warning" as an
argument, when it is also required as an argument to the
compiler pragma. Fixes bug 19901; bugfix on 0.2.9.1-alpha.

View File

@ -104,17 +104,17 @@
# endif
# if defined(__clang__) || GCC_VERSION >= 406
/* we have push/pop support */
# define DISABLE_GCC_WARNING(warning) \
# define DISABLE_GCC_WARNING(warningopt) \
PRAGMA_DIAGNOSTIC_(push) \
PRAGMA_DIAGNOSTIC_(ignored PRAGMA_JOIN_STRINGIFY_(-W,warning))
# define ENABLE_GCC_WARNING(warning) \
PRAGMA_DIAGNOSTIC_(ignored PRAGMA_JOIN_STRINGIFY_(-W,warningopt))
# define ENABLE_GCC_WARNING(warningopt) \
PRAGMA_DIAGNOSTIC_(pop)
# else
/* older version of gcc: no push/pop support. */
# define DISABLE_GCC_WARNING(warning) \
PRAGMA_DIAGNOSTIC_(ignored PRAGMA_JOIN_STRINGIFY_(-W,warning))
# define ENABLE_GCC_WARNING(warning) \
PRAGMA_DIAGNOSTIC_(warning PRAGMA_JOIN_STRINGIFY_(-W,warning))
# define DISABLE_GCC_WARNING(warningopt) \
PRAGMA_DIAGNOSTIC_(ignored PRAGMA_JOIN_STRINGIFY_(-W,warningopt))
# define ENABLE_GCC_WARNING(warningopt) \
PRAGMA_DIAGNOSTIC_(warning PRAGMA_JOIN_STRINGIFY_(-W,warningopt))
# endif
#else /* ifdef __GNUC__ */
/* not gcc at all */