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

Reply via email to