Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (203418 => 203419)
--- trunk/Source/_javascript_Core/ChangeLog 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/ChangeLog 2016-07-19 20:52:48 UTC (rev 203419)
@@ -1,3 +1,26 @@
+2016-07-19 Anders Carlsson <[email protected]>
+
+ WebCore-7602.1.42 fails to build: error: private field 'm_vm' is not used
+ https://bugs.webkit.org/show_bug.cgi?id=159944
+ rdar://problem/27420308
+
+ Reviewed by Dan Bernstein.
+
+ Wrap the m_vm declaration and initialization in conditional guards.
+
+ * Scripts/builtins/builtins_generate_internals_wrapper_header.py:
+ (generate_members):
+ * Scripts/builtins/builtins_generate_internals_wrapper_implementation.py:
+ (BuiltinsInternalsWrapperImplementationGenerator.generate_constructor):
+ Add guards.
+
+ * Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result:
+ * Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
+ * Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
+ * Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result:
+ * Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
+ Update expected results.
+
2016-07-19 Filip Pizlo <[email protected]>
REGRESSION (r203348-r203368): ASSERTION FAILED: from.isCell() && from.asCell()->JSCell::inherits(std::remove_pointer<To>::type::info())
Modified: trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_header.py (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_header.py 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_header.py 2016-07-19 20:52:48 UTC (rev 203419)
@@ -108,7 +108,8 @@
return '\n'.join(lines)
def generate_members(self):
- lines = [" JSC::VM& m_vm;"]
+ guards = set([object.annotations.get('conditional') for object in self.internals if 'conditional' in object.annotations])
+ lines = [BuiltinsGenerator.wrap_with_guard(" || ".join(guards), " JSC::VM& m_vm;")]
for object in self.internals:
member = " %s %s;" % (self.member_type(object), self.member_name(object))
lines.append(BuiltinsGenerator.wrap_with_guard(object.annotations.get('conditional'), member))
Modified: trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_implementation.py (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_implementation.py 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/builtins/builtins_generate_internals_wrapper_implementation.py 2016-07-19 20:52:48 UTC (rev 203419)
@@ -97,12 +97,15 @@
return WK_ucfirst(object.object_name) + "BuiltinFunctions"
def generate_constructor(self):
+ guards = set([object.annotations.get('conditional') for object in self.internals if 'conditional' in object.annotations])
lines = ["JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)",
- " : m_vm(vm)"]
+ BuiltinsGenerator.wrap_with_guard(" || ".join(guards), " : m_vm(vm)")]
for object in self.internals:
initializer = " , %s(m_vm)" % self.member_name(object)
lines.append(BuiltinsGenerator.wrap_with_guard(object.annotations.get('conditional'), initializer))
- lines.append("{\n}\n")
+ lines.append("{")
+ lines.append(" UNUSED_PARAM(vm);")
+ lines.append("}\n")
return '\n'.join(lines)
def property_macro(self, object):
Modified: trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result 2016-07-19 20:52:48 UTC (rev 203419)
@@ -391,6 +391,7 @@
JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)
: m_vm(vm)
{
+ UNUSED_PARAM(vm);
}
void JSBuiltinInternalFunctions::visit(JSC::SlotVisitor& visitor)
Modified: trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result 2016-07-19 20:52:48 UTC (rev 203419)
@@ -391,6 +391,7 @@
JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)
: m_vm(vm)
{
+ UNUSED_PARAM(vm);
}
void JSBuiltinInternalFunctions::visit(JSC::SlotVisitor& visitor)
Modified: trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result 2016-07-19 20:52:48 UTC (rev 203419)
@@ -379,7 +379,9 @@
#endif // ENABLE(STREAMS_API)
private:
+#if ENABLE(STREAMS_API)
JSC::VM& m_vm;
+#endif // ENABLE(STREAMS_API)
#if ENABLE(STREAMS_API)
GuardedInternalBuiltinBuiltinFunctions m_guardedInternalBuiltin;
#endif // ENABLE(STREAMS_API)
@@ -431,11 +433,14 @@
namespace WebCore {
JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)
+#if ENABLE(STREAMS_API)
: m_vm(vm)
+#endif // ENABLE(STREAMS_API)
#if ENABLE(STREAMS_API)
, m_guardedInternalBuiltin(m_vm)
#endif // ENABLE(STREAMS_API)
{
+ UNUSED_PARAM(vm);
}
void JSBuiltinInternalFunctions::visit(JSC::SlotVisitor& visitor)
Modified: trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result 2016-07-19 20:52:48 UTC (rev 203419)
@@ -376,6 +376,7 @@
JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)
: m_vm(vm)
{
+ UNUSED_PARAM(vm);
}
void JSBuiltinInternalFunctions::visit(JSC::SlotVisitor& visitor)
Modified: trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result (203418 => 203419)
--- trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result 2016-07-19 20:43:49 UTC (rev 203418)
+++ trunk/Source/_javascript_Core/Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result 2016-07-19 20:52:48 UTC (rev 203419)
@@ -430,7 +430,9 @@
#endif // ENABLE(STREAMS_API)
private:
+#if ENABLE(STREAMS_API)
JSC::VM& m_vm;
+#endif // ENABLE(STREAMS_API)
#if ENABLE(STREAMS_API)
XMLCasingTestBuiltinFunctions m_xmlCasingTest;
#endif // ENABLE(STREAMS_API)
@@ -482,11 +484,14 @@
namespace WebCore {
JSBuiltinInternalFunctions::JSBuiltinInternalFunctions(JSC::VM& vm)
+#if ENABLE(STREAMS_API)
: m_vm(vm)
+#endif // ENABLE(STREAMS_API)
#if ENABLE(STREAMS_API)
, m_xmlCasingTest(m_vm)
#endif // ENABLE(STREAMS_API)
{
+ UNUSED_PARAM(vm);
}
void JSBuiltinInternalFunctions::visit(JSC::SlotVisitor& visitor)