From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qt1-x833.google.com (mail-qt1-x833.google.com [IPv6:2607:f8b0:4864:20::833]) by sourceware.org (Postfix) with ESMTPS id 7AF0E3858D3C for ; Tue, 17 May 2022 18:12:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7AF0E3858D3C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=acm.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-qt1-x833.google.com with SMTP id hh4so14879395qtb.10 for ; Tue, 17 May 2022 11:12:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:content-language:to :from:subject; bh=hEW7TAf1v5J1DX8uSN3b+sF8HN1Nwv8/IlvikiQbISg=; b=IJUKEzA4CdZAywWfFwIEqsKwQeyZlrLwWKW3wP71UGfOSTeOwgknJli/CMbPLQWzkD 9hNLVvsMBn2cWc/6RqEbyyISJxszlXp/4ag/4tbXtqhr/W8pD1uoC49Db6t7l01lMzNC TTITMHFzBdRFBx8nyQCzKwSKK14JpvMwS+RCthlLugSMjEYel5nmjvs+HjDo0fQr+oVV PurbYxDbbyJ3FugvZVvB+7p88Ur9EKgL8RfCiS7huClFtwVOulORjlw5bpBe54qAT/Ht 5TBntzT5SMN+1fZisDTMeYt9ZQFkmlMy3Akw+vm2UfHT3cx40H8n2cYtEtZWeQEvQusi G/gQ== 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=hEW7TAf1v5J1DX8uSN3b+sF8HN1Nwv8/IlvikiQbISg=; b=xj/WHbHAfQBppf5eu2FwBMAkaI6OE3Btcbs6whPXlpFT4qLudHp4EduKXiIP+LRafc /5awU4JOF8J8HxZRHu8siLymlIZdI39en31Woux9LgAbazIKM7gM1v0FJMuGVcfehuTD KejiyCOzEO5NNVmzshD3p2tnZUwAd9/ybwlB7f4q9YD/wRekvLbkTXO15l8ko2Wsbmtf rETGXYL2q77OWEQ10JDb8j8OwM/hsuT3Cj7k/NFDaOr+B3+332L4EulcX7wiF7Wys3fx 2GtsWwtuXOp9pvgl3x2/4IFo7FzlBmwRvL43kDZYiM0nb6KABa3m7L11DU31bQZgl+Mh dCiQ== X-Gm-Message-State: AOAM5323dxnUrOPMWZ/rpGqzwNi6Ytn5QQHPKG2wX33f06WuwE6RTf0B HaMdoG7aKOlqy9IykmwrTv7GVxwSopk= X-Google-Smtp-Source: ABdhPJwssSUTk4LKOkTe1Qf5slWQuOUOIjMWKCOqNBVZhnotw43thPkFE6TWh02xyBs8le9iMQlZdw== X-Received: by 2002:ac8:7fc4:0:b0:2f3:f174:e8c4 with SMTP id b4-20020ac87fc4000000b002f3f174e8c4mr21064930qtk.572.1652811144449; Tue, 17 May 2022 11:12:24 -0700 (PDT) Received: from ?IPV6:2620:10d:c0a3:1407:dbaa:c109:9ad0:34cb? ([2620:10d:c091:500::2:ec0f]) by smtp.googlemail.com with ESMTPSA id r4-20020ac85e84000000b002f39b99f695sm7947530qtx.47.2022.05.17.11.12.23 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 17 May 2022 11:12:23 -0700 (PDT) Sender: Nathan Sidwell Content-Type: multipart/mixed; boundary="------------KIn871ud0UmRLjlBIu8kSuhr" Message-ID: <47f6fc50-4d59-0897-86ed-26611568339f@acm.org> Date: Tue, 17 May 2022 14:12:22 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.2.0 Content-Language: en-US To: GCC Patches From: Nathan Sidwell Subject: demangler: Structured Bindings 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: Tue, 17 May 2022 18:12:28 -0000 This is a multi-part message in MIME format. --------------KIn871ud0UmRLjlBIu8kSuhr Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit C++ Structured bindings have a mangling that has yet to be formally documented. However, it's been around for a while and shows up for module support. This adds it to the demangler. nathan -- Nathan Sidwell --------------KIn871ud0UmRLjlBIu8kSuhr Content-Type: text/x-patch; charset=UTF-8; name="0001-demangler-Structured-Bindings.patch" Content-Disposition: attachment; filename="0001-demangler-Structured-Bindings.patch" Content-Transfer-Encoding: base64 RnJvbSA0NTE4OTRjYWRjZjEyMTA4ODNjZWVmYjJkNjlhMGVkMmQ2YThjZDhiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gU2lkd2VsbCA8bmF0aGFuQGFjbS5vcmc+ CkRhdGU6IFR1ZSwgOCBNYXIgMjAyMiAxMzowMDozNSAtMDgwMApTdWJqZWN0OiBbUEFUQ0gg MS8yXSBkZW1hbmdsZXI6IFN0cnVjdHVyZWQgQmluZGluZ3MKCkMrKyBTdHJ1Y3R1cmVkIGJp bmRpbmdzIGhhdmUgYSBtYW5nbGluZyB0aGF0IGhhcyB5ZXQgdG8gYmUgZm9ybWFsbHkKZG9j dW1lbnRlZC4gIEhvd2V2ZXIsIGl0J3MgYmVlbiBhcm91bmQgZm9yIGEgd2hpbGUgYW5kIHNo b3dzIHVwIGZvcgptb2R1bGUgc3VwcG9ydC4KCglpbmNsdWRlLwoJKiBkZW1hbmdsZS5oIChl bnVtIGRlbWFuZ2xlX2NvbXBvbmVudF90eXBlKTogQWRkCglERU1BTkdMRV9DT01QT05FTlRf U1RSVUNUVVJFRF9CSU5ESU5HLgoJbGliaWJlcnR5LwoJKiBjcC1kZW1hbmdsZS5jIChkX21h a2VfY29tcCk6IEFkanVzdC4KCShkX3VucXVhbGlmaWVkX25hbWUpOiBBZGQgJ0RDJyBzdXBw b3J0LgoJKGRfY291bnRfdGVtcGxhdGVfc2NvcGVzKTogQWRqdXN0LgoJKGRfcHJpbnRfY29t cF9pbm5lcik6IEFkZCBzdHJ1Y3R1cmVkIGJpbmRpbmcuCgkqIHRlc3RzdWl0ZS9kZW1hbmds ZS1leHBlY3RlZDogQWRkIHRlc3RjYXNlcy4KLS0tCiBpbmNsdWRlL2RlbWFuZ2xlLmggICAg ICAgICAgICAgICAgICAgIHwgIDQgKystCiBsaWJpYmVydHkvY3AtZGVtYW5nbGUuYyAgICAg ICAgICAgICAgIHwgNDkgKysrKysrKysrKysrKysrKysrKysrKystLS0tCiBsaWJpYmVydHkv dGVzdHN1aXRlL2RlbWFuZ2xlLWV4cGVjdGVkIHwgMTAgKysrKysrCiAzIGZpbGVzIGNoYW5n ZWQsIDU2IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5j bHVkZS9kZW1hbmdsZS5oIGIvaW5jbHVkZS9kZW1hbmdsZS5oCmluZGV4IDQwMjMwOGY3Njlm Li40NGEyNzM3NGQ0ZiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kZW1hbmdsZS5oCisrKyBiL2lu Y2x1ZGUvZGVtYW5nbGUuaApAQCAtNDQ5LDcgKzQ0OSw5IEBAIGVudW0gZGVtYW5nbGVfY29t cG9uZW50X3R5cGUKICAgLyogQSBjbG9uZWQgZnVuY3Rpb24uICAqLwogICBERU1BTkdMRV9D T01QT05FTlRfQ0xPTkUsCiAgIERFTUFOR0xFX0NPTVBPTkVOVF9OT0VYQ0VQVCwKLSAgREVN QU5HTEVfQ09NUE9ORU5UX1RIUk9XX1NQRUMKKyAgREVNQU5HTEVfQ09NUE9ORU5UX1RIUk9X X1NQRUMsCisKKyAgREVNQU5HTEVfQ09NUE9ORU5UX1NUUlVDVFVSRURfQklORElORwogfTsK IAogLyogVHlwZXMgd2hpY2ggYXJlIG9ubHkgdXNlZCBpbnRlcm5hbGx5LiAgKi8KZGlmZiAt LWdpdCBhL2xpYmliZXJ0eS9jcC1kZW1hbmdsZS5jIGIvbGliaWJlcnR5L2NwLWRlbWFuZ2xl LmMKaW5kZXggNmRmZjdkMjhmY2YuLmZjNjE4ZmE3MzgzIDEwMDY0NAotLS0gYS9saWJpYmVy dHkvY3AtZGVtYW5nbGUuYworKysgYi9saWJpYmVydHkvY3AtZGVtYW5nbGUuYwpAQCAtMTAy MCw2ICsxMDIwLDcgQEAgZF9tYWtlX2NvbXAgKHN0cnVjdCBkX2luZm8gKmRpLCBlbnVtIGRl bWFuZ2xlX2NvbXBvbmVudF90eXBlIHR5cGUsCiAgICAgY2FzZSBERU1BTkdMRV9DT01QT05F TlRfTlVMTEFSWToKICAgICBjYXNlIERFTUFOR0xFX0NPTVBPTkVOVF9UUklOQVJZX0FSRzI6 CiAgICAgY2FzZSBERU1BTkdMRV9DT01QT05FTlRfVFBBUk1fT0JKOgorICAgIGNhc2UgREVN QU5HTEVfQ09NUE9ORU5UX1NUUlVDVFVSRURfQklORElORzoKICAgICAgIGlmIChsZWZ0ID09 IE5VTEwpCiAJcmV0dXJuIE5VTEw7CiAgICAgICBicmVhazsKQEAgLTE2MTksMTIgKzE2MjAs MTIgQEAgZF9wcmVmaXggKHN0cnVjdCBkX2luZm8gKmRpLCBpbnQgc3Vic3QpCiAgICAgfQog fQogCi0vKiA8dW5xdWFsaWZpZWQtbmFtZT4gOjo9IDxvcGVyYXRvci1uYW1lPgotICAgICAg ICAgICAgICAgICAgICAgIDo6PSA8Y3Rvci1kdG9yLW5hbWU+Ci0gICAgICAgICAgICAgICAg ICAgICAgOjo9IDxzb3VyY2UtbmFtZT4KLQkJICAgICAgOjo9IDxsb2NhbC1zb3VyY2UtbmFt ZT4gCi0KLSAgICA8bG9jYWwtc291cmNlLW5hbWU+CTo6PSBMIDxzb3VyY2UtbmFtZT4gPGRp c2NyaW1pbmF0b3I+CisvKiA8dW5xdWFsaWZpZWQtbmFtZT4gOjo9IDxvcGVyYXRvci1uYW1l PiBbPGFiaS10YWdzPl0KKyAgICAgICAgICAgICAgICAgICAgICA6Oj0gPGN0b3ItZHRvci1u YW1lPiBbPGFiaS10YWdzPl0KKyAgICAgICAgICAgICAgICAgICAgICA6Oj0gPHNvdXJjZS1u YW1lPiBbPGFiaS10YWdzPl0KKwkJICAgICAgOjo9IDxsb2NhbC1zb3VyY2UtbmFtZT4gIFs8 YWJpLXRhZ3M+XQorCQkgICAgICA6Oj0gREMgPHNvdXJjZS1uYW1lPisgRSBbPGFiaS10YWdz Pl0KKyAgICA8bG9jYWwtc291cmNlLW5hbWU+CTo6PSBMIDxzb3VyY2UtbmFtZT4gPGRpc2Ny aW1pbmF0b3I+IFs8YWJpLXRhZ3M+XQogKi8KIAogc3RhdGljIHN0cnVjdCBkZW1hbmdsZV9j b21wb25lbnQgKgpAQCAtMTY1NSw2ICsxNjU2LDI4IEBAIGRfdW5xdWFsaWZpZWRfbmFtZSAo c3RydWN0IGRfaW5mbyAqZGkpCiAJCQkgICAgICAgZF9zb3VyY2VfbmFtZSAoZGkpKTsKIAl9 CiAgICAgfQorICBlbHNlIGlmIChwZWVrID09ICdEJyAmJiBkX3BlZWtfbmV4dF9jaGFyIChk aSkgPT0gJ0MnKQorICAgIHsKKyAgICAgIC8vIHN0cnVjdHVyZWQgYmluZGluZworICAgICAg ZF9hZHZhbmNlIChkaSwgMik7CisgICAgICBzdHJ1Y3QgZGVtYW5nbGVfY29tcG9uZW50ICpw cmV2ID0gTlVMTDsKKyAgICAgIGRvCisJeworCSAgc3RydWN0IGRlbWFuZ2xlX2NvbXBvbmVu dCAqbmV4dCA9IAorCSAgICBkX21ha2VfY29tcCAoZGksIERFTUFOR0xFX0NPTVBPTkVOVF9T VFJVQ1RVUkVEX0JJTkRJTkcsCisJCQkgZF9zb3VyY2VfbmFtZSAoZGkpLCBOVUxMKTsKKwkg IGlmIChwcmV2KQorCSAgICBkX3JpZ2h0IChwcmV2KSA9IG5leHQ7CisJICBlbHNlCisJICAg IHJldCA9IG5leHQ7CisJICBwcmV2ID0gbmV4dDsKKwl9CisgICAgICB3aGlsZSAocHJldiAm JiBkX3BlZWtfY2hhciAoZGkpICE9ICdFJyk7CisgICAgICBpZiAocHJldikKKwlkX2FkdmFu Y2UgKGRpLCAxKTsKKyAgICAgIGVsc2UKKwlyZXQgPSBOVUxMOworICAgIH0KICAgZWxzZSBp ZiAocGVlayA9PSAnQycgfHwgcGVlayA9PSAnRCcpCiAgICAgcmV0ID0gZF9jdG9yX2R0b3Jf bmFtZSAoZGkpOwogICBlbHNlIGlmIChwZWVrID09ICdMJykKQEAgLTQxNzksNiArNDIwMiw3 IEBAIGRfY291bnRfdGVtcGxhdGVzX3Njb3BlcyAoc3RydWN0IGRfcHJpbnRfaW5mbyAqZHBp LAogICAgIGNhc2UgREVNQU5HTEVfQ09NUE9ORU5UX0NIQVJBQ1RFUjoKICAgICBjYXNlIERF TUFOR0xFX0NPTVBPTkVOVF9OVU1CRVI6CiAgICAgY2FzZSBERU1BTkdMRV9DT01QT05FTlRf VU5OQU1FRF9UWVBFOgorICAgIGNhc2UgREVNQU5HTEVfQ09NUE9ORU5UX1NUUlVDVFVSRURf QklORElORzoKICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBERU1BTkdMRV9DT01QT05FTlRf VEVNUExBVEU6CkBAIC00ODUwLDYgKzQ4NzQsMTkgQEAgZF9wcmludF9jb21wX2lubmVyIChz dHJ1Y3QgZF9wcmludF9pbmZvICpkcGksIGludCBvcHRpb25zLAogICAgICAgZF9hcHBlbmRf Y2hhciAoZHBpLCAnXScpOwogICAgICAgcmV0dXJuOwogCisgICAgY2FzZSBERU1BTkdMRV9D T01QT05FTlRfU1RSVUNUVVJFRF9CSU5ESU5HOgorICAgICAgZF9hcHBlbmRfY2hhciAoZHBp LCAnWycpOworICAgICAgZm9yICg7OykKKwl7CisJICBkX3ByaW50X2NvbXAgKGRwaSwgb3B0 aW9ucywgZF9sZWZ0IChkYykpOworCSAgZGMgPSBkX3JpZ2h0IChkYyk7CisJICBpZiAoIWRj KQorCSAgICBicmVhazsKKwkgIGRfYXBwZW5kX3N0cmluZyAoZHBpLCAiLCAiKTsKKwl9Cisg ICAgICBkX2FwcGVuZF9jaGFyIChkcGksICddJyk7CisgICAgICByZXR1cm47CisKICAgICBj YXNlIERFTUFOR0xFX0NPTVBPTkVOVF9RVUFMX05BTUU6CiAgICAgY2FzZSBERU1BTkdMRV9D T01QT05FTlRfTE9DQUxfTkFNRToKICAgICAgIGRfcHJpbnRfY29tcCAoZHBpLCBvcHRpb25z LCBkX2xlZnQgKGRjKSk7CmRpZmYgLS1naXQgYS9saWJpYmVydHkvdGVzdHN1aXRlL2RlbWFu Z2xlLWV4cGVjdGVkIGIvbGliaWJlcnR5L3Rlc3RzdWl0ZS9kZW1hbmdsZS1leHBlY3RlZApp bmRleCBkZTU0YWQ3M2NjOC4uMmIwYjUzMWQ0YmYgMTAwNjQ0Ci0tLSBhL2xpYmliZXJ0eS90 ZXN0c3VpdGUvZGVtYW5nbGUtZXhwZWN0ZWQKKysrIGIvbGliaWJlcnR5L3Rlc3RzdWl0ZS9k ZW1hbmdsZS1leHBlY3RlZApAQCAtMTQ5MywzICsxNDkzLDEzIEBAIGRlY2x0eXBlICh7cGFy bSMxfS5BOjp4KSBmPEE+KEEpCiAKIF9aMmY2SVAxQUVEdHB0ZnBfZ3NzcjFBMUJFMXhFVF8K IGRlY2x0eXBlICh7cGFybSMxfS0+KDo6QTo6Qjo6eCkpIGY2PEEqPihBKikKKworIyBTdHJ1 Y3R1cmVkIEJpbmRpbmdzCitfWkRDMWExYkUKK1thLCBiXQorCitfWk5TdERDMWFFRQorc3Rk OjpbYV0KKworX1pOM05NU0RDMWFFRQorTk1TOjpbYV0KLS0gCjIuMzAuMgoK --------------KIn871ud0UmRLjlBIu8kSuhr--