From: Pedro Alves <pe...@codesourcery.com>
To: bug-gdb@gnu.org
Sent: Sun, 18 Jan 2009 10:18 am
Subject: Re: 1600 "unexpected failures" in
gdb-weekly-CVS-6.8.50.20090113.tar.bz2 (on OpenSolaris 2008.11 using
gcc version 4.4.0 20090111)
> Did you consider fixing this, and posting a patch at gdb-patches@ ?
> ...
> To fix this, all it takes it do something like adjusting the
affected functions
> to use char buffers and memcpy, instead of playing tricks with
pointers.
> A bit of care has to be taken due to the ifdefery in place, but
nothing major.
> ...
> Pedro Alves
Here is my "fast/correct" recommendation. I may make a better
recommendation in future.
# if ((__GNUC__==4) && (__GNUC_MINOR__>=4))
gdb_siginfo_t sinfo;
#else
/* Use char array to avoid alignment issues. */
char sinfo[sizeof (gdb_siginfo_t)];
#endif
Rationale: Older versions of gcc _might_ have had problems that
you needed to "hack around" to fix. Newer versions _must_ not.
The "newest" versions of gcc either:
1. Does not have these issues.
2. You need to file a Bug Report over at gcc's own
bugzilla (and stop hiding bugs, so rule 1 will be true).
Are you satisfied with this fix ? It is not intended to be a 'copout'.
Rob
_______________________________________________
bug-gdb mailing list
bug-gdb@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-gdb