From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) by sourceware.org (Postfix) with ESMTPS id 15E763874C0A for ; Fri, 5 Mar 2021 13:05:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 15E763874C0A Received: by mail-qk1-x72f.google.com with SMTP id a9so1771387qkn.13 for ; Fri, 05 Mar 2021 05:05:46 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=pyvF6qkafPKRytBenWZinbEGDehD2xlri/SK3f5p0sY=; b=ZOpbsybgkpVS0oCSuLkaczRkZiGgOF0OqpXh/xMQ0PGzhl0ZtebXBugevxRypfgAd3 FW6dIVM6LizyHYs604pd+7pAC0SYlFFGs2XwhYAL87vc0zDiOim07SH9xbNS3/cfQ0Zf gghglLAuMZCs+ujrYJYbcxPgeJM94a6zCqZmRdSs1cXcbtzWsbLeoI7yA+1ryjw1SUNQ 4VBPgnH8ycxHRSff3UYnaLjzo+Kau9HG2j6cB/KPsjIZfKr7+Fglz9q1G3bOCYnHSfKr KVFwpqfv+APFURyI9tTIwWMc2I3dfBfHSSPr7kCSWo6Lx3r+3sLJaPX8+xfj1E2G/ZIH H/JQ== X-Gm-Message-State: AOAM532Bn8tww8BekCq8f9w5vPXY9mNMcwXf3VjSsh0unUwOblnLaaBo qMaMOadzYwNHlUDhCrWFgiABMUkvxIi/JA== X-Google-Smtp-Source: ABdhPJzKhYX/VNFceRkkS6blcAbUsbbCSJXigedyT/K3e1FKRanIOEqRvZEOVjfqHq9i4f+dIU7SCQ== X-Received: by 2002:a37:46cf:: with SMTP id t198mr8897835qka.265.1614949545470; Fri, 05 Mar 2021 05:05:45 -0800 (PST) Received: from [192.168.1.4] ([177.194.48.209]) by smtp.googlemail.com with ESMTPSA id t21sm1696400qtw.51.2021.03.05.05.05.44 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 05 Mar 2021 05:05:45 -0800 (PST) Subject: Re: [PATCH] posix: glob, glob64 should not be declared __THROW [BZ #27522] To: libc-alpha@sourceware.org References: <87h7lpg3nk.fsf@oldenburg.str.redhat.com> From: Adhemerval Zanella Message-ID: Date: Fri, 5 Mar 2021 10:05:42 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 In-Reply-To: <87h7lpg3nk.fsf@oldenburg.str.redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-13.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Mar 2021 13:05:48 -0000 On 05/03/2021 09:56, Florian Weimer via Libc-alpha wrote: > These functions invoke callbacks with GLOB_ALTDIRFUNC, so they > are not leaf functions (as implied by _THROW). Use __THROWNL > and __REDIRECT_NTHNL to express this. LGTM, thanks. Reviewed-by: Adhemerval Zanella > > --- > posix/glob.h | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/posix/glob.h b/posix/glob.h > index 71c6b84a8a..b5686600c7 100644 > --- a/posix/glob.h > +++ b/posix/glob.h > @@ -145,15 +145,15 @@ typedef struct > #if !defined __USE_FILE_OFFSET64 > extern int glob (const char *__restrict __pattern, int __flags, > int (*__errfunc) (const char *, int), > - glob_t *__restrict __pglob) __THROW; > + glob_t *__restrict __pglob) __THROWNL; > > /* Free storage allocated in PGLOB by a previous `glob' call. */ > extern void globfree (glob_t *__pglob) __THROW; > #else > -extern int __REDIRECT_NTH (glob, (const char *__restrict __pattern, > - int __flags, > - int (*__errfunc) (const char *, int), > - glob_t *__restrict __pglob), glob64); > +extern int __REDIRECT_NTHNL (glob, (const char *__restrict __pattern, > + int __flags, > + int (*__errfunc) (const char *, int), > + glob_t *__restrict __pglob), glob64); > > extern void __REDIRECT_NTH (globfree, (glob_t *__pglob), globfree64); > #endif > @@ -161,7 +161,7 @@ extern void __REDIRECT_NTH (globfree, (glob_t *__pglob), globfree64); > #ifdef __USE_LARGEFILE64 > extern int glob64 (const char *__restrict __pattern, int __flags, > int (*__errfunc) (const char *, int), > - glob64_t *__restrict __pglob) __THROW; > + glob64_t *__restrict __pglob) __THROWNL; > > extern void globfree64 (glob64_t *__pglob) __THROW; > #endif >