Reason why someone would activate the option "OverrideDoubleBasicArrays" is to work with the desired precision (superior to that offered by type "double").
On the other hand, in "classic" Matlab, no one uses the builtin function "double" with explicit intentionality to reduce the precision for data (most often on the contrary).
In order to shoot not themselves in the foot I suggest altering the method "double" like this:
if ~(mp.OverrideDoubleBasicArrays && ismp(x))
r = mpimpl(402,x); else r = x; end
Customer support service by UserEcho