From f8fe6b0c70d1b7b626d05d9675c16b2f89339e8c Mon Sep 17 00:00:00 2001 From: Greg McGary Date: Tue, 12 Dec 2017 16:51:17 -0800 Subject: [PATCH] Explicitly #define isnan __builtin_isnan for Android clang-5 to mimic gcc's default behavior Reviewed By: passy Differential Revision: D6527499 fbshipit-source-id: 65d9e43c7e7d973a6c92e9863ebe469b35a24ac8 --- ReactCommon/yoga/yoga/Yoga.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ReactCommon/yoga/yoga/Yoga.cpp b/ReactCommon/yoga/yoga/Yoga.cpp index fb0388d250b6ec..3ccd103c10bede 100644 --- a/ReactCommon/yoga/yoga/Yoga.cpp +++ b/ReactCommon/yoga/yoga/Yoga.cpp @@ -133,6 +133,13 @@ static int YGDefaultLog(const YGConfigRef config, #endif bool YGFloatIsUndefined(const float value) { +// TODO(gkm): Ugh! Some Android builds (r13b & clang-3.8) fail +// with the kludge below, so we must tailor it specifically for +// NDK r15c which has clang-5.0. NDK r16 will make it all better. +#if __ANDROID__ && __clang_major__ == 5 // TODO(gkm): remove for NDK >= 16 +#undef isnan +#define isnan __builtin_isnan +#endif return isnan(value); }