> marshalの内部ですね.デバッガによるバックトレースは取れますか? ま た, > sizeof(int),sizeof(long),sizeof(void*)が知りたいのですが,調べられ ま > すか? 最初からつけとくべきすね。お手数をおかけします。これで分りますでしょう か。 --- from here --- marshal [1, 2, 3, [4, 5, "foo"], {1=>"bar"}, 2.5, 265252859812191058636308480000000] Program received signal 11, Segmentation fault Reading in symbols for marshal.c...done. 0x804d587 in r_bytes0 (sp=0x80474d4, s=0x80474c4 "", len=0, arg=0x3) at marshal.c:532 (gdb) bt Searching... >0 F 0x804d587 in r_bytes0 (sp=0x80474d4, s=0x80474c4 "", len=0, arg=0x3) at marshal.c:532 #1 F 0x804d695 in r_string (arg=0x8047628) at marshal.c:575 #2 F 0x804d8d9 in r_object (arg=0x8047628) at marshal.c:670 #3 F 0x804d96e in r_object (arg=0x8047628) at marshal.c:686 #4 F 0x804d96e in r_object (arg=0x8047628) at marshal.c:686 #5 F 0x804dccc in load (arg=0x8047628) at marshal.c:791 #6 FI 0x80797a1 in rb_ensure (b_proc=0x804dcc0 <load>, data1= 134510120, e_proc=0x804dcd0 <load_ensure>, data2=134510120) at eval.c:3191 #7 F 0x804de11 in marshal_load (argc=1, argv=0x8047754) at marshal. c:841 #8 FI 0x8079bcc in rb_call0 (klass=135096780, recv=135096860, id= 7945, argc=1, argv=0x8047754, body=0x80d6968, nosuper=1) at eval.c:3373 #9 F 0x807a6ba in rb_call (klass=135096780, recv=135096860, mid= 7945, argc=1, argv=0x8047754, scope=0) at eval.c:3649 #10 F 0x8076ae4 in rb_eval (self=135144240, node=0x80b8238) at eval. c:1981 #11 F 0x8076baa in rb_eval (self=135144240, node=0x80b8210) at eval. c:1991 #12 F 0x8075beb in rb_eval (self=135144240, node=0x80b81e8) at eval. c:1608 #13 F 0x8074aaf in eval_node (self=135144240) at eval.c:925 #14 F 0x8074b55 in ruby_run () at eval.c:955 #15 F 0x804a5cd in main (argc=2, argv=0x8047a44, envp=0x8047a50) at main.c:32 #16 0x804a597 in _start () (gdb) p sizeof(int) $1 = 4 (gdb) p sizeof(long) $2 = 4 (gdb) p sizeof(void *) $3 = 4 --- from here ---