|
From: | rob1weld |
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) |
Date: | Sat, 24 Jan 2009 13:01:27 -0500 |
gdb-weekly-CVS-6.8.50.20090113.tar.bz2 (on OpenSolaris 2008.11 using gcc version 4.4.0 20090111)From: Pedro Alves <address@hidden> To: address@hidden Sent: Sun, 18 Jan 2009 10:18 amSubject: Re: 1600 "unexpected failures" in
> 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
[Prev in Thread] | Current Thread | [Next in Thread] |