Bug 17931 - Incorrect decompilation with |new|
Summary: Incorrect decompilation with |new|
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Macintosh OS X 10.4
: P2 Minor
Assignee: Nobody
URL:
Keywords: HasReduction, InRadar
Depends on:
Blocks: 13638
  Show dependency treegraph
 
Reported: 2008-03-18 18:21 PDT by Jesse Ruderman
Modified: 2008-06-08 22:21 PDT (History)
1 user (show)

See Also:


Attachments
Test case (2.17 KB, patch)
2008-06-08 22:19 PDT, Cameron Zwarich (cpst)
oliver: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jesse Ruderman 2008-03-18 18:21:31 PDT
> f = (function () { new (a.b()).c })
function () 
{
  new a.b().c;
}

> eval("(" + f + ")")
function () 
{
  (new a.b()).c;
}

At some point, the function changed meaning...

This bug exists in Safari 3.1 and in ToT testkjs.
Comment 1 Mark Rowe (bdash) 2008-03-18 18:59:48 PDT
<rdar://problem/5806713>
Comment 2 Cameron Zwarich (cpst) 2008-06-08 22:19:06 PDT
Created attachment 21589 [details]
Test case

This is trivially fixed by SquirrelFish, because it uses the original source. Here's a test case so we can close the bug.
Comment 3 Cameron Zwarich (cpst) 2008-06-08 22:21:51 PDT
Landed in r34462.