diff options
author | scottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-04 16:13:44 +0000 |
---|---|---|
committer | scottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-04 16:13:44 +0000 |
commit | df764498e03d0e90fb50b7dfb1b696ee5be89862 (patch) | |
tree | a82504bb13915821c048f925e35d8afe5e841818 /build/precompile.h | |
parent | c587e0300ac3a1b01d7ab2ca0e30e7fcddbcd073 (diff) | |
download | chromium_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.h | 19 |
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 |