------- Comment #18 from djdragonboy at gmail dot com  2010-04-22 18:40 -------
I should have been more aggressive in my searches; filed a duplicate bug report
#43840.  I have a small test case there that compiles fine under 4.6.0 with -O1
but fails on this bug with -O1 -finline-small-functions:


typedef unsigned long int (*a)(unsigned long int *);

extern __inline__ unsigned long int e(unsigned long int *d){
  unsigned long int r;
  u(r,d);
  return r;
}

a s(a f){
  return f;
}

int main(void){
  unsigned long int b[1];
  unsigned long int c;
  int i;

  for(i=0;i<1;i++){
    c=(*s(e))(b);
    c=(*s(e))(b);
  }
  return 0;
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43791

Reply via email to