Re: [PATCH] wcscasecmp.3, wcsncasecmp.3: merge

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jun 22, 2024 at 11:02:40AM GMT, наб wrote:
> This mirrors str[n]casecmp and is much more useful,
> but more importantly these didn't crosslink at all
> 
> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@xxxxxxxxxxxxxxxxxx>

Hi наб,

Thanks for the patch!  Please see some comments below.

> ---
>  man/man3/wcscasecmp.3  |  29 +++++++++--
>  man/man3/wcsncasecmp.3 | 106 +----------------------------------------
>  2 files changed, 27 insertions(+), 108 deletions(-)
> 
> diff --git a/man/man3/wcscasecmp.3 b/man/man3/wcscasecmp.3
> index 88d88b2a3..762037daa 100644
> --- a/man/man3/wcscasecmp.3
> +++ b/man/man3/wcscasecmp.3
> @@ -10,7 +10,7 @@
>  .\"
>  .TH wcscasecmp 3 (date) "Linux man-pages (unreleased)"
>  .SH NAME
> -wcscasecmp \- compare two wide-character strings, ignoring case
> +wcscasecmp, wcsncasecmp \- compare two wide-character strings, ignoring case
>  .SH LIBRARY
>  Standard C library
>  .RI ( libc ", " \-lc )
> @@ -19,6 +19,8 @@ .SH SYNOPSIS
>  .B #include <wchar.h>
>  .P
>  .BI "int wcscasecmp(const wchar_t *" s1 ", const wchar_t *" s2 );
> +.BI "int wcsncasecmp(const wchar_t " s1 [. n "], const wchar_t " s2 [. n "], s\

OMG, did I really break it at that point?!  :-)

Would you mind sending a second patch that beaks before the s?  That was
clearly an accident.

> +ize_t " n );
>  .fi
>  .P
>  .RS -4
> @@ -26,7 +28,8 @@ .SH SYNOPSIS
>  .BR feature_test_macros (7)):
>  .RE
>  .P
> -.BR wcscasecmp ():
> +.BR wcscasecmp (),
> +.BR wcsncasecmp ():
>  .nf
>      Since glibc 2.10:
>          _POSIX_C_SOURCE >= 200809L
> @@ -48,6 +51,18 @@ .SH DESCRIPTION
>  case differences
>  .RB ( towupper (3),
>  .BR towlower (3)).
> +.PP

We use .P now.

> +The
> +.BR wcsncasecmp ()
> +function is similar
> +(equivalent to

(the wide-character equivalent of

> +.BR strncasecmp (3)),
> +except that it compares no more than
> +.I n
> +characters of

s/characters/wide characters/

> +.I s1
> +and
> +.IR s2 .
>  .SH RETURN VALUE
>  The
>  .BR wcscasecmp ()
> @@ -69,6 +84,13 @@ .SH RETURN VALUE
>  than
>  .IR s2 ,
>  ignoring case.
> +.PP

.P

> +The
> +.BR wcsncasecmp ()
> +function is the same, but with truncated
> +.I s1
> +and
> +.IR s2 .

This paragraph doesn't exactly mirror strcasecmp(3).  I would rather use
the same wording as there, and if you don't like it, improve it in a
separate patch that touches both pages.

Have a lovely day!
Alex

>  .SH ATTRIBUTES
>  For an explanation of the terms used in this section, see
>  .BR attributes (7).
> @@ -80,7 +102,8 @@ .SH ATTRIBUTES
>  T{
>  .na
>  .nh
> -.BR wcscasecmp ()
> +.BR wcscasecmp (),
> +.BR wcsncasecmp ()
>  T}	Thread safety	MT-Safe locale
>  .TE
>  .SH STANDARDS
> diff --git a/man/man3/wcsncasecmp.3 b/man/man3/wcsncasecmp.3
> index dba58b747..6e8d682cc 100644
> --- a/man/man3/wcsncasecmp.3
> +++ b/man/man3/wcsncasecmp.3
> @@ -1,105 +1 @@
> -'\" t
> -.\" Copyright (c) Bruno Haible <haible@xxxxxxxxxxxxxx>
> -.\"
> -.\" SPDX-License-Identifier: GPL-2.0-or-later
> -.\"
> -.\" References consulted:
> -.\"   GNU glibc-2 source code and manual
> -.\"   Dinkumware C library reference http://www.dinkumware.com/
> -.\"   OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html
> -.\"
> -.TH wcsncasecmp 3 (date) "Linux man-pages (unreleased)"
> -.SH NAME
> -wcsncasecmp \- compare two fixed-size wide-character strings, ignoring case
> -.SH LIBRARY
> -Standard C library
> -.RI ( libc ", " \-lc )
> -.SH SYNOPSIS
> -.nf
> -.B #include <wchar.h>
> -.P
> -.BI "int wcsncasecmp(const wchar_t " s1 [. n "], const wchar_t " s2 [. n "], s\
> -ize_t " n );
> -.fi
> -.P
> -.RS -4
> -Feature Test Macro Requirements for glibc (see
> -.BR feature_test_macros (7)):
> -.RE
> -.P
> -.BR wcsncasecmp ():
> -.nf
> -    Since glibc 2.10:
> -        _POSIX_C_SOURCE >= 200809L
> -    Before glibc 2.10:
> -        _GNU_SOURCE
> -.fi
> -.SH DESCRIPTION
> -The
> -.BR wcsncasecmp ()
> -function is the wide-character equivalent of the
> -.BR strncasecmp (3)
> -function.
> -It compares the wide-character string pointed to
> -by
> -.I s1
> -and the wide-character string
> -pointed to by
> -.IR s2 ,
> -but at most
> -.I n
> -wide characters from each string, ignoring case differences
> -.RB ( towupper (3),
> -.BR towlower (3)).
> -.SH RETURN VALUE
> -The
> -.BR wcsncasecmp ()
> -function returns zero
> -if the wide-character strings at
> -.I s1
> -and
> -.IR s2 ,
> -truncated to at most length
> -.IR n ,
> -are equal except
> -for case distinctions.
> -It returns a positive integer if truncated
> -.I s1
> -is
> -greater than truncated
> -.IR s2 ,
> -ignoring case.
> -It returns a negative integer
> -if truncated
> -.I s1
> -is smaller than truncated
> -.IR s2 ,
> -ignoring case.
> -.SH ATTRIBUTES
> -For an explanation of the terms used in this section, see
> -.BR attributes (7).
> -.TS
> -allbox;
> -lbx lb lb
> -l l l.
> -Interface	Attribute	Value
> -T{
> -.na
> -.nh
> -.BR wcsncasecmp ()
> -T}	Thread safety	MT-Safe locale
> -.TE
> -.SH STANDARDS
> -POSIX.1-2008.
> -.SH HISTORY
> -glibc 2.1.
> -.SH NOTES
> -The behavior of
> -.BR wcsncasecmp ()
> -depends on the
> -.B LC_CTYPE
> -category of the
> -current locale.
> -.SH SEE ALSO
> -.BR strncasecmp (3),
> -.BR wcsncmp (3)
> +.so man3/wcscasecmp.3
> -- 
> 2.39.2



-- 
<https://www.alejandro-colomar.es/>

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux