Strangeness in CreateArgumentsObject definition
# Mark S. Miller (15 years ago)
I believe the spec is correct.
In non-strict mode, only callee is specified, although many implementations may provide a de-facto caller as well. In strict mode, both callee and caller are poisoned. arguments.caller is poisoned in step 14.b as you noticed. On the next page, arguments.callee is poisoned in step 14.c
Hi Oliver, I believe the spec is correct. In non-strict mode, only callee is specified, although many implementations may provide a de-facto caller as well. In strict mode, both callee and caller are poisoned. arguments.caller is poisoned in step 14.b as you noticed. On the next page, arguments.callee is poisoned in step 14.c On Sun, Sep 26, 2010 at 3:00 AM, Oliver Hunt <oliver at apple.com> wrote: > Section 10.6 describes the creation of the arguments object, most of which > makes sense but i think there's a typo in step 14. > > Step 13 describes the definition of the callee property of the arguments > object if strict == false > Step 14 describes the creation of the _caller_ property if strict == true > > I assume that step 14 should be referring to the callee property, otherwise > we're saying in strict mode arguments does not have a "callee" property, but > does have a "caller" property that throws on all accesses. > > --Oliver > > _______________________________________________ > es-discuss mailing list > es-discuss at mozilla.org > https://mail.mozilla.org/listinfo/es-discuss > -- Cheers, --MarkM -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20100926/0f40e5f2/attachment.html>
# Oliver Hunt (15 years ago)
Whoops, my bad curse you page breaks
Whoops, my bad curse you page breaks --Oliver On Sep 26, 2010, at 3:17 AM, Mark S. Miller wrote: > Hi Oliver, I believe the spec is correct. > > In non-strict mode, only callee is specified, although many implementations may provide a de-facto caller as well. > In strict mode, both callee and caller are poisoned. arguments.caller is poisoned in step 14.b as you noticed. On the next page, arguments.callee is poisoned in step 14.c > > On Sun, Sep 26, 2010 at 3:00 AM, Oliver Hunt <oliver at apple.com> wrote: > Section 10.6 describes the creation of the arguments object, most of which makes sense but i think there's a typo in step 14. > > Step 13 describes the definition of the callee property of the arguments object if strict == false > Step 14 describes the creation of the _caller_ property if strict == true > > I assume that step 14 should be referring to the callee property, otherwise we're saying in strict mode arguments does not have a "callee" property, but does have a "caller" property that throws on all accesses. > > --Oliver > > _______________________________________________ > es-discuss mailing list > es-discuss at mozilla.org > https://mail.mozilla.org/listinfo/es-discuss > > > > -- > Cheers, > --MarkM -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20100926/9e6928ad/attachment.html>
Section 10.6 describes the creation of the arguments object, most of which makes sense but i think there's a typo in step 14.
Step 13 describes the definition of the callee property of the arguments object if strict == false Step 14 describes the creation of the caller property if strict == true
I assume that step 14 should be referring to the callee property, otherwise we're saying in strict mode arguments does not have a "callee" property, but does have a "caller" property that throws on all accesses.