Project

General

Profile

Bug #14247 » Thread-KeyError.diff

znz (Kazuhiro NISHIYAMA), 12/27/2017 12:05 PM

View differences:

test/ruby/test_thread.rb
assert_equal(3, t.fetch("qux") {x = 3})
assert_equal(3, x)
assert_raise(KeyError) {t.fetch(:qux)}
e = assert_raise(KeyError) {t.fetch(:qux)}
assert_equal(:qux, e.key)
assert_equal(t, e.receiver)
ensure
t.kill if t
end
thread.c
return rb_yield(key);
}
else if (argc == 1) {
rb_raise(rb_eKeyError, "key not found: %"PRIsVALUE, key);
rb_key_err_raise(rb_sprintf("key not found: \"%"PRIsVALUE"\"", key), self, key);
}
else {
return argv[1];
(1-1/2)