From 3e9c2e751288db191e0dde2380903bfaaabcdaaf Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <icculus@icculus.org>
Date: Tue, 7 Apr 2015 00:39:16 -0400
Subject: [PATCH] Another attempt to make MSVC's /W4 warning level cooperate
 with SDL_assert.

Fixes Bugzilla #2733.
---
 include/SDL_assert.h | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/include/SDL_assert.h b/include/SDL_assert.h
index 0be90470f..5e6f4fcf5 100644
--- a/include/SDL_assert.h
+++ b/include/SDL_assert.h
@@ -86,11 +86,9 @@ This also solves the problem of...
 disable assertions.
 */
 
-#ifdef _MSC_VER  /* stupid /W4 warnings. */
-#define SDL_NULL_WHILE_LOOP_CONDITION (-1 == __LINE__)
-#else
-#define SDL_NULL_WHILE_LOOP_CONDITION (0)
-#endif
+/* "while (0,0)" fools Microsoft's compiler's /W4 warning level into thinking
+    this condition isn't constant. And looks like an owl's face! */
+#define SDL_NULL_WHILE_LOOP_CONDITION (0,0)
 
 #define SDL_disabled_assert(condition) \
     do { (void) sizeof ((condition)); } while (SDL_NULL_WHILE_LOOP_CONDITION)