<!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  &lt;sbarati@apple.com&gt;
+
+        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  &lt;keith_miller@apple.com&gt;
</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  &lt;sbarati@apple.com&gt;
+
+        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  &lt;keith_miller@apple.com&gt;
</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 &quot;var&quot; lexical environment.
</span><span class="cx">         for (unsigned i = 0; i &lt; 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&lt;ProxyObject*&gt;(argument);
</span><span class="cx">         if (proxy-&gt;isRevoked()) {
</span><del>-            throwTypeError(exec, ASCIILiteral(&quot;Array.isArray can not be called on a Proxy that has been revoked.&quot;));
</del><ins>+            throwTypeError(exec, ASCIILiteral(&quot;Array.isArray cannot be called on a Proxy that has been revoked&quot;));
</ins><span class="cx">             return false;
</span><span class="cx">         }
</span><span class="cx">         argument = proxy-&gt;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-&gt;argumentCount() &lt; 2)
</span><del>-        return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy.revocable needs to be called with two arguments: the target and the handler.&quot;));
</del><ins>+        return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy.revocable needs to be called with two arguments: the target and the handler&quot;));
</ins><span class="cx"> 
</span><span class="cx">     VM&amp; vm = exec-&gt;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(&quot;Proxy.revocable can not be constructed. It can only be called.&quot;));
</del><ins>+    return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy.revocable cannot be constructed. It can only be called&quot;));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void ProxyConstructor::finishCreation(VM&amp; 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-&gt;newTarget().isUndefined())
</span><del>-        return throwVMTypeError(exec, ASCIILiteral(&quot;new.target of Proxy construct should not be undefined.&quot;));
</del><ins>+        return throwVMTypeError(exec, ASCIILiteral(&quot;new.target of Proxy construct should not be undefined&quot;));
</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&lt;ProxyObject*&gt;(target)) {
</span><span class="cx">         if (targetAsProxy-&gt;handler().isNull()) {
</span><del>-            throwTypeError(exec, ASCIILiteral(&quot;If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked.&quot;));
</del><ins>+            throwTypeError(exec, ASCIILiteral(&quot;If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked&quot;));
</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 = &quot;Proxy has already been revoked. No more operations are allowed to be performed on it.&quot;;
</del><ins>+static const char* s_proxyAlreadyRevokedErrorMessage = &quot;Proxy has already been revoked. No more operations are allowed to be performed on it&quot;;
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue getHandler = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;get, ASCIILiteral(&quot;'get' property of a Proxy's handler object should be callable.&quot;));
</del><ins>+    JSValue getHandler = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;get, ASCIILiteral(&quot;'get' property of a Proxy's handler object should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;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-&gt;getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx">         if (descriptor.isDataDescriptor() &amp;&amp; !descriptor.configurable() &amp;&amp; !descriptor.writable()) {
</span><span class="cx">             if (!sameValue(exec, descriptor.value(), trapResult))
</span><del>-                return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property.&quot;));
</del><ins>+                return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property&quot;));
</ins><span class="cx">         } else if (descriptor.isAccessorDescriptor() &amp;&amp; !descriptor.configurable() &amp;&amp; descriptor.getter().isUndefined()) {
</span><span class="cx">             if (!trapResult.isUndefined())
</span><del>-                return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined.&quot;));
</del><ins>+                return throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue getOwnPropertyDescriptorMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;getOwnPropertyDescriptor&quot;), ASCIILiteral(&quot;'getOwnPropertyDescriptor' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue getOwnPropertyDescriptorMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;getOwnPropertyDescriptor&quot;), ASCIILiteral(&quot;'getOwnPropertyDescriptor' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;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() &amp;&amp; !trapResult.isObject()) {
</span><del>-        throwVMTypeError(exec, ASCIILiteral(&quot;result of 'getOwnPropertyDescriptor' call should either be an Object or undefined.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;result of 'getOwnPropertyDescriptor' call should either be an Object or undefined&quot;));
</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(&quot;When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable&quot;));
</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(&quot;When 'getOwnPropertyDescriptor' returns undefined, the 'target' of a Proxy should be extensible.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;When 'getOwnPropertyDescriptor' returns undefined, the 'target' of a Proxy should be extensible&quot;));
</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(&quot;Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test&quot;));
</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(&quot;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'.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;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'&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue hasMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;has, ASCIILiteral(&quot;'has' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue hasMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;has, ASCIILiteral(&quot;'has' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;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(&quot;Proxy 'has' must return 'true' for non-configurable properties.&quot;));
</del><ins>+                throwVMTypeError(exec, ASCIILiteral(&quot;Proxy 'has' must return 'true' for non-configurable properties&quot;));
</ins><span class="cx">                 return false;
</span><span class="cx">             }
</span><span class="cx">             bool isExtensible = target-&gt;isExtensible(exec);
</span><span class="cx">             if (exec-&gt;hadException())
</span><span class="cx">                 return false;
</span><span class="cx">             if (!isExtensible) {
</span><del>-                throwVMTypeError(exec, ASCIILiteral(&quot;Proxy 'has' must return 'true' for a non-extensible 'target' object with a configurable property.&quot;));
</del><ins>+                throwVMTypeError(exec, ASCIILiteral(&quot;Proxy 'has' must return 'true' for a non-extensible 'target' object with a configurable property&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue setMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;set, ASCIILiteral(&quot;'set' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue setMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;set, ASCIILiteral(&quot;'set' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return false;
</span><span class="cx">     JSObject* target = this-&gt;target();
</span><span class="lines">@@ -409,11 +409,11 @@
</span><span class="cx">     if (target-&gt;getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx">         if (descriptor.isDataDescriptor() &amp;&amp; !descriptor.configurable() &amp;&amp; !descriptor.writable()) {
</span><span class="cx">             if (!sameValue(exec, descriptor.value(), putValue)) {
</span><del>-                throwVMTypeError(exec, ASCIILiteral(&quot;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'.&quot;));
</del><ins>+                throwVMTypeError(exec, ASCIILiteral(&quot;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'&quot;));
</ins><span class="cx">                 return false;
</span><span class="cx">             }
</span><span class="cx">         } else if (descriptor.isAccessorDescriptor() &amp;&amp; !descriptor.configurable() &amp;&amp; descriptor.setter().isUndefined()) {
</span><del>-            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue applyMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;apply&quot;), ASCIILiteral(&quot;'apply' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue applyMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;apply&quot;), ASCIILiteral(&quot;'apply' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSObject* target = proxy-&gt;target();
</span><span class="lines">@@ -512,7 +512,7 @@
</span><span class="cx">     JSObject* handler = jsCast&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue constructMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;construct&quot;), ASCIILiteral(&quot;'construct' property of a Proxy's handler should be constructible.&quot;));
</del><ins>+    JSValue constructMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;construct&quot;), ASCIILiteral(&quot;'construct' property of a Proxy's handler should be constructible&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSObject* target = proxy-&gt;target();
</span><span class="lines">@@ -534,7 +534,7 @@
</span><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     if (!result.isObject())
</span><del>-        return throwVMTypeError(exec, ASCIILiteral(&quot;Result from Proxy handler's 'construct' method should be an object.&quot;));
</del><ins>+        return throwVMTypeError(exec, ASCIILiteral(&quot;Result from Proxy handler's 'construct' method should be an object&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue deletePropertyMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;deleteProperty&quot;), ASCIILiteral(&quot;'deleteProperty' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue deletePropertyMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;deleteProperty&quot;), ASCIILiteral(&quot;'deleteProperty' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return false;
</span><span class="cx">     JSObject* target = this-&gt;target();
</span><span class="lines">@@ -592,7 +592,7 @@
</span><span class="cx">     PropertyDescriptor descriptor;
</span><span class="cx">     if (target-&gt;getOwnPropertyDescriptor(exec, propertyName, descriptor)) {
</span><span class="cx">         if (!descriptor.configurable()) {
</span><del>-            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue preventExtensionsMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;preventExtensions&quot;), ASCIILiteral(&quot;'preventExtensions' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue preventExtensionsMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;preventExtensions&quot;), ASCIILiteral(&quot;'preventExtensions' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return false;
</span><span class="cx">     JSObject* target = this-&gt;target();
</span><span class="lines">@@ -659,7 +659,7 @@
</span><span class="cx">         if (exec-&gt;hadException())
</span><span class="cx">             return false;
</span><span class="cx">         if (targetIsExtensible) {
</span><del>-            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue isExtensibleMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;isExtensible&quot;), ASCIILiteral(&quot;'isExtensible' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue isExtensibleMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;isExtensible&quot;), ASCIILiteral(&quot;'isExtensible' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;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(&quot;Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true&quot;));
</ins><span class="cx">         } else {
</span><span class="cx">             ASSERT(!isTargetExtensible);
</span><span class="cx">             ASSERT(trapResultAsBool);
</span><del>-            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue definePropertyMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;defineProperty, ASCIILiteral(&quot;'defineProperty' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue definePropertyMethod = handler-&gt;getMethod(exec, callData, callType, vm.propertyNames-&gt;defineProperty, ASCIILiteral(&quot;'defineProperty' property of a Proxy's handler should be callable&quot;));
</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(&quot;Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible&quot;));
</ins><span class="cx">             return false;
</span><span class="cx">         }
</span><span class="cx">         if (settingConfigurableToFalse) {
</span><del>-            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined&quot;));
</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(&quot;Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor&quot;));
</ins><span class="cx">         return false;
</span><span class="cx">     }
</span><span class="cx">     if (settingConfigurableToFalse &amp;&amp; targetDescriptor.configurable()) {
</span><del>-        throwVMTypeError(exec, ASCIILiteral(&quot;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.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;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&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue ownKeysMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;ownKeys&quot;), ASCIILiteral(&quot;'ownKeys' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue ownKeysMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;ownKeys&quot;), ASCIILiteral(&quot;'ownKeys' property of a Proxy's handler should be callable&quot;));
</ins><span class="cx">     if (exec-&gt;hadException())
</span><span class="cx">         return;
</span><span class="cx">     JSObject* target = this-&gt;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(&quot;Proxy handler's 'ownKeys' method must return a array-like object containing only Strings and Symbols.&quot;), addPropName);
</del><ins>+    createListFromArrayLike(exec, arrayLikeObject, dontThrowAnExceptionTypeFilter, ASCIILiteral(&quot;Proxy handler's 'ownKeys' method must return an array-like object containing only Strings and Symbols&quot;), addPropName);
</ins><span class="cx">     if (exec-&gt;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(&quot;Proxy object's 'target' has the non-configurable property '&quot;, String(impl), &quot;' that was not in the result from the 'ownKeys' trap.&quot;));
</del><ins>+            throwVMTypeError(exec, makeString(&quot;Proxy object's 'target' has the non-configurable property '&quot;, String(impl), &quot;' that was not in the result from the 'ownKeys' trap&quot;));
</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(&quot;Proxy object's non-extensible 'target' has configurable property '&quot;, String(impl), &quot;' that was not in the result from the 'ownKeys' trap.&quot;));
</del><ins>+            throwVMTypeError(exec, makeString(&quot;Proxy object's non-extensible 'target' has configurable property '&quot;, String(impl), &quot;' that was not in the result from the 'ownKeys' trap&quot;));
</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(&quot;Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue setPrototypeOfMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;setPrototypeOf&quot;), ASCIILiteral(&quot;'setPrototypeOf' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue setPrototypeOfMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;setPrototypeOf&quot;), ASCIILiteral(&quot;'setPrototypeOf' property of a Proxy's handler should be callable&quot;));
</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(&quot;Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed.&quot;));
</del><ins>+            throwVMTypeError(exec, ASCIILiteral(&quot;Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed&quot;));
</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(&quot;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.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;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&quot;));
</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&lt;JSObject*&gt;(handlerValue);
</span><span class="cx">     CallData callData;
</span><span class="cx">     CallType callType;
</span><del>-    JSValue getPrototypeOfMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;getPrototypeOf&quot;), ASCIILiteral(&quot;'getPrototypeOf' property of a Proxy's handler should be callable.&quot;));
</del><ins>+    JSValue getPrototypeOfMethod = handler-&gt;getMethod(exec, callData, callType, makeIdentifier(vm, &quot;getPrototypeOf&quot;), ASCIILiteral(&quot;'getPrototypeOf' property of a Proxy's handler should be callable&quot;));
</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() &amp;&amp; !trapResult.isNull()) {
</span><del>-        throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'getPrototypeOf' trap should either return an object or null.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;Proxy handler's 'getPrototypeOf' trap should either return an object or null&quot;));
</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(&quot;Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype.&quot;));
</del><ins>+        throwVMTypeError(exec, ASCIILiteral(&quot;Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype&quot;));
</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, &quot;Argument to String.prototype.startsWith cannot be a RegExp.&quot;);
</del><ins>+        return throwVMTypeError(exec, &quot;Argument to String.prototype.startsWith cannot be a RegExp&quot;);
</ins><span class="cx"> 
</span><span class="cx">     String searchString = a0.toString(exec)-&gt;value(exec);
</span><span class="cx">     if (exec-&gt;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, &quot;Argument to String.prototype.endsWith cannot be a RegExp.&quot;);
</del><ins>+        return throwVMTypeError(exec, &quot;Argument to String.prototype.endsWith cannot be a RegExp&quot;);
</ins><span class="cx"> 
</span><span class="cx">     String searchString = a0.toString(exec)-&gt;value(exec);
</span><span class="cx">     if (exec-&gt;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, &quot;Argument to String.prototype.includes cannot be a RegExp.&quot;);
</del><ins>+        return throwVMTypeError(exec, &quot;Argument to String.prototype.includes cannot be a RegExp&quot;);
</ins><span class="cx"> 
</span><span class="cx">     String searchString = a0.toString(exec)-&gt;value(exec);
</span><span class="cx">     if (exec-&gt;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-&gt;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[&quot;foo&quot;];
</span><span class="cx">         } catch(e) {
</span><span class="cx">             threw = true;
</span><del>-            assert(e.toString() === &quot;TypeError: 'get' property of a Proxy's handler object should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'get' property of a Proxy's handler object should be callable&quot;);
</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() === &quot;TypeError: 'construct' property of a Proxy's handler should be constructible.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'construct' property of a Proxy's handler should be constructible&quot;);
</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() === &quot;TypeError: 'construct' property of a Proxy's handler should be constructible.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'construct' property of a Proxy's handler should be constructible&quot;);
</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() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object&quot;);
</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() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object&quot;);
</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() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from Proxy handler's 'construct' method should be an object&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: 'defineProperty' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'defineProperty' property of a Proxy's handler should be callable&quot;);
</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() === &quot;TypeError: Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'defineProperty' trap returned true for a non-configurable field even though getOwnPropertyDescriptor of the Proxy's target returned undefined&quot;);
</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() === &quot;TypeError: Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'defineProperty' trap returned true even though getOwnPropertyDescriptor of the Proxy's target returned undefined and the target is non-extensible&quot;);
</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() === &quot;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.&quot;);
</del><ins>+            assert(e.toString() === &quot;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&quot;);
</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() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor&quot;);
</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() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor&quot;);
</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() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'defineProperty' trap did not define a property on its target that is compatible with the trap's input descriptor&quot;);
</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, &quot;x&quot;, {
</span><span class="cx">             writable: true,
</span><span class="cx">             configurable: false,
</span><del>-            value: &quot;whatever value goes here.&quot;
</del><ins>+            value: &quot;whatever value goes here&quot;
</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(&quot;bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;bad assertion&quot;);
</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() === &quot;TypeError: 'deleteProperty' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'deleteProperty' property of a Proxy's handler should be callable&quot;);
</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() === &quot;TypeError: Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'deleteProperty' method should return false when the target's property is not configurable&quot;);
</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(&quot;bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;bad assertion&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: result of 'getOwnPropertyDescriptor' call should either be an Object or undefined.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: result of 'getOwnPropertyDescriptor' call should either be an Object or undefined&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: When the result of 'getOwnPropertyDescriptor' is undefined the target must be configurable&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;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'.&quot;);
</del><ins>+            assert(e.toString() === &quot;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'&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: 'getOwnPropertyDescriptor' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'getOwnPropertyDescriptor' property of a Proxy's handler should be callable&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><span class="cx">             threw = true;
</span><del>-            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test&quot;);
</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, &quot;x&quot;);
</span><span class="cx">         } catch(e) {
</span><span class="cx">             threw = true;
</span><del>-            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Result from 'getOwnPropertyDescriptor' fails the IsCompatiblePropertyDescriptor test&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: 'getPrototypeOf' property of a Proxy's handler should be callable.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: 'getPrototypeOf' property of a Proxy's handler should be callable&quot;);
</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() === &quot;TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null&quot;);
</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() === &quot;TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: Proxy handler's 'getPrototypeOf' trap should either return an object or null&quot;);
</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() === &quot;TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype&quot;);
</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() === &quot;TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: Proxy's 'getPrototypeOf' trap for a non-extensible target should return the same value as the target's prototype&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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">             &quot;x&quot; in proxy;
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties&quot;);
</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">             &quot;x&quot; in proxy;
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties&quot;);
</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">             &quot;x&quot; in proxy;
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties&quot;);
</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">             &quot;x&quot; in proxy;
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties&quot;);
</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">             &quot;x&quot; in proxy;
</span><span class="cx">         } catch(e) {
</span><del>-            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'has' must return 'true' for non-configurable properties&quot;);
</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() === &quot;TypeError: Array.isArray can not be called on a Proxy that has been revoked.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Array.isArray cannot be called on a Proxy that has been revoked&quot;);
</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() === &quot;TypeError: Array.isArray can not be called on a Proxy that has been revoked.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Array.isArray cannot be called on a Proxy that has been revoked&quot;);
</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() === &quot;TypeError: Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'isExtensible' trap returned false when the target is extensible. It should have returned true&quot;);
</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() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false&quot;);
</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() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false&quot;);
</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() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false&quot;);
</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() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'isExtensible' trap returned true when the target is non-extensible. It should have returned false&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it&quot;);
</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() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: Proxy handler's 'ownKeys' method must return a array-like object containing only Strings and Symbols.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'ownKeys' method must return an array-like object containing only Strings and Symbols&quot;);
</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() === &quot;TypeError: Proxy object's 'target' has the non-configurable property 'x' that was not in the result from the 'ownKeys' trap.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's 'target' has the non-configurable property 'x' that was not in the result from the 'ownKeys' trap&quot;);
</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() === &quot;TypeError: Proxy object's non-extensible 'target' has configurable property 'x' that was not in the result from the 'ownKeys' trap.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy object's non-extensible 'target' has configurable property 'x' that was not in the result from the 'ownKeys' trap&quot;);
</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() === &quot;TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys&quot;);
</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() === &quot;TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'ownKeys' method returned a key that was not present in its target or it returned duplicate keys&quot;);
</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() === &quot;TypeError: 'ownKeys' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'ownKeys' property of a Proxy's handler should be callable&quot;);
</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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: 'preventExtensions' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'preventExtensions' property of a Proxy's handler should be callable&quot;);
</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() === &quot;TypeError: Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy's 'preventExtensions' trap returned true even though its target is extensible. It should have returned false&quot;);
</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[&quot;y&quot;];
</span><span class="cx">     } catch(e) {
</span><span class="cx">         threw = true;
</span><del>-        assert(e.toString() === &quot;TypeError: Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Proxy handler's 'get' result of a non-configurable and non-writable property should be the same value as the target's property&quot;);
</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() === &quot;TypeError: Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Proxy handler's 'get' result of a non-configurable accessor property without a getter should be undefined&quot;);
</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(&quot;bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;bad assertion&quot;);
</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() === &quot;TypeError: Proxy.revocable can not be constructed. It can only be called.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy.revocable cannot be constructed. It can only be called&quot;);
</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() === &quot;TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler&quot;);
</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() === &quot;TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy.revocable needs to be called with two arguments: the target and the handler&quot;);
</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() === &quot;TypeError: If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: If a Proxy's handler is another Proxy object, the other Proxy should not have been revoked&quot;);
</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() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Proxy has already been revoked. No more operations are allowed to be performed on it&quot;);
</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() === &quot;TypeError: 'setPrototypeOf' property of a Proxy's handler should be callable.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: 'setPrototypeOf' property of a Proxy's handler should be callable&quot;);
</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() === &quot;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.&quot;);
</del><ins>+                assert(e.toString() === &quot;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&quot;);
</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() === &quot;TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed&quot;);
</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() === &quot;TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy 'setPrototypeOf' returned false indicating it could not set the prototype value. The operation was expected to succeed&quot;);
</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() === &quot;TypeError: 'set' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'set' property of a Proxy's handler should be callable&quot;);
</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() === &quot;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'.&quot;);
</del><ins>+            assert(e.toString() === &quot;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'&quot;);
</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() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false&quot;);
</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(&quot;bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;bad assertion&quot;);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> // Currently, only &quot;get&quot;, &quot;getOwnPropertyDescriptor&quot;, and &quot;set&quot; 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(&quot;Bad assertion.&quot;);
</del><ins>+        throw new Error(&quot;Bad assertion&quot;);
</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() === &quot;TypeError: 'set' property of a Proxy's handler should be callable.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: 'set' property of a Proxy's handler should be callable&quot;);
</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() === &quot;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'.&quot;);
</del><ins>+            assert(e.toString() === &quot;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'&quot;);
</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() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.&quot;);
</del><ins>+            assert(e.toString() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false&quot;);
</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() === &quot;TypeError: 'set' property of a Proxy's handler should be callable.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: 'set' property of a Proxy's handler should be callable&quot;);
</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() === &quot;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'.&quot;);
</del><ins>+                assert(e.toString() === &quot;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'&quot;);
</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() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false.&quot;);
</del><ins>+                assert(e.toString() === &quot;TypeError: Proxy handler's 'set' method on a non-configurable accessor property without a setter should return false&quot;);
</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() === &quot;TypeError: Argument to String.prototype.endsWith cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.endsWith cannot be a RegExp&quot;);
</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() === &quot;TypeError: Argument to String.prototype.startsWith cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.startsWith cannot be a RegExp&quot;);
</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() === &quot;TypeError: Argument to String.prototype.includes cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.includes cannot be a RegExp&quot;);
</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() === &quot;TypeError: Argument to String.prototype.endsWith cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.endsWith cannot be a RegExp&quot;);
</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() === &quot;TypeError: Argument to String.prototype.startsWith cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.startsWith cannot be a RegExp&quot;);
</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() === &quot;TypeError: Argument to String.prototype.includes cannot be a RegExp.&quot;);
</del><ins>+        assert(e.toString() === &quot;TypeError: Argument to String.prototype.includes cannot be a RegExp&quot;);
</ins><span class="cx">         threw = true;
</span><span class="cx">     }
</span><span class="cx">     assert(threw);
</span></span></pre>
</div>
</div>

</body>
</html>