<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[198813] trunk</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/198813">198813</a></dd>
<dt>Author</dt> <dd>sbarati@apple.com</dd>
<dt>Date</dt> <dd>2016-03-29 17:24:16 -0700 (Tue, 29 Mar 2016)</dd>
</dl>
<h3>Log Message</h3>
<pre>Fix typos in our error messages and remove some trailing periods
https://bugs.webkit.org/show_bug.cgi?id=155985
Reviewed by Mark Lam.
Source/JavaScriptCore:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* runtime/ArrayConstructor.h:
(JSC::isArray):
* runtime/ProxyConstructor.cpp:
(JSC::makeRevocableProxy):
(JSC::proxyRevocableConstructorThrowError):
(JSC::ProxyConstructor::finishCreation):
(JSC::constructProxyObject):
* runtime/ProxyObject.cpp:
(JSC::ProxyObject::finishCreation):
(JSC::performProxyGet):
(JSC::ProxyObject::performInternalMethodGetOwnProperty):
(JSC::ProxyObject::performHasProperty):
(JSC::ProxyObject::performPut):
(JSC::performProxyCall):
(JSC::performProxyConstruct):
(JSC::ProxyObject::performDelete):
(JSC::ProxyObject::performPreventExtensions):
(JSC::ProxyObject::performIsExtensible):
(JSC::ProxyObject::performDefineOwnProperty):
(JSC::ProxyObject::performGetOwnPropertyNames):
(JSC::ProxyObject::performSetPrototype):
(JSC::ProxyObject::performGetPrototype):
* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncStartsWith):
(JSC::stringProtoFuncEndsWith):
(JSC::stringProtoFuncIncludes):
* runtime/Structure.cpp:
(JSC::Structure::preventExtensionsTransition):
* tests/stress/proxy-basic.js:
* tests/stress/proxy-construct.js:
(throw.new.Error):
(assert):
* tests/stress/proxy-define-own-property.js:
(assert):
(throw.new.Error):
(i.catch):
(assert.set get catch):
* tests/stress/proxy-delete.js:
(assert):
* tests/stress/proxy-get-own-property.js:
(assert):
(i.catch):
(set get let):
* tests/stress/proxy-get-prototype-of.js:
(assert):
(assert.get let):
(assert.get catch):
* tests/stress/proxy-has-property.js:
(assert):
* tests/stress/proxy-is-array.js:
(test):
* tests/stress/proxy-is-extensible.js:
(assert):
* tests/stress/proxy-json.js:
(assert):
(test):
* tests/stress/proxy-own-keys.js:
(assert):
(i.catch):
* tests/stress/proxy-prevent-extensions.js:
(assert):
* tests/stress/proxy-property-descriptor.js:
* tests/stress/proxy-revoke.js:
(assert):
(throw.new.Error.):
(throw.new.Error):
(shouldThrowNullHandler):
* tests/stress/proxy-set-prototype-of.js:
(assert.set let):
(assert.set catch):
(assert):
(set catch):
* tests/stress/proxy-set.js:
(throw.new.Error.let.handler.set 45):
(throw.new.Error):
* tests/stress/proxy-with-private-symbols.js:
(assert):
* tests/stress/proxy-with-unbalanced-getter-setter.js:
(assert):
* tests/stress/reflect-set-proxy-set.js:
(throw.new.Error.let.handler.set 45):
(throw.new.Error):
* tests/stress/reflect-set-receiver-proxy-set.js:
(let.handler.set 45):
(catch):
* tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js:
(test):
(test.get let):
LayoutTests:
* js/string-includes-expected.txt:</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsjsstringincludesexpectedtxt">trunk/LayoutTests/js/string-includes-expected.txt</a></li>
<li><a href="#trunkSourceJavaScriptCoreChangeLog">trunk/Source/JavaScriptCore/ChangeLog</a></li>
<li><a href="#trunkSourceJavaScriptCorebytecompilerBytecodeGeneratorcpp">trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeArrayConstructorh">trunk/Source/JavaScriptCore/runtime/ArrayConstructor.h</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeProxyConstructorcpp">trunk/Source/JavaScriptCore/runtime/ProxyConstructor.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeProxyObjectcpp">trunk/Source/JavaScriptCore/runtime/ProxyObject.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeStringPrototypecpp">trunk/Source/JavaScriptCore/runtime/StringPrototype.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoreruntimeStructurecpp">trunk/Source/JavaScriptCore/runtime/Structure.cpp</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxybasicjs">trunk/Source/JavaScriptCore/tests/stress/proxy-basic.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyconstructjs">trunk/Source/JavaScriptCore/tests/stress/proxy-construct.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxydefineownpropertyjs">trunk/Source/JavaScriptCore/tests/stress/proxy-define-own-property.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxydeletejs">trunk/Source/JavaScriptCore/tests/stress/proxy-delete.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxygetownpropertyjs">trunk/Source/JavaScriptCore/tests/stress/proxy-get-own-property.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxygetprototypeofjs">trunk/Source/JavaScriptCore/tests/stress/proxy-get-prototype-of.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyhaspropertyjs">trunk/Source/JavaScriptCore/tests/stress/proxy-has-property.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyisarrayjs">trunk/Source/JavaScriptCore/tests/stress/proxy-is-array.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyisextensiblejs">trunk/Source/JavaScriptCore/tests/stress/proxy-is-extensible.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyjsonjs">trunk/Source/JavaScriptCore/tests/stress/proxy-json.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyownkeysjs">trunk/Source/JavaScriptCore/tests/stress/proxy-own-keys.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxypreventextensionsjs">trunk/Source/JavaScriptCore/tests/stress/proxy-prevent-extensions.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxypropertydescriptorjs">trunk/Source/JavaScriptCore/tests/stress/proxy-property-descriptor.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxyrevokejs">trunk/Source/JavaScriptCore/tests/stress/proxy-revoke.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxysetprototypeofjs">trunk/Source/JavaScriptCore/tests/stress/proxy-set-prototype-of.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxysetjs">trunk/Source/JavaScriptCore/tests/stress/proxy-set.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxywithprivatesymbolsjs">trunk/Source/JavaScriptCore/tests/stress/proxy-with-private-symbols.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressproxywithunbalancedgettersetterjs">trunk/Source/JavaScriptCore/tests/stress/proxy-with-unbalanced-getter-setter.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressreflectsetproxysetjs">trunk/Source/JavaScriptCore/tests/stress/reflect-set-proxy-set.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressreflectsetreceiverproxysetjs">trunk/Source/JavaScriptCore/tests/stress/reflect-set-receiver-proxy-set.js</a></li>
<li><a href="#trunkSourceJavaScriptCoretestsstressstringprototypemethodsendsWithstartsWithincludescorrectnessjs">trunk/Source/JavaScriptCore/tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/LayoutTests/ChangeLog        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2016-03-29 Saam barati <sbarati@apple.com>
+
+ Fix typos in our error messages and remove some trailing periods
+ https://bugs.webkit.org/show_bug.cgi?id=155985
+
+ Reviewed by Mark Lam.
+
+ * js/string-includes-expected.txt:
+
</ins><span class="cx"> 2016-03-29 Keith Miller <keith_miller@apple.com>
</span><span class="cx">
</span><span class="cx"> [ES6] Add support for Symbol.isConcatSpreadable.
</span></span></pre></div>
<a id="trunkLayoutTestsjsstringincludesexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/js/string-includes-expected.txt (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/js/string-includes-expected.txt        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/LayoutTests/js/string-includes-expected.txt        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -118,9 +118,9 @@
</span><span class="cx"> PASS (function() { var f = String.prototype.startsWith; (function() { f('a'); })(); })() threw exception TypeError: Type error.
</span><span class="cx"> PASS (function() { var f = String.prototype.endsWith; (function() { f('a'); })(); })() threw exception TypeError: Type error.
</span><span class="cx"> PASS (function() { var f = String.prototype.includes; (function() { f('a'); })(); })() threw exception TypeError: Type error.
</span><del>-PASS 'foo bar'.startsWith(/w+/) threw exception TypeError: Argument to String.prototype.startsWith cannot be a RegExp..
-PASS 'foo bar'.endsWith(/w+/) threw exception TypeError: Argument to String.prototype.endsWith cannot be a RegExp..
-PASS 'foo bar'.includes(/w+/) threw exception TypeError: Argument to String.prototype.includes cannot be a RegExp..
</del><ins>+PASS 'foo bar'.startsWith(/w+/) threw exception TypeError: Argument to String.prototype.startsWith cannot be a RegExp.
+PASS 'foo bar'.endsWith(/w+/) threw exception TypeError: Argument to String.prototype.endsWith cannot be a RegExp.
+PASS 'foo bar'.includes(/w+/) threw exception TypeError: Argument to String.prototype.includes cannot be a RegExp.
</ins><span class="cx"> PASS stringToSearchIn.startsWith(searchString, startOffset) is true
</span><span class="cx"> PASS sideEffect == 'ABC' is true
</span><span class="cx"> PASS stringToSearchIn.startsWith(searchString, startOffset) threw exception error.
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/ChangeLog (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/ChangeLog        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/ChangeLog        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,3 +1,101 @@
</span><ins>+2016-03-29 Saam barati <sbarati@apple.com>
+
+ Fix typos in our error messages and remove some trailing periods
+ https://bugs.webkit.org/show_bug.cgi?id=155985
+
+ Reviewed by Mark Lam.
+
+ * bytecompiler/BytecodeGenerator.cpp:
+ (JSC::BytecodeGenerator::BytecodeGenerator):
+ * runtime/ArrayConstructor.h:
+ (JSC::isArray):
+ * runtime/ProxyConstructor.cpp:
+ (JSC::makeRevocableProxy):
+ (JSC::proxyRevocableConstructorThrowError):
+ (JSC::ProxyConstructor::finishCreation):
+ (JSC::constructProxyObject):
+ * runtime/ProxyObject.cpp:
+ (JSC::ProxyObject::finishCreation):
+ (JSC::performProxyGet):
+ (JSC::ProxyObject::performInternalMethodGetOwnProperty):
+ (JSC::ProxyObject::performHasProperty):
+ (JSC::ProxyObject::performPut):
+ (JSC::performProxyCall):
+ (JSC::performProxyConstruct):
+ (JSC::ProxyObject::performDelete):
+ (JSC::ProxyObject::performPreventExtensions):
+ (JSC::ProxyObject::performIsExtensible):
+ (JSC::ProxyObject::performDefineOwnProperty):
+ (JSC::ProxyObject::performGetOwnPropertyNames):
+ (JSC::ProxyObject::performSetPrototype):
+ (JSC::ProxyObject::performGetPrototype):
+ * runtime/StringPrototype.cpp:
+ (JSC::stringProtoFuncStartsWith):
+ (JSC::stringProtoFuncEndsWith):
+ (JSC::stringProtoFuncIncludes):
+ * runtime/Structure.cpp:
+ (JSC::Structure::preventExtensionsTransition):
+ * tests/stress/proxy-basic.js:
+ * tests/stress/proxy-construct.js:
+ (throw.new.Error):
+ (assert):
+ * tests/stress/proxy-define-own-property.js:
+ (assert):
+ (throw.new.Error):
+ (i.catch):
+ (assert.set get catch):
+ * tests/stress/proxy-delete.js:
+ (assert):
+ * tests/stress/proxy-get-own-property.js:
+ (assert):
+ (i.catch):
+ (set get let):
+ * tests/stress/proxy-get-prototype-of.js:
+ (assert):
+ (assert.get let):
+ (assert.get catch):
+ * tests/stress/proxy-has-property.js:
+ (assert):
+ * tests/stress/proxy-is-array.js:
+ (test):
+ * tests/stress/proxy-is-extensible.js:
+ (assert):
+ * tests/stress/proxy-json.js:
+ (assert):
+ (test):
+ * tests/stress/proxy-own-keys.js:
+ (assert):
+ (i.catch):
+ * tests/stress/proxy-prevent-extensions.js:
+ (assert):
+ * tests/stress/proxy-property-descriptor.js:
+ * tests/stress/proxy-revoke.js:
+ (assert):
+ (throw.new.Error.):
+ (throw.new.Error):
+ (shouldThrowNullHandler):
+ * tests/stress/proxy-set-prototype-of.js:
+ (assert.set let):
+ (assert.set catch):
+ (assert):
+ (set catch):
+ * tests/stress/proxy-set.js:
+ (throw.new.Error.let.handler.set 45):
+ (throw.new.Error):
+ * tests/stress/proxy-with-private-symbols.js:
+ (assert):
+ * tests/stress/proxy-with-unbalanced-getter-setter.js:
+ (assert):
+ * tests/stress/reflect-set-proxy-set.js:
+ (throw.new.Error.let.handler.set 45):
+ (throw.new.Error):
+ * tests/stress/reflect-set-receiver-proxy-set.js:
+ (let.handler.set 45):
+ (catch):
+ * tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js:
+ (test):
+ (test.get let):
+
</ins><span class="cx"> 2016-03-29 Keith Miller <keith_miller@apple.com>
</span><span class="cx">
</span><span class="cx"> [ES6] Add support for Symbol.isConcatSpreadable.
</span></span></pre></div>
<a id="trunkSourceJavaScriptCorebytecompilerBytecodeGeneratorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -412,7 +412,7 @@
</span><span class="cx"> }
</span><span class="cx"> } else if (isSimpleParameterList) {
</span><span class="cx"> // Create the formal parameters the normal way. Any of them could be captured, or not. If
</span><del>- // captured, lift them into the scope. We can not do this if we have default parameter expressions
</del><ins>+ // captured, lift them into the scope. We cannot do this if we have default parameter expressions
</ins><span class="cx"> // because when default parameter expressions exist, they belong in their own lexical environment
</span><span class="cx"> // separate from the "var" lexical environment.
</span><span class="cx"> for (unsigned i = 0; i < parameters.size(); ++i) {
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeArrayConstructorh"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/ArrayConstructor.h (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/ArrayConstructor.h        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/runtime/ArrayConstructor.h        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -82,7 +82,7 @@
</span><span class="cx">
</span><span class="cx"> ProxyObject* proxy = jsCast<ProxyObject*>(argument);
</span><span class="cx"> if (proxy->isRevoked()) {
</span><del>- throwTypeError(exec, ASCIILiteral("Array.isArray can not be called on a Proxy that has been revoked."));
</del><ins>+ throwTypeError(exec, ASCIILiteral("Array.isArray cannot be called on a Proxy that has been revoked"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> argument = proxy->target();
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeProxyConstructorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/ProxyConstructor.cpp (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/ProxyConstructor.cpp        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/runtime/ProxyConstructor.cpp        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -57,7 +57,7 @@
</span><span class="cx"> static EncodedJSValue JSC_HOST_CALL makeRevocableProxy(ExecState* exec)
</span><span class="cx"> {
</span><span class="cx"> if (exec->argumentCount() < 2)
</span><del>- return throwVMTypeError(exec, ASCIILiteral("Proxy.revocable needs to be called with two arguments: the target and the handler."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("Proxy.revocable needs to be called with two arguments: the target and the handler"));
</ins><span class="cx">
</span><span class="cx"> VM& vm = exec->vm();
</span><span class="cx"> ArgList args(exec);
</span><span class="lines">@@ -81,7 +81,7 @@
</span><span class="cx">
</span><span class="cx"> static EncodedJSValue JSC_HOST_CALL proxyRevocableConstructorThrowError(ExecState* exec)
</span><span class="cx"> {
</span><del>- return throwVMTypeError(exec, ASCIILiteral("Proxy.revocable can not be constructed. It can only be called."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("Proxy.revocable cannot be constructed. It can only be called"));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void ProxyConstructor::finishCreation(VM& vm, const char* name, JSGlobalObject* globalObject)
</span><span class="lines">@@ -95,7 +95,7 @@
</span><span class="cx"> static EncodedJSValue JSC_HOST_CALL constructProxyObject(ExecState* exec)
</span><span class="cx"> {
</span><span class="cx"> if (exec->newTarget().isUndefined())
</span><del>- return throwVMTypeError(exec, ASCIILiteral("new.target of Proxy construct should not be undefined."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("new.target of Proxy construct should not be undefined"));
</ins><span class="cx">
</span><span class="cx"> ArgList args(exec);
</span><span class="cx"> JSValue target = args.at(0);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeProxyObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/ProxyObject.cpp (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/ProxyObject.cpp        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/runtime/ProxyObject.cpp        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -65,7 +65,7 @@
</span><span class="cx"> }
</span><span class="cx"> if (ProxyObject* targetAsProxy = jsDynamicCast<ProxyObject*>(target)) {
</span><span class="cx"> if (targetAsProxy->handler().isNull()) {
</span><del>- throwTypeError(exec, ASCIILiteral("If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked."));
</del><ins>+ throwTypeError(exec, ASCIILiteral("If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked"));
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -90,7 +90,7 @@
</span><span class="cx"> m_handler.set(vm, this, handler);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static const char* s_proxyAlreadyRevokedErrorMessage = "Proxy has already been revoked. No more operations are allowed to be performed on it.";
</del><ins>+static const char* s_proxyAlreadyRevokedErrorMessage = "Proxy has already been revoked. No more operations are allowed to be performed on it";
</ins><span class="cx">
</span><span class="cx"> static EncodedJSValue performProxyGet(ExecState* exec, EncodedJSValue thisValue, PropertyName propertyName)
</span><span class="cx"> {
</span><span class="lines">@@ -133,7 +133,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue getHandler = handler->getMethod(exec, callData, callType, vm.propertyNames->get, ASCIILiteral("'get' property of a Proxy's handler object should be callable."));
</del><ins>+ JSValue getHandler = handler->getMethod(exec, callData, callType, vm.propertyNames->get, ASCIILiteral("'get' property of a Proxy's handler object should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return JSValue::encode(jsUndefined());
</span><span class="cx">
</span><span class="lines">@@ -152,10 +152,10 @@
</span><span class="cx"> if (target->getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx"> if (descriptor.isDataDescriptor() && !descriptor.configurable() && !descriptor.writable()) {
</span><span class="cx"> if (!sameValue(exec, descriptor.value(), trapResult))
</span><del>- return throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property"));
</ins><span class="cx"> } else if (descriptor.isAccessorDescriptor() && !descriptor.configurable() && descriptor.getter().isUndefined()) {
</span><span class="cx"> if (!trapResult.isUndefined())
</span><del>- return throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined"));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -186,7 +186,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue getOwnPropertyDescriptorMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "getOwnPropertyDescriptor"), ASCIILiteral("'getOwnPropertyDescriptor' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue getOwnPropertyDescriptorMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "getOwnPropertyDescriptor"), ASCIILiteral("'getOwnPropertyDescriptor' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> if (getOwnPropertyDescriptorMethod.isUndefined())
</span><span class="lines">@@ -200,7 +200,7 @@
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> if (!trapResult.isUndefined() && !trapResult.isObject()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("result of 'getOwnPropertyDescriptor' call should either be an Object or undefined."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("result of 'getOwnPropertyDescriptor' call should either be an Object or undefined"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -213,7 +213,7 @@
</span><span class="cx"> if (!isTargetPropertyDescriptorDefined)
</span><span class="cx"> return false;
</span><span class="cx"> if (!targetPropertyDescriptor.configurable()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> // FIXME: this doesn't work if 'target' is another Proxy. We don't have isExtensible implemented in a way that fits w/ Proxys.
</span><span class="lines">@@ -225,7 +225,7 @@
</span><span class="cx"> // FIXME: Come up with a test for this error. I'm not sure how to because
</span><span class="cx"> // Object.seal(o) will make all fields [[Configurable]] false.
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=154376
</span><del>- throwVMTypeError(exec, ASCIILiteral("When 'getOwnPropertyDescriptor' returns undefined, the 'target' of a Proxy should be extensible."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("When 'getOwnPropertyDescriptor' returns undefined, the 'target' of a Proxy should be extensible"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -243,13 +243,13 @@
</span><span class="cx"> bool valid = validateAndApplyPropertyDescriptor(exec, nullptr, propertyName, isExtensible,
</span><span class="cx"> trapResultAsDescriptor, isTargetPropertyDescriptorDefined, targetPropertyDescriptor, throwException);
</span><span class="cx"> if (!valid) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!trapResultAsDescriptor.configurable()) {
</span><span class="cx"> if (!isTargetPropertyDescriptorDefined || targetPropertyDescriptor.configurable()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Result from 'getOwnPropertyDescriptor' can't be non-configurable when the 'target' doesn't have it as an own property or if it is a configurable own property on 'target'."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Result from 'getOwnPropertyDescriptor' can't be non-configurable when the 'target' doesn't have it as an own property or if it is a configurable own property on 'target'"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -289,7 +289,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue hasMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->has, ASCIILiteral("'has' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue hasMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->has, ASCIILiteral("'has' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> if (hasMethod.isUndefined())
</span><span class="lines">@@ -313,14 +313,14 @@
</span><span class="cx"> return false;
</span><span class="cx"> if (isPropertyDescriptorDefined) {
</span><span class="cx"> if (!descriptor.configurable()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy 'has' must return 'true' for non-configurable properties."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy 'has' must return 'true' for non-configurable properties"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> bool isExtensible = target->isExtensible(exec);
</span><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> if (!isExtensible) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy 'has' must return 'true' for a non-extensible 'target' object with a configurable property."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy 'has' must return 'true' for a non-extensible 'target' object with a configurable property"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -384,7 +384,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue setMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->set, ASCIILiteral("'set' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue setMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->set, ASCIILiteral("'set' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> JSObject* target = this->target();
</span><span class="lines">@@ -409,11 +409,11 @@
</span><span class="cx"> if (target->getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx"> if (descriptor.isDataDescriptor() && !descriptor.configurable() && !descriptor.writable()) {
</span><span class="cx"> if (!sameValue(exec, descriptor.value(), putValue)) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> } else if (descriptor.isAccessorDescriptor() && !descriptor.configurable() && descriptor.setter().isUndefined()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -467,7 +467,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue applyMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "apply"), ASCIILiteral("'apply' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue applyMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "apply"), ASCIILiteral("'apply' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return JSValue::encode(jsUndefined());
</span><span class="cx"> JSObject* target = proxy->target();
</span><span class="lines">@@ -512,7 +512,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue constructMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "construct"), ASCIILiteral("'construct' property of a Proxy's handler should be constructible."));
</del><ins>+ JSValue constructMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "construct"), ASCIILiteral("'construct' property of a Proxy's handler should be constructible"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return JSValue::encode(jsUndefined());
</span><span class="cx"> JSObject* target = proxy->target();
</span><span class="lines">@@ -534,7 +534,7 @@
</span><span class="cx"> if (exec->hadException())
</span><span class="cx"> return JSValue::encode(jsUndefined());
</span><span class="cx"> if (!result.isObject())
</span><del>- return throwVMTypeError(exec, ASCIILiteral("Result from Proxy handler's 'construct' method should be an object."));
</del><ins>+ return throwVMTypeError(exec, ASCIILiteral("Result from Proxy handler's 'construct' method should be an object"));
</ins><span class="cx"> return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -568,7 +568,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue deletePropertyMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "deleteProperty"), ASCIILiteral("'deleteProperty' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue deletePropertyMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "deleteProperty"), ASCIILiteral("'deleteProperty' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> JSObject* target = this->target();
</span><span class="lines">@@ -592,7 +592,7 @@
</span><span class="cx"> PropertyDescriptor descriptor;
</span><span class="cx"> if (target->getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx"> if (!descriptor.configurable()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -637,7 +637,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue preventExtensionsMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "preventExtensions"), ASCIILiteral("'preventExtensions' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue preventExtensionsMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "preventExtensions"), ASCIILiteral("'preventExtensions' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> JSObject* target = this->target();
</span><span class="lines">@@ -659,7 +659,7 @@
</span><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx"> if (targetIsExtensible) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -685,7 +685,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue isExtensibleMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "isExtensible"), ASCIILiteral("'isExtensible' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue isExtensibleMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "isExtensible"), ASCIILiteral("'isExtensible' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="lines">@@ -710,11 +710,11 @@
</span><span class="cx"> if (trapResultAsBool != isTargetExtensible) {
</span><span class="cx"> if (isTargetExtensible) {
</span><span class="cx"> ASSERT(!trapResultAsBool);
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true"));
</ins><span class="cx"> } else {
</span><span class="cx"> ASSERT(!isTargetExtensible);
</span><span class="cx"> ASSERT(trapResultAsBool);
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false"));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -747,7 +747,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue definePropertyMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->defineProperty, ASCIILiteral("'defineProperty' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue definePropertyMethod = handler->getMethod(exec, callData, callType, vm.propertyNames->defineProperty, ASCIILiteral("'defineProperty' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (vm.exception())
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="lines">@@ -785,11 +785,11 @@
</span><span class="cx">
</span><span class="cx"> if (!isTargetDescriptorDefined) {
</span><span class="cx"> if (!targetIsExtensible) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> if (settingConfigurableToFalse) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -802,11 +802,11 @@
</span><span class="cx"> bool throwException = false;
</span><span class="cx"> bool isCompatibleDescriptor = validateAndApplyPropertyDescriptor(exec, nullptr, propertyName, targetIsExtensible, descriptor, isCurrentDefined, current, throwException);
</span><span class="cx"> if (!isCompatibleDescriptor) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx"> if (settingConfigurableToFalse && targetDescriptor.configurable()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap did not define a non-configurable property on its target even though the input descriptor to the trap said it must do so."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'defineProperty' trap did not define a non-configurable property on its target even though the input descriptor to the trap said it must do so"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -831,7 +831,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue ownKeysMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "ownKeys"), ASCIILiteral("'ownKeys' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue ownKeysMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "ownKeys"), ASCIILiteral("'ownKeys' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return;
</span><span class="cx"> JSObject* target = this->target();
</span><span class="lines">@@ -883,7 +883,7 @@
</span><span class="cx"> return dontExitEarly;
</span><span class="cx"> };
</span><span class="cx">
</span><del>- createListFromArrayLike(exec, arrayLikeObject, dontThrowAnExceptionTypeFilter, ASCIILiteral("Proxy handler's 'ownKeys' method must return a array-like object containing only Strings and Symbols."), addPropName);
</del><ins>+ createListFromArrayLike(exec, arrayLikeObject, dontThrowAnExceptionTypeFilter, ASCIILiteral("Proxy handler's 'ownKeys' method must return an array-like object containing only Strings and Symbols"), addPropName);
</ins><span class="cx"> if (exec->hadException())
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -926,7 +926,7 @@
</span><span class="cx"> for (UniquedStringImpl* impl : targetNonConfigurableKeys) {
</span><span class="cx"> bool contains = removeIfContainedInUncheckedResultKeys(impl);
</span><span class="cx"> if (!contains) {
</span><del>- throwVMTypeError(exec, makeString("Proxy object's 'target' has the non-configurable property '", String(impl), "' that was not in the result from the 'ownKeys' trap."));
</del><ins>+ throwVMTypeError(exec, makeString("Proxy object's 'target' has the non-configurable property '", String(impl), "' that was not in the result from the 'ownKeys' trap"));
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -937,7 +937,7 @@
</span><span class="cx"> for (UniquedStringImpl* impl : targetConfigurableKeys) {
</span><span class="cx"> bool contains = removeIfContainedInUncheckedResultKeys(impl);
</span><span class="cx"> if (!contains) {
</span><del>- throwVMTypeError(exec, makeString("Proxy object's non-extensible 'target' has configurable property '", String(impl), "' that was not in the result from the 'ownKeys' trap."));
</del><ins>+ throwVMTypeError(exec, makeString("Proxy object's non-extensible 'target' has configurable property '", String(impl), "' that was not in the result from the 'ownKeys' trap"));
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -950,7 +950,7 @@
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> if (totalSize) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys"));
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -992,7 +992,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue setPrototypeOfMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "setPrototypeOf"), ASCIILiteral("'setPrototypeOf' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue setPrototypeOfMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "setPrototypeOf"), ASCIILiteral("'setPrototypeOf' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (vm.exception())
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="lines">@@ -1013,7 +1013,7 @@
</span><span class="cx">
</span><span class="cx"> if (!trapResultAsBool) {
</span><span class="cx"> if (shouldThrowIfCantSet)
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1027,7 +1027,7 @@
</span><span class="cx"> if (vm.exception())
</span><span class="cx"> return false;
</span><span class="cx"> if (!sameValue(exec, prototype, targetPrototype)) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy 'setPrototypeOf' trap returned true when its target is non-extensible and the new prototype value is not the same as the current prototype value. It should have returned false."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy 'setPrototypeOf' trap returned true when its target is non-extensible and the new prototype value is not the same as the current prototype value. It should have returned false"));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1052,7 +1052,7 @@
</span><span class="cx"> JSObject* handler = jsCast<JSObject*>(handlerValue);
</span><span class="cx"> CallData callData;
</span><span class="cx"> CallType callType;
</span><del>- JSValue getPrototypeOfMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "getPrototypeOf"), ASCIILiteral("'getPrototypeOf' property of a Proxy's handler should be callable."));
</del><ins>+ JSValue getPrototypeOfMethod = handler->getMethod(exec, callData, callType, makeIdentifier(vm, "getPrototypeOf"), ASCIILiteral("'getPrototypeOf' property of a Proxy's handler should be callable"));
</ins><span class="cx"> if (vm.exception())
</span><span class="cx"> return JSValue();
</span><span class="cx">
</span><span class="lines">@@ -1067,7 +1067,7 @@
</span><span class="cx"> return JSValue();
</span><span class="cx">
</span><span class="cx"> if (!trapResult.isObject() && !trapResult.isNull()) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'getPrototypeOf' trap should either return an object or null."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy handler's 'getPrototypeOf' trap should either return an object or null"));
</ins><span class="cx"> return JSValue();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1081,7 +1081,7 @@
</span><span class="cx"> if (vm.exception())
</span><span class="cx"> return JSValue();
</span><span class="cx"> if (!sameValue(exec, targetPrototype, trapResult)) {
</span><del>- throwVMTypeError(exec, ASCIILiteral("Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype."));
</del><ins>+ throwVMTypeError(exec, ASCIILiteral("Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype"));
</ins><span class="cx"> return JSValue();
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeStringPrototypecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/StringPrototype.cpp (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/StringPrototype.cpp        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/runtime/StringPrototype.cpp        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1955,7 +1955,7 @@
</span><span class="cx"> if (vm.exception())
</span><span class="cx"> return JSValue::encode(JSValue());
</span><span class="cx"> if (isRegularExpression)
</span><del>- return throwVMTypeError(exec, "Argument to String.prototype.startsWith cannot be a RegExp.");
</del><ins>+ return throwVMTypeError(exec, "Argument to String.prototype.startsWith cannot be a RegExp");
</ins><span class="cx">
</span><span class="cx"> String searchString = a0.toString(exec)->value(exec);
</span><span class="cx"> if (exec->hadException())
</span><span class="lines">@@ -1991,7 +1991,7 @@
</span><span class="cx"> if (vm.exception())
</span><span class="cx"> return JSValue::encode(JSValue());
</span><span class="cx"> if (isRegularExpression)
</span><del>- return throwVMTypeError(exec, "Argument to String.prototype.endsWith cannot be a RegExp.");
</del><ins>+ return throwVMTypeError(exec, "Argument to String.prototype.endsWith cannot be a RegExp");
</ins><span class="cx">
</span><span class="cx"> String searchString = a0.toString(exec)->value(exec);
</span><span class="cx"> if (exec->hadException())
</span><span class="lines">@@ -2028,7 +2028,7 @@
</span><span class="cx"> if (vm.exception())
</span><span class="cx"> return JSValue::encode(JSValue());
</span><span class="cx"> if (isRegularExpression)
</span><del>- return throwVMTypeError(exec, "Argument to String.prototype.includes cannot be a RegExp.");
</del><ins>+ return throwVMTypeError(exec, "Argument to String.prototype.includes cannot be a RegExp");
</ins><span class="cx">
</span><span class="cx"> String searchString = a0.toString(exec)->value(exec);
</span><span class="cx"> if (exec->hadException())
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreruntimeStructurecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/runtime/Structure.cpp (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/runtime/Structure.cpp        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/runtime/Structure.cpp        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -630,7 +630,7 @@
</span><span class="cx"> {
</span><span class="cx"> Structure* transition = create(vm, structure);
</span><span class="cx">
</span><del>- // Don't set m_offset, as one can not transition to this.
</del><ins>+ // Don't set m_offset, as one cannot transition to this.
</ins><span class="cx">
</span><span class="cx"> DeferGC deferGC(vm.heap);
</span><span class="cx"> structure->materializePropertyMapIfNecessary(vm, deferGC);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxybasicjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-basic.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-basic.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-basic.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -133,7 +133,7 @@
</span><span class="cx"> proxy["foo"];
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: 'get' property of a Proxy's handler object should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'get' property of a Proxy's handler object should be callable");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyconstructjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-construct.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-construct.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-construct.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -15,7 +15,7 @@
</span><span class="cx"> new proxy;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: 'construct' property of a Proxy's handler should be constructible.");
</del><ins>+ assert(e.toString() === "TypeError: 'construct' property of a Proxy's handler should be constructible");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> new proxy;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: 'construct' property of a Proxy's handler should be constructible.");
</del><ins>+ assert(e.toString() === "TypeError: 'construct' property of a Proxy's handler should be constructible");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -121,7 +121,7 @@
</span><span class="cx"> new proxy;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object.");
</del><ins>+ assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -141,7 +141,7 @@
</span><span class="cx"> new proxy;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object.");
</del><ins>+ assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -161,7 +161,7 @@
</span><span class="cx"> new proxy;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object.");
</del><ins>+ assert(e.toString() === "TypeError: Result from Proxy handler's 'construct' method should be an object");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxydefineownpropertyjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-define-own-property.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-define-own-property.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-define-own-property.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -20,7 +20,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: 'defineProperty' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'defineProperty' property of a Proxy's handler should be callable");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -213,7 +213,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -243,7 +243,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -277,7 +277,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a non-configurable property on its target even though the input descriptor to the trap said it must do so.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a non-configurable property on its target even though the input descriptor to the trap said it must do so");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -325,7 +325,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -368,7 +368,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -412,7 +412,7 @@
</span><span class="cx"> });
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -604,7 +604,7 @@
</span><span class="cx"> let result = Reflect.defineProperty(proxy, "x", {
</span><span class="cx"> writable: true,
</span><span class="cx"> configurable: false,
</span><del>- value: "whatever value goes here."
</del><ins>+ value: "whatever value goes here"
</ins><span class="cx"> });
</span><span class="cx"> assert(!result);
</span><span class="cx"> assert(target.x === 55);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxydeletejs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-delete.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-delete.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-delete.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("bad assertion.");
</del><ins>+ throw new Error("bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -59,7 +59,7 @@
</span><span class="cx"> try {
</span><span class="cx"> delete proxy.x;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'deleteProperty' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'deleteProperty' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -85,7 +85,7 @@
</span><span class="cx"> try {
</span><span class="cx"> delete proxy.x;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxygetownpropertyjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-get-own-property.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-get-own-property.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-get-own-property.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("bad assertion.");
</del><ins>+ throw new Error("bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -35,7 +35,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: result of 'getOwnPropertyDescriptor' call should either be an Object or undefined.");
</del><ins>+ assert(e.toString() === "TypeError: result of 'getOwnPropertyDescriptor' call should either be an Object or undefined");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -61,7 +61,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable.");
</del><ins>+ assert(e.toString() === "TypeError: When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' can't be non-configurable when the 'target' doesn't have it as an own property or if it is a configurable own property on 'target'.");
</del><ins>+ assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' can't be non-configurable when the 'target' doesn't have it as an own property or if it is a configurable own property on 'target'");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -113,7 +113,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.");
</del><ins>+ assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -131,7 +131,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'getOwnPropertyDescriptor' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'getOwnPropertyDescriptor' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -367,7 +367,7 @@
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.");
</del><ins>+ assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -415,7 +415,7 @@
</span><span class="cx"> Object.getOwnPropertyDescriptor(proxy, "x");
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.");
</del><ins>+ assert(e.toString() === "TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxygetprototypeofjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-get-prototype-of.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-get-prototype-of.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-get-prototype-of.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -116,7 +116,7 @@
</span><span class="cx"> try {
</span><span class="cx"> get();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'getPrototypeOf' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'getPrototypeOf' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -144,7 +144,7 @@
</span><span class="cx"> try {
</span><span class="cx"> get();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -172,7 +172,7 @@
</span><span class="cx"> try {
</span><span class="cx"> get();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -201,7 +201,7 @@
</span><span class="cx"> try {
</span><span class="cx"> get();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -231,7 +231,7 @@
</span><span class="cx"> try {
</span><span class="cx"> get();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyhaspropertyjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-has-property.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-has-property.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-has-property.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -145,7 +145,7 @@
</span><span class="cx"> try {
</span><span class="cx"> "x" in proxy;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -167,7 +167,7 @@
</span><span class="cx"> try {
</span><span class="cx"> "x" in proxy;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -189,7 +189,7 @@
</span><span class="cx"> try {
</span><span class="cx"> "x" in proxy;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -211,7 +211,7 @@
</span><span class="cx"> try {
</span><span class="cx"> "x" in proxy;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -233,7 +233,7 @@
</span><span class="cx"> try {
</span><span class="cx"> "x" in proxy;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'has' must return 'true' for non-configurable properties");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyisarrayjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-is-array.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-is-array.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-is-array.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -23,7 +23,7 @@
</span><span class="cx"> Array.isArray(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Array.isArray can not be called on a Proxy that has been revoked.");
</del><ins>+ assert(e.toString() === "TypeError: Array.isArray cannot be called on a Proxy that has been revoked");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> });
</span><span class="lines">@@ -55,7 +55,7 @@
</span><span class="cx"> Array.isArray(proxyChain);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Array.isArray can not be called on a Proxy that has been revoked.");
</del><ins>+ assert(e.toString() === "TypeError: Array.isArray cannot be called on a Proxy that has been revoked");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> });
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyisextensiblejs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-is-extensible.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-is-extensible.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-is-extensible.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -90,7 +90,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.isExtensible(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -112,7 +112,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.isExtensible(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -134,7 +134,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.isExtensible(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -156,7 +156,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.isExtensible(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -178,7 +178,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.isExtensible(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyjsonjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-json.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-json.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-json.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> function test(f) {
</span><span class="lines">@@ -81,7 +81,7 @@
</span><span class="cx"> JSON.stringify(proxy); // Things are not ok.
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> });
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx"> JSON.stringify(proxy); // Things are not ok.
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> });
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyownkeysjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-own-keys.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-own-keys.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-own-keys.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -68,7 +68,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method must return a array-like object containing only Strings and Symbols.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method must return an array-like object containing only Strings and Symbols");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> assert(called);
</span><span class="lines">@@ -98,7 +98,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy object's 'target' has the non-configurable property 'x' that was not in the result from the 'ownKeys' trap.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's 'target' has the non-configurable property 'x' that was not in the result from the 'ownKeys' trap");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> assert(called);
</span><span class="lines">@@ -129,7 +129,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy object's non-extensible 'target' has configurable property 'x' that was not in the result from the 'ownKeys' trap.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy object's non-extensible 'target' has configurable property 'x' that was not in the result from the 'ownKeys' trap");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> assert(called);
</span><span class="lines">@@ -160,7 +160,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> assert(called);
</span><span class="lines">@@ -191,7 +191,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> assert(called);
</span><span class="lines">@@ -212,7 +212,7 @@
</span><span class="cx"> Object.keys(proxy);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: 'ownKeys' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'ownKeys' property of a Proxy's handler should be callable");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxypreventextensionsjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-prevent-extensions.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-prevent-extensions.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-prevent-extensions.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -88,7 +88,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.preventExtensions(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'preventExtensions' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'preventExtensions' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -137,7 +137,7 @@
</span><span class="cx"> try {
</span><span class="cx"> Reflect.preventExtensions(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxypropertydescriptorjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-property-descriptor.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-property-descriptor.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-property-descriptor.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx"> proxy["y"];
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw === true);
</span><span class="cx"> }
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx">
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw === true);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxyrevokejs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-revoke.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-revoke.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-revoke.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("bad assertion.");
</del><ins>+ throw new Error("bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><span class="lines">@@ -13,7 +13,7 @@
</span><span class="cx"> new Proxy.revocable;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy.revocable can not be constructed. It can only be called.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy.revocable cannot be constructed. It can only be called");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> Proxy.revocable();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -35,7 +35,7 @@
</span><span class="cx"> Proxy.revocable({});
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -93,7 +93,7 @@
</span><span class="cx"> new Proxy(proxy, {});
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked.");
</del><ins>+ assert(e.toString() === "TypeError: If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -123,7 +123,7 @@
</span><span class="cx"> f();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxysetprototypeofjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-set-prototype-of.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-set-prototype-of.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-set-prototype-of.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -82,7 +82,7 @@
</span><span class="cx"> try {
</span><span class="cx"> set();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'setPrototypeOf' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'setPrototypeOf' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -177,7 +177,7 @@
</span><span class="cx"> threw = true;
</span><span class="cx"> assert(called);
</span><span class="cx"> called = false;
</span><del>- assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' trap returned true when its target is non-extensible and the new prototype value is not the same as the current prototype value. It should have returned false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' trap returned true when its target is non-extensible and the new prototype value is not the same as the current prototype value. It should have returned false");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -278,7 +278,7 @@
</span><span class="cx"> Object.setPrototypeOf(proxy, obj);
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -307,7 +307,7 @@
</span><span class="cx"> proxy.__proto__ = obj;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxysetjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-set.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-set.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-set.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -19,7 +19,7 @@
</span><span class="cx"> try {
</span><span class="cx"> proxy.x = 40;
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -131,7 +131,7 @@
</span><span class="cx"> proxy.x = 40;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -191,7 +191,7 @@
</span><span class="cx"> proxy.x = 40;
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxywithprivatesymbolsjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-with-private-symbols.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-with-private-symbols.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-with-private-symbols.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("bad assertion.");
</del><ins>+ throw new Error("bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Currently, only "get", "getOwnPropertyDescriptor", and "set" are testable.
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressproxywithunbalancedgettersetterjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/proxy-with-unbalanced-getter-setter.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/proxy-with-unbalanced-getter-setter.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/proxy-with-unbalanced-getter-setter.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> function assert(b) {
</span><span class="cx"> if (!b)
</span><del>- throw new Error("Bad assertion.");
</del><ins>+ throw new Error("Bad assertion");
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Setting the getter only.
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressreflectsetproxysetjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/reflect-set-proxy-set.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/reflect-set-proxy-set.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/reflect-set-proxy-set.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx"> Reflect.set(proxy, 'x', 40);
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -145,7 +145,7 @@
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -206,7 +206,7 @@
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressreflectsetreceiverproxysetjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/reflect-set-receiver-proxy-set.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/reflect-set-receiver-proxy-set.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/reflect-set-receiver-proxy-set.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -32,7 +32,7 @@
</span><span class="cx"> Reflect.set(proxy, 'x', 40, theReceiver);
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable.");
</del><ins>+ assert(e.toString() === "TypeError: 'set' property of a Proxy's handler should be callable");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -154,7 +154,7 @@
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' on a non-configurable and non-writable property on 'target' should either return false or be the same value already on the 'target'");
</ins><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="cx"> }
</span><span class="lines">@@ -220,7 +220,7 @@
</span><span class="cx"> unreachable();
</span><span class="cx"> } catch(e) {
</span><span class="cx"> threw = true;
</span><del>- assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.");
</del><ins>+ assert(e.toString() === "TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false");
</ins><span class="cx"> }
</span><span class="cx"> assert(called);
</span><span class="cx"> assert(threw);
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoretestsstressstringprototypemethodsendsWithstartsWithincludescorrectnessjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js (198812 => 198813)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js        2016-03-30 00:21:46 UTC (rev 198812)
+++ trunk/Source/JavaScriptCore/tests/stress/string-prototype-methods-endsWith-startsWith-includes-correctness.js        2016-03-30 00:24:16 UTC (rev 198813)
</span><span class="lines">@@ -14,7 +14,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.endsWith(/foo/);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.endsWith cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.endsWith cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.startsWith(/foo/);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.startsWith cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.startsWith cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -38,7 +38,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.includes(/foo/);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.includes cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.includes cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.endsWith(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.endsWith cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.endsWith cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -80,7 +80,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.startsWith(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.startsWith cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.startsWith cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span><span class="lines">@@ -102,7 +102,7 @@
</span><span class="cx"> try {
</span><span class="cx"> foo.includes(proxy);
</span><span class="cx"> } catch(e) {
</span><del>- assert(e.toString() === "TypeError: Argument to String.prototype.includes cannot be a RegExp.");
</del><ins>+ assert(e.toString() === "TypeError: Argument to String.prototype.includes cannot be a RegExp");
</ins><span class="cx"> threw = true;
</span><span class="cx"> }
</span><span class="cx"> assert(threw);
</span></span></pre>
</div>
</div>
</body>
</html>