constexpr Range(Iter start, size_t size)
: b_(start), e_(start + size) { }
+# if !__clang__ || __CLANG_PREREQ(3, 7) // Clang 3.6 crashes on this line
/* implicit */ Range(std::nullptr_t) = delete;
+# endif
template <class T = Iter, typename detail::IsCharPointer<T>::type = 0>
constexpr /* implicit */ Range(Iter str)
*/
#include <folly/Expected.h>
+#include <folly/Portability.h>
#include <folly/portability/GTest.h>
#include <algorithm>
EXPECT_EQ(**exIntPtr, 3);
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wself-move"
#endif
ASSERT_TRUE(b.hasValue() && b.value() == "23333333");
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
#pragma clang diagnostic pop
#endif
*/
#include <folly/Optional.h>
+#include <folly/Portability.h>
#include <folly/portability/GTest.h>
#include <algorithm>
EXPECT_EQ(**optIntPtr, 3);
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wself-move"
#endif
ASSERT_TRUE(b.hasValue() && b.value() == 23333333);
}
-#if __clang__
+#if __CLANG_PREREQ(3, 6)
# pragma clang diagnostic pop
#endif