Joshua Bell:
To match ES6 semantics (which I think everyone on this thread agrees is a Good Thing), then the above paragraph is redundant (and the overload resolution algorithm step 4 can be simplified?).
Jonas Sicking:
Indeed. I had read that as only applying to DOMString arguments, but on rereading I agree that that's probably not the right interpretation. So yes, I think the WebIDL spec is out-of-date here. I can't actually find where it defines that undefined is treated as "was not passed". I'm not sure if this is an oversight or if this isn't agreed upon behavior. I was under the impression that it was, but I could be wrong.
Trailing undefineds are treated as "not passed" in the overload resolution algorithm (step 4). There is still a note just below the overload resolution algorithm mentioning the fact that ES6 might have been going to change to treat all explicit undefined values as missing. Has the ES6 change been made?
