Bug 13621

Summary: Decompilation of object literal getter incorrectly includes quotes around name
Product: WebKit Reporter: Jesse Ruderman <jruderman>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal Keywords: HasReduction
Priority: P2    
Version: 523.x (Safari 3)   
Hardware: Mac   
OS: OS X 10.4   
Bug Depends on:    
Bug Blocks: 13638    

Description Jesse Ruderman 2007-05-08 00:23:35 PDT
> (function() { return { get x() { } } })

function () 
{
  return { get "x"()
  {
  } };
}

The decompilation doesn't compile, so I'm pretty sure it's wrong ;)

Found with jsfunfuzz in a nightly.
Comment 1 Eric Seidel (no email) 2007-05-09 16:59:51 PDT
if I'm understanding this correctly, this is trying to get the property value of the name returned by the function x().  I'm not even sure we support that currently.  A PropertyNode holds a PropertyNameNode and seems to expect that it's an identifier.  I'm guessing this will require more than just serializer changes.
Comment 2 Eric Seidel (no email) 2007-05-09 19:24:03 PDT
I was confused earlier.  The problem currently lies that the PropertyNode::toStream knows if it's streaming a getter/setter, but the PropertyNameNode does not.  The propertyNameNode always adds " " around the name.  Maybe the " " addition should just be pulled out into PropertyNode::streamTo
Comment 3 Jesse Ruderman 2008-02-11 17:04:44 PST

*** This bug has been marked as a duplicate of 17018 ***