http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58493
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- C testcase void omb(int n, double *points, double *weights) { int i; for(i=0;i<n/2;i++) { points[2*i] = .7; weights[2*i]= 5.; points[2*i+1] = -.7; weights[2*i+1]=weights[2*i]; // mis-comiled } } int main() { double p[18], w[18]; int i; omb(18, p, w); for(i=0; i<18; ++i) __builtin_printf ("i=%d p=%f w=%f\n", i, p[i], w[i]); return 0; }