29 lines
433 B
C
29 lines
433 B
C
/* PR middle-end/18820 */
|
|
/* Check that we reject nested functions as initializers
|
|
of static variables. */
|
|
|
|
/* { dg-do compile } */
|
|
/* { dg-options "" } */
|
|
|
|
struct S {
|
|
void (*f)(int);
|
|
};
|
|
|
|
extern void baz(struct S *);
|
|
extern void p(int);
|
|
|
|
void foo(void)
|
|
{
|
|
int u;
|
|
|
|
void bar(int val)
|
|
{
|
|
u = val;
|
|
}
|
|
|
|
static struct S s = { bar }; /* { dg-error "(is not constant)|(near initialization)" } */
|
|
|
|
baz(&s);
|
|
p(u);
|
|
}
|