Index: src/checks.h |
=================================================================== |
--- src/checks.h (revision 9808) |
+++ src/checks.h (working copy) |
@@ -63,7 +63,9 @@ |
// The CHECK macro checks that the given condition is true; if not, it |
// prints a message to stderr and aborts. |
-#define CHECK(condition) CheckHelper(__FILE__, __LINE__, #condition, condition) |
+#define CHECK(condition) do { \ |
+ if (!(condition)) CheckHelper(__FILE__, __LINE__, #condition, false); \ |
+ } while (0) |
// Helper function used by the CHECK_EQ function when given int |
@@ -257,12 +259,9 @@ |
SEMI_STATIC_JOIN(__StaticAssertTypedef__, __LINE__) |
-namespace v8 { namespace internal { |
+extern bool FLAG_enable_slow_asserts; |
-bool EnableSlowAsserts(); |
-} } // namespace v8::internal |
- |
// The ASSERT macro is equivalent to CHECK except that it only |
// generates code in debug builds. |
#ifdef DEBUG |
@@ -273,7 +272,7 @@ |
#define ASSERT_GE(v1, v2) CHECK_GE(v1, v2) |
#define ASSERT_LT(v1, v2) CHECK_LT(v1, v2) |
#define ASSERT_LE(v1, v2) CHECK_LE(v1, v2) |
-#define SLOW_ASSERT(condition) if (EnableSlowAsserts()) CHECK(condition) |
+#define SLOW_ASSERT(condition) if (FLAG_enable_slow_asserts) CHECK(condition) |
#else |
#define ASSERT_RESULT(expr) (expr) |
#define ASSERT(condition) ((void) 0) |