Marc Glisse <marc.glisse at inria.fr> writes: After inlining, there are subtractions. check_si is called at least once with oi = si + c (c is ±1). gcc simplifies the test si > si - 1 Inlining of check_si? If the code becomes undefined by gcc's transformations, that it's a compiler bug. -- Torbjörn Please encrypt, key id 0xC8601622