From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72b.google.com (mail-qk1-x72b.google.com [IPv6:2607:f8b0:4864:20::72b]) by sourceware.org (Postfix) with ESMTPS id 7F6323858C2D for ; Tue, 11 Oct 2022 11:41:04 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7F6323858C2D Authentication-Results: sourceware.org; dmarc=fail (p=none dis=none) header.from=acm.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-qk1-x72b.google.com with SMTP id f27so632219qkh.12 for ; Tue, 11 Oct 2022 04:41:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:from:to:content-language:user-agent:mime-version:date :message-id:sender:from:to:cc:subject:date:message-id:reply-to; bh=G8zc5SCL5mGapvULRyzA77A08V84wKs8Ul271dJPBKk=; b=G10FmNcoJlFBqkPDndJg/z79k6zw6YT5+9fJGAPB5QGS0qWaYSjb+Im/oeB5z0bjGC d9lQaTmsnJgOl9iR3e9w7UNLejLb7JTy5yQ9zQ10fxabLmh47Vhq9H4BonOa1t5IM03l H1g9e6VkSlxsV/Ezs507xgMXEW5vNNgCkhqqStgW6CrPoqw2aeMlmlHyj2wYvNzqYQZF c0UudJ2xYq5t706RtIn7PbJHzl/EN9g0oFJ0Og0uGCnLzdO7aC4bkw8dhyqYa1zlRf05 TAZDatyGVy4nH+vBIheg0BUxfkS8K/H6rtKWZjvr3s9dusWuhst6uL68dquYpG9teWGl nm8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=subject:from:to:content-language:user-agent:mime-version:date :message-id:sender:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=G8zc5SCL5mGapvULRyzA77A08V84wKs8Ul271dJPBKk=; b=vmqbq/GFwIyPsKJHCFViRvk/WMUapxNdiy/dRnwziDn4t14MxRj5OXDzg8GTSPZ4Jk DcFVlHw93qnfVB4xxElBNagS2CU/wrJOzruoStZfR7uDlpbtgPeY2M22Op6T7CuSKPWF SDQAOUvvi2N4ZcxIjAl8GPVcNQ2AjFmh4Oo4ogXFDrWciU1q2XVxWWCe0an86Jf93hKR Wqiq/+WBcetRM0amWBKqSu1BgSo+zOwOSokJ9osvcfr1G1KLmNsAQYtjy5djXqxazp9f A+ef6bpYr00P0GHc6OeIhacWIzMsHwIg9PMemevVBzayRCIwe64nSDu93uN4F4LOU6/e p03A== X-Gm-Message-State: ACrzQf0mSoRZRFzk8GeRWAMtAKVE03ZyV0szLX08EQaKIbzczpQBZHsA 5e2x1hcRPIbp6OxIg7zAkk8zSdbLF6M= X-Google-Smtp-Source: AMsMyM5D33rsFsuw+tu+PcENF1Agtz7C0tP2fRkbi/8/N2W1+9tT8iMi31V9V0DqS4d1oHtGzM9qOQ== X-Received: by 2002:a37:584:0:b0:6eb:b98:926b with SMTP id 126-20020a370584000000b006eb0b98926bmr10861608qkf.233.1665488463440; Tue, 11 Oct 2022 04:41:03 -0700 (PDT) Received: from ?IPV6:2620:10d:c0a3:1407:c37b:fd51:1e21:ab7f? ([2620:10d:c091:500::4:f3c6]) by smtp.googlemail.com with ESMTPSA id bi37-20020a05620a31a500b006dfa0891397sm2590424qkb.32.2022.10.11.04.41.02 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 11 Oct 2022 04:41:03 -0700 (PDT) Sender: Nathan Sidwell Content-Type: multipart/mixed; boundary="------------VFA0rlMtzCVJ4Kx6nM1g6xfh" Message-ID: <84155431-f95e-24d5-5d4c-67b98bc93e39@acm.org> Date: Tue, 11 Oct 2022 07:41:02 -0400 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1 Content-Language: en-US To: GCC Patches From: Nathan Sidwell Subject: libiberty: Demangling 'M' prefixes X-Spam-Status: No, score=-3038.7 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 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: This is a multi-part message in MIME format. --------------VFA0rlMtzCVJ4Kx6nM1g6xfh Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit The grammar for a lambda context can include 'M', and we were adding the component that generated to the substitution table twice. Just ignore the 'M' completely -- we'll already have done the checks we need when we saw its predecessor. A prefix cannot be the last component of a nested name, so we do not need to check for that case (although we could if we wanted to be more lenient). nathan -- Nathan Sidwell --------------VFA0rlMtzCVJ4Kx6nM1g6xfh Content-Type: text/x-patch; charset=UTF-8; name="0001-libiberty-Demangling-M-prefixes.patch" Content-Disposition: attachment; filename="0001-libiberty-Demangling-M-prefixes.patch" Content-Transfer-Encoding: base64 RnJvbSAwZmEzNWM3ZTI5NzRhMjJiMjEwN2ZhMzc4ODk1YzMwNjlmZTA3ZmYzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gU2lkd2VsbCA8bmF0aGFuQGFjbS5vcmc+ CkRhdGU6IEZyaSwgMzAgU2VwIDIwMjIgMDk6NDM6MzAgLTA3MDAKU3ViamVjdDogW1BBVENI XSBsaWJpYmVydHk6IERlbWFuZ2xpbmcgJ00nIHByZWZpeGVzCgpUaGUgZ3JhbW1hciBmb3Ig YSBsYW1iZGEgY29udGV4dCBjYW4gaW5jbHVkZSA8c291cmNlLW5hbWU+ICdNJywgYW5kIHdl CndlcmUgYWRkaW5nIHRoZSBjb21wb25lbnQgdGhhdCBnZW5lcmF0ZWQgdG8gdGhlIHN1YnN0 aXR1dGlvbiB0YWJsZQp0d2ljZS4gIEp1c3QgaWdub3JlIHRoZSAnTScgY29tcGxldGVseSAt LSB3ZSdsbCBhbHJlYWR5IGhhdmUgZG9uZSB0aGUKY2hlY2tzIHdlIG5lZWQgd2hlbiB3ZSBz YXcgaXRzIHByZWRlY2Vzc29yLiAgQSBwcmVmaXggY2Fubm90IGJlIHRoZQpsYXN0IGNvbXBv bmVudCBvZiBhIG5lc3RlZCBuYW1lLCBzbyB3ZSBkbyBub3QgbmVlZCB0byBjaGVjayBmb3Ig dGhhdApjYXNlIChhbHRob3VnaCB3ZSBjb3VsZCBpZiB3ZSB3YW50ZWQgdG8gYmUgbW9yZSBs ZW5pZW50KS4KCglsaWJpYmVydHkvCgkqIGNwLWRlbWFuZ2xlLmMgKGRfcHJlZml4KTogJ00n IGNvbXBvbmVudHMgYXJlIG5vdAoJKHJlLSlhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uIHRh YmxlLgoJKiB0ZXN0c3VpdGUvZGVtYW5nbGUtZXhwZWN0ZWQ6IEFkZCB0ZXN0cy4KLS0tCiBs aWJpYmVydHkvY3AtZGVtYW5nbGUuYyAgICAgICAgICAgICAgIHwgIDggKysrLS0tLS0KIGxp YmliZXJ0eS90ZXN0c3VpdGUvZGVtYW5nbGUtZXhwZWN0ZWQgfCAyMSArKysrKysrKysrKysr KysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9saWJpYmVydHkvY3AtZGVtYW5nbGUuYyBiL2xpYmliZXJ0 eS9jcC1kZW1hbmdsZS5jCmluZGV4IDMwM2JmYmY3MDllLi40YmViNGQyNTdiYiAxMDA2NDQK LS0tIGEvbGliaWJlcnR5L2NwLWRlbWFuZ2xlLmMKKysrIGIvbGliaWJlcnR5L2NwLWRlbWFu Z2xlLmMKQEAgLTE2MDksMTIgKzE2MDksMTAgQEAgZF9wcmVmaXggKHN0cnVjdCBkX2luZm8g KmRpLCBpbnQgc3Vic3RhYmxlKQogCX0KICAgICAgIGVsc2UgaWYgKHBlZWsgPT0gJ00nKQog CXsKLQkgIC8qIEluaXRpYWxpemVyIHNjb3BlIGZvciBhIGxhbWJkYS4gIFdlIGRvbid0IG5l ZWQgdG8gcmVwcmVzZW50Ci0JICAgICB0aGlzOyB0aGUgbm9ybWFsIGNvZGUgd2lsbCBqdXN0 IHRyZWF0IHRoZSB2YXJpYWJsZSBhcyBhIHR5cGUKLQkgICAgIHNjb3BlLCB3aGljaCBnaXZl cyBhcHByb3ByaWF0ZSBvdXRwdXQuICAqLwotCSAgaWYgKHJldCA9PSBOVUxMKQotCSAgICBy ZXR1cm4gTlVMTDsKKwkgIC8qIEluaXRpYWxpemVyIHNjb3BlIGZvciBhIGxhbWJkYS4gIFdl IGFscmVhZHkgYWRkZWQgaXQgYXMgYQorICAJICAgICBzdWJzdGl0dXRpb24gY2FuZGlkYXRl LCBkb24ndCBkbyB0aGF0IGFnYWluLiAgKi8KIAkgIGRfYWR2YW5jZSAoZGksIDEpOworCSAg Y29udGludWU7CiAJfQogICAgICAgZWxzZQogCXsKZGlmZiAtLWdpdCBhL2xpYmliZXJ0eS90 ZXN0c3VpdGUvZGVtYW5nbGUtZXhwZWN0ZWQgYi9saWJpYmVydHkvdGVzdHN1aXRlL2RlbWFu Z2xlLWV4cGVjdGVkCmluZGV4IDkwZGQ0YTEzOTQ1Li5iZDkyYjEyMDc2YiAxMDA2NDQKLS0t IGEvbGliaWJlcnR5L3Rlc3RzdWl0ZS9kZW1hbmdsZS1leHBlY3RlZAorKysgYi9saWJpYmVy dHkvdGVzdHN1aXRlL2RlbWFuZ2xlLWV4cGVjdGVkCkBAIC0xNTgxLDMgKzE1ODEsMjQgQEAg dm9pZCBMMSgpOjp7bGFtYmRhKChhdXRvOjEpLi4uKSMxfTo6b3BlcmF0b3IoKTxpbnQsIGlu dCo+KGludCwgaW50KikgY29uc3QKIF9aWjJMMXZFTktVbERwVF9FX2NsSUppUGlFRUVEYVMw XwogYXV0byBMMSgpOjp7bGFtYmRhKChhdXRvOjEpLi4uKSMxfTo6b3BlcmF0b3IoKTxpbnQs IGludCo+KGludCwgaW50KikgY29uc3QKIAorX1o3Y2FwdHVyZUlONGd2YXJNVWx2RV9FRTdX cmFwcGVySVRfRU9TM18KK1dyYXBwZXI8Z3Zhcjo6e2xhbWJkYSgpIzF9PiBjYXB0dXJlPGd2 YXI6OntsYW1iZGEoKSMxfT4oZ3Zhcjo6e2xhbWJkYSgpIzF9JiYpCisKK19aTksyTDJNVWxU X1QwX0VfY2xJaWZFRXZTX1MwXwordm9pZCBMMjo6e2xhbWJkYShhdXRvOjEsIGF1dG86Mikj MX06Om9wZXJhdG9yKCk8aW50LCBmbG9hdD4oTDIsIGludCkgY29uc3QKKworX1pOSzFDMWZN VWxUX0VfY2xJTVNfaUVFRGFTMV8KK2F1dG8gQzo6Zjo6e2xhbWJkYShhdXRvOjEpIzF9Ojpv cGVyYXRvcigpPGludCBDOjoqPihpbnQgQzo6KikgY29uc3QKKworX1pOSzJMMk1VbFRfVDBf RV9jbElpZkVFdlMwX1MxXwordm9pZCBMMjo6e2xhbWJkYShhdXRvOjEsIGF1dG86MikjMX06 Om9wZXJhdG9yKCk8aW50LCBmbG9hdD4oaW50LCBmbG9hdCkgY29uc3QKKworX1pOSzFCMkwz TVVsVF9UMF9FX2NsSWpkRUV2UzFfUzJfCit2b2lkIEI6OkwzOjp7bGFtYmRhKGF1dG86MSwg YXV0bzoyKSMxfTo6b3BlcmF0b3IoKTx1bnNpZ25lZCBpbnQsIGRvdWJsZT4odW5zaWduZWQg aW50LCBkb3VibGUpIGNvbnN0CisKK19aM2Zvb0lOMXFNVWx2RV9FTlMwX1VsdkUwX0VFaU9U X09UMF8KK2ludCBmb288cTo6e2xhbWJkYSgpIzF9LCBxOjp7bGFtYmRhKCkjMn0+KHE6Onts YW1iZGEoKSMxfSYmLCBxOjp7bGFtYmRhKCkjMn0mJikKKworX1pOSzJMMU1VbERwVF9FX2Ns SUppUGlFRUV2UzFfCit2b2lkIEwxOjp7bGFtYmRhKChhdXRvOjEpLi4uKSMxfTo6b3BlcmF0 b3IoKTxpbnQsIGludCo+KGludCwgaW50KikgY29uc3QKKwotLSAKMi4zMC4yCgo= --------------VFA0rlMtzCVJ4Kx6nM1g6xfh--