From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailout1.rbg.tum.de (mailout1.rbg.tum.de [IPv6:2a09:80c0::201]) by sourceware.org (Postfix) with ESMTPS id 0CABD3857809; Tue, 19 Apr 2022 09:34:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 0CABD3857809 Received: from mailrelay1.rbg.tum.de (mailrelay1.in.tum.de [131.159.254.14]) by mailout1.rbg.tum.de (Postfix) with ESMTPS id 3BE4F2950; Tue, 19 Apr 2022 11:34:34 +0200 (CEST) Received: by mailrelay1.rbg.tum.de (Postfix, from userid 112) id 3958D6D9; Tue, 19 Apr 2022 11:34:34 +0200 (CEST) Received: from mailrelay1.rbg.tum.de (localhost [127.0.0.1]) by mailrelay1.rbg.tum.de (Postfix) with ESMTP id 0993655F; Tue, 19 Apr 2022 11:34:34 +0200 (CEST) Received: from mail.in.tum.de (vmrbg426.in.tum.de [131.159.0.73]) by mailrelay1.rbg.tum.de (Postfix) with ESMTPS id 0800E24E; Tue, 19 Apr 2022 11:34:34 +0200 (CEST) Received: by mail.in.tum.de (Postfix, from userid 112) id 019164A043B; Tue, 19 Apr 2022 11:34:33 +0200 (CEST) Received: (Authenticated sender: fent) by mail.in.tum.de (Postfix) with ESMTPSA id 7F2894A0033; Tue, 19 Apr 2022 11:34:33 +0200 (CEST) (Extended-Queue-bit xtech_al@fff.in.tum.de) Content-Type: multipart/mixed; boundary="------------eqyStzg00Tk8XUZelrQBh1Mg" Message-ID: Date: Tue, 19 Apr 2022 11:34:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Subject: Re: [PATCH] libstdc++: Add pretty printer for std::span Content-Language: en-US To: Jonathan Wakely Cc: libstdc++ , gcc-patches References: <20220404105257.199452-1-fent@in.tum.de> From: Philipp Fent In-Reply-To: X-Spam-Status: No, score=-15.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, GIT_PATCH_0, KAM_SHORT, NICE_REPLY_A, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libstdc++@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libstdc++ mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Apr 2022 09:34:39 -0000 This is a multi-part message in MIME format. --------------eqyStzg00Tk8XUZelrQBh1Mg Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 04.04.22 13:39, Jonathan Wakely wrote: > Nice, thanks. I'll get this committed in time for GCC 12 (and backport > it to release branches too). I've attached a rebased patch for trunk and tested it on x86_64-linux. I also backported it for the release branches, gcc-11 tests also pass, on gcc-10 the prettyprinters testsuite reports "unsupported", and gcc-9 didn't have std::span yet. --------------eqyStzg00Tk8XUZelrQBh1Mg Content-Type: text/x-patch; charset=UTF-8; name="gcc-10-libstdc-Add-pretty-printer-for-std-span.patch" Content-Disposition: attachment; filename="gcc-10-libstdc-Add-pretty-printer-for-std-span.patch" Content-Transfer-Encoding: base64 RnJvbSAwZjRhZTgxOTgwZWExMTgxYWNhNGRlY2EwNTA4NjI4ZjlmMzBlNzJiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwIEZlbnQgPGZlbnRAaW4udHVtLmRlPgpE YXRlOiBNb24sIDQgQXByIDIwMjIgMTI6NTI6NTcgKzAyMDAKU3ViamVjdDogW1BBVENIXSBs aWJzdGRjKys6IEFkZCBwcmV0dHkgcHJpbnRlciBmb3Igc3RkOjpzcGFuCgpUaGlzIGltcHJv dmVzIHRoZSBkZWJ1ZyBvdXRwdXQgZm9yIEMrKzIwIHNwYW5zLgpCZWZvcmU6CntzdGF0aWMg ZXh0ZW50ID0gMTg0NDY3NDQwNzM3MDk1NTE2MTUsIF9NX3B0ciA9IDB4N2ZmZmZmZmZiOWE4 LApfTV9leHRlbnQgPSB7X01fZXh0ZW50X3ZhbHVlID0gMn19Ck5vdyB3aXRoIFN0ZFNwYW5Q cmludGVyOgpzdGQ6OnNwYW4gb2YgbGVuZ3RoIDIgPSB7MSwgMn0KLS0tCiBsaWJzdGRjKyst djMvcHl0aG9uL2xpYnN0ZGN4eC92Ni9wcmludGVycy5weSAgfCAzOCArKysrKysrKysrKysr KysrKysrCiAuLi4vbGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjICAgICAgICAg fCAxMSArKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2xpYnN0ZGMrKy12My9weXRob24vbGlic3RkY3h4L3Y2L3ByaW50ZXJzLnB5IGIv bGlic3RkYysrLXYzL3B5dGhvbi9saWJzdGRjeHgvdjYvcHJpbnRlcnMucHkKaW5kZXggNzRj NjI5YTcxMGMuLjc5MGQ4M2ZlY2ZmIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvcHl0aG9u L2xpYnN0ZGN4eC92Ni9wcmludGVycy5weQorKysgYi9saWJzdGRjKystdjMvcHl0aG9uL2xp YnN0ZGN4eC92Ni9wcmludGVycy5weQpAQCAtMTUzNSw2ICsxNTM1LDQzIEBAIGNsYXNzIFN0 ZEVycm9yQ29kZVByaW50ZXI6CiAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICByZXR1 cm4gJyVzID0geyIlcyI6ICVzfScgJSAoc2VsZi50eXBlbmFtZSwgY2F0ZWdvcnksIHN0cnZh bCkKIAorY2xhc3MgU3RkU3BhblByaW50ZXI6CisgICAgIlByaW50IGEgc3RkOjpzcGFuIgor CisgICAgY2xhc3MgX2l0ZXJhdG9yKEl0ZXJhdG9yKToKKyAgICAgICAgZGVmIF9faW5pdF9f KHNlbGYsIGJlZ2luLCBzaXplKToKKyAgICAgICAgICAgIHNlbGYuY291bnQgPSAwCisgICAg ICAgICAgICBzZWxmLmJlZ2luID0gYmVnaW4KKyAgICAgICAgICAgIHNlbGYuc2l6ZSA9IHNp emUKKworICAgICAgICBkZWYgX19pdGVyX18gKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJu IHNlbGYKKworICAgICAgICBkZWYgX19uZXh0X18gKHNlbGYpOgorICAgICAgICAgICAgaWYg c2VsZi5jb3VudCA9PSBzZWxmLnNpemU6CisgICAgICAgICAgICAgICAgcmFpc2UgU3RvcEl0 ZXJhdGlvbgorCisgICAgICAgICAgICBjb3VudCA9IHNlbGYuY291bnQKKyAgICAgICAgICAg IHNlbGYuY291bnQgPSBzZWxmLmNvdW50ICsgMQorICAgICAgICAgICAgcmV0dXJuICdbJWRd JyAlIGNvdW50LCAoc2VsZi5iZWdpbiArIGNvdW50KS5kZXJlZmVyZW5jZSgpCisKKyAgICBk ZWYgX19pbml0X18oc2VsZiwgdHlwZW5hbWUsIHZhbCk6CisgICAgICAgIHNlbGYudHlwZW5h bWUgPSB0eXBlbmFtZQorICAgICAgICBzZWxmLnZhbCA9IHZhbAorICAgICAgICBpZiB2YWwu dHlwZS50ZW1wbGF0ZV9hcmd1bWVudCgxKSA9PSBnZGIucGFyc2VfYW5kX2V2YWwoJ3N0YXRp Y19jYXN0PHN0ZDo6c2l6ZV90PigtMSknKToKKyAgICAgICAgICAgIHNlbGYuc2l6ZSA9IHZh bFsnX01fZXh0ZW50J11bJ19NX2V4dGVudF92YWx1ZSddCisgICAgICAgIGVsc2U6CisgICAg ICAgICAgICBzZWxmLnNpemUgPSB2YWwudHlwZS50ZW1wbGF0ZV9hcmd1bWVudCgxKQorCisg ICAgZGVmIHRvX3N0cmluZyhzZWxmKToKKyAgICAgICAgcmV0dXJuICclcyBvZiBsZW5ndGgg JWQnICUgKHNlbGYudHlwZW5hbWUsIHNlbGYuc2l6ZSkKKworICAgIGRlZiBjaGlsZHJlbihz ZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX2l0ZXJhdG9yKHNlbGYudmFsWydfTV9wdHIn XSwgc2VsZi5zaXplKQorCisgICAgZGVmIGRpc3BsYXlfaGludChzZWxmKToKKyAgICAgICAg cmV0dXJuICdhcnJheScKKwogIyBBICJyZWd1bGFyIGV4cHJlc3Npb24iIHByaW50ZXIgd2hp Y2ggY29uZm9ybXMgdG8gdGhlCiAjICJTdWJQcmV0dHlQcmludGVyIiBwcm90b2NvbCBmcm9t IGdkYi5wcmludGluZy4KIGNsYXNzIFJ4UHJpbnRlcihvYmplY3QpOgpAQCAtMjA0Myw2ICsy MDgwLDcgQEAgZGVmIGJ1aWxkX2xpYnN0ZGN4eF9kaWN0aW9uYXJ5ICgpOgogICAgIGxpYnN0 ZGN4eF9wcmludGVyLmFkZF92ZXJzaW9uKCdzdGQ6OicsICdwYXJ0aWFsX29yZGVyaW5nJywg U3RkQ21wQ2F0UHJpbnRlcikKICAgICBsaWJzdGRjeHhfcHJpbnRlci5hZGRfdmVyc2lvbign c3RkOjonLCAnd2Vha19vcmRlcmluZycsIFN0ZENtcENhdFByaW50ZXIpCiAgICAgbGlic3Rk Y3h4X3ByaW50ZXIuYWRkX3ZlcnNpb24oJ3N0ZDo6JywgJ3N0cm9uZ19vcmRlcmluZycsIFN0 ZENtcENhdFByaW50ZXIpCisgICAgbGlic3RkY3h4X3ByaW50ZXIuYWRkX3ZlcnNpb24oJ3N0 ZDo6JywgJ3NwYW4nLCBTdGRTcGFuUHJpbnRlcikKIAogICAgICMgRXh0ZW5zaW9ucy4KICAg ICBsaWJzdGRjeHhfcHJpbnRlci5hZGRfdmVyc2lvbignX19nbnVfY3h4OjonLCAnc2xpc3Qn LCBTdGRTbGlzdFByaW50ZXIpCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRl L2xpYnN0ZGMrKy1wcmV0dHlwcmludGVycy9jeHgyMC5jYyBiL2xpYnN0ZGMrKy12My90ZXN0 c3VpdGUvbGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjCmluZGV4IDlhODY4YzRi YWY3Li4wODg3ZjE4NjhmMiAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS9s aWJzdGRjKystcHJldHR5cHJpbnRlcnMvY3h4MjAuY2MKKysrIGIvbGlic3RkYysrLXYzL3Rl c3RzdWl0ZS9saWJzdGRjKystcHJldHR5cHJpbnRlcnMvY3h4MjAuY2MKQEAgLTE4LDggKzE4 LDEwIEBACiAvLyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkczLiAg SWYgbm90IHNlZQogLy8gPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgogCisjaW5j bHVkZSA8YXJyYXk+CiAjaW5jbHVkZSA8Y29tcGFyZT4KICNpbmNsdWRlIDxpb3N0cmVhbT4K KyNpbmNsdWRlIDxzcGFuPgogCiBzdHJ1Y3QgWAogewpAQCAtNTQsNiArNTYsMTUgQEAgbWFp bigpCiAgIGF1dG8gYzEwID0gMC4wIDw9PiBfX2J1aWx0aW5fbmFuKCIiKTsKIC8vIHsgZGct ZmluYWwgeyBub3RlLXRlc3QgYzEwICJzdGQ6OnBhcnRpYWxfb3JkZXJpbmc6OnVub3JkZXJl ZCIgfSB9CiAKKyAgYXV0byBpbCA9IHsxLCAyfTsKKyAgYXV0byBzMSA9IHN0ZDo6c3Bhbihp bCk7CisgIHN0YXRpY19hc3NlcnQoczEuZXh0ZW50ID09IHN0ZDo6c2l6ZV90KC0xKSk7Cisv LyB7IGRnLWZpbmFsIHsgbm90ZS10ZXN0IHMxIHtzdGQ6OnNwYW4gb2YgbGVuZ3RoIDIgPSB7 MSwgMn19IH0gfQorICBhdXRvIGEgPSBzdGQ6OmFycmF5ezMsIDR9OworICBhdXRvIHMyID0g c3RkOjpzcGFuKGEpOworICBzdGF0aWNfYXNzZXJ0KHMyLmV4dGVudCA9PSBzdGQ6OnNpemVf dCgyKSk7CisvLyB7IGRnLWZpbmFsIHsgbm90ZS10ZXN0IHMyIHtzdGQ6OnNwYW4gb2YgbGVu Z3RoIDIgPSB7MywgNH19IH0gfQorCiAgIHN0ZDo6Y291dCA8PCAiXG4iOwogICByZXR1cm4g MDsJCQkvLyBNYXJrIFNQT1QKIH0KLS0gCjIuMzUuMwoK --------------eqyStzg00Tk8XUZelrQBh1Mg Content-Type: text/x-patch; charset=UTF-8; name="trunk-libstdc-Add-pretty-printer-for-std-span.patch" Content-Disposition: attachment; filename="trunk-libstdc-Add-pretty-printer-for-std-span.patch" Content-Transfer-Encoding: base64 RnJvbSBjNDMzMWI3NTMyZGMyODI1NDI5ZTgyZTQ2ZmRhMWEwNGRkOTQzYmQ0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwIEZlbnQgPGZlbnRAaW4udHVtLmRlPgpE YXRlOiBNb24sIDQgQXByIDIwMjIgMTI6NTI6NTcgKzAyMDAKU3ViamVjdDogW1BBVENIXSBs aWJzdGRjKys6IEFkZCBwcmV0dHkgcHJpbnRlciBmb3Igc3RkOjpzcGFuCgpUaGlzIGltcHJv dmVzIHRoZSBkZWJ1ZyBvdXRwdXQgZm9yIEMrKzIwIHNwYW5zLgpCZWZvcmU6CntzdGF0aWMg ZXh0ZW50ID0gMTg0NDY3NDQwNzM3MDk1NTE2MTUsIF9NX3B0ciA9IDB4N2ZmZmZmZmZiOWE4 LApfTV9leHRlbnQgPSB7X01fZXh0ZW50X3ZhbHVlID0gMn19Ck5vdyB3aXRoIFN0ZFNwYW5Q cmludGVyOgpzdGQ6OnNwYW4gb2YgbGVuZ3RoIDIgPSB7MSwgMn0KLS0tCiBsaWJzdGRjKyst djMvcHl0aG9uL2xpYnN0ZGN4eC92Ni9wcmludGVycy5weSAgfCAzOCArKysrKysrKysrKysr KysrKysrCiAuLi4vbGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjICAgICAgICAg fCAxMSArKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2xpYnN0ZGMrKy12My9weXRob24vbGlic3RkY3h4L3Y2L3ByaW50ZXJzLnB5IGIv bGlic3RkYysrLXYzL3B5dGhvbi9saWJzdGRjeHgvdjYvcHJpbnRlcnMucHkKaW5kZXggZjdh N2Y5OTYxYTcuLjZkOGI3NjVmMmRhIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvcHl0aG9u L2xpYnN0ZGN4eC92Ni9wcmludGVycy5weQorKysgYi9saWJzdGRjKystdjMvcHl0aG9uL2xp YnN0ZGN4eC92Ni9wcmludGVycy5weQpAQCAtMTY1NCw2ICsxNjU0LDQzIEBAIGNsYXNzIFN0 ZFJlZ2V4U3RhdGVQcmludGVyOgogICAgICAgICAgICAgcyA9ICJ7fSwge309e30iLmZvcm1h dChzLCB2LCBzZWxmLnZhbFsnX01fJyArIHZdKQogICAgICAgICByZXR1cm4gInslc30iICUg KHMpCiAKK2NsYXNzIFN0ZFNwYW5QcmludGVyOgorICAgICJQcmludCBhIHN0ZDo6c3BhbiIK KworICAgIGNsYXNzIF9pdGVyYXRvcihJdGVyYXRvcik6CisgICAgICAgIGRlZiBfX2luaXRf XyhzZWxmLCBiZWdpbiwgc2l6ZSk6CisgICAgICAgICAgICBzZWxmLmNvdW50ID0gMAorICAg ICAgICAgICAgc2VsZi5iZWdpbiA9IGJlZ2luCisgICAgICAgICAgICBzZWxmLnNpemUgPSBz aXplCisKKyAgICAgICAgZGVmIF9faXRlcl9fIChzZWxmKToKKyAgICAgICAgICAgIHJldHVy biBzZWxmCisKKyAgICAgICAgZGVmIF9fbmV4dF9fIChzZWxmKToKKyAgICAgICAgICAgIGlm IHNlbGYuY291bnQgPT0gc2VsZi5zaXplOgorICAgICAgICAgICAgICAgIHJhaXNlIFN0b3BJ dGVyYXRpb24KKworICAgICAgICAgICAgY291bnQgPSBzZWxmLmNvdW50CisgICAgICAgICAg ICBzZWxmLmNvdW50ID0gc2VsZi5jb3VudCArIDEKKyAgICAgICAgICAgIHJldHVybiAnWyVk XScgJSBjb3VudCwgKHNlbGYuYmVnaW4gKyBjb3VudCkuZGVyZWZlcmVuY2UoKQorCisgICAg ZGVmIF9faW5pdF9fKHNlbGYsIHR5cGVuYW1lLCB2YWwpOgorICAgICAgICBzZWxmLnR5cGVu YW1lID0gdHlwZW5hbWUKKyAgICAgICAgc2VsZi52YWwgPSB2YWwKKyAgICAgICAgaWYgdmFs LnR5cGUudGVtcGxhdGVfYXJndW1lbnQoMSkgPT0gZ2RiLnBhcnNlX2FuZF9ldmFsKCdzdGF0 aWNfY2FzdDxzdGQ6OnNpemVfdD4oLTEpJyk6CisgICAgICAgICAgICBzZWxmLnNpemUgPSB2 YWxbJ19NX2V4dGVudCddWydfTV9leHRlbnRfdmFsdWUnXQorICAgICAgICBlbHNlOgorICAg ICAgICAgICAgc2VsZi5zaXplID0gdmFsLnR5cGUudGVtcGxhdGVfYXJndW1lbnQoMSkKKwor ICAgIGRlZiB0b19zdHJpbmcoc2VsZik6CisgICAgICAgIHJldHVybiAnJXMgb2YgbGVuZ3Ro ICVkJyAlIChzZWxmLnR5cGVuYW1lLCBzZWxmLnNpemUpCisKKyAgICBkZWYgY2hpbGRyZW4o c2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9pdGVyYXRvcihzZWxmLnZhbFsnX01fcHRy J10sIHNlbGYuc2l6ZSkKKworICAgIGRlZiBkaXNwbGF5X2hpbnQoc2VsZik6CisgICAgICAg IHJldHVybiAnYXJyYXknCisKICMgQSAicmVndWxhciBleHByZXNzaW9uIiBwcmludGVyIHdo aWNoIGNvbmZvcm1zIHRvIHRoZQogIyAiU3ViUHJldHR5UHJpbnRlciIgcHJvdG9jb2wgZnJv bSBnZGIucHJpbnRpbmcuCiBjbGFzcyBSeFByaW50ZXIob2JqZWN0KToKQEAgLTIxNzAsNiAr MjIwNyw3IEBAIGRlZiBidWlsZF9saWJzdGRjeHhfZGljdGlvbmFyeSAoKToKICAgICBsaWJz dGRjeHhfcHJpbnRlci5hZGRfdmVyc2lvbignc3RkOjonLCAncGFydGlhbF9vcmRlcmluZycs IFN0ZENtcENhdFByaW50ZXIpCiAgICAgbGlic3RkY3h4X3ByaW50ZXIuYWRkX3ZlcnNpb24o J3N0ZDo6JywgJ3dlYWtfb3JkZXJpbmcnLCBTdGRDbXBDYXRQcmludGVyKQogICAgIGxpYnN0 ZGN4eF9wcmludGVyLmFkZF92ZXJzaW9uKCdzdGQ6OicsICdzdHJvbmdfb3JkZXJpbmcnLCBT dGRDbXBDYXRQcmludGVyKQorICAgIGxpYnN0ZGN4eF9wcmludGVyLmFkZF92ZXJzaW9uKCdz dGQ6OicsICdzcGFuJywgU3RkU3BhblByaW50ZXIpCiAKICAgICAjIEV4dGVuc2lvbnMuCiAg ICAgbGlic3RkY3h4X3ByaW50ZXIuYWRkX3ZlcnNpb24oJ19fZ251X2N4eDo6JywgJ3NsaXN0 JywgU3RkU2xpc3RQcmludGVyKQpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0 ZS9saWJzdGRjKystcHJldHR5cHJpbnRlcnMvY3h4MjAuY2MgYi9saWJzdGRjKystdjMvdGVz dHN1aXRlL2xpYnN0ZGMrKy1wcmV0dHlwcmludGVycy9jeHgyMC5jYwppbmRleCBiMGRlMjVj MjdlYy4uNzYwMjNkZjkzZmEgMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUv bGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjCisrKyBiL2xpYnN0ZGMrKy12My90 ZXN0c3VpdGUvbGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjCkBAIC0xOCw4ICsx OCwxMCBAQAogLy8gd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HMy4g IElmIG5vdCBzZWUKIC8vIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KIAorI2lu Y2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPGNvbXBhcmU+CiAjaW5jbHVkZSA8aW9zdHJlYW0+ CisjaW5jbHVkZSA8c3Bhbj4KIAogc3RydWN0IFgKIHsKQEAgLTU0LDYgKzU2LDE1IEBAIG1h aW4oKQogICBhdXRvIGMxMCA9IDAuMCA8PT4gX19idWlsdGluX25hbigiIik7CiAvLyB7IGRn LWZpbmFsIHsgbm90ZS10ZXN0IGMxMCAic3RkOjpwYXJ0aWFsX29yZGVyaW5nOjp1bm9yZGVy ZWQiIH0gfQogCisgIGF1dG8gaWwgPSB7MSwgMn07CisgIGF1dG8gczEgPSBzdGQ6OnNwYW4o aWwpOworICBzdGF0aWNfYXNzZXJ0KHMxLmV4dGVudCA9PSBzdGQ6OnNpemVfdCgtMSkpOwor Ly8geyBkZy1maW5hbCB7IG5vdGUtdGVzdCBzMSB7c3RkOjpzcGFuIG9mIGxlbmd0aCAyID0g ezEsIDJ9fSB9IH0KKyAgYXV0byBhID0gc3RkOjphcnJheXszLCA0fTsKKyAgYXV0byBzMiA9 IHN0ZDo6c3BhbihhKTsKKyAgc3RhdGljX2Fzc2VydChzMi5leHRlbnQgPT0gc3RkOjpzaXpl X3QoMikpOworLy8geyBkZy1maW5hbCB7IG5vdGUtdGVzdCBzMiB7c3RkOjpzcGFuIG9mIGxl bmd0aCAyID0gezMsIDR9fSB9IH0KKwogICBzdGQ6OmNvdXQgPDwgIlxuIjsKICAgcmV0dXJu IDA7CQkJLy8gTWFyayBTUE9UCiB9Ci0tIAoyLjM1LjMKCg== --------------eqyStzg00Tk8XUZelrQBh1Mg Content-Type: text/x-patch; charset=UTF-8; name="gcc-11-libstdc-Add-pretty-printer-for-std-span.patch" Content-Disposition: attachment; filename="gcc-11-libstdc-Add-pretty-printer-for-std-span.patch" Content-Transfer-Encoding: base64 RnJvbSA0NmYwNjMzMWUxNDkyMmE4ZDcwNGIzOGE0N2U4YjgyZTJhMmRjOGM1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwIEZlbnQgPGZlbnRAaW4udHVtLmRlPgpE YXRlOiBNb24sIDQgQXByIDIwMjIgMTI6NTI6NTcgKzAyMDAKU3ViamVjdDogW1BBVENIXSBs aWJzdGRjKys6IEFkZCBwcmV0dHkgcHJpbnRlciBmb3Igc3RkOjpzcGFuCgpUaGlzIGltcHJv dmVzIHRoZSBkZWJ1ZyBvdXRwdXQgZm9yIEMrKzIwIHNwYW5zLgpCZWZvcmU6CntzdGF0aWMg ZXh0ZW50ID0gMTg0NDY3NDQwNzM3MDk1NTE2MTUsIF9NX3B0ciA9IDB4N2ZmZmZmZmZiOWE4 LApfTV9leHRlbnQgPSB7X01fZXh0ZW50X3ZhbHVlID0gMn19Ck5vdyB3aXRoIFN0ZFNwYW5Q cmludGVyOgpzdGQ6OnNwYW4gb2YgbGVuZ3RoIDIgPSB7MSwgMn0KLS0tCiBsaWJzdGRjKyst djMvcHl0aG9uL2xpYnN0ZGN4eC92Ni9wcmludGVycy5weSAgfCAzNyArKysrKysrKysrKysr KysrKysrCiAuLi4vbGlic3RkYysrLXByZXR0eXByaW50ZXJzL2N4eDIwLmNjICAgICAgICAg fCAxMSArKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2xpYnN0ZGMrKy12My9weXRob24vbGlic3RkY3h4L3Y2L3ByaW50ZXJzLnB5IGIv bGlic3RkYysrLXYzL3B5dGhvbi9saWJzdGRjeHgvdjYvcHJpbnRlcnMucHkKaW5kZXggYjVi NTIzYzRiNWEuLjRhZTVkOGQzMDI5IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvcHl0aG9u L2xpYnN0ZGN4eC92Ni9wcmludGVycy5weQorKysgYi9saWJzdGRjKystdjMvcHl0aG9uL2xp YnN0ZGN4eC92Ni9wcmludGVycy5weQpAQCAtMTYyNSw2ICsxNjI1LDQyIEBAIGNsYXNzIFN0 ZEVycm9yQ29kZVByaW50ZXI6CiAgICAgICAgICAgICBuYW1lID0gYWx0X25hbWUKICAgICAg ICAgcmV0dXJuICclcyA9IHslczogJXN9JyAlIChzZWxmLnR5cGVuYW1lLCBuYW1lLCBzdHJ2 YWwpCiAKK2NsYXNzIFN0ZFNwYW5QcmludGVyOgorICAgICJQcmludCBhIHN0ZDo6c3BhbiIK KworICAgIGNsYXNzIF9pdGVyYXRvcihJdGVyYXRvcik6CisgICAgICAgIGRlZiBfX2luaXRf XyhzZWxmLCBiZWdpbiwgc2l6ZSk6CisgICAgICAgICAgICBzZWxmLmNvdW50ID0gMAorICAg ICAgICAgICAgc2VsZi5iZWdpbiA9IGJlZ2luCisgICAgICAgICAgICBzZWxmLnNpemUgPSBz aXplCisKKyAgICAgICAgZGVmIF9faXRlcl9fIChzZWxmKToKKyAgICAgICAgICAgIHJldHVy biBzZWxmCisKKyAgICAgICAgZGVmIF9fbmV4dF9fIChzZWxmKToKKyAgICAgICAgICAgIGlm IHNlbGYuY291bnQgPT0gc2VsZi5zaXplOgorICAgICAgICAgICAgICAgIHJhaXNlIFN0b3BJ dGVyYXRpb24KKworICAgICAgICAgICAgY291bnQgPSBzZWxmLmNvdW50CisgICAgICAgICAg ICBzZWxmLmNvdW50ID0gc2VsZi5jb3VudCArIDEKKyAgICAgICAgICAgIHJldHVybiAnWyVk XScgJSBjb3VudCwgKHNlbGYuYmVnaW4gKyBjb3VudCkuZGVyZWZlcmVuY2UoKQorCisgICAg ZGVmIF9faW5pdF9fKHNlbGYsIHR5cGVuYW1lLCB2YWwpOgorICAgICAgICBzZWxmLnR5cGVu YW1lID0gdHlwZW5hbWUKKyAgICAgICAgc2VsZi52YWwgPSB2YWwKKyAgICAgICAgaWYgdmFs LnR5cGUudGVtcGxhdGVfYXJndW1lbnQoMSkgPT0gZ2RiLnBhcnNlX2FuZF9ldmFsKCdzdGF0 aWNfY2FzdDxzdGQ6OnNpemVfdD4oLTEpJyk6CisgICAgICAgICAgICBzZWxmLnNpemUgPSB2 YWxbJ19NX2V4dGVudCddWydfTV9leHRlbnRfdmFsdWUnXQorICAgICAgICBlbHNlOgorICAg ICAgICAgICAgc2VsZi5zaXplID0gdmFsLnR5cGUudGVtcGxhdGVfYXJndW1lbnQoMSkKKwor ICAgIGRlZiB0b19zdHJpbmcoc2VsZik6CisgICAgICAgIHJldHVybiAnJXMgb2YgbGVuZ3Ro ICVkJyAlIChzZWxmLnR5cGVuYW1lLCBzZWxmLnNpemUpCisKKyAgICBkZWYgY2hpbGRyZW4o c2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9pdGVyYXRvcihzZWxmLnZhbFsnX01fcHRy J10sIHNlbGYuc2l6ZSkKKworICAgIGRlZiBkaXNwbGF5X2hpbnQoc2VsZik6CisgICAgICAg IHJldHVybiAnYXJyYXknCiAKICMgQSAicmVndWxhciBleHByZXNzaW9uIiBwcmludGVyIHdo aWNoIGNvbmZvcm1zIHRvIHRoZQogIyAiU3ViUHJldHR5UHJpbnRlciIgcHJvdG9jb2wgZnJv bSBnZGIucHJpbnRpbmcuCkBAIC0yMTM4LDYgKzIxNzQsNyBAQCBkZWYgYnVpbGRfbGlic3Rk Y3h4X2RpY3Rpb25hcnkgKCk6CiAgICAgbGlic3RkY3h4X3ByaW50ZXIuYWRkX3ZlcnNpb24o J3N0ZDo6JywgJ3BhcnRpYWxfb3JkZXJpbmcnLCBTdGRDbXBDYXRQcmludGVyKQogICAgIGxp YnN0ZGN4eF9wcmludGVyLmFkZF92ZXJzaW9uKCdzdGQ6OicsICd3ZWFrX29yZGVyaW5nJywg U3RkQ21wQ2F0UHJpbnRlcikKICAgICBsaWJzdGRjeHhfcHJpbnRlci5hZGRfdmVyc2lvbign c3RkOjonLCAnc3Ryb25nX29yZGVyaW5nJywgU3RkQ21wQ2F0UHJpbnRlcikKKyAgICBsaWJz dGRjeHhfcHJpbnRlci5hZGRfdmVyc2lvbignc3RkOjonLCAnc3BhbicsIFN0ZFNwYW5Qcmlu dGVyKQogCiAgICAgIyBFeHRlbnNpb25zLgogICAgIGxpYnN0ZGN4eF9wcmludGVyLmFkZF92 ZXJzaW9uKCdfX2dudV9jeHg6OicsICdzbGlzdCcsIFN0ZFNsaXN0UHJpbnRlcikKZGlmZiAt LWdpdCBhL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvbGlic3RkYysrLXByZXR0eXByaW50ZXJz L2N4eDIwLmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS9saWJzdGRjKystcHJldHR5cHJp bnRlcnMvY3h4MjAuY2MKaW5kZXggZDliNDcxMTRkNTcuLmMwZWRlZDIzMDJhIDEwMDY0NAot LS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlL2xpYnN0ZGMrKy1wcmV0dHlwcmludGVycy9j eHgyMC5jYworKysgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlL2xpYnN0ZGMrKy1wcmV0dHlw cmludGVycy9jeHgyMC5jYwpAQCAtMTgsOCArMTgsMTAgQEAKIC8vIHdpdGggdGhpcyBsaWJy YXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qgc2VlCiAvLyA8aHR0cDovL3d3 dy5nbnUub3JnL2xpY2Vuc2VzLz4uCiAKKyNpbmNsdWRlIDxhcnJheT4KICNpbmNsdWRlIDxj b21wYXJlPgogI2luY2x1ZGUgPGlvc3RyZWFtPgorI2luY2x1ZGUgPHNwYW4+CiAKIHN0cnVj dCBYCiB7CkBAIC01NCw2ICs1NiwxNSBAQCBtYWluKCkKICAgYXV0byBjMTAgPSAwLjAgPD0+ IF9fYnVpbHRpbl9uYW4oIiIpOwogLy8geyBkZy1maW5hbCB7IG5vdGUtdGVzdCBjMTAgInN0 ZDo6cGFydGlhbF9vcmRlcmluZzo6dW5vcmRlcmVkIiB9IH0KIAorICBhdXRvIGlsID0gezEs IDJ9OworICBhdXRvIHMxID0gc3RkOjpzcGFuKGlsKTsKKyAgc3RhdGljX2Fzc2VydChzMS5l eHRlbnQgPT0gc3RkOjpzaXplX3QoLTEpKTsKKy8vIHsgZGctZmluYWwgeyBub3RlLXRlc3Qg czEge3N0ZDo6c3BhbiBvZiBsZW5ndGggMiA9IHsxLCAyfX0gfSB9CisgIGF1dG8gYSA9IHN0 ZDo6YXJyYXl7MywgNH07CisgIGF1dG8gczIgPSBzdGQ6OnNwYW4oYSk7CisgIHN0YXRpY19h c3NlcnQoczIuZXh0ZW50ID09IHN0ZDo6c2l6ZV90KDIpKTsKKy8vIHsgZGctZmluYWwgeyBu b3RlLXRlc3QgczIge3N0ZDo6c3BhbiBvZiBsZW5ndGggMiA9IHszLCA0fX0gfSB9CisKICAg c3RkOjpjb3V0IDw8ICJcbiI7CiAgIHJldHVybiAwOwkJCS8vIE1hcmsgU1BPVAogfQotLSAK Mi4zNS4zCgo= --------------eqyStzg00Tk8XUZelrQBh1Mg--