blob: 36d7ee767d997de46b594e8c6d84f80c8720a488 [file] [log] [blame]
/* GCC was not warning about taking the address of paramaters or
fields of struct paramaters when returning them. */
/* PR c/14156 */
/* { dg-do compile } */
int * f( int a)
{
return &a;/* { dg-warning "address" "" } */
}
int * g()
{
int b = 0;
return &b;/* { dg-warning "address" "" } */
}
struct ll
{
int i;
};
int *h(struct ll c)
{
return &c.i;/* { dg-warning "address" "" } */
}
struct ll d;
int *i()
{
return &d.i;/* { dg-bogus "address" "" } */
}
int *j(struct ll *c)
{
return &c->i; /* { dg-bogus "address" "" } */
}