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
This commit is contained in:
@@ -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 \
|
||||
|
||||
+49
-23
@@ -1,5 +1,6 @@
|
||||
.\" Copyright (c) 1990, 1991, 1993
|
||||
.\" The Regents of the University of California. All rights reserved.
|
||||
.\" Copyright (c) 2026 Aymeric Wibo <obiwac@freebsd.org>
|
||||
.\"
|
||||
.\" 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.
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
abs(int j)
|
||||
abs(int i)
|
||||
{
|
||||
return(j < 0 ? -j : j);
|
||||
return(i < 0 ? -i : i);
|
||||
}
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
.\" Copyright (c) 2001 Mike Barcroft <mike@FreeBSD.org>
|
||||
.\" 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.
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <inttypes.h>
|
||||
|
||||
intmax_t
|
||||
imaxabs(intmax_t j)
|
||||
imaxabs(intmax_t i)
|
||||
{
|
||||
return (j < 0 ? -j : j);
|
||||
return (i < 0 ? -i : i);
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <stdlib.h>
|
||||
|
||||
long
|
||||
labs(long j)
|
||||
labs(long i)
|
||||
{
|
||||
return(j < 0 ? -j : j);
|
||||
return(i < 0 ? -i : i);
|
||||
}
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
.\" Copyright (c) 2001 Mike Barcroft <mike@FreeBSD.org>
|
||||
.\" 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.
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <stdlib.h>
|
||||
|
||||
long long
|
||||
llabs(long long j)
|
||||
llabs(long long i)
|
||||
{
|
||||
return (j < 0 ? -j : j);
|
||||
return (i < 0 ? -i : i);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user