David Brown <david.brown@xxxxxxxxxxxx> writes: Hi David, > As "f()" runs, the value of "y->fun_ptr" changes with each step as you > get alternating "foo1", "foo2" outputs. Thus it is clear (I hope) that > the compiler cannot assume that "y->fun_ptr" is not clobbered by the > function call. Indeed that's clear. The question is more if there's some way to express this to the compiler qualifying the variables in discussion without changing the structure of the code. This because as I wrote may be not trivial to modify the code generator for optimal results. I understand this is probably not possible and there's no magic attribute or qualifier to express this. Thanks Andrea