if this is unknown should we retrun `-1`? I mean we would need to redefine this in the interface since it's documented as an upper bound. so that is ok but I wonder if we pass this to array initializers or so? not sure what this is used for