[#31143] m {|(*,(*)),|} — Tanaka Akira <akr@...>
m {|(*,(*)),|} で SEGV します。
[#31164] ruby_set_current_source remains in intern.h — Masahiro Sakai (酒井政裕) <masahiro.sakai@...>
酒井です。
[#31166] is_ruby_native_thread() — Masahiro Sakai (酒井政裕) <masahiro.sakai@...>
酒井です。
なかだです。
永井@知能.九工大です.
なかだです。
永井@知能.九工大です.
ささだです。
[#31168] 構造体オブジェクトのcloneメソッド呼び出しでメモリリーク発生 — m-ohkubo@... (Mitsuhiko OHKUBO)
大久保といいます。はじめまして。
なかだです。
大久保です。よろしくお願いします。
[#31190] 0x3fffffffffffffff.succ — Tanaka Akira <akr@...>
LP64 環境で 0x3fffffffffffffff.succ が -4611686018427387904
[#31214] Warning: OpenSSL::PKCS7::PKCS7 is deprecated after Ruby 1.9; use OpenSSL::PKCS7 instead — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
[#31222] trunk: バグを指摘している警告 — pegacorn <subscriber.jp@...>
trunk で -Wall を付けてコンパイルしてみると、バグを指摘している警告が
From: pegacorn <subscriber.jp@gmail.com>
[#31242] p(65536**(1<<29)) stalls — "Yusuke ENDOH" <mame@...>
遠藤と申します。
[#31244] shift — Tanaka Akira <akr@...>
-O0 で、以下のようにすると SEGV になります。
なかだです。
In article <200707180743.l6I7hXic031558@sharui.nakada.kanuma.tochigi.jp>,
[#31285] p()#=>[] — eklerni <eklerni@...>
松尾といいます。
[#31292] ParseDate.parsedate("Tuesday, July 6th, 2007, 18:35:20 UTC") — Tanaka Akira <akr@...>
ParseDate のマニュアルにある以下の例を動かすと、示された結果
[#31298] retryの使い方 — eklerni <eklerni@...>
松尾といいます。
ささだです。
松尾です、返信ありがとうございます。
Yuguiといいます。
松尾といいます。
In article <46A909DD.1070405@for.mail-box.ne.jp>,
Tanaka Akira さんは書きました:
In article <46A92530.80507@for.mail-box.ne.jp>,
Tanaka Akira さんは書きました:
In article <46AD7A16.8080509@for.mail-box.ne.jp>,
松尾です。
ささだです。
From:eklerni
まつもと ゆきひろです
In article <E1ILDTi-0005T6-Be@x31>,
まつもと ゆきひろです
In article <E1ILKn6-0003Nv-0f@x31>,
まつもと ゆきひろです
In article <E1ILVN9-0006xJ-7I@x31>,
In article <E1ILq4x-0002Bs-Lg@x31>,
まつもと ゆきひろです
In article <E1ILweZ-00008I-Tu@x31>,
まつもと ゆきひろです
In article <E1ILyGa-0000ug-Qd@x31>,
まつもと ゆきひろです
In article <E1IM1W9-0001uC-Bz@x31>,
まつもと ゆきひろです
[ruby-dev:31222] trunk: バグを指摘している警告
trunk で -Wall を付けてコンパイルしてみると、バグを指摘している警告が
いくつか見付かりました。
compiling digest
gcc -I. -I../../.ext/include/i386-freebsd6.2 -I../.././include -I../.././ext/digest -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -g -O2 -Wall -c digest.c
digest.c: In function `rb_digest_instance_update':
digest.c:100: warning: format argument is not a pointer (arg 3)
digest.c: In function `rb_digest_instance_finish':
digest.c:118: warning: format argument is not a pointer (arg 3)
digest.c: In function `rb_digest_instance_reset':
digest.c:132: warning: format argument is not a pointer (arg 3)
digest.c: In function `rb_digest_instance_block_length':
digest.c:361: warning: format argument is not a pointer (arg 3)
digest.c: In function `rb_digest_class_s_digest':
compiling dl
gcc -I. -I../../.ext/include/i386-freebsd6.2 -I../.././include -I../.././ext/dl -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -g -O2 -Wall -fno-defer-pop -fno-omit-frame-pointer -c cfunc.c
cfunc.c: In function `rb_dlcfunc_call':
cfunc.c:463: warning: unsigned int format, ID arg (arg 3)
compiling openssl
gcc -I. -I../../.ext/include/i386-freebsd6.2 -I../.././include -I../.././ext/openssl -DRUBY_EXTCONF_H=\"extconf.h\" -fPIC -g -O2 -Wall -c ossl_x509name.c
ossl_x509name.c: In function `ossl_x509name_to_s':
ossl_x509name.c:207: warning: null format string
ossl_x509name.c:211: warning: null format string
ext/openssl の
ossl_x509name.c:207: warning: null format string
ossl_x509name.c:211: warning: null format string
は、
- rb_raise(eX509NameError, NULL);
+ rb_raise(eX509NameError, "");
にすべきかどうかよくわかりませんが、他を見ると ossl_raise() を使うつもり
だったと思われたので、ossl_raise() に置き換えました。
Index: ext/digest/digest.c
===================================================================
--- ext/digest/digest.c (リビジョン 12779)
+++ ext/digest/digest.c (作業コピー)
@@ -97,7 +97,7 @@
static VALUE
rb_digest_instance_update(VALUE self, VALUE str)
{
- rb_raise(rb_eRuntimeError, "%s does not implement update()", rb_inspect(self));
+ rb_raise(rb_eRuntimeError, "%s does not implement update()", RSTRING_PTR(rb_inspect(self)));
}
/*
@@ -115,7 +115,7 @@
static VALUE
rb_digest_instance_finish(VALUE self)
{
- rb_raise(rb_eRuntimeError, "%s does not implement finish()", rb_inspect(self));
+ rb_raise(rb_eRuntimeError, "%s does not implement finish()", RSTRING_PTR(rb_inspect(self)));
}
/*
@@ -129,7 +129,7 @@
static VALUE
rb_digest_instance_reset(VALUE self)
{
- rb_raise(rb_eRuntimeError, "%s does not implement reset()", rb_inspect(self));
+ rb_raise(rb_eRuntimeError, "%s does not implement reset()", RSTRING_PTR(rb_inspect(self)));
}
/*
@@ -358,7 +358,7 @@
static VALUE
rb_digest_instance_block_length(VALUE self)
{
- rb_raise(rb_eRuntimeError, "%s does not implement block_length()", rb_inspect(self));
+ rb_raise(rb_eRuntimeError, "%s does not implement block_length()", RSTRING_PTR(rb_inspect(self)));
}
/*
Index: ext/dl/cfunc.c
===================================================================
--- ext/dl/cfunc.c (リビジョン 12779)
+++ ext/dl/cfunc.c (作業コピー)
@@ -460,7 +460,11 @@
}
}
else{
- rb_raise(rb_eDLError, "unsupported call type: %x", cfunc->calltype);
+#ifndef LONG_LONG_VALUE
+ rb_raise(rb_eDLError, "unsupported call type: %lx", cfunc->calltype);
+#else
+ rb_raise(rb_eDLError, "unsupported call type: %llx", cfunc->calltype);
+#endif
}
rb_dl_set_last_error(self, INT2NUM(errno));
Index: ext/openssl/ossl_x509name.c
===================================================================
--- ext/openssl/ossl_x509name.c (リビジョン 12779)
+++ ext/openssl/ossl_x509name.c (作業コピー)
@@ -204,11 +204,11 @@
return ossl_x509name_to_s_old(self);
else iflag = NUM2ULONG(flag);
if (!(out = BIO_new(BIO_s_mem())))
- rb_raise(eX509NameError, NULL);
+ ossl_raise(eX509NameError, NULL);
GetX509Name(self, name);
if (!X509_NAME_print_ex(out, name, 0, iflag)){
BIO_free(out);
- rb_raise(eX509NameError, NULL);
+ ossl_raise(eX509NameError, NULL);
}
str = ossl_membio2str(out);
--
pegacorn