From: "H.Yamamoto" Date: 2003-12-04T10:40:13+09:00 Subject: [ruby-dev:22128] Re: Dir.glob と Shjift_JIS について 山本です。 昨日のパッチ [ruby-dev:22126] に、マクロ引数として CharNext を 2回評価するパフォーマンスバグがあったので、 追加パッチを送ります。inline を使えたらなあ・・・ --- ..\dir.c Wed Dec 3 22:08:54 2003 +++ dir.c Thu Dec 4 10:28:30 2003 @@ -86,8 +86,13 @@ static int compare(c1, c2) -#define GREATER(p1, p2) ((p1) > (p2) ? (p1) : (p2)) +static char* greater(p1, p2) + const char *p1; + const char *p2; +{ + return p1 > p2 ? (char *)p1 : (char *)p2; +} #if defined(_WIN32) -# define Next(p) (GREATER((p) + 1, CharNext(p))) /* faster */ +# define Next(p) (greater((p) + 1, CharNext(p))) /* faster */ #elif defined(DJGPP) || defined(__EMX__) -# define Next(p) (GREATER((p) + 1, (p) + mblen(p, INT_MAX))) +# define Next(p) (greater((p) + 1, (p) + mblen(p, INT_MAX))) #endif