From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by sourceware.org (Postfix) with ESMTPS id C8F213857347 for ; Wed, 13 Jul 2022 19:29:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C8F213857347 Received: by mail-pj1-x1036.google.com with SMTP id b8so12098359pjo.5 for ; Wed, 13 Jul 2022 12:29:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :content-language:to:from:subject; bh=NeMQuxORQtfgtBdVSs1+GMfFGKcZBXzgfhdwEeN+0BY=; b=4UHivFfLT3Dfmmq2DIyCE31EQ+L+VY5xF1uhLvm3yNVvePLgp5ItFyKOTUzIIrC8sP FNIsRm48FtrSRMv0TnDrcuh7kY85f35yzhF7SwtUfYrCAL3Z4uL3MQZtFcSxz9xGx9li Yvqi5vS+Ll7cLen6yMHOtvH2hse+T1vS8NxUey6f9fxPpc8lORhVqZ92LPnzoM2nUaHk L8H1SG2IwdM9TwAN+3unMJ7VLJBmbG/X4+jDdylqwkYJYzcbP0dq6W+xrastmNIp9apL gl33FkDYKk/nPt59aMwmqixG2WmAq5LzOFphM+HMDzCY3iZVYmOTQWlojnFimglQZpEB HRwg== X-Gm-Message-State: AJIora/Vonc1NRfFhaTrfXqLjrjsZfC2qiW/LopSD4NtAQJEz167vOJF 5QNCDmfxOn/9ayVp6WbuLZqLRxiAhUA= X-Google-Smtp-Source: AGRyM1vThDVQToBIzc2NS7AK7DCPuMsmz5OQAbbeBK7aauHkkttAPZmDYC0bJJwTppXx0QVzctRoCg== X-Received: by 2002:a17:902:6b07:b0:16b:f220:92fb with SMTP id o7-20020a1709026b0700b0016bf22092fbmr5010722plk.96.1657740548552; Wed, 13 Jul 2022 12:29:08 -0700 (PDT) Received: from ?IPV6:2620:10d:c085:21e1::149c? ([2620:10d:c090:400::5:6389]) by smtp.googlemail.com with ESMTPSA id q8-20020a170902eb8800b0016a7d9e6548sm9069486plg.262.2022.07.13.12.29.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 13 Jul 2022 12:29:07 -0700 (PDT) Sender: Nathan Sidwell Content-Type: multipart/mixed; boundary="------------oMGe1tZqugRBuh0nv8WW4NzI" Message-ID: <045690d0-9a3a-13c9-61d8-6e2c54d53fc7@acm.org> Date: Wed, 13 Jul 2022 15:29:04 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Content-Language: en-US To: GCC Patches , Jason Merrill From: Nathan Sidwell Subject: C++: add -std={c,gnu}++{current,future} X-Spam-Status: No, score=-3038.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, 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 X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Jul 2022 19:29:12 -0000 This is a multi-part message in MIME format. --------------oMGe1tZqugRBuh0nv8WW4NzI Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Inspired by a user question. Jason, thoughts? Since C++ is such a moving target, Microsoft have /std:c++latest (AFAICT clang does not), to select the currently implemented version of the working paper. But the use of 'std:latest' is somewhat ambiguous -- the current std is C++20 -- that's the latest std, the next std will more than likely but not necessarily be C++23. So this adds: -std=c++current -- the current std (c++20) -std=c++future -- the working paper (c++2b) also adds gnu++current and gnu++future to select the gnu-extended variants. nathan -- Nathan Sidwell --------------oMGe1tZqugRBuh0nv8WW4NzI Content-Type: text/x-patch; charset=UTF-8; name="0001-C-add-std-c-gnu-current-future.patch" Content-Disposition: attachment; filename="0001-C-add-std-c-gnu-current-future.patch" Content-Transfer-Encoding: base64 RnJvbSA5NjcxZjRkNWU3ZWZhMTMwMjgwYjZkNTBmYjRlOWU4NDkyZDViNTg3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gU2lkd2VsbCA8bmF0aGFuQGFjbS5vcmc+ CkRhdGU6IFdlZCwgMTMgSnVsIDIwMjIgMTI6MTE6NDAgLTA3MDAKU3ViamVjdDogW1BBVENI XSBDKys6IGFkZCAtc3RkPXtjLGdudX0rK3tjdXJyZW50LGZ1dHVyZX0KClNpbmNlIEMrKyBp cyBzdWNoIGEgbW92aW5nIHRhcmdldCwgTWljcm9zb2Z0IGhhdmUgL3N0ZDpjKytsYXRlc3QK KEFGQUlDVCBjbGFuZyBkb2VzIG5vdCksIHRvIHNlbGVjdCB0aGUgY3VycmVudGx5IGltcGxl bWVudGVkIHZlcnNpb24Kb2YgdGhlIHdvcmtpbmcgcGFwZXIuICBCdXQgdGhlIHVzZSBvZiAn c3RkOmxhdGVzdCcgaXMgc29tZXdoYXQKYW1iaWd1b3VzIC0tIHRoZSBjdXJyZW50IHN0ZCBp cyBDKysyMCAtLSB0aGF0J3MgdGhlIGxhdGVzdCBzdGQsIHRoZQpuZXh0IHN0ZCB3aWxsIG1v cmUgdGhhbiBsaWtlbHkgYnV0IG5vdCBuZWNlc3NhcmlseSBiZSBDKysyMy4gIFNvIHRoaXMK YWRkczoKCiAgLXN0ZD1jKytjdXJyZW50IC0tIHRoZSBjdXJyZW50IHN0ZCAoYysrMjApCiAg LXN0ZD1jKytmdXR1cmUgLS0gdGhlIHdvcmtpbmcgcGFwZXIgKGMrKzJiKQoKYWxzbyBhZGRz IGdudSsrY3VycmVudCBhbmQgZ251KytmdXR1cmUgdG8gc2VsZWN0IHRoZSBnbnUtZXh0ZW5k ZWQKdmFyaWFudHMuCgoJZ2NjLwoJKiBkb2MvaW52b2tlLnRleGkgKC1zdGQ9KTogRG9jdW1l bnQgbmV3IGMrKyBjdXJyZW50ICYgZnV0dXJlCglvcHRpb25zLgoJZ2NjL2MtZmFtaWx5LwoJ KiBjLm9wdCAoLXN0ZD17YyxnbnV9Kyt7Y3VycmVudCxmdXR1cmV9OiBOZXcgYWxpYXMgb3B0 aW9ucy4KCWdjYy90ZXN0c3VpdGUvCgkqIGcrKy5kZy9nbnUtY3VycmVudC5DOiBOZXcuCgkq IGcrKy5kZy9nbnUtZnV0dXJlLkM6IE5ldy4KCSogZysrLmRnL3N0ZC1jdXJyZW50LkM6IE5l dy4KCSogZysrLmRnL3N0ZC1mdXR1cmUuQzogTmV3LgotLS0KIGdjYy9jLWZhbWlseS9jLm9w dCAgICAgICAgICAgICAgICAgfCAxNiArKysrKysrKysrKysrKysrCiBnY2MvZG9jL2ludm9r ZS50ZXhpICAgICAgICAgICAgICAgIHwgMjMgKysrKysrKysrKysrKysrKysrKysrKysKIGdj Yy90ZXN0c3VpdGUvZysrLmRnL2dudS1jdXJyZW50LkMgfCAgNyArKysrKysrCiBnY2MvdGVz dHN1aXRlL2crKy5kZy9nbnUtZnV0dXJlLkMgIHwgIDcgKysrKysrKwogZ2NjL3Rlc3RzdWl0 ZS9nKysuZGcvc3RkLWN1cnJlbnQuQyB8IDExICsrKysrKysrKysrCiBnY2MvdGVzdHN1aXRl L2crKy5kZy9zdGQtZnV0dXJlLkMgIHwgIDggKysrKysrKysKIDYgZmlsZXMgY2hhbmdlZCwg NzIgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZysr LmRnL2dudS1jdXJyZW50LkMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2cr Ky5kZy9nbnUtZnV0dXJlLkMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2cr Ky5kZy9zdGQtY3VycmVudC5DCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n KysuZGcvc3RkLWZ1dHVyZS5DCgpkaWZmIC0tZ2l0IGEvZ2NjL2MtZmFtaWx5L2Mub3B0IGIv Z2NjL2MtZmFtaWx5L2Mub3B0CmluZGV4IDQ0ZTFhNjBjZTI0Li45MjkyMDI5YTk2NyAxMDA2 NDQKLS0tIGEvZ2NjL2MtZmFtaWx5L2Mub3B0CisrKyBiL2djYy9jLWZhbWlseS9jLm9wdApA QCAtMjMyMSw2ICsyMzIxLDE0IEBAIHN0ZD1jKysyMwogQysrIE9iakMrKyBVbmRvY3VtZW50 ZWQKIENvbmZvcm0gdG8gdGhlIElTTyAyMDIzIEMrKyBkcmFmdCBzdGFuZGFyZCAoZXhwZXJp bWVudGFsIGFuZCBpbmNvbXBsZXRlIHN1cHBvcnQpLgogCitzdGQ9YysrY3VycmVudAorQysr IE9iakMrKyBBbGlhcyhzdGQ9YysrMjApIFVuZG9jdW1lbnRlZAorQ29uZm9ybSB0byB0aGUg Y3VycmVudCBJU08gQysrIHN0YW5kYXJkIChDKysyMCkuCisKK3N0ZD1jKytmdXR1cmUKK0Mr KyBPYmpDKysgQWxpYXMoc3RkPWMrKzIzKSBVbmRvY3VtZW50ZWQKK0NvbmZvcm0gdG8gYSBm dXR1cmUgSVNPIEMrKyBzdGFuZGFyZCAoQysrMmIsIGV4cGVyaW1lbnRhdGwgYW5kIGluY29t cGxldGUgc3VwcG9ydCkuCisKIHN0ZD1jMTEKIEMgT2JqQwogQ29uZm9ybSB0byB0aGUgSVNP IDIwMTEgQyBzdGFuZGFyZC4KQEAgLTI0MDcsNiArMjQxNSwxNCBAQCBzdGQ9Z251KysyMwog QysrIE9iakMrKyBVbmRvY3VtZW50ZWQKIENvbmZvcm0gdG8gdGhlIElTTyAyMDIzIEMrKyBk cmFmdCBzdGFuZGFyZCB3aXRoIEdOVSBleHRlbnNpb25zIChleHBlcmltZW50YWwgYW5kIGlu Y29tcGxldGUgc3VwcG9ydCkuCiAKK3N0ZD1nbnUrK2N1cnJlbnQKK0MrKyBPYmpDKysgQWxp YXMoc3RkPWdudSsrMjApIFVuZG9jdW1lbnRlZAorQ29uZm9ybSB0byB0aGUgY3VycmVudCBJ U08gQysrIHN0YW5kYXJkIHdpdGggR05VIGV4dGVuc2lvbnMgKEMrKzIwKS4KKworc3RkPWdu dSsrZnV0dXJlCitDKysgT2JqQysrIEFsaWFzKHN0ZD1nbnUrKzIzKSBVbmRvY3VtZW50ZWQK K0NvbmZvcm0gdG8gYSBmdXR1cmUgSVNPIEMrKyBzdGFuZGFyZCB3aXRoIEdOVSBleHRlbnNp b25zIChDKysyYiwgZXhwZXJpbWVudGF0bCBhbmQgaW5jb21wbGV0ZSBzdXBwb3J0KS4KKwog c3RkPWdudTExCiBDIE9iakMKIENvbmZvcm0gdG8gdGhlIElTTyAyMDExIEMgc3RhbmRhcmQg d2l0aCBHTlUgZXh0ZW5zaW9ucy4KZGlmZiAtLWdpdCBhL2djYy9kb2MvaW52b2tlLnRleGkg Yi9nY2MvZG9jL2ludm9rZS50ZXhpCmluZGV4IGQ1ZmYxMDE4MzcyLi4xYzBlZGI5ZGY2OCAx MDA2NDQKLS0tIGEvZ2NjL2RvYy9pbnZva2UudGV4aQorKysgYi9nY2MvZG9jL2ludm9rZS50 ZXhpCkBAIC0yNDYyLDYgKzI0NjIsMTcgQEAgR05VIGRpYWxlY3Qgb2YgQG9wdGlvbnstc3Rk PWMrKzE3fS4KIFRoaXMgaXMgdGhlIGRlZmF1bHQgZm9yIEMrKyBjb2RlLgogVGhlIG5hbWUg QHNhbXB7Z251Kysxen0gaXMgZGVwcmVjYXRlZC4KIAorQGl0ZW0gZ251KytjdXJyZW50CitA aXRlbXggZ251KytjdXJyZW50CitHTlUgZGlhbGVjdCBvZiB0aGUgY3VycmVudCBDKysgc3Rh bmRhcmQsIGN1cnJlbnRseSBAb3B0aW9uey1zdGQ9Z251KysyMH0uCitUaGUgQysrIHZlcnNp b24gc2VsZWN0ZWQgYnkgdGhpcyBvcHRpb24gaXMgYSBtb3ZpbmcgdGFyZ2V0LgorCitAaXRl bSBnbnUrK2Z1dHVyZQorQGl0ZW14IGdudSsrZnV0dXJlCitHTlUgZGlhbGVjdCBvZiB0aGUg bmV4dCBDKysgc3RhbmRhcmQsIGN1cnJlbnRseSBAb3B0aW9uey1zdGQ9Z251KysyYn0uCitU aGUgQysrIHZlcnNpb24gc2VsZWN0ZWQgYnkgdGhpcyBvcHRpb24gaXMgYSBtb3ZpbmcgdGFy Z2V0IChhcyBhcmUgdGhlCitzZW1hbnRpY3Mgb2YgdGhhdCBwcm9wb3NlZCB2ZXJzaW9uKS4K KwogQGl0ZW0gYysrMjAKIEBpdGVteCBjKysyYQogVGhlIDIwMjAgSVNPIEMrKyBzdGFuZGFy ZCBwbHVzIGFtZW5kbWVudHMuCkBAIC0yNDg3LDYgKzI0OTgsMTggQEAgY2hhbmdlIGluIGlu Y29tcGF0aWJsZSB3YXlzIGluIGZ1dHVyZSByZWxlYXNlcy4KIEdOVSBkaWFsZWN0IG9mIEBv cHRpb257LXN0ZD1jKysyYn0uICBTdXBwb3J0IGlzIGhpZ2hseSBleHBlcmltZW50YWwsCiBh bmQgd2lsbCBhbG1vc3QgY2VydGFpbmx5IGNoYW5nZSBpbiBpbmNvbXBhdGlibGUgd2F5cyBp biBmdXR1cmUKIHJlbGVhc2VzLgorCitAaXRlbSBjKytjdXJyZW50CitAaXRlbXggYysrY3Vy cmVudAorVGhlIGN1cnJlbnQgQysrIHN0YW5kYXJkLCBjdXJyZW50bHkgQG9wdGlvbnstc3Rk PWdudSsrMjB9LgorVGhlIEMrKyB2ZXJzaW9uIHNlbGVjdGVkIGJ5IHRoaXMgb3B0aW9uIGlz IGEgbW92aW5nIHRhcmdldC4KKworQGl0ZW0gYysrZnV0dXJlCitAaXRlbXggYysrZnV0dXJl CitUaGUgbmV4dCBDKysgc3RhbmRhcmQsIGN1cnJlbnRseSBAb3B0aW9uey1zdGQ9Z251Kysy Yn0uCitUaGUgQysrIHZlcnNpb24gc2VsZWN0ZWQgYnkgdGhpcyBvcHRpb24gaXMgYSBtb3Zp bmcgdGFyZ2V0IChhcyBhcmUgdGhlCitzZW1hbnRpY3Mgb2YgdGhhdCBwcm9wb3NlZCB2ZXJz aW9uKS4KKwogQGVuZCB0YWJsZQogCiBAaXRlbSAtYXV4LWluZm8gQHZhcntmaWxlbmFtZX0K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZysrLmRnL2dudS1jdXJyZW50LkMgYi9nY2Mv dGVzdHN1aXRlL2crKy5kZy9nbnUtY3VycmVudC5DCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi5jOTVjNTZkM2FkOAotLS0gL2Rldi9udWxsCisrKyBiL2djYy90 ZXN0c3VpdGUvZysrLmRnL2dudS1jdXJyZW50LkMKQEAgLTAsMCArMSw3IEBACisvLyB7IGRn LWRvIGNvbXBpbGUgfQorLy8geyBkZy1vcHRpb25zIC1zdGQ9Z251KytjdXJyZW50IH0KKwor c3RhdGljX2Fzc2VydCAoX19jcGx1c3BsdXMgPT0gMjAyMDAyTCwgInRpbWUgaGFzIG1vdmVk IG9uIik7CisjaWYgX19TVFJJQ1RfQU5TSV9fCisjZXJyb3IgIl9fU1RSSUNUX0FOU0lfXyBz dXJwcmlzaW5nbHkgbm9uLXplcm8iCisjZW5kaWYKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZysrLmRnL2dudS1mdXR1cmUuQyBiL2djYy90ZXN0c3VpdGUvZysrLmRnL2dudS1mdXR1 cmUuQwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMzY2ZGNkZWVi YzIKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2crKy5kZy9nbnUtZnV0dXJl LkMKQEAgLTAsMCArMSw3IEBACisvLyB7IGRnLWRvIGNvbXBpbGUgfQorLy8geyBkZy1vcHRp b25zIC1zdGQ9Z251KytmdXR1cmUgfQorCitzdGF0aWNfYXNzZXJ0IChfX2NwbHVzcGx1cyA+ IDIwMjAwMkwsICJ0aW1lIGhhcyBtb3ZlZCBvbiIpOworI2lmIF9fU1RSSUNUX0FOU0lfXwor I2Vycm9yICJfX1NUUklDVF9BTlNJX18gc3VycHJpc2luZ2x5IG5vbi16ZXJvIgorI2VuZGlm CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2crKy5kZy9zdGQtY3VycmVudC5DIGIvZ2Nj L3Rlc3RzdWl0ZS9nKysuZGcvc3RkLWN1cnJlbnQuQwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uMzM0ZmZkMWQyYzQKLS0tIC9kZXYvbnVsbAorKysgYi9nY2Mv dGVzdHN1aXRlL2crKy5kZy9zdGQtY3VycmVudC5DCkBAIC0wLDAgKzEsMTEgQEAKKy8vIHsg ZGctZG8gY29tcGlsZSB9CisvLyB7IGRnLW9wdGlvbnMgLXN0ZD1jKytjdXJyZW50IH0KKwor Ly8gQWR1c3QgYXMgdG9tb3Jyb3cgYW5kIHRvbW9ycm93IGFuZCB0b21vcnJvdworLy8gQ3Jl ZXBzIGluIHRoaXMgcGV0dHkgcGFjZSBmcm9tIGRheSB0byBkYXkKKy8vIFRvIHRoZSBsYXN0 IHN5bGxhYmxlIG9mIHJlY29yZGVkIHRpbWUuCisKK3N0YXRpY19hc3NlcnQgKF9fY3BsdXNw bHVzID09IDIwMjAwMkwsICJ0aW1lIGhhcyBtb3ZlZCBvbiIpOworI2lmICFfX1NUUklDVF9B TlNJX18KKyNlcnJvciAiX19TVFJJQ1RfQU5TSV9fIHN1cnByaXNpbmdseSB6ZXJvIgorI2Vu ZGlmCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2crKy5kZy9zdGQtZnV0dXJlLkMgYi9n Y2MvdGVzdHN1aXRlL2crKy5kZy9zdGQtZnV0dXJlLkMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAuLmRhZGU5N2U2YTcxCi0tLSAvZGV2L251bGwKKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nKysuZGcvc3RkLWZ1dHVyZS5DCkBAIC0wLDAgKzEsOCBAQAorLy8geyBk Zy1kbyBjb21waWxlIH0KKy8vIHsgZGctb3B0aW9ucyAtc3RkPWMrK2Z1dHVyZSB9CisKK3N0 YXRpY19hc3NlcnQgKF9fY3BsdXNwbHVzID4gMjAyMDAyTCwgInRpbWUgaGFzIG1vdmVkIG9u Iik7CisjaWYgIV9fU1RSSUNUX0FOU0lfXworI2Vycm9yICJfX1NUUklDVF9BTlNJX18gc3Vy cHJpc2luZ2x5IHplcm8iCisjZW5kaWYKKwotLSAKMi4zMC4yCgo= --------------oMGe1tZqugRBuh0nv8WW4NzI--