From patchwork Thu Oct 26 19:07:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 158654 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:d641:0:b0:403:3b70:6f57 with SMTP id cy1csp111737vqb; Thu, 26 Oct 2023 12:16:01 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG5dDpeHdhY8oXE58qgckMeG099WVWF/MGse27JjkhtDHbEGQmlsE9i5aVAecQFOvHg6QSG X-Received: by 2002:a05:620a:318a:b0:765:6923:623e with SMTP id bi10-20020a05620a318a00b007656923623emr835799qkb.29.1698347761595; Thu, 26 Oct 2023 12:16:01 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1698347761; cv=pass; d=google.com; s=arc-20160816; b=kLnss3+sNoxR1nQ22+i77j1rEHVZ0MF0o+JmwvlMFlZP5D2fnYuUaogg53J9Gkm55a JAbnCT+/Klv5DZKTaU2ONkzTzXFxUuDN9R6fmc5ng8Ydqu6j5WFYT6EfKegG/wLCoFJ5 0rLpHvNjvWHGZC0Y9RUuK5l9/U8rex++CCI+LczUyitoS3zm/J8DH55ekXMVSCXG9Hgz qNQWz402sKnMzhreGBK61hcBX53VHNeDPM9e0ep59zvplw66iET3KzJSU3lRw+HoKVT+ PrZNpISgdUd3bJeQ0JPDmMaCFjoduki4x6TV9/mjzRmv6+0Vax3sBhDAHimTQhFf6dGK kefA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to; bh=XJaTHwNA6PO2zRVWXROxETqpr8zEa5NpxDc9pLogGMY=; fh=PTZv/fEnntkVjZjJeDKIkUWVkECXkQyaIllNGCyO/VM=; b=EJsuiadxoLc6icRcZCcr9gIq4iB2QxgbP7cflN0AhIe4WqbiYmNbwJrPCyHNlq52+6 msxdG6cWIagVbE06TlnTg/+mQLsULw4E7Lwt1MlS7+sLZuKOR3zdFrevTaeYJWOgffKE KFmPhCCsBD0iVGPm4glxqtyPicEOVXfAdUUXAcz4cLxWs6bxlKalu+ut4h9sO1PSzQrN pEWsHO59mv6ZMCCzTzy8HmlU1TyNDNf2si8dL+s76BTLS1Vn2Q6McFzkbvFTkdzBCL6E b0MRUUaECpDkudFk01d6xZpnMpIqu9U0j1WfgGuUoKSX4eVJjBsx+L4gxmno7nTouvWV 8ECQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=fail header.i=@tromey.com header.s=default header.b=WPhAzK8c; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org" Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id m7-20020a05620a214700b00775cab41eaasi9713671qkm.462.2023.10.26.12.16.01 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Oct 2023 12:16:01 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=fail header.i=@tromey.com header.s=default header.b=WPhAzK8c; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 297D3387545C for ; Thu, 26 Oct 2023 19:15:12 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from omta038.useast.a.cloudfilter.net (omta038.useast.a.cloudfilter.net [44.202.169.37]) by sourceware.org (Postfix) with ESMTPS id 7C12F38618D8 for ; Thu, 26 Oct 2023 19:14:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7C12F38618D8 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7C12F38618D8 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=44.202.169.37 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1698347686; cv=none; b=coZOu1PvQth5VV2Vb1xqkmbPzLMbKbRLXxvkB0tNmlwIaNNP3usCsK4xem9cSoMCYmoy9vAXkksPkfBFSBavg9za1CMOgistsS35SlU2zj48r0Y+rz3nn5PFukTa0KiUFMR4PLrGxwpN4LtB++3wY0THESOX3aOcIUAPzPv7d+g= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1698347686; c=relaxed/simple; bh=oi9RXsenG3aSK20Sz6AGFbJwz6xK3j402NBJ0Uip4pA=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=CqTasMflAenM96JjqQMcBjkXdyosCkE9mtuUMavnelyqdhS0G1zOrABJkzxYfgQQ2dN2JI/fc9W390I1jLQU0plzimjHQyZwjpSJ0aTxpYN0oGrbszTmSklPHGzEPk4JsDYH0WYud/zdd3byx1Fqm4wDYDtTxOSWGhVBp0tIwOA= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-6007a.ext.cloudfilter.net ([10.0.30.247]) by cmsmtp with ESMTPS id w4eJqv6MDWcCIw5oXqD9hP; Thu, 26 Oct 2023 19:14:41 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id w5oWqwzGO5ZLUw5oXqphur; Thu, 26 Oct 2023 19:14:41 +0000 X-Authority-Analysis: v=2.4 cv=S57KfagP c=1 sm=1 tr=0 ts=653abaa1 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=OWjo9vPv0XrRhIrVQ50Ab3nP57M=:19 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=bhdUkHdE2iEA:10 a=Qbun_eYptAEA:10 a=mDV3o1hIAAAA:8 a=XdqZ4cliAAAA:8 a=pGLkceISAAAA:8 a=CCpqsmhAAAAA:8 a=5JsGgGeeAAAA:8 a=XeANjFRrTiWt3Jvz1FgA:9 a=ltZsjtQbrK4A:10 a=oMpoQSSvEVgA:10 a=SoiLLS1ZxkEA:10 a=_FVE-zBwftR9WsbkzFJk:22 a=qTJ0VMzASRcIAPwaksZq:22 a=ul9cdbp4aOFLsgKbc677:22 a=XCW6AE13j0ClpUA85ybB:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Transfer-Encoding:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=XJaTHwNA6PO2zRVWXROxETqpr8zEa5NpxDc9pLogGMY=; b=WPhAzK8cpqN6WGFZ/RSsjazcfX LiAa6p67iWhhn8V77uFIqLWsIB1C0xfbLLRmj0cKKLXn3X3pCBG+4SkX+/gGpTkBCkMTYT0dNVZED 6Bu7FqHyY6kUyI03lqzNbqpkp; Received: from 97-122-77-73.hlrn.qwest.net ([97.122.77.73]:33818 helo=localhost.localdomain) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96.2) (envelope-from ) id 1qw5oW-004InV-1x; Thu, 26 Oct 2023 13:14:40 -0600 From: Tom Tromey To: binutils@sourceware.org Cc: Tom Tromey Subject: [PATCH 2/3] Make various error-related globals thread-local Date: Thu, 26 Oct 2023 13:07:50 -0600 Message-ID: <20231026191435.204144-3-tom@tromey.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231026191435.204144-1-tom@tromey.com> References: <20231026191435.204144-1-tom@tromey.com> MIME-Version: 1.0 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - sourceware.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 97.122.77.73 X-Source-L: No X-Exim-ID: 1qw5oW-004InV-1x X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 97-122-77-73.hlrn.qwest.net (localhost.localdomain) [97.122.77.73]:33818 X-Source-Auth: tom+tromey.com X-Email-Count: 3 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfHyIRgihco8Q7Angey/+4qqj6xyf4OiA7VS/21e5wx16vRRqdFexDkvpXk8RPaGItkfDaSXOhdBQXJ8r/kGEpSfa68z3atYV4ixvZAAneSd5LgVy230Y sPFJATcilHn2dU5AnZ7btASWgY7+2KUFDkBPikRETSOKkuXIHk9Z8WRQxFbjpnMI7l/XTYKQ/aIlHJ01qsScn0r1EP6X15tLesA= X-Spam-Status: No, score=-3023.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, KAM_ASCII_DIVIDERS, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1780846702183125199 X-GMAIL-MSGID: 1780846702183125199 This changes bfd_error et al to be thread-local. * Makefile.in: Regenerate. * aclocal.m4: Include ax_tls.m4. * ax_tls.m4: New file. * bfd.c: (bfd_error, input_error, input_bfd, _bfd_error_buf): Now thread-local. (bfd_asprintf): Update docs. * config.in, configure: Regenerate. * configure.ac: Call AX_TLS. * po/bfd.pot: Regenerate. --- bfd/Makefile.in | 6 ++-- bfd/aclocal.m4 | 1 + bfd/ax_tls.m4 | 71 ++++++++++++++++++++++++++++++++++++++++++++++++ bfd/bfd.c | 12 ++++---- bfd/config.in | 3 ++ bfd/configure | 51 ++++++++++++++++++++++++++++++++++ bfd/configure.ac | 2 ++ bfd/po/bfd.pot | 56 +++++++++++++++++++------------------- 8 files changed, 166 insertions(+), 36 deletions(-) create mode 100644 bfd/ax_tls.m4 diff --git a/bfd/Makefile.in b/bfd/Makefile.in index 8d09f6fa4af..cf227d09c27 100644 --- a/bfd/Makefile.in +++ b/bfd/Makefile.in @@ -129,9 +129,9 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ $(top_srcdir)/../config/zstd.m4 $(top_srcdir)/../libtool.m4 \ $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \ $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \ - $(top_srcdir)/bfd.m4 $(top_srcdir)/warning.m4 \ - $(top_srcdir)/acinclude.m4 $(top_srcdir)/version.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/ax_tls.m4 $(top_srcdir)/bfd.m4 \ + $(top_srcdir)/warning.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/version.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ diff --git a/bfd/aclocal.m4 b/bfd/aclocal.m4 index 09b849dfc87..e0142ae724e 100644 --- a/bfd/aclocal.m4 +++ b/bfd/aclocal.m4 @@ -1187,6 +1187,7 @@ m4_include([../ltoptions.m4]) m4_include([../ltsugar.m4]) m4_include([../ltversion.m4]) m4_include([../lt~obsolete.m4]) +m4_include([ax_tls.m4]) m4_include([bfd.m4]) m4_include([warning.m4]) m4_include([acinclude.m4]) diff --git a/bfd/ax_tls.m4 b/bfd/ax_tls.m4 new file mode 100644 index 00000000000..fb184fe201b --- /dev/null +++ b/bfd/ax_tls.m4 @@ -0,0 +1,71 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_tls.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_TLS([action-if-found], [action-if-not-found]) +# +# DESCRIPTION +# +# Provides a test for the compiler support of thread local storage (TLS) +# extensions. Defines TLS if it is found. Currently knows about C++11, +# GCC/ICC, and MSVC. I think SunPro uses the same as GCC, and Borland +# apparently supports either. +# +# LICENSE +# +# Copyright (c) 2008 Alan Woodland +# Copyright (c) 2010 Diego Elio Petteno` +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 15 + +AC_DEFUN([AX_TLS], [ + AC_MSG_CHECKING([for thread local storage (TLS) class]) + AC_CACHE_VAL([ac_cv_tls], + [for ax_tls_keyword in thread_local _Thread_local __thread '__declspec(thread)' none; do + AS_CASE([$ax_tls_keyword], + [none], [ac_cv_tls=none ; break], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM( + [#include ], + [static $ax_tls_keyword int bar;] + )], + [ac_cv_tls=$ax_tls_keyword ; break], + [ac_cv_tls=none] + )] + ) + done ] + ) + AC_MSG_RESULT([$ac_cv_tls]) + + AS_IF([test "$ac_cv_tls" != "none"], + [AC_DEFINE_UNQUOTED([TLS],[$ac_cv_tls],[If the compiler supports a TLS storage class, define it to that here]) + m4_ifnblank([$1],[$1],[[:]])], + [m4_ifnblank([$2],[$2],[[:]])]) +]) diff --git a/bfd/bfd.c b/bfd/bfd.c index 08980ae52b7..2cf8361caa2 100644 --- a/bfd/bfd.c +++ b/bfd/bfd.c @@ -691,6 +691,8 @@ SECTION The easiest way to report a BFD error to the user is to use <>. + The BFD error is thread-local. + SUBSECTION Type <> @@ -728,10 +730,10 @@ CODE_FRAGMENT . */ -static bfd_error_type bfd_error; -static bfd_error_type input_error; -static bfd *input_bfd; -static char *_bfd_error_buf; +static TLS bfd_error_type bfd_error; +static TLS bfd_error_type input_error; +static TLS bfd *input_bfd; +static TLS char *_bfd_error_buf; const char *const bfd_errmsgs[] = { @@ -920,7 +922,7 @@ DESCRIPTION Primarily for error reporting, this function is like libiberty's xasprintf except that it can return NULL on no memory and the returned string should not be freed. Uses a - single malloc'd buffer managed by libbfd, _bfd_error_buf. + thread-local malloc'd buffer managed by libbfd, _bfd_error_buf. Be aware that a call to this function frees the result of any previous call. bfd_errmsg (bfd_error_on_input) also calls this function. diff --git a/bfd/config.in b/bfd/config.in index 7ff3eeebf8b..0ba104f4431 100644 --- a/bfd/config.in +++ b/bfd/config.in @@ -285,6 +285,9 @@ /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS +/* If the compiler supports a TLS storage class, define it to that here */ +#undef TLS + /* Name of host specific header file to include in trad-core.c. */ #undef TRAD_HEADER diff --git a/bfd/configure b/bfd/configure index f0a07ff675f..de94019bd9c 100755 --- a/bfd/configure +++ b/bfd/configure @@ -13283,6 +13283,57 @@ $as_echo "#define USE_BINARY_FOPEN 1" >>confdefs.h ;; esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for thread local storage (TLS) class" >&5 +$as_echo_n "checking for thread local storage (TLS) class... " >&6; } + if ${ac_cv_tls+:} false; then : + $as_echo_n "(cached) " >&6 +else + for ax_tls_keyword in thread_local _Thread_local __thread '__declspec(thread)' none; do + case $ax_tls_keyword in #( + none) : + ac_cv_tls=none ; break ;; #( + *) : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +static $ax_tls_keyword int bar; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_tls=$ax_tls_keyword ; break +else + ac_cv_tls=none + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ;; +esac + done + +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5 +$as_echo "$ac_cv_tls" >&6; } + + if test "$ac_cv_tls" != "none"; then : + +cat >>confdefs.h <<_ACEOF +#define TLS $ac_cv_tls +_ACEOF + + : +else + : +fi + + # Link in zlib/zstd if we can. This allows us to read compressed debug sections. # This is used only by compress.c. diff --git a/bfd/configure.ac b/bfd/configure.ac index d1e7e3a4bf3..42678065e57 100644 --- a/bfd/configure.ac +++ b/bfd/configure.ac @@ -233,6 +233,8 @@ AC_CHECK_DECLS([___lc_codepage_func], [], [], [[#include ]]) BFD_BINARY_FOPEN +AX_TLS + # Link in zlib/zstd if we can. This allows us to read compressed debug sections. # This is used only by compress.c. AM_ZLIB diff --git a/bfd/po/bfd.pot b/bfd/po/bfd.pot index fa47ba70e91..33d51490482 100644 --- a/bfd/po/bfd.pot +++ b/bfd/po/bfd.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" -"POT-Creation-Date: 2023-10-26 11:38-0600\n" +"POT-Creation-Date: 2023-10-26 11:42-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -138,115 +138,115 @@ msgstr "" msgid "Writing updated armap timestamp" msgstr "" -#: bfd.c:738 +#: bfd.c:740 msgid "no error" msgstr "" -#: bfd.c:739 +#: bfd.c:741 msgid "system call error" msgstr "" -#: bfd.c:740 +#: bfd.c:742 msgid "invalid bfd target" msgstr "" -#: bfd.c:741 +#: bfd.c:743 msgid "file in wrong format" msgstr "" -#: bfd.c:742 +#: bfd.c:744 msgid "archive object file in wrong format" msgstr "" -#: bfd.c:743 +#: bfd.c:745 msgid "invalid operation" msgstr "" -#: bfd.c:744 +#: bfd.c:746 msgid "memory exhausted" msgstr "" -#: bfd.c:745 +#: bfd.c:747 msgid "no symbols" msgstr "" -#: bfd.c:746 +#: bfd.c:748 msgid "archive has no index; run ranlib to add one" msgstr "" -#: bfd.c:747 +#: bfd.c:749 msgid "no more archived files" msgstr "" -#: bfd.c:748 +#: bfd.c:750 msgid "malformed archive" msgstr "" -#: bfd.c:749 +#: bfd.c:751 msgid "DSO missing from command line" msgstr "" -#: bfd.c:750 +#: bfd.c:752 msgid "file format not recognized" msgstr "" -#: bfd.c:751 +#: bfd.c:753 msgid "file format is ambiguous" msgstr "" -#: bfd.c:752 +#: bfd.c:754 msgid "section has no contents" msgstr "" -#: bfd.c:753 +#: bfd.c:755 msgid "nonrepresentable section on output" msgstr "" -#: bfd.c:754 +#: bfd.c:756 msgid "symbol needs debug section which does not exist" msgstr "" -#: bfd.c:755 +#: bfd.c:757 msgid "bad value" msgstr "" -#: bfd.c:756 +#: bfd.c:758 msgid "file truncated" msgstr "" -#: bfd.c:757 +#: bfd.c:759 msgid "file too big" msgstr "" -#: bfd.c:758 +#: bfd.c:760 msgid "sorry, cannot handle this file" msgstr "" -#: bfd.c:759 +#: bfd.c:761 #, c-format msgid "error reading %s: %s" msgstr "" -#: bfd.c:760 +#: bfd.c:762 msgid "#" msgstr "" -#: bfd.c:1890 +#: bfd.c:1892 #, c-format msgid "BFD %s assertion fail %s:%d" msgstr "" -#: bfd.c:1903 +#: bfd.c:1905 #, c-format msgid "BFD %s internal error, aborting at %s:%d in %s\n" msgstr "" -#: bfd.c:1908 +#: bfd.c:1910 #, c-format msgid "BFD %s internal error, aborting at %s:%d\n" msgstr "" -#: bfd.c:1910 +#: bfd.c:1912 msgid "Please report this bug.\n" msgstr ""