[#41750] cygwinでRDtoolなどがインストールできない — Kouzuma Kunikazu <kuni92@...>
はじめまして、上妻 久仁和 と申します。
9 messages
2006/01/01
[#41751] Re: cygwinでRDtoolなどがインストールできない
— rubikitch <rubikitch@...>
2006/01/01
From: Kouzuma Kunikazu <kuni92@sings.jp>
[#41752] Re: cygwinでRDtoolなどがインストールできない
— nobu@...
2006/01/02
なかだです。
[#41753] [ANN] Subversion 1.3.0 released. — Kouhei Sutou <kou@...>
須藤です.
4 messages
2006/01/02
[#41790] Ruby組み込み時の拡張ライブラリの静的リンク — 湊大典 <minato.daisuke@...>
こんにちわ、湊大典@会津大です。
5 messages
2006/01/19
[#41795] Ruby/SDL Segmentation fault — Kouhei Yanagita <yanagi@...>
こんにちは。柳田です。
4 messages
2006/01/21
[ruby-list:41802] Re: Hashを継承したクラスでYAML.dump
From:
"H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Date:
2006-01-26 08:42:46 UTC
List:
ruby-list #41802
こんにちは、山本です。
>こんにちは。sakazukiです。
>
>YAMLライブラリのバグレポートです
>Hashを継承したクラスで定義した属性がYAML.dump/loadで復元出来ません。
私の環境では、1.8.2 と 1.8.3 で違いが見られました。ただ、属性を復元して
いるのではなく、YAML.load で initialize が呼ばれるかどうかの違いでした。
///////////////////////////////////////////
// コード
require 'yaml'
class B < Hash
def initialize(*v)
@order = $order
puts "initialize"
super
end
attr_accessor :order
end
$order = []
p s = YAML.dump(B.new)
$order = nil
o = YAML.load(s)
p o.order
///////////////////////////////////////////
// 1.8.2
initialize
"--- !ruby/hash:B {}"
initialize
nil
//////////////////////////////////////////
// 1.8.3
initialize
"!map:B {}\n\n"
nil
dumpの結果には、属性情報が含まれておらず、1.8.2 では
initialize が呼ばれるので偶々 @order = [] が実行される
ということのようです。
# Marshal では復元されるので、やはりバグなのかもしれませんが
それと、調べていてこんなバグを見つけました。
E:\ruby-cvs>ruby -ryaml -e "YAML.load('!map:B {}')"
e:/ruby/lib/ruby/1.8/yaml.rb:133: [BUG] Segmentation fault
ruby 1.8.4 (2005-12-24) [i386-bccwin32]
Abnormal program termination
これは良くないですね。