[#26430] compile error of missing/*.c — nobuyoshi nakada <nobuyoshi.nakada@...>
なかだです。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
[#26443] cvs [diff aborted]: cannot open file .cvsignore for comparing: No such file or directory — Tanaka Akira <akr@...17n.org>
最近、cvs diff に -k option を付けると、エラーになる (ことがある) ので
[#26463] String#each_byte and String#each_char — "NARUSE, Yui" <naruse@...>
成瀬です。
[#26468] $SAFE=1 の open-uri で redirect 時にエラー — Kazuhiko <kazuhiko@...>
かずひこです。
In article <m3zmsylimn.wl%kazuhiko@fdiary.net>,
まつもと ゆきひろです
In article <1120754832.716261.15867.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1120762886.189058.18880.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
In article <1120810939.815280.27104.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
In article <42CF1918.5000603@ruby-lang.org>,
前田です。
In article <42D7C230.7030509@ruby-lang.org>,
In article <42DDBA82.7030307@ruby-lang.org>,
[#26493] can't handle \c\ — KIMURA Koichi <kbk@...>
木村です。
卜部でございます。
木村です。
[#26508] rmdir(2) on windows doesn't set ENOTDIR — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
まつもと ゆきひろです
山本です。
山本です。
[#26530] removing static variables in parse.y — nobuyoshi nakada <nobuyoshi.nakada@...>
なかだです。
[#26566] cannot compile io.c on windows — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#26574] SystemCallError.new("abc") => #<SystemCallError: unknown error - ab> — Tanaka Akira <akr@...17n.org>
次のように、メッセージの最後が切れます。
まつもと ゆきひろです
なかだです。
山本です。
まつもと ゆきひろです
なかだです。
山本です。
なかだです。
山本です。
なかだです。
なかだです。
まつもと ゆきひろです
山本です。
この変更があってからだと思うのですが、リンカが以下のように警告を発するよ
卜部です。自己レス
At Sat, 30 Jul 2005 02:32:38 +0900,
[#26594] test_s_open_lock failed on Solaris — Tanaka Akira <akr@...17n.org>
次のように、Solaris で test_s_open_lock が失敗します。
[#26618] Re: [ruby-cvs] ruby/ext/socket, ruby, ruby: * ext/socket/socket.c (ruby_connect): break immediately if a — Tanaka Akira <akr@...17n.org>
In article <20050728015209.0F30DC6734@lithium.ruby-lang.org>,
In article <1122518643.429222.1408.nullmailer@x31.priv.netlab.jp>,
[#26623] Ruby2.0BlockParameterNotation — SASADA Koichi <ko1@...>
ささだです。
まつもと ゆきひろです
[#26628] show information of '--enable-pthread' — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
わたなべです。
こんにちは、なかむら(う)です。
永井@知能.九工大です.
永井@知能.九工大です.
In message <20050731.094203.74726476.nagai@ai.kyutech.ac.jp>
永井@知能.九工大です.
こんにちは、なかむら(う)です。
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
まつもと ゆきひろです
永井@知能.九工大です.
なかだです。
永井@知能.九工大です.
永井@知能.九工大です.
こんにちは、なかむら(う)です。
永井@知能.九工大です.
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
[#26639] SEGV at zsuper with anonymous rest args. — nobu@...
なかだです。
まつもと ゆきひろです
山本です。
なかだです。
[ruby-dev:26533] syserror() returns string terminated with return code
山本です。
>念のためしばらく時間を置いて、夜にでもコミットします。
>
>* win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
> if file or directory already exists. (bcc32)
>
>* win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
> if it is not directory. (bcc32, win32)
>
>* win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
> FILE_ATTRIBUTE_READONLY flag on function failure.
こちらはコミットしました。
bcc32 絡みで、もう二つ問題を見つけてしまいました。
1. syserror() が改行で終わる文字列を返すため、エラーメッセージが見づらい。
今回 win32 と比べて初めて気づいた。
2. 少なくとも bcc5.5.1 では、_sys_errlist のバグにより ENAMETOOLONG と
ENOTEMPTY のメッセージがおかしい。
errno.h では
#define ENAMETOOLONG 48 /* Filename too long */
#define ENOTEMPTY 49 /* Directory not empty */
となっているのに、_sys_errlist の定義では
/* 48 */ "Directory not empty"
};
で終わっているためです。C++Builder6 で直っているかどうかはわかりません。とりあえず
C++Builder5 だけ対処するパッチです。
# ところで、bcc32 ポートの対応コンパイラは、bcc32/README.bcc32 を見ると
# Borland C++ 5.0 or later. となっているのですが、以前 C++Builder1 (bcc5.2)
# でコンパイルしたときは、ilink32 がないなどの理由でできませんでした。
# 正式にはどのバージョンからサポートされますか?
# Borland C++ 5.5 or later だと hypot() が使えるので、HAVE_HYPOT を定義したいです。
Index: win32.c
===================================================================
RCS file: /src/ruby/win32/win32.c,v
retrieving revision 1.157
diff -u -w -b -p -r1.157 win32.c
--- win32.c 13 Jul 2005 10:40:06 -0000 1.157
+++ win32.c 13 Jul 2005 10:49:48 -0000
@@ -1752,6 +1752,12 @@ rb_w32_strerror(int e)
DWORD source = 0;
char *p;
+#if defined __BORLANDC__ && 0x0550 <= __BORLANDC__ && __BORLANDC__ <= 0x0551
+ if (e == ENAMETOOLONG)
+ return "Filename too long";
+ if (e == ENOTEMPTY)
+ return "Directory not empty";
+#endif
if (e < 0 || e > sys_nerr) {
if (e < 0)
e = GetLastError();
@@ -1760,14 +1766,17 @@ rb_w32_strerror(int e)
buffer, 512, NULL) == 0) {
strcpy(buffer, "Unknown Error");
}
+ }
+ else {
+ strncpy(buffer, strerror(e), sizeof(buffer));
+ buffer[sizeof(buffer) - 1] = 0;
+ }
for (p = buffer + strlen(buffer) - 1; buffer <= p; p--) {
if (*p != '\r' && *p != '\n') break;
*p = 0;
}
return buffer;
}
- return strerror(e);
-}
//
// various stubs
////////////////////////////////////////////
// パッチ前
E:\ruby-cvs\bcc32>irb19
irb(main):001:0> raise Errno::ENAMETOOLONG
Errno::ENAMETOOLONG: Directory not empty
from (irb):1
irb(main):002:0> Dir.rmdir("../ruby_1_8")
Errno::ENOTEMPTY: Unknown error
- ../ruby_1_8
from (irb):2:in `rmdir'
from (irb):2
////////////////////////////////////////////
// パッチ後
E:\ruby-cvs\bcc32>irb19
irb(main):001:0> raise Errno::ENAMETOOLONG
Errno::ENAMETOOLONG: Filename too long
from (irb):1
irb(main):002:0> Dir.rmdir("../ruby_1_8")
Errno::ENOTEMPTY: Directory not empty - ../ruby_1_8
from (irb):2:in `rmdir'
from (irb):2