------- Comment #12 from rguenth at gcc dot gnu dot org 2010-09-18 12:42 ------- Yep - testcase that still ICEs (now w/ a segfault):
struct Region { int storage[4]; int count; }; static inline Region subtract(int lhs) { Region reg; int* storage = reg.storage; int* storage2 = reg.storage; if (lhs > 0) storage++, storage2--; reg.count = storage - reg.storage + storage2 - reg.storage; return reg; } void bar(int a) { const Region copyBack(subtract(a)); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45709