[ruby-core:108444] [Ruby master Bug#18730] Double `return` event handling with different tracepoints
From:
"hurricup (Alexandr Evstigneev)" <noreply@...>
Date:
2022-04-29 11:05:52 UTC
List:
ruby-core #108444
SXNzdWUgIzE4NzMwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgaHVycmljdXAgKEFsZXhhbmRyIEV2c3Rp Z25lZXYpLgoKCmplcmVteWV2YW5zMCAoSmVyZW15IEV2YW5zKSB3cm90ZSBpbiAjbm90ZS00Ogo+ IEkndmUgc3VibWl0dGVkIGEgcHVsbCByZXF1ZXN0IHRvIGZpeCB0aGUgdXNlLWFmdGVyLWZyZWUg YnVnOiBodHRwczovL2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvNTg2MgoKSSBjYW4gY29uZmly bSB0aGF0IHdpdGggdGhpcyBwYXRjaCwgYmVoYXZpb3IgaXMgY29uc2lzdGVudCBhbmQgZG8gbm90 IGRlcGVuZCBvbiBgdHAwYCBzdGF0ZS4gUmV0dXJuIGV2ZW50IGlzIGFsd2F5cyBoYW5kbGVkIGJ5 IGJvdGggaGFuZGxlcnMuIApCdXQgaXQgc3RpbGwgZmVlbHMgc3RyYW5nZSBhbmQgaW5jb25zaXN0 ZW50LgpFLmcuIHRoaXMgY29kZSBzaG91bGQgc3R1Y2sgaW4gaW5maW5pdGUgbG9vcCwgYnV0IGl0 IHBhc3NlcyAyIHRpbWVzIGFuZCB0aGF0J3MgaXQ6CmBgYApkZWYgYmFyCiAgNDIgI2JwIGhlcmUK ZW5kCgpkZWYgc2V0X3JldHVybl90cAogIFRyYWNlUG9pbnQubmV3KDpyZXR1cm4pIGRvIHx0cHwK ICAgIHB1dHMgJ1JldHVybiBoaXQnCiAgICB0cC5kaXNhYmxlCiAgICBzZXRfcmV0dXJuX3RwCiAg ZW5kLmVuYWJsZQplbmQKCnNldF9yZXR1cm5fdHAKYmFyCmBgYAoKT3I6IApgYGAKZGVmIGJhcgog IDQyICNicCBoZXJlCmVuZAoKZGVmIHNldF9yZXR1cm5fdHAxCiAgVHJhY2VQb2ludC5uZXcoOnJl dHVybikgZG8gfHRwfAogICAgcHV0cyAnUmV0dXJuIGhpdCAxJwogICAgdHAuZGlzYWJsZQogICAg c2V0X3JldHVybl90cDIKICBlbmQuZW5hYmxlCmVuZAoKZGVmIHNldF9yZXR1cm5fdHAyCiAgVHJh Y2VQb2ludC5uZXcoOnJldHVybikgZG8gfHRwfAogICAgcHV0cyAnUmV0dXJuIGhpdCAyJwogICAg dHAuZGlzYWJsZQogICAgc2V0X3JldHVybl90cDEKICBlbmQuZW5hYmxlKHRhcmdldDogUnVieVZN OjpJbnN0cnVjdGlvblNlcXVlbmNlLm9mKG1ldGhvZCA6YmFyKSkKZW5kCgpzZXRfcmV0dXJuX3Rw MQojc2V0X3JldHVybl90cDIKYmFyCmBgYApUaGlzIGhpdHMgdHdpY2UuIAoKQW5kCmBgYApkZWYg YmFyCiAgNDIgI2JwIGhlcmUKZW5kCgpkZWYgc2V0X3JldHVybl90cDEKICBUcmFjZVBvaW50Lm5l dyg6cmV0dXJuKSBkbyB8dHB8CiAgICBwdXRzICdSZXR1cm4gaGl0IDEnCiAgICB0cC5kaXNhYmxl CiAgICBzZXRfcmV0dXJuX3RwMgogIGVuZC5lbmFibGUKZW5kCgpkZWYgc2V0X3JldHVybl90cDIK ICBUcmFjZVBvaW50Lm5ldyg6cmV0dXJuKSBkbyB8dHB8CiAgICBwdXRzICdSZXR1cm4gaGl0IDIn CiAgICB0cC5kaXNhYmxlCiAgICBzZXRfcmV0dXJuX3RwMQogIGVuZC5lbmFibGUodGFyZ2V0OiBS dWJ5Vk06Okluc3RydWN0aW9uU2VxdWVuY2Uub2YobWV0aG9kIDpiYXIpKQplbmQKCiNzZXRfcmV0 dXJuX3RwMQpzZXRfcmV0dXJuX3RwMgpiYXIKYGBgClRoaXMgaGl0cyBvbmNlLgoKU28gc29tZXRo aW5nIGlzIGRlZmluaXRlbHkgd3JvbmcgdGhlcmUuIAoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KQnVnICMxODczMDogRG91YmxlIGByZXR1cm5gIGV2ZW50IGhhbmRs aW5nIHdpdGggZGlmZmVyZW50IHRyYWNlcG9pbnRzCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3Jn L2lzc3Vlcy8xODczMCNjaGFuZ2UtOTc0ODIKCiogQXV0aG9yOiBodXJyaWN1cCAoQWxleGFuZHIg RXZzdGlnbmVldikKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCiogQmFja3BvcnQ6 IDIuNjogVU5LTk9XTiwgMi43OiBVTktOT1dOLCAzLjA6IFVOS05PV04sIDMuMTogVU5LTk9XTgot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkknbSBub3Qgc3VyZSBpZiB0 aGlzIGlzIGEgYnVnIG9yIGludGVudGlvbmFsIGJlaGF2aW9yLCBidXQgZmVlbHMgYSBiaXQgdW5l eHBlY3RlZC4gUnVieSAzLjAueCwgMy4xLnggYWZmZWN0ZWQuCgpIZXJlIGlzIHRoZSBzY3JpcHQg ZGVtb25zdHJhdGluZyB0aGUgaXNzdWU6CmBgYApkZWYgYmFyCiAgNDIgI2JwIGhlcmUKZW5kCgp0 cF9saW5lID0gVHJhY2VQb2ludC5uZXcoOmxpbmUpIGRvIHx0cDB8CiAgcHV0cyAiR290IGxpbmUg ZXZlbnQgZnJvbSAje3RwMC5wYXRofToje3RwMC5saW5lbm99IgoKICB0cF9tdWx0aTEgPSBUcmFj ZVBvaW50Lm5ldyg6cmV0dXJuLCA6Yl9yZXR1cm4sIDpsaW5lKSBkbyB8dHB8CiAgICBpZiB0cC5s aW5lbm8gPT0gMwogICAgICBwdXRzICJHb3QgZmlyc3QgcmV0dXJuIGAje3RwLmV2ZW50fWAgZnJv bSAje3RwLnBhdGh9OiN7dHAubGluZW5vfSIKICAgICAgdHAuZGlzYWJsZQogICAgICAjIHRwMC5k aXNhYmxlICMgdW5jb21tZW50aW5nIHRoaXMgbGluZSBjaGFuZ2VzIHRoaW5ncyB0byB0aGUgbW9y ZSBleHBlY3RlZCAKCgogICAgICB0cF9tdWx0aTIgPSBUcmFjZVBvaW50Lm5ldyg6cmV0dXJuLCA6 Yl9yZXR1cm4sIDpsaW5lKSBkbyB8dHBzfAogICAgICAgIHB1dHMgIkdvdCBzZWNvbmQgcmV0dXJu IGAje3Rwcy5ldmVudH1gIGZyb20gI3t0cHMucGF0aH06I3t0cHMubGluZW5vfSIKICAgICAgZW5k CiAgICAgIHRwX211bHRpMi5lbmFibGUodGFyZ2V0OiBSdWJ5Vk06Okluc3RydWN0aW9uU2VxdWVu Y2Uub2YobWV0aG9kIDpiYXIpKQogICAgZW5kCiAgZW5kCiAgdHBfbXVsdGkxLmVuYWJsZQplbmQK CnRwX2xpbmUuZW5hYmxlKHRhcmdldDogUnVieVZNOjpJbnN0cnVjdGlvblNlcXVlbmNlLm9mKG1l dGhvZCA6YmFyKSkKCmJhcgpgYGAKMS4gV2Ugc2V0IGEgbGluZSBUUCB0byB0aGUgYGJhcmAgbWV0 aG9kIGBpc2VxYCAoY29uc2lkZXIgaXQgYSBsaW5lIGJyZWFrcG9pbnQpCjIuIFdoZW4gbGluZSBl dmVudCBpcyB0cmlnZ2VyZWQgd2Ugc2V0dGluZyBhbm90aGVyIHVudGFyZ2V0ZWQgdHJhY2Vwb2lu dCBmb3IgdGhlIHNhbWUgbWV0aG9kLCB0byBjYXRjaCBgbGluZWAsIGByZXR1cm5gIGFuZCBgYl9y ZXR1cm5gIGV2ZW50cyAoY29uc2lkZXIgaXQgYXR0ZW1wdCB0byBzdGVwIGludG8gc29tZXRoaW5n KQozLiBXaGVuIHJldHVybiBldmVudCBvZiB0aGUgYGJhcmAgbWV0aG9kIGlzIHRyaWdnZXJlZCwg d2UgZGlzYWJsaW5nIHNlY29uZCB0cmFjZXBvaW50IGFuZCBzZXR0aW5nIGFub3RoZXIgb25lLCB0 YXJnZXRlZCB0byB0aGUgc2FtZSBtZXRob2QgYW5kIG11bHRpcGxlIGV2ZW50cy4KCk91dHB1dCBp IGdldDoKYGBgCkdvdCBsaW5lIGV2ZW50IGZyb20gL2hvbWUvaHVycmljdXAvdGVzdC5yYjoyCkdv dCBmaXJzdCByZXR1cm4gYHJldHVybmAgZnJvbSAvaG9tZS9odXJyaWN1cC90ZXN0LnJiOjMKR290 IHNlY29uZCByZXR1cm4gYHJldHVybmAgZnJvbSAvaG9tZS9odXJyaWN1cC90ZXN0LnJiOjMKYGBg ClRoZSBxdWVzdGlvbnMgYXJlOiAKMS4gd2h5IHJldHVybiB0cmlnZ2VyZWQgb24gdGhlIHNlY29u ZCB0cmFjZXBvaW50LCB3aGVuIHdlIGFscmVhZHkgaGFuZGVsZWQgaXQ/CjIuIHdoeSBkaXNhYmxp bmcgbGluZSB0cmFjZXBvaW50IGNoYW5nZXMgYmVoYXZpb3I/CgoKCgotLSAKaHR0cHM6Ly9idWdz LnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBy dWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5n Lm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==