This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The first step is 1. If V is undefined and the IDL type being converted to is DOMString?, then: 1. If the conversion to an IDL value is being performed due to any of the following: ([TreatUndefinedAs]) then: (do stuff) 2. Otherwise... Which means nothing happens if [TreatUndefinedAs] isn't present; to allow for fallback, it should say something more like 1. If V is undefined, the IDL type being converted to is DOMString?, and the conversion to an IDL value is being performed due to any of the following, then: (do stuff) 2. Otherwise... Step 1.1, first bullet: "V is being passed as an operation argument that is annotated with the [TreatUndefinedAs],": s/the// Step 2: "Otherwise, if the result of calling IsCallable(V) is true, then:" s/true/false/. Also, the same error as in step 1. (Note that this special case reinforces my points about TreatNonCallableAsNull.)
(In reply to comment #0) > Which means nothing happens if [TreatUndefinedAs] isn't present; to allow for > fallback, it should say something more like > > 1. If V is undefined, the IDL type being converted to is DOMString?, and > the conversion to an IDL value is being performed due to any of the > following, then: > (do stuff) > 2. Otherwise... Ah yes, good catch. > Step 1.1, first bullet: "V is being passed as an operation argument that is > annotated with the [TreatUndefinedAs],": s/the// Fixed. > Step 2: "Otherwise, if the result of calling IsCallable(V) is true, then:" > s/true/false/. Fixed. > Also, the same error as in step 1. Fixed. > (Note that this special case reinforces my points about > TreatNonCallableAsNull.) Don't understand this, sorry. Just that this is a special case, and we should try to minimise the number of special cases?
Thanks.