From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 93998 invoked by alias); 7 Mar 2019 14:36:03 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 93990 invoked by uid 89); 7 Mar 2019 14:36:03 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-8.2 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy=HX-Spam-Relays-External:470, HX-Spam-Relays-External:sk:fencepo, HX-Spam-Relays-External:142, HX-Spam-Relays-External:eggs.gnu.org X-HELO: eggs.gnu.org Received: from eggs.gnu.org (HELO eggs.gnu.org) (209.51.188.92) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 07 Mar 2019 14:36:01 +0000 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35178) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h1u7s-0006Pc-3f for gdb-patches@sourceware.org; Thu, 07 Mar 2019 09:36:00 -0500 Received: from [176.228.60.248] (port=3388 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1h1u7r-0007ua-DZ for gdb-patches@sourceware.org; Thu, 07 Mar 2019 09:35:59 -0500 Date: Thu, 07 Mar 2019 14:36:00 -0000 Message-Id: <83r2bibvlv.fsf@gnu.org> From: Eli Zaretskii To: gdb-patches@sourceware.org Subject: MinGW build failure for GDB 8.2.90 with source-highlight X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-IsSubscribed: yes X-SW-Source: 2019-03/txt/msg00143.txt.bz2 I've rebuilt the 8.2.90 pretest today on MinGW with source-highlight, and the link step failed with this error message: CXXLD gdb.exe d:/usr/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: source-cache.o: in function `ZNSt13basic_filebufIcSt11char_traitsIcEED4Ev': d:/usr/lib/gcc/mingw32/6.3.0/include/c++/fstream:239: undefined reference to `std::basic_filebuf >::rpl_close()' d:/usr/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: source-cache.o: in function `ZNSt14basic_ifstreamIcSt11char_traitsIcEE8rpl_openEPKcSt13_Ios_Openmode': d:/usr/lib/gcc/mingw32/6.3.0/include/c++/fstream:597: undefined reference to `std::basic_filebuf >::rpl_open(char const*, std::_Ios_Openmode)' d:/usr/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: source-cache.o: in function `ZNSt13basic_filebufIcSt11char_traitsIcEED4Ev': d:/usr/lib/gcc/mingw32/6.3.0/include/c++/fstream:239: undefined reference to `std::basic_filebuf >::rpl_close()' collect2.exe: error: ld returned 1 exit status Makefile:1888: recipe for target `gdb.exe' failed make[2]: *** [gdb.exe] Error 1 make[2]: Leaving directory `/d/usr/eli/utils/gdb-8.2.90/gdb' Makefile:8831: recipe for target `all-gdb' failed make[1]: *** [all-gdb] Error 2 make[1]: Leaving directory `/d/usr/eli/utils/gdb-8.2.90' Makefile:856: recipe for target `all' failed make: *** [all] Error 2 The rpl_open and rpl_close thingies come from Gnulib: in the MinGW build it replaces 'open' and 'close' with its versions by using #define. Then when we include in source-cache.c, the C++ compiler barfs. Is this a Gnulib bug that I should report to its developers, or is this our problem? Perhaps we should simply #undef these two symbols before including ?