Lines Matching defs:lstep
1084 long lstart, lstop, lstep;
1101 lstep = PyLong_AsLong(r->step);
1102 if (lstep == -1 && PyErr_Occurred()) {
1106 ulen = get_len_of_range(lstart, lstop, lstep);
1110 /* check for potential overflow of lstart + ulen * lstep */
1112 if (lstep > 0) {
1113 if (lstop > LONG_MAX - (lstep - 1))
1117 if (lstop < LONG_MIN + (-1 - lstep))
1121 return fast_range_iter(lstart, lstop, lstep, (long)ulen);
1145 long lstart, lstop, lstep, new_start, new_stop;
1170 lstep = PyLong_AsLong(range->step);
1171 if (lstep == -1 && PyErr_Occurred()) {
1175 /* check for possible overflow of -lstep */
1176 if (lstep == LONG_MIN)
1179 /* check for overflow of lstart - lstep:
1181 for lstep > 0, need only check whether lstart - lstep < LONG_MIN.
1182 for lstep < 0, need only check whether lstart - lstep > LONG_MAX
1186 lstart - LONG_MIN < lstep (lstep > 0)
1187 LONG_MAX - lstart < -lstep (lstep < 0)
1192 if (lstep > 0) {
1193 if ((unsigned long)lstart - LONG_MIN < (unsigned long)lstep)
1197 if (LONG_MAX - (unsigned long)lstart < 0UL - lstep)
1201 ulen = get_len_of_range(lstart, lstop, lstep);
1205 new_stop = lstart - lstep;
1206 new_start = (long)(new_stop + ulen * lstep);
1207 return fast_range_iter(new_start, new_stop, -lstep, (long)ulen);