summaryrefslogtreecommitdiff
path: root/patches/quell-clang-warnings.patch
blob: 5bcee20105dbf28c3d7fb7115f626abb6d7deac4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# HG changeset patch
# Parent cbcdf88440f5545fdec2eec649760589a3dc8dc1
Fix clang warnings on Linux.

diff --git a/js/src/builtin/ParallelArray.cpp b/js/src/builtin/ParallelArray.cpp
--- a/js/src/builtin/ParallelArray.cpp
+++ b/js/src/builtin/ParallelArray.cpp
@@ -31,12 +31,14 @@ using namespace js::types;
 typedef ParallelArrayObject::IndexVector IndexVector;
 typedef ParallelArrayObject::IndexInfo IndexInfo;
 
+#ifdef DEBUG
 static bool
 ReportBadArg(JSContext *cx, const char *s = "")
 {
     JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, JSMSG_PAR_ARRAY_BAD_ARG, s);
     return false;
 }
+#endif // DEBUG
 
 bool
 ParallelArrayObject::IndexInfo::isInitialized() const
diff --git a/js/src/jsapi-tests/testValueABI.cpp b/js/src/jsapi-tests/testValueABI.cpp
--- a/js/src/jsapi-tests/testValueABI.cpp
+++ b/js/src/jsapi-tests/testValueABI.cpp
@@ -14,6 +14,11 @@
  * C++ because the default alignments of js::Value and jsval_layout differ.
  */
 
+#if defined(__clang__)
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Wreturn-type-c-linkage"
+#endif
+
 extern "C" {
 
 extern JSBool
@@ -27,6 +32,10 @@ C_jsvalAlignmentTest();
 
 }
 
+#if defined(__clang__)
+# pragma clang diagnostic pop
+#endif
+
 BEGIN_TEST(testValueABI_retparam)
 {
     JS::RootedObject obj(cx, JS_GetGlobalObject(cx));
diff --git a/js/src/jsapi.h b/js/src/jsapi.h
--- a/js/src/jsapi.h
+++ b/js/src/jsapi.h
@@ -32,6 +32,13 @@
 #include "js/Vector.h"
 #endif
 
+/* Silence clang warning about return type linkage. */
+#if defined(__clang__)
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Wreturn-type-c-linkage"
+#endif
+
+
 /************************************************************************/
 
 /* JS::Value can store a full int32_t. */
@@ -6300,4 +6307,9 @@ JS_DecodeInterpretedFunction(JSContext *
 
 JS_END_EXTERN_C
 
+/* Restore initial diagnostics. */
+#if defined(__clang__)
+# pragma clang diagnostic pop
+#endif
+
 #endif /* jsapi_h___ */
diff --git a/js/src/jsdbgapi.h b/js/src/jsdbgapi.h
--- a/js/src/jsdbgapi.h
+++ b/js/src/jsdbgapi.h
@@ -13,6 +13,12 @@
 #include "jsapi.h"
 #include "jsprvtd.h"
 
+/* Silence clang warning about return type linkage. */
+#if defined(__clang__)
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Wreturn-type-c-linkage"
+#endif
+
 JS_BEGIN_EXTERN_C
 
 extern JS_PUBLIC_API(JSCrossCompartmentCall *)
@@ -526,4 +532,9 @@ js_CallContextDebugHandler(JSContext *cx
 
 JS_END_EXTERN_C
 
+/* Restore initial diagnostics. */
+#if defined(__clang__)
+# pragma clang diagnostic pop
+#endif
+
 #endif /* jsdbgapi_h___ */
diff --git a/js/src/jstypedarray.cpp b/js/src/jstypedarray.cpp
--- a/js/src/jstypedarray.cpp
+++ b/js/src/jstypedarray.cpp
@@ -1831,6 +1831,7 @@ class TypedArrayTemplate
         JS_ASSERT(len <= length(thisTypedArrayObj) - offset);
         NativeType *dest = static_cast<NativeType*>(viewData(thisTypedArrayObj)) + offset;
         SkipRoot skip(cx, &dest);
+        (void)skip;
 
         if (ar->isDenseArray() && ar->getDenseArrayInitializedLength() >= len) {
             JS_ASSERT(ar->getArrayLength() == len);
diff --git a/js/src/vm/Debugger.cpp b/js/src/vm/Debugger.cpp
--- a/js/src/vm/Debugger.cpp
+++ b/js/src/vm/Debugger.cpp
@@ -3379,6 +3379,7 @@ DebuggerFrame_setOnPop(JSContext *cx, un
 {
     REQUIRE_ARGC("Debugger.Frame.set onPop", 1);
     THIS_FRAME(cx, argc, vp, "set onPop", args, thisobj, fp);
+    (void) fp;
     if (!IsValidHook(args[0])) {
         JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, JSMSG_NOT_CALLABLE_OR_UNDEFINED);
         return false;
diff --git a/mfbt/double-conversion/strtod.cc b/mfbt/double-conversion/strtod.cc
--- a/mfbt/double-conversion/strtod.cc
+++ b/mfbt/double-conversion/strtod.cc
@@ -515,11 +515,12 @@ float Strtof(Vector<const char> buffer, 
     double double_next2 = Double(double_next).NextDouble();
     f4 = static_cast<float>(double_next2);
   }
+  (void)f2;
   assert(f1 <= f2 && f2 <= f3 && f3 <= f4);
 
   // If the guess doesn't lie near a single-precision boundary we can simply
   // return its float-value.
-  if ((f1 == f4)) {
+  if (f1 == f4) {
     return float_guess;
   }