The algorithm has:
3. If V is any other platform object, then: ...
4. If V is a platform array object, a native Array object, or a
platform object that supports indexed properties, then: ...
The "any other" in 3. seems to suggest that 3. and 4. should be swapped.
I swapped 3 and 4 recently (so that
void f(SomeInterfaceWithIndexedProperties x);
void f(sequence<Something> x);
would select the former if an object of that type were passed in) but forgot to fix up the wording.