Don't assume wrapped range has a const empty()