From: "James M. Lawrence" <redmine@...>
Date: 2011-02-08T03:19:37+09:00
Subject: [ruby-core:35139] [Ruby 1.9-Bug#4379][Open] [patch] eval(s, b, "(eval)", n) discards location


--mimepart_4d5037b4bb9bb_59868fb324c5519
Content-Type: text/plain
Content-Transfer-Encoding: Quoted-printable
Content-Disposition: inline

Bug #4379: [patch] eval(s, b, "(eval)", n) discards location
http://redmine.ruby-lang.org/issues/show/4379

Author: James M. Lawrence
Status: Open, Priority: Normal
Category: core, Target version: 1.9.x
ruby -v: ruby 1.9.3dev (2011-02-08 trunk 30820) [i386-darwin9.8.0]

% ruby -e 'p eval("raise", nil, "(eval)", 999)'
-e:1:in `eval': (eval):999:in `<main>':  (RuntimeError)
	from -e:1:in `eval'
	from -e:1:in `<main>'

With binding, location is ignored.

% ruby -e 'p eval("raise", binding, "(eval)", 999)'
-e:1:in `<main>': unhandled exception
	from -e:1:in `eval'
	from -e:1:in `<main>'

source_location has a similar problem.

The patch also applies cleanly to 1.9.2.


----------------------------------------
http://redmine.ruby-lang.org

--mimepart_4d5037b4bb9bb_59868fb324c5519
Content-Type: text/plain; name=test_eval_location.patch
Content-Transfer-Encoding: Base64
Content-Disposition: attachment; filename=test_eval_location.patch

ZGlmZiAtLWdpdCBhL3Rlc3QvcnVieS90ZXN0X2V2YWwucmIgYi90ZXN0L3J1
YnkvdGVzdF9ldmFsLnJiCmluZGV4IDI5OTE2NWYuLjUwYTU4YWQgMTAwNjQ0
Ci0tLSBhL3Rlc3QvcnVieS90ZXN0X2V2YWwucmIKKysrIGIvdGVzdC9ydWJ5
L3Rlc3RfZXZhbC5yYgpAQCAtNDMwLDQgKzQzMCwyMyBAQCBjbGFzcyBUZXN0
RXZhbCA8IFRlc3Q6OlVuaXQ6OlRlc3RDYXNlCiAgICAgcmVzdWx0ID0gZm9v
Lmluc3RhbmNlX2V2YWwoJmZvb19wcikKICAgICBhc3NlcnRfZXF1YWwoMSwg
cmVzdWx0LCAnQnVnICMzNzg2LCBCdWcgIzM4NjAsIFtydWJ5LWNvcmU6MzI1
MDFdJykKICAgZW5kCisKKyAgZGVmIHRlc3RfZXZhbF9iYWNrdHJhY2UKKyAg
ICBiZWdpbgorICAgICAgZXZhbCgicmFpc2UiLCBiaW5kaW5nLCAiKGV2YWwp
IiwgOTk5OSkKKyAgICByZXNjdWUgPT4gZQorICAgICAgYXNzZXJ0X21hdGNo
IC86OTk5OTovLCBlLmJhY2t0cmFjZVswXQorICAgIGVuZAorICBlbmQKKwor
ICBkZWYgdGVzdF9ldmFsX3NvdXJjZV9sb2NhdGlvbgorICAgIGV4cGVjdGVk
ID0gWyIoZXZhbCkiLCA5OTk5XQorCisgICAgc291cmNlID0KKyAgICAgICJj
bGFzcyA8PCBPYmplY3QubmV3IDsiIDw8CisgICAgICAiZGVmIGYgOyBlbmQg
OyIgPDwKKyAgICAgICJpbnN0YW5jZV9tZXRob2QoOmYpLnNvdXJjZV9sb2Nh
dGlvbiA7IGVuZCIKKworICAgIGFzc2VydF9lcXVhbCBleHBlY3RlZCwgZXZh
bChzb3VyY2UsIGJpbmRpbmcsICpleHBlY3RlZCkKKyAgZW5kCiBlbmQK

--mimepart_4d5037b4bb9bb_59868fb324c5519
Content-Type: text/plain; name=eval_location.patch
Content-Transfer-Encoding: Base64
Content-Disposition: attachment; filename=eval_location.patch

ZGlmZiAtLWdpdCBhL3ZtX2V2YWwuYyBiL3ZtX2V2YWwuYwppbmRleCAwZGNi
YWZhLi44NWQ2ZTI4IDEwMDY0NAotLS0gYS92bV9ldmFsLmMKKysrIGIvdm1f
ZXZhbC5jCkBAIC05NjAsMTAgKzk2MCwxMyBAQCBldmFsX3N0cmluZ193aXRo
X2NyZWYoVkFMVUUgc2VsZiwgVkFMVUUgc3JjLCBWQUxVRSBzY29wZSwgTk9E
RSAqY3JlZiwgY29uc3QgY2hhcgogICAgIHJiX2Jsb2NrX3QgYmxvY2s7CiAg
ICAgdm9sYXRpbGUgaW50IHBhcnNlX2luX2V2YWw7CiAgICAgdm9sYXRpbGUg
aW50IG1pbGRfY29tcGlsZV9lcnJvcjsKKyAgICB2b2xhdGlsZSBpbnQgaXNf
dXNlcl9maWxlID0gRkFMU0U7CiAKICAgICBpZiAoZmlsZSA9PSAwKSB7CiAJ
ZmlsZSA9IHJiX3NvdXJjZWZpbGUoKTsKIAlsaW5lID0gcmJfc291cmNlbGlu
ZSgpOworICAgIH0gZWxzZSB7CisJaXNfdXNlcl9maWxlID0gVFJVRTsKICAg
ICB9CiAKICAgICBwYXJzZV9pbl9ldmFsID0gdGgtPnBhcnNlX2luX2V2YWw7
CkBAIC05NzcsNyArOTgwLDcgQEAgZXZhbF9zdHJpbmdfd2l0aF9jcmVmKFZB
TFVFIHNlbGYsIFZBTFVFIHNyYywgVkFMVUUgc2NvcGUsIE5PREUgKmNyZWYs
IGNvbnN0IGNoYXIKIAkgICAgaWYgKHJiX29ial9pc19raW5kX29mKHNjb3Bl
LCByYl9jQmluZGluZykpIHsKIAkJR2V0QmluZGluZ1B0cihzY29wZSwgYmlu
ZCk7CiAJCWVudnZhbCA9IGJpbmQtPmVudjsKLQkJaWYgKHN0cmNtcChmaWxl
LCAiKGV2YWwpIikgPT0gMCAmJiBiaW5kLT5maWxlbmFtZSAhPSBRbmlsKSB7
CisJCWlmICghaXNfdXNlcl9maWxlICYmIHN0cmNtcChmaWxlLCAiKGV2YWwp
IikgPT0gMCAmJiBiaW5kLT5maWxlbmFtZSAhPSBRbmlsKSB7CiAJCSAgICBm
aWxlID0gUlNUUklOR19QVFIoYmluZC0+ZmlsZW5hbWUpOwogCQkgICAgbGlu
ZSA9IGJpbmQtPmxpbmVfbm87CiAJCX0KQEAgLTEwMzUsNyArMTAzOCw3IEBA
IGV2YWxfc3RyaW5nX3dpdGhfY3JlZihWQUxVRSBzZWxmLCBWQUxVRSBzcmMs
IFZBTFVFIHNjb3BlLCBOT0RFICpjcmVmLCBjb25zdCBjaGFyCiAgICAgaWYg
KHN0YXRlKSB7CiAJaWYgKHN0YXRlID09IFRBR19SQUlTRSkgewogCSAgICBW
QUxVRSBlcnJpbmZvID0gdGgtPmVycmluZm87Ci0JICAgIGlmIChzdHJjbXAo
ZmlsZSwgIihldmFsKSIpID09IDApIHsKKwkgICAgaWYgKCFpc191c2VyX2Zp
bGUgJiYgc3RyY21wKGZpbGUsICIoZXZhbCkiKSA9PSAwKSB7CiAJCVZBTFVF
IG1lc2csIGVycmF0LCBidDI7CiAJCWV4dGVybiBWQUxVRSByYl9nZXRfYmFj
a3RyYWNlKFZBTFVFIGluZm8pOwogCQlJRCBpZF9tZXNnOwo=

--mimepart_4d5037b4bb9bb_59868fb324c5519--