not a bug.
b.f[10] is indexing the pointer to the array, not the array
itself.
b.f[0][10] is indexing the array (with the 10), but I would
argue it is better to write *(b.f)[10] so as to be clear that f
is not an array.
thank you, John.
compiler said that '*(b.f)[10]' is deprecated, and I should write
like this
void foo()
{
Type3 b;
Type1 d;
d = *(b.f[10]).ptr;
}
which looks completely weird for me...
What is the reason you are using a pointer to a struct
containing a pointer to a static array? It's often not
necessary to work like that.
it is just a sample... in real code the struct contains a lot of
fields