summaryrefslogtreecommitdiffstats
path: root/build/precompile.h
diff options
context:
space:
mode:
authorscottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-04 16:13:44 +0000
committerscottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-04 16:13:44 +0000
commitdf764498e03d0e90fb50b7dfb1b696ee5be89862 (patch)
treea82504bb13915821c048f925e35d8afe5e841818 /build/precompile.h
parentc587e0300ac3a1b01d7ab2ca0e30e7fcddbcd073 (diff)
downloadchromium_src-df764498e03d0e90fb50b7dfb1b696ee5be89862.zip
chromium_src-df764498e03d0e90fb50b7dfb1b696ee5be89862.tar.gz
chromium_src-df764498e03d0e90fb50b7dfb1b696ee5be89862.tar.bz2
workaround for building with express toolchain on windows
intsafe.h and stdint.h both define INT8_MIN et al. with no guards, and so can't both be included. Because dependencies do this deep in their internals, avoid this problem by including intsafe.h, and then #undef'ing the conflicts in precompile.h (which is included in all .cc files). intsafe.h's include guard symbol stays defined so that any subsequent inclusions do not cause problems. R=thestig@chromium.org BUG=225822 Review URL: https://chromiumcodereview.appspot.com/13484002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192341 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build/precompile.h')
-rw-r--r--build/precompile.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/build/precompile.h b/build/precompile.h
index a3c5193..9f82f88 100644
--- a/build/precompile.h
+++ b/build/precompile.h
@@ -106,3 +106,22 @@
#include <string>
#include <utility>
#include <vector>
+
+// Workaround for:
+// http://connect.microsoft.com/VisualStudio/feedback/details/621653/
+// http://crbug.com/225822
+// Note that we can't actually include <stdint.h> here because there's other
+// code in third_party that has partial versions of stdint types that conflict.
+#include <intsafe.h>
+#undef INT8_MIN
+#undef INT16_MIN
+#undef INT32_MIN
+#undef INT64_MIN
+#undef INT8_MAX
+#undef UINT8_MAX
+#undef INT16_MAX
+#undef UINT16_MAX
+#undef INT32_MAX
+#undef UINT32_MAX
+#undef INT64_MAX
+#undef UINT64_MAX