Rubberstamped by Kevin Decker
[WebKit-https.git] / JavaScriptCore / JavaScriptCorePrefix.h
index df6f3c1..35f2442 100644 (file)
@@ -1,10 +1,15 @@
 #ifdef __cplusplus
+#define new ("if you use new/delete make sure to include config.h at the top of the file"()) 
+#define delete ("if you use new/delete make sure to include config.h at the top of the file"()) 
+#endif
+
+#ifdef __cplusplus
 #define NULL __null
 #else
 #define NULL ((void *)0)
 #endif
 
-#include <config.h>
+#include "config.h"
 
 #include <assert.h>
 #include <ctype.h>
 
 #ifdef __cplusplus
 
-// Work around bug 3553309 by re-including <ctype.h>.
+/* Work around bug 3553309 by re-including <ctype.h>. */
 #include <cctype>
 #define isalnum(c)      __istype((c), (_CTYPE_A|_CTYPE_D))
 #define isalpha(c)      __istype((c), _CTYPE_A)
 #define iscntrl(c)      __istype((c), _CTYPE_C)
-#define isdigit(c)      __isctype((c), _CTYPE_D)       /* ANSI -- locale independent */
+#define isdigit(c)      __isctype((c), _CTYPE_D)        /* ANSI -- locale independent */
 #define isgraph(c)      __istype((c), _CTYPE_G)
 #define islower(c)      __istype((c), _CTYPE_L)
 #define isprint(c)      __istype((c), _CTYPE_R)
 #define ispunct(c)      __istype((c), _CTYPE_P)
 #define isspace(c)      __istype((c), _CTYPE_S)
 #define isupper(c)      __istype((c), _CTYPE_U)
-#define isxdigit(c)     __isctype((c), _CTYPE_X)       /* ANSI -- locale independent */
+#define isxdigit(c)     __isctype((c), _CTYPE_X)        /* ANSI -- locale independent */
 #define tolower(c)      __tolower(c)
 #define toupper(c)      __toupper(c)
 
@@ -43,3 +48,7 @@
 #include <typeinfo>
 
 #endif
+
+/* Work around bug with C++ library that screws up Objective-C++ when exception support is disabled. */
+#undef try
+#undef catch