0x00024e24 in make_pwitem (pw=0x204a7aa8, name=0x0) at ./pwutil.c:178
178 memcpy(newpw, pw, sizeof(struct passwd));
(gdb) print newpw
$1 =<optimized out>
(gdb) print pw
$2 = (const struct passwd *) 0x204a7aa8
It means the variable is not stored anywhere at that point, because the
optimizer determined it didn't need to exist. Most likely it has gone
dead (in the data-flow sense), but I can imagine other possibilities.
I'm not sure why you think this means it's misaligned. While I'm not
certain, I think sparc32 has no types requiring stricter than 8-byte
alignment, meaning 204a7aa8 is suitably aligned for anything. Looking
at struct passwd, I don't see any types there which I would expect to
be wider than 8 bytes, though, admittedly, I'm not looking at the -6
<pwd.h>.