[PHP-dev 1318] Re: PHPにバンドルしているonigurumaについて

K.Kosako sndgk393 @ ybb.ne.jp
2006年 9月 17日 (日) 20:02:41 JST


小迫です。

どこで対処するのが適切なのか、私には分かりませんが、
鬼車でも対処したいと思います。
条件としてどのように記述すればよいのか、
どなたか教えていただけないでしょうか?

条件として考えられるのは、
MacOS Xであれば あるいは GCC 4.0以上なら
という感じでしょうか?

#ifdef 条件
#ifndef HAVE_STDARG_PROTOTYPES
#define HAVE_STDARG_PROTOTYPES
#endif
#endif
--
小迫

KOYAMA Tetsuji wrote:
> On 9/17/06, Rui Hirokawa <rui_hirokawa @ ybb.ne.jp> wrote:
>> 小山さん,金井さん,調査頂きありがとうございました。
>> やはり,PHP/onigurumaの問題ではなく,開発環境(Xcodeのgcc)のバグの
>> ようですね。
>> gccがbus errorとなるようではしょうがありません。
> 
> 細かいですが念のため。Bus Error になるのは gcc ではなく
> ext/mbstring/config.m4 の stdarg.h チェックコードを抜き出して
> gcc -O2 でコンパイルしたバイナリです。
> 
>> 1.gcc-4.0.1以外(gcc-3.3)を使用する
>> 2.最適化オプションを外す
>> 3.Xcodeの他のバージョンを試す
>> 4.php_config.h生成後にHAVE_STDARG_PROTOTYPESを書き換える
>>
>> などを推奨しておくことにします。
>> (Xcodeの修正を促すのがより前向きですね。)
> 
> とりあえず他の修正案を。
> configure の stdarg.h のチェックって本当に必要でしょうか。
> 
> ext/standard/array.c を見ると、特にチェックもなく普通に
> 
> #include <stdarg.h>
> 
> しているので、mbstring のみチェックを行ってもあまり意味はないような
> 気がしています。
> 




PHP-dev メーリングリストの案内