[#10007] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...>

青山です。

31 messages 2000/06/11
[#10008] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/11

青山です。

[#10018] Re: [ruby-talk:03267] Re: mod_ruby error? — Shugo Maeda <shugo@...> 2000/06/13

前田です。

[#10027] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/13

青山です。

[#10028] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/13

青山です。

[#10029] Re: [ruby-talk:03267] Re: mod_ruby error? — Shugo Maeda <shugo@...> 2000/06/13

前田です。

[#10035] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/13

青山です。

[#10038] Re: [ruby-talk:03267] Re: mod_ruby error? — Shugo Maeda <shugo@...> 2000/06/14

前田です。

[#10041] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/14

青山です。

[#10045] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/14

青山です。

[#10046] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/14

青山です。

[#10047] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/14

青山です。

[#10048] Re: [ruby-talk:03267] Re: mod_ruby error? — Wakou Aoyama <wakou@...> 2000/06/14

青山です。

[#10135] don't use mktemp() — Shugo Maeda <shugo@...>

前田です。

35 messages 2000/06/27
[#10136] Re: don't use mktemp() — matz@... (Yukihiro Matsumoto) 2000/06/27

まつもと ゆきひろです

[#10137] Re: don't use mktemp() — Shugo Maeda <shugo@...> 2000/06/27

前田です。

[#10141] Re: don't use mktemp() — kjana@... (YANAGAWA Kazuhisa) 2000/06/27

In message <874s6f1rqj.wl@studly.netlab.co.jp>

[#10143] Re: don't use mktemp() — WATANABE Hirofumi <eban@...> 2000/06/27

わたなべです.

[#10181] Re: don't use mktemp() — Katsuyuki Komatsu <komatsu@...> 2000/07/03

小松です。

[#10183] Re: don't use mktemp() — WATANABE Hirofumi <eban@...> 2000/07/03

わたなべです.

[ruby-dev:10102] Re: [PATCH] module === string.extend(module).dup

From: "Nobuyoshi.Nakada" <nobu.nakada@...>
Date: 2000-06-21 15:07:24 UTC
List: ruby-dev #10102
なかだです。

On Wed, 21 Jun 2000 23:14:35 +0900
matz@netlab.co.jp (Yukihiro Matsumoto) wrote:
> |> 要するにfrozenなオブジェクトに対しても(変更しさえしなければ)
> |> 特異クラスを定義(というか参照)できれば問題なしのようですね。
> |> なんとかしましょう。
> |
> |  えーと、こんなんでしょうか。
> 
> ああっ、実はこちらでも作業してたのでした。

  いやちょっと気分転換に(^^;。まぁほぼ予想通りということですか。

> 基本的にやったことは同じですね。違いと言えば
> 
>   * rb_alias(), rb_undef()にもチェックを追加した

  undef は見落としてました。

  ついでに…。以前 OBJ_INFECT() ってのを作ってもらいましたが、こんなのは
どうかなとか。


--- ruby.h.orig	Mon May 29 11:10:18 2000
+++ ruby.h	Thu Jun 22 00:07:18 2000
@@ -359,14 +359,19 @@ struct RBignum {
 #define FL_ABLE(x) (!SPECIAL_CONST_P(x))
 #define FL_TEST(x,f) (FL_ABLE(x)?(RBASIC(x)->flags&(f)):0)
-#define FL_SET(x,f) do {if (FL_ABLE(x)) RBASIC(x)->flags |= (f);} while (0)
-#define FL_UNSET(x,f) do {if (FL_ABLE(x)) RBASIC(x)->flags &= ~(f);} while (0)
-#define FL_REVERSE(x,f) do {if (FL_ABLE(x)) RBASIC(x)->flags ^= (f);} while (0)
+#define FL_SET(x,f)	     (void) (FL_ABLE(x) && (RBASIC(x)->flags |= (f)))
+#define FL_UNSET(x,f)	     (void) (FL_ABLE(x) && (RBASIC(x)->flags &= ~(f)))
+#define FL_REVERSE(x,f)      (void) (FL_ABLE(x) && (RBASIC(x)->flags ^= (f)))
+#define FL_SET_FROM(x,s,f)   (void) (FL_ABLE(x) && FL_ABLE(s) && (RBASIC(x)->flags |= RBASIC(s)->flags & (f)))
+#define FL_UNSET_FROM(x,s,f) (void) (FL_ABLE(x) && FL_ABLE(s) && (RBASIC(x)->flags &= RBASIC(s)->flags & ~(f)))
+#define FL_COPY(x,s,f)	     (void) (FL_ABLE(x) && FL_ABLE(s) && \
+				     (RBASIC(x)->flags &= RBASIC(x)->flags & ~(f) | RBASIC(s)->flags & (f)))
 
 #define OBJ_TAINTED(x) FL_TEST((x), FL_TAINT)
 #define OBJ_TAINT(x) FL_SET((x), FL_TAINT)
-#define OBJ_INFECT(x,s) do {if (FL_ABLE(x) && FL_ABLE(s)) RBASIC(x)->flags |= RBASIC(s)->flags & FL_TAINT;} while (0)
+#define OBJ_INFECT(x,s) FL_SET_FROM((x), (s), FL_TAINT)
 
 #define OBJ_FROZEN(x) FL_TEST((x), FL_FREEZE)
 #define OBJ_FREEZE(x) FL_SET((x), FL_FREEZE)
+#define OBJ_FREEZE_BY(x,s) FL_SET_FROM((x), (s), FL_FREEZE)
 
 #define xmalloc ruby_xmalloc


-- 
そうだ 強気に ちょっと インチキに☆彡
    中田 "Bugるくらいがちょうどいいかも;-)" 伸悦


In This Thread

Prev Next