From patchwork Tue Sep 23 17:06:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Zack Weinberg X-Patchwork-Id: 120752 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id ABB663857738 for ; Tue, 23 Sep 2025 17:08:25 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from fout-b6-smtp.messagingengine.com (fout-b6-smtp.messagingengine.com [202.12.124.149]) by sourceware.org (Postfix) with ESMTPS id 22B8B385625D for ; Tue, 23 Sep 2025 17:07:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 22B8B385625D Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=owlfolio.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=owlfolio.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 22B8B385625D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=202.12.124.149 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1758647252; cv=none; b=PbirYF0Hdjz5Ech8EBsVe6b3UnNZteV1w174WOhKfpx1oh4kJarFd9JZCRDVGV4S9iv9bhyXyrgJ2hNYGthF4a443ZyXoqK3mdzbMv5ClXrCTyO1ZxRocq9cQFcHG8jho9poVDOjIEXTQSbpcoEaA8/MzVAaz/3yVdHpsBDbwGQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1758647252; c=relaxed/simple; bh=RmM0BEa/ejzbtagbH70Yp6Ge9u8LsYNWKsyv+GR//mY=; h=DKIM-Signature:DKIM-Signature:MIME-Version:Date:From:To: Message-Id:Subject; b=sOyzUeJPcm5uPQNxBIRLsTKBTd00VOlqkgrF97qi7nxx3ku+gd6B0CCrfEEiUTo4o7uuJL2Szu+oNvI0OaWkFnOWURD9njmgk8m3UgnAA/xNzLHMpOPn3t553ruWJyRE9U6H2jN6hxW16NqfqTioTbU0V13ZC5DfZ/stbzcmj2Y= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfout.stl.internal (Postfix) with ESMTP id 0E7FB1D0032D for ; Tue, 23 Sep 2025 13:07:09 -0400 (EDT) Received: from phl-imap-16 ([10.202.2.88]) by phl-compute-06.internal (MEProxy); Tue, 23 Sep 2025 13:07:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=owlfolio.org; h= cc:content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:message-id:mime-version:reply-to:subject :subject:to:to; s=fm3; t=1758647228; x=1758733628; bh=srtR3Ra64s RmqYvJ8wo1aRYhrNQ9PHPZXCdAsoYsgc4=; b=CzOwiT090rc9ULZsYaFVRCOtO9 TCENCY4A6R49inoL+CuY12IlXW8NuPpA14IOym8WPzJC3OSdBVJOWGJvGY+iF3mI XVhL2Y80BaA8fgm/L1NdJVefV0fbs7QAWNe8cTEHxu7xkd3pxzO0x2N/jds4KP+F LZ5AusdxyGpe2ZBbCQtwJNUAcuyN8D/6780igiGkMHr1BtMLpw8bxDKdLKjjPfEY QJ9eRw9T+8xEpYAmFD3k5QhCaLwFkY1aPAvbgzGsHeoBr8jjDCPYWWycGsTdOSZ7 k1cP89K1+cIK5vwRizDjpL19rz+fM6Ge00P0nOmrO72YfnAoSjN5dcmJUucw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1758647228; x=1758733628; bh=srtR3Ra64sRmqYvJ8wo1aRYhrNQ9PHPZXCd AsoYsgc4=; b=gD9w+ouBkdM5gp3xMdmuhkvNEMpu6/iKXBkg2CnlWibvNup4Ck+ kFa3tyfY+bEqpK2Ukp5e0q203AWY0+x8EPwNSNFD0VNDrjcGTggAUuHT/+kavGnQ XQWFvPMPj2TQWHlxGg5VFBy++rpfE3ccqUM3MV5Rv8WwbyyQSKKsNItOHedW695v rXbG0J5Z/Nd6BxXk8cuKhTn6wRYjCK+/MFTtjsHmJasBV+jXXkxi4uAxZrzlnWnX HrwzAPiZpRA19YMc/ieg4AbCl8gbF/yyx1U66+QPa2xPdmyrOdMbUgER6yVNnlzY 3LoeEFp1tJ9/bg0IqKR27kbwEqJA8DGS3IA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdeiuddvkecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug hrpefoggffhffvkffutgfgsehtqhertdertdejnecuhfhrohhmpedfkggrtghkucghvghi nhgsvghrghdfuceoiigrtghksehofihlfhholhhiohdrohhrgheqnecuggftrfgrthhtvg hrnhepjeevjedtgefhgeelueefiedvheeijeejveekuefhtdekleelleeikedutdeugeef necuffhomhgrihhnpegsrghshhdrihhnnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepiigrtghksehofihlfhholhhiohdrohhrghdpnhgspghr tghpthhtohepuddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtoheplhhisggtqdgrlh hphhgrsehsohhurhgtvgifrghrvgdrohhrgh X-ME-Proxy: Feedback-ID: i876146a2:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id 8D0802CC0083; Tue, 23 Sep 2025 13:07:08 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface MIME-Version: 1.0 Date: Tue, 23 Sep 2025 13:06:34 -0400 From: "Zack Weinberg" To: "GNU libc development" Message-Id: Subject: [PATCH] Clarify English strsignal() messages. X-Spam-Status: No, score=-9.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_DNSWL_LOW, RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS, SPF_PASS, TXREP, WEIRD_PORT 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: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patchwork=sourceware.org@sourceware.org Several of the strsignal() messages for the English locale are cryptic, inconsistent among a subgroup, or reflect what the signal was *originally* used for, rather than what it is used for today. Improve this somewhat. 95% of the practical value of this patch is in the change for the SIGFPE message, but if we’re gonna edit these messages at all, I think we should edit all of them at once. I'm working on a follow-up patch that tackles the strerror() messages and the manual's explanation of each error code, but this requires quite a bit more research. “Floating point exception” -> “Arithmetic exception”: Nowadays SIGFPE is almost always caused by *integer* divide by zero, since ISO C says the floating point environment at program startup has trapping disabled for all exceptions (C2011: Annex F subsection 8.3). When I was teaching CS I regularly got questions from students about why they got this error message when their program didn’t use any floating point at all. “Arithmetic exception” is the phrase used by musl libc, and also by the entire Sun clade for many years. “Hangup” -> “Terminal disconnected” Also motivated by questions from confused students. “Hangup” is fossil jargon from the days when remote terminals usually connected to the host over actual telephone lines, and when the most common type of *telephone* had a thingy that you would actually hang up when you were done talking. “Terminal disconnected” should be much clearer to people who don’t remember those days. “Alarm clock” -> “Wall clock timer expired” Clearer description of what happened; improved consistency with SIGVTALRM and SIGPROF. “Virtual timer expired” -> “CPU timer expired” The old message was unclear about what, exactly, was virtual. “CPU timer expired” uses the same terminology as SIGXCPU (“CPU time limit expired”). “Quit” -> “Forced to quit”, “Interrupt” -> “Interrupted” Consistent use of past tense for signals indicating external cancellation of the program (compare “Terminated”, “Killed”, “CPU time limit exceeded”, etc.) “Forced to quit” also better describes the effect of SIGQUIT, which is normally triggered by the user typing ^\. “EMT trap” -> “CPU emulation trap” This signal _does_ still get generated sometimes (or I wouldn’t have bothered). As far as I can tell from source diving the Linux kernel, it’s used when the kernel needs to emulate a machine instruction, and the emulation attempt fails for whatever reason; the new phrase tries to reflect that. “Illegal instruction” -> “Invalid CPU instruction” I vaguely recall something in the GNU coding standards about preferring “invalid” to “illegal” unless something is actually against the law. Indicate what kind of instructions are meant. --- po/libc.pot | 233 +++++++++++++++++++++----------------- sysdeps/generic/siglist.h | 31 +++-- 2 files changed, 152 insertions(+), 112 deletions(-) diff --git a/po/libc.pot b/po/libc.pot index 1ed1c521f9..0af07382bd 100644 --- a/po/libc.pot +++ b/po/libc.pot @@ -5,8 +5,8 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: libc 2.41.9000\n" -"POT-Creation-Date: 2025-07-19 22:21+0200\n" +"Project-Id-Version: libc 2.42.9000\n" +"POT-Creation-Date: 2025-09-18 13:08-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -148,7 +148,7 @@ msgid "" msgstr "" #: catgets/gencat.c:246 debug/pcprofiledump.c:235 debug/xtrace.sh:63 -#: elf/ldconfig.c:232 elf/ldd.bash.in:38 elf/pldd.c:262 elf/sotruss.sh:75 +#: elf/ldconfig.c:232 elf/ldd.bash.in:39 elf/pldd.c:262 elf/sotruss.sh:75 #: elf/sprof.c:388 iconv/iconv_prog.c:391 iconv/iconvconfig.c:397 #: locale/programs/locale.c:292 locale/programs/localedef.c:459 #: login/programs/pt_chown.c:62 malloc/memusage.sh:70 malloc/memusagestat.c:582 @@ -331,7 +331,7 @@ msgid "" "\n" msgstr "" -#: debug/xtrace.sh:56 elf/ldd.bash.in:55 elf/sotruss.sh:49 +#: debug/xtrace.sh:56 elf/ldd.bash.in:56 elf/sotruss.sh:49 #: malloc/memusage.sh:63 msgid "For bug reporting instructions, please see:\\\\n%s.\\\\n" msgstr "" @@ -515,11 +515,11 @@ msgstr "" msgid "cannot stat shared object" msgstr "" -#: elf/dl-load.c:1071 elf/dl-load.c:2155 +#: elf/dl-load.c:1071 elf/dl-load.c:2144 msgid "cannot create shared object descriptor" msgstr "" -#: elf/dl-load.c:1090 elf/dl-load.c:1605 elf/dl-load.c:1711 +#: elf/dl-load.c:1090 elf/dl-load.c:1594 elf/dl-load.c:1700 msgid "cannot read file data" msgstr "" @@ -527,95 +527,95 @@ msgstr "" msgid "ELF load command address/offset not page-aligned" msgstr "" -#: elf/dl-load.c:1235 +#: elf/dl-load.c:1224 msgid "object file has no loadable segments" msgstr "" -#: elf/dl-load.c:1252 +#: elf/dl-load.c:1241 msgid "cannot dynamically load executable" msgstr "" -#: elf/dl-load.c:1259 +#: elf/dl-load.c:1248 msgid "object file has no dynamic section" msgstr "" -#: elf/dl-load.c:1294 +#: elf/dl-load.c:1283 msgid "cannot dynamically load position-independent executable" msgstr "" -#: elf/dl-load.c:1296 +#: elf/dl-load.c:1285 msgid "shared object cannot be dlopen()ed" msgstr "" -#: elf/dl-load.c:1309 +#: elf/dl-load.c:1298 msgid "cannot allocate memory for program header" msgstr "" -#: elf/dl-load.c:1334 +#: elf/dl-load.c:1323 msgid "cannot enable executable stack as shared object requires" msgstr "" -#: elf/dl-load.c:1362 +#: elf/dl-load.c:1351 msgid "cannot close file descriptor" msgstr "" -#: elf/dl-load.c:1605 +#: elf/dl-load.c:1594 msgid "file too short" msgstr "" -#: elf/dl-load.c:1639 +#: elf/dl-load.c:1628 msgid "invalid ELF header" msgstr "" -#: elf/dl-load.c:1654 +#: elf/dl-load.c:1643 msgid "ELF file data encoding not big-endian" msgstr "" -#: elf/dl-load.c:1656 +#: elf/dl-load.c:1645 msgid "ELF file data encoding not little-endian" msgstr "" -#: elf/dl-load.c:1660 +#: elf/dl-load.c:1649 msgid "ELF file version ident does not match current one" msgstr "" -#: elf/dl-load.c:1664 +#: elf/dl-load.c:1653 msgid "ELF file OS ABI invalid" msgstr "" -#: elf/dl-load.c:1667 +#: elf/dl-load.c:1656 msgid "ELF file ABI version invalid" msgstr "" -#: elf/dl-load.c:1670 +#: elf/dl-load.c:1659 msgid "nonzero padding in e_ident" msgstr "" -#: elf/dl-load.c:1673 +#: elf/dl-load.c:1662 msgid "internal error" msgstr "" -#: elf/dl-load.c:1680 +#: elf/dl-load.c:1669 msgid "ELF file version does not match current one" msgstr "" -#: elf/dl-load.c:1692 +#: elf/dl-load.c:1681 msgid "only ET_DYN and ET_EXEC can be loaded" msgstr "" -#: elf/dl-load.c:1697 +#: elf/dl-load.c:1686 msgid "ELF file's phentsize not the expected size" msgstr "" -#: elf/dl-load.c:2174 +#: elf/dl-load.c:2163 msgid "wrong ELF class: ELFCLASS64" msgstr "" -#: elf/dl-load.c:2175 +#: elf/dl-load.c:2164 msgid "wrong ELF class: ELFCLASS32" msgstr "" -#: elf/dl-load.c:2178 +#: elf/dl-load.c:2167 msgid "cannot open shared object file" msgstr "" @@ -916,11 +916,11 @@ msgstr "" msgid "Can't open cache file directory %s\n" msgstr "" -#: elf/ldd.bash.in:42 +#: elf/ldd.bash.in:43 msgid "Written by %s and %s.\n" msgstr "" -#: elf/ldd.bash.in:47 +#: elf/ldd.bash.in:48 msgid "" "Usage: ldd [OPTION]... FILE...\n" " --help print this help and exit\n" @@ -931,46 +931,46 @@ msgid "" " -v, --verbose print all information\n" msgstr "" -#: elf/ldd.bash.in:80 +#: elf/ldd.bash.in:81 msgid "ldd: option \\`$1' is ambiguous" msgstr "" -#: elf/ldd.bash.in:87 +#: elf/ldd.bash.in:88 msgid "unrecognized option" msgstr "" -#: elf/ldd.bash.in:88 elf/ldd.bash.in:125 +#: elf/ldd.bash.in:89 elf/ldd.bash.in:126 msgid "Try \\`ldd --help' for more information." msgstr "" -#: elf/ldd.bash.in:124 +#: elf/ldd.bash.in:125 msgid "missing file arguments" msgstr "" #. TRANS This is a ``file doesn't exist'' error #. TRANS for ordinary files that are referenced in contexts where they are #. TRANS expected to already exist. -#: elf/ldd.bash.in:147 sysdeps/gnu/errlist.h:13 +#: elf/ldd.bash.in:148 sysdeps/gnu/errlist.h:13 msgid "No such file or directory" msgstr "" -#: elf/ldd.bash.in:150 inet/rcmd.c:483 +#: elf/ldd.bash.in:151 inet/rcmd.c:483 msgid "not regular file" msgstr "" -#: elf/ldd.bash.in:153 +#: elf/ldd.bash.in:154 msgid "warning: you do not have execution permission for" msgstr "" -#: elf/ldd.bash.in:170 +#: elf/ldd.bash.in:171 msgid "\tnot a dynamic executable" msgstr "" -#: elf/ldd.bash.in:178 +#: elf/ldd.bash.in:179 msgid "exited with unknown exit code" msgstr "" -#: elf/ldd.bash.in:183 +#: elf/ldd.bash.in:184 msgid "error: you do not have read permission for" msgstr "" @@ -5333,47 +5333,54 @@ msgstr "" msgid "error due to GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS" msgstr "" -#: sysdeps/generic/siglist.h:29 -msgid "Hangup" -msgstr "" - +#. TRANS Formerly "Hangup". #: sysdeps/generic/siglist.h:30 -msgid "Interrupt" +msgid "Terminal disconnected" msgstr "" #: sysdeps/generic/siglist.h:31 -msgid "Quit" +msgid "Interrupted" msgstr "" #: sysdeps/generic/siglist.h:32 -msgid "Illegal instruction" +msgid "Forced to quit" msgstr "" #: sysdeps/generic/siglist.h:33 -msgid "Trace/breakpoint trap" +msgid "Invalid CPU instruction" msgstr "" #: sysdeps/generic/siglist.h:34 -msgid "Aborted" +msgid "Trace/breakpoint trap" msgstr "" #: sysdeps/generic/siglist.h:35 -msgid "Floating point exception" +msgid "Aborted" msgstr "" -#: sysdeps/generic/siglist.h:36 +#. TRANS Formerly "Floating point exception". +#. TRANS The program tried to carry out an invalid arithmetic operation. +#. TRANS Nowadays the most common reason for this signal is @emph{integer} +#. TRANS division by zero. Floating point operations @emph{can} still +#. TRANS cause signals, but nowadays they usually produce a special +#. TRANS "infinity" or "not a number" value instead. +#: sysdeps/generic/siglist.h:43 +msgid "Arithmetic exception" +msgstr "" + +#: sysdeps/generic/siglist.h:44 msgid "Killed" msgstr "" -#: sysdeps/generic/siglist.h:37 +#: sysdeps/generic/siglist.h:45 msgid "Bus error" msgstr "" -#: sysdeps/generic/siglist.h:38 +#: sysdeps/generic/siglist.h:46 msgid "Bad system call" msgstr "" -#: sysdeps/generic/siglist.h:39 +#: sysdeps/generic/siglist.h:47 msgid "Segmentation fault" msgstr "" @@ -5382,95 +5389,101 @@ msgstr "" #. TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled #. TRANS or blocked. Thus, your program will never actually see @code{EPIPE} #. TRANS unless it has handled or blocked @code{SIGPIPE}. -#: sysdeps/generic/siglist.h:40 sysdeps/gnu/errlist.h:216 +#: sysdeps/generic/siglist.h:48 sysdeps/gnu/errlist.h:216 msgid "Broken pipe" msgstr "" -#: sysdeps/generic/siglist.h:41 -msgid "Alarm clock" -msgstr "" - -#: sysdeps/generic/siglist.h:42 -msgid "Terminated" -msgstr "" - -#: sysdeps/generic/siglist.h:43 -msgid "Urgent I/O condition" -msgstr "" - -#: sysdeps/generic/siglist.h:44 -msgid "Stopped (signal)" -msgstr "" - -#: sysdeps/generic/siglist.h:45 -msgid "Stopped" -msgstr "" - -#: sysdeps/generic/siglist.h:46 -msgid "Continued" -msgstr "" - -#: sysdeps/generic/siglist.h:47 -msgid "Child exited" -msgstr "" - -#: sysdeps/generic/siglist.h:48 -msgid "Stopped (tty input)" -msgstr "" - -#: sysdeps/generic/siglist.h:49 -msgid "Stopped (tty output)" -msgstr "" - +#. TRANS Formerly "Alarm clock". #: sysdeps/generic/siglist.h:50 -msgid "I/O possible" +msgid "Wall-clock timer expired" msgstr "" #: sysdeps/generic/siglist.h:51 -msgid "CPU time limit exceeded" +msgid "Terminated" msgstr "" #: sysdeps/generic/siglist.h:52 -msgid "File size limit exceeded" +msgid "Urgent I/O condition" msgstr "" #: sysdeps/generic/siglist.h:53 -msgid "Virtual timer expired" +msgid "Stopped (signal)" msgstr "" #: sysdeps/generic/siglist.h:54 -msgid "Profiling timer expired" +msgid "Stopped" msgstr "" #: sysdeps/generic/siglist.h:55 -msgid "User defined signal 1" +msgid "Continued" msgstr "" #: sysdeps/generic/siglist.h:56 -msgid "User defined signal 2" +msgid "Child exited" msgstr "" #: sysdeps/generic/siglist.h:57 -msgid "Window changed" +msgid "Stopped (tty input)" +msgstr "" + +#: sysdeps/generic/siglist.h:58 +msgid "Stopped (tty output)" +msgstr "" + +#: sysdeps/generic/siglist.h:59 +msgid "I/O possible" +msgstr "" + +#: sysdeps/generic/siglist.h:60 +msgid "CPU time limit exceeded" msgstr "" #: sysdeps/generic/siglist.h:61 -msgid "EMT trap" +msgid "File size limit exceeded" +msgstr "" + +#. TRANS Formerly "Virtual timer expired". +#: sysdeps/generic/siglist.h:63 +msgid "CPU timer expired" msgstr "" #: sysdeps/generic/siglist.h:64 -msgid "Stack fault" +msgid "Profiling timer expired" +msgstr "" + +#: sysdeps/generic/siglist.h:65 +msgid "User defined signal 1" +msgstr "" + +#: sysdeps/generic/siglist.h:66 +msgid "User defined signal 2" msgstr "" #: sysdeps/generic/siglist.h:67 +msgid "Window changed" +msgstr "" + +#. TRANS Formerly "EMT trap". The program tried to execute a machine +#. TRANS instruction that the CPU does not support, and the kernel either +#. TRANS does not know how to, or has failed to, emulate it. Rarely used +#. TRANS on current CPU architectures. +#: sysdeps/generic/siglist.h:76 +msgid "CPU emulation trap" +msgstr "" + +#: sysdeps/generic/siglist.h:79 +msgid "Stack fault" +msgstr "" + +#: sysdeps/generic/siglist.h:82 msgid "Power failure" msgstr "" -#: sysdeps/generic/siglist.h:70 +#: sysdeps/generic/siglist.h:85 msgid "Information request" msgstr "" -#: sysdeps/generic/siglist.h:73 +#: sysdeps/generic/siglist.h:88 msgid "Resource lost" msgstr "" @@ -6316,6 +6329,18 @@ msgstr "" msgid "RPC program not available" msgstr "" +#: sysdeps/gnu/errlist.h:801 +msgid "Initialization error" +msgstr "" + +#: sysdeps/gnu/errlist.h:804 +msgid "Device is remote" +msgstr "" + +#: sysdeps/gnu/errlist.h:807 +msgid "Too many levels of remote in path" +msgstr "" + #: sysdeps/hppa/dl-fptr.c:96 msgid "cannot map pages for fdesc table" msgstr "" diff --git a/sysdeps/generic/siglist.h b/sysdeps/generic/siglist.h index 298da5ae0a..710a50b2d6 100644 --- a/sysdeps/generic/siglist.h +++ b/sysdeps/generic/siglist.h @@ -26,19 +26,28 @@ /* Standard signals, in the numerical order defined in bits/signum-generic.h. */ - init_sig (SIGHUP, "HUP", N_("Hangup")) - init_sig (SIGINT, "INT", N_("Interrupt")) - init_sig (SIGQUIT, "QUIT", N_("Quit")) - init_sig (SIGILL, "ILL", N_("Illegal instruction")) +/* TRANS Formerly "Hangup". */ + init_sig (SIGHUP, "HUP", N_("Terminal disconnected")) + init_sig (SIGINT, "INT", N_("Interrupted")) + init_sig (SIGQUIT, "QUIT", N_("Forced to quit")) + init_sig (SIGILL, "ILL", N_("Invalid CPU instruction")) init_sig (SIGTRAP, "TRAP", N_("Trace/breakpoint trap")) init_sig (SIGABRT, "ABRT", N_("Aborted")) - init_sig (SIGFPE, "FPE", N_("Floating point exception")) +/* +TRANS Formerly "Floating point exception". +TRANS The program tried to carry out an invalid arithmetic operation. +TRANS Nowadays the most common reason for this signal is @emph{integer} +TRANS division by zero. Floating point operations @emph{can} still +TRANS cause signals, but nowadays they usually produce a special +TRANS "infinity" or "not a number" value instead. */ + init_sig (SIGFPE, "FPE", N_("Arithmetic exception")) init_sig (SIGKILL, "KILL", N_("Killed")) init_sig (SIGBUS, "BUS", N_("Bus error")) init_sig (SIGSYS, "SYS", N_("Bad system call")) init_sig (SIGSEGV, "SEGV", N_("Segmentation fault")) init_sig (SIGPIPE, "PIPE", N_("Broken pipe")) - init_sig (SIGALRM, "ALRM", N_("Alarm clock")) +/* TRANS Formerly "Alarm clock". */ + init_sig (SIGALRM, "ALRM", N_("Wall-clock timer expired")) init_sig (SIGTERM, "TERM", N_("Terminated")) init_sig (SIGURG, "URG", N_("Urgent I/O condition")) init_sig (SIGSTOP, "STOP", N_("Stopped (signal)")) @@ -50,7 +59,8 @@ init_sig (SIGPOLL, "POLL", N_("I/O possible")) init_sig (SIGXCPU, "XCPU", N_("CPU time limit exceeded")) init_sig (SIGXFSZ, "XFSZ", N_("File size limit exceeded")) - init_sig (SIGVTALRM, "VTALRM", N_("Virtual timer expired")) +/* TRANS Formerly "Virtual timer expired". */ + init_sig (SIGVTALRM, "VTALRM", N_("CPU timer expired")) init_sig (SIGPROF, "PROF", N_("Profiling timer expired")) init_sig (SIGUSR1, "USR1", N_("User defined signal 1")) init_sig (SIGUSR2, "USR2", N_("User defined signal 2")) @@ -58,7 +68,12 @@ /* Signals that are not present on all supported platforms. */ #ifdef SIGEMT - init_sig (SIGEMT, "EMT", N_("EMT trap")) +/* +TRANS Formerly "EMT trap". The program tried to execute a machine +TRANS instruction that the CPU does not support, and the kernel either +TRANS does not know how to, or has failed to, emulate it. Rarely used +TRANS on current CPU architectures. */ + init_sig (SIGEMT, "EMT", N_("CPU emulation trap")) #endif #ifdef SIGSTKFLT init_sig (SIGSTKFLT, "STKFLT", N_("Stack fault"))