Steps to reproduce: (1) Open a tab and navigate to any URL; (2) Run the following code in the Console of Devtools: ``` new Request('', {signal:{}}) ``` (3) Then this code would be evaluated successfully without throwing any exception. Only a warning is asserted. Actual results: This code would be evaluated successfully without throwing any exception. Only a warning is asserted. Expected results: As https://fetch.spec.whatwg.org/#requestinfo says, the init.signal param is of AbortSignal type. Since the code above sets the input param as {}, a TypeError exception should be thrown. (Just behave as what the warning says.) BTW, in my test both Chrome and Firefox throw exceptions when evaluating this code.
See https://bugs.webkit.org/show_bug.cgi?id=199576 for some background info on why it is difficult to make it throw. @zyscoder, what is the impact of not throwing here for you?
<rdar://problem/79140275>