mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-26 10:32:56 +01:00
allow turning off GCC_DIAG_ON/OFF
This commit is contained in:
@@ -44,48 +44,35 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef __GNUC__
|
|
||||||
#ifndef __THROW
|
|
||||||
#ifndef __GNUC_PREREQ
|
|
||||||
#define __GNUC_PREREQ(maj, min) (0)
|
|
||||||
#endif
|
|
||||||
#if defined __cplusplus && __GNUC_PREREQ (2,8)
|
|
||||||
#define __THROW throw ()
|
|
||||||
#else
|
|
||||||
#define __THROW
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// GCC diagnostics enable/disable by Patrick Horgan, see
|
// GCC diagnostics enable/disable by Patrick Horgan, see
|
||||||
// http://dbp-consulting.com/tutorials/SuppressingGCCWarnings.html
|
// http://dbp-consulting.com/tutorials/SuppressingGCCWarnings.html
|
||||||
// use example: GCC_DIAG_OFF(unused-variable)
|
// use example: GCC_DIAG_OFF(unused-variable)
|
||||||
//
|
//
|
||||||
#if defined(POCO_COMPILER_GCC) && (((__GNUC__ * 100) + __GNUC_MINOR__) >= 406)
|
#ifdef __GNUC__
|
||||||
|
#if defined(POCO_COMPILER_GCC) && (((__GNUC__ * 100) + __GNUC_MINOR__) >= 406) && !defined(POCO_NO_GCC_DIAG)
|
||||||
#ifdef GCC_DIAG_OFF
|
#ifdef GCC_DIAG_OFF
|
||||||
#undef GCC_DIAG_OFF
|
#undef GCC_DIAG_OFF
|
||||||
#endif
|
#endif
|
||||||
#ifdef GCC_DIAG_ON
|
#ifdef GCC_DIAG_ON
|
||||||
#undef GCC_DIAG_ON
|
#undef GCC_DIAG_ON
|
||||||
#endif
|
#endif
|
||||||
#define GCC_DIAG_STR(s) #s
|
#define GCC_DIAG_STR(s) #s
|
||||||
#define GCC_DIAG_JOINSTR(x,y) GCC_DIAG_STR(x ## y)
|
#define GCC_DIAG_JOINSTR(x,y) GCC_DIAG_STR(x ## y)
|
||||||
#define GCC_DIAG_DO_PRAGMA(x) _Pragma (#x)
|
#define GCC_DIAG_DO_PRAGMA(x) _Pragma (#x)
|
||||||
#define GCC_DIAG_PRAGMA(x) GCC_DIAG_DO_PRAGMA(GCC diagnostic x)
|
#define GCC_DIAG_PRAGMA(x) GCC_DIAG_DO_PRAGMA(GCC diagnostic x)
|
||||||
#if ((__GNUC__ * 100) + __GNUC_MINOR__) >= 406
|
#if ((__GNUC__ * 100) + __GNUC_MINOR__) >= 406
|
||||||
#define GCC_DIAG_OFF(x) GCC_DIAG_PRAGMA(push) \
|
#define GCC_DIAG_OFF(x) GCC_DIAG_PRAGMA(push) \
|
||||||
GCC_DIAG_PRAGMA(ignored GCC_DIAG_JOINSTR(-W,x))
|
GCC_DIAG_PRAGMA(ignored GCC_DIAG_JOINSTR(-W,x))
|
||||||
#define GCC_DIAG_ON(x) GCC_DIAG_PRAGMA(pop)
|
#define GCC_DIAG_ON(x) GCC_DIAG_PRAGMA(pop)
|
||||||
#else
|
#else
|
||||||
#define GCC_DIAG_OFF(x) GCC_DIAG_PRAGMA(ignored GCC_DIAG_JOINSTR(-W,x))
|
#define GCC_DIAG_OFF(x) GCC_DIAG_PRAGMA(ignored GCC_DIAG_JOINSTR(-W,x))
|
||||||
#define GCC_DIAG_ON(x) GCC_DIAG_PRAGMA(warning GCC_DIAG_JOINSTR(-W,x))
|
#define GCC_DIAG_ON(x) GCC_DIAG_PRAGMA(warning GCC_DIAG_JOINSTR(-W,x))
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
#define GCC_DIAG_OFF(x)
|
#define GCC_DIAG_OFF(x)
|
||||||
#define GCC_DIAG_ON(x)
|
#define GCC_DIAG_ON(x)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif // __GNUC__
|
#endif // __GNUC__
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user