https://sourceware.org/bugzilla/show_bug.cgi?id=20551

            Bug ID: 20551
           Summary: Cygwin64: ld: infinite loop when linking a shared
                    library from objects compiled with std=c++14
           Product: binutils
           Version: 2.25
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: zosrothko at orange dot fr
  Target Milestone: ---

Created attachment 9485
  --> https://sourceware.org/bugzilla/attachment.cgi?id=9485&action=edit
The g++ command produced by make upon linking the PocoDatad.dll

Hello

On a Cygwin64 system, the g++ linker is looping when linking a shared library
from objects compiled with the std=c++14 option. Please notice that, when
compiling all objects with std=c++03, there is no loop at link time under
Cygwin64. There is also no loop for objects produced under Cygwin32 with
std=c++03 and no loop for objects produced under Cygwin32 with std=c++14. 

Context:
$ uname -a
CYGWIN_NT-10.0 idefix 2.6.0(0.304/5/3) 2016-08-31 14:32 x86_64 Cygwin

$ gcc -v
Utilisation des specs internes.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/lto-wrapper.exe
Cible : x86_64-pc-cygwin
Configuré avec:
/cygdrive/i/szsz/tmpp/gcc/gcc-5.4.0-1.x86_64/src/gcc-5.4.0/configure
--srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-5.4.0-1.x86_64/src/gcc-5.4.0
--prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
--docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C
--build=x86_64-pc-cygwin --host=x86_64-pc-cygwin --target=x86_64-pc-cygwin
--without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib
--enable-shared --enable-shared-libgcc --enable-static
--enable-version-specific-runtime-libs --enable-bootstrap --enable-__cxa_atexit
--with-dwarf2 --with-tune=generic
--enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite
--enable-threads=posix --enable-libatomic --enable-libcilkrts --enable-libgomp
--enable-libitm --enable-libquadmath --enable-libquadmath-support
--enable-libssp --enable-libada --enable-libgcj-sublibs --disable-java-awt
--disable-symvers --with-ecj-jar=/usr/share/java/ecj.jar --with-gnu-ld
--with-gnu-as --with-cloog-include=/usr/include/cloog-isl
--without-libiconv-prefix --without-libintl-prefix --with-system-zlib
--enable-linker-build-id --with-default-libstdcxx-abi=gcc4-compatible
Modèle de thread: posix
gcc version 5.4.0 (GCC)

This issue is always reproducible but I was not able to reduce the number of
objects to reproduce it. Here the way to get the ussie

1/ git clone -b c++11 https://github.com/Kampbell/poco.git poco-c++11
2/ cd poco-c++11
3/ ./configure --minimal --no-tests --no-samples
4/ vim config.make
5/ Remove 'Data' from the OMIT value at line 7
6/ save and exit from vim
7/ make


After compiling Foundation, Util, XML, Jason and Net modules, the make compiles
the Data module and loops upon linking the PocoDatad.dll

The building process takes some time, so be patient before arriving to the
problem

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to