From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12097 invoked by alias); 2 Mar 2017 18:11:07 -0000 Mailing-List: contact libstdc++-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libstdc++-owner@gcc.gnu.org Received: (qmail 11985 invoked by uid 89); 2 Mar 2017 18:11:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-10.5 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GIT_PATCH_3,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD,T_FILL_THIS_FORM_SHORT autolearn=ham version=3.3.2 spammy=ships, H*F:D*hr, paperwork, 13125 X-HELO: mail.fer.hr Received: from mail5.fer.hr (HELO mail.fer.hr) (161.53.72.235) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 02 Mar 2017 18:10:59 +0000 Received: from POSTAR.fer.hr (2001:b68:16:250::72:237) by MAIL5.fer.hr (2001:b68:16:250::72:235) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 2 Mar 2017 19:10:55 +0100 Received: from mail-wm0-f47.google.com (74.125.82.47) by POSTAR.fer.hr (161.53.72.237) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 2 Mar 2017 19:10:55 +0100 Received: by mail-wm0-f47.google.com with SMTP id n11so32470681wma.0 for ; Thu, 02 Mar 2017 10:10:55 -0800 (PST) X-Gm-Message-State: AMke39kwDvlr0DSrVoMsxqV3fyNduldXczxID7T4YRuQuC2LUqw5gK2CVEdPlK7QB0S7f4wwZH8Zz/YAxaGvnA== X-Received: by 10.28.37.195 with SMTP id l186mr9113968wml.73.1488478254795; Thu, 02 Mar 2017 10:10:54 -0800 (PST) MIME-Version: 1.0 Received: by 10.28.224.139 with HTTP; Thu, 2 Mar 2017 10:10:13 -0800 (PST) In-Reply-To: <4c6aef27483e44dc9aa409dace8490c8@MAIL.fer.hr> References: <308301db772b4f7c95404d69db52baff@MAIL.fer.hr> <4c6aef27483e44dc9aa409dace8490c8@MAIL.fer.hr> From: =?UTF-8?B?SnVyYWogT3LFoXVsacSH?= Date: Thu, 02 Mar 2017 18:11:00 -0000 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Smart pointer pretty printers To: Jonathan Wakely CC: "libstdc++@gcc.gnu.org" Content-Type: multipart/mixed; boundary="001a114e3700a25e200549c3592a" X-SW-Source: 2017-03/txt/msg00010.txt.bz2 --001a114e3700a25e200549c3592a Content-Type: text/plain; charset="UTF-8" Content-length: 1139 On Fri, Feb 24, 2017 at 5:36 PM, Jonathan Wakely wrote: > For a patch this size we do, so I'm not going to look at your patch. > It will probably be simpler to just do it myself, and not worry about > paperwork. > > If you want to contribue in future then please do complete the > necessary paperwork anyway: > https://gcc.gnu.org/onlinedocs/libstdc++/manual/appendix_contributing.html#contrib.list Hi Jonathan, I have completed the assignment. I am resubmitting the patch from the last time, this time as an attachment (since the previous was broken by newlines). As before, there are two versions of the patch: the one that I obtained by editing printers.py on Ubuntu 16.04, which ships with gcc 5.4.0; and the other, for the current printers.py from the gcc repo (I assume it's gcc 6?), which needs a slightly different patch because the unique_ptr printer has significantly changed. I have been using the gcc 5 patch without problems. I have not tested the gcc 6 patch, but since it is very similar, I don't expect any problems. Let me know if you want me to expand this for other iterators. Regards, Juraj --001a114e3700a25e200549c3592a Content-Type: text/x-patch; charset="US-ASCII"; name="printers_py_gcc5.patch" Content-Disposition: attachment; filename="printers_py_gcc5.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_izsp2vwg0 Content-length: 2855 LS0tIHByaW50ZXJzLnB5CisrKyBwcmludGVycy5weQpAQCAtMTA2LDYgKzEw NiwxMCBAQCBjbGFzcyBTaGFyZWRQb2ludGVyUHJpbnRlcjoKICAgICBkZWYg X19pbml0X18gKHNlbGYsIHR5cGVuYW1lLCB2YWwpOgogICAgICAgICBzZWxm LnR5cGVuYW1lID0gdHlwZW5hbWUKICAgICAgICAgc2VsZi52YWwgPSB2YWwK KyAgICAgICAgc2VsZi5wb2ludGVyID0gdmFsWydfTV9wdHInXQorCisgICAg ZGVmIGNoaWxkcmVuIChzZWxmKToKKyAgICAgICAgcmV0dXJuIFsoJ2dldCgp Jywgc2VsZi5wb2ludGVyKV0KIAogICAgIGRlZiB0b19zdHJpbmcgKHNlbGYp OgogICAgICAgICBzdGF0ZSA9ICdlbXB0eScKQEAgLTExNiwyMCArMTIwLDIy IEBAIGNsYXNzIFNoYXJlZFBvaW50ZXJQcmludGVyOgogICAgICAgICAgICAg aWYgdXNlY291bnQgPT0gMDoKICAgICAgICAgICAgICAgICBzdGF0ZSA9ICdl eHBpcmVkLCB3ZWFrICVkJyAlIHdlYWtjb3VudAogICAgICAgICAgICAgZWxz ZToKLSAgICAgICAgICAgICAgICBzdGF0ZSA9ICdjb3VudCAlZCwgd2VhayAl ZCcgJSAodXNlY291bnQsIHdlYWtjb3VudCAtIDEpCi0gICAgICAgIHJldHVy biAnJXMgKCVzKSAlcycgJSAoc2VsZi50eXBlbmFtZSwgc3RhdGUsIHNlbGYu dmFsWydfTV9wdHInXSkKKyAgICAgICAgICAgICAgICBzdGF0ZSA9ICd1c2Ug Y291bnQgPSAlZCwgd2VhayBjb3VudCA9ICVkJyAlICh1c2Vjb3VudCwgd2Vh a2NvdW50IC0gMSkKKyAgICAgICAgcmV0dXJuICclczwlcz4gKCVzKScgJSAo c2VsZi50eXBlbmFtZSwgc3RyKHNlbGYucG9pbnRlci50eXBlLnRhcmdldCgp KSwgc3RhdGUpCiAKIGNsYXNzIFVuaXF1ZVBvaW50ZXJQcmludGVyOgogICAg ICJQcmludCBhIHVuaXF1ZV9wdHIiCiAKICAgICBkZWYgX19pbml0X18gKHNl bGYsIHR5cGVuYW1lLCB2YWwpOgogICAgICAgICBzZWxmLnZhbCA9IHZhbAor ICAgICAgICBzZWxmLnBvaW50ZXIgPSBzZWxmLnZhbFsnX01fdCddWydfTV9o ZWFkX2ltcGwnXQogCi0gICAgZGVmIHRvX3N0cmluZyAoc2VsZik6Ci0gICAg ICAgIHYgPSBzZWxmLnZhbFsnX01fdCddWydfTV9oZWFkX2ltcGwnXQotICAg ICAgICByZXR1cm4gKCdzdGQ6OnVuaXF1ZV9wdHI8JXM+IGNvbnRhaW5pbmcg JXMnICUgKHN0cih2LnR5cGUudGFyZ2V0KCkpLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cih2 KSkpCisgICAgZGVmIGNoaWxkcmVuIChzZWxmKToKKyAgICAgICAgcmV0dXJu IFsoJ2dldCgpJywgc2VsZi5wb2ludGVyKV0KKworICAgIGRlZiB0b19zdHJp bmcgKHNlbGYpOgorICAgICAgICByZXR1cm4gKCdzdGQ6OnVuaXF1ZV9wdHI8 JXM+JyAlIChzdHIoc2VsZi5wb2ludGVyLnR5cGUudGFyZ2V0KCkpKSkKCiBk ZWYgZ2V0X3ZhbHVlX2Zyb21fbGlzdF9ub2RlKG5vZGUpOgogICAgICIiIlJl dHVybnMgdGhlIHZhbHVlIGhlbGQgaW4gYW4gX0xpc3Rfbm9kZTxfVmFsPiIi IgogICAgIHRyeToKQEAgLTMyMiw5ICszMjgsMTcgQEAgY2xhc3MgU3RkVmVj dG9ySXRlcmF0b3JQcmludGVyOgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYs IHR5cGVuYW1lLCB2YWwpOgogICAgICAgICBzZWxmLnZhbCA9IHZhbAorICAg ICAgICBzZWxmLnBvaW50ZXIgPSBzZWxmLnZhbFsnX01fY3VycmVudCddCisK KyAgICBkZWYgY2hpbGRyZW4oc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxm LnBvaW50ZXI6CisgICAgICAgICAgICByZXR1cm4gW10KKyAgICAgICAgcmV0 dXJuIFsoJ29wZXJhdG9yLT4oKScsIHNlbGYucG9pbnRlcildCiAKICAgICBk ZWYgdG9fc3RyaW5nKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi52YWxb J19NX2N1cnJlbnQnXS5kZXJlZmVyZW5jZSgpCisgICAgICAgIGlmIG5vdCBz ZWxmLnBvaW50ZXI6CisgICAgICAgICAgICAgcmV0dXJuICdub24tZGVyZWZl cmVuY2VhYmxlIGl0ZXJhdG9yIGZvciBzdGQ6OnZlY3RvcicKKyAgICAgICAg cmV0dXJuICgnc3RkOjp2ZWN0b3I8JXM+OjppdGVyYXRvcicgJSAoc3RyKHNl bGYucG9pbnRlci50eXBlLnRhcmdldCgpKSkpCiAKIGNsYXNzIFN0ZFR1cGxl UHJpbnRlcjoKICAgICAiUHJpbnQgYSBzdGQ6OnR1cGxlIgo= --001a114e3700a25e200549c3592a Content-Type: text/x-patch; charset="US-ASCII"; name="printers_py_gcc6.patch" Content-Disposition: attachment; filename="printers_py_gcc6.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_izsp2vwz1 Content-length: 3599 LS0tIHByaW50ZXJzLnB5CisrKyBwcmludGVycy5weQpAQCAtMTIxLDYgKzEy MSwxMCBAQCBjbGFzcyBTaGFyZWRQb2ludGVyUHJpbnRlcjoKICAgICBkZWYg X19pbml0X18gKHNlbGYsIHR5cGVuYW1lLCB2YWwpOgogICAgICAgICBzZWxm LnR5cGVuYW1lID0gc3RyaXBfdmVyc2lvbmVkX25hbWVzcGFjZSh0eXBlbmFt ZSkKICAgICAgICAgc2VsZi52YWwgPSB2YWwKKyAgICAgICAgc2VsZi5wb2lu dGVyID0gdmFsWydfTV9wdHInXQorCisgICAgZGVmIGNoaWxkcmVuIChzZWxm KToKKyAgICAgICAgcmV0dXJuIFsoJ2dldCgpJywgc2VsZi5wb2ludGVyKV0K IAogICAgIGRlZiB0b19zdHJpbmcgKHNlbGYpOgogICAgICAgICBzdGF0ZSA9 ICdlbXB0eScKQEAgLTEzMSwyNSArMTM1LDI3IEBAIGNsYXNzIFNoYXJlZFBv aW50ZXJQcmludGVyOgogICAgICAgICAgICAgaWYgdXNlY291bnQgPT0gMDoK ICAgICAgICAgICAgICAgICBzdGF0ZSA9ICdleHBpcmVkLCB3ZWFrICVkJyAl IHdlYWtjb3VudAogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAg ICBzdGF0ZSA9ICdjb3VudCAlZCwgd2VhayAlZCcgJSAodXNlY291bnQsIHdl YWtjb3VudCAtIDEpCi0gICAgICAgIHJldHVybiAnJXMgKCVzKSAlcycgJSAo c2VsZi50eXBlbmFtZSwgc3RhdGUsIHNlbGYudmFsWydfTV9wdHInXSkKKyAg ICAgICAgICAgICAgICBzdGF0ZSA9ICd1c2UgY291bnQgPSAlZCwgd2VhayBj b3VudCA9ICVkJyAlICh1c2Vjb3VudCwgd2Vha2NvdW50IC0gMSkKKyAgICAg ICAgcmV0dXJuICclczwlcz4gKCVzKScgJSAoc2VsZi50eXBlbmFtZSwgc3Ry KHNlbGYucG9pbnRlci50eXBlLnRhcmdldCgpKSwgc3RhdGUpCiAKIGNsYXNz IFVuaXF1ZVBvaW50ZXJQcmludGVyOgogICAgICJQcmludCBhIHVuaXF1ZV9w dHIiCiAKICAgICBkZWYgX19pbml0X18gKHNlbGYsIHR5cGVuYW1lLCB2YWwp OgogICAgICAgICBzZWxmLnZhbCA9IHZhbAotCi0gICAgZGVmIHRvX3N0cmlu ZyAoc2VsZik6CiAgICAgICAgIGltcGxfdHlwZSA9IHNlbGYudmFsLnR5cGUu ZmllbGRzKClbMF0udHlwZS50YWcKICAgICAgICAgaWYgaXNfc3BlY2lhbGl6 YXRpb25fb2YoaW1wbF90eXBlLCAnX191bmlxX3B0cl9pbXBsJyk6ICMgTmV3 IGltcGxlbWVudGF0aW9uCi0gICAgICAgICAgICB2ID0gc2VsZi52YWxbJ19N X3QnXVsnX01fdCddWydfTV9oZWFkX2ltcGwnXQorICAgICAgICAgICAgc2Vs Zi5wb2ludGVyID0gc2VsZi52YWxbJ19NX3QnXVsnX01fdCddWydfTV9oZWFk X2ltcGwnXQogICAgICAgICBlbGlmIGlzX3NwZWNpYWxpemF0aW9uX29mKGlt cGxfdHlwZSwgJ3R1cGxlJyk6Ci0gICAgICAgICAgICB2ID0gc2VsZi52YWxb J19NX3QnXVsnX01faGVhZF9pbXBsJ10KKyAgICAgICAgICAgIHNlbGYucG9p bnRlciA9IHNlbGYudmFsWydfTV90J11bJ19NX2hlYWRfaW1wbCddCiAgICAg ICAgIGVsc2U6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJVbnN1 cHBvcnRlZCBpbXBsZW1lbnRhdGlvbiBmb3IgdW5pcXVlX3B0cjogJXMiICUg c2VsZi52YWwudHlwZS5maWVsZHMoKVswXS50eXBlLnRhZykKLSAgICAgICAg cmV0dXJuICdzdGQ6OnVuaXF1ZV9wdHI8JXM+IGNvbnRhaW5pbmcgJXMnICUg KHN0cih2LnR5cGUudGFyZ2V0KCkpLAotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyKHYpKQorCisg ICAgZGVmIGNoaWxkcmVuIChzZWxmKToKKyAgICAgICAgcmV0dXJuIFsoJ2dl dCgpJywgc2VsZi5wb2ludGVyKV0KKworICAgIGRlZiB0b19zdHJpbmcgKHNl bGYpOgorICAgICAgICByZXR1cm4gKCdzdGQ6OnVuaXF1ZV9wdHI8JXM+JyAl IChzdHIoc2VsZi5wb2ludGVyLnR5cGUudGFyZ2V0KCkpKSkKIAogZGVmIGdl dF92YWx1ZV9mcm9tX2FsaWduZWRfbWVtYnVmKGJ1ZiwgdmFsdHlwZSk6CiAg ICAgIiIiUmV0dXJucyB0aGUgdmFsdWUgaGVsZCBpbiBhIF9fZ251X2N4eDo6 X19hbGlnbmVkX21lbWJ1Zi4iIiIKQEAgLTM1MCwxMSArMzU2LDE3IEBAIGNs YXNzIFN0ZFZlY3Rvckl0ZXJhdG9yUHJpbnRlcjoKIAogICAgIGRlZiBfX2lu aXRfXyhzZWxmLCB0eXBlbmFtZSwgdmFsKToKICAgICAgICAgc2VsZi52YWwg PSB2YWwKKyAgICAgICAgc2VsZi5wb2ludGVyID0gc2VsZi52YWxbJ19NX2N1 cnJlbnQnXQorCisgICAgZGVmIGNoaWxkcmVuKHNlbGYpOgorICAgICAgICBp ZiBub3Qgc2VsZi5wb2ludGVyOgorICAgICAgICAgICAgcmV0dXJuIFtdCisg ICAgICAgIHJldHVybiBbKCdvcGVyYXRvci0+KCknLCBzZWxmLnBvaW50ZXIp XQogCiAgICAgZGVmIHRvX3N0cmluZyhzZWxmKToKLSAgICAgICAgaWYgbm90 IHNlbGYudmFsWydfTV9jdXJyZW50J106CisgICAgICAgIGlmIG5vdCBzZWxm LnBvaW50ZXI6CiAgICAgICAgICAgICByZXR1cm4gJ25vbi1kZXJlZmVyZW5j ZWFibGUgaXRlcmF0b3IgZm9yIHN0ZDo6dmVjdG9yJwotICAgICAgICByZXR1 cm4gc3RyKHNlbGYudmFsWydfTV9jdXJyZW50J10uZGVyZWZlcmVuY2UoKSkK KyAgICAgICAgcmV0dXJuICgnc3RkOjp2ZWN0b3I8JXM+OjppdGVyYXRvcicg JSAoc3RyKHNlbGYucG9pbnRlci50eXBlLnRhcmdldCgpKSkpCiAKIGNsYXNz IFN0ZFR1cGxlUHJpbnRlcjoKICAgICAiUHJpbnQgYSBzdGQ6OnR1cGxlIgo= --001a114e3700a25e200549c3592a--