http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54935
--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2012-10-15 14:58:14 UTC --- On Mon, 15 Oct 2012, rguenth at gcc dot gnu.org wrote: > We cannot if-convert this because the store to a[i] may trap as it may be > in .rodata. > > That is, the following is valid C: > > t1.c: > const int a[100]; > const int b[100]; > > t2.c: > your testcase No, that's not valid. int[100] and const int[100] are not compatible types.