Banning assignment to a function call

Brendan Eich brendan at mozilla.com
Wed Jun 19 08:13:30 PDT 2013


I blame VBScript (really, scotti@ microsoft).

But I recall a couple of years ago, Maciej said JSC had to allow exactly 
such cursed-legacy content. Perhaps the content no longer exists, but if 
it does, we might not find out until Firefox Beta or Final release. That 
may be worthwhile, or not.

Cc'ing Oliver and Maciej in case they have a link or fresh data.

/be

Jason Orendorff wrote:
> The program
>
>     if (0) Math.sin(0) = 1;
>     alert("OK");
>
> is permitted in all the major browsers. This was explicitly optional 
> in ES1-5, but dropped from ES6:
>
> https://github.com/rwldrn/tc39-notes/blob/master/es6/2012-11/nov-29.md#eliminate-functions-returning-reference-values-from-the-specification 
>
>
> And good riddance, if we really think implementations can drop support 
> for this cursed-legacy syntax. I'm willing to experiment with making 
> this an early ReferenceError in Firefox. But if anyone has tried and 
> run into Web compatibility issues, please speak up and save me some 
> wasted effort!
>
> Thanks,
> -j
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss


More information about the es-discuss mailing list