Why not `default::V`, and use a `convert(V, x)` in the constructor?