On Jun 11, 2014, at 8:16 AM, Tom Van Cutsem wrote:

> 
> 2014-06-11 16:48 GMT+02:00 Erik Arvidsson <erik.arvids...@gmail.com>:
> 
> [*] Proxies are oddballs here. All Proxies have a [[Construct]] method so the 
> IsConstructor will always return true which is really not what you want. If 
> IsConstructor was changed to check for a .prototype instead proxies would 
> behave more inline with ordinary objects.
> 
> No, only proxies whose target has a [[Construct]] method will themselves have 
> a [[Construct]] method. IOW, proxies should be completely transparent w.r.t. 
> the IsConstructor test.
> See 9.5.15 ProxyCreate step 5.b.
> 
> I believe there may be a spec bug, as step 4 should explicitly exclude 
> [[Construct]] and [[Call]], yet seems to include all methods defined in sec 
> 9.5. Allen?
> 

Kind of boarder line.  6.1.7.2 says that the "essential internal methods" are 
those listed in Table 5 (does not include [[Call]] and [[Constructor]]).  Also 
the definitions of [[Call]] and [[Construct]] in 9.5 each include a note that 
says these internal methods are only provided when a corresponding internal 
method exists on the target.

Reading the section as a while, I think it is pretty clear that  that a Proxy 
only has a [[Construct]] internal method if its target also has one. 

Allen

_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to