On 3/20/14 11:39 AM, Domenic Denicola wrote:
If you return something that doesn't match the declared return value, that's a spec bug, but it has no impact on anything.
True, though the spec bug may make the spec not implementable (e.g. in a UA that autogenerates code from the IDL for a statically typed language, the thing being returned may not be of the right type, etc).
That's a good thing, of course; better spec bugs that are caught as soon as you try to implement the spec than subtle ones. ;)
Also, for callback interfaces and callbacks the behavior is reversed: there return values get coerced while arguments are just whatever they are.
-Boris
