< prev index next >

src/share/vm/utilities/globalDefinitions_gcc.hpp

Print this page
rev 13110 : imported patch target_macros

*** 192,207 **** typedef int (*int_fnP_cond_tP)(cond_t *cv); }; #endif // SOLARIS //---------------------------------------------------------------------------------------------------- - // Debugging - - #define DEBUG_EXCEPTION ::abort(); - - extern "C" void breakpoint(); - #define BREAKPOINT ::breakpoint() // checking for nanness #ifdef SOLARIS #ifdef SPARC inline int g_isnan(float f) { return isnanf(f); } --- 192,201 ----
*** 239,282 **** // Portability macros #define PRAGMA_INTERFACE #pragma interface #define PRAGMA_IMPLEMENTATION #pragma implementation #define VALUE_OBJ_CLASS_SPEC - // Diagnostic pragmas like the ones defined below in PRAGMA_FORMAT_NONLITERAL_IGNORED - // were only introduced in GCC 4.2. Because we have no other possibility to ignore - // these warnings for older versions of GCC, we simply don't decorate our printf-style - // functions with __attribute__(format) in that case. - #if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 2)) || (__GNUC__ > 4) - #ifndef ATTRIBUTE_PRINTF - #define ATTRIBUTE_PRINTF(fmt,vargs) __attribute__((format(printf, fmt, vargs))) - #endif - #ifndef ATTRIBUTE_SCANF - #define ATTRIBUTE_SCANF(fmt,vargs) __attribute__((format(scanf, fmt, vargs))) - #endif - #endif - - #define PRAGMA_FORMAT_NONLITERAL_IGNORED _Pragma("GCC diagnostic ignored \"-Wformat-nonliteral\"") \ - _Pragma("GCC diagnostic ignored \"-Wformat-security\"") - #define PRAGMA_FORMAT_IGNORED _Pragma("GCC diagnostic ignored \"-Wformat\"") - - #if defined(__clang_major__) && \ - (__clang_major__ >= 4 || \ - (__clang_major__ >= 3 && __clang_minor__ >= 1)) || \ - ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 6)) || (__GNUC__ > 4) - // Tested to work with clang version 3.1 and better. - #define PRAGMA_DIAG_PUSH _Pragma("GCC diagnostic push") - #define PRAGMA_DIAG_POP _Pragma("GCC diagnostic pop") - - // Hack to deal with gcc yammering about non-security format stuff - #else - // Old versions of gcc don't do push/pop, also do not cope with this pragma within a function - // One method does so much varied printing that it is decorated with both internal and external - // versions of the macro-pragma to obtain better checking with newer compilers. - #define PRAGMA_DIAG_PUSH - #define PRAGMA_DIAG_POP - #endif - #if (__GNUC__ == 2) && (__GNUC_MINOR__ < 95) #define TEMPLATE_TABLE_BUG #endif #if (__GNUC__ == 2) && (__GNUC_MINOR__ >= 96) #define CONST_SDM_BUG --- 233,242 ----
< prev index next >