Revert "fix configure script to check pthread_atfork(3) in the correct way"
[folly.git] / folly / Conv.cpp
index 27067fcc501f0f5f88a6fece9111581746959602..e5de9a2f9c173cca2d3cc31f8ebeaedc30258803 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2012 Facebook, Inc.
+ * Copyright 2014 Facebook, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 #define FOLLY_CONV_INTERNAL
-#include "folly/Conv.h"
+#include <folly/Conv.h>
 
 namespace folly {
 namespace detail {
@@ -42,12 +42,15 @@ static_assert(sizeof(unsigned long) >= 4,
               " please update.");
 template <> const char *const MaxString<unsigned long long>::value =
   "18446744073709551615";
-template <> const char *const MaxString<unsigned __int128>::value =
-  "340282366920938463463374607431768211455";
 static_assert(sizeof(unsigned long long) >= 8,
               "Wrong value for MaxString<unsigned long long>::value"
               ", please update.");
 
+#ifdef FOLLY_HAVE_INT128_T
+template <> const char *const MaxString<__uint128_t>::value =
+  "340282366920938463463374607431768211455";
+#endif
+
 inline bool bool_str_cmp(const char** b, size_t len, const char* value) {
   // Can't use strncasecmp, since we want to ensure that the full value matches
   const char* p = *b;
@@ -68,8 +71,8 @@ inline bool bool_str_cmp(const char** b, size_t len, const char* value) {
 bool str_to_bool(StringPiece* src) {
   auto b = src->begin(), e = src->end();
   for (;; ++b) {
-    FOLLY_RANGE_CHECK(b < e,
-                      "No non-whitespace characters found in input string");
+    FOLLY_RANGE_CHECK_STRINGPIECE(
+      b < e, "No non-whitespace characters found in input string", *src);
     if (!isspace(*b)) break;
   }
 
@@ -82,8 +85,8 @@ bool str_to_bool(StringPiece* src) {
       StringPiece tmp(*src);
       uint8_t value = to<uint8_t>(&tmp);
       // Only accept 0 or 1
-      FOLLY_RANGE_CHECK(value <= 1,
-                        "Integer overflow when parsing bool: must be 0 or 1");
+      FOLLY_RANGE_CHECK_STRINGPIECE(
+        value <= 1, "Integer overflow when parsing bool: must be 0 or 1", *src);
       b = tmp.begin();
       result = (value == 1);
       break;
@@ -123,11 +126,11 @@ bool str_to_bool(StringPiece* src) {
       } else if (bool_str_cmp(&b, len, "off")) {
         result = false;
       } else {
-        FOLLY_RANGE_CHECK(false, "Invalid value for bool");
+        FOLLY_RANGE_CHECK_STRINGPIECE(false, "Invalid value for bool", *src);
       }
       break;
     default:
-      FOLLY_RANGE_CHECK(false, "Invalid value for bool");
+      FOLLY_RANGE_CHECK_STRINGPIECE(false, "Invalid value for bool", *src);
   }
 
   src->assign(b, e);