On Jun 20, 2011, at 11:17 AM, Mark S. Miller wrote: > Wow, good catch. That's an oversight -- I don't remember this case being > noticed when we discussed this issue. I agree with your conclusion on three > grounds:
I remember this, or at least, I remember discussions about it. It's no different from var in strict eval, AFAICT. I think the spec has enough information to reach the conclusion that no exception should be thrown. /be > > a) The anticipated cases of the prohibition in the note only narrows the > Chapter 16 exemptions -- it only restricts how one can extend the language > beyond what ES5.1 allows. This recommendation can therefore be followed by > implementations that still fully conform to the letter of the ES5.1 spec. If > we interpret the note the way you suggest, we preserve this compatibility. > Otherwise, the note and the letter of the spec come into conflict. > > b) The text of the note recommends "Do not allow a FunctionDeclaration to > occur in a Statement context." In your example, the FunctionDeclaration > appears in a Program production as a SourceElement. This is not a Statement > context. > > c) The hazard that motivates the note does not occur in this case, so there's > no reason to stretch the restriction to apply to this case. > > So your conclusion in consistent with (a) the letter of ES5.1, (b) the letter > of the note, and (c) the spirit of the note. > > +1. > > -- > Cheers, > --MarkM > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

