From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=3.0 tests=AWL,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 22D171F5AE for ; Fri, 26 Jun 2020 11:05:57 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 8A0FD120A45; Fri, 26 Jun 2020 20:05:24 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id 561C0120A3F for ; Fri, 26 Jun 2020 20:05:21 +0900 (JST) Received: by filterdrecv-p3las1-7754f7d4cc-42stp with SMTP id filterdrecv-p3las1-7754f7d4cc-42stp-19-5EF5D689-32 2020-06-26 11:05:45.326838935 +0000 UTC m=+60727.408523719 Received: from herokuapp.com (unknown) by geopod-ismtpd-2-3 (SG) with ESMTP id nG2wnwI8Qg-QEIAPs7ciIg for ; Fri, 26 Jun 2020 11:05:45.068 +0000 (UTC) Date: Fri, 26 Jun 2020 11:05:45 +0000 (UTC) From: zverok.offline@gmail.com Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 74742 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 16986 X-Redmine-Issue-Author: ko1 X-Redmine-Issue-Assignee: matz X-Redmine-Sender: zverok X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: =?us-ascii?Q?3be0g8093pjUjT94eiCA64csFDBI=2FmHQTWm54P5gda4BE1G+uqdBlpWRirvJBk?= =?us-ascii?Q?LlZWcDp0dXq9qfl6A2JBgQy0=2FrWfWmkMapER1hP?= =?us-ascii?Q?TzIpSPZ49dgNpO=2FXtmHnyzV7eXVi=2Fx7B12BcRZq?= =?us-ascii?Q?YBHdgo1i76m8DzjickBDCcPWb5aElHt2LcSRnMF?= =?us-ascii?Q?BJhX=2FSHcxb8AaGksDF25D0y4Z7JdkoCZrCp27+g?= =?us-ascii?Q?HTxNnF7G0KWNDHihI=3D?= To: ruby-core@ruby-lang.org X-ML-Name: ruby-core X-Mail-Count: 98952 Subject: [ruby-core:98952] [Ruby master Feature#16986] Anonymous Struct literal X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE2OTg2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp Lg0KDQoNCldEWVQgYWJvdXQgaGFsZi1zb2x1dGlvbiAod2l0aG91dCBzeW50YXggY2hhbmdlKT8g DQpFLmcuIGZvciBtZSwgdGhlIHByb2JsZW0gd2l0aCBgU3RydWN0Lm5ldyg6YSwgOmIpLm5ldygx LCAyKWAgaXMgbm90IHRoYXQgaXQgaXMgInRvbyBsb25nIHRvIHdyaXRlIiBidXQganVzdCB0aGF0 IGl0IGlzIGxvb2tzICJoYWNreSIgKGxpa2UsICJ5b3UgYXJlIHVzaW5nIFN0cnVjdCBhZ2FpbnN0 IGl0cyBleHBlY3RhdGlvbnMvYmVzdCBwcmFjdGljZXMiKSwgYW5kIG5vbi1hdG9taWMuDQpTbywg X21heSBiZV8gdGhpcyB3b3VsZCBiZSBlbm91Z2ggZm9yIG1vc3QgY2FzZXM6DQpgYGBydWJ5DQpT dHJ1Y3QuYW5vbnltb3VzKGE6IDEsIGI6IDIpDQojIG1ldGhvZCBuYW1lIGlzIGRlYmF0YWJsZS4N CiMgb3IsIElESywgbWF5YmUganVzdA0KU3RydWN0KGE6IDEsIGI6IDIpDQpgYGANCkFsc28sIEkn ZCBzYXkgdGhhdCBtYXliZSB0aGUgdmFsdWUgcHJvZHVjZWQgdGhpcyB3YXkgc2hvdWxkIGJlIGlt bXV0YWJsZT8gKGFzIGluICMxNjEyMikNCk90aGVyd2lzZSwgb25lIG1pZ2h0IGp1c3QgdXNlIGBP cGVuU3RydWN0YCAoaWYgdGhlIHZhbHVlIGhhcyB0aGUgc2FtZSBhbW91bnQgb2YgbXV0YWJpbGl0 eSBhcyBoYXNoKSwgb3Igbm9ybWFsIGBUeXBlID0gU3RydWN0Lm5ldyg6YSwgOmIpYCAoaWYgdGhl IHN0cnVjdHVyZSBvZiB2YWx1ZSBpcyBmaXhlZCwgYnV0IGNvbnRlbnQgaXMgbXV0YWJsZSDigJQg aXQgbWVhbnMgc3RydWN0dXJlIG9mIHR5cGUgaGFzIHNvbWUgZml4ZWQgc2VtYW50aWMgYW5kIHBy b2JhYmx5IHNob3VsZCBoYXZlIGEgbmFtZSkuDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCkZlYXR1cmUgIzE2OTg2OiBBbm9ueW1vdXMgU3RydWN0IGxpdGVyYWwN Cmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNjk4NiNjaGFuZ2UtODYzMjgNCg0K KiBBdXRob3I6IGtvMSAoS29pY2hpIFNhc2FkYSkNCiogU3RhdHVzOiBPcGVuDQoqIFByaW9yaXR5 OiBOb3JtYWwNCiogQXNzaWduZWU6IG1hdHogKFl1a2loaXJvIE1hdHN1bW90bykNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQWJzdHJhY3QNCg0KSG93IGFib3V0 IHRvIGludHJvZHVjZSBhbm9ueW1vdXMgU3RydWN0IGxpdGVyYWwgc3VjaCBhcyBgJHthOiAxLCBi OiAyfWA/DQpJdCBpcyBhbG1vc3Qgc2FtZSBhcyBgU3RydWN0Lm5ldyg6YSwgOmIpLm5ldygxLCAy KWAuDQoNCiMgUHJvcG9zYWwNCg0KIyMgQmFja2dyb3VuZA0KDQpJbiBtYW55IGNhc2VzLCBwZW9w bGUgdXNlIGhhc2ggb2JqZWN0cyB0byByZXByZXNlbnRzIGEgc2V0IG9mIHZhbHVlcyBzdWNoIGFz IGBwZXJzb24gPSB7bmFtZTogImtvMSIsIGNvdW50cnk6ICdKYXBhbid9YCBhbmQgYWNjZXNzZXMg aXQgd2l0aCBgcGVyc29uWzpuYW1lXWAgYW5kIHNvIG9uLiBJdCBpcyBub3QgZWFzeSB0byB3cml0 ZSAoMyBsZXR0ZXJzIGBbOl1gISksIGFuZCBlYXN5IHRvIGludHJvZHVjZSBtaXNzcGVsbGluZyAo YHBlcnNvbls6bmFtYV1gIGRvZXNuJ3QgcmFpc2UgYW4gZXJyb3IpLg0KSWYgd2UgbWFrZSBhIGBT dHJ1Y3RgIG9iamVjdHMgc3VjaCBhcyBgUGVyc29uID0gU3RydWN0Lm5ldyg6bmFtZSwgOmFnZSlg IGFuZCBgcGVyc29uID0gUGVyc29uLm5ldygna28xJywgJ0phcGFuJylgLCB3ZSBjYW4gYWNjZXNz IGl0IHdpdGggYHBlcnNvbi5uYW1lYCBuYXR1cmFsbHkuDQpIb3dldmVyIG1ha2luZyBuZXcgYFN0 cnVjdGAgaXMgYSBjb3N0IG9mIGNvZGluZy4gU29tZSBjYXNlcyB3ZSBkb24ndCAgd2FudCB0byBu YW1lIChzdWNoIGFzIGBQZXJzb25gKS4NClVzaW5nIGBPcGVuU3RydWN0YCAoYHBlcnNvbiA9IE9w ZW5TdHJ1Y3QubmV3KG5hbWU6ICJrbzEiLCBjb3VudHJ5OiAiSmFwYW4iKWApLCB3ZSBjYW4gYWNj ZXNzIGl0IHdpdGggYHBlcnNvbi5uYW1lYCwgYnV0IHdlIGNhbiBleHRlbmQgdGhlIGZpZWxkcyBh bmQgdGhlIHBlcmZvcm1hbmNlIGlzIG5vdCBnb29kLg0KT2YgY291cnNlLCB3ZSBjYW4gZGVmaW5l IHRoZSBjbGFzcyBgUGVyc29uYCBhbmQgYXR0cl9yZWFkZXJzLiBCdXQgc2V2ZXJhbCBsaW5lcyB3 ZSBuZWVkLg0KDQpUbyBzdW1tYXJpZXMgdGhlIGlzc3VlczoNCg0KKiBFYXN5IHRvIFdyaXRlDQog ICogRG9uJ3QgbmVlZCB0byBkZWNsYXJlIHRoZSBjbGFzcw0KICAqIEFjY2Vzc2libGUgd2l0aCBg cGVyc29uLm5hbWVgIGZvcm1hdA0KKiBMaW1pdGVkIGZpZWxkcw0KKiBCZXR0ZXIgcGVyZm9ybWFu Y2UNCg0KIyMgSWRlYQ0KDQpJbnRyb2R1Y2UgbmV3IHN5bnRheCB0byBtYWtlIGFuIGFub255bW91 cyBTdHJ1Y3QgbGl0ZXJhbCBzdWNoIGFzOiBgJHsgYTogMSwgYjogMiB9YC4NClNpbWlsYXIgdG8g SGFzaCBzeW50YXggKHdpdGggbGFiZWxzKSwgYnV0IGAkYCBwcmVmaXggdG8gcmVjb2duaXplLg0K DQpBbm9ueW1vdXMgc3RydWN0cyB3aGljaCBoYXMgc2FtZSBtZW1iZXIgd2l0aCBzYW1lIG9yZGVy IHNoYXJlIHRoZSBjbGFzcy4NCg0KYGBgcnVieQ0KICAgIHMxID0gJHthOiAxLCBiOiAyLCBjOiAz fQ0KICAgIHMyID0gJHthOiAxLCBiOiAyLCBjOiAzfQ0KICAgIGFzc2VydCBzMSA9PSBzMg0KDQog ICAgczMgPSAke2E6IDEsIGM6IDMsIGI6IDJ9DQogICAgczQgPSAke2Q6IDR9DQoNCiAgICBhc3Nl cnRfZXF1YWwgZmFsc2UsIHMxID09IHMzDQogICAgYXNzZXJ0X2VxdWFsIGZhbHNlLCBzMSA9PSBz NA0KYGBgDQoNCiMjIE5vdGUNCg0KVW5saWtlIEhhc2ggbGl0ZXJhbCBzeW50YXgsIHRoaXMgcHJv cG9zYWwgb25seSBhbGxvd3MgYGxhYmVsOiBleHByYCBub3RhdGlvbi4gTm8gYCR7KipofWAgc3lu dGF4Lg0KVGhpcyBpcyBiZWNhdXNlIGlmIHdlIGFsbG93IHRvIHNwbGF0IGEgSGFzaCwgaXQgY2Fu IGJlIGEgdnVsbmVyYWJpbGl0eSBieSBzcGxhdHRpbmcgb3V0ZXItaW5wdXQgSGFzaC4NCg0KVGhh bmtzIGZvciB0aGlzIHNwZWMsIHdlIGNhbiBzcGVjaWZ5IHRoZSBhbm9ueW1vdXMgU3RydWN0IGNs YXNzIGF0IGNvbXBpbGUgdGltZS4NCldlIGRvbid0IG5lZWQgdG8gZmluZCBvciBjcmVhdGUgU3Ry dWN0IGNsYXNzZXMgYXQgcnVudGltZS4NCg0KIyMgSW1wbGVtZW50YXRhdGlvbg0KDQpodHRwczov L2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvMzI1OQ0KDQojIERpc2N1c3Npb24NCg0KIyMgTm90 YXRpb24NCg0KTWF0eiBzYWlkIGhlIHRob3VnaHQgYWJvdXQgYHt8YTogMSwgYjogMiB8fWAgc3lu dGF4Lg0KDQojIyBQZXJmb3JtYW5jZQ0KDQpTdXJwcmlzaW5nbHksIEhhc2ggaXMgZmFzdCBhbmQg U3RydWN0IGlzIHNsb3cuDQoNCmBgYHJ1YnkNCkJlbmNobWFyay5kcml2ZXIgZG8gfHJ8DQogIHIu cHJlbHVkZSA8PH5QUkVMVURFDQogIHN0ID0gU3RydWN0Lm5ldyg6YSwgOmIpLm5ldygxLCAyKQ0K ICBocyA9IHthOiAxLCBiOiAyfQ0KICBjbGFzcyBDDQogICAgYXR0cl9yZWFkZXIgOmEsIDpiDQog ICAgZGVmIGluaXRpYWxpemUoKSA9IChAYSA9IDE7IEBiID0gMikNCiAgZW5kDQogIG9iID0gQy5u ZXcNCiAgUFJFTFVERQ0KICByLnJlcG9ydCAib2IuYSINCiAgci5yZXBvcnQgImhzWzphXSINCiAg ci5yZXBvcnQgInN0LmEiDQplbmQNCl9fRU5EX18NCldhcm1pbmcgdXAgLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAgICAgICAgICAgICAgICBvYi5hICAgIDM4LjEwME0g aS9zIC0gICAgIDM4LjE0Mk0gdGltZXMgaW4gMS4wMDExMDFzICgyNi4yNW5zL2ksIDc2Y2xvY2tz L2kpDQogICAgICAgICAgICAgIGhzWzphXSAgICAzNy44NDVNIGkvcyAtICAgICAzOC4wMzdNIHRp bWVzIGluIDEuMDA1MDUxcyAoMjYuNDJucy9pLCA3NmNsb2Nrcy9pKQ0KICAgICAgICAgICAgICAg IHN0LmEgICAgMzMuMzQ4TSBpL3MgLSAgICAgMzMuNjEyTSB0aW1lcyBpbiAxLjAwNzkwNHMgKDI5 Ljk5bnMvaSwgODdjbG9ja3MvaSkNCkNhbGN1bGF0aW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCiAgICAgICAgICAgICAgICBvYi5hICAgIDg3LjkxN00gaS9zIC0gICAg MTE0LjMwME0gdGltZXMgaW4gMS4zMDAwODVzICgxMS4zN25zL2ksIDMzY2xvY2tzL2kpDQogICAg ICAgICAgICAgIGhzWzphXSAgICA4NS41MDRNIGkvcyAtICAgIDExMy41MzZNIHRpbWVzIGluIDEu MzI3ODUwcyAoMTEuNzBucy9pLCAzM2Nsb2Nrcy9pKQ0KICAgICAgICAgICAgICAgIHN0LmEgICAg NjEuMzM3TSBpL3MgLSAgICAxMDAuMDQ1TSB0aW1lcyBpbiAxLjYzMTA2NHMgKDE2LjMwbnMvaSwg NDdjbG9ja3MvaSkNCkNvbXBhcmlzb246DQogICAgICAgICAgICAgICAgb2IuYTogIDg3OTE3Mzkx LjQgaS9zDQogICAgICAgICAgICAgIGhzWzphXTogIDg1NTAzNzAzLjYgaS9zIC0gMS4wM3ggIHNs b3dlcg0KICAgICAgICAgICAgICAgIHN0LmE6ICA2MTMzNzQ2My4zIGkvcyAtIDEuNDN4ICBzbG93 ZXINCmBgYA0KDQpJIGJlbGlldmUgd2UgY2FuIHNwZWVkIHVwIGBTdHJ1Y3RgIHNpbWlsYXIgdG8g aXZhciBhY2Nlc3Nlcywgc28gd2UgY2FuIGltcHJvdmUgdGhlIHBlcmZvcm1hbmNlLg0KDQoNCkJU VywgT3BlblN0cnVjdCAob3MuYSkgaXMgc2xvdy4NCg0KYGBgDQpDb21wYXJpc29uOg0KICAgICAg ICAgICAgICBoc1s6YV06ICA5MjgzNTMxNy43IGkvcw0KICAgICAgICAgICAgICAgIG9iLmE6ICA4 NTg2NTg0OS41IGkvcyAtIDEuMDh4ICBzbG93ZXINCiAgICAgICAgICAgICAgICBzdC5hOiAgNTM0 ODA0MTcuNSBpL3MgLSAxLjc0eCAgc2xvd2VyDQogICAgICAgICAgICAgICAgb3MuYTogIDEyNTQx MjY3LjcgaS9zIC0gNy40MHggIHNsb3dlcg0KYGBgDQoNCg0KRm9yIG1lbW9yeSBjb25zdW1wdGlv biwgYFN0cnVjdGAgaXMgbW9yZSBsaWdodHdlaWdodCBiZWNhdXNlIHdlIGRvbid0IG5lZWQgdG8g a2VlcCBrZXkgbmFtZXMuDQoNCiMjIE5hbWluZw0KDQpJZiB3ZSBuYW1lIHRoZSBhbm9ueW1vdXMg Y2xhc3MsIHRoZSBzYW1lIG1lbWJlciBsaXRlcmFscyBzaGFyZSB0aGUgbmFtZS4NCg0KYGBgcnVi eQ0KczEgPSAke2E6MX0NCnMyID0gJHthOjJ9DQpwIFtzMSwgczJdICM9PiBbIzxzdHJ1Y3QgYT0x PiwgIzxzdHJ1Y3QgYT0yPl0NCkEgPSBzMS5jbGFzcw0KcCBbczEsIHMyXSAjPT4gWyM8c3RydWN0 IEEgYT0xPiwgIzxzdHJ1Y3QgQSBhPTI+XQ0KDQpgYGANCg0KTWF5YmUgaXQgaXMgbm90IGdvb2Qg YmVoYXZpb3IuDQoNCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvDQo=