[ruby-core:86064] [Ruby trunk Bug#14541] Class variables have broken semantics, let's fix them

From: danieldasilvaferreira@...
Date: 2018-03-09 07:18:16 UTC
List: ruby-core #86064
SXNzdWUgIzE0NTQxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgZHNmZXJyZWlyYSAoRGFuaWVsIEZlcnJl
aXJhKS4KCgpzaGV2ZWdlbiAoUm9iZXJ0IEEuIEhlaWxlcikgd3JvdGU6Cgo+IEEgYml0IHNpbWls
YXIgdG8gdGhlIGRvYyB0aGF0IGV4cGxhaW5zIHRoZSAiU3ltYm9sIHZlcnN1cyBTdHJpbmciIHNp
dHVhdGlvbiB0aGF0IGhhcyBiZWVuIGFkZGVkIHJlY2VudGx5LgoKQ2FuIHlvdSBwbGVhc2UgcGFz
dGUgaGVyZSB0aGUgbGluayB0byB0aGUg4oCcU3ltYm9sIHZlcnN1cyBTdHJpbmfigJ0gZG9jPwoK
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpCdWcgIzE0NTQxOiBDbGFz
cyB2YXJpYWJsZXMgaGF2ZSBicm9rZW4gc2VtYW50aWNzLCBsZXQncyBmaXggdGhlbQpodHRwczov
L2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTQ1NDEjY2hhbmdlLTcwOTI5CgoqIEF1dGhvcjog
RXJlZ29uIChCZW5vaXQgRGFsb3plKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwK
KiBBc3NpZ25lZTogCiogVGFyZ2V0IHZlcnNpb246IAoqIHJ1YnkgLXY6IHJ1YnkgMi42LjBkZXYg
KDIwMTgtMDEtMjkgdHJ1bmsgNjIwOTEpIFt4ODZfNjQtbGludXhdCiogQmFja3BvcnQ6IDIuMzog
VU5LTk9XTiwgMi40OiBVTktOT1dOLCAyLjU6IFVOS05PV04KLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQpDbGFzcyB2YXJpYWJsZXMgaGF2ZSB0aGUgd2VpcmQgc2VtYW50
aWNzIG9mIGJlaW5nIHRpZWQgdG8gdGhlIGNsYXNzIGhpZXJhcmNoeSBhbmQgYmVpbmcgaW5oZXJp
dGVkIGJldHdlZW4gY2xhc3Nlcy4KSSB0aGluayB0aGlzIGlzIGNvdW50ZXItaW50dWl0aXZlLCBk
YW5nZXJvdXMgYW5kIGJhc2ljYWxseSBub2JvZHkgZXhwZWN0cyB0aGlzIGJlaGF2aW9yLgoKVG8g
aWxsdXN0cmF0ZSB0aGF0LCB3ZSBjYW4gYnJlYWsgdGhlIHRtcGRpciBzdGRsaWIgYnkgZGVmaW5p
bmcgYSB0b3AtbGV2ZWwgY2xhc3MgdmFyaWFibGU6CgogICAgJCBydWJ5IC1ydG1wZGlyIC1lICck
U0FGRT0xOyBAQHN5c3RtcGRpcj00MjsgcCBEaXIubWt0bXBkaXIge30nCiAgICAtZToxOiB3YXJu
aW5nOiBjbGFzcyB2YXJpYWJsZSBhY2Nlc3MgZnJvbSB0b3BsZXZlbAogICAgVHJhY2ViYWNrICht
b3N0IHJlY2VudCBjYWxsIGxhc3QpOgogICAgCTM6IGZyb20gLWU6MTppbiBgPG1haW4+JwogICAg
CTI6IGZyb20gL2hvbWUvZXJlZ29uL3ByZWZpeC9ydWJ5LXRydW5rL2xpYi9ydWJ5LzIuNi4wL3Rt
cGRpci5yYjo4NjppbiBgbWt0bXBkaXInCiAgICAJMTogZnJvbSAvaG9tZS9lcmVnb24vcHJlZml4
L3J1YnktdHJ1bmsvbGliL3J1YnkvMi42LjAvdG1wZGlyLnJiOjEyNTppbiBgY3JlYXRlJwogICAg
L2hvbWUvZXJlZ29uL3ByZWZpeC9ydWJ5LXRydW5rL2xpYi9ydWJ5LzIuNi4wL3RtcGRpci5yYjox
MjU6aW4gYGpvaW4nOiBubyBpbXBsaWNpdCBjb252ZXJzaW9uIG9mIEludGVnZXIgaW50byBTdHJp
bmcgKFR5cGVFcnJvcikKCk9yIGV2ZW4gc2ltcGxlciBpbiBSdWJ5R2VtczoKCiAgICAkIHJ1Ynkg
LWUgJ0BAYWxsPTQyOyBwIEdlbS5ydWJ5X3ZlcnNpb24nCiAgICAtZToxOiB3YXJuaW5nOiBjbGFz
cyB2YXJpYWJsZSBhY2Nlc3MgZnJvbSB0b3BsZXZlbAogICAgVHJhY2ViYWNrIChtb3N0IHJlY2Vu
dCBjYWxsIGxhc3QpOgogICAgCTM6IGZyb20gLWU6MTppbiBgPG1haW4+JwogICAgCTI6IGZyb20g
L2hvbWUvZXJlZ29uL3ByZWZpeC9ydWJ5LXRydW5rL2xpYi9ydWJ5LzIuNi4wL3J1YnlnZW1zLnJi
Ojk4NDppbiBgcnVieV92ZXJzaW9uJwogICAgCTE6IGZyb20gL2hvbWUvZXJlZ29uL3ByZWZpeC9y
dWJ5LXRydW5rL2xpYi9ydWJ5LzIuNi4wL3J1YnlnZW1zL3ZlcnNpb24ucmI6MTk5OmluIGBuZXcn
CiAgICAvaG9tZS9lcmVnb24vcHJlZml4L3J1YnktdHJ1bmsvbGliL3J1YnkvMi42LjAvcnVieWdl
bXMvdmVyc2lvbi5yYjoxOTk6aW4gYFtdJzogbm8gaW1wbGljaXQgY29udmVyc2lvbiBvZiBTdHJp
bmcgaW50byBJbnRlZ2VyIChUeXBlRXJyb3IpCgpTbyBkZWZpbmluZyBhIGNsYXNzIHZhcmlhYmxl
IG9uIE9iamVjdCByZW1vdmVzIGNsYXNzIHZhcmlhYmxlcyBpbiBhbGwgY2xhc3NlcyBpbmhlcml0
aW5nIGZyb20gT2JqZWN0LgpNYXliZSBAQHN5c3RtcGRpciBpcyBub3Qgc28gcHJvbmUgdG8gY29u
ZmxpY3QsIGJ1dCBob3cgYWJvdXQgQEBpZGVudGlmaWVyLCBAQGNvbnRleHQsIEBAbG9jYWxlcywg
QEBzZXF1ZW5jZSwgQEBhbGwsIGV0YyB3aGljaCBhcmUgY2xhc3MgdmFyaWFibGVzIG9mIHRoZSBz
dGFuZGFyZCBsaWJyYXJ5PwoKTW9yZW92ZXIsIGNsYXNzIHZhcmlhYmxlcyBhcmUgZXh0cmVtZWx5
IGNvbXBsZXggdG8gaW1wbGVtZW50IGNvcnJlY3RseSBhbmQgdmVyeSBkaWZmaWN1bHQgdG8gb3B0
aW1pemUgZHVlIHRvIHRoZSBjb21wbGV4IHNlbWFudGljcy4KSW4gZmFjdCwgbm9uZSBvZiBKUnVi
eSwgVHJ1ZmZsZVJ1YnksIFJ1YmluaXVzIGFuZCBNUnVieSBpbXBsZW1lbnQgdGhlICJzZXR0aW5n
IGEgY2xhc3MgdmFyIG9uIE9iamVjdCByZW1vdmVzIGNsYXNzIHZhcnMgaW4gc3ViY2xhc3NlcyIu
Ckl0IHNlZW1zIGFsbCBpbXBsZW1lbnRhdGlvbnMgYnV0IE1SSSBwcmludCA6Zm9vIHR3aWNlIGhl
cmUgKGluc3RlYWQgb2YgOmZvbyA6dG9wbGV2ZWwgZm9yIE1SSSk6Cgp+fn4gcnVieQpjbGFzcyBG
b28KICBAQGN2YXIgPSA6Zm9vCiAgZGVmIHNlbGYucmVhZAogICAgQEBjdmFyCiAgZW5kCmVuZAoK
cCBGb28ucmVhZApAQGN2YXIgPSA6dG9wbGV2ZWwKcCBGb28ucmVhZAp+fn4KCgpJcyB0aGVyZSBh
bnkgbGlicmFyeSBhY3R1YWxseSB0YWtpbmcgYWR2YW50YWdlIHRoYXQgY2xhc3MgdmFyaWFibGVz
IGFyZSBpbmhlcml0ZWQgYmV0d2VlbiBjbGFzc2VzPyBJIHdvdWxkIGd1ZXNzIG5vdCBvciB2ZXJ5
IGZldy4KVGhlcmVmb3JlLCBJIHByb3Bvc2UgdG8gZ2l2ZSBjbGFzcyB2YXJpYWJsZSBpbnR1aXRp
dmUgc2VtYW50aWNzOiBubyBpbmhlcml0YW5jZSwgdGhleSBiZWhhdmUganVzdCBsaWtlIHZhcmlh
YmxlcyBvZiB0aGF0IHNwZWNpZmljIGNsYXNzLCBtdWNoIGxpa2UgY2xhc3MtbGV2ZWwgaW5zdGFu
Y2UgdmFyaWFibGVzIChidXQgc2VwYXJhdGUgZm9yIGNvbXBhdGliaWxpdHkpLgoKQW5vdGhlciBv
cHRpb24gaXMgdG8gcmVtb3ZlIHRoZW0gY29tcGxldGVseSwgYnV0IHRoYXQncyBsaWtlbHkgdG9v
IGhhcmQgZm9yIGNvbXBhdGliaWxpdHkuCgpUaG91Z2h0cz8KCgoKLS0gCmh0dHBzOi8vYnVncy5y
dWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVi
eS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5v
cmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=

In This Thread

Prev Next