For example, creating a dictionary member of type sequence<double?> uses
NativeValueTraits<IDLSequence<IDLDouble>>::NativeValue to produce a Vector<double>.
Unfortunately, this coerces the elements of the sequence to number, and thus null elements in the sequence become 0. This is equivalent to using sequence<double>, and doesn't empower the callee to distinguish between null and zero.
Instead, we should map sequence<double?> to Vector<Optional<double>> or similar, so that we can carry this difference through the bindings.
cc smcgruer, since this affects Web Animations IDL he is trying to support
Comment 1 by bashi@chromium.org
, Dec 8 2017