From nobody Sat Feb 21 23:23:01 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fJNT22vKLz6ST4S for ; Sat, 21 Feb 2026 23:23:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fJNT20QGHz3hHc for ; Sat, 21 Feb 2026 23:23:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1771716182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w2znmG9AitgYWxS+yacg2NhGXiPjU/EDQQe8zZ///D8=; b=ykqw280azN2Mmfv1cZ9ut0SK4sOp95TauJpixJgY5r2gP5o1lWpKQP0HpdJzasRraFNnU5 /WCMu7WmfxfCP+Wvhm3AcNKDzuz8N6ChT1smnEGZEMDjzhxuSxuh8oRHxZ2Y8H0gtISAeW 16BKy1N0sQ5bayIMyr7Xdhxdc/K/Kn4tW3yafA17YeiJos5IqiKjNXv+68e8TiWFQgsiKz PEpvjbqHMhcmCEjO1OR65fhtFPAW9kRtX7RvvChu5WQamnipa/ebp2gny+ozmqQlVsJ6tF bKObIS9bEGSnt1sXxpktvlAGe/vW2nqQJQF8huUl9EhQy9A+cg80QAoeq1CjEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1771716182; a=rsa-sha256; cv=none; b=M/b2Vx6YwDN+vFwXeN664IvTm6U7Ww48nIzpmExquWUhsFsNzRatA31CH2iDNUdzrqd+QN rWfgrESSUoacl3B5til6HixMPTMxitkLnVkAdOwx7tNYyL3qXHNK8MOy5002jWLj49dLjV c+Rxrs2+S+UVjf8UWYQpXs3SUwZyjkoJ8w5a1kvv4VAn6FkNt9YUxpXrsVGLCuitADLbT4 KHoHZy05O/NggJ25r43AiGFGGSfAYLLEWzoKjhQSvmUNcF4VU/GlcJ/z4z4IpvYDLv+I/S rwRp26VoTqgBNVo1p72FDPKLxEpqUmuaem3YDQcGt8wbROd1uGiqnBh1E2HszA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1771716182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w2znmG9AitgYWxS+yacg2NhGXiPjU/EDQQe8zZ///D8=; b=wn83zNwPxbPdszrdqjkuaXSecGKy/PjmcJnKmb5Ym5BOzHU2AkBk6Eu0o6EWWadcR79DDe 7ncQJW2lvGFMZxER0De7wAFtJggQDh9WBk0a9eSC+YgzJUdpdiXFHSoVfVETfoIltNvxOg 6b1yUCayTco9oP9TUi8XY6eJHX4hjay6uesZyO84G5uxW7ENGF6Lt0/M2vxIjqYa0jnFpE BAURZ1eXElf8SPfdXseX4FoVqqlbxtvwR8mgVQ7h41jVz3HmQxRo2kQEx0Nqucj0o1xao3 XVeDRqHSYrlUdFT14pkNhkI4bdtV+Egx7KQig2AuURqFanXFtsQLebJz3sDgbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fJNT16vl3z40V for ; Sat, 21 Feb 2026 23:23:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 372ae by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 21 Feb 2026 23:23:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Aymeric Wibo Subject: git: 98ffaae49fea - main - libc: Roll {l,ll,imax}abs(3) manpages into just abs(3) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obiwac X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 98ffaae49fea5c478230ef68086bcea89a6f654b Auto-Submitted: auto-generated Date: Sat, 21 Feb 2026 23:23:01 +0000 Message-Id: <699a3e55.372ae.57956dd2@gitrepo.freebsd.org> The branch main has been updated by obiwac: URL: https://cgit.FreeBSD.org/src/commit/?id=98ffaae49fea5c478230ef68086bcea89a6f654b commit 98ffaae49fea5c478230ef68086bcea89a6f654b Author: Aymeric Wibo AuthorDate: 2026-02-19 03:02:19 +0000 Commit: Aymeric Wibo CommitDate: 2026-02-21 23:22:05 +0000 libc: Roll {l,ll,imax}abs(3) manpages into just abs(3) No need to have 4 separate manpages for these functions. Use opportunity to change parameter names in the source from j -> i to reflect the name used in POSIX. (The ISO C standard uses j but i is a better name anyway.) Reviewed by: des, rpokala Approved by: rpokala Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55361 --- lib/libc/stdlib/Makefile.inc | 5 ++- lib/libc/stdlib/abs.3 | 72 ++++++++++++++++++++++++++++++-------------- lib/libc/stdlib/abs.c | 4 +-- lib/libc/stdlib/imaxabs.3 | 60 ------------------------------------ lib/libc/stdlib/imaxabs.c | 4 +-- lib/libc/stdlib/labs.3 | 64 --------------------------------------- lib/libc/stdlib/labs.c | 4 +-- lib/libc/stdlib/llabs.3 | 60 ------------------------------------ lib/libc/stdlib/llabs.c | 4 +-- 9 files changed, 61 insertions(+), 216 deletions(-) diff --git a/lib/libc/stdlib/Makefile.inc b/lib/libc/stdlib/Makefile.inc index 3698377b9b27..2cdff5b934cb 100644 --- a/lib/libc/stdlib/Makefile.inc +++ b/lib/libc/stdlib/Makefile.inc @@ -91,7 +91,7 @@ SYM_MAPS+= ${LIBC_SRCTOP}/stdlib/Symbol.map MAN+= a64l.3 abort.3 abs.3 atexit.3 atof.3 \ atoi.3 atol.3 at_quick_exit.3 bsearch.3 \ div.3 exit.3 getenv.3 getopt.3 getopt_long.3 getsubopt.3 \ - hcreate.3 imaxabs.3 insque.3 labs.3 llabs.3 \ + hcreate.3 insque.3 \ lsearch.3 memalignment.3 memory.3 ptsname.3 qsort.3 \ quick_exit.3 \ radixsort.3 rand.3 random.3 reallocarray.3 reallocf.3 realpath.3 \ @@ -101,6 +101,9 @@ MAN+= a64l.3 abort.3 abs.3 atexit.3 atof.3 \ MLINKS+=a64l.3 l64a.3 \ a64l.3 l64a_r.3 +MLINKS+=abs.3 labs.3 \ + abs.3 llabs.3 \ + abs.3 imaxabs.3 MLINKS+=atol.3 atoll.3 MLINKS+=div.3 ldiv.3 \ div.3 lldiv.3 \ diff --git a/lib/libc/stdlib/abs.3 b/lib/libc/stdlib/abs.3 index d47f83ea0f73..b5844761ef48 100644 --- a/lib/libc/stdlib/abs.3 +++ b/lib/libc/stdlib/abs.3 @@ -1,5 +1,6 @@ .\" Copyright (c) 1990, 1991, 1993 .\" The Regents of the University of California. All rights reserved. +.\" Copyright (c) 2026 Aymeric Wibo .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information @@ -29,49 +30,74 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 3, 2022 +.Dd February 19, 2026 .Dt ABS 3 .Os .Sh NAME -.Nm abs -.Nd integer absolute value function -.Sh LIBRARY -.Lb libc +.Nm abs , +.Nm labs , +.Nm llabs , +.Nm imaxabs +.Nd return absolute value for integer types .Sh SYNOPSIS +.Lb libc .In stdlib.h .Ft int -.Fn abs "int j" +.Fn abs "int i" +.Ft long +.Fn labs "long i" +.Ft long long +.Fn llabs "long long i" +.In inttypes.h +.Ft intmax_t +.Fn imaxabs "intmax_t i" .Sh DESCRIPTION The -.Fn abs -function -computes -the absolute value of the integer -.Fa j . +.Fn abs , +.Fn labs , +.Fn llabs , +and +.Fn imaxabs +functions compute the absolute value of +.Fa i . .Sh RETURN VALUES The -.Fn abs -function -returns -the absolute value. +.Fn abs , +.Fn labs , +.Fn llabs , +and +.Fn imaxabs +functions return the absolute value. .Sh SEE ALSO .Xr cabs 3 , .Xr fabs 3 , .Xr floor 3 , -.Xr hypot 3 , -.Xr imaxabs 3 , -.Xr labs 3 , -.Xr llabs 3 , -.Xr math 3 +.Xr hypot 3 .Sh STANDARDS The -.Fn abs -function conforms to -.St -isoC-99 . +.Fn abs , +.Fn labs , +.Fn llabs , +and +.Fn imaxabs +functions conform to +.St -isoC-2023 +and +.St -p1003.1-2024 . .Sh HISTORY The .Fn abs function first appeared in .At v6 . +The +.Fn labs +function first appeared in +.Bx 4.3 . +The +.Fn llabs +and +.Fn imaxabs +functions first appeared in +.Fx 5.0 . .Sh BUGS The absolute value of the most negative integer remains negative. diff --git a/lib/libc/stdlib/abs.c b/lib/libc/stdlib/abs.c index baed3795bf5e..3ebbff748897 100644 --- a/lib/libc/stdlib/abs.c +++ b/lib/libc/stdlib/abs.c @@ -32,7 +32,7 @@ #include int -abs(int j) +abs(int i) { - return(j < 0 ? -j : j); + return(i < 0 ? -i : i); } diff --git a/lib/libc/stdlib/imaxabs.3 b/lib/libc/stdlib/imaxabs.3 deleted file mode 100644 index fa68216facc1..000000000000 --- a/lib/libc/stdlib/imaxabs.3 +++ /dev/null @@ -1,60 +0,0 @@ -.\" Copyright (c) 2001 Mike Barcroft -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd November 14, 2001 -.Dt IMAXABS 3 -.Os -.Sh NAME -.Nm imaxabs -.Nd returns absolute value -.Sh LIBRARY -.Lb libc -.Sh SYNOPSIS -.In inttypes.h -.Ft intmax_t -.Fn imaxabs "intmax_t j" -.Sh DESCRIPTION -The -.Fn imaxabs -function returns the absolute value of -.Fa j . -.Sh SEE ALSO -.Xr abs 3 , -.Xr fabs 3 , -.Xr hypot 3 , -.Xr labs 3 , -.Xr llabs 3 , -.Xr math 3 -.Sh STANDARDS -The -.Fn imaxabs -function conforms to -.St -isoC-99 . -.Sh HISTORY -The -.Fn imaxabs -function first appeared in -.Fx 5.0 . -.Sh BUGS -The absolute value of the most negative integer remains negative. diff --git a/lib/libc/stdlib/imaxabs.c b/lib/libc/stdlib/imaxabs.c index 08a27ac98da7..e0fd9448f0b2 100644 --- a/lib/libc/stdlib/imaxabs.c +++ b/lib/libc/stdlib/imaxabs.c @@ -29,7 +29,7 @@ #include intmax_t -imaxabs(intmax_t j) +imaxabs(intmax_t i) { - return (j < 0 ? -j : j); + return (i < 0 ? -i : i); } diff --git a/lib/libc/stdlib/labs.3 b/lib/libc/stdlib/labs.3 deleted file mode 100644 index 97f527b7d941..000000000000 --- a/lib/libc/stdlib/labs.3 +++ /dev/null @@ -1,64 +0,0 @@ -.\" Copyright (c) 1990, 1991, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" This code is derived from software contributed to Berkeley by -.\" the American National Standards Committee X3, on Information -.\" Processing Systems. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd November 14, 2001 -.Dt LABS 3 -.Os -.Sh NAME -.Nm labs -.Nd return the absolute value of a long integer -.Sh LIBRARY -.Lb libc -.Sh SYNOPSIS -.In stdlib.h -.Ft long -.Fn labs "long j" -.Sh DESCRIPTION -The -.Fn labs -function -returns the absolute value of the long integer -.Fa j . -.Sh SEE ALSO -.Xr abs 3 , -.Xr cabs 3 , -.Xr floor 3 , -.Xr imaxabs 3 , -.Xr llabs 3 , -.Xr math 3 -.Sh STANDARDS -The -.Fn labs -function -conforms to -.St -isoC . -.Sh BUGS -The absolute value of the most negative integer remains negative. diff --git a/lib/libc/stdlib/labs.c b/lib/libc/stdlib/labs.c index 23696f1c0f0c..93102b3a2b91 100644 --- a/lib/libc/stdlib/labs.c +++ b/lib/libc/stdlib/labs.c @@ -32,7 +32,7 @@ #include long -labs(long j) +labs(long i) { - return(j < 0 ? -j : j); + return(i < 0 ? -i : i); } diff --git a/lib/libc/stdlib/llabs.3 b/lib/libc/stdlib/llabs.3 deleted file mode 100644 index 6a12fd539dc6..000000000000 --- a/lib/libc/stdlib/llabs.3 +++ /dev/null @@ -1,60 +0,0 @@ -.\" Copyright (c) 2001 Mike Barcroft -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd November 14, 2001 -.Dt LLABS 3 -.Os -.Sh NAME -.Nm llabs -.Nd returns absolute value -.Sh LIBRARY -.Lb libc -.Sh SYNOPSIS -.In stdlib.h -.Ft "long long" -.Fn llabs "long long j" -.Sh DESCRIPTION -The -.Fn llabs -function returns the absolute value of -.Fa j . -.Sh SEE ALSO -.Xr abs 3 , -.Xr fabs 3 , -.Xr hypot 3 , -.Xr imaxabs 3 , -.Xr labs 3 , -.Xr math 3 -.Sh STANDARDS -The -.Fn llabs -function conforms to -.St -isoC-99 . -.Sh HISTORY -The -.Fn llabs -function first appeared in -.Fx 5.0 . -.Sh BUGS -The absolute value of the most negative integer remains negative. diff --git a/lib/libc/stdlib/llabs.c b/lib/libc/stdlib/llabs.c index ac151e3a5036..ff56e526b8a9 100644 --- a/lib/libc/stdlib/llabs.c +++ b/lib/libc/stdlib/llabs.c @@ -29,7 +29,7 @@ #include long long -llabs(long long j) +llabs(long long i) { - return (j < 0 ? -j : j); + return (i < 0 ? -i : i); }