From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) by sourceware.org (Postfix) with ESMTPS id 0F1073856DCF for ; Mon, 12 Sep 2022 07:28:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 0F1073856DCF Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ej1-x62c.google.com with SMTP id y17so13007535ejo.6 for ; Mon, 12 Sep 2022 00:28:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=jEEvM6UPBsEpq7VRGKM6iugUFAFaCnVaSXUO/cek4XY=; b=Tp0DpNjVX0G3WgYROEdB6u5s1/LDoWVZ3O6Ze/jiPpJykBJWd0kK7S9bZaNd17jPa7 ayWhkBoYHqGSL24hB0N/qZu6SUBBTuNSbwcNUXFkF/zIqirKLqwWdBQMCL2lXw8WHH88 +1flJso5L1xzsP7XXYdOGovVJOMnze4sYlwzWM/P6vj2XAtfEVaLHh+vXX48q6UQLpwQ qVDlLvK1AvMnLvXBwueh2hgn3z7BH0AkduLM5n1j2Thw7k1788YTMLwS9uuSaRjdzciY xalfBnU/GuMeFICG6e4nWzhs9ZW/T5cUfx0UdFz19NcH9xD/GDkuPS0bT+8RN993ARCR mW4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=jEEvM6UPBsEpq7VRGKM6iugUFAFaCnVaSXUO/cek4XY=; b=g1pLZzM0UdzLXcPkELYGvM5YFKIrfZk+Uq9q3JyGdneegEf7ZyjU2OzKbkTl/Kdd1R 9fLCNhqHR+AVBIW7sPLpIz+71EFo304w1QM/iyaijbM0xw8BKzodnA6MsqBgZ2aWlPH0 e7Hj9LAH6RUdVuhkk86TrHa4tAx/vSMxuznhdKx/TEAbuHbMXuqXCclUhN53XJeGXpHJ ITNtxW70QuVxYMH7V4gRIjKrP2Zz8BCCvOwtXx0RRDg2ISHO1WzoCeN4OHt2DovHCbDk 1xcbPwzo8Gf/LO5j0KmyQ+UmiEy49UGN0um9uNffw8QKKRKE30DjCggBg/D7XOe49J08 S7uw== X-Gm-Message-State: ACgBeo0IHhSrvWdTbIup7A1UyYxqbXH17SsVS2UbPnZSRXYdSFacWPyc dJkZ8dIMNDFN9GuXR0H85GXlCVn/T5bKb8i43v/d7A88 X-Google-Smtp-Source: AA6agR4+0y6s/LJTVQY9TZh6XoUs4t0M+/WuAiOGCKjfjM0nT6nJptLa8eIvZVG7BYha3O3ecfuAxfQBeyzioFtFmT4= X-Received: by 2002:a17:907:7632:b0:76f:f6e7:36cf with SMTP id jy18-20020a170907763200b0076ff6e736cfmr18440512ejc.442.1662967724436; Mon, 12 Sep 2022 00:28:44 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Richard Biener Date: Mon, 12 Sep 2022 09:28:31 +0200 Message-ID: Subject: Re: stdatomic.h: Do not define ATOMIC_VAR_INIT for C2x To: Joseph Myers Cc: GCC Patches Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-8.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Fri, Sep 9, 2022 at 10:41 PM Joseph Myers wrote: > > The macro ATOMIC_VAR_INIT, previously declared obsolete, > is removed completely in C2x; disable it for C2x in GCC's > implementation. (Although ATOMIC_* are reserved names for this > header, disabling the macro for C2x still seems appropriate.) > > Bootstrapped with no regressions for x86_64-pc-linux-gnu. OK to commit? OK > gcc/ > * ginclude/stdatomic.h [defined __STDC_VERSION__ && > __STDC_VERSION__ > 201710L] (ATOMIC_VAR_INIT): Do not define. > > gcc/testsuite/ > * gcc.dg/atomic/c2x-stdatomic-var-init-1.c: New test. > > diff --git a/gcc/ginclude/stdatomic.h b/gcc/ginclude/stdatomic.h > index 9f2475b739d..a56ba5d9639 100644 > --- a/gcc/ginclude/stdatomic.h > +++ b/gcc/ginclude/stdatomic.h > @@ -79,7 +79,9 @@ typedef _Atomic __INTMAX_TYPE__ atomic_intmax_t; > typedef _Atomic __UINTMAX_TYPE__ atomic_uintmax_t; > > > +#if !(defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L) > #define ATOMIC_VAR_INIT(VALUE) (VALUE) > +#endif > > /* Initialize an atomic object pointed to by PTR with VAL. */ > #define atomic_init(PTR, VAL) \ > diff --git a/gcc/testsuite/gcc.dg/atomic/c2x-stdatomic-var-init-1.c b/gcc/testsuite/gcc.dg/atomic/c2x-stdatomic-var-init-1.c > new file mode 100644 > index 00000000000..1978a410350 > --- /dev/null > +++ b/gcc/testsuite/gcc.dg/atomic/c2x-stdatomic-var-init-1.c > @@ -0,0 +1,9 @@ > +/* Test ATOMIC_VAR_INIT not in C2x. */ > +/* { dg-do compile } */ > +/* { dg-options "-std=c2x -pedantic-errors" } */ > + > +#include > + > +#ifdef ATOMIC_VAR_INIT > +#error "ATOMIC_VAR_INIT defined" > +#endif > > -- > Joseph S. Myers > joseph@codesourcery.com