If the `data` member function is different enough, `ranges::data` won't pick it, so the range remains a contiguous_range.