[#24395] "a".sum(32) is 0 — Tanaka Akira <akr@...17n.org>
次のように、"a".sum(32) が 0 になるのは変ではないでしょうか。
まつもと ゆきひろです
In article <1096716505.531808.29662.nullmailer@x31.priv.netlab.jp>,
[#24400] IO#read with 1 argument dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24405] Auto stack growing on Mac OS X — Mitsuhiro Kondo <miche@...>
近藤と申します。
[#24413] Re: new NKF2拡張ライブラリ — "NARUSE, Yui" <naruse@...>
naruseです。
[#24444] ARGF.read(len) and EOF — Tanaka Akira <akr@...17n.org>
次のように、ARGF.read(len) から読み込もうとしたときに、引数にファイル
In article <1097228154.590547.23205.nullmailer@x31.priv.netlab.jp>,
[#24464] DelegateClass#clone — pegacorn@...
こんにちは。
From: pegacorn@jcom.home.ne.jp
まつもと ゆきひろです
From: Yukihiro Matsumoto <matz@ruby-lang.org>
[#24467] DBM#select: `select': wrong argument type false (expected Data) (TypeError) — Tanaka Akira <akr@...17n.org>
DBM#select を呼び出すと `select': wrong argument type false (expected
[#24481] can't build ruby 1.9.0 on mswin32 — 木村浩一 <kimura.koichi@...>
木村です。
わたなべです。
[#24493] Init_stack prototype — Tanaka Akira <akr@...17n.org>
eval.c 内で Init_stack が
[#24505] File::open and mode 'w+' — sheepman <sheepman@...>
こんにちは、sheepman です。
[#24507] test_truncate_rbuf fails — "URABE Shyouhei aka.mput" <root@...>
mput です。 make test-all で以下のエラーが出ています。
In article <80041A7C-2022-11D9-9FB0-000393735AAE@mput.dip.jp>,
なかだです。
In article <200410172227.i9HMRGnh016104@sharui.nakada.niregi.kanuma.tochigi.jp>,
[#24515] Marshal.load causes core dump — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24519] raise dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24536] 「Rubyの落し方」 v.s. ruby_1_8 — akira yamada / やまだあきら <akira@...>
<URL:http://jp.rubyist.net/magazine/?0002-RubyCore>
なかだです。
まつもと ゆきひろです
2004-10-20 (水) の 21:38 +0900 に Yukihiro Matsumoto さんは書きました:
2004-10-26 (火) の 16:16 +0900 に akira yamada / やまだあきら さんは書きました:
まつもと ゆきひろです
こんにちは、なかむら(う)です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
2004-10-27 (水) の 11:48 +0900 に Yukihiro Matsumoto さんは書きました:
2004-10-27 (水) の 12:42 +0900 に akira yamada / やまだあきら さんは書きました:
In article <1098888819.9446.14.camel@rice.p.arika.org>,
2004-10-29 (金) の 11:30 +0900 に Tanaka Akira さんは書きました:
まつもと ゆきひろです
永井@知能.九工大です.
[#24537] No warning when using alias with exsisting method name — SASADA Koichi <ko1@...>
ささだです。
[#24540] IO#readpartial dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
まつもと ゆきひろです
[#24594] unpack("p") dumps core — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24595] NKF(nkf2)をCVS Headに入れます — "NARUSE, Yui" <naruse@...>
naruseです。
[#24621] Zlib::Deflate#flush_next_in causes core dump on 1.8 — Tanaka Akira <akr@...17n.org>
次のようにすると core を吐きます。
[#24647] Re: oniguruma: big regexp dumps core — "K.Kosako" <kosako@...>
> 次のようにすると core を吐きます。
In article <20041030082637.6A78A33BFF@beryllium.ruby-lang.org>,
まつもと ゆきひろです
斉藤です。CVS の変更以来、鬼車はそう急がないだろうと
[ruby-dev:24625] OpenStruct can't be dumped
なかだです。
OpenStructがMarshal.dumpできなくなっています。
$ ruby -v -rostruct -e 'x=OpenStruct.new;x.foo=1;Marshal.dump(x)'
ruby 1.9.0 (2004-10-27) [i686-linux]
-e:1:in `dump': singleton can't be dumped (TypeError)
from -e:1
また、newのときに初期化されたものに関しては、[ruby-talk:117889]
は直っていないようです。
$ ruby -rostruct -e 'def foo;"method";end;p OpenStruct.new(:foo=>1).send(:foo)'
"method"
marshal_dumpでは互換性がなくなってしまうのが問題ですが。
Index: lib/ostruct.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/lib/ostruct.rb,v
retrieving revision 1.12
diff -U2 -p -d -r1.12 ostruct.rb
--- lib/ostruct.rb 27 Oct 2004 09:29:24 -0000 1.12
+++ lib/ostruct.rb 28 Oct 2004 05:10:23 -0000
@@ -48,5 +48,6 @@ class OpenStruct
if hash
for k,v in hash
- @table[k.to_sym] = v
+ @table[k = k.to_sym] = v
+ new_ostruct_member(k)
end
end
@@ -56,12 +57,29 @@ class OpenStruct
def initialize_copy(orig)
super
+ @table.each_key {|k| remove_ostruct_member(k)}
@table = @table.dup
+ @table.each_key {|k| new_ostruct_member(k)}
+ end
+
+ def marshal_dump
+ @table
+ end
+
+ def marshal_load(x)
+ @table = x
end
def new_ostruct_member(name)
- self.instance_eval %{
- def #{name}; @table[:#{name}]; end
- def #{name}=(x); @table[:#{name}] = x; end
- }
+ class << self; self; end.class_eval do
+ define_method(name) do || @table[name]; end
+ define_method("#{name}=") do |x| @table[name] = x; end
+ end
+ end
+
+ def remove_ostruct_member(name)
+ class << self; self; end.class_eval do
+ remove_method(name)
+ remove_method("#{name}=")
+ end
end
@@ -77,5 +95,6 @@ class OpenStruct
end
mname.chop!
- @table[mname.intern] = args[0]
+ mname = mname.intern
+ @table[mname] = args[0]
self.new_ostruct_member(mname)
elsif len == 0
@@ -90,5 +109,7 @@ class OpenStruct
#
def delete_field(name)
- @table.delete name.to_sym
+ name = name.to_sym
+ remove_ostruct_member(name)
+ @table.delete(name)
end
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦