[PATCH] gdb: define COFF file offsets with file_ptr

Simon Marchi simark@simark.ca
Thu Nov 26 15:30:25 GMT 2020


On 2020-11-25 2:14 p.m., Jameson Nash via Gdb-patches wrote:
> The arguments to these functions are file_ptr, so these declarations
> were accidentally implicitly down-casting them to signed int. This
> allows for reading files between 2 and 4 GB in size in my testing (I
> don't have a larger dll currently to test). These may not be natively
> supported by Windows, but can appear when using split-dwarf information.
>
> This solves a "can't get string table" error resulting from attempting to
> pass a negative offset to bfd_seek. I encountered this occuring while
> trying to use a debug file for libLLVM.dll, but searching online reveals at
> least one other person may have run into a similar problem with Firefox?
> https://sourceforge.net/p/mingw-w64/mailman/mingw-w64-public/thread/CA+cU71k2bU0azQxjy4-77ynQj1O+TKmgtaTKe59n7Bjub1y7Tg@mail.gmail.com/
> With this patch, the debug file appears to load successfully and I can see
> debug information in gdb for the library.

Hi Jameson,

Thanks for the patch, I think that makes sense.

I am however unable to apply the patch, probably because you sent it
using an email client that wrapped lines or something.  Can you please
send it again but using git-send-email this time?

https://sourceware.org/gdb/wiki/ContributionChecklist#Submitting_patches

> gdb/ChangeLog:
>         *gdb/coffread.c: define COFF file offsets with file_ptr to support
> files over 2GB

For the ChangeLog entry:

- Remove the "gdb/" portion of the file name
- Start with a capital letter
- End with a period.
- Wrap at 74 columns

Simon


More information about the Gdb-patches mailing list