------- Comment #1 from rguenth at gcc dot gnu dot org 2008-05-13 12:43 ------- Err - only with volatiles ... !?
volatile unsigned long * sat_add(volatile unsigned long *ptr, unsigned long i, volatile unsigned long *end) { if ((unsigned long)ptr + i * sizeof(*ptr) > (unsigned long)ptr) return ptr + i; else return end; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36227