<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - REGRESSION(182495): Error's &quot;column&quot; property should not be readonly"
   href="https://bugs.webkit.org/show_bug.cgi?id=146047#c4">Comment # 4</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - REGRESSION(182495): Error's &quot;column&quot; property should not be readonly"
   href="https://bugs.webkit.org/show_bug.cgi?id=146047">bug 146047</a>
              from <span class="vcard"><a class="email" href="mailto:joepeck&#64;webkit.org" title="Joseph Pecoraro &lt;joepeck&#64;webkit.org&gt;"> <span class="fn">Joseph Pecoraro</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=146047#c3">comment #3</a>)
<span class="quote">&gt; &gt; &gt; Object.getOwnPropertyDescriptor(error, &quot;lineNumber&quot;)
&gt; &gt; &lt; {value: 1, writable: true, enumerable: true, configurable: true} = $3
&gt; 
&gt; Ahh, this is misleading since no such property already existed, this was
&gt; just added by me.
&gt; 
&gt; I think the relevant part of the original change was:
&gt; 
&gt; +        obj-&gt;putDirect(vm, vm.propertyNames-&gt;line, jsNumber(line), ReadOnly
&gt; | DontDelete);
&gt; +        obj-&gt;putDirect(vm, vm.propertyNames-&gt;column, jsNumber(column),
&gt; ReadOnly | DontDelete);</span >

Actually the original code had something very similar. So I don't actually see how this was writable before... but there is certainly some visible change here.

Other browsers have different property names and descriptor attributes for the error properties. There is no standardization at all with Errors. That said, making the property writable seems reasonable.

Firefox:

    js&gt; Object.getOwnPropertyNames(new Error)
    Array [ &quot;fileName&quot;, &quot;lineNumber&quot;, &quot;columnNumber&quot; ]

    js&gt; Object.getOwnPropertyDescriptor(new Error, &quot;lineNumber&quot;)
    Object { value: 1, writable: true, enumerable: false, configurable: true }

Chrome:

    js&gt; Object.getOwnPropertyNames(new Error)
    [&quot;stack&quot;]

    js&gt; Object.getOwnPropertyDescriptor(new Error, &quot;stack&quot;)
    Object {enumerable: false, configurable: true}</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>