On Wed, 17 Sep 2003 16:06:18 -0700 (PDT)
Sridhar Samudrala [off-list ref] wrote:
I don't see this problem on i386, ia64 or ppc64. Can someone
familiar with parisc64 provide more details or submit a a patch to
fix this problem?
As an example, if you have an structure member of type "char":
struct foo {
char a;
char b[4];
};
And then try to do something like this:
struct foo *p;
unsigned int *v;
v = (unsigned int *) (&p->b[0]);
*v = 0;
The build is going to explode on parisc because this simply is not
allowed. You cannot access a structure member as an object which
has larger alignment than is guarenteed for the type that member
has.
In the above example we're trying to access with 'unsigned int'
alignment a member which is only guarenteed to have the alignment
for a 'char'.