<!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>[181003] trunk/Source/WebCore</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/181003">181003</a></dd>
<dt>Author</dt> <dd>achristensen@apple.com</dd>
<dt>Date</dt> <dd>2015-03-04 10:40:08 -0800 (Wed, 04 Mar 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Update bindings tests after <a href="http://trac.webkit.org/projects/webkit/changeset/181001">r181001</a>.

* bindings/scripts/test/JS/*.cpp:
Class names changed to auto.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestActiveDOMObjectcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestCustomNamedGettercpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestEventConstructorcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestEventTargetcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestExceptioncpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestGenerateIsReachablecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestInterfacecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestMediaQueryListListenercpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestNamedConstructorcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestNodecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestNondeterministiccpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorscpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestSerializedScriptValueInterfacecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSTestTypedefscpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSattributecpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp</a></li>
<li><a href="#trunkSourceWebCorebindingsscriptstestJSJSreadonlycpp">trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/ChangeLog        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -1,3 +1,10 @@
</span><ins>+2015-03-04  Alex Christensen  &lt;achristensen@webkit.org&gt;
+
+        Update bindings tests after r181001.
+
+        * bindings/scripts/test/JS/*.cpp:
+        Class names changed to auto.
+
</ins><span class="cx"> 2015-03-04  Brent Fulgham  &lt;bfulgham@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [Win] Missing dependency checking in DerivedSources.make for FeatureDefines.props
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestActiveDOMObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -168,7 +168,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestActiveDOMObject::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestActiveDOMObject* thisObject = jsCast&lt;JSTestActiveDOMObject*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestActiveDOMObject*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     return getStaticValueSlot&lt;JSTestActiveDOMObject, Base&gt;(exec, JSTestActiveDOMObjectTable, thisObject, propertyName, slot);
</span><span class="cx"> }
</span><span class="lines">@@ -178,10 +178,10 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestActiveDOMObject* castedThis = jsCast&lt;JSTestActiveDOMObject*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestActiveDOMObject*&gt;(slotBase);
</ins><span class="cx">     if (!BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis-&gt;impl()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestActiveDOMObject&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.excitingAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -211,7 +211,7 @@
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestActiveDOMObject::info());
</span><span class="cx">     if (!BindingSecurity::shouldAllowAccessToDOMWindow(exec, castedThis-&gt;impl()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestActiveDOMObject&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Node* nextChild(JSNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -228,7 +228,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestActiveDOMObject&quot;, &quot;postMessage&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestActiveDOMObject::info());
</span><del>-    TestActiveDOMObject&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; message(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -247,8 +247,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestActiveDOMObjectOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestActiveDOMObject* jsTestActiveDOMObject = jsCast&lt;JSTestActiveDOMObject*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestActiveDOMObject = jsCast&lt;JSTestActiveDOMObject*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestActiveDOMObject-&gt;impl(), jsTestActiveDOMObject);
</span><span class="cx">     jsTestActiveDOMObject-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestCustomNamedGettercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -161,7 +161,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestCustomNamedGetter::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestCustomNamedGetter* thisObject = jsCast&lt;JSTestCustomNamedGetter*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestCustomNamedGetter*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     if (canGetItemsForName(exec, &amp;thisObject-&gt;impl(), propertyName)) {
</span><span class="cx">         slot.setCustom(thisObject, ReadOnly | DontDelete | DontEnum, thisObject-&gt;nameGetter);
</span><span class="lines">@@ -172,7 +172,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestCustomNamedGetter::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned index, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestCustomNamedGetter* thisObject = jsCast&lt;JSTestCustomNamedGetter*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestCustomNamedGetter*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     PropertyName propertyName = Identifier::from(exec, index);
</span><span class="cx">     if (canGetItemsForName(exec, &amp;thisObject-&gt;impl(), propertyName)) {
</span><span class="lines">@@ -202,7 +202,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestCustomNamedGetter&quot;, &quot;anotherFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestCustomNamedGetter::info());
</span><del>-    TestCustomNamedGetter&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; str(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -221,8 +221,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestCustomNamedGetterOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestCustomNamedGetter* jsTestCustomNamedGetter = jsCast&lt;JSTestCustomNamedGetter*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestCustomNamedGetter = jsCast&lt;JSTestCustomNamedGetter*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestCustomNamedGetter-&gt;impl(), jsTestCustomNamedGetter);
</span><span class="cx">     jsTestCustomNamedGetter-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestEventConstructorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -91,7 +91,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestEventConstructorConstructor::constructJSTestEventConstructor(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestEventConstructorConstructor* jsConstructor = jsCast&lt;JSTestEventConstructorConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* jsConstructor = jsCast&lt;JSTestEventConstructorConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx"> 
</span><span class="cx">     ScriptExecutionContext* executionContext = jsConstructor-&gt;scriptExecutionContext();
</span><span class="cx">     if (!executionContext)
</span><span class="lines">@@ -205,7 +205,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestEventConstructor&quot;, &quot;attr1&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestEventConstructor&quot;, &quot;attr1&quot;);
</span><span class="cx">     }
</span><del>-    TestEventConstructor&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.attr1());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -222,7 +222,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestEventConstructor&quot;, &quot;attr2&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestEventConstructor&quot;, &quot;attr2&quot;);
</span><span class="cx">     }
</span><del>-    TestEventConstructor&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.attr2());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -250,8 +250,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestEventConstructorOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestEventConstructor* jsTestEventConstructor = jsCast&lt;JSTestEventConstructor*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestEventConstructor = jsCast&lt;JSTestEventConstructor*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestEventConstructor-&gt;impl(), jsTestEventConstructor);
</span><span class="cx">     jsTestEventConstructor-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestEventTargetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -173,7 +173,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestEventTarget::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     const HashTableValue* entry = getStaticValueSlotEntryWithoutCaching&lt;JSTestEventTarget&gt;(exec, propertyName);
</span><span class="cx">     if (entry) {
</span><span class="lines">@@ -195,7 +195,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestEventTarget::getOwnPropertySlotByIndex(JSObject* object, ExecState* exec, unsigned index, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     if (index &lt; thisObject-&gt;impl().length()) {
</span><span class="cx">         unsigned attributes = DontDelete | ReadOnly;
</span><span class="lines">@@ -220,7 +220,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestEventTarget::getOwnPropertyNames(JSObject* object, ExecState* exec, PropertyNameArray&amp; propertyNames, EnumerationMode mode)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestEventTarget*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     for (unsigned i = 0, count = thisObject-&gt;impl().length(); i &lt; count; ++i)
</span><span class="cx">         propertyNames.add(Identifier::from(exec, i));
</span><span class="lines">@@ -239,7 +239,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestEventTarget&quot;, &quot;item&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info());
</span><del>-    TestEventTarget&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int index(toUInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -260,7 +260,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestEventTarget&quot;, &quot;addEventListener&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info());
</span><del>-    TestEventTarget&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue listener = exec-&gt;argument(1);
</span><span class="cx">     if (UNLIKELY(!listener.isObject()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -275,7 +275,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestEventTarget&quot;, &quot;removeEventListener&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info());
</span><del>-    TestEventTarget&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue listener = exec-&gt;argument(1);
</span><span class="cx">     if (UNLIKELY(!listener.isObject()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -290,7 +290,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestEventTarget&quot;, &quot;dispatchEvent&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestEventTarget::info());
</span><del>-    TestEventTarget&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -305,7 +305,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestEventTarget::visitChildren(JSCell* cell, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* thisObject = jsCast&lt;JSTestEventTarget*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestEventTarget*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     Base::visitChildren(thisObject, visitor);
</span><span class="cx">     thisObject-&gt;impl().visitJSEventListeners(visitor);
</span><span class="lines">@@ -313,7 +313,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestEventTargetOwner::isReachableFromOpaqueRoots(JSC::Handle&lt;JSC::Unknown&gt; handle, void*, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* jsTestEventTarget = jsCast&lt;JSTestEventTarget*&gt;(handle.slot()-&gt;asCell());
</del><ins>+    auto* jsTestEventTarget = jsCast&lt;JSTestEventTarget*&gt;(handle.slot()-&gt;asCell());
</ins><span class="cx">     if (jsTestEventTarget-&gt;impl().isFiringEventListeners())
</span><span class="cx">         return true;
</span><span class="cx">     UNUSED_PARAM(visitor);
</span><span class="lines">@@ -322,8 +322,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestEventTargetOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestEventTarget* jsTestEventTarget = jsCast&lt;JSTestEventTarget*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestEventTarget = jsCast&lt;JSTestEventTarget*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestEventTarget-&gt;impl(), jsTestEventTarget);
</span><span class="cx">     jsTestEventTarget-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestExceptioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -158,7 +158,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestException::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestException* thisObject = jsCast&lt;JSTestException*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestException*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     return getStaticValueSlot&lt;JSTestException, Base&gt;(exec, JSTestExceptionTable, thisObject, propertyName, slot);
</span><span class="cx"> }
</span><span class="lines">@@ -168,8 +168,8 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestException* castedThis = jsCast&lt;JSTestException*&gt;(slotBase);
-    TestException&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto* castedThis = jsCast&lt;JSTestException*&gt;(slotBase);
+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.name());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -197,8 +197,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestExceptionOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestException* jsTestException = jsCast&lt;JSTestException*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestException = jsCast&lt;JSTestException*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestException-&gt;impl(), jsTestException);
</span><span class="cx">     jsTestException-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestGenerateIsReachablecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -160,7 +160,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestGenerateIsReachableOwner::isReachableFromOpaqueRoots(JSC::Handle&lt;JSC::Unknown&gt; handle, void*, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestGenerateIsReachable* jsTestGenerateIsReachable = jsCast&lt;JSTestGenerateIsReachable*&gt;(handle.slot()-&gt;asCell());
</del><ins>+    auto* jsTestGenerateIsReachable = jsCast&lt;JSTestGenerateIsReachable*&gt;(handle.slot()-&gt;asCell());
</ins><span class="cx">     if (!isObservable(jsTestGenerateIsReachable))
</span><span class="cx">         return false;
</span><span class="cx">     TestGenerateIsReachable* root = &amp;jsTestGenerateIsReachable-&gt;impl();
</span><span class="lines">@@ -169,8 +169,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestGenerateIsReachableOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestGenerateIsReachable* jsTestGenerateIsReachable = jsCast&lt;JSTestGenerateIsReachable*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestGenerateIsReachable = jsCast&lt;JSTestGenerateIsReachable*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestGenerateIsReachable-&gt;impl(), jsTestGenerateIsReachable);
</span><span class="cx">     jsTestGenerateIsReachable-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestInterfacecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -271,7 +271,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestInterfaceConstructor::constructJSTestInterface(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestInterfaceConstructor* castedThis = jsCast&lt;JSTestInterfaceConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestInterfaceConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -442,7 +442,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestInterface::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestInterface* thisObject = jsCast&lt;JSTestInterface*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestInterface*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     return getStaticValueSlot&lt;JSTestInterface, Base&gt;(exec, JSTestInterfaceTable, thisObject, propertyName, slot);
</span><span class="cx"> }
</span><span class="lines">@@ -483,7 +483,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;implementsStr1&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsStr1&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.implementsStr1());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -502,7 +502,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;implementsStr2&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsStr2&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.implementsStr2());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -515,7 +515,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestInterface* castedThis = jsCast&lt;JSTestInterface*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestInterface*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(castedThis-&gt;implementsStr3(exec));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -533,7 +533,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;implementsNode&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsNode&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.implementsNode()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -576,7 +576,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;supplementalStr1&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalStr1&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, TestSupplemental::supplementalStr1(&amp;impl));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -595,7 +595,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;supplementalStr2&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalStr2&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, TestSupplemental::supplementalStr2(&amp;impl));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -608,7 +608,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestInterface* castedThis = jsCast&lt;JSTestInterface*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestInterface*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(castedThis-&gt;supplementalStr3(exec));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -626,7 +626,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestInterface&quot;, &quot;supplementalNode&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalNode&quot;);
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(TestSupplemental::supplementalNode(&amp;impl)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -643,7 +643,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestInterface::put(JSCell* cell, ExecState* exec, PropertyName propertyName, JSValue value, PutPropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestInterface* thisObject = jsCast&lt;JSTestInterface*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestInterface*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     if (thisObject-&gt;putDelegate(exec, propertyName, value, slot))
</span><span class="cx">         return;
</span><span class="lines">@@ -652,7 +652,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestInterface::putByIndex(JSCell* cell, ExecState* exec, unsigned index, JSValue value, bool shouldThrow)
</span><span class="cx"> {
</span><del>-    JSTestInterface* thisObject = jsCast&lt;JSTestInterface*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestInterface*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     PropertyName propertyName = Identifier::from(exec, index);
</span><span class="cx">     PutPropertySlot slot(thisObject, shouldThrow);
</span><span class="lines">@@ -687,7 +687,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsStr2&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -702,7 +702,7 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestInterface* castedThis = jsCast&lt;JSTestInterface*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestInterface*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     castedThis-&gt;setImplementsStr3(exec, value);
</span><span class="lines">@@ -723,7 +723,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsNode&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     Node* nativeValue(JSNode::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -758,7 +758,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalStr2&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -773,7 +773,7 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestInterface* castedThis = jsCast&lt;JSTestInterface*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestInterface*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     castedThis-&gt;setSupplementalStr3(exec, value);
</span><span class="lines">@@ -794,7 +794,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalNode&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     Node* nativeValue(JSNode::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -816,7 +816,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsMethod1&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info());
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.implementsMethod1();
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -831,11 +831,11 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestInterface&quot;, &quot;implementsMethod2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info());
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     const String&amp; strArg(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -882,7 +882,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalMethod1&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info());
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestSupplemental::supplementalMethod1(&amp;impl);
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -897,11 +897,11 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestInterface&quot;, &quot;supplementalMethod2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestInterface::info());
</span><del>-    TestInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     const String&amp; strArg(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -942,7 +942,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestInterfaceOwner::isReachableFromOpaqueRoots(JSC::Handle&lt;JSC::Unknown&gt; handle, void*, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestInterface* jsTestInterface = jsCast&lt;JSTestInterface*&gt;(handle.slot()-&gt;asCell());
</del><ins>+    auto* jsTestInterface = jsCast&lt;JSTestInterface*&gt;(handle.slot()-&gt;asCell());
</ins><span class="cx">     if (jsTestInterface-&gt;impl().hasPendingActivity())
</span><span class="cx">         return true;
</span><span class="cx">     UNUSED_PARAM(visitor);
</span><span class="lines">@@ -951,8 +951,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestInterfaceOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestInterface* jsTestInterface = jsCast&lt;JSTestInterface*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestInterface = jsCast&lt;JSTestInterface*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestInterface-&gt;impl(), jsTestInterface);
</span><span class="cx">     jsTestInterface-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestMediaQueryListListenercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -166,7 +166,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestMediaQueryListListener&quot;, &quot;method&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestMediaQueryListListener::info());
</span><del>-    TestMediaQueryListListener&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     if (!exec-&gt;argument(0).isFunction())
</span><span class="lines">@@ -185,8 +185,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestMediaQueryListListenerOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestMediaQueryListListener* jsTestMediaQueryListListener = jsCast&lt;JSTestMediaQueryListListener*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestMediaQueryListListener = jsCast&lt;JSTestMediaQueryListListener*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestMediaQueryListListener-&gt;impl(), jsTestMediaQueryListListener);
</span><span class="cx">     jsTestMediaQueryListListener-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestNamedConstructorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestNamedConstructorNamedConstructor* castedThis = jsCast&lt;JSTestNamedConstructorNamedConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestNamedConstructorNamedConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -230,7 +230,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestNamedConstructorOwner::isReachableFromOpaqueRoots(JSC::Handle&lt;JSC::Unknown&gt; handle, void*, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestNamedConstructor* jsTestNamedConstructor = jsCast&lt;JSTestNamedConstructor*&gt;(handle.slot()-&gt;asCell());
</del><ins>+    auto* jsTestNamedConstructor = jsCast&lt;JSTestNamedConstructor*&gt;(handle.slot()-&gt;asCell());
</ins><span class="cx">     if (jsTestNamedConstructor-&gt;impl().hasPendingActivity())
</span><span class="cx">         return true;
</span><span class="cx">     UNUSED_PARAM(visitor);
</span><span class="lines">@@ -239,8 +239,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestNamedConstructorOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestNamedConstructor* jsTestNamedConstructor = jsCast&lt;JSTestNamedConstructor*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestNamedConstructor = jsCast&lt;JSTestNamedConstructor*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestNamedConstructor-&gt;impl(), jsTestNamedConstructor);
</span><span class="cx">     jsTestNamedConstructor-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestNodecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestNodeConstructor::constructJSTestNode(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestNodeConstructor* castedThis = jsCast&lt;JSTestNodeConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestNodeConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     RefPtr&lt;TestNode&gt; object = TestNode::create();
</span><span class="cx">     return JSValue::encode(asObject(toJS(exec, castedThis-&gt;globalObject(), object.get())));
</span><span class="cx"> }
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestNode::visitChildren(JSCell* cell, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestNode* thisObject = jsCast&lt;JSTestNode*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestNode*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     Base::visitChildren(thisObject, visitor);
</span><span class="cx">     thisObject-&gt;impl().visitJSEventListeners(visitor);
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestNondeterministiccpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -199,7 +199,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.nondeterministicReadonlyAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -236,7 +236,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.nondeterministicWriteableAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -273,7 +273,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.nondeterministicExceptionAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -313,7 +313,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.nondeterministicGetterExceptionAttr(ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -351,7 +351,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.nondeterministicSetterExceptionAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -377,7 +377,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestNondeterministic&quot;, &quot;nondeterministicWriteableAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -397,7 +397,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestNondeterministic&quot;, &quot;nondeterministicExceptionAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -417,7 +417,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestNondeterministic&quot;, &quot;nondeterministicGetterExceptionAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -437,7 +437,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestNondeterministic&quot;, &quot;nondeterministicSetterExceptionAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="lines">@@ -459,7 +459,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestNondeterministic&quot;, &quot;nondeterministicZeroArgFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestNondeterministic::info());
</span><del>-    TestNondeterministic&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result;
</span><span class="cx"> #if ENABLE(WEB_REPLAY)
</span><span class="cx">     InputCursor&amp; cursor = exec-&gt;lexicalGlobalObject()-&gt;inputCursor();
</span><span class="lines">@@ -492,8 +492,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestNondeterministicOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestNondeterministic* jsTestNondeterministic = jsCast&lt;JSTestNondeterministic*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestNondeterministic = jsCast&lt;JSTestNondeterministic*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestNondeterministic-&gt;impl(), jsTestNondeterministic);
</span><span class="cx">     jsTestNondeterministic-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestObjcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -442,7 +442,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestObjConstructor::constructJSTestObj(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestObjConstructor* castedThis = jsCast&lt;JSTestObjConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObjConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     if (!exec-&gt;argument(0).isFunction())
</span><span class="lines">@@ -684,7 +684,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestObj::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestObj* thisObject = jsCast&lt;JSTestObj*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestObj*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     return getStaticValueSlot&lt;JSTestObj, Base&gt;(exec, JSTestObjTable, thisObject, propertyName, slot);
</span><span class="cx"> }
</span><span class="lines">@@ -700,7 +700,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;readOnlyLongAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;readOnlyLongAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.readOnlyLongAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -717,7 +717,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;readOnlyStringAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;readOnlyStringAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.readOnlyStringAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -734,7 +734,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;readOnlyTestObjAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;readOnlyTestObjAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.readOnlyTestObjAttr()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -765,7 +765,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(JSTestSubObj::getConstructor(exec-&gt;vm(), castedThis-&gt;globalObject()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -775,7 +775,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     if (!castedThis-&gt;impl().frame())
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     Settings&amp; settings = castedThis-&gt;impl().frame()-&gt;settings();
</span><span class="lines">@@ -796,7 +796,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;enumAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;enumAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.enumAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -813,7 +813,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;byteAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;byteAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.byteAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -830,7 +830,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;octetAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;octetAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.octetAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -847,7 +847,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;shortAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;shortAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.shortAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -864,7 +864,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;unsignedShortAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;unsignedShortAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.unsignedShortAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -881,7 +881,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;longAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;longAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.longAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -898,7 +898,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;longLongAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;longLongAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.longLongAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -915,7 +915,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.unsignedLongLongAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -932,7 +932,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;stringAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.stringAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -949,7 +949,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;testObjAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;testObjAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.testObjAttr()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -966,7 +966,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;XMLObjAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;XMLObjAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.xmlObjAttr()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -983,7 +983,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;create&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;create&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsBoolean(impl.isCreate());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1000,7 +1000,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.fastGetAttribute(WebCore::HTMLNames::reflectedstringattrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1017,7 +1017,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedIntegralAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedIntegralAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.getIntegralAttribute(WebCore::HTMLNames::reflectedintegralattrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1034,7 +1034,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedUnsignedIntegralAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedUnsignedIntegralAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(std::max(0, impl.getIntegralAttribute(WebCore::HTMLNames::reflectedunsignedintegralattrAttr)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1051,7 +1051,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedBooleanAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedBooleanAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsBoolean(impl.fastHasAttribute(WebCore::HTMLNames::reflectedbooleanattrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1068,7 +1068,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedURLAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedURLAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.getURLAttribute(WebCore::HTMLNames::reflectedurlattrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1085,7 +1085,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.fastGetAttribute(WebCore::HTMLNames::customContentStringAttrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1102,7 +1102,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomIntegralAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomIntegralAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.getIntegralAttribute(WebCore::HTMLNames::customContentIntegralAttrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1119,7 +1119,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomBooleanAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomBooleanAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsBoolean(impl.fastHasAttribute(WebCore::HTMLNames::customContentBooleanAttrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1136,7 +1136,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomURLAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomURLAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.getURLAttribute(WebCore::HTMLNames::customContentURLAttrAttr));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1153,7 +1153,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;typedArrayAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;typedArrayAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.typedArrayAttr()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1171,7 +1171,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;attrWithGetterException&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.attrWithGetterException(ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1189,7 +1189,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.attrWithSetterException());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1207,7 +1207,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttrWithGetterException&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.stringAttrWithGetterException(ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1225,7 +1225,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.stringAttrWithSetterException());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1236,7 +1236,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(castedThis-&gt;customAttr(exec));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1252,7 +1252,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;withScriptStateAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateAttribute&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.withScriptStateAttribute(exec));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1269,10 +1269,10 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAttribute&quot;);
</span><span class="cx">     }
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAttribute(scriptContext)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1290,7 +1290,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateAttributeRaises&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptStateAttributeRaises(exec, ec)));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1309,10 +1309,10 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAttributeRaises&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAttributeRaises(scriptContext, ec)));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1330,10 +1330,10 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateAttribute&quot;);
</span><span class="cx">     }
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateAttribute(exec, scriptContext)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1351,10 +1351,10 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateAttributeRaises&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateAttributeRaises(exec, scriptContext, ec)));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1372,10 +1372,10 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateWithSpacesAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateWithSpacesAttribute&quot;);
</span><span class="cx">     }
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateWithSpacesAttribute(exec, scriptContext)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1392,7 +1392,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;withScriptArgumentsAndCallStackAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptArgumentsAndCallStackAttribute&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptArgumentsAndCallStackAttribute()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1410,7 +1410,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr1&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr1&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.conditionalAttr1());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1429,7 +1429,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr2&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr2&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.conditionalAttr2());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1448,7 +1448,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr3&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr3&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.conditionalAttr3());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1461,7 +1461,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(JSTestObjectA::getConstructor(exec-&gt;vm(), castedThis-&gt;globalObject()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1473,7 +1473,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(JSTestObjectB::getConstructor(exec-&gt;vm(), castedThis-&gt;globalObject()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1485,7 +1485,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(JSTestObjectC::getConstructor(exec-&gt;vm(), castedThis-&gt;globalObject()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1504,7 +1504,7 @@
</span><span class="cx">     }
</span><span class="cx">     if (JSValue cachedValue = castedThis-&gt;m_cachedAttribute1.get())
</span><span class="cx">         return JSValue::encode(cachedValue);
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = (impl.cachedAttribute1().hasNoValue() ? jsNull() : impl.cachedAttribute1().jsValue());
</span><span class="cx">     castedThis-&gt;m_cachedAttribute1.set(exec-&gt;vm(), castedThis, result);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1524,7 +1524,7 @@
</span><span class="cx">     }
</span><span class="cx">     if (JSValue cachedValue = castedThis-&gt;m_cachedAttribute2.get())
</span><span class="cx">         return JSValue::encode(cachedValue);
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = (impl.cachedAttribute2().hasNoValue() ? jsNull() : impl.cachedAttribute2().jsValue());
</span><span class="cx">     castedThis-&gt;m_cachedAttribute2.set(exec-&gt;vm(), castedThis, result);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -1542,7 +1542,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;anyAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;anyAttribute&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = (impl.anyAttribute().hasNoValue() ? jsNull() : impl.anyAttribute().jsValue());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1553,8 +1553,8 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(slotBase);
+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     return JSValue::encode(shouldAllowAccessToNode(exec, impl.contentDocument()) ? toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.contentDocument())) : jsNull());
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1570,7 +1570,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;mutablePoint&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;mutablePoint&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(SVGStaticPropertyTearOff&lt;TestObj, SVGPoint&gt;::create(impl, impl.mutablePoint(), &amp;TestObj::updateMutablePoint)));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1587,7 +1587,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;immutablePoint&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;immutablePoint&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(SVGPropertyTearOff&lt;SVGPoint&gt;::create(impl.immutablePoint())));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1604,7 +1604,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;strawberry&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;strawberry&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.blueberry());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1621,7 +1621,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;strictFloat&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;strictFloat&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.strictFloat());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1638,7 +1638,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;description&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;description&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.description());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1655,7 +1655,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;id&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;id&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.id());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1672,7 +1672,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;hash&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;hash&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.hash());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1689,7 +1689,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;replaceableAttribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;replaceableAttribute&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.replaceableAttribute());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1707,7 +1707,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableDoubleAttribute&quot;);
</span><span class="cx">     }
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.nullableDoubleAttribute(isNull));
</span><span class="cx">     if (isNull)
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -1727,7 +1727,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableLongAttribute&quot;);
</span><span class="cx">     }
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.nullableLongAttribute(isNull));
</span><span class="cx">     if (isNull)
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -1747,7 +1747,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableBooleanAttribute&quot;);
</span><span class="cx">     }
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsBoolean(impl.nullableBooleanAttribute(isNull));
</span><span class="cx">     if (isNull)
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -1767,7 +1767,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableStringAttribute&quot;);
</span><span class="cx">     }
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.nullableStringAttribute(isNull));
</span><span class="cx">     if (isNull)
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -1787,7 +1787,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableLongSettableAttribute&quot;);
</span><span class="cx">     }
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.nullableLongSettableAttribute(isNull));
</span><span class="cx">     if (isNull)
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -1808,7 +1808,7 @@
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     bool isNull = false;
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.nullableStringValue(isNull, ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     if (isNull)
</span><span class="lines">@@ -1828,7 +1828,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;attribute&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;attribute&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.attribute());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1845,7 +1845,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestObj&quot;, &quot;attributeWithReservedEnumType&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestObj&quot;, &quot;attributeWithReservedEnumType&quot;);
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.attributeWithReservedEnumType());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -1875,10 +1875,10 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><del>-    // Shadowing a built-in constructor
</del><ins>+    // Shadowing a built-in constructor.
</ins><span class="cx">     castedThis-&gt;putDirect(exec-&gt;vm(), Identifier(exec, &quot;TestSubObjEnabledBySetting&quot;), value);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1895,7 +1895,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;enumAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -1917,7 +1917,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;byteAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int8_t nativeValue(toInt8(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -1937,7 +1937,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;octetAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     uint8_t nativeValue(toUInt8(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -1957,7 +1957,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;shortAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int16_t nativeValue(toInt16(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -1977,7 +1977,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;unsignedShortAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     uint16_t nativeValue(toUInt16(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -1997,7 +1997,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;longAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2017,7 +2017,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;longLongAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     long long nativeValue(toInt64(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2037,7 +2037,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     unsigned long long nativeValue(toUInt64(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2057,7 +2057,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2077,7 +2077,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;testObjAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2097,7 +2097,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;XMLObjAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2117,7 +2117,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;create&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     bool nativeValue(value.toBoolean(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2137,7 +2137,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(valueToStringWithNullCheck(exec, value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2157,7 +2157,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedIntegralAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2177,7 +2177,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedUnsignedIntegralAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     unsigned nativeValue(toUInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2197,7 +2197,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedBooleanAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     bool nativeValue(value.toBoolean(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2217,7 +2217,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedURLAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(valueToStringWithNullCheck(exec, value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2237,7 +2237,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedStringAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(valueToStringWithNullCheck(exec, value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2257,7 +2257,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomIntegralAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2277,7 +2277,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomBooleanAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     bool nativeValue(value.toBoolean(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2297,7 +2297,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;reflectedCustomURLAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(valueToStringWithNullCheck(exec, value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2317,7 +2317,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;typedArrayAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;Float32Array&gt; nativeValue(toFloat32Array(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2337,7 +2337,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;attrWithGetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2357,7 +2357,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="lines">@@ -2379,7 +2379,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttrWithGetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2399,7 +2399,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="lines">@@ -2414,7 +2414,7 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     castedThis-&gt;setCustomAttr(exec, value);
</span><span class="lines">@@ -2433,7 +2433,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2453,11 +2453,11 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return;
</span><span class="cx">     impl.setWithScriptExecutionContextAttribute(scriptContext, nativeValue);
</span><span class="lines">@@ -2476,7 +2476,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateAttributeRaises&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2496,11 +2496,11 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAttributeRaises&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return;
</span><span class="cx">     impl.setWithScriptExecutionContextAttributeRaises(scriptContext, nativeValue);
</span><span class="lines">@@ -2519,11 +2519,11 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return;
</span><span class="cx">     impl.setWithScriptExecutionContextAndScriptStateAttribute(exec, scriptContext, nativeValue);
</span><span class="lines">@@ -2542,11 +2542,11 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateAttributeRaises&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return;
</span><span class="cx">     impl.setWithScriptExecutionContextAndScriptStateAttributeRaises(exec, scriptContext, nativeValue);
</span><span class="lines">@@ -2565,11 +2565,11 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateWithSpacesAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return;
</span><span class="cx">     impl.setWithScriptExecutionContextAndScriptStateWithSpacesAttribute(exec, scriptContext, nativeValue);
</span><span class="lines">@@ -2588,7 +2588,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptArgumentsAndCallStackAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     TestObj* nativeValue(JSTestObj::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2609,7 +2609,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr1&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2631,7 +2631,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr2&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2653,7 +2653,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalAttr3&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2668,10 +2668,10 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><del>-    // Shadowing a built-in constructor
</del><ins>+    // Shadowing a built-in constructor.
</ins><span class="cx">     castedThis-&gt;putDirect(exec-&gt;vm(), Identifier(exec, &quot;conditionalAttr4&quot;), value);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2683,10 +2683,10 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><del>-    // Shadowing a built-in constructor
</del><ins>+    // Shadowing a built-in constructor.
</ins><span class="cx">     castedThis-&gt;putDirect(exec-&gt;vm(), Identifier(exec, &quot;conditionalAttr5&quot;), value);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2698,10 +2698,10 @@
</span><span class="cx">     JSValue value = JSValue::decode(encodedValue);
</span><span class="cx">     UNUSED_PARAM(baseObject);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestObj* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestObj*&gt;(baseObject);
</ins><span class="cx">     UNUSED_PARAM(thisValue);
</span><span class="cx">     UNUSED_PARAM(exec);
</span><del>-    // Shadowing a built-in constructor
</del><ins>+    // Shadowing a built-in constructor.
</ins><span class="cx">     castedThis-&gt;putDirect(exec-&gt;vm(), Identifier(exec, &quot;conditionalAttr6&quot;), value);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2719,7 +2719,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;anyAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     Deprecated::ScriptValue nativeValue(exec-&gt;vm(), value);
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2739,7 +2739,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;mutablePoint&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     SVGPropertyTearOff&lt;SVGPoint&gt;* nativeValue(JSSVGPoint::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2759,7 +2759,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;immutablePoint&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     SVGPropertyTearOff&lt;SVGPoint&gt;* nativeValue(JSSVGPoint::toWrapped(value));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2779,7 +2779,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;strawberry&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2799,7 +2799,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;strictFloat&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     float nativeValue(value.toFloat(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2819,7 +2819,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;id&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2839,7 +2839,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;replaceableAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    // Shadowing a built-in object
</del><ins>+    // Shadowing a built-in object.
</ins><span class="cx">     castedThis-&gt;putDirect(exec-&gt;vm(), Identifier(exec, &quot;replaceableAttribute&quot;), value);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2856,7 +2856,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableLongSettableAttribute&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2876,7 +2876,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;nullableStringValue&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2896,7 +2896,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestObj&quot;, &quot;attributeWithReservedEnumType&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -2918,7 +2918,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;voidMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.voidMethod();
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -2930,7 +2930,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;voidMethodWithArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int longArg(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -2953,7 +2953,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;byteMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.byteMethod());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -2965,7 +2965,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;byteMethodWithArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int8_t byteArg(toInt8(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -2988,7 +2988,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;octetMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.octetMethod());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -3000,7 +3000,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;octetMethodWithArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     uint8_t octetArg(toUInt8(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3023,7 +3023,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;longMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.longMethod());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -3035,7 +3035,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;longMethodWithArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int longArg(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3058,7 +3058,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;objMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.objMethod()));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -3070,7 +3070,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;objMethodWithArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int longArg(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3093,7 +3093,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithSequenceArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;RefPtr&lt;ScriptProfile&gt;&gt; sequenceArg((toRefPtrNativeArray&lt;ScriptProfile, JSScriptProfile&gt;(exec, exec-&gt;argument(0), &amp;JSScriptProfile::toWrapped)));
</span><span class="lines">@@ -3110,7 +3110,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodReturningSequence&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int longArg(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3127,7 +3127,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithEnumArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String enumArg(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -3146,7 +3146,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodThatRequiresAllArgsAndThrows&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -3169,7 +3169,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;serializedValue&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     RefPtr&lt;SerializedScriptValue&gt; serializedArg(SerializedScriptValue::create(exec, exec-&gt;argument(0), 0, 0));
</span><span class="lines">@@ -3186,7 +3186,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;optionsObject&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Dictionary oo(exec, exec-&gt;argument(0));
</span><span class="lines">@@ -3206,7 +3206,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithException&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     impl.methodWithException(ec);
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="lines">@@ -3240,7 +3240,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;addEventListener&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue listener = exec-&gt;argument(1);
</span><span class="cx">     if (UNLIKELY(!listener.isObject()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3255,7 +3255,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;removeEventListener&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue listener = exec-&gt;argument(1);
</span><span class="cx">     if (UNLIKELY(!listener.isObject()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3270,7 +3270,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateVoid&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.withScriptStateVoid(exec);
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -3282,7 +3282,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateObj&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptStateObj(exec)));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3296,7 +3296,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateVoidException&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     impl.withScriptStateVoidException(exec, ec);
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="lines">@@ -3310,7 +3310,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptStateObjException&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptStateObjException(exec, ec)));
</span><span class="cx"> 
</span><span class="lines">@@ -3327,8 +3327,8 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContext&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.withScriptExecutionContext(scriptContext);
</span><span class="lines">@@ -3342,8 +3342,8 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptState&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     impl.withScriptExecutionContextAndScriptState(exec, scriptContext);
</span><span class="lines">@@ -3357,9 +3357,9 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateObjException&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><del>-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateObjException(exec, scriptContext, ec)));
</span><span class="lines">@@ -3377,8 +3377,8 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptExecutionContextAndScriptStateWithSpaces&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
-    ScriptExecutionContext* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
+    auto* scriptContext = jsCast&lt;JSDOMGlobalObject*&gt;(exec-&gt;lexicalGlobalObject())-&gt;scriptExecutionContext();
</ins><span class="cx">     if (!scriptContext)
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(impl.withScriptExecutionContextAndScriptStateWithSpaces(exec, scriptContext)));
</span><span class="lines">@@ -3394,7 +3394,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;withScriptArgumentsAndCallStack&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;Inspector::ScriptArguments&gt; scriptArguments(Inspector::createScriptArguments(exec, 0));
</span><span class="cx">     impl.withScriptArgumentsAndCallStack(scriptArguments.release());
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3407,7 +3407,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithOptionalArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx"> 
</span><span class="cx">     size_t argsCount = exec-&gt;argumentCount();
</span><span class="cx">     if (argsCount &lt;= 0) {
</span><span class="lines">@@ -3429,7 +3429,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithNonOptionalArgAndOptionalArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int nonOpt(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3456,7 +3456,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithNonOptionalArgAndTwoOptionalArgs&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int nonOpt(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3491,7 +3491,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithOptionalString&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx"> 
</span><span class="cx">     size_t argsCount = exec-&gt;argumentCount();
</span><span class="cx">     if (argsCount &lt;= 0) {
</span><span class="lines">@@ -3513,7 +3513,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithOptionalStringIsUndefined&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; str(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3528,7 +3528,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithOptionalStringIsNullString&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; str(argumentOrNull(exec, 0).isEmpty() ? String() : argumentOrNull(exec, 0).toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return JSValue::encode(jsUndefined());
</span><span class="lines">@@ -3543,7 +3543,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithCallbackArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     if (!exec-&gt;argument(0).isFunction())
</span><span class="lines">@@ -3560,7 +3560,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithNonCallbackArgAndCallbackArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int nonCallback(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3580,7 +3580,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithCallbackAndOptionalArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;TestCallback&gt; callback;
</span><span class="cx">     if (!exec-&gt;argument(0).isUndefinedOrNull()) {
</span><span class="cx">         if (!exec-&gt;uncheckedArgument(0).isFunction())
</span><span class="lines">@@ -3622,7 +3622,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalMethod1&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.conditionalMethod1());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -3637,7 +3637,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalMethod2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.conditionalMethod2();
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -3652,7 +3652,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;conditionalMethod3&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.conditionalMethod3();
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -3666,7 +3666,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestObj* objArg(JSTestObj::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -3686,7 +3686,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestObj* objArg(JSTestObj::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -3713,7 +3713,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; strArg(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -3730,7 +3730,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     int longArg(toInt32(exec, exec-&gt;argument(0), NormalConversion));
</span><span class="lines">@@ -3747,7 +3747,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     if (!exec-&gt;argument(0).isFunction())
</span><span class="lines">@@ -3764,7 +3764,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     RefPtr&lt;DOMStringList&gt; listArg(toDOMStringList(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -3781,7 +3781,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;String&gt; arrayArg(toNativeArray&lt;String&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -3798,7 +3798,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestObj* objArg(JSTestObj::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -3815,7 +3815,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;String&gt; arrayArg(toNativeArray&lt;String&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -3832,7 +3832,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;unsigned&gt; arrayArg(toNativeArray&lt;unsigned&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -3849,7 +3849,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;overloadedMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; strArg(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -3974,7 +3974,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;classMethodWithClamp&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     unsigned short objArgsShort = 0;
</span><span class="lines">@@ -4004,7 +4004,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithUnsignedLongSequence&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;unsigned&gt; unsignedLongSequence(toNativeArray&lt;unsigned&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -4021,7 +4021,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;stringArrayFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -4041,7 +4041,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;domStringListFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -4061,7 +4061,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithAndWithoutNullableSequence&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;unsigned&gt; arrayArg(toNativeArray&lt;unsigned&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -4081,7 +4081,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;methodWithAndWithoutNullableSequence2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;unsigned&gt; arrayArg(toNativeArray&lt;unsigned&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -4101,7 +4101,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;getSVGDocument&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     if (!shouldAllowAccessToNode(exec, impl.getSVGDocument(ec)))
</span><span class="cx">         return JSValue::encode(jsNull());
</span><span class="lines">@@ -4118,7 +4118,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;convert1&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestNode* value(JSTestNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -4135,7 +4135,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;convert2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestNode* value(JSTestNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -4152,7 +4152,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;convert4&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestNode* value(JSTestNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -4169,7 +4169,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;convert5&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     TestNode* value(JSTestNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -4186,7 +4186,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;mutablePointFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(SVGPropertyTearOff&lt;SVGPoint&gt;::create(impl.mutablePointFunction())));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -4198,7 +4198,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;immutablePointFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(SVGPropertyTearOff&lt;SVGPoint&gt;::create(impl.immutablePointFunction())));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -4210,7 +4210,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;orange&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     impl.banana();
</span><span class="cx">     return JSValue::encode(jsUndefined());
</span><span class="cx"> }
</span><span class="lines">@@ -4222,7 +4222,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;strictFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -4248,7 +4248,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;strictFunctionWithSequence&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -4273,7 +4273,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;strictFunctionWithArray&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -4298,7 +4298,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;variadicStringMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; head(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -4318,7 +4318,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;variadicDoubleMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     double head(exec-&gt;argument(0).toNumber(exec));
</span><span class="lines">@@ -4338,7 +4338,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;variadicNodeMethod&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Node* head(JSNode::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -4361,7 +4361,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestObj&quot;, &quot;any&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestObj::info());
</span><del>-    TestObj&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     float a(exec-&gt;argument(0).toFloat(exec));
</span><span class="lines">@@ -4376,7 +4376,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestObj::visitChildren(JSCell* cell, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestObj* thisObject = jsCast&lt;JSTestObj*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestObj*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     Base::visitChildren(thisObject, visitor);
</span><span class="cx">     visitor.append(&amp;thisObject-&gt;m_cachedAttribute1);
</span><span class="lines">@@ -4392,8 +4392,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestObjOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestObj* jsTestObj = jsCast&lt;JSTestObj*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestObj = jsCast&lt;JSTestObj*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestObj-&gt;impl(), jsTestObj);
</span><span class="cx">     jsTestObj-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestOverloadedConstructorscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -91,7 +91,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors1(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestOverloadedConstructorsConstructor* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ArrayBuffer* arrayBuffer(toArrayBuffer(exec-&gt;argument(0)));
</span><span class="lines">@@ -103,7 +103,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestOverloadedConstructorsConstructor* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     RefPtr&lt;ArrayBufferView&gt; arrayBufferView(toArrayBufferView(exec-&gt;argument(0)));
</span><span class="lines">@@ -115,7 +115,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors3(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestOverloadedConstructorsConstructor* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Blob* blob(JSBlob::toWrapped(exec-&gt;argument(0)));
</span><span class="lines">@@ -127,7 +127,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors4(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestOverloadedConstructorsConstructor* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestOverloadedConstructorsConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; string(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -241,8 +241,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestOverloadedConstructorsOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestOverloadedConstructors* jsTestOverloadedConstructors = jsCast&lt;JSTestOverloadedConstructors*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestOverloadedConstructors = jsCast&lt;JSTestOverloadedConstructors*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestOverloadedConstructors-&gt;impl(), jsTestOverloadedConstructors);
</span><span class="cx">     jsTestOverloadedConstructors-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestSerializedScriptValueInterfacecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -169,7 +169,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;value&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;value&quot;);
</span><span class="cx">     }
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = impl.value() ? impl.value()-&gt;deserialize(exec, castedThis-&gt;globalObject(), 0) : jsNull();
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -186,7 +186,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;readonlyValue&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;readonlyValue&quot;);
</span><span class="cx">     }
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = impl.readonlyValue() ? impl.readonlyValue()-&gt;deserialize(exec, castedThis-&gt;globalObject(), 0) : jsNull();
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -205,7 +205,7 @@
</span><span class="cx">     }
</span><span class="cx">     if (JSValue cachedValue = castedThis-&gt;m_cachedValue.get())
</span><span class="cx">         return JSValue::encode(cachedValue);
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = impl.cachedValue() ? impl.cachedValue()-&gt;deserialize(exec, castedThis-&gt;globalObject(), 0) : jsNull();
</span><span class="cx">     castedThis-&gt;m_cachedValue.set(exec-&gt;vm(), castedThis, result);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -223,7 +223,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;ports&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;ports&quot;);
</span><span class="cx">     }
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsArray(exec, castedThis-&gt;globalObject(), impl.ports());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -242,7 +242,7 @@
</span><span class="cx">     }
</span><span class="cx">     if (JSValue cachedValue = castedThis-&gt;m_cachedReadonlyValue.get())
</span><span class="cx">         return JSValue::encode(cachedValue);
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = impl.cachedReadonlyValue() ? impl.cachedReadonlyValue()-&gt;deserialize(exec, castedThis-&gt;globalObject(), 0) : jsNull();
</span><span class="cx">     castedThis-&gt;m_cachedReadonlyValue.set(exec-&gt;vm(), castedThis, result);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -269,7 +269,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;value&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;SerializedScriptValue&gt; nativeValue(SerializedScriptValue::create(exec, value, 0, 0));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -289,7 +289,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestSerializedScriptValueInterface&quot;, &quot;cachedValue&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestSerializedScriptValueInterface&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;SerializedScriptValue&gt; nativeValue(SerializedScriptValue::create(exec, value, 0, 0));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -304,7 +304,7 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestSerializedScriptValueInterface::visitChildren(JSCell* cell, SlotVisitor&amp; visitor)
</span><span class="cx"> {
</span><del>-    JSTestSerializedScriptValueInterface* thisObject = jsCast&lt;JSTestSerializedScriptValueInterface*&gt;(cell);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestSerializedScriptValueInterface*&gt;(cell);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     Base::visitChildren(thisObject, visitor);
</span><span class="cx">     visitor.append(&amp;thisObject-&gt;m_cachedValue);
</span><span class="lines">@@ -320,8 +320,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestSerializedScriptValueInterfaceOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestSerializedScriptValueInterface* jsTestSerializedScriptValueInterface = jsCast&lt;JSTestSerializedScriptValueInterface*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestSerializedScriptValueInterface = jsCast&lt;JSTestSerializedScriptValueInterface*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestSerializedScriptValueInterface-&gt;impl(), jsTestSerializedScriptValueInterface);
</span><span class="cx">     jsTestSerializedScriptValueInterface-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSTestTypedefscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -146,7 +146,7 @@
</span><span class="cx"> 
</span><span class="cx"> EncodedJSValue JSC_HOST_CALL JSTestTypedefsConstructor::constructJSTestTypedefs(ExecState* exec)
</span><span class="cx"> {
</span><del>-    JSTestTypedefsConstructor* castedThis = jsCast&lt;JSTestTypedefsConstructor*&gt;(exec-&gt;callee());
</del><ins>+    auto* castedThis = jsCast&lt;JSTestTypedefsConstructor*&gt;(exec-&gt;callee());
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 2))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     const String&amp; hello(exec-&gt;argument(0).isEmpty() ? String() : exec-&gt;argument(0).toString(exec)-&gt;value(exec));
</span><span class="lines">@@ -243,7 +243,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool JSTestTypedefs::getOwnPropertySlot(JSObject* object, ExecState* exec, PropertyName propertyName, PropertySlot&amp; slot)
</span><span class="cx"> {
</span><del>-    JSTestTypedefs* thisObject = jsCast&lt;JSTestTypedefs*&gt;(object);
</del><ins>+    auto* thisObject = jsCast&lt;JSTestTypedefs*&gt;(object);
</ins><span class="cx">     ASSERT_GC_OBJECT_INHERITS(thisObject, info());
</span><span class="cx">     return getStaticValueSlot&lt;JSTestTypedefs, Base&gt;(exec, JSTestTypedefsTable, thisObject, propertyName, slot);
</span><span class="cx"> }
</span><span class="lines">@@ -259,7 +259,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestTypedefs&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.unsignedLongLongAttr());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -276,7 +276,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestTypedefs&quot;, &quot;immutableSerializedScriptValue&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;immutableSerializedScriptValue&quot;);
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = impl.immutableSerializedScriptValue() ? impl.immutableSerializedScriptValue()-&gt;deserialize(exec, castedThis-&gt;globalObject(), 0) : jsNull();
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -287,7 +287,7 @@
</span><span class="cx">     UNUSED_PARAM(exec);
</span><span class="cx">     UNUSED_PARAM(slotBase);
</span><span class="cx">     UNUSED_PARAM(thisValue);
</span><del>-    JSTestTypedefs* castedThis = jsCast&lt;JSTestTypedefs*&gt;(slotBase);
</del><ins>+    auto* castedThis = jsCast&lt;JSTestTypedefs*&gt;(slotBase);
</ins><span class="cx">     return JSValue::encode(JSTestSubObj::getConstructor(exec-&gt;vm(), castedThis-&gt;globalObject()));
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -304,7 +304,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;attrWithGetterException&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.attrWithGetterException(ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -322,7 +322,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestTypedefs&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsNumber(impl.attrWithSetterException());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -340,7 +340,7 @@
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringAttrWithGetterException&quot;);
</span><span class="cx">     }
</span><span class="cx">     ExceptionCode ec = 0;
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.stringAttrWithGetterException(ec));
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="cx">     return JSValue::encode(result);
</span><span class="lines">@@ -358,7 +358,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;TestTypedefs&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.stringAttrWithSetterException());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -384,7 +384,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;unsignedLongLongAttr&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     unsigned long long nativeValue(toUInt64(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -404,7 +404,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;immutableSerializedScriptValue&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     RefPtr&lt;SerializedScriptValue&gt; nativeValue(SerializedScriptValue::create(exec, value, 0, 0));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -424,7 +424,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;attrWithGetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -444,7 +444,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;attrWithSetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     int nativeValue(toInt32(exec, value, NormalConversion));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="lines">@@ -466,7 +466,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringAttrWithGetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="cx">         return;
</span><span class="lines">@@ -486,7 +486,7 @@
</span><span class="cx">             throwSetterTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringAttrWithSetterException&quot;);
</span><span class="cx">         return;
</span><span class="cx">     }
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     const String&amp; nativeValue(value.isEmpty() ? String() : value.toString(exec)-&gt;value(exec));
</span><span class="cx">     if (UNLIKELY(exec-&gt;hadException()))
</span><span class="lines">@@ -508,7 +508,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;func&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx"> 
</span><span class="cx">     size_t argsCount = exec-&gt;argumentCount();
</span><span class="cx">     if (argsCount &lt;= 0) {
</span><span class="lines">@@ -530,7 +530,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;setShadow&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 3))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     float width(exec-&gt;argument(0).toFloat(exec));
</span><span class="lines">@@ -571,7 +571,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;methodWithSequenceArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;RefPtr&lt;SerializedScriptValue&gt;&gt; sequenceArg((toRefPtrNativeArray&lt;SerializedScriptValue, JSSerializedScriptValue&gt;(exec, exec-&gt;argument(0), &amp;JSSerializedScriptValue::toWrapped)));
</span><span class="lines">@@ -588,7 +588,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;nullableArrayArg&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;String&gt; arrayArg(toNativeArray&lt;String&gt;(exec, exec-&gt;argument(0)));
</span><span class="lines">@@ -605,7 +605,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;funcWithClamp&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     unsigned long long arg1 = 0;
</span><span class="lines">@@ -642,7 +642,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;immutablePointFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = toJS(exec, castedThis-&gt;globalObject(), WTF::getPtr(SVGPropertyTearOff&lt;SVGPoint&gt;::create(impl.immutablePointFunction())));
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -654,7 +654,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringArrayFunction&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -674,7 +674,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;stringArrayFunction2&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     ExceptionCode ec = 0;
</span><span class="lines">@@ -694,7 +694,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;callWithSequenceThatRequiresInclude&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     if (UNLIKELY(exec-&gt;argumentCount() &lt; 1))
</span><span class="cx">         return throwVMError(exec, createNotEnoughArgumentsError(exec));
</span><span class="cx">     Vector&lt;RefPtr&lt;TestEventTarget&gt;&gt; sequenceArg((toRefPtrNativeArray&lt;TestEventTarget, JSTestEventTarget&gt;(exec, exec-&gt;argument(0), &amp;JSTestEventTarget::toWrapped)));
</span><span class="lines">@@ -711,7 +711,7 @@
</span><span class="cx">     if (UNLIKELY(!castedThis))
</span><span class="cx">         return throwThisTypeError(*exec, &quot;TestTypedefs&quot;, &quot;methodWithException&quot;);
</span><span class="cx">     ASSERT_GC_OBJECT_INHERITS(castedThis, JSTestTypedefs::info());
</span><del>-    TestTypedefs&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     ExceptionCode ec = 0;
</span><span class="cx">     impl.methodWithException(ec);
</span><span class="cx">     setDOMException(exec, ec);
</span><span class="lines">@@ -727,8 +727,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSTestTypedefsOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSTestTypedefs* jsTestTypedefs = jsCast&lt;JSTestTypedefs*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsTestTypedefs = jsCast&lt;JSTestTypedefs*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsTestTypedefs-&gt;impl(), jsTestTypedefs);
</span><span class="cx">     jsTestTypedefs-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSattributecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -154,7 +154,7 @@
</span><span class="cx">             return reportDeprecatedGetterError(*exec, &quot;attribute&quot;, &quot;readonly&quot;);
</span><span class="cx">         return throwGetterTypeError(*exec, &quot;attribute&quot;, &quot;readonly&quot;);
</span><span class="cx">     }
</span><del>-    attribute&amp; impl = castedThis-&gt;impl();
</del><ins>+    auto&amp; impl = castedThis-&gt;impl();
</ins><span class="cx">     JSValue result = jsStringWithCache(exec, impl.readonly());
</span><span class="cx">     return JSValue::encode(result);
</span><span class="cx"> }
</span><span class="lines">@@ -182,8 +182,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSattributeOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSattribute* jsattribute = jsCast&lt;JSattribute*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsattribute = jsCast&lt;JSattribute*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsattribute-&gt;impl(), jsattribute);
</span><span class="cx">     jsattribute-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsscriptstestJSJSreadonlycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp (181002 => 181003)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp        2015-03-04 17:50:18 UTC (rev 181002)
+++ trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp        2015-03-04 18:40:08 UTC (rev 181003)
</span><span class="lines">@@ -160,8 +160,8 @@
</span><span class="cx"> 
</span><span class="cx"> void JSreadonlyOwner::finalize(JSC::Handle&lt;JSC::Unknown&gt; handle, void* context)
</span><span class="cx"> {
</span><del>-    JSreadonly* jsreadonly = jsCast&lt;JSreadonly*&gt;(handle.slot()-&gt;asCell());
-    DOMWrapperWorld&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</del><ins>+    auto* jsreadonly = jsCast&lt;JSreadonly*&gt;(handle.slot()-&gt;asCell());
+    auto&amp; world = *static_cast&lt;DOMWrapperWorld*&gt;(context);
</ins><span class="cx">     uncacheWrapper(world, &amp;jsreadonly-&gt;impl(), jsreadonly);
</span><span class="cx">     jsreadonly-&gt;releaseImpl();
</span><span class="cx"> }
</span></span></pre>
</div>
</div>

</body>
</html>