Backed out 5 changesets (bug 965022) for mochitest-2 failures on a CLOSED TREE.
authorRyan VanderMeulen <ryanvm@gmail.com>
Tue, 26 Aug 2014 16:02:37 -0400
changeset 201741 894b7372561dcf1a27cb4038a4f73c44cb16cbb2
parent 201740 3a545eb9828b44ac6e62859be6b0eba6f01f5047
child 201742 7f0a45d29ac56098b8d6928f90c65fc8311ba66e
push id27380
push userkwierso@gmail.com
push dateWed, 27 Aug 2014 00:50:11 +0000
treeherdermozilla-central@83289be2cd12 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs965022
milestone34.0a1
backs out7f68752ffe1e6990b04dccf1b05e87df493adbad
24251d4da0191cc8121b9c693c17aaf35701e717
a34ae046c94729021676108c4c69e04fcaa3c3aa
f747fd154739dbf37461c84bf41b365d9463ea44
f076faf3c282c1d856a078e1bd4f27292ca4b1f9
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
Backed out 5 changesets (bug 965022) for mochitest-2 failures on a CLOSED TREE. Backed out changeset 7f68752ffe1e (bug 965022) Backed out changeset 24251d4da019 (bug 965022) Backed out changeset a34ae046c947 (bug 965022) Backed out changeset f747fd154739 (bug 965022) Backed out changeset f076faf3c282 (bug 965022)
dom/base/nsWindowMemoryReporter.cpp
dom/canvas/WebGLProgram.cpp
gfx/gl/GLBlitHelper.cpp
gfx/gl/GLContext.cpp
gfx/gl/GLContextProviderGLX.cpp
gfx/layers/composite/ContainerLayerComposite.cpp
ipc/glue/MessageChannel.cpp
layout/generic/nsFrameState.cpp
layout/style/AnimationCommon.cpp
layout/style/nsStyleUtil.cpp
mfbt/IntegerPrintfMacros.h
netwerk/protocol/http/ConnectionDiagnostics.cpp
xpcom/base/nscore.h
xpcom/glue/nsDebug.h
xpcom/string/nsTSubstring.h
--- a/dom/base/nsWindowMemoryReporter.cpp
+++ b/dom/base/nsWindowMemoryReporter.cpp
@@ -14,17 +14,16 @@
 #include "mozilla/Preferences.h"
 #include "mozilla/Services.h"
 #include "mozilla/StaticPtr.h"
 #include "nsNetCID.h"
 #include "nsPrintfCString.h"
 #include "XPCJSMemoryReporter.h"
 #include "js/MemoryMetrics.h"
 #include "nsServiceManagerUtils.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 using namespace mozilla;
 
 StaticRefPtr<nsWindowMemoryReporter> sWindowReporter;
 
 /**
  * Don't trigger a ghost window check when a DOM window is detached if we've
  * run it this recently.
@@ -165,17 +164,17 @@ GetWindowURI(nsIDOMWindow *aWindow)
 
 static void
 AppendWindowURI(nsGlobalWindow *aWindow, nsACString& aStr, bool aAnonymize)
 {
   nsCOMPtr<nsIURI> uri = GetWindowURI(aWindow);
 
   if (uri) {
     if (aAnonymize && !aWindow->IsChromeWindow()) {
-      aStr.AppendPrintf("<anonymized-%" PRIu64 ">", aWindow->WindowID());
+      aStr.AppendPrintf("<anonymized-%d>", aWindow->WindowID());
     } else {
       nsCString spec;
       uri->GetSpec(spec);
 
       // A hack: replace forward slashes with '\\' so they aren't
       // treated as path separators.  Users of the reporters
       // (such as about:memory) have to undo this change.
       spec.ReplaceChar('/', '\\');
--- a/dom/canvas/WebGLProgram.cpp
+++ b/dom/canvas/WebGLProgram.cpp
@@ -3,17 +3,16 @@
  * 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/. */
 
 #include "WebGLContext.h"
 #include "WebGLShader.h"
 #include "WebGLProgram.h"
 #include "mozilla/dom/WebGLRenderingContextBinding.h"
 #include "GLContext.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 #include "MurmurHash3.h"
 
 using namespace mozilla;
 
 /** Takes an ASCII string like "foo[i]", turns it into "foo" and returns "[i]" in bracketPart
   * 
   * \param string input/output: the string to split, becomes the string without the bracket part
@@ -230,15 +229,15 @@ WebGLProgram::IdentifierHashFunction(con
 }
 
 /* static */ void
 WebGLProgram::HashMapIdentifier(const nsACString& name, nsCString *hashedName)
 {
     uint64_t hash = IdentifierHashFunction(name.BeginReading(), name.Length());
     hashedName->Truncate();
     // This MUST MATCH angle/src/compiler/translator/HashNames.h HASHED_NAME_PREFIX
-    hashedName->AppendPrintf("webgl_%" PRIx64, hash);
+    hashedName->AppendPrintf("webgl_%llx", hash);
 }
 
 NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE(WebGLProgram, mAttachedShaders)
 
 NS_IMPL_CYCLE_COLLECTION_ROOT_NATIVE(WebGLProgram, AddRef)
 NS_IMPL_CYCLE_COLLECTION_UNROOT_NATIVE(WebGLProgram, Release)
--- a/gfx/gl/GLBlitHelper.cpp
+++ b/gfx/gl/GLBlitHelper.cpp
@@ -828,17 +828,17 @@ GLBlitHelper::BlitTextureToFramebuffer(G
         mGL->BindFB(destFB);
     }
 
     // Does destructive things to (only!) what we just saved above.
     bool good = UseTexQuadProgram(type, srcSize);
     if (!good) {
         // We're up against the wall, so bail.
         // This should really be MOZ_CRASH(why) or MOZ_RUNTIME_ASSERT(good).
-        printf_stderr("Fatal Error: Failed to prepare to blit texture->framebuffer.\n");
+        printf_stderr("[%s:%d] Fatal Error: Failed to prepare to blit texture->framebuffer.\n");
         MOZ_CRASH();
     }
     mGL->fDrawArrays(LOCAL_GL_TRIANGLE_STRIP, 0, 4);
 }
 
 void
 GLBlitHelper::BlitFramebufferToTexture(GLuint srcFB, GLuint destTex,
                                        const gfx::IntSize& srcSize,
--- a/gfx/gl/GLContext.cpp
+++ b/gfx/gl/GLContext.cpp
@@ -24,17 +24,16 @@
 #include "prlink.h"
 #include "ScopedGLHelpers.h"
 #include "SharedSurfaceGL.h"
 #include "SurfaceStream.h"
 #include "GfxTexturesReporter.h"
 #include "TextureGarbageBin.h"
 #include "gfx2DGlue.h"
 #include "gfxPrefs.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 #include "OGLShaderProgram.h" // for ShaderProgramType
 
 #include "mozilla/DebugOnly.h"
 
 #ifdef XP_MACOSX
 #include <CoreServices/CoreServices.h>
 #include "gfxColor.h"
@@ -1267,17 +1266,17 @@ GLContext::DebugCallback(GLenum source,
     case LOCAL_GL_DEBUG_SEVERITY_NOTIFICATION:
         sevStr = NS_LITERAL_CSTRING("SEVERITY_NOTIFICATION");
         break;
     default:
         sevStr = nsPrintfCString("<severity 0x%04x>", severity);
         break;
     }
 
-    printf_stderr("[KHR_debug: 0x%" PRIuPTR "] ID %u: %s %s %s:\n    %s",
+    printf_stderr("[KHR_debug: 0x%x] ID %u: %s %s %s:\n    %s",
                   (uintptr_t)this,
                   id,
                   sourceStr.BeginReading(),
                   typeStr.BeginReading(),
                   sevStr.BeginReading(),
                   message);
 }
 
--- a/gfx/gl/GLContextProviderGLX.cpp
+++ b/gfx/gl/GLContextProviderGLX.cpp
@@ -476,17 +476,17 @@ GLXLibrary::BeforeGLXCall()
 void
 GLXLibrary::AfterGLXCall()
 {
     if (mDebug) {
         FinishX(DefaultXDisplay());
         if (sErrorEvent.mError.error_code) {
             char buffer[2048];
             XGetErrorText(DefaultXDisplay(), sErrorEvent.mError.error_code, buffer, sizeof(buffer));
-            printf_stderr("X ERROR: %s (%i) - Request: %i.%i, Serial: %lu",
+            printf_stderr("X ERROR: %s (%i) - Request: %i.%i, Serial: %i",
                           buffer,
                           sErrorEvent.mError.error_code,
                           sErrorEvent.mError.request_code,
                           sErrorEvent.mError.minor_code,
                           sErrorEvent.mError.serial);
             NS_ABORT();
         }
         XSetErrorHandler(sOldErrorHandler);
--- a/gfx/layers/composite/ContainerLayerComposite.cpp
+++ b/gfx/layers/composite/ContainerLayerComposite.cpp
@@ -109,18 +109,16 @@ static void DrawLayerInfo(const RenderTa
   nsIntPoint topLeft = visibleRegion.GetBounds().TopLeft();
   aManager->GetTextRenderer()->RenderText(ss.str().c_str(), gfx::IntPoint(topLeft.x, topLeft.y),
                                           aLayer->GetEffectiveTransform(), 16,
                                           maxWidth);
 }
 
 static void PrintUniformityInfo(Layer* aLayer)
 {
-  static TimeStamp t0 = TimeStamp::Now();
-
   // Don't want to print a log for smaller layers
   if (aLayer->GetEffectiveVisibleRegion().GetBounds().width < 300 ||
       aLayer->GetEffectiveVisibleRegion().GetBounds().height < 300) {
     return;
   }
 
   FrameMetrics frameMetrics = aLayer->GetFrameMetrics();
   if (!frameMetrics.IsScrollable()) {
@@ -130,18 +128,17 @@ static void PrintUniformityInfo(Layer* a
   AsyncPanZoomController* apzc = aLayer->GetAsyncPanZoomController();
   if (apzc) {
     ViewTransform asyncTransform, overscrollTransform;
     ScreenPoint scrollOffset;
     apzc->SampleContentTransformForFrame(&asyncTransform,
                                          scrollOffset,
                                          &overscrollTransform);
     printf_stderr("UniformityInfo Layer_Move %llu %p %f, %f\n",
-        (unsigned long long)(TimeStamp::Now() - t0).ToMilliseconds(), aLayer,
-        scrollOffset.x.value, scrollOffset.y.value);
+          TimeStamp::Now(), aLayer, scrollOffset.x.value, scrollOffset.y.value);
   }
 }
 
 /* all of the per-layer prepared data we need to maintain */
 struct PreparedLayer
 {
   PreparedLayer(LayerComposite *aLayer, RenderTargetIntRect aClipRect, bool aRestoreVisibleRegion, nsIntRegion &aVisibleRegion) :
     mLayer(aLayer), mClipRect(aClipRect), mRestoreVisibleRegion(aRestoreVisibleRegion), mSavedVisibleRegion(aVisibleRegion) {}
--- a/ipc/glue/MessageChannel.cpp
+++ b/ipc/glue/MessageChannel.cpp
@@ -1800,23 +1800,23 @@ MessageChannel::DebugAbort(const char* f
     printf_stderr("###!!! [MessageChannel][%s][%s:%d] "
                   "Assertion (%s) failed.  %s %s\n",
                   mSide == ChildSide ? "Child" : "Parent",
                   file, line, cond,
                   why,
                   reply ? "(reply)" : "");
     // technically we need the mutex for this, but we're dying anyway
     DumpInterruptStack("  ");
-    printf_stderr("  remote Interrupt stack guess: %" PRIuSIZE "\n",
+    printf_stderr("  remote Interrupt stack guess: %lu\n",
                   mRemoteStackDepthGuess);
-    printf_stderr("  deferred stack size: %" PRIuSIZE "\n",
+    printf_stderr("  deferred stack size: %lu\n",
                   mDeferred.size());
-    printf_stderr("  out-of-turn Interrupt replies stack size: %" PRIuSIZE "\n",
+    printf_stderr("  out-of-turn Interrupt replies stack size: %lu\n",
                   mOutOfTurnReplies.size());
-    printf_stderr("  Pending queue size: %" PRIuSIZE ", front to back:\n",
+    printf_stderr("  Pending queue size: %lu, front to back:\n",
                   mPending.size());
 
     MessageQueue pending = mPending;
     while (!pending.empty()) {
         printf_stderr("    [ %s%s ]\n",
                       pending.front().is_interrupt() ? "intr" :
                       (pending.front().is_sync() ? "sync" : "async"),
                       pending.front().is_reply() ? "reply" : "");
--- a/layout/generic/nsFrameState.cpp
+++ b/layout/generic/nsFrameState.cpp
@@ -17,17 +17,16 @@
 #include "nsImageFrame.h"
 #include "nsInlineFrame.h"
 #include "nsPlaceholderFrame.h"
 #include "nsSVGContainerFrame.h"
 #include "nsTableCellFrame.h"
 #include "nsTableRowFrame.h"
 #include "nsTableRowGroupFrame.h"
 #include "nsTextFrame.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 namespace mozilla {
 
 #ifdef DEBUG
 nsCString
 GetFrameState(nsIFrame* aFrame)
 {
   nsCString result;
@@ -55,17 +54,17 @@ GetFrameState(nsIFrame* aFrame)
     result.Insert(#name_, 0);                                                 \
     state = state & ~NS_FRAME_STATE_BIT(value_);                              \
   }
 #include "nsFrameStateBits.h"
 #undef FRAME_STATE_GROUP
 #undef FRAME_STATE_BIT
 
   if (state) {
-    result.AppendPrintf(" | 0x%0" PRIx64, state);
+    result.AppendPrintf(" | 0x%0llx", state);
   }
 
   return result;
 }
 
 void
 PrintFrameState(nsIFrame* aFrame)
 {
--- a/layout/style/AnimationCommon.cpp
+++ b/layout/style/AnimationCommon.cpp
@@ -446,17 +446,17 @@ AnimationPlayerCollection::LogAsyncAnima
     if (id) {
       aMessage.AppendLiteral(" with id '");
       aMessage.Append(nsAtomCString(aContent->GetID()));
       aMessage.Append('\'');
     }
     aMessage.Append(']');
   }
   aMessage.Append('\n');
-  printf_stderr("%s", aMessage.get());
+  printf_stderr(aMessage.get());
 }
 
 /*static*/ void
 AnimationPlayerCollection::PropertyDtor(void *aObject, nsIAtom *aPropertyName,
                                          void *aPropertyValue, void *aData)
 {
   AnimationPlayerCollection* collection =
     static_cast<AnimationPlayerCollection*>(aPropertyValue);
--- a/layout/style/nsStyleUtil.cpp
+++ b/layout/style/nsStyleUtil.cpp
@@ -57,17 +57,17 @@ void nsStyleUtil::AppendEscapedCSSString
                   "CSS strings must be quoted with ' or \"");
   aReturn.Append(quoteChar);
 
   const char16_t* in = aString.BeginReading();
   const char16_t* const end = aString.EndReading();
   for (; in != end; in++) {
     if (*in < 0x20 || (*in >= 0x7F && *in < 0xA0)) {
       // Escape U+0000 through U+001F and U+007F through U+009F numerically.
-      aReturn.AppendPrintf("\\%hX ", static_cast<int16_t>(*in));
+      aReturn.AppendPrintf("\\%hX ", *in);
     } else {
       if (*in == '"' || *in == '\'' || *in == '\\') {
         // Escape backslash and quote characters symbolically.
         // It's not technically necessary to escape the quote
         // character that isn't being used to delimit the string,
         // but we do it anyway because that makes testing simpler.
         aReturn.Append(char16_t('\\'));
       }
@@ -111,28 +111,28 @@ nsStyleUtil::AppendEscapedCSSIdent(const
     aReturn.Append(char16_t('-'));
     ++in;
   }
 
   // Escape a digit at the start (including after a dash),
   // numerically.  If we didn't escape it numerically, it would get
   // interpreted as a numeric escape for the wrong character.
   if (in != end && ('0' <= *in && *in <= '9')) {
-    aReturn.AppendPrintf("\\%hX ", static_cast<int16_t>(*in));
+    aReturn.AppendPrintf("\\%hX ", *in);
     ++in;
   }
 
   for (; in != end; ++in) {
     char16_t ch = *in;
     if (ch == 0x00) {
       return false;
     }
     if (ch < 0x20 || (0x7F <= ch && ch < 0xA0)) {
       // Escape U+0000 through U+001F and U+007F through U+009F numerically.
-      aReturn.AppendPrintf("\\%hX ", static_cast<int16_t>(*in));
+      aReturn.AppendPrintf("\\%hX ", *in);
     } else {
       // Escape ASCII non-identifier printables as a backslash plus
       // the character.
       if (ch < 0x7F &&
           ch != '_' && ch != '-' &&
           (ch < '0' || '9' < ch) &&
           (ch < 'A' || 'Z' < ch) &&
           (ch < 'a' || 'z' < ch)) {
--- a/mfbt/IntegerPrintfMacros.h
+++ b/mfbt/IntegerPrintfMacros.h
@@ -54,14 +54,9 @@
 #  undef  PRIuPTR      /* uintptr_t */
 #  define PRIuPTR "u"  /* uintptr_t */
 #  undef  PRIxPTR      /* uintptr_t */
 #  define PRIxPTR "x"  /* uintptr_t */
 #  undef  PRIXPTR      /* uintptr_t */
 #  define PRIXPTR "X"  /* uintptr_t */
 #endif
 
-/**
- * For printing size_t.
- */
-#define PRIuSIZE PRIuPTR
-
 #endif  /* mozilla_IntegerPrintfMacros_h_ */
--- a/netwerk/protocol/http/ConnectionDiagnostics.cpp
+++ b/netwerk/protocol/http/ConnectionDiagnostics.cpp
@@ -10,17 +10,16 @@
 #include "nsHttpConnectionMgr.h"
 #include "nsHttpConnection.h"
 #include "SpdySession3.h"
 #include "SpdySession31.h"
 #include "Http2Session.h"
 #include "nsHttpHandler.h"
 #include "nsIConsoleService.h"
 #include "nsHttpRequestHead.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 extern PRThread *gSocketThread;
 
 namespace mozilla {
 namespace net {
 
 void
 nsHttpConnectionMgr::PrintDiagnostics()
@@ -59,23 +58,23 @@ nsHttpConnectionMgr::PrintDiagnosticsCB(
   uint32_t i;
 
   self->mLogData.AppendPrintf(" ent host = %s hashkey = %s\n",
                               ent->mConnInfo->Host(), ent->mConnInfo->HashKey().get());
   self->mLogData.AppendPrintf("   AtActiveConnectionLimit = %d\n",
                               self->AtActiveConnectionLimit(ent, NS_HTTP_ALLOW_KEEPALIVE));
   self->mLogData.AppendPrintf("   RestrictConnections = %d\n",
                               self->RestrictConnections(ent));
-  self->mLogData.AppendPrintf("   Pending Q Length = %" PRIuSIZE "\n",
+  self->mLogData.AppendPrintf("   Pending Q Length = %u\n",
                               ent->mPendingQ.Length());
-  self->mLogData.AppendPrintf("   Active Conns Length = %" PRIuSIZE "\n",
+  self->mLogData.AppendPrintf("   Active Conns Length = %u\n",
                               ent->mActiveConns.Length());
-  self->mLogData.AppendPrintf("   Idle Conns Length = %" PRIuSIZE "\n",
+  self->mLogData.AppendPrintf("   Idle Conns Length = %u\n",
                               ent->mIdleConns.Length());
-  self->mLogData.AppendPrintf("   Half Opens Length = %" PRIuSIZE "\n",
+  self->mLogData.AppendPrintf("   Half Opens Length = %u\n",
                               ent->mHalfOpens.Length());
   self->mLogData.AppendPrintf("   Coalescing Key = %s\n",
                               ent->mCoalescingKey.get());
   self->mLogData.AppendPrintf("   Spdy using = %d, tested = %d, preferred = %d\n",
                               ent->mUsingSpdy, ent->mTestedSpdy, ent->mSpdyPreferred);
   self->mLogData.AppendPrintf("   pipelinestate = %d penalty = %d\n",
                               ent->mPipelineState, ent->mPipeliningPenalty);
   for (i = 0; i < nsAHttpTransaction::CLASS_MAX; ++i) {
@@ -142,17 +141,17 @@ nsHttpConnection::PrintDiagnostics(nsCSt
 
   log.AppendPrintf("    mTransaction = %d mSpdySession = %d\n",
                    !!mTransaction.get(), !!mSpdySession.get());
 
   PRIntervalTime now = PR_IntervalNow();
   log.AppendPrintf("    time since last read = %ums\n",
                    PR_IntervalToMilliseconds(now - mLastReadTime));
 
-  log.AppendPrintf("    max-read/read/written %" PRId64 "/%" PRId64 "/%" PRId64 "\n",
+  log.AppendPrintf("    max-read/read/written %lld/%lld/%lld\n",
                    mMaxBytesRead, mTotalBytesRead, mTotalBytesWritten);
 
   log.AppendPrintf("    rtt = %ums\n", PR_IntervalToMilliseconds(mRtt));
 
   log.AppendPrintf("    idlemonitoring = %d transactionCount=%d\n",
                    mIdleMonitoring, mHttp1xTransactionCount);
 
   log.AppendPrintf("    supports pipeline = %d classification = 0x%x\n",
--- a/xpcom/base/nscore.h
+++ b/xpcom/base/nscore.h
@@ -172,26 +172,16 @@
 # define MOZ_DEPRECATED __attribute__((deprecated))
 #elif defined(_MSC_VER)
 # define MOZ_DEPRECATED __declspec(deprecated)
 #else
 # define MOZ_DEPRECATED
 #endif
 
 /**
- * Printf style formats
- */
-#ifdef __GNUC__
-#define MOZ_FORMAT_PRINTF(stringIndex, firstToCheck)  \
-    __attribute__ ((format (printf, stringIndex, firstToCheck)))
-#else
-#define MOZ_FORMAT_PRINTF(stringIndex, firstToCheck)
-#endif
-
-/**
  * Generic API modifiers which return the standard XPCOM nsresult type
  */
 #define NS_IMETHOD          NS_IMETHOD_(nsresult)
 #define NS_IMETHODIMP       NS_IMETHODIMP_(nsresult)
 #define NS_METHOD           NS_METHOD_(nsresult)
 #define NS_CALLBACK(_name)  NS_CALLBACK_(nsresult, _name)
 
 /**
--- a/xpcom/glue/nsDebug.h
+++ b/xpcom/glue/nsDebug.h
@@ -397,23 +397,22 @@ typedef void (*StderrCallback)(const cha
  * be linked with a static CRT (-MT) even when it's not. This means that we
  * cannot link to data exports from the CRT, only function exports. So,
  * instead of referencing "stderr" directly, use fdopen.
  */
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-NS_COM_GLUE void printf_stderr(const char* aFmt, ...) MOZ_FORMAT_PRINTF(1, 2);
+NS_COM_GLUE void printf_stderr(const char* aFmt, ...);
 
 NS_COM_GLUE void vprintf_stderr(const char* aFmt, va_list aArgs);
 
 // fprintf with special handling for stderr to print to the console
-NS_COM_GLUE void fprintf_stderr(FILE* aFile, const char* aFmt, ...)
-    MOZ_FORMAT_PRINTF(2, 3);
+NS_COM_GLUE void fprintf_stderr(FILE* aFile, const char* aFmt, ...);
 
 // used by the profiler to log stderr in the profiler for more
 // advanced performance debugging and display/layers visualization.
 NS_COM_GLUE void set_stderr_callback(StderrCallback aCallback);
 
 #ifdef __cplusplus
 }
 #endif
--- a/xpcom/string/nsTSubstring.h
+++ b/xpcom/string/nsTSubstring.h
@@ -2,17 +2,16 @@
 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
 /* 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/. */
 // IWYU pragma: private, include "nsString.h"
 
 #include "mozilla/Casting.h"
 #include "mozilla/MemoryReporting.h"
-#include "mozilla/IntegerPrintfMacros.h"
 
 #ifndef MOZILLA_INTERNAL_API
 #error Cannot use internal string classes without MOZILLA_INTERNAL_API defined. Use the frozen header nsStringAPI.h instead.
 #endif
 
 /**
  * The base for string comparators
  */
@@ -552,18 +551,17 @@ public:
   {
     ReplaceASCII(mLength, 0, aData, aLength);
   }
 
   /**
    * Append a formatted string to the current string. Uses the format
    * codes documented in prprf.h
    */
-  // Note: MOZ_FORMAT_PRINTF(2, 3) because 'this counts as a parameter.
-  void AppendPrintf(const char* aFormat, ...) MOZ_FORMAT_PRINTF(2, 3);
+  void AppendPrintf(const char* aFormat, ...);
   void AppendPrintf(const char* aFormat, va_list aAp);
   void AppendInt(int32_t aInteger)
   {
     AppendPrintf("%d", aInteger);
   }
   void AppendInt(int32_t aInteger, int aRadix)
   {
     const char* fmt = aRadix == 10 ? "%d" : aRadix == 8 ? "%o" : "%x";
@@ -575,30 +573,30 @@ public:
   }
   void AppendInt(uint32_t aInteger, int aRadix)
   {
     const char* fmt = aRadix == 10 ? "%u" : aRadix == 8 ? "%o" : "%x";
     AppendPrintf(fmt, aInteger);
   }
   void AppendInt(int64_t aInteger)
   {
-    AppendPrintf("%" PRId64, aInteger);
+    AppendPrintf("%lld", aInteger);
   }
   void AppendInt(int64_t aInteger, int aRadix)
   {
-    const char* fmt = aRadix == 10 ? "%" PRId64 : aRadix == 8 ? "%" PRIo64 : "%" PRIx64;
+    const char* fmt = aRadix == 10 ? "%lld" : aRadix == 8 ? "%llo" : "%llx";
     AppendPrintf(fmt, aInteger);
   }
   void AppendInt(uint64_t aInteger)
   {
-    AppendPrintf("%" PRIu64, aInteger);
+    AppendPrintf("%llu", aInteger);
   }
   void AppendInt(uint64_t aInteger, int aRadix)
   {
-    const char* fmt = aRadix == 10 ? "%" PRIu64 : aRadix == 8 ? "%" PRIo64 : "%" PRIx64;
+    const char* fmt = aRadix == 10 ? "%llu" : aRadix == 8 ? "%llo" : "%llx";
     AppendPrintf(fmt, aInteger);
   }
 
   /**
    * Append the given float to this string
    */
   void NS_FASTCALL AppendFloat(float aFloat);
   void NS_FASTCALL AppendFloat(double aFloat);