[tor-commits] [tor-browser/tor-browser-17.0.10esr-1] Fix MacOS GCC 4.2 build error.
mikeperry at torproject.org
mikeperry at torproject.org
Thu Oct 31 13:36:19 UTC 2013
commit 260fddaf9cfe79d3bf8f487522eb42116a6211e0
Author: Mike Perry <mikeperry-git at torproject.org>
Date: Wed Oct 30 20:30:07 2013 -0700
Fix MacOS GCC 4.2 build error.
Fix is from https://bugzilla.mozilla.org/show_bug.cgi?id=783505.
---
dom/workers/Events.cpp | 24 +++++++++++++++++++
dom/workers/Exceptions.cpp | 6 +++++
dom/workers/File.cpp | 24 +++++++++++++++++++
dom/workers/Worker.cpp | 24 +++++++++++++++++++
dom/workers/WorkerScope.cpp | 54 +++++++++++++++++++++++++++++++++++++++++++
5 files changed, 132 insertions(+)
diff --git a/dom/workers/Events.cpp b/dom/workers/Events.cpp
index d53ae16..8a4e029 100644
--- a/dom/workers/Events.cpp
+++ b/dom/workers/Events.cpp
@@ -248,7 +248,13 @@ private:
{
MOZ_STATIC_ASSERT(SLOT_FIRST <= Slot && Slot < SLOT_COUNT, "bad slot");
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsEvent, GetPropertyImpl<Slot>, args);
+#else
return JS::CallNonGenericMethod<IsEvent, GetPropertyImpl<Slot> >(aCx, args);
+#endif
}
};
@@ -575,7 +581,13 @@ private:
{
MOZ_STATIC_ASSERT(SLOT_FIRST <= Slot && Slot < SLOT_COUNT, "bad slot");
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsMessageEvent, GetPropertyImpl<Slot>, args);
+#else
return JS::CallNonGenericMethod<IsMessageEvent, GetPropertyImpl<Slot> >(aCx, args);
+#endif
}
};
@@ -774,7 +786,13 @@ private:
{
MOZ_STATIC_ASSERT(SLOT_FIRST <= Slot && Slot < SLOT_COUNT, "bad slot");
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsErrorEvent, GetPropertyImpl<Slot>, args);
+#else
return JS::CallNonGenericMethod<IsErrorEvent, GetPropertyImpl<Slot> >(aCx, args);
+#endif
}
};
@@ -968,7 +986,13 @@ private:
{
MOZ_STATIC_ASSERT(SLOT_FIRST <= Slot && Slot < SLOT_COUNT, "bad slot");
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsProgressEvent, GetPropertyImpl<Slot>, args);
+#else
return JS::CallNonGenericMethod<IsProgressEvent, GetPropertyImpl<Slot> >(aCx, args);
+#endif
}
};
diff --git a/dom/workers/Exceptions.cpp b/dom/workers/Exceptions.cpp
index bba1ac8..c20b028 100644
--- a/dom/workers/Exceptions.cpp
+++ b/dom/workers/Exceptions.cpp
@@ -165,7 +165,13 @@ private:
{
MOZ_STATIC_ASSERT(SLOT_FIRST <= Slot && Slot < SLOT_COUNT, "bad slot");
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsDOMException, GetPropertyImpl<Slot>, args);
+#else
return JS::CallNonGenericMethod<IsDOMException, GetPropertyImpl<Slot> >(aCx, args);
+#endif
}
};
};
diff --git a/dom/workers/File.cpp b/dom/workers/File.cpp
index 1f86dcf..e8cc406 100644
--- a/dom/workers/File.cpp
+++ b/dom/workers/File.cpp
@@ -138,7 +138,13 @@ private:
GetSize(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsBlob, GetSizeImpl, args);
+#else
return JS::CallNonGenericMethod<IsBlob, GetSizeImpl>(aCx, args);
+#endif
}
static bool
@@ -169,7 +175,13 @@ private:
GetType(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsBlob, GetTypeImpl, args);
+#else
return JS::CallNonGenericMethod<IsBlob, GetTypeImpl>(aCx, args);
+#endif
}
static JSBool
@@ -353,7 +365,13 @@ private:
GetMozFullPath(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsFile, GetMozFullPathImpl, args);
+#else
return JS::CallNonGenericMethod<IsFile, GetMozFullPathImpl>(aCx, args);
+#endif
}
static bool
@@ -381,7 +399,13 @@ private:
GetName(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsFile, GetNameImpl, args);
+#else
return JS::CallNonGenericMethod<IsFile, GetNameImpl>(aCx, args);
+#endif
}
};
diff --git a/dom/workers/Worker.cpp b/dom/workers/Worker.cpp
index 3c55847..d8b8af2 100644
--- a/dom/workers/Worker.cpp
+++ b/dom/workers/Worker.cpp
@@ -194,7 +194,13 @@ private:
GetOnerror(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorker, GetOnerrorImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorker, GetOnerrorImpl>(aCx, args);
+#endif
}
static bool
@@ -207,7 +213,13 @@ private:
GetOnmessage(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorker, GetOnmessageImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorker, GetOnmessageImpl>(aCx, args);
+#endif
}
static bool
@@ -248,7 +260,13 @@ private:
SetOnerror(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorker, SetOnerrorImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorker, SetOnerrorImpl>(aCx, args);
+#endif
}
static bool
@@ -261,7 +279,13 @@ private:
SetOnmessage(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorker, SetOnmessageImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorker, SetOnmessageImpl>(aCx, args);
+#endif
}
static JSBool
diff --git a/dom/workers/WorkerScope.cpp b/dom/workers/WorkerScope.cpp
index 44dde47..fdb0bb0 100644
--- a/dom/workers/WorkerScope.cpp
+++ b/dom/workers/WorkerScope.cpp
@@ -160,7 +160,13 @@ private:
GetOnClose(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, GetOnCloseImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, GetOnCloseImpl>(aCx, args);
+#endif
}
static bool
@@ -192,7 +198,13 @@ private:
SetOnClose(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, SetOnCloseImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, SetOnCloseImpl>(aCx, args);
+#endif
}
static WorkerGlobalScope*
@@ -217,7 +229,13 @@ private:
GetSelf(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, GetSelfImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, GetSelfImpl>(aCx, args);
+#endif
}
static bool
@@ -274,7 +292,13 @@ private:
GetLocation(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, GetLocationImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, GetLocationImpl>(aCx, args);
+#endif
}
static JSBool
@@ -347,7 +371,13 @@ private:
GetOnErrorListener(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, GetOnErrorListenerImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, GetOnErrorListenerImpl>(aCx, args);
+#endif
}
static bool
@@ -396,7 +426,13 @@ private:
SetOnErrorListener(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, SetOnErrorListenerImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, SetOnErrorListenerImpl>(aCx, args);
+#endif
}
static bool
@@ -424,7 +460,13 @@ private:
GetNavigator(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsWorkerGlobalScope, GetNavigatorImpl, args);
+#else
return JS::CallNonGenericMethod<IsWorkerGlobalScope, GetNavigatorImpl>(aCx, args);
+#endif
}
static JSBool
@@ -765,7 +807,13 @@ private:
GetOnMessage(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsDedicatedWorkerGlobalScope, GetOnMessageImpl, args);
+#else
return JS::CallNonGenericMethod<IsDedicatedWorkerGlobalScope, GetOnMessageImpl>(aCx, args);
+#endif
}
static bool
@@ -799,7 +847,13 @@ private:
SetOnMessage(JSContext* aCx, unsigned aArgc, JS::Value* aVp)
{
JS::CallArgs args = JS::CallArgsFromVp(aArgc, aVp);
+ // FIXME: Hack to keep us building with gcc 4.2. Remove this once we
+ // drop support for gcc 4.2. See bug 783505 for the details.
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+ return JS::CallNonGenericMethod(aCx, IsDedicatedWorkerGlobalScope, SetOnMessageImpl, args);
+#else
return JS::CallNonGenericMethod<IsDedicatedWorkerGlobalScope, SetOnMessageImpl>(aCx, args);
+#endif
}
static DedicatedWorkerGlobalScope*
More information about the tor-commits
mailing list