File tree 1 file changed +7
-3
lines changed
1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -262,7 +262,7 @@ macro_rules! step_integer_impls {
262
262
fn steps_between( start: & Self , end: & Self ) -> ( usize , Option <usize >) {
263
263
if * start <= * end {
264
264
// This relies on $u_narrower <= usize
265
- let steps = ( * end - * start) as usize
265
+ let steps = ( * end - * start) as usize ;
266
266
( steps, Some ( steps) )
267
267
} else {
268
268
( 0 , None )
@@ -788,7 +788,7 @@ impl<T: TrustedStep> RangeIteratorImpl for ops::Range<T> {
788
788
#[ inline]
789
789
fn spec_advance_by ( & mut self , n : usize ) -> Result < ( ) , NonZero < usize > > {
790
790
let steps = Step :: steps_between ( & self . start , & self . end ) ;
791
- let available = steps. 1 . unwrap_or ( step . 0 ) ;
791
+ let available = steps. 1 . unwrap_or ( steps . 0 ) ;
792
792
793
793
let taken = available. min ( n) ;
794
794
@@ -851,7 +851,11 @@ impl<A: Step> Iterator for ops::Range<A> {
851
851
852
852
#[ inline]
853
853
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
854
- Step :: steps_between ( & self . start , & self . end )
854
+ if self . start < self . end {
855
+ Step :: steps_between ( & self . start , & self . end )
856
+ } else {
857
+ ( 0 , Some ( 0 ) )
858
+ }
855
859
}
856
860
857
861
#[ inline]
You can’t perform that action at this time.
0 commit comments