From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 48004 invoked by alias); 15 Mar 2018 03:07:40 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 47948 invoked by uid 89); 15 Mar 2018 03:07:39 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.6 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy= X-HELO: mail-io0-f171.google.com Received: from mail-io0-f171.google.com (HELO mail-io0-f171.google.com) (209.85.223.171) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 15 Mar 2018 03:07:38 +0000 Received: by mail-io0-f171.google.com with SMTP id m83so6791686ioi.8 for ; Wed, 14 Mar 2018 20:07:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=jcOzCe5Z2eOzYH+fN6tlGARpBqUIyWa8H7VfFP9PbDY=; b=pTq8bU9oN1FRU7H35XqCwryDRN/gRQziOSgWBL+Txyl/rIEGSv8Etm8HsCxpWAHrdW 8AlON66mnIfMnOAIAU2t5SttrN/eCcWyNbfFoJFvRTtUmX4hqGwKy/CN+HNzfZL78J6Y T22OoV3zPacZ4jcE1bHHaC74Htnf/RhJRZFqg6inV9pDGB1IBVu1Zcu/DkvcSVAKvGT2 kFeePeTrrh47SR5NzSbrusmhHCJ8vfprPoCFbRQKyGFw2hYoTbOR4RR47FXM4xikvxn6 Yx8UcGVJdb+clScHq2RP+pJb7awT2lD9vtLj+xYHE1RP4uMy2G8jge0alP83x0Lkb1aK y1tQ== X-Gm-Message-State: AElRT7H3dG9TGF1o7WBV38Qe7Az6bPWMVHlYGeGg5NaHIH8seZ5JqST9 ZVJ/kPBcUlKotxhqU1lPekuDlFhRkd+pn6VoJ/FXTuxZ X-Google-Smtp-Source: AG47ELskujn9BRXs3jTNycPKYOG/Z9LEUDRaEVL5+jNK6efbVAFD+8HqpVCTxZQ/hgmsNcwYNSegIsbsFVZdGd8eM6g= X-Received: by 10.107.6.231 with SMTP id f100mr7621807ioi.23.1521083256307; Wed, 14 Mar 2018 20:07:36 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.30.9 with HTTP; Wed, 14 Mar 2018 20:07:15 -0700 (PDT) In-Reply-To: References: From: Jason Merrill Date: Thu, 15 Mar 2018 03:48:00 -0000 Message-ID: Subject: Re: C++ PATCH for c++/81236, missed 'this' capture with template-id in generic lambda To: gcc-patches List Content-Type: multipart/mixed; boundary="001a113f9be42ad9a805676acba6" X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00694.txt.bz2 --001a113f9be42ad9a805676acba6 Content-Type: text/plain; charset="UTF-8" Content-length: 716 On Tue, Aug 29, 2017 at 5:37 PM, Jason Merrill wrote: > We could approach this by extending that change to all generic > lambdas, and that might be appropriate for GCC 7, but it seems to me > that this approach will just mean any problems with doing all the > normal processing in a template will remain latent until someone > happens to use them in a generic lambda; instead, this patch removes > the template special case and fixes the normal code to work properly > in templates. I noticed today that this caused a regression on the attached testcases, because we weren't updating the type of the BASELINK after instantiating the auto function. Tested x86_64-pc-linux-gnu, applying to trunk. --001a113f9be42ad9a805676acba6 Content-Type: text/x-patch; charset="US-ASCII"; name="81236-2.diff" Content-Disposition: attachment; filename="81236-2.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jerxoaj91 Content-length: 2916 Y29tbWl0IGQxZDkxZjE0NmQ4OGI5ZDc0NDJjY2UxZTAzZWRjYTU1NjkzZGUx MzkKQXV0aG9yOiBKYXNvbiBNZXJyaWxsIDxqYXNvbkByZWRoYXQuY29tPgpE YXRlOiAgIFdlZCBNYXIgMTQgMTY6Mjc6MDggMjAxOCAtMDQwMAoKICAgICAg ICAgICAgUFIgYysrLzgxMjM2IC0gYXV0byB2YXJpYWJsZSBhbmQgYXV0byBm dW5jdGlvbgogICAgCiAgICAgICAgICAgICogcHQuYyAodHN1YnN0X2Jhc2Vs aW5rKTogVXBkYXRlIHRoZSB0eXBlIG9mIHRoZSBCQVNFTElOSyBhZnRlcgog ICAgICAgICAgICBtYXJrX3VzZWQuCgpkaWZmIC0tZ2l0IGEvZ2NjL2NwL3B0 LmMgYi9nY2MvY3AvcHQuYwppbmRleCAxNDMyMTgxNmNkZS4uMmVhNWZjNzlh MmMgMTAwNjQ0Ci0tLSBhL2djYy9jcC9wdC5jCisrKyBiL2djYy9jcC9wdC5j CkBAIC0xNDcwMCw5ICsxNDcwMCwxNiBAQCB0c3Vic3RfYmFzZWxpbmsgKHRy ZWUgYmFzZWxpbmssIHRyZWUgb2JqZWN0X3R5cGUsCiAgIC8qIElmIGxvb2t1 cCBmb3VuZCBhIHNpbmdsZSBmdW5jdGlvbiwgbWFyayBpdCBhcyB1c2VkIGF0 IHRoaXMgcG9pbnQuCiAgICAgIChJZiBsb29rdXAgZm91bmQgbXVsdGlwbGUg ZnVuY3Rpb25zIHRoZSBvbmUgc2VsZWN0ZWQgbGF0ZXIgYnkKICAgICAgb3Zl cmxvYWQgcmVzb2x1dGlvbiB3aWxsIGJlIG1hcmtlZCBhcyB1c2VkIGF0IHRo YXQgcG9pbnQuKSAgKi8KLSAgaWYgKCF0ZW1wbGF0ZV9pZF9wICYmICFyZWFs bHlfb3ZlcmxvYWRlZF9mbiAoZm5zKQotICAgICAgJiYgIW1hcmtfdXNlZCAo T1ZMX0ZJUlNUIChmbnMpLCBjb21wbGFpbikgJiYgIShjb21wbGFpbiAmIHRm X2Vycm9yKSkKLSAgICByZXR1cm4gZXJyb3JfbWFya19ub2RlOworICBpZiAo IXRlbXBsYXRlX2lkX3AgJiYgIXJlYWxseV9vdmVybG9hZGVkX2ZuIChmbnMp KQorICAgIHsKKyAgICAgIHRyZWUgZm4gPSBPVkxfRklSU1QgKGZucyk7Cisg ICAgICBib29sIG9rID0gbWFya191c2VkIChmbiwgY29tcGxhaW4pOworICAg ICAgaWYgKCFvayAmJiAhKGNvbXBsYWluICYgdGZfZXJyb3IpKQorCXJldHVy biBlcnJvcl9tYXJrX25vZGU7CisgICAgICBpZiAob2sgJiYgQkFTRUxJTktf UCAoYmFzZWxpbmspKQorCS8qIFdlIG1pZ2h0IGhhdmUgaW5zdGFudGlhdGVk IGFuIGF1dG8gZnVuY3Rpb24uICAqLworCVRSRUVfVFlQRSAoYmFzZWxpbmsp ID0gVFJFRV9UWVBFIChmbik7CisgICAgfQogCiAgIGlmIChCQVNFTElOS19Q IChiYXNlbGluaykpCiAgICAgewpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nKysuZGcvY3BwMXkvYXV0by1mbjQ4LkMgYi9nY2MvdGVzdHN1aXRlL2cr Ky5kZy9jcHAxeS9hdXRvLWZuNDguQwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uYmY5NDQ4ZTc5M2UKLS0tIC9kZXYvbnVsbAor KysgYi9nY2MvdGVzdHN1aXRlL2crKy5kZy9jcHAxeS9hdXRvLWZuNDguQwpA QCAtMCwwICsxLDE1IEBACisvLyB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQg YysrMTQgfSB9CisKK3RlbXBsYXRlIDxjbGFzcyBUPiBzdHJ1Y3QgQQorewor ICBzdGF0aWMgYXV0byBmbigpIHsgfQorICBzdGF0aWMgdm9pZCBmKCkKKyAg eworICAgIGF1dG8geCA9IGZuOworICB9Cit9OworCitpbnQgbWFpbigpCit7 CisgIEE8aW50Pjo6ZigpOworfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nKysuZGcvY3BwMXkvYXV0by1mbjQ5LkMgYi9nY2MvdGVzdHN1aXRlL2cr Ky5kZy9jcHAxeS9hdXRvLWZuNDkuQwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uZDJlNDkwNjA0YTcKLS0tIC9kZXYvbnVsbAor KysgYi9nY2MvdGVzdHN1aXRlL2crKy5kZy9jcHAxeS9hdXRvLWZuNDkuQwpA QCAtMCwwICsxLDEyIEBACisvLyBDV0cgaXNzdWUgMjMzNQorLy8geyBkZy1k byBjb21waWxlIHsgdGFyZ2V0IGMrKzE0IH0gfQorCit0ZW1wbGF0ZSA8Y2xh c3MuLi4gVHM+IHN0cnVjdCBwYXJ0aXRpb25faW5kaWNlcyB7CisgIHN0YXRp YyBhdXRvIGNvbXB1dGVfcmlnaHQgKCkge30KKyAgc3RhdGljIGNvbnN0ZXhw ciBhdXRvIHJpZ2h0ID0gY29tcHV0ZV9yaWdodDsKK307CithdXRvIGZvbyAo KSAtPiBwYXJ0aXRpb25faW5kaWNlczw+Owordm9pZCBmKCkgeworICBhdXRv IHggPSBmb28oKTsKKyAgYXV0byB5ID0geC5yaWdodDsKK30K --001a113f9be42ad9a805676acba6--