diff --git a/src/emu/state.h b/src/emu/state.h index 4512503b645..74d6effd78b 100644 --- a/src/emu/state.h +++ b/src/emu/state.h @@ -58,7 +58,8 @@ typedef enum _state_save_error state_save_error; #ifdef __GNUC__ #define IS_VALID_SAVE_TYPE(_var) \ - (std::tr1::is_arithmetic::value || std::tr1::is_enum::value) + (std::tr1::is_arithmetic::value || std::tr1::is_enum::value || \ + std::tr1::is_same::value || std::tr1::is_same::value) #else #define IS_VALID_SAVE_TYPE(_var) \ (sizeof(_var) == 1 || sizeof(_var) == 2 || sizeof(_var) == 4 || sizeof(_var) == 8) diff --git a/src/osd/osdcomm.h b/src/osd/osdcomm.h index 661b1d0ae14..3b19e11f9c8 100644 --- a/src/osd/osdcomm.h +++ b/src/osd/osdcomm.h @@ -47,10 +47,6 @@ #include #include -#ifdef __cplusplus -#include -#endif - /*************************************************************************** COMPILER-SPECIFIC NASTINESS @@ -62,12 +58,6 @@ #endif -/* In C++ we can do type checking via typeid */ -#ifdef __cplusplus -#define TYPES_COMPATIBLE(a,b) (typeid(a) == typeid(b)) -#endif - - /* Some optimizations/warnings cleanups for GCC */ #if defined(__GNUC__) && (__GNUC__ >= 3) #define ATTR_UNUSED __attribute__((__unused__)) @@ -82,9 +72,6 @@ #define EXPECTED(exp) __builtin_expect(!!(exp), 1) #define RESTRICT __restrict__ #define SETJMP_GNUC_PROTECT() (void)__builtin_return_address(1) -#ifndef TYPES_COMPATIBLE -#define TYPES_COMPATIBLE(a,b) __builtin_types_compatible_p(typeof(a), b) -#endif #else #define ATTR_UNUSED #define ATTR_NORETURN @@ -98,9 +85,6 @@ #define EXPECTED(exp) (exp) #define RESTRICT #define SETJMP_GNUC_PROTECT() do {} while (0) -#ifndef TYPES_COMPATIBLE -#define TYPES_COMPATIBLE(a,b) 1 -#endif #endif