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-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.6 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_HELO_PASS, 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 232381F910 for ; Sun, 13 Nov 2022 00:50:24 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.b="VxaW04QB"; dkim-atps=neutral Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 80A86120E4A; Sun, 13 Nov 2022 09:50:19 +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 5A23D120E3F for ; Sun, 13 Nov 2022 09:50:17 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc; s=s1; bh=LxVhjkEzVFdqTXaHjn0SVAnUdBPv/7xa+U6t0zO/oeE=; b=VxaW04QBmJTeOG/sURgMXig+bTo/R+iHlg+n8i6P2tGKc27vnXBWBRFyCyWV/LSTPdqy rYuQZ2PRGuBmmvu+tPZEucx+FryWyukU5H1VvQi/hL6ZvqhpbXcvg6x2/n4XhY6RM1LDlA Li3QRelyLeuNQe3/yfJjY4WTI/vStW+dbP6L7E3DG8/vDpd0hHAXK1NUV7gwB96mKLJvnO ST0wgCB0C8mMg2ttKqfRYnQUWeZrXHq3CDJkI+SpcvFxNqXZj0vJhVQPk3GXNgw+NVibB0 UpQOAqFUfSKPZcCPY9L9o99epil8nm7N3FnGdEKPl0IXA98jR/0MLVFW4j/B+G8w== Received: by filterdrecv-c8b658c76-gbrt2 with SMTP id filterdrecv-c8b658c76-gbrt2-1-63703F42-F 2022-11-13 00:50:10.461052881 +0000 UTC m=+191410.003556337 Received: from herokuapp.com (unknown) by geopod-ismtpd-5-2 (SG) with ESMTP id cIOfB-D5TlyV8d92VcXVQA for ; Sun, 13 Nov 2022 00:50:10.400 +0000 (UTC) Date: Sun, 13 Nov 2022 00:50:10 +0000 (UTC) From: "e8c (Viktor Reznov)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 19129 X-Redmine-Issue-Author: e8c X-Redmine-Sender: e8c 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-Redmine-MailingListIntegration-Message-Ids: 87185 X-SG-EID: =?us-ascii?Q?6XVGD7x5biJSd6WsKo0IvyvX0hBXzmZx7hT2AEU1WQpbeHk9tgbTnR2MmIwC03?= =?us-ascii?Q?cGCBGy7pZVzdkVJdbaUbZIbi+pfwVMUHT9=2FwJjs?= =?us-ascii?Q?M8X6O=2F0PvYHwmau6KPHv=2FX6OHNwJ4d7R5i7zrbP?= =?us-ascii?Q?CQcWSUvcicyw0KLMX9HugH0pYeV1U1I1NF8lyrW?= =?us-ascii?Q?GxB3AGI8c+3I8Vv48D=2F58vAPwj38nnqpnUdx2IX?= =?us-ascii?Q?Aj80TyMiM2Bk2VKygn3tThlrCT65XlCO838Tt7K?= =?us-ascii?Q?wnA5GiaVNwbgSLyDCPilA=3D=3D?= To: ruby-core@neon.ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 110729 Subject: [ruby-core:110729] [Ruby master Feature#19129] Radix_Sort for arrays of fixnums (implemented) X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Reply-To: Ruby developers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE5MTI5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGU4YyAoVmlrdG9yIFJlem5vdikuCgot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZlYXR1cmUgIzE5MTI5OiBS YWRpeF9Tb3J0IGZvciBhcnJheXMgb2YgZml4bnVtcyAoaW1wbGVtZW50ZWQpCmh0dHBzOi8vYnVn cy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xOTEyOQoKKiBBdXRob3I6IGU4YyAoVmlrdG9yIFJlem5v dikKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KQ29kZSBhbHJlYWR5IHdyaXR0ZW4sIGFsbCBpbiBvbmUgbGlz dGluZyAoZ2l0IGRpZmYsIHRlc3QgZmlsZSwgYW5kIHJlc3VsdHMgb2YgdGVzdHMpOgoKYGBgCiQg Y2F0IC4uL3J1Ynlfc29ydC90ZXN0LnJiIAojIS9iaW4vcnVieQoKc3JhbmQgMApyID0gQXJyYXku bmV3IDFlNy50b19pIGRvIHJhbmQgLTIgKiogNDAuLi4yICoqIDQwIGVuZAoKcHV0cwoKNS50aW1l cyBkbwoKICAgIGEgPSByLmNsb25lCiAgICB0ID0gVGltZS5ub3cKICAgIGEuc29ydCEKICAgIHB1 dHMgIlx0UnVuICMje18xICsgMX06ICUuM2YgcyIgJSBbVGltZS5ub3cgLSB0XQogICAgCmVuZAoK cHV0czsgZXhpdCB1bmxlc3MgJCpbMF0KCnAgKHIuc29ydCB7IF8xIDw9PiBfMiB9KSA9PSAoci5z b3J0KQoKcHV0cwoKJCAuL21pbmlydWJ5IC4uL3J1Ynlfc29ydC90ZXN0LnJiICAjIHFzb3J0CgoJ UnVuICMxOiAyLjIwOSBzCglSdW4gIzI6IDIuMjU5IHMKCVJ1biAjMzogMi4yMjkgcwoJUnVuICM0 OiAyLjE5NiBzCglSdW4gIzU6IDIuMjI2IHMKCiQgLi9taW5pcnVieSAuLi9ydWJ5X3NvcnQvdGVz dC5yYiAgIyByc29ydAoKCVJ1biAjMTogMC4zMjggcwoJUnVuICMyOiAwLjM1MSBzCglSdW4gIzM6 IDAuMzUyIHMKCVJ1biAjNDogMC4zMjMgcwoJUnVuICM1OiAwLjM0MiBzCgokIGdpdCBkaWZmCmRp ZmYgLS1naXQgYS9hcnJheS5jIGIvYXJyYXkuYwppbmRleCBhMzNjNDNiZGJmLi41NzhkOTQ0M2Nk IDEwMDY0NAotLS0gYS9hcnJheS5jCisrKyBiL2FycmF5LmMKQEAgLTM1MjEsNiArMzUyMSw1MiBA QCBzb3J0XzIoY29uc3Qgdm9pZCAqYXAsIGNvbnN0IHZvaWQgKmJwLCB2b2lkICpkdW1teSkKICAg ICByZXR1cm4gbjsKIH0KIAorI2lmIF9fbGludXhfXyAmJiBfX1NJWkVPRl9QT0lOVEVSX18gPT0g OAorCitzdGF0aWMgaW50IHJzb3J0KHZvaWQgKmNvbnN0IF9wLCBjb25zdCBsb25nIGwpIHsKKwor ICAgIGZvciAoY29uc3QgVkFMVUUgKnAgPSBfcCwgKmNvbnN0IFAgPSBwICsgbDsgcCA8IFA7KQor ICAgICAgICBpZiAoIUZJWE5VTV9QKCpwKyspKSByZXR1cm4gMTsKKworICAgIHVpbnQ2NF90IEZb OF1bMjU2XSA9IHt9LCAqYSA9IF9wLCAqYiA9IG1hbGxvYyg4ICogbCk7CisgICAgaWYgKGIgPT0g TlVMTCkgcmV0dXJuIDE7CisKKyAgICBmb3IgKHVpbnQ2NF90ICpwID0gYSwgKmNvbnN0IFAgPSBw ICsgbDsgcCA8IFA7IHArKykgeworICAgICAgICAqcCArPSAoMVVMIDw8IDYzKTsKKyAgICAgICAg Zm9yIChpbnQgaSA9IDA7IGkgPCA4OyBpKyspCisgICAgICAgICAgICBGW2ldWygqcCA+PiBpICog OCkgJiAyNTVdKys7CisgICAgfQorCisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCA4OyBpKyspIHsK KyAgICAgICAgdWludDY0X3QgeCA9IDAsIHQsICpvID0gRltpXSwgZmxhZyA9IDA7CisgICAgICAg IGZvciAoaW50IGogPSAwOyBqIDwgMjU2OyBqKyspIHsKKyAgICAgICAgICAgIGlmICgodCA9IG9b al0pID09ICh1aW50NjRfdClsKSB7CisgICAgICAgICAgICAgICAgZmxhZyA9IDE7CisgICAgICAg ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAgICAgICB4ID0gKG9bal0gPSB4 KSArIHQ7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGZsYWcpIGNvbnRpbnVlOworICAgICAgICBm b3IgKHVpbnQ2NF90ICpwID0gYSwgKmNvbnN0IFAgPSBwICsgbDsgcCA8IFA7IHArKykgeworICAg ICAgICAgICAgYltvWygqcCA+PiBpICogOCkgJiAyNTVdKytdID0gKnA7CisgICAgICAgIH0KKyAg ICAgICAgbyA9IGEsIGEgPSBiLCBiID0gbzsKKyAgICB9CisKKyAgICBpZiAoYSAhPSBfcCkgewor ICAgICAgICBtZW1jcHkoX3AsIGIsIDggKiBsKTsKKyAgICAgICAgYiA9IGE7CisgICAgfQorCisg ICAgZm9yICh1aW50NjRfdCAqcCA9IF9wLCAqY29uc3QgUCA9IHAgKyBsOyBwIDwgUDsgcCsrKQor ICAgICAgICAqcCAtPSAoMVVMIDw8IDYzKTsKKworICAgIGZyZWUoYik7CisgICAgcmV0dXJuIDA7 Cit9CisKKyNlbmRpZgorCiAvKgogICogIGNhbGwtc2VxOgogICogICAgYXJyYXkuc29ydCEgLT4g c2VsZgpAQCAtMzU3Nyw4ICszNjIzLDIwIEBAIHJiX2FyeV9zb3J0X2JhbmcoVkFMVUUgYXJ5KQog ICAgICAgICBkYXRhLmNtcF9vcHQub3B0X21ldGhvZHMgPSAwOwogICAgICAgICBkYXRhLmNtcF9v cHQub3B0X2luaXRlZCA9IDA7CiAgICAgICAgIFJBUlJBWV9QVFJfVVNFKHRtcCwgcHRyLCB7CisK KyNpZiBfX2xpbnV4X18gJiYgX19TSVpFT0ZfUE9JTlRFUl9fID09IDgKKworICAgICAgICAgICAg aWYgKChsZW4gPCAxMDAwMCB8fCByYl9ibG9ja19naXZlbl9wKCkpIHx8IHJzb3J0KHB0ciwgbGVu KSkKKyAgICAgICAgICAgICAgICBydWJ5X3Fzb3J0KHB0ciwgbGVuLCBzaXplb2YoVkFMVUUpLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmJfYmxvY2tfZ2l2ZW5fcCgpID8gc29ydF8xIDog c29ydF8yLCAmZGF0YSk7CisKKyNlbHNlCisKICAgICAgICAgICAgIHJ1YnlfcXNvcnQocHRyLCBs ZW4sIHNpemVvZihWQUxVRSksCi0gICAgICAgICAgICAgICAgICAgICAgIHJiX2Jsb2NrX2dpdmVu X3AoKT9zb3J0XzE6c29ydF8yLCAmZGF0YSk7CisgICAgICAgICAgICAgICAgICAgICAgIHJiX2Js b2NrX2dpdmVuX3AoKSA/IHNvcnRfMSA6IHNvcnRfMiwgJmRhdGEpOworCisjZW5kaWYKKwogICAg ICAgICB9KTsgLyogV0I6IG5vIG5ldyByZWZlcmVuY2UgKi8KICAgICAgICAgcmJfYXJ5X21vZGlm eShhcnkpOwogICAgICAgICBpZiAoQVJZX0VNQkVEX1AodG1wKSkgewpgYGAKCkZyb206IGh0dHBz Oi8vZ2l0aHViLmNvbS9hbGFudHVkeWsveFBORy9ibG9iL2JhOTMyNDhiMmRhY2I0NjA3NTAwYjYz NTQ1NmU5NjU5MmIyMDA1MDMvdW50aWxfZm9yay9ydWJ5X3NvcnQudHh0CgpObyB0aW1lIHRvIGNy ZWF0ZSBhIHB1bGwgcmVxdWVzdC4KCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwo=