[ruby-core:121323] [Ruby master Misc#21143] Speficy order of execution const_added vs inherited
From:
"fxn (Xavier Noria) via ruby-core" <ruby-core@...>
Date:
2025-03-13 07:38:13 UTC
List:
ruby-core #121323
SXNzdWUgIzIxMTQzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgZnhuIChYYXZpZXIgTm9yaWEpLg0KDQoN CkluIHRoZW9yeSwgdGhlcmUgY291bGQgYmUgYW4gaW5jb21wYXRpYmlsaXR5IGluIHByb2plY3Rz IHVzaW5nIFplaXR3ZXJrLg0KDQpMZXQncyBpbWFnaW5lIHlvdSBoYXZlIGEgY2xhc3MgYENgIGRl ZmluZWQgaW4gYGMucmJgIGFuZCBgQzo6WGAgZGVmaW5lZCBpbiBgYy94LnJiYC4gSWYgdGhlIHBh cmVudCBjbGFzcyBvZiBgQ2AgaGFzIGFuIGBpbmhlcml0ZWRgIGhvb2ssIHRvZGF5IHRoYXQgaG9v ayBjYW4gcmVmZXIgdG8gYEM6OlhgLg0KDQpUaGUgcmVhc29uIGZvciB0aGF0IGlzIHRoYXQgd2hl biBgQ2AgZ2V0cyBjcmVhdGVkLCBgY29uc3RfYWRkZWRgIGlzIGludm9rZWQgYW5kIHRoZSBsb2Fk ZXIgaXMgb24gdGltZSB0byBkZWZpbmUgYW4gYGF1dG9sb2FkYCBmb3IgYDpYYCBpbiBgQ2AuIFRo YXQgaXMgaG93IHlvdSBhcmUgYWJsZSB0byByZWZlciB0byBhbnkgY29uc3RhbnQgcGF0aCBpbiB5 b3VyIHByb2plY3QgYW55IHRpbWUuIChUaW1lIGFnbywgdGhpcyB3YXMgZG9uZSB3aXRoIGEgdHJh Y2UgcG9pbnQgZm9yIHRoZSBgOmNsYXNzYCBldmVudC4pDQoNCklmIHdlIGNoYW5nZSB0aGUgb3Jk ZXIsIHdoZW4gdGhlIGBpbmhlcml0ZWRgIGhvb2sgaXMgaW52b2tlZCBgQzo6WGAgd2lsbCByYWlz ZSBgTmFtZUVycm9yYC4NCg0KSG93ZXZlciwgbGV0IG1lIGFsc28gc2F5IHRoYXQgSSBkb24ndCBr bm93IGlmIHRoaXMgdXNhZ2UgaXMgcHJlc2VudCBvdXQgdGhlcmUuIFJlZmVycmluZyB0byBuZXN0 ZWQgY29uc3RhbnRzIGluIHlvdXIganVzdCBjcmVhdGVkIHN1YmNsYXNzIHNlZW1zIGEgcmFyZSB1 c2UgY2FzZSB0aGF0IGluIHB1cmUgUnVieSBtYXkgbm90IGV2ZW4gYmUgcG9zc2libGUuDQoNCkkn ZCBiZSDwn5GNIHRvIGdvIHdpdGggQGVyZWdvbidzIHN1Z2dlc3Rpb24gYmVjYXVzZSBpdCBpcyBz aW1wbGVyIGFuZCB1bmlmb3JtLg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tDQpNaXNjICMyMTE0MzogU3BlZmljeSBvcmRlciBvZiBleGVjdXRpb24gY29uc3RfYWRk ZWQgdnMgaW5oZXJpdGVkDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjExNDMj Y2hhbmdlLTExMjI4OA0KDQoqIEF1dGhvcjogZnhuIChYYXZpZXIgTm9yaWEpDQoqIFN0YXR1czog RmVlZGJhY2sNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClRoZSBo b29rcyBgY29uc3RfYWRkZWRgIGFuZCBgaW5oZXJpdGVkYCBtYXkgbmVlZCB0byBiZSBleGVjdXRl ZCAidG9nZXRoZXIiLg0KDQpGb3IgZXhhbXBsZSwgY29uc2lkZXI6DQoNCmBgYHJ1YnkNCm1vZHVs ZSBNDQogIGRlZiBzZWxmLmNvbnN0X2FkZGVkKGNuYW1lKSA9IC4uLg0KDQogIGNsYXNzIEMNCiAg ICBkZWYgc2VsZi5pbmhlcml0ZWQoc3ViY2xhc3MpID0gLi4uDQogIGVuZA0KDQogIGNsYXNzIEQg PCBDOyBlbmQNCmVuZA0KYGBgDQoNCldoZW4gYERgIGlzIGRlZmluZWQsIHR3byBob29rcyBhcmUg c2V0IHRvIHJ1biwgYnV0IGluIHdoaWNoIG9yZGVyPw0KDQpCb3RoIG9yZGVycyBtYWtlIHNlbnNl IGluIGEgd2F5Og0KDQoxLiBXaGVuIGBpbmhlcml0ZWRgIGlzIGNhbGxlZCwgeW91IGNhbiBvYnNl cnZlIHRoYXQgdGhlIHN1YmNsYXNzIGhhcyBhIHBlcm1hbmVudCBuYW1lLCBlcmdvIGl0IHdhcyBh c3NpZ25lZCB0byBhIGNvbnN0YW50LCB3aGljaCBtdXN0IG1lIHN0b3JlZCBpbiBhIGNsYXNzIG9y IG1vZHVsZSBvYmplY3QuIFRoZXJlZm9yZSwgdGhlIGNvbnN0YW50IHdhcyBhZGRlZCB0byBzYWlk IGNsYXNzL21vZHVsZSBiZWZvcmUgYGluaGVyaXRlZGAgd2FzIGludm9rZWQuDQoNCjEuIFdoZW4g YGNvbnN0X2FkZGVkYCBpcyBjYWxsZWQsIHlvdSBjYW4gYGNvbnN0X2dldGAgdGhlIHN5bWJvbCBh bmQgb2JzZXJ2ZSB0aGUgb2JqZWN0IGlzIGEgY2xhc3MsIGhlbmNlIHdpdGggYSBzdXBlcmNsYXNz LCBoZW5jZSBpbmhlcml0YW5jZSBhbHJlYWR5IGhhcHBlbmVkLg0KDQpUaGUgcGF0Y2ggaW4gW3J1 YnkjMTI3NTldKGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC8xMjc1OSkgZG9jdW1l bnRzIGFuZCBhZGRzIGEgdGVzdCBmb3IgKDEpLiBSYXRpb25hbGU6DQoNCjEuIEkgYmVsaWV2ZSBp dCB3b3VsZCBiZSBuaWNlIHRvIHNwZWNpZnkgdGhpcyBvcmRlci4NCg0KMS4gQ2hvc2UgKDEpIGJl Y2F1c2UgaXQgaXMgaG93IGl0IHdvcmtzIHRvZGF5Lg0KDQpXaGlsZSB0aGUgbW90aXZhdGlvbiBm b3IgdGhlIHBhdGNoIHdhcyBmb3JtYWwgKHRvIHJlbW92ZSBhbiBhbWJpZ3VpdHkpLCBhZnRlciBy ZWZsZWN0aW5nIGFib3V0IHRoaXMgSSByZWFsaXplZCB1c2VycyBvZiBaZWl0d2VyayBtYXkgZGVw ZW5kIG9uIHRoaXMuIE5vd2FkYXlzLCBaZWl0d2VyayB1c2VzIGBjb25zdF9hZGRlZGAgdG8gc2V0 IGF1dG9sb2FkcyBmb3IgY2hpbGQgY29uc3RhbnRzIGluIG5hbWVzcGFjZXMuIFRoYW5rcyB0byB0 aGUgY3VycmVudCBvcmRlciwgY29kZSBjYW4gYmUgdXNlZCBpbiBgaW5oZXJpdGVkYCBob29rcyBu b3JtYWxseSAoaXQgd291bGQgbm90IGJlIHJlYWR5IGlmIHRoZSBvcmRlciB3YXMgZGlmZmVyZW50 KS4NCg0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCiBfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiBydWJ5LWNvcmUgbWFpbGluZyBs aXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3JnCiBUbyB1bnN1YnNjcmliZSBzZW5kIGFu IGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5LWxhbmcub3JnCiBydWJ5LWNvcmUgaW5m byAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFpbG1hbjMvbGlzdHMvcnVieS1jb3JlLm1s LnJ1YnktbGFuZy5vcmcv