public inbox for glibc-cvs@sourceware.org help / color / mirror / Atom feed
From: Adhemerval Zanella <azanella@sourceware.org> To: glibc-cvs@sourceware.org Subject: [glibc/azanella/clang] argp: Expand argp_usage, _option_is_short, and _option_is_end Date: Thu, 9 Feb 2023 19:46:47 +0000 (GMT) [thread overview] Message-ID: <20230209194647.9F6EE3857838@sourceware.org> (raw) https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=cc3ec44db317fd457bdfcd782d4a22cbf675754d commit cc3ec44db317fd457bdfcd782d4a22cbf675754d Author: Adhemerval Zanella <adhemerval.zanella@linaro.org> Date: Thu Jul 21 14:12:01 2022 -0300 argp: Expand argp_usage, _option_is_short, and _option_is_end Diff: --- argp/argp-xinl.c | 34 +++++++++++++++++++++++----------- argp/argp.h | 10 +++------- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/argp/argp-xinl.c b/argp/argp-xinl.c index b7cd70cc51..ae41d3bdb4 100644 --- a/argp/argp-xinl.c +++ b/argp/argp-xinl.c @@ -25,19 +25,31 @@ # include <features.h> #endif -#ifndef __USE_EXTERN_INLINES -# define __USE_EXTERN_INLINES 1 -#endif -#define ARGP_EI -#undef __OPTIMIZE__ -#define __OPTIMIZE__ 1 #include <argp.h> -/* Add weak aliases. */ -#if _LIBC - 0 && defined (weak_alias) - +void +__argp_usage (const struct argp_state *__state) +{ + __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); +} weak_alias (__argp_usage, argp_usage) + +int +__option_is_short (const struct argp_option *__opt) +{ + if (__opt->flags & OPTION_DOC) + return 0; + else + { + int __key = __opt->key; + return __key > 0 && __key <= UCHAR_MAX && isprint (__key); + } +} weak_alias (__option_is_short, _option_is_short) -weak_alias (__option_is_end, _option_is_end) -#endif +int +__option_is_end (const struct argp_option *__opt) +{ + return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; +} +weak_alias (__option_is_end, _option_is_end) diff --git a/argp/argp.h b/argp/argp.h index 77d696c65d..b899a53bd8 100644 --- a/argp/argp.h +++ b/argp/argp.h @@ -518,17 +518,13 @@ extern void *__argp_input (const struct argp *__restrict __argp, # define __option_is_end _option_is_end # endif -# ifndef ARGP_EI -# define ARGP_EI __extern_inline -# endif - -ARGP_EI void +__extern_inline void __argp_usage (const struct argp_state *__state) { __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); } -ARGP_EI int +__extern_inline int __NTH (__option_is_short (const struct argp_option *__opt)) { if (__opt->flags & OPTION_DOC) @@ -540,7 +536,7 @@ __NTH (__option_is_short (const struct argp_option *__opt)) } } -ARGP_EI int +__extern_inline int __NTH (__option_is_end (const struct argp_option *__opt)) { return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
next reply other threads:[~2023-02-09 19:46 UTC|newest] Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-02-09 19:46 Adhemerval Zanella [this message] -- strict thread matches above, loose matches on Subject: below -- 2024-02-09 17:29 Adhemerval Zanella 2024-02-07 14:05 Adhemerval Zanella 2024-01-29 17:55 Adhemerval Zanella 2023-12-21 18:51 Adhemerval Zanella 2023-09-28 17:50 Adhemerval Zanella 2023-08-30 12:34 Adhemerval Zanella 2022-10-28 17:39 Adhemerval Zanella 2022-10-04 12:57 Adhemerval Zanella
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230209194647.9F6EE3857838@sourceware.org \ --to=azanella@sourceware.org \ --cc=glibc-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).