------- Comment #13 from alexey dot salmin at gmail dot com 2010-04-28 15:53 ------- Sorry, but I still don't get it :( Why exactly we can't remove the second load of "*b"? void f(int *a, const int *restrict b) { *a++ = *b + 1; *a++ = *b + 1; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14192