From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4234 invoked by alias); 3 Jun 2017 14:15:19 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 4062 invoked by uid 89); 3 Jun 2017 14:15:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=inevitably, reserved, risk, super X-HELO: mail-qk0-f173.google.com 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:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=6u7jPXpqWn9pk7BDPLhQ6Zef7p5Qg12PAD+H5cPxivk=; b=XX9fmrAWGdl9GjFbRYDuGoBnHUp23tgwA4KC0CE1NRknt/xayaaeptr0HHJtQ37ahL EQGMKurUgsKw1mGffK2N3DtNn6VQfmxTMpN9X5dWenBJ3RQ7qnXXF5ip6P8A1nCRTZjS eP3to4KN1Ks5S0hWhqglYbh8qa1iiBmz8f9DiUIk5KNfr0orXqbphC1S8t8HQ70HtT4e nDZwZzk4TSXxDe7stRuVbbw3IUvkPAn5BIUALAc4B+EfrltLWBYY67FdhPwK54GSB/fE Cmgl9VXVZFe4aMxmMQiQ3wXCFkz96PildnzvE+1mB8GbMh0xHxisRqkGeBf81amEPHBU 9rUQ== X-Gm-Message-State: AKS2vOzgOQrETJeSR/0YGInSU++zBdVicS3R3IjQVnPekouRBmQYfO8e gY3hxGjNBm4ggk93Nss= X-Received: by 10.55.214.204 with SMTP id p73mr13316969qkl.86.1496499304974; Sat, 03 Jun 2017 07:15:04 -0700 (PDT) Subject: Re: Fix struct sigaltstack namespace (bug 21517) To: libc-alpha@sourceware.org References: Cc: Joseph Myers From: Zack Weinberg Message-ID: Date: Sat, 03 Jun 2017 14:15:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-SW-Source: 2017-06/txt/msg00157.txt.bz2 On 05/24/2017 06:32 PM, Joseph Myers wrote: > glibc defines the stack_t type with the tag struct sigaltstack. This > is not permitted by POSIX; sigaltstack is only reserved with file > scope in the namespace of ordinary identifiers, not the tag namespace, > and in the case where stack_t is obtained from ucontext.h rather than > signal.h, it's not reserved with file scope at all. > > This patch removes the tag accordingly and updates uses in glibc of > struct sigaltstack. This is similar to the removal of the "struct > siginfo" tag a few years ago: C++ name mangling changes are an > unavoidable consequence. A NEWS item is added to note the changed > mangling. There is inevitably some risk of breaking builds of > anything that relies on the struct sigaltstack name (though the first > few hits I looked at from codesearch.debian.net generally seemed to > involve code that could use the stack_t name conditionally, so > depending on how they determine the conditionals they may work with > glibc not defining the struct tag anyway). I'm not super happy about changing C++ name mangling, but this particular type is used rarely enough that I think we can get away with it. Since no one has objected in over a week, this is OK. zw