From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 66523 invoked by alias); 11 Nov 2015 22:06:49 -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 66488 invoked by uid 89); 11 Nov 2015 22:06:48 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-Spam-User: qpsmtpd, 2 recipients X-HELO: mail-yk0-f170.google.com Received: from mail-yk0-f170.google.com (HELO mail-yk0-f170.google.com) (209.85.160.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Wed, 11 Nov 2015 22:06:46 +0000 Received: by ykdr82 with SMTP id r82so73909223ykd.3; Wed, 11 Nov 2015 14:06:44 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.129.83.87 with SMTP id h84mr13855893ywb.156.1447279604054; Wed, 11 Nov 2015 14:06:44 -0800 (PST) Received: by 10.103.112.130 with HTTP; Wed, 11 Nov 2015 14:06:43 -0800 (PST) Date: Wed, 11 Nov 2015 22:06:00 -0000 Message-ID: Subject: [v3 PATCH] Implement D0013R2, logical type traits. From: Ville Voutilainen To: "gcc-patches@gcc.gnu.org" , "libstdc++" Content-Type: multipart/mixed; boundary=001a114d8daeb0e65c05244b0a81 X-SW-Source: 2015-11/txt/msg01427.txt.bz2 --001a114d8daeb0e65c05244b0a81 Content-Type: text/plain; charset=UTF-8 Content-length: 882 Tested on Linux-PPC64. 2015-11-11 Ville Voutilainen Implement D0013R2, logical type traits. /libstdc++-v3 * include/experimental/type_traits (conjunction_v, disjunction_v, negation_v): New. * include/std/type_traits (conjunction, disjunction, negation): Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/experimental/type_traits/value.cc: Likewise. * testsuite/20_util/logical_traits/requirements/explicit_instantiation.cc: New. * testsuite/20_util/logical_traits/requirements/typedefs.cc: Likewise. * testsuite/20_util/logical_traits/value.cc: Likewise. /testsuite * g++.dg/cpp0x/Wattributes1.C: Adjust. --001a114d8daeb0e65c05244b0a81 Content-Type: text/plain; charset=US-ASCII; name="logical_traits.diff" Content-Disposition: attachment; filename="logical_traits.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igvcvj9v0 Content-length: 16621 ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZysrLmRnL2NwcDB4L1dhdHRy aWJ1dGVzMS5DIGIvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvY3BwMHgvV2F0dHJp YnV0ZXMxLkMKaW5kZXggZDgxODg1MS4uZGQ5MDExYiAxMDA2NDQKLS0tIGEv Z2NjL3Rlc3RzdWl0ZS9nKysuZGcvY3BwMHgvV2F0dHJpYnV0ZXMxLkMKKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvY3BwMHgvV2F0dHJpYnV0ZXMxLkMK QEAgLTUsNCArNSw0IEBACiAjaW5jbHVkZSA8bmV3PgogX19hdHRyaWJ1dGVf XygodmlzaWJpbGl0eSgiaGlkZGVuIikpKXZvaWQqb3BlcmF0b3IgbmV3KHN0 ZDo6c2l6ZV90KTsgLy8geyBkZy13YXJuaW5nICJ2aXNpYmlsaXR5IGF0dHJp YnV0ZSBpZ25vcmVkIiB9CiAKLS8vIHsgZGctbWVzc2FnZSAicHJldmlvdXMg ZGVjbGFyYXRpb24iICIiIHsgdGFyZ2V0ICotKi0qIH0gMTExIH0KKy8vIHsg ZGctbWVzc2FnZSAicHJldmlvdXMgZGVjbGFyYXRpb24iICIiIHsgdGFyZ2V0 ICotKi0qIH0gMTE2IH0KZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My9pbmNs dWRlL2V4cGVyaW1lbnRhbC90eXBlX3RyYWl0cyBiL2xpYnN0ZGMrKy12My9p bmNsdWRlL2V4cGVyaW1lbnRhbC90eXBlX3RyYWl0cwppbmRleCBiMGVkM2Iw Li5iN2YzYmRhIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvaW5jbHVkZS9l eHBlcmltZW50YWwvdHlwZV90cmFpdHMKKysrIGIvbGlic3RkYysrLXYzL2lu Y2x1ZGUvZXhwZXJpbWVudGFsL3R5cGVfdHJhaXRzCkBAIC0yNzEsNiArMjcx LDI4IEBAIHRlbXBsYXRlPHR5cGVuYW1lIF9UbywgdGVtcGxhdGU8dHlwZW5h bWUuLi4+IGNsYXNzIF9PcCwgdHlwZW5hbWUuLi4gX0FyZ3M+CiAgIGNvbnN0 ZXhwciBib29sIGlzX2RldGVjdGVkX2NvbnZlcnRpYmxlX3YKICAgICA9IGlz X2RldGVjdGVkX2NvbnZlcnRpYmxlPF9UbywgX09wLCBfQXJncy4uLj46OnZh bHVlOwogCisjaWYgX19jcGx1c3BsdXMgPiAyMDE0MDJMCisKKyNkZWZpbmUg X19jcHBfbGliX2V4cGVyaW1lbnRhbF9sb2dpY2FsX3RyYWl0cyAyMDE1MTEK KwordXNpbmcgc3RkOjpjb25qdW5jdGlvbjsKK3VzaW5nIHN0ZDo6ZGlzanVu Y3Rpb247Cit1c2luZyBzdGQ6Om5lZ2F0aW9uOworCit0ZW1wbGF0ZTx0eXBl bmFtZS4uLiBfQm4+CisgIGNvbnN0ZXhwciBib29sIGNvbmp1bmN0aW9uX3YK KyAgICA9IGNvbmp1bmN0aW9uPF9Cbi4uLj46OnZhbHVlOworCit0ZW1wbGF0 ZTx0eXBlbmFtZS4uLiBfQm4+CisgIGNvbnN0ZXhwciBib29sIGRpc2p1bmN0 aW9uX3YKKyAgICA9IGRpc2p1bmN0aW9uPF9Cbi4uLj46OnZhbHVlOworCit0 ZW1wbGF0ZTx0eXBlbmFtZSBfUHA+CisgIGNvbnN0ZXhwciBib29sIG5lZ2F0 aW9uX3YKKyAgICA9IG5lZ2F0aW9uPF9QcD46OnZhbHVlOworCisjZW5kaWYK KwogX0dMSUJDWFhfRU5EX05BTUVTUEFDRV9WRVJTSU9OCiB9IC8vIG5hbWVz cGFjZSBmdW5kYW1lbnRhbHNfdjIKIH0gLy8gbmFtZXNwYWNlIGV4cGVyaW1l bnRhbApkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL2luY2x1ZGUvc3RkL3R5 cGVfdHJhaXRzIGIvbGlic3RkYysrLXYzL2luY2x1ZGUvc3RkL3R5cGVfdHJh aXRzCmluZGV4IDc0NDhkNWIuLmU1MTAyZGUgMTAwNjQ0Ci0tLSBhL2xpYnN0 ZGMrKy12My9pbmNsdWRlL3N0ZC90eXBlX3RyYWl0cworKysgYi9saWJzdGRj KystdjMvaW5jbHVkZS9zdGQvdHlwZV90cmFpdHMKQEAgLTE1NCw2ICsxNTQs MjYgQEAgX0dMSUJDWFhfQkVHSU5fTkFNRVNQQUNFX1ZFUlNJT04KICAgICA6 IHB1YmxpYyBpbnRlZ3JhbF9jb25zdGFudDxib29sLCAhX1BwOjp2YWx1ZT4K ICAgICB7IH07CiAKKyNpZiBfX2NwbHVzcGx1cyA+IDIwMTQwMkwKKworI2Rl ZmluZSBfX2NwcF9saWJfbG9naWNhbF90cmFpdHMgMjAxNTExCisKKyAgdGVt cGxhdGU8dHlwZW5hbWUuLi4gX0JuPgorICAgIHN0cnVjdCBjb25qdW5jdGlv bgorICAgIDogX19hbmRfPF9Cbi4uLj4KKyAgICB7IH07CisKKyAgdGVtcGxh dGU8dHlwZW5hbWUuLi4gX0JuPgorICAgIHN0cnVjdCBkaXNqdW5jdGlvbgor ICAgIDogX19vcl88X0JuLi4uPgorICAgIHsgfTsKKworICB0ZW1wbGF0ZTx0 eXBlbmFtZSBfUHA+CisgICAgc3RydWN0IG5lZ2F0aW9uCisgICAgOiBfX25v dF88X1BwPgorICAgIHsgfTsKKyNlbmRpZgorCiAgIC8vIEZvciBzZXZlcmFs IHNmaW5hZS1mcmllbmRseSB0cmFpdCBpbXBsZW1lbnRhdGlvbnMgd2UgdHJh bnNwb3J0IGJvdGggdGhlCiAgIC8vIHJlc3VsdCBpbmZvcm1hdGlvbiAoYXMg dGhlIG1lbWJlciB0eXBlKSBhbmQgdGhlIGZhaWx1cmUgaW5mb3JtYXRpb24g KG5vCiAgIC8vIG1lbWJlciB0eXBlKS4gVGhpcyBpcyB2ZXJ5IHNpbWlsYXIg dG8gc3RkOjplbmFibGVfaWYsIGJ1dCB3ZSBjYW5ub3QgdXNlCmRpZmYgLS1n aXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwvZGVjbHZhbC9y ZXF1aXJlbWVudHMvMV9uZWcuY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRl LzIwX3V0aWwvZGVjbHZhbC9yZXF1aXJlbWVudHMvMV9uZWcuY2MKaW5kZXgg NGU3ZGVkYS4uMzdiYzZiMSAxMDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL3Rl c3RzdWl0ZS8yMF91dGlsL2RlY2x2YWwvcmVxdWlyZW1lbnRzLzFfbmVnLmNj CisrKyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjBfdXRpbC9kZWNsdmFs L3JlcXVpcmVtZW50cy8xX25lZy5jYwpAQCAtMTksNyArMTksNyBAQAogLy8g d2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HMy4gIElm IG5vdCBzZWUKIC8vIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4K IAotLy8geyBkZy1lcnJvciAic3RhdGljIGFzc2VydGlvbiBmYWlsZWQiICIi IHsgdGFyZ2V0ICotKi0qIH0gMjIzOSB9CisvLyB7IGRnLWVycm9yICJzdGF0 aWMgYXNzZXJ0aW9uIGZhaWxlZCIgIiIgeyB0YXJnZXQgKi0qLSogfSAyMjU5 IH0KIAogI2luY2x1ZGUgPHV0aWxpdHk+CiAKZGlmZiAtLWdpdCBhL2xpYnN0 ZGMrKy12My90ZXN0c3VpdGUvMjBfdXRpbC9sb2dpY2FsX3RyYWl0cy9yZXF1 aXJlbWVudHMvZXhwbGljaXRfaW5zdGFudGlhdGlvbi5jYyBiL2xpYnN0ZGMr Ky12My90ZXN0c3VpdGUvMjBfdXRpbC9sb2dpY2FsX3RyYWl0cy9yZXF1aXJl bWVudHMvZXhwbGljaXRfaW5zdGFudGlhdGlvbi5jYwpuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMmI2YzcxCi0tLSAvZGV2L251bGwK KysrIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMF91dGlsL2xvZ2ljYWxf dHJhaXRzL3JlcXVpcmVtZW50cy9leHBsaWNpdF9pbnN0YW50aWF0aW9uLmNj CkBAIC0wLDAgKzEsMzAgQEAKKy8vIHsgZGctb3B0aW9ucyAiLXN0ZD1nbnUr KzE3IiB9CisvLyB7IGRnLWRvIGNvbXBpbGUgfQorCisvLyBDb3B5cmlnaHQg KEMpIDIwMTUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisvLwor Ly8gVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEdOVSBJU08gQysrIExpYnJh cnkuICBUaGlzIGxpYnJhcnkgaXMgZnJlZQorLy8gc29mdHdhcmU7IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIgdGhl CisvLyB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5IHRoZQorLy8gRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uOyBlaXRoZXIgdmVyc2lvbiAzLCBvciAoYXQgeW91ciBvcHRpb24pCisv LyBhbnkgbGF0ZXIgdmVyc2lvbi4KKworLy8gVGhpcyBsaWJyYXJ5IGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWws CisvLyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLy8gTUVSQ0hBTlRBQklMSVRZIG9y IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQor Ly8gR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls cy4KKworLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKKy8vIHdpdGgg dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qg c2VlCisvLyA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKKy8v IE5COiBUaGlzIGZpbGUgaXMgZm9yIHRlc3RpbmcgdHlwZV90cmFpdHMgd2l0 aCBOTyBPVEhFUiBJTkNMVURFUy4KKworI2luY2x1ZGUgPHR5cGVfdHJhaXRz PgorCituYW1lc3BhY2Ugc3RkCit7CisgIHRlbXBsYXRlIHN0cnVjdCBjb25q dW5jdGlvbjx0cnVlX3R5cGUsIHRydWVfdHlwZT47CisgIHRlbXBsYXRlIHN0 cnVjdCBkaXNqdW5jdGlvbjxmYWxzZV90eXBlLCB0cnVlX3R5cGU+OworICB0 ZW1wbGF0ZSBzdHJ1Y3QgbmVnYXRpb248ZmFsc2VfdHlwZT47Cit9CmRpZmYg LS1naXQgYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwvbG9naWNh bF90cmFpdHMvcmVxdWlyZW1lbnRzL3R5cGVkZWZzLmNjIGIvbGlic3RkYysr LXYzL3Rlc3RzdWl0ZS8yMF91dGlsL2xvZ2ljYWxfdHJhaXRzL3JlcXVpcmVt ZW50cy90eXBlZGVmcy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5lYTEwMmY4Ci0tLSAvZGV2L251bGwKKysrIGIvbGlic3RkYysr LXYzL3Rlc3RzdWl0ZS8yMF91dGlsL2xvZ2ljYWxfdHJhaXRzL3JlcXVpcmVt ZW50cy90eXBlZGVmcy5jYwpAQCAtMCwwICsxLDU1IEBACisvLyB7IGRnLW9w dGlvbnMgIi1zdGQ9Z251KysxNyIgfQorLy8KKy8vIENvcHlyaWdodCAoQykg MjAxNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKy8vCisvLyBU aGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIElTTyBDKysgTGlicmFyeS4g IFRoaXMgbGlicmFyeSBpcyBmcmVlCisvLyBzb2Z0d2FyZTsgeW91IGNhbiBy ZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUKKy8v IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkgdGhlCisvLyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDMsIG9yIChhdCB5b3VyIG9wdGlvbikKKy8vIGFu eSBsYXRlciB2ZXJzaW9uLgorLy8KKy8vIFRoaXMgbGlicmFyeSBpcyBkaXN0 cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor Ly8gYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKKy8vIE1FUkNIQU5UQUJJTElUWSBvciBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKy8v IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu CisvLworLy8gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKKy8vIHdpdGgg dGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qg c2VlCisvLyA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKKy8v IAorLy8gTkI6IFRoaXMgZmlsZSBpcyBmb3IgdGVzdGluZyB0eXBlX3RyYWl0 cyB3aXRoIE5PIE9USEVSIElOQ0xVREVTLgorCisjaW5jbHVkZSA8dHlwZV90 cmFpdHM+CisKKy8vIHsgZGctZG8gY29tcGlsZSB9CisKK3ZvaWQgdGVzdDAx KCkKK3sKKyAgLy8gQ2hlY2sgZm9yIHJlcXVpcmVkIHR5cGVkZWZzCisgIHR5 cGVkZWYgc3RkOjpjb25qdW5jdGlvbjxzdGQ6OnRydWVfdHlwZSwgc3RkOjp0 cnVlX3R5cGU+ICAgICAgdGVzdF90eXBlOworICB0eXBlZGVmIHRlc3RfdHlw ZTo6dmFsdWVfdHlwZSAgICAgICAgICAgICAgIHZhbHVlX3R5cGU7CisgIHR5 cGVkZWYgdGVzdF90eXBlOjp0eXBlICAgICAgICAgICAgICAgICAgICAgdHlw ZTsKKyAgdHlwZWRlZiB0ZXN0X3R5cGU6OnR5cGU6OnZhbHVlX3R5cGUgICAg ICAgICB0eXBlX3ZhbHVlX3R5cGU7CisgIHR5cGVkZWYgdGVzdF90eXBlOjp0 eXBlOjp0eXBlICAgICAgICAgICAgICAgdHlwZV90eXBlOworfQorCit2b2lk IHRlc3QwMigpCit7CisgIC8vIENoZWNrIGZvciByZXF1aXJlZCB0eXBlZGVm cworICB0eXBlZGVmIHN0ZDo6ZGlzanVuY3Rpb248c3RkOjpmYWxzZV90eXBl LCBzdGQ6OnRydWVfdHlwZT4gICAgICB0ZXN0X3R5cGU7CisgIHR5cGVkZWYg dGVzdF90eXBlOjp2YWx1ZV90eXBlICAgICAgICAgICAgICAgdmFsdWVfdHlw ZTsKKyAgdHlwZWRlZiB0ZXN0X3R5cGU6OnR5cGUgICAgICAgICAgICAgICAg ICAgICB0eXBlOworICB0eXBlZGVmIHRlc3RfdHlwZTo6dHlwZTo6dmFsdWVf dHlwZSAgICAgICAgIHR5cGVfdmFsdWVfdHlwZTsKKyAgdHlwZWRlZiB0ZXN0 X3R5cGU6OnR5cGU6OnR5cGUgICAgICAgICAgICAgICB0eXBlX3R5cGU7Cit9 CisKK3ZvaWQgdGVzdDAzKCkKK3sKKyAgLy8gQ2hlY2sgZm9yIHJlcXVpcmVk IHR5cGVkZWZzCisgIHR5cGVkZWYgc3RkOjpuZWdhdGlvbjxzdGQ6OmZhbHNl X3R5cGU+ICAgICAgdGVzdF90eXBlOworICB0eXBlZGVmIHRlc3RfdHlwZTo6 dmFsdWVfdHlwZSAgICAgICAgICAgICAgIHZhbHVlX3R5cGU7CisgIHR5cGVk ZWYgdGVzdF90eXBlOjp0eXBlICAgICAgICAgICAgICAgICAgICAgdHlwZTsK KyAgdHlwZWRlZiB0ZXN0X3R5cGU6OnR5cGU6OnZhbHVlX3R5cGUgICAgICAg ICB0eXBlX3ZhbHVlX3R5cGU7CisgIHR5cGVkZWYgdGVzdF90eXBlOjp0eXBl Ojp0eXBlICAgICAgICAgICAgICAgdHlwZV90eXBlOworfQpkaWZmIC0tZ2l0 IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMF91dGlsL2xvZ2ljYWxfdHJh aXRzL3ZhbHVlLmNjIGIvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMF91dGls L2xvZ2ljYWxfdHJhaXRzL3ZhbHVlLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAuLjFkYTk1YTMKLS0tIC9kZXYvbnVsbAorKysgYi9s aWJzdGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwvbG9naWNhbF90cmFpdHMv dmFsdWUuY2MKQEAgLTAsMCArMSw0NSBAQAorLy8geyBkZy1vcHRpb25zICIt c3RkPWdudSsrMTciIH0KKy8vIHsgZGctZG8gY29tcGlsZSB9CisvLworLy8g Q29weXJpZ2h0IChDKSAyMDE1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwg SW5jLgorLy8KKy8vIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBHTlUgSVNP IEMrKyBMaWJyYXJ5LiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUKKy8vIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0 IHVuZGVyIHRoZQorLy8gdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUKKy8vIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMywgb3IgKGF0IHlvdXIg b3B0aW9uKQorLy8gYW55IGxhdGVyIHZlcnNpb24uCisvLworLy8gVGhpcyBs aWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsCisvLyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLy8gTUVSQ0hB TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQorLy8gR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4KKy8vCisvLyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2 ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh bG9uZworLy8gd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZ SU5HMy4gIElmIG5vdCBzZWUKKy8vIDxodHRwOi8vd3d3LmdudS5vcmcvbGlj ZW5zZXMvPi4KKworI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgorCit2b2lkIHRl c3QwMSgpCit7CisgIHN0YXRpY19hc3NlcnQoc3RkOjpuZWdhdGlvbjxzdGQ6 OmZhbHNlX3R5cGU+e30pOworICBzdGF0aWNfYXNzZXJ0KCFzdGQ6Om5lZ2F0 aW9uPHN0ZDo6dHJ1ZV90eXBlPnt9KTsKKyAgc3RhdGljX2Fzc2VydChzdGQ6 OmNvbmp1bmN0aW9uPD57fSk7CisgIHN0YXRpY19hc3NlcnQoIXN0ZDo6ZGlz anVuY3Rpb248Pnt9KTsKKyAgc3RhdGljX2Fzc2VydChzdGQ6OmNvbmp1bmN0 aW9uPHN0ZDo6dHJ1ZV90eXBlPnt9KTsKKyAgc3RhdGljX2Fzc2VydCghc3Rk Ojpjb25qdW5jdGlvbjxzdGQ6OmZhbHNlX3R5cGU+e30pOworICBzdGF0aWNf YXNzZXJ0KHN0ZDo6ZGlzanVuY3Rpb248c3RkOjp0cnVlX3R5cGU+e30pOwor ICBzdGF0aWNfYXNzZXJ0KCFzdGQ6OmRpc2p1bmN0aW9uPHN0ZDo6ZmFsc2Vf dHlwZT57fSk7CisgIHN0YXRpY19hc3NlcnQoc3RkOjpjb25qdW5jdGlvbjxz dGQ6OnRydWVfdHlwZSwgc3RkOjp0cnVlX3R5cGU+e30pOworICBzdGF0aWNf YXNzZXJ0KCFzdGQ6OmNvbmp1bmN0aW9uPHN0ZDo6dHJ1ZV90eXBlLCBzdGQ6 OmZhbHNlX3R5cGU+e30pOworICBzdGF0aWNfYXNzZXJ0KHN0ZDo6ZGlzanVu Y3Rpb248c3RkOjpmYWxzZV90eXBlLCBzdGQ6OnRydWVfdHlwZT57fSk7Cisg IHN0YXRpY19hc3NlcnQoIXN0ZDo6ZGlzanVuY3Rpb248c3RkOjpmYWxzZV90 eXBlLCBzdGQ6OmZhbHNlX3R5cGU+e30pOworICBzdGF0aWNfYXNzZXJ0KHN0 ZDo6Y29uanVuY3Rpb248c3RkOjp0cnVlX3R5cGUsIHN0ZDo6dHJ1ZV90eXBl LAorICAgICAgICAgICAgICAgIHN0ZDo6dHJ1ZV90eXBlPnt9KTsKKyAgc3Rh dGljX2Fzc2VydCghc3RkOjpjb25qdW5jdGlvbjxzdGQ6OnRydWVfdHlwZSwg c3RkOjp0cnVlX3R5cGUsCisgICAgICAgICAgICAgICAgc3RkOjpmYWxzZV90 eXBlPnt9KTsKKyAgc3RhdGljX2Fzc2VydChzdGQ6OmRpc2p1bmN0aW9uPHN0 ZDo6ZmFsc2VfdHlwZSwgc3RkOjpmYWxzZV90eXBlLAorICAgICAgICAgICAg ICAgIHN0ZDo6dHJ1ZV90eXBlPnt9KTsKKyAgc3RhdGljX2Fzc2VydCghc3Rk OjpkaXNqdW5jdGlvbjxzdGQ6OmZhbHNlX3R5cGUsIHN0ZDo6ZmFsc2VfdHlw ZSwKKyAgICAgICAgICAgICAgICBzdGQ6OmZhbHNlX3R5cGU+e30pOworfQpk aWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Rlc3RzdWl0ZS8yMF91dGlsL21h a2Vfc2lnbmVkL3JlcXVpcmVtZW50cy90eXBlZGVmc19uZWcuY2MgYi9saWJz dGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwvbWFrZV9zaWduZWQvcmVxdWly ZW1lbnRzL3R5cGVkZWZzX25lZy5jYwppbmRleCA4ZTVmZTUzLi45ZmJkOTVi IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwv bWFrZV9zaWduZWQvcmVxdWlyZW1lbnRzL3R5cGVkZWZzX25lZy5jYworKysg Yi9saWJzdGRjKystdjMvdGVzdHN1aXRlLzIwX3V0aWwvbWFrZV9zaWduZWQv cmVxdWlyZW1lbnRzL3R5cGVkZWZzX25lZy5jYwpAQCAtNDgsNCArNDgsNCBA QCB2b2lkIHRlc3QwMSgpCiAvLyB7IGRnLWVycm9yICJyZXF1aXJlZCBmcm9t IGhlcmUiICIiIHsgdGFyZ2V0ICotKi0qIH0gNDAgfQogLy8geyBkZy1lcnJv ciAicmVxdWlyZWQgZnJvbSBoZXJlIiAiIiB7IHRhcmdldCAqLSotKiB9IDQy IH0KIAotLy8geyBkZy1lcnJvciAiaW52YWxpZCB1c2Ugb2YgaW5jb21wbGV0 ZSB0eXBlIiAiIiB7IHRhcmdldCAqLSotKiB9IDE5MDQgfQorLy8geyBkZy1l cnJvciAiaW52YWxpZCB1c2Ugb2YgaW5jb21wbGV0ZSB0eXBlIiAiIiB7IHRh cmdldCAqLSotKiB9IDE5MjQgfQpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYz L3Rlc3RzdWl0ZS8yMF91dGlsL21ha2VfdW5zaWduZWQvcmVxdWlyZW1lbnRz L3R5cGVkZWZzX25lZy5jYyBiL2xpYnN0ZGMrKy12My90ZXN0c3VpdGUvMjBf dXRpbC9tYWtlX3Vuc2lnbmVkL3JlcXVpcmVtZW50cy90eXBlZGVmc19uZWcu Y2MKaW5kZXggNGNkMDMxMS4uODA2MGFlZSAxMDA2NDQKLS0tIGEvbGlic3Rk YysrLXYzL3Rlc3RzdWl0ZS8yMF91dGlsL21ha2VfdW5zaWduZWQvcmVxdWly ZW1lbnRzL3R5cGVkZWZzX25lZy5jYworKysgYi9saWJzdGRjKystdjMvdGVz dHN1aXRlLzIwX3V0aWwvbWFrZV91bnNpZ25lZC9yZXF1aXJlbWVudHMvdHlw ZWRlZnNfbmVnLmNjCkBAIC00OCw1ICs0OCw1IEBAIHZvaWQgdGVzdDAxKCkK IC8vIHsgZGctZXJyb3IgInJlcXVpcmVkIGZyb20gaGVyZSIgIiIgeyB0YXJn ZXQgKi0qLSogfSA0MCB9CiAvLyB7IGRnLWVycm9yICJyZXF1aXJlZCBmcm9t IGhlcmUiICIiIHsgdGFyZ2V0ICotKi0qIH0gNDIgfQogCi0vLyB7IGRnLWVy cm9yICJpbnZhbGlkIHVzZSBvZiBpbmNvbXBsZXRlIHR5cGUiICIiIHsgdGFy Z2V0ICotKi0qIH0gMTgwMCB9Ci0vLyB7IGRnLWVycm9yICJkZWNsYXJhdGlv biBvZiIgIiIgeyB0YXJnZXQgKi0qLSogfSAxNzU3IH0KKy8vIHsgZGctZXJy b3IgImludmFsaWQgdXNlIG9mIGluY29tcGxldGUgdHlwZSIgIiIgeyB0YXJn ZXQgKi0qLSogfSAxODIwIH0KKy8vIHsgZGctZXJyb3IgImRlY2xhcmF0aW9u IG9mIiAiIiB7IHRhcmdldCAqLSotKiB9IDE3NzcgfQpkaWZmIC0tZ2l0IGEv bGlic3RkYysrLXYzL3Rlc3RzdWl0ZS9leHBlcmltZW50YWwvdHlwZV90cmFp dHMvdmFsdWUuY2MgYi9saWJzdGRjKystdjMvdGVzdHN1aXRlL2V4cGVyaW1l bnRhbC90eXBlX3RyYWl0cy92YWx1ZS5jYwppbmRleCBmZWZlNTIzLi40NmVl MmU0IDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvdGVzdHN1aXRlL2V4cGVy aW1lbnRhbC90eXBlX3RyYWl0cy92YWx1ZS5jYworKysgYi9saWJzdGRjKyst djMvdGVzdHN1aXRlL2V4cGVyaW1lbnRhbC90eXBlX3RyYWl0cy92YWx1ZS5j YwpAQCAtMSw0ICsxLDQgQEAKLS8vIHsgZGctb3B0aW9ucyAiLXN0ZD1nbnUr KzE0IiB9CisvLyB7IGRnLW9wdGlvbnMgIi1zdGQ9Z251KysxNyIgfQogLy8g eyBkZy1kbyBjb21waWxlIH0KIAogLy8gQ29weXJpZ2h0IChDKSAyMDE0LTIw MTUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCkBAIC0yMSw3ICsy MSw3IEBACiAjaW5jbHVkZSA8ZXhwZXJpbWVudGFsL3R5cGVfdHJhaXRzPgog CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwotdXNpbmcgbmFtZXNwYWNlIHN0ZDo6 ZXhwZXJpbWVudGFsOwordXNpbmcgbmFtZXNwYWNlIGV4cGVyaW1lbnRhbDsK IAogLy8gVGhlc2UgdGVzdHMgYXJlIHJhdGhlciBzaW1wbGUsIHRoZSBmcm9u dC1lbmQgdGVzdHMgYWxyZWFkeSB0ZXN0CiAvLyB2YXJpYWJsZSB0ZW1wbGF0 ZXMsIGFuZCB0aGUgbGlicmFyeSB0ZXN0cyBmb3IgdGhlIHVuZGVybHlpbmcK QEAgLTMyMiwzICszMjIsMjQgQEAgc3RhdGljX2Fzc2VydChpc19jb252ZXJ0 aWJsZV92PGludCYsIGNvbnN0IGludCY+CiAJICAgICAgJiYgaXNfY29udmVy dGlibGU8aW50JiwgY29uc3QgaW50Jj46OnZhbHVlLCAiIik7CiBzdGF0aWNf YXNzZXJ0KCFpc19jb252ZXJ0aWJsZV92PGNvbnN0IGludCYsIGludCY+CiAJ ICAgICAgJiYgIWlzX2NvbnZlcnRpYmxlPGNvbnN0IGludCYsIGludCY+Ojp2 YWx1ZSwgIiIpOworCitzdGF0aWNfYXNzZXJ0KG5lZ2F0aW9uX3Y8ZmFsc2Vf dHlwZT4pOworc3RhdGljX2Fzc2VydCghbmVnYXRpb25fdjx0cnVlX3R5cGU+ KTsKK3N0YXRpY19hc3NlcnQoY29uanVuY3Rpb25fdjw+KTsKK3N0YXRpY19h c3NlcnQoIWRpc2p1bmN0aW9uX3Y8Pik7CitzdGF0aWNfYXNzZXJ0KGNvbmp1 bmN0aW9uX3Y8dHJ1ZV90eXBlPik7CitzdGF0aWNfYXNzZXJ0KCFjb25qdW5j dGlvbl92PGZhbHNlX3R5cGU+KTsKK3N0YXRpY19hc3NlcnQoZGlzanVuY3Rp b25fdjx0cnVlX3R5cGU+KTsKK3N0YXRpY19hc3NlcnQoIWRpc2p1bmN0aW9u X3Y8ZmFsc2VfdHlwZT4pOworc3RhdGljX2Fzc2VydChjb25qdW5jdGlvbl92 PHRydWVfdHlwZSwgdHJ1ZV90eXBlPik7CitzdGF0aWNfYXNzZXJ0KCFjb25q dW5jdGlvbl92PHRydWVfdHlwZSwgZmFsc2VfdHlwZT4pOworc3RhdGljX2Fz c2VydChkaXNqdW5jdGlvbl92PGZhbHNlX3R5cGUsIHRydWVfdHlwZT4pOwor c3RhdGljX2Fzc2VydCghZGlzanVuY3Rpb25fdjxmYWxzZV90eXBlLCBmYWxz ZV90eXBlPik7CitzdGF0aWNfYXNzZXJ0KGNvbmp1bmN0aW9uX3Y8dHJ1ZV90 eXBlLCB0cnVlX3R5cGUsCisgICAgICAgICAgICAgIHRydWVfdHlwZT4pOwor c3RhdGljX2Fzc2VydCghY29uanVuY3Rpb25fdjx0cnVlX3R5cGUsIHRydWVf dHlwZSwKKyAgICAgICAgICAgICAgZmFsc2VfdHlwZT4pOworc3RhdGljX2Fz c2VydChkaXNqdW5jdGlvbl92PGZhbHNlX3R5cGUsIGZhbHNlX3R5cGUsCisg ICAgICAgICAgICAgIHRydWVfdHlwZT4pOworc3RhdGljX2Fzc2VydCghZGlz anVuY3Rpb25fdjxmYWxzZV90eXBlLCBmYWxzZV90eXBlLAorICAgICAgICAg ICAgICBmYWxzZV90eXBlPik7Cg== --001a114d8daeb0e65c05244b0a81--