Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo
authorJustin Lebar <justin.lebar@gmail.com>
Wed, 29 Feb 2012 22:56:43 -0500
changeset 90920 a771e4924188f8d6b3c6f99beb927fae0142f62b
parent 90919 bc96e7b9700b485bfa9cf8db17ec29b5d5a37dbc
child 90921 4daba22659e3557c690d365d48e7d04525e4b734
push id783
push userlsblakk@mozilla.com
push dateTue, 24 Apr 2012 17:33:42 +0000
treeherdermozilla-beta@11faed19f136 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerswaldo
bugs731789
milestone13.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo
content/base/public/nsDOMFile.h
content/base/src/nsDOMBlobBuilder.h
content/media/VideoUtils.cpp
content/media/nsBuiltinDecoderReader.cpp
content/media/nsBuiltinDecoderStateMachine.cpp
content/media/ogg/nsOggCodecState.cpp
content/media/ogg/nsOggCodecState.h
content/media/wave/nsWaveReader.cpp
content/media/webm/nsWebMReader.h
gfx/2d/Types.h
gfx/thebes/gfxScriptItemizer.h
gfx/thebes/woff.h
image/src/RasterImage.cpp
intl/unicharutil/src/nsUnicodePropertyData.cpp
intl/unicharutil/tools/genUnicodePropertyData.pl
js/public/LegacyIntTypes.h
js/src/jsapi.h
js/src/jsfriendapi.cpp
js/src/vm/ObjectImpl.h
js/src/vm/Unicode.h
js/src/yarr/PageBlock.h
media/libcubeb/include/cubeb-stdint.h
mfbt/StandardInteger.h
mfbt/StdInt.h
mfbt/Types.h
mfbt/exported_headers.mk
tools/profiler/platform.h
tools/profiler/shared-libraries.h
tools/trace-malloc/lib/nsTraceMalloc.h
xpcom/base/nsStackWalk.h
xpcom/build/nsXREAppData.h
xpcom/ds/nsCheapSets.h
--- a/content/base/public/nsDOMFile.h
+++ b/content/base/public/nsDOMFile.h
@@ -53,17 +53,17 @@
 #include "nsIXMLHttpRequest.h"
 #include "prmem.h"
 #include "nsAutoPtr.h"
 #include "mozilla/dom/indexedDB/FileInfo.h"
 #include "mozilla/dom/indexedDB/FileManager.h"
 #include "mozilla/dom/indexedDB/IndexedDatabaseManager.h"
 
 #include "mozilla/GuardObjects.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 class nsIFile;
 class nsIInputStream;
 class nsIClassInfo;
 class nsIBlobBuilder;
 
 nsresult NS_NewBlobBuilder(nsISupports* *aSupports);
 
--- a/content/base/src/nsDOMBlobBuilder.h
+++ b/content/base/src/nsDOMBlobBuilder.h
@@ -36,17 +36,17 @@
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef nsDOMBlobBuilder_h
 #define nsDOMBlobBuilder_h
 
 #include "nsDOMFile.h"
 #include "CheckedInt.h"
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 using namespace mozilla;
 
 class nsDOMMultipartFile : public nsDOMFileBase
 {
 public:
   // Create as a file
   nsDOMMultipartFile(nsTArray<nsCOMPtr<nsIDOMBlob> > aBlobs,
--- a/content/media/VideoUtils.cpp
+++ b/content/media/VideoUtils.cpp
@@ -34,17 +34,17 @@
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "VideoUtils.h"
 #include "nsMathUtils.h"
 #include "prtypes.h"
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 // Converts from number of audio frames to microseconds, given the specified
 // audio rate.
 CheckedInt64 FramesToUsecs(PRInt64 aFrames, PRUint32 aRate) {
   return (CheckedInt64(aFrames) * USECS_PER_S) / aRate;
 }
 
 // Converts from microseconds to number of audio frames, given the specified
--- a/content/media/nsBuiltinDecoderReader.cpp
+++ b/content/media/nsBuiltinDecoderReader.cpp
@@ -41,17 +41,17 @@
 #include "nsClassHashtable.h"
 #include "nsTArray.h"
 #include "nsBuiltinDecoder.h"
 #include "nsBuiltinDecoderReader.h"
 #include "nsBuiltinDecoderStateMachine.h"
 #include "VideoUtils.h"
 
 #include "mozilla/mozalloc.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 using namespace mozilla;
 using mozilla::layers::ImageContainer;
 using mozilla::layers::PlanarYCbCrImage;
 
 // Verify these values are sane. Once we've checked the frame sizes, we then
 // can do less integer overflow checking.
 PR_STATIC_ASSERT(MAX_VIDEO_WIDTH < PlanarYCbCrImage::MAX_DIMENSION);
--- a/content/media/nsBuiltinDecoderStateMachine.cpp
+++ b/content/media/nsBuiltinDecoderStateMachine.cpp
@@ -43,17 +43,17 @@
 #include "nsBuiltinDecoderReader.h"
 #include "nsBuiltinDecoderStateMachine.h"
 #include "mozilla/mozalloc.h"
 #include "VideoUtils.h"
 #include "nsTimeRanges.h"
 #include "nsDeque.h"
 
 #include "mozilla/Preferences.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "mozilla/Util.h"
 
 using namespace mozilla;
 using namespace mozilla::layers;
 
 #ifdef PR_LOGGING
 extern PRLogModuleInfo* gBuiltinDecoderLog;
 #define LOG(type, msg) PR_LOG(gBuiltinDecoderLog, type, msg)
--- a/content/media/ogg/nsOggCodecState.cpp
+++ b/content/media/ogg/nsOggCodecState.cpp
@@ -39,17 +39,17 @@
 #include "nsDebug.h"
 #include "nsOggCodecState.h"
 #include "nsOggDecoder.h"
 #include <string.h>
 #include "nsTraceRefcnt.h"
 #include "VideoUtils.h"
 #include "nsBuiltinDecoderReader.h"
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #ifdef PR_LOGGING
 extern PRLogModuleInfo* gBuiltinDecoderLog;
 #define LOG(type, msg) PR_LOG(gBuiltinDecoderLog, type, msg)
 #else
 #define LOG(type, msg)
 #endif
 
--- a/content/media/ogg/nsOggCodecState.h
+++ b/content/media/ogg/nsOggCodecState.h
@@ -46,17 +46,17 @@
 #else
 #include <vorbis/codec.h>
 #endif
 #include <nsDeque.h>
 #include <nsTArray.h>
 #include <nsClassHashtable.h>
 #include "VideoUtils.h"
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 // Uncomment the following to validate that we're predicting the number
 // of Vorbis samples in each packet correctly.
 #define VALIDATE_VORBIS_SAMPLE_CALCULATION
 #ifdef  VALIDATE_VORBIS_SAMPLE_CALCULATION
 #include <map>
 #endif
 
--- a/content/media/wave/nsWaveReader.cpp
+++ b/content/media/wave/nsWaveReader.cpp
@@ -38,17 +38,17 @@
 #include "nsError.h"
 #include "nsBuiltinDecoderStateMachine.h"
 #include "nsBuiltinDecoder.h"
 #include "MediaResource.h"
 #include "nsWaveReader.h"
 #include "nsTimeRanges.h"
 #include "VideoUtils.h"
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 using namespace mozilla;
 
 // Un-comment to enable logging of seek bisections.
 //#define SEEK_LOGGING
 
 #ifdef PR_LOGGING
 extern PRLogModuleInfo* gBuiltinDecoderLog;
--- a/content/media/webm/nsWebMReader.h
+++ b/content/media/webm/nsWebMReader.h
@@ -34,17 +34,17 @@
  * and other provisions required by the GPL or the LGPL. If you do not delete
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 #if !defined(nsWebMReader_h_)
 #define nsWebMReader_h_
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include "nsDeque.h"
 #include "nsBuiltinDecoderReader.h"
 #include "nsWebMBufferedParser.h"
 #include "nsAutoRef.h"
 #include "nestegg/nestegg.h"
 
 #define VPX_DONT_DEFINE_STDINT_TYPES
--- a/gfx/2d/Types.h
+++ b/gfx/2d/Types.h
@@ -33,17 +33,17 @@
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef MOZILLA_GFX_TYPES_H_
 #define MOZILLA_GFX_TYPES_H_
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include <stddef.h>
 
 namespace mozilla {
 namespace gfx {
 
 typedef float Float;
 
--- a/gfx/thebes/gfxScriptItemizer.h
+++ b/gfx/thebes/gfxScriptItemizer.h
@@ -75,17 +75,17 @@
  *
  * All trademarks and registered trademarks mentioned herein are the property
  * of their respective owners. 
  */
 
 #ifndef GFX_SCRIPTITEMIZER_H
 #define GFX_SCRIPTITEMIZER_H
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "prtypes.h"
 #include "harfbuzz/hb.h"
 #include "nsUnicodeScriptCodes.h"
 
 #define PAREN_STACK_DEPTH 32
 
 class gfxScriptItemizer
 {
--- a/gfx/thebes/woff.h
+++ b/gfx/thebes/woff.h
@@ -35,17 +35,17 @@
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef WOFF_H_
 #define WOFF_H_
 
 /* API for the WOFF encoder and decoder */
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include <stdio.h> /* only for FILE, needed for woffPrintStatus */
 
 /* error codes returned in the status parameter of WOFF functions */
 enum {
   /* Success */
   eWOFF_ok = 0,
 
--- a/image/src/RasterImage.cpp
+++ b/image/src/RasterImage.cpp
@@ -63,17 +63,17 @@
 #include "nsJPEGDecoder.h"
 #include "nsBMPDecoder.h"
 #include "nsICODecoder.h"
 #include "nsIconDecoder.h"
 
 #include "gfxContext.h"
 
 #include "mozilla/Preferences.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "mozilla/Telemetry.h"
 #include "mozilla/TimeStamp.h"
 #include "mozilla/ClearOnShutdown.h"
 
 using namespace mozilla;
 using namespace mozilla::image;
 using namespace mozilla::layers;
 
--- a/intl/unicharutil/src/nsUnicodePropertyData.cpp
+++ b/intl/unicharutil/src/nsUnicodePropertyData.cpp
@@ -69,17 +69,17 @@ for the Unicode Character Database (UCD)
 
 # HangulSyllableType-6.1.0.txt
 # Date: 2011-08-25, 00:02:18 GMT [MD]
 
  *
  * * * * * This file contains MACHINE-GENERATED DATA, do not edit! * * * * *
  */
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "harfbuzz/hb-common.h"
 
 static const PRUint32 sScriptCodeToTag[] = {
   HB_TAG('Z','y','y','y'),
   HB_TAG('Z','i','n','h'),
   HB_TAG('A','r','a','b'),
   HB_TAG('A','r','m','n'),
   HB_TAG('B','e','n','g'),
--- a/intl/unicharutil/tools/genUnicodePropertyData.pl
+++ b/intl/unicharutil/tools/genUnicodePropertyData.pl
@@ -371,17 +371,17 @@ print DATA_TABLES <<__END;
  *
 
 $versionInfo
 
  *
  * * * * * This file contains MACHINE-GENERATED DATA, do not edit! * * * * *
  */
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "harfbuzz/hb-common.h"
 
 __END
 
 print DATA_TABLES "static const PRUint32 sScriptCodeToTag[] = {\n";
 for (my $i = 0; $i < scalar @scriptCodeToTag; ++$i) {
   printf DATA_TABLES "  HB_TAG(%s)", $scriptCodeToTag[$i];
   print DATA_TABLES $i < $#scriptCodeToTag ? ",\n" : "\n";
--- a/js/public/LegacyIntTypes.h
+++ b/js/public/LegacyIntTypes.h
@@ -50,17 +50,17 @@
  *         types, *expect* to encounter either compile errors or link errors,
  *         depending how these types are used and on the order of inclusion.
  *         It is safest to use only the JSAPI <stdint.h>-style types,
  *         customizing those types using MOZ_CUSTOM_STDINT_H if necessary.
  */
 #ifndef PROTYPES_H
 #define PROTYPES_H
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include "js-config.h"
 
 typedef uint8_t uint8;
 typedef uint16_t uint16;
 typedef uint32_t uint32;
 typedef uint64_t uint64;
 
--- a/js/src/jsapi.h
+++ b/js/src/jsapi.h
@@ -39,17 +39,17 @@
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef jsapi_h___
 #define jsapi_h___
 /*
  * JavaScript API.
  */
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include <stddef.h>
 #include <stdio.h>
 #include "js-config.h"
 #include "jspubtd.h"
 #include "jsutil.h"
 #include "jsval.h"
 
--- a/js/src/jsfriendapi.cpp
+++ b/js/src/jsfriendapi.cpp
@@ -33,17 +33,17 @@
  * decision by deleting the provisions above and replace them with the notice
  * and other provisions required by the GPL or the LGPL. If you do not delete
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "mozilla/GuardObjects.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include "jscntxt.h"
 #include "jscompartment.h"
 #include "jsfriendapi.h"
 #include "jswrapper.h"
 #include "jsweakmap.h"
 #include "jswatchpoint.h"
 
--- a/js/src/vm/ObjectImpl.h
+++ b/js/src/vm/ObjectImpl.h
@@ -4,17 +4,17 @@
  * This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #ifndef ObjectImpl_h___
 #define ObjectImpl_h___
 
 #include "mozilla/Assertions.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include "jsfriendapi.h"
 #include "jsinfer.h"
 #include "jsval.h"
 
 #include "gc/Barrier.h"
 
 namespace js {
--- a/js/src/vm/Unicode.h
+++ b/js/src/vm/Unicode.h
@@ -34,17 +34,17 @@
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef Unicode_h__
 #define Unicode_h__
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include "jspubtd.h"
 
 #ifdef DEBUG
 #include <stdio.h> /* For EOF */
 #endif
 
 extern const bool js_isidstart[];
--- a/js/src/yarr/PageBlock.h
+++ b/js/src/yarr/PageBlock.h
@@ -25,17 +25,17 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  * THE POSSIBILITY OF SUCH DAMAGE.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef PageBlock_h
 #define PageBlock_h
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include <stdlib.h>
 #include "assembler/wtf/Platform.h"
 
 namespace WTF {
 
 size_t pageSize();
 inline bool isPageAligned(void* address) { return !(reinterpret_cast<intptr_t>(address) & (pageSize() - 1)); }
--- a/media/libcubeb/include/cubeb-stdint.h
+++ b/media/libcubeb/include/cubeb-stdint.h
@@ -1,1 +1,1 @@
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
new file mode 100644
--- /dev/null
+++ b/mfbt/StandardInteger.h
@@ -0,0 +1,78 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+ * vim: set ts=8 sw=4 et tw=99 ft=cpp:
+ *
+ * ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at:
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Mozilla Code.
+ *
+ * The Initial Developer of the Original Code is
+ *   The Mozilla Foundation
+ * Portions created by the Initial Developer are Copyright (C) 2011
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *   Jeff Walden <jwalden+code@mit.edu> (original author)
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+/* Implements the C99 <stdint.h> interface for C and C++ code. */
+
+#ifndef mozilla_StandardInteger_h_
+#define mozilla_StandardInteger_h_
+
+/*
+ * The C99 standard header <stdint.h> exposes typedefs for common fixed-width
+ * integer types.  It would be feasible to simply #include <stdint.h>, but
+ * MSVC++ versions prior to 2010 don't provide <stdint.h>.  We could solve this
+ * by reimplementing <stdint.h> for MSVC++ 2008 and earlier.  But then we reach
+ * a second problem: our custom <stdint.h> might conflict with a <stdint.h>
+ * defined by an embedder already looking to work around the MSVC++ <stdint.h>
+ * absence.
+ *
+ * We address these issues in this manner:
+ *
+ *   1. If the preprocessor macro MOZ_CUSTOM_STDINT_H is defined to a path to a
+ *      custom <stdint.h> implementation, we will #include it.  Embedders using
+ *      a custom <stdint.h> must define this macro to an implementation that
+ *      will work with their embedding.
+ *   2. Otherwise, if we are compiling with a an MSVC++ version without
+ *      <stdint.h>, #include our custom <stdint.h> reimplementation.
+ *   3. Otherwise, #include the standard <stdint.h> provided by the compiler.
+ *
+ * Note that we can't call this file "stdint.h" or something case-insensitively
+ * equal to "stdint.h" because then MSVC (and other compilers on
+ * case-insensitive file systems) will include this file, rather than the system
+ * stdint.h, when we ask for <stdint.h> below.
+ */
+#if defined(MOZ_CUSTOM_STDINT_H)
+#  include MOZ_CUSTOM_STDINT_H
+#elif defined(_MSC_VER) && _MSC_VER < 1600
+#  include "mozilla/MSStdInt.h"
+#else
+#  include <stdint.h>
+#endif
+
+#endif  /* mozilla_StandardInteger_h_ */
deleted file mode 100644
--- a/mfbt/StdInt.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
- * vim: set ts=8 sw=4 et tw=99 ft=cpp:
- *
- * ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at:
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is Mozilla Code.
- *
- * The Initial Developer of the Original Code is
- *   The Mozilla Foundation
- * Portions created by the Initial Developer are Copyright (C) 2011
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *   Jeff Walden <jwalden+code@mit.edu> (original author)
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either the GNU General Public License Version 2 or later (the "GPL"), or
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-
-/* Implements the C99 <stdint.h> interface for C and C++ code. */
-
-#ifndef mozilla_StdInt_h_
-#define mozilla_StdInt_h_
-
-/*
- * The C99 standard header <stdint.h> exposes typedefs for common fixed-width
- * integer types.  It would be feasible to simply #include <stdint.h>, but
- * MSVC++ versions prior to 2010 don't provide <stdint.h>.  We could solve this
- * by reimplementing <stdint.h> for MSVC++ 2008 and earlier.  But then we reach
- * a second problem: our custom <stdint.h> might conflict with a <stdint.h>
- * defined by an embedder already looking to work around the MSVC++ <stdint.h>
- * absence.
- *
- * We address these issues in this manner:
- *
- *   1. If the preprocessor macro MOZ_CUSTOM_STDINT_H is defined to a path to a
- *      custom <stdint.h> implementation, we will #include it.  Embedders using
- *      a custom <stdint.h> must define this macro to an implementation that
- *      will work with their embedding.
- *   2. Otherwise, if we are compiling with a an MSVC++ version without
- *      <stdint.h>, #include our custom <stdint.h> reimplementation.
- *   3. Otherwise, #include the standard <stdint.h> provided by the compiler.
- */
-#if defined(MOZ_CUSTOM_STDINT_H)
-#  include MOZ_CUSTOM_STDINT_H
-#elif defined(_MSC_VER) && _MSC_VER < 1600
-#  include "mozilla/MSStdInt.h"
-#else
-   /*
-    * Don't include <stdint.h>, because on some case-insensitive systems . is
-    * searched for headers before the standard include location.  :-(
-    */
-#  include <sys/../stdint.h>
-#endif
-
-#endif  /* mozilla_StdInt_h_ */
--- a/mfbt/Types.h
+++ b/mfbt/Types.h
@@ -48,17 +48,17 @@
  */
 
 /*
  * Expose all the integer types defined in C99's <stdint.h> (and the integer
  * limit and constant macros, if compiling C code or if compiling C++ code and
  * the right __STDC_*_MACRO has been defined for each).  These are all usable
  * throughout mfbt code, and throughout Mozilla code more generally.
  */
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 /* Also expose size_t. */
 #include <stddef.h>
 
 /* Implement compiler and linker macros needed for APIs. */
 
 /*
  * MOZ_EXPORT_API is used to declare and define a method which is externally
--- a/mfbt/exported_headers.mk
+++ b/mfbt/exported_headers.mk
@@ -46,12 +46,12 @@ EXPORTS_mozilla += \
   Attributes.h \
   BloomFilter.h \
   GuardObjects.h \
   Likely.h \
   LinkedList.h \
   MSStdInt.h \
   RangedPtr.h \
   RefPtr.h \
-  StdInt.h \
+  StandardInteger.h \
   Types.h \
   Util.h \
   $(NULL)
--- a/tools/profiler/platform.h
+++ b/tools/profiler/platform.h
@@ -3,17 +3,17 @@
 // found in the LICENSE file.
 
 #ifdef ANDROID
 #include <android/log.h>
 #else
 #define __android_log_print(a, ...)
 #endif
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 #include "mozilla/Util.h"
 #include "mozilla/unused.h"
 #include "mozilla/TimeStamp.h"
 #include "v8-support.h"
 #include <vector>
 #define ASSERT(a) MOZ_ASSERT(a)
 #ifdef ANDROID
 #ifdef defined(__arm__) || defined(__thumb__)
--- a/tools/profiler/shared-libraries.h
+++ b/tools/profiler/shared-libraries.h
@@ -34,17 +34,17 @@
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include <vector>
 #include <string.h>
 #include <stdlib.h>
-#include <mozilla/StdInt.h>
+#include <mozilla/StandardInteger.h>
 
 class SharedLibrary {
 public:
   SharedLibrary(unsigned long aStart, unsigned long aEnd, unsigned long aOffset, char *aName)
     : mStart(aStart)
     , mEnd(aEnd)
     , mOffset(aOffset)
     , mName(strdup(aName))
--- a/tools/trace-malloc/lib/nsTraceMalloc.h
+++ b/tools/trace-malloc/lib/nsTraceMalloc.h
@@ -35,17 +35,17 @@
  * and other provisions required by the GPL or the LGPL. If you do not delete
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 #ifndef nsTraceMalloc_h___
 #define nsTraceMalloc_h___
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 #include <stdio.h> /* for FILE */
 #include "prtypes.h"
 
 #ifdef XP_WIN
 #define setlinebuf(stream) setvbuf((stream), (char *)NULL, _IOLBF, 0)
 #endif
 
--- a/xpcom/base/nsStackWalk.h
+++ b/xpcom/base/nsStackWalk.h
@@ -38,17 +38,17 @@
 /* API for getting a stack trace of the C/C++ stack on the current thread */
 
 #ifndef nsStackWalk_h_
 #define nsStackWalk_h_
 
 /* WARNING: This file is intended to be included from C or C++ files. */
 
 #include "nscore.h"
-#include <mozilla/StdInt.h>
+#include <mozilla/StandardInteger.h>
 
 PR_BEGIN_EXTERN_C
 
 typedef void
 (* NS_WalkStackCallback)(void *aPC, void *aClosure);
 
 /**
  * Call aCallback for the C/C++ stack frames on the current thread, from
--- a/xpcom/build/nsXREAppData.h
+++ b/xpcom/build/nsXREAppData.h
@@ -35,17 +35,17 @@
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef nsXREAppData_h
 #define nsXREAppData_h
 
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 class nsILocalFile;
 
 /**
  * Application-specific data needed to start the apprunner.
  *
  * @note When this structure is allocated and manipulated by XRE_CreateAppData,
  *       string fields will be allocated with NS_Alloc, and interface pointers
--- a/xpcom/ds/nsCheapSets.h
+++ b/xpcom/ds/nsCheapSets.h
@@ -34,17 +34,17 @@
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #ifndef __nsCheapSets_h__
 #define __nsCheapSets_h__
 
 #include "nsTHashtable.h"
-#include "mozilla/StdInt.h"
+#include "mozilla/StandardInteger.h"
 
 /**
  * A set that takes up minimal size when there are 0 or 1 entries in the set.
  * Use for cases where sizes of 0 and 1 are even slightly common.
  */
 template<typename EntryType>
 class nsCheapSet
 {