Status: New
Owner: ----

New issue 694 by nickgsuperstar: __defineSetter__ is ignored, __lookupSetter__ throws exception on global scope/object
http://code.google.com/p/v8/issues/detail?id=694


Detailed description of the issue.

URL: http://v8.googlecode.com/svn/trunk
Repository Root: http://v8.googlecode.com/svn
Repository UUID: ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revision: 4568


Running this in global scope (with a definition of print):

var junk = {}
junk.__defineSetter__('foo', function(x) { print("Setting local foo"); });
junk.foo = 1;
print(junk.__lookupSetter__('foo'));

this.__defineSetter__('foo', function(x) { print("Setting global foo"); });
foo = 1;
print(this.__lookupSetter__('foo'));



Expected:
Setting local foo
function (x) {
    print("Setting local foo");
}
Setting global foo
function (x) {
    print("Setting global foo");
}

Received:
Setting local foo
function (x) { print("Setting local foo"); }
--> JSError: ReferenceError ( extend-test.js @ 50 : 11 ) -> print(this.__lookupSetter__('foo'));



I'm a bit new to V8 so let me know if I should be using a different branch or if you need more
details.

thank!


--nickg


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to