[984] | 1 | #ifndef __BEAENGINE_MACROS_H__
|
---|
| 2 | #define __BEAENGINE_MACROS_H__
|
---|
| 3 | /*
|
---|
| 4 | ============================================================================
|
---|
| 5 | Compiler Silencing macros
|
---|
| 6 |
|
---|
| 7 | Some compilers complain about parameters that are not used. This macro
|
---|
| 8 | should keep them quiet.
|
---|
| 9 | ============================================================================
|
---|
| 10 | */
|
---|
| 11 |
|
---|
| 12 | # if defined (__GNUC__) && ((__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)))
|
---|
| 13 | # define BEA_UNUSED_ARG(a) (void) (a)
|
---|
| 14 | #elif defined (ghs) || defined (__GNUC__) || defined (__hpux) || defined (__sgi) || defined (__DECCXX) || defined (__rational__) || defined (__USLC__) || defined (BEA__RM544) || defined (__DCC__) || defined (__PGI) || defined (__TANDEM) || defined(__BORLANDC__)
|
---|
| 15 | /*
|
---|
| 16 | Some compilers complain about "statement with no effect" with (a).
|
---|
| 17 | This eliminates the warnings, and no code is generated for the null
|
---|
| 18 | conditional statement. Note, that may only be true if -O is enabled,
|
---|
| 19 | such as with GreenHills (ghs) 1.8.8.
|
---|
| 20 | */
|
---|
| 21 |
|
---|
| 22 | # define BEA_UNUSED_ARG(a) do {/* null */} while (&a == 0)
|
---|
| 23 | #elif defined (__DMC__)
|
---|
| 24 | #if defined(__cplusplus)
|
---|
| 25 | #define BEA_UNUSED_ID(identifier)
|
---|
| 26 | template <class T>
|
---|
| 27 | inline void BEA_UNUSED_ARG(const T& BEA_UNUSED_ID(t)) { }
|
---|
| 28 | #else
|
---|
| 29 | #define BEA_UNUSED_ARG(a)
|
---|
| 30 | #endif
|
---|
| 31 | #else /* ghs || __GNUC__ || ..... */
|
---|
| 32 | # define BEA_UNUSED_ARG(a) (a)
|
---|
| 33 | #endif /* ghs || __GNUC__ || ..... */
|
---|
| 34 |
|
---|
| 35 | #if defined (_MSC_VER) || defined(__sgi) || defined (ghs) || defined (__DECCXX) || defined(__BORLANDC__) || defined (BEA_RM544) || defined (__USLC__) || defined (__DCC__) || defined (__PGI) || defined (__TANDEM) || (defined (__HP_aCC) && (__HP_aCC >= 60500))
|
---|
| 36 | # define BEA_NOTREACHED(a)
|
---|
| 37 | #else /* __sgi || ghs || ..... */
|
---|
| 38 | # define BEA_NOTREACHED(a) a
|
---|
| 39 | #endif /* __sgi || ghs || ..... */
|
---|
| 40 |
|
---|
| 41 | #endif /* __BEAENGINE_MACROS_H__ */
|
---|