modules/fdlibm/patches/15_use_safer_strict_assign_on_visual_studio.patch
author Bob Owen <bobowencode@gmail.com>
Thu, 17 Nov 2016 15:48:52 +0000
changeset 368150 1a72c49193716fb43d032d756f873bc7d284cce1
parent 357440 e407c6185ace3581212d8ba05cc7ec27ca563d11
permissions -rw-r--r--
Bug 1147911 Part 6: Send remote type down to child. r=gijs, r=smaug

diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h
--- a/modules/fdlibm/src/math_private.h
+++ b/modules/fdlibm/src/math_private.h
@@ -271,17 +271,17 @@ do {								\
 /* The above works on non-i386 too, but we use this to check v. */
 #define	LD80C(m, ex, v)	{ .e = (v), }
 #endif
 
 #ifdef FLT_EVAL_METHOD
 /*
  * Attempt to get strict C99 semantics for assignment with non-C99 compilers.
  */
-#if FLT_EVAL_METHOD == 0 || __GNUC__ == 0
+#if !defined(_MSC_VER) && (FLT_EVAL_METHOD == 0 || __GNUC__ == 0)
 #define	STRICT_ASSIGN(type, lval, rval)	((lval) = (rval))
 #else
 #define	STRICT_ASSIGN(type, lval, rval) do {	\
 	volatile type __lval;			\
 						\
 	if (sizeof(type) >= sizeof(long double))	\
 		(lval) = (rval);		\
 	else {					\