consider the following program, which initializes a static structure containing a function-pointer-valued field....

typedef void (*Fxn)();

struct S {
    Fxn f;
};

void fxn() {
}

struct S s = {
    (Fxn)fxn            /* raises error when compiled with --model-large !!! */
};


when i compile this code with --model-medium, everything works fine....  but when i compile with --model-large, the initializer causes a compiler error....   note also that the problem goes away when the function cast is removed!!!   again, everything works just fine in with --model-medium....

any ideas???

thanks in advance