[ruby-core:117891] [Ruby master Bug#19530] `Array#sum` and `Enumerable#sum` sometimes show different behaviours
From:
"nagachika (Tomoyuki Chikanaga) via ruby-core" <ruby-core@...>
Date:
2024-05-16 04:10:57 UTC
List:
ruby-core #117891
SXNzdWUgIzE5NTMwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgbmFnYWNoaWthIChUb21veXVraSBDaGlr YW5hZ2EpLg0KDQpCYWNrcG9ydCBjaGFuZ2VkIGZyb20gMi43OiBXT05URklYLCAzLjA6IFJFUVVJ UkVELCAzLjE6IFJFUVVJUkVELCAzLjI6IFJFUVVJUkVEIHRvIDIuNzogV09OVEZJWCwgMy4wOiBS RVFVSVJFRCwgMy4xOiBSRVFVSVJFRCwgMy4yOiBXT05URklYDQoNClNpbmNlIHRoaXMgd2FzIGEg bG9uZyBzdGFuZGluZyBidWcsIEkgd29uJ3QgYmFja3BvcnQgaXQgdG8gc3RhYmxlIGJyYW5jaCBp biBnZW5lcmFsLiBJZiB5b3Uga25vdyBhbnkgcmVhbCBhcHBsaWNhdGlvbnMgc3VmZmVyZWQgZnJv bSB0aGlzIGJlaGF2aW9yLCBwbGVhc2UgbGV0IG1lIGtub3cuDQpUaGFua3MuDQoNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkJ1ZyAjMTk1MzA6IGBBcnJheSNzdW1g IGFuZCBgRW51bWVyYWJsZSNzdW1gIHNvbWV0aW1lcyBzaG93IGRpZmZlcmVudCBiZWhhdmlvdXJz DQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTk1MzAjY2hhbmdlLTEwODMwNw0K DQoqIEF1dGhvcjogZHN0b3NpayAoRGF2aWQgU3Rvc2lrKQ0KKiBTdGF0dXM6IENsb3NlZA0KKiBy dWJ5IC12OiBydWJ5IDMuMi4xICgyMDIzLTAyLTA4IHJldmlzaW9uIDMxODE5ZTgyYzgpIFthcm02 NC1kYXJ3aW4yMl0NCiogQmFja3BvcnQ6IDIuNzogV09OVEZJWCwgMy4wOiBSRVFVSVJFRCwgMy4x OiBSRVFVSVJFRCwgMy4yOiBXT05URklYDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tDQpIaSBldmVyeW9uZS4g8J+Ri/Cfj7sNCg0KV2UgcmVjZW50bHkgZGlzY292ZXJl ZCB0aGF0IGBBcnJheSNzdW1gIGFuZCBgRW51bWVyYWJsZSNzdW1gIHdpbGwgb3V0cHV0IGRpZmZl cmVudCByZXN1bHRzIGluIHNvbWUgZWRnZSBjYXNlcy4NCg0KSGVyZSdzIHRoZSBzbWFsbGVzdCBz Y3JpcHQgSSBtYW5hZ2VkIHRvIHdyaXRlIHRvIHJlcHJvZHVjZSB0aGUgaXNzdWU6DQoNCmBgYCBy dWJ5DQpjbGFzcyBNb25leQ0KICBkZWYgaW5pdGlhbGl6ZShhbW91bnQpDQogICAgQGFtb3VudCA9 IGFtb3VudC50b19mDQogIGVuZA0KDQogIGRlZiArKG90aGVyKQ0KICAgIHNlbGYuY2xhc3MubmV3 KEBhbW91bnQgKyBvdGhlci50b19mKQ0KICBlbmQNCg0KICBkZWYgdG9fZg0KICAgIEBhbW91bnQN CiAgZW5kDQplbmQNCg0KcCBbNy4wXS5lYWNoLnN1bShNb25leS5uZXcoMCkpICAgIz0+ICM8TW9u ZXk6MHgwMDAwMDAwMTAwNWIzNWYwIEBhbW91bnQ9Ny4wPg0KcCBbNy4wXSAgICAgLnN1bShNb25l eS5uZXcoMCkpICAgIz0+IDcuMCDwn5KlDQpgYGANCg0KSSB1bmRlcnN0YW5kIHRoYXQgaXQgaXMg ZXhwZWN0ZWQgdGhhdCBgI3N1bWAgbWF5IG5vdCBob25vciBjdXN0b20gZGVmaW5pdGlvbnMgb2Yg dGhlIGAjK2AgbWV0aG9kIChwYXJ0aWN1bGFybHkgd2hlbiB0aGUgc3VtbWVkIHZhbHVlcyBhcmUg YEZsb2F0YCkuDQoNCkhvd2V2ZXIsIEkgd291bGQgbGlrZSB0byBicmluZyB5b3VyIGF0dGVudGlv biB0byB0aGUgZmFjdCB0aGF0LCBpbiB0aGUgZXhhbXBsZSBhYm92ZSwgY2FsbGluZyBgI3N1bWAg b24gYW4gYEFycmF5YCBvZiBgRmxvYXRgIHZhbHVlcyBhbmQgY2FsbGluZyBgI3N1bWAgb24gYW4g YEVudW1lcmFibGVgIHRoYXQgeWllbGRzIHRoZSBzYW1lIGBGbG9hdGAgdmFsdWVzIHdpbGwgcmV0 dXJuIHJlc3VsdHMgb2YgZGlmZmVyZW50IHR5cGVzLg0KDQpJJ3ZlIHJlcHJvZHVjZWQgdGhlIHNh bWUgYmVoYXZpb3VyIHdpdGggbXVsdGlwbGUgdmVyc2lvbnMgb2YgUnVieSBnb2luZyBmcm9tIDIu Ni41IHRvIDMuMi4xLg0KDQpJZGVhbGx5LCBJIHdvdWxkIGV4cGVjdCBgWzcuMF0uc3VtKE1vbmV5 Lm5ldygwKSlgIHRvIHJldHVybiBhIGBNb25leWAgb2JqZWN0IGlkZW50aWNhbCB0byB0aGUgb25l IHJldHVybmVkIGJ5IGBbNy4wXS5lYWNoLnN1bShNb25leS5uZXcoMCkpYC4NCkkgdGhpbmsgaXQg d291bGQgbWFrZSBzZW5zZSBpZiBhdCBsZWFzdCB0aGV5IHJldHVybmVkIGFuIGlkZW50aWNhbCB2 YWx1ZSAoZXZlbiBpZiBpdCBpcyBhIGBGbG9hdGApLg0KDQoNCkFkZGVuZHVtOiBJIGZvcmdvdCB0 byBtZW50aW9uIFt0aGlzIGV4dHJhY3RdKGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvYmxv Yi9kYTljODRmODU5ZGIyOTJhYjExMjdmN2NhOWI3NzQxZmZmMDY1NTdiL2FycmF5LmMjTDgxMzMt TDgxMzcpIG9mIHRoZSBgQXJyYXkjc3VtYCBkb2N1bWVudGF0aW9uOg0KDQo+IFdoZW4gbm8gYmxv Y2sgaXMgZ2l2ZW4sIHJldHVybnMgdGhlIG9iamVjdCBlcXVpdmFsZW50IHRvOg0KPg0KPiBgYGAg cnVieQ0KPiBzdW0gPSBpbml0DQo+IGFycmF5LmVhY2gge3xlbGVtZW50fCBzdW0gKz0gZWxlbWVu dCB9DQo+IHN1bQ0KPiBgYGANCg0KV2l0aCB0aGUgZXhhbXBsZSBhYm92ZSwgaXQgd291bGQgaW5k ZWVkIHJldHVybiBhIGBNb25leWAgb2JqZWN0Lg0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVi eS1sYW5nLm9yZy8NCiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCiBydWJ5LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3Jn CiBUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5 LWxhbmcub3JnCiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFp bG1hbjMvcG9zdG9yaXVzL2xpc3RzL3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLw==