[Bug 19988] add a [LenientFloat] to mean "ignore IDL attribute assignment or method call if a non-finite float is passed"

https://www.w3.org/Bugs/Public/show_bug.cgi?id=19988

--- Comment #4 from Boris Zbarsky <bzbarsky@mit.edu> ---
One other note.  There is an observable difference between the spec as written
right now and what Gecko is doing with [LenientFloat].  In particular, consider
this testcase:

  ctx.moveTo(NaN, { valueOf: { throw "HAHA"; } });

In Gecko's current implementation, and in the obvious way of defining
[LenientFloat], this call will be a no-op.  Per spec as written right now, this
call will throw, because the check for NaN on the first argument is done after
converting all the arguments.

I could probably change Gecko to do the thing current prose says to do in this
sort of edge case, but that would make it harder to optimize calls to such
methods from the JIT...

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Received on Tuesday, 27 November 2012 01:39:32 UTC