[ruby-core:108423] [Ruby master Bug#18729] Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
From:
"jeremyevans0 (Jeremy Evans)" <noreply@...>
Date:
2022-04-27 19:00:05 UTC
List:
ruby-core #108423
SXNzdWUgIzE4NzI5IGhhcyBiZWVuIHVwZGF0ZWQgYnkgamVyZW15ZXZhbnMwIChKZXJlbXkgRXZh bnMpLgoKCkVyZWdvbiAoQmVub2l0IERhbG96ZSkgd3JvdGUgaW4gI25vdGUtMTM6Cj4gQGplcmVt eWV2YW5zMCBEbyB5b3UgYWdyZWUgYE1ldGhvZCNzdXBlcl9tZXRob2RgIHNob3VsZCBzaG93IHRo ZSBtZXRob2QgY2FsbGVkIGJ5IGBzdXBlcmAgaWYgdGhlcmUgaXMgYHN1cGVyYCBpbiB0aGF0IG1l dGhvZCwgd2hlbiBpdCdzIHBvc3NpYmxlIHRvIGtub3c/Cj4gKEkgdGhpbmsgaXQncyBhbHdheXMg cG9zc2libGUgZm9yIGEgbWV0aG9kIGRlZmluZWQgb24gYSBjbGFzcywgYnV0IG5vdCBmb3IgYSBt ZXRob2QgZGVmaW5lZCBvbiBhIG1vZHVsZSBlc3BlY2lhbGx5IGlmIHRoZSBtb2R1bGUgaXMgaW5j bHVkZWQgbXVsdGlwbGUgdGltZXMgaW4gdGhlIGFuY2VzdG9ycykKCkkgdGhpbmsgeW91IGVpdGhl ciB0cmVhdCBhIFpTVVBFUiBtZXRob2QgbGlrZSBhIG1ldGhvZCBpbiB0aGUgY3VycmVudCBjbGFz cyAodGhpcyBpc3N1ZSksIG9yIHlvdSB0cmVhdCBpdCBhcyBhIG1ldGhvZCBpbiB0aGUgYW5jZXN0 b3IgKFJ1YnkgMy4xIGFuZCBiZWxvdyBiZWhhdmlvcikuICBJZiB5b3UgdHJlYXQgYSBaU1VQRVIg bWV0aG9kIGxpa2UgYSBtZXRob2QgaW4gdGhlIGN1cnJlbnQgY2xhc3MsIHRoZW4gYHN1cGVyX21l dGhvZGAgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgaWYgdGhlIFpTVVBFUiBtZXRob2Qgd2FzIGRlZmlu ZWQgaW4gdGhlIGN1cnJlbnQgY2xhc3MgKGFuZCBub3QgYSBaU1VQRVIgbWV0aG9kKSwgaW4gd2hp Y2ggY2FzZSBpdCBnaXZlcyB0aGUgbWV0aG9kIGRlZmluZWQgaW4gdGhlIGFuY2VzdG9yLgoKPiBg cHVibGljYCBpcyBub3QgZXF1aXZhbGVudCB0byByZWRlY2xhcmluZyBpdCBsaWtlIHlvdSBzaG93 IHdpdGggYGRlZiBmb287IHN1cGVyOyBlbmRgLCBiZWNhdXNlIEIjZm9vIHdvdWxkIGNhbGwgQSNm b28gd2l0aCByZWRlY2xhcmluZywgYnV0IHdpdGggb25seSBgcHVibGljIDpmb28gaW4gQmAgQSNm b28gaXMgKm5vdCogY2FsbGVkIGZvciBgQi5uZXcuZm9vYC4KClRydWUsIHRoYXQgaXMgYSBkaWZm ZXJlbmNlLiAgSSBiZWxpZXZlIGluIHRoaXMgY2FzZSB0aGF0IGBzdXBlcl9tZXRob2RgIHdpbGwg c3RpbGwgZ2l2ZSB5b3UgdGhlIGNvcnJlY3QgYW5zd2VyLCB0aGUgTWV0aG9kIG9iamVjdCBmb3Ig YEEjZm9vYCBiZWZvcmUgYEEjZm9vYCB3YXMgcmVkZWNsYXJlZC4gIElmIHRoYXQgaXMgdGhlIGNh c2UsIEkgZG9uJ3QgdGhlIHByb3Bvc2VkIGJlaGF2aW9yIGFzIGEgcHJvYmxlbS4KCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQnVnICMxODcyOTogTWV0aG9kI293bmVy IGFuZCBVbmJvdW5kTWV0aG9kI293bmVyIGFyZSBpbmNvcnJlY3QgYWZ0ZXIgdXNpbmcgTW9kdWxl I3B1YmxpYy9wcm90ZWN0ZWQvcHJpdmF0ZQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1 ZXMvMTg3MjkjY2hhbmdlLTk3NDU5CgoqIEF1dGhvcjogRXJlZ29uIChCZW5vaXQgRGFsb3plKQoq IFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKKiBydWJ5IC12OiBydWJ5IDMuMS4xcDE4 ICgyMDIyLTAyLTE4IHJldmlzaW9uIDUzZjVmYzQyMzYpIFt4ODZfNjQtbGludXhdCiogQmFja3Bv cnQ6IDIuNjogVU5LTk9XTiwgMi43OiBVTktOT1dOLCAzLjA6IFVOS05PV04sIDMuMTogVU5LTk9X TgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClRoZSAjb3duZXIgc2hv dWxkIGJlICJ0aGUgY2xhc3Mgb3IgbW9kdWxlIHRoYXQgZGVmaW5lcyB0aGUgbWV0aG9kIi4KT3Ig aW4gb3RoZXIgd29yZHMsIHRoZSBvd25lciBpcyB0aGUgbW9kdWxlIHdoaWNoIGhhcyB0aGUgbWV0 aG9kIHRhYmxlIGNvbnRhaW5pbmcgdGhhdCBtZXRob2QuCgpUaGlzIGdlbmVyYWxseSBob2xkcywg YW5kIGl0IHNlZW1zIHZlcnkgbGlrZWx5IHRoaXMgYXNzdW1wdGlvbiBpcyByZWxpZWQgdXBvbiAo ZS5nLiwgd2hlbiBkZWNvcmF0aW5nIGEgbWV0aG9kLCB1bmRlZmluaW5nIGl0LCBldGMpLgpCdXQg dGhlIHJldHVybmVkIHZhbHVlIG9uIENSdWJ5IGlzIGluY29ycmVjdCBmb3IgdGhpcyBjYXNlOgpg YGBydWJ5CmNsYXNzIEEKICBwcm90ZWN0ZWQgZGVmIGZvbwogICAgOkEKICBlbmQKZW5kCgpjbGFz cyBCIDwgQQogIHAgW2luc3RhbmNlX21ldGhvZCg6Zm9vKSwgaW5zdGFuY2VfbWV0aG9kKDpmb28p Lm93bmVyLCBpbnN0YW5jZV9tZXRob2RzKGZhbHNlKSwgQS5pbnN0YW5jZV9tZXRob2RzKGZhbHNl KV0KICBwdWJsaWMgOmZvbwogIHAgW2luc3RhbmNlX21ldGhvZCg6Zm9vKSwgaW5zdGFuY2VfbWV0 aG9kKDpmb28pLm93bmVyLCBpbnN0YW5jZV9tZXRob2RzKGZhbHNlKSwgQS5pbnN0YW5jZV9tZXRo b2RzKGZhbHNlKV0KZW5kCmBgYAoKSXQgZ2l2ZXM6CmBgYApbIzxVbmJvdW5kTWV0aG9kOiBCKEEp I2ZvbygpIG93bmVyLnJiOjI+LCBBLCBbXSwgWzpmb29dXQpbIzxVbmJvdW5kTWV0aG9kOiBCKEEp I2ZvbygpIG93bmVyLnJiOjI+LCBBLCBbOmZvb10sIFs6Zm9vXV0KYGBgCgpTbyBgVW5ib3VuZE1l dGhvZCNvd25lcmAgc2F5cyBgQWAsIGJ1dCBjbGVhcmx5IHRoZXJlIGlzIGEgOmZvbyBtZXRob2Qg ZW50cnkgaW4gQiBjcmVhdGVkIGJ5IGBwdWJsaWMgOmZvb2AsIGFuZCB0aGF0IGlzIHNob3duIHRo cm91Z2ggYEIuaW5zdGFuY2VfbWV0aG9kcyhmYWxzZSlgLgoKVGhlIGV4cGVjdGVkIG91dHB1dCBp czoKCmBgYApbIzxVbmJvdW5kTWV0aG9kOiBCKEEpI2ZvbygpIG93bmVyLnJiOjI+LCBBLCBbXSwg Wzpmb29dXQpbIzxVbmJvdW5kTWV0aG9kOiBCI2ZvbygpIG93bmVyLnJiOjI+LCBCLCBbOmZvb10s IFs6Zm9vXV0KYGBgCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vic2Ny aWJlOiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1 YnNjcmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRp b25zL3J1YnktY29yZT4K