http://sourceware.org/bugzilla/show_bug.cgi?id=13053
Summary: [regression] assertion fail cofflink.c:2307
Product: binutils
Version: 2.22 (HEAD)
Status: NEW
Severity: normal
Priority: P2
Component: binutils
AssignedTo: unassig...@sources.redhat.com
ReportedBy: jojel...@gmail.com
Created attachment 5873
--> http://sourceware.org/bugzilla/attachment.cgi?id=5873
sigsegvs where filename is (libintl.dll.a)d50.o
=== log
$ ld --wrap _Znwj --wrap _Znaj --wrap _ZdlPv --wrap _ZdaPv --wrap
_ZnwjRKSt9nothrow_t --wrap _ZnajRKSt9nothrow_t --wrap _ZdlPvRKSt9nothrow_t
--wrap _ZdaPvRKSt9nothrow_t -Bdynamic --dll-search-prefix=cyg -tsaware -o
.libs/msgfmt.exe
/usr/lib/gcc/i686-pc-cygwin/4.7.0/../../../../i686-pc-cygwin/lib/crt0.o
/usr/lib/gcc/i686-pc-cygwin/4.7.0/crtbegin.o -L/usr/lib
-L/usr/lib/gcc/i686-pc-cygwin/4.7.0
-L/usr/lib/gcc/i686-pc-cygwin/4.7.0/../../../../i686-pc-cygwin/lib
-L/usr/lib/gcc/i686-pc-cygwin/4.7.0/../../.. --disable-auto-import
msgfmt-msgfmt.o msgfmt-write-mo.o msgfmt-write-java.o msgfmt-write-csharp.o
msgfmt-write-resources.o msgfmt-write-tcl.o msgfmt-write-qt.o
msgfmt-hash-string.o gettext.res ./.libs/libgettextsrc.dll.a
/tmp/gettext/gettext-tools/gnulib-lib/.libs/libgettextlib.dll.a
/usr/lib/libcroco-0.6.dll.a /usr/lib/libxml2.dll.a -lz
/usr/lib/libglib-2.0.dll.a /usr/lib/libpcre.dll.a /usr/lib/libintl.dll.a
/usr/lib/libncurses.dll.a /tmp/gettext/gettext-tools/intl/.libs/libintl.dll.a
/usr/lib/libiconv.dll.a /usr/lib/libstdc++.dll.a -lgcc -lgcc_eh -lcygwin
-ladvapi32 -lshell32 -luser32 -lkernel32 -lgcc -lgcc_eh
/usr/lib/gcc/i686-pc-cygwin/4.7.0/crtend.o --verbose
GNU ld (GNU Binutils) 2.21.53.20110803
Supported emulations:
i386pe
using internal linker script:
==
/* Default linker script, for normal executables */
OUTPUT_FORMAT(pei-i386)
SEARCH_DIR("/usr/i686-pc-cygwin/lib"); SEARCH_DIR("/usr/lib");
SEARCH_DIR("/usr/lib/w32api");
SECTIONS
{
/* Make the virtual address and file offset synced if the alignment is
lower than the target page size. */
. = SIZEOF_HEADERS;
. = ALIGN(__section_alignment__);
.text __image_base__ + ( __section_alignment__ < 0x1000 ? . :
__section_alignment__ ) :
{
*(.init)
*(.text)
*(SORT(.text$*))
*(.text.*)
*(.glue_7t)
*(.glue_7)
___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
LONG (-1);*(.ctors); *(.ctor); *(SORT(.ctors.*)); LONG
(0);
___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
LONG (-1); *(.dtors); *(.dtor); *(SORT(.dtors.*));
LONG (0);
*(.fini)
/* ??? Why is .gcc_exc here? */
*(.gcc_exc)
PROVIDE (etext = .);
*(.gcc_except_table)
}
/* The Cygwin32 library uses a section to avoid copying certain data
on fork. This used to be named ".data". The linker used
to include this between __data_start__ and __data_end__, but that
breaks building the cygwin32 dll. Instead, we name the section
".data_cygwin_nocopy" and explicitly include it after __data_end__. */
.data BLOCK(__section_alignment__) :
{
__data_start__ = . ;
*(.data)
*(.data2)
*(SORT(.data$*))
*(.jcr)
__data_end__ = . ;
*(.data_cygwin_nocopy)
}
.rdata BLOCK(__section_alignment__) :
{
*(.rdata)
*(SORT(.rdata$*))
__rt_psrelocs_start = .;
*(.rdata_runtime_pseudo_reloc)
__rt_psrelocs_end = .;
}
__rt_psrelocs_size = __rt_psrelocs_end - __rt_psrelocs_start;
___RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
__RUNTIME_PSEUDO_RELOC_LIST_END__ = .;
___RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
__RUNTIME_PSEUDO_RELOC_LIST__ = . - __rt_psrelocs_size;
.eh_frame BLOCK(__section_alignment__) :
{
*(.eh_frame*)
}
.pdata BLOCK(__section_alignment__) :
{
*(.pdata)
}
.bss BLOCK(__section_alignment__) :
{
__bss_start__ = . ;
*(.bss)
*(COMMON)
__bss_end__ = . ;
}
.edata BLOCK(__section_alignment__) :
{
*(.edata)
}
/DISCARD/ :
{
*(.debug$S)
*(.debug$T)
*(.debug$F)
*(.drectve)
*(.note.GNU-stack)
*(.gnu.lto_*)
}
.idata BLOCK(__section_alignment__) :
{
/* This cannot currently be handled with grouped sections.
See pe.em:sort_sections. */
SORT(*)(.idata$2)
SORT(*)(.idata$3)
/* These zeroes mark the end of the import list. */
LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
SORT(*)(.idata$4)
__IAT_start__ = .;
SORT(*)(.idata$5)
__IAT_end__ = .;
SORT(*)(.idata$6)
SORT(*)(.idata$7)
}
.CRT BLOCK(__section_alignment__) :
{
___crt_xc_start__ = . ;
*(SORT(.CRT$XC*)) /* C initialization */
___crt_xc_end__ = . ;
___crt_xi_start__ = . ;
*(SORT(.CRT$XI*)) /* C++ initialization */
___crt_xi_end__ = . ;
___crt_xl_start__ = . ;
*(SORT(.CRT$XL*)) /* TLS callbacks */
/* ___crt_xl_end__ is defined in the TLS Di