coverity pointed out the infinite loop below. I guess it is unreachable or at least hard to reach, or it would have been reported/fixed before now:
17605 if (index && TREE_CODE (index) == RANGE_EXPR) 17606 { 17607 int count = tree_low_cst (TREE_OPERAND (index, 1), 0) 17608 - tree_low_cst (TREE_OPERAND (index, 0), 0); Event loop_top: Top of the loop. Event loop_condition: "0 < count" must remain true for the loop to continue. Also see events: [loop_bottom] 17609 while (count > 0) 17610 { 17611 if (val) 17612 memcpy (array + curpos, array + pos, fieldsize); Event loop_bottom: Bottom of the loop. Also see events: [loop_top][loop_condition] 17613 curpos += fieldsize; 17614 } 17615 }