On 3/27/2014 12:24 PM, Rainer Schuetze wrote: > The caller is told to guarantee that empty must not return true. I think that is the very definition of looking under the hood in order to violate protocol. A range CANNOT be written generically and support that.