[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/21076] (cygwin) Output DLL import lookup/address tables are inco
afranchuk at lgsinnovations dot com
[Bug ld/21076] (cygwin) Output DLL import lookup/address tables are incorrect
Thu, 09 Feb 2017 11:54:22 +0000
--- Comment #4 from Alex <afranchuk at lgsinnovations dot com> ---
I have determined through further testing that the problem was occurring
because some object files were created using "ld -r" to combine other object
files together, and at one such point a DLL import library was being linked in
that way. This was causing chaos later on in the linking process because the
linker has no way (right now) of coalescing the various DLL imports into a
single import table: the import library was basically being linked in twice,
with different functions being used from it.
So this may not be a bug necessarily, just an issue arising from lacking
functionality. But I hardly consider this a common, or even uncommon, use case,
as this is not how DLL import libraries are intended to be linked whatsoever.
It would be cool if it worked, but I imagine that will take a good amount of
Technically, however, there probably should be some sort of error when this
case occurs, rather than generating an invalid binary. But from the current
state of the code, it looks like it would be difficult to detect it (since the
code is just shuffling around various .idata symbols for the most part).
I'll leave it to you guys to determine whether this should be closed out.
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug ld/21076] (cygwin) Output DLL import lookup/address tables are incorrect,
afranchuk at lgsinnovations dot com <=