aboutsummaryrefslogtreecommitdiffstats
path: root/www/firefox/files/patch-bug784631
diff options
context:
space:
mode:
Diffstat (limited to 'www/firefox/files/patch-bug784631')
-rw-r--r--www/firefox/files/patch-bug78463152
1 files changed, 52 insertions, 0 deletions
diff --git a/www/firefox/files/patch-bug784631 b/www/firefox/files/patch-bug784631
new file mode 100644
index 000000000000..2c8a1560b877
--- /dev/null
+++ b/www/firefox/files/patch-bug784631
@@ -0,0 +1,52 @@
+commit 66b3921
+Author: Terrence Cole <terrence@mozilla.com>
+Date: Tue Sep 11 12:31:04 2012 -0700
+
+ Bug 784631 - Fix some clang build errors in SpiderMonkey; r=Waldo f=espindola
+
+ Computed gotos are not in the C++ standard: clang and gcc differ on semantics.
+---
+ js/src/jsinterp.cpp | 3 ++-
+ js/src/jsutil.h | 8 ++++----
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git js/src/jsinterp.cpp js/src/jsinterp.cpp
+index 0094c72..27a64a7 100644
+--- js/src/jsinterp.cpp
++++ js/src/jsinterp.cpp
+@@ -1231,6 +1231,7 @@ js::Interpret(JSContext *cx, StackFrame *entryFrame, InterpMode interpMode)
+ RootedPropertyName rootName0(cx);
+ RootedId rootId0(cx);
+ RootedShape rootShape0(cx);
++ DebugOnly<uint32_t> blockDepth;
+
+ if (!entryFrame)
+ entryFrame = regs.fp();
+@@ -3650,7 +3651,7 @@ BEGIN_CASE(JSOP_LEAVEBLOCK)
+ BEGIN_CASE(JSOP_LEAVEFORLETIN)
+ BEGIN_CASE(JSOP_LEAVEBLOCKEXPR)
+ {
+- DebugOnly<uint32_t> blockDepth = regs.fp()->blockChain().stackDepth();
++ blockDepth = regs.fp()->blockChain().stackDepth();
+
+ regs.fp()->popBlock(cx);
+
+diff --git js/src/jsutil.h js/src/jsutil.h
+index 8838b6f..016a877 100644
+--- js/src/jsutil.h
++++ js/src/jsutil.h
+@@ -432,10 +432,10 @@ typedef size_t jsbitmap;
+ #if defined(__clang__)
+ # define JS_SILENCE_UNUSED_VALUE_IN_EXPR(expr) \
+ JS_BEGIN_MACRO \
+- _Pragma("clang diagnostic push") \
+- _Pragma("clang diagnostic ignored \"-Wunused-value\"") \
+- expr; \
+- _Pragma("clang diagnostic pop") \
++ _Pragma("(clang diagnostic push)") \
++ _Pragma("(clang diagnostic ignored \"-Wunused-value\")") \
++ {expr;} \
++ _Pragma("(clang diagnostic pop)") \
+ JS_END_MACRO
+ #elif (__GNUC__ >= 5) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
+ # define JS_SILENCE_UNUSED_VALUE_IN_EXPR(expr) \