From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 93963 invoked by alias); 4 Mar 2017 22:15:58 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 93947 invoked by uid 89); 4 Mar 2017 22:15:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=ham version=3.3.2 spammy=assemble, classified, watch X-HELO: mail-ua0-f176.google.com Received: from mail-ua0-f176.google.com (HELO mail-ua0-f176.google.com) (209.85.217.176) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 04 Mar 2017 22:15:55 +0000 Received: by mail-ua0-f176.google.com with SMTP id f54so140184780uaa.1 for ; Sat, 04 Mar 2017 14:15:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:from:date:message-id:subject :to; bh=P6xYogZX+OVcEGCdX+snCaE/G+88D9wH9QOVl2SWx3o=; b=nkHq3TrD4mZa9sGDEJXkdaJB4/UBqYlgrij91m4WuVZAgdiLSKKDzI+uyioHD6sq9E gpFB07dITElIxiBFOXD+B8sus5GRQO/OdTCov6kxuVkUtiZvWqsDn7iPYJ0FNvXwC6QJ ajjzCqxKPpAuluqsvwqqI0TxOO4ZRaifCnzLk6legdyLwav7E5tgHF/RpBg4Ce0yBvMh 5vJ/3SF0stfdGMO3ZSUAlKaQhCxNAMXdB9TyeCO+CNpxxyzPWesl24X4Fl/9cQ6NT8g7 K7HEg4XJzcQFCemX5N16HJRjqGhwBKF0nxwxxBhGWC+lzuLp0C30IWEG3XS8exGz6gvT IDMw== X-Gm-Message-State: AMke39n5chg6G3cp1R7X0xhUaz11dEjY/USw+c+OgHcmLtGRRxxCkU/FyB77l+MWtuuznKhZ5VDPUT2a/WFaHA== X-Received: by 10.176.8.4 with SMTP id a4mr4541737uaf.171.1488665753734; Sat, 04 Mar 2017 14:15:53 -0800 (PST) MIME-Version: 1.0 Received: by 10.31.41.81 with HTTP; Sat, 4 Mar 2017 14:15:53 -0800 (PST) From: Iain Buclaw Date: Sat, 04 Mar 2017 22:15:00 -0000 Message-ID: Subject: [PING] [PATCH] D: Fix classification of module.type in lexer To: GDB Patches Content-Type: multipart/mixed; boundary=f403045ee778713f400549ef0169 X-IsSubscribed: yes X-SW-Source: 2017-03/txt/msg00035.txt.bz2 --f403045ee778713f400549ef0169 Content-Type: text/plain; charset=UTF-8 Content-length: 845 Small ping on this. I'm confident about the source change is pretty much obvious, just want to make sure that the test is ok too. --- The two-tier lexer, whose job is to resolve fully qualified names missed a case where 'module.type' was not being classified as one token. And so when the Yacc grammar kicks in, it resolved the tokens as "TypeExp . IdentifierExp", which then will never match the rule for cast expressions "( TypeExp ) UnaryExpression". Adding a case for TYPE_CODE_MODULE in type_aggregate_p means that classify_inner_name will get a chance to look-up the symbol. This was noticed when someone tried 'watch -l', and got the rather confusing response: A syntax error in expression, near `) 0x000000010'. So it's been included in the testsuite, along with another test that does effectively the same expression explicitly. --f403045ee778713f400549ef0169 Content-Type: text/x-patch; charset=US-ASCII; name="dlang-watch-location.patch" Content-Disposition: attachment; filename="dlang-watch-location.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_izvt4y1r0 Content-length: 6031 MjAxNy0wMS0wNyAgSWFpbiBCdWNsYXcgIDxpYnVjbGF3QGdkY3Byb2plY3Qu b3JnPgoKZ2RiL0NoYW5nZUxvZzoKCgkqIGQtZXhwLnkgKHR5cGVfYWdncmVn YXRlX3ApOiBUcmVhdCBUWVBFX0NPREVfTU9EVUxFIGFzIGJlaW5nCglhZ2dy ZWdhdGUtbGlrZS4KCmdkYi90ZXN0c3VpdGUvQ2hhbmdlTG9nOgoKCSogZ2Ri LmRsYW5nL3dhdGNoLWxvYy5jOiBOZXcgZmlsZS4KCSogZ2RiLmRsYW5nL3dh dGNoLWxvYy5leHA6IE5ldyBmaWxlLgoKLS0tCmRpZmYgLS1naXQgYS9nZGIv ZC1leHAueSBiL2dkYi9kLWV4cC55CmluZGV4IDA3N2U2NDUuLjJkYWIwMGUg MTAwNjQ0Ci0tLSBhL2dkYi9kLWV4cC55CisrKyBiL2dkYi9kLWV4cC55CkBA IC02NTEsNiArNjUxLDcgQEAgdHlwZV9hZ2dyZWdhdGVfcCAoc3RydWN0IHR5 cGUgKnR5cGUpCiB7CiAgIHJldHVybiAoVFlQRV9DT0RFICh0eXBlKSA9PSBU WVBFX0NPREVfU1RSVUNUCiAJICB8fCBUWVBFX0NPREUgKHR5cGUpID09IFRZ UEVfQ09ERV9VTklPTgorCSAgfHwgVFlQRV9DT0RFICh0eXBlKSA9PSBUWVBF X0NPREVfTU9EVUxFCiAJICB8fCAoVFlQRV9DT0RFICh0eXBlKSA9PSBUWVBF X0NPREVfRU5VTQogCSAgICAgICYmIFRZUEVfREVDTEFSRURfQ0xBU1MgKHR5 cGUpKSk7CiB9CmRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5kbGFu Zy93YXRjaC1sb2MuYyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmRsYW5nL3dhdGNo LWxvYy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcy NWQxZjEKLS0tIC9kZXYvbnVsbAorKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5k bGFuZy93YXRjaC1sb2MuYwpAQCAtMCwwICsxLDM5IEBACisvKiBDb3B5cmln aHQgMjAxNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworICAg VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0 cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAgIGl0IHVuZGVyIHRoZSB0ZXJt cyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlz aGVkIGJ5CisgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorICAgKGF0IHlvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgVGhpcyBwcm9ncmFt IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgTUVSQ0hBTlRBQklM SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl IHRoZQorICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg ZGV0YWlscy4KKworICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w eSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgIGFsb25n IHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cu Z251Lm9yZy9saWNlbnNlcy8+LiAgKi8KKworCisvKiBEV0FSRiB3aWxsIGRl c2NyaWJlIHRoZXNlIGNvbnRlbnRzIGFzIGJlaW5nIGluc2lkZSBhIEQgbW9k dWxlLiAgKi8KKwordHlwZWRlZiBzdHJ1Y3QgdHN0cnVjdAoreworfSB0c3Ry dWN0OworCit0c3RydWN0IG15X2RhdGE7CisKK2FzbSAoImRtYWluX3N0YXJ0 OiAuZ2xvYmwgZG1haW5fc3RhcnQiKTsKKworaW50IF9EbWFpbiAodm9pZCkK K3sKKyAgcmV0dXJuIDA7Cit9CisKK2FzbSAoImRtYWluX2VuZDogLmdsb2Js IGRtYWluX2VuZCIpOworCitpbnQKK21haW4gKHZvaWQpCit7CisgIHJldHVy biBfRG1haW4gKCk7Cit9CisKZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUv Z2RiLmRsYW5nL3dhdGNoLWxvYy5leHAgYi9nZGIvdGVzdHN1aXRlL2dkYi5k bGFuZy93YXRjaC1sb2MuZXhwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAuLmIzNGExMDIKLS0tIC9kZXYvbnVsbAorKysgYi9nZGIvdGVz dHN1aXRlL2dkYi5kbGFuZy93YXRjaC1sb2MuZXhwCkBAIC0wLDAgKzEsODYg QEAKKyMgQ29weXJpZ2h0IChDKSAyMDE3IEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbiwgSW5jLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9y CisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisj IFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBN RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl CisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0 dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCisjIFRlc3Qgc3ltYm9s IGxvb2t1cCB3aGVuIHRoZXJlIGFyZSBtdWx0aXBsZSBjaXJjdWxhciBpbXBv cnRzLgorCitsb2FkX2xpYiAiZC1zdXBwb3J0LmV4cCIKK2xvYWRfbGliICJk d2FyZi5leHAiCisKK2lmIHsgW3NraXBfZF90ZXN0c10gfSB7IHJldHVybiAt MSB9CisKKyMgVGhpcyB0ZXN0IGNhbiBvbmx5IGJlIHJ1biBvbiB0YXJnZXRz IHdoaWNoIHN1cHBvcnQgRFdBUkYtMiBhbmQgdXNlIGdhcy4KK2lmIHshW2R3 YXJmMl9zdXBwb3J0XX0geworICAgIHJldHVybiAwCit9CisKK3N0YW5kYXJk X3Rlc3RmaWxlIHdhdGNoLWxvYy5jIHdhdGNoLWxvYy1kdy5TCisKKyMgTWFr ZSBzb21lIERXQVJGIGZvciB0aGUgdGVzdC4KK3NldCBhc21fZmlsZSBbc3Rh bmRhcmRfb3V0cHV0X2ZpbGUgJHNyY2ZpbGUyXQorRHdhcmY6OmFzc2VtYmxl ICRhc21fZmlsZSB7CisgICAgY3Uge30geworCWNvbXBpbGVfdW5pdCB7CisJ ICAgIHtsYW5ndWFnZSBARFdfTEFOR19EfQorCX0geworCSAgICBkZWNsYXJl X2xhYmVscyB3YXRjaF9tb2R1bGVfbGFiZWwgd2F0Y2hfc3RydWN0X2xhYmVs CisKKwkgICAgZXh0ZXJuIGRtYWluX3N0YXJ0IGRtYWluX2VuZAorCisJICAg IHdhdGNoX21vZHVsZV9sYWJlbDogbW9kdWxlIHsKKwkJe25hbWUgd2F0Y2h9 CisJICAgIH0geworCQl3YXRjaF9zdHJ1Y3RfbGFiZWw6IHN0cnVjdHVyZV90 eXBlIHsKKwkJICAgIHtuYW1lIHRzdHJ1Y3R9CisJCSAgICB7Ynl0ZV9zaXpl IDEgZGF0YTF9CisJCX0KKworCQl0YWdfdmFyaWFibGUgeworCQkgICAge25h bWUgbXlfZGF0YX0KKwkJICAgIHt0eXBlIDokd2F0Y2hfc3RydWN0X2xhYmVs fQorCQkgICAge2xvY2F0aW9uIHsKKwkJCWFkZHIgW2dkYl90YXJnZXRfc3lt Ym9sIG15X2RhdGFdCisJCSAgICB9IFNQRUNJQUxfZXhwcn0KKwkJICAgIHtl eHRlcm5hbCAxIGZsYWd9CisJCX0KKworCQlzdWJwcm9ncmFtIHsKKwkJICAg IHtuYW1lICJEIG1haW4ifQorCQkgICAge2xpbmthZ2VfbmFtZSAiX0RtYWlu In0KKwkJICAgIHtleHRlcm5hbCAxIGZsYWdfcHJlc2VudH0KKwkJICAgIHts b3dfcGMgZG1haW5fc3RhcnQgYWRkcn0KKwkJICAgIHtoaWdoX3BjIGRtYWlu X2VuZCBhZGRyfQorCQl9CisJICAgIH0KKwl9CisgICAgfQorfQorCitpZiB7 IFtwcmVwYXJlX2Zvcl90ZXN0aW5nICJmYWlsZWQgdG8gcHJlcGFyZSIgJHt0 ZXN0ZmlsZX0gXAorICAgICAgICAgIFtsaXN0ICRzcmNmaWxlICRhc21fZmls ZV0ge25vZGVidWd9XSB9IHsKKyAgICByZXR1cm4gLTEKK30KKworZ2RiX3Rl c3Rfbm9fb3V0cHV0ICJzZXQgbGFuZ3VhZ2UgZCIKKworaWYgeyFbcnVudG8g Il9EbWFpbiJdfSB7CisgICAgcmV0dXJuIC0xCit9CisKKyMgd2F0Y2ggLWwg d2lsbCByZXdyaXRlIHRoZSBleHByZXNzaW9uIHRvICIqKHdhdGNoLnRzdHJ1 Y3QgKikgMHgxMjM0NSIsCisjIHRoaXMgc2hvdWxkIG5vdCBjYXVzZSBzeW50 YXggZXJyb3IgaW4gdGhlIGNhc3QgZXhwcmVzc2lvbi4KK2dkYl90ZXN0ICJ3 YXRjaCAtbCBteV9kYXRhIiAiLiphdGNocG9pbnQgXFswLTlcXSs6IC1sb2Nh dGlvbiBteV9kYXRhIgorCisjIFNhbWUgdGVzdCBhcyBhYm92ZSwgYnV0IGRv bmUgZXhwbGljaXRseS4KK2dkYl90ZXN0ICJwcmludCAqKHdhdGNoLnRzdHJ1 Y3QgKikgJm15X2RhdGEiICJ7PE5vIGRhdGEgZmllbGRzPn0iCg== --f403045ee778713f400549ef0169--