On 8/7/23 18:45, Jeff Law wrote:
> 
> 
> On 8/7/23 04:32, Arsen Arsenović via Gcc-patches wrote:
>> From: Luis Machado <luis.mach...@arm.com>
>>
>> With a recent import of gnulib, code has been pulled that tests and enables
>> 64-bit time_t by default on 32-bit hosts that support it.
>>
>> Although gdb can use the gnulib support, bfd doesn't use gnulib and currently
>> doesn't do these checks.
>>
>> As a consequence, if we have a 32-bit host that supports 64-bit time_t, we'll
>> have a mismatch between gdb's notion of time_t and bfd's notion of time_t.
>>
>> This will lead to mismatches in the struct stat size, leading to memory
>> corruption and crashes.
>>
>> This patch disables the year 2038 check for now, which makes things work
>> reliably again.
>>
>> I'd consider this a temporary fix until we have proper bfd checks for the 
>> year
>> 2038, if it makes sense.  64-bit hosts seems to be more common these days, so
>> I'm not sure how important it is to have this support enabled and how soon
>> we want to enable it.
>>
>> Thoughts?
>>
>> ChangeLog:
>>
>>     * configure.ac: Disable year2038 by default on 32-bit hosts.
>>     * configure: Regenerate.
> OK.  Though I thought gnulib ended up reverting some of this work.
> 
> Jeff

I sent this a little while ago. It may be possible that things have changed in 
gnulib since then.

This was mostly addressing issues building binutils-gdb with a 32-bit hosts and 
enabling all targets.

Reply via email to