summaryrefslogtreecommitdiff
path: root/absl/base/policy_checks.h
diff options
context:
space:
mode:
authorGravatar Abseil Team <absl-team@google.com>2018-04-03 08:59:15 -0700
committerGravatar Ashley Hedberg <ahedberg@google.com>2018-04-03 14:35:40 -0400
commit0e5c3e8f161c004e3384d7e07eb0e6e0ac834fb6 (patch)
tree6d21de384ce6345ae422e32fbc3ba1ea7461b877 /absl/base/policy_checks.h
parent7b3c38a0628b9201ce92a6893b96890b64e5daa8 (diff)
- 7f2f6ad0cc3488cb57dfc5d1050c38862a2e42ef Only check for a specific message in the `bad_cast` tests... by Matt Calabrese <calabrese@google.com>
- 6a8e56df0d6820c48ee8f39146c7e1fba8a394e7 This prevents a uint32_t value from potentially being log... by Matt Calabrese <calabrese@google.com> - 00a77f5569086654837c03d06206349642364395 Add doc-comments to `absl::LogSeverity` and its helpers. by Abseil Team <absl-team@google.com> - bf877655e420ebff42bede238523d360b53a80fa Enforce the Abseil-wide assumption that CHAR_BIT == 8. by Mark Barolak <mbar@google.com> GitOrigin-RevId: 7f2f6ad0cc3488cb57dfc5d1050c38862a2e42ef Change-Id: Id210255c9301442b0379dca147a806c85452f772
Diffstat (limited to 'absl/base/policy_checks.h')
-rw-r--r--absl/base/policy_checks.h28
1 files changed, 25 insertions, 3 deletions
diff --git a/absl/base/policy_checks.h b/absl/base/policy_checks.h
index 51b662f4..d634dac6 100644
--- a/absl/base/policy_checks.h
+++ b/absl/base/policy_checks.h
@@ -47,14 +47,14 @@
// We support MSVC++ 14.0 update 2 and later.
// This minimum will go up.
#if defined(_MSC_FULL_VER) && _MSC_FULL_VER < 190023918 && !defined(__clang__)
-#error "This package requires Visual Studio 2015 Update 2 or higher"
+#error "This package requires Visual Studio 2015 Update 2 or higher."
#endif
// We support gcc 4.7 and later.
// This minimum will go up.
#if defined(__GNUC__) && !defined(__clang__)
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7)
-#error "This package requires gcc 4.7 or higher"
+#error "This package requires gcc 4.7 or higher."
#endif
#endif
@@ -62,7 +62,7 @@
// This corresponds to Apple Xcode version 4.5.
// This minimum will go up.
#if defined(__apple_build_version__) && __apple_build_version__ < 4211165
-#error "This package requires __apple_build_version__ of 4211165 or higher"
+#error "This package requires __apple_build_version__ of 4211165 or higher."
#endif
// -----------------------------------------------------------------------------
@@ -96,4 +96,26 @@
#error "STLPort is not supported."
#endif
+// -----------------------------------------------------------------------------
+// `char` Size Check
+// -----------------------------------------------------------------------------
+
+// Abseil currently assumes CHAR_BIT == 8. If you would like to use Abseil on a
+// platform where this is not the case, please provide us with the details about
+// your platform so we can consider relaxing this requirement.
+#if CHAR_BIT != 8
+#error "Abseil assumes CHAR_BIT == 8."
+#endif
+
+// -----------------------------------------------------------------------------
+// `int` Size Check
+// -----------------------------------------------------------------------------
+
+// Abseil currently assumes that an int is 4 bytes. If you would like to use
+// Abseil on a platform where this is not the case, please provide us with the
+// details about your platform so we can consider relaxing this requirement.
+#if INT_MAX < 2147483647
+#error "Abseil assumes that int is at least 4 bytes. "
+#endif
+
#endif // ABSL_BASE_POLICY_CHECKS_H_