------- 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

Reply via email to