こんにちは、なかむら(う)です。 In message "[ruby-dev:13898] Re: Prototype for rb_gc_mark / volatile in ruby.h" on 2001/07/16, WATANABE Hirofumi <eban / os.rim.or.jp> wrote: | :-Zaをつけるとwindows.h(からインクルードされるヘッダ)でエラー | :が出るのですよ、これが。 | | うーむ。それは__STDC__が定義されるとエラーになるのですか? | win32/win32.hの中で__STDC__をdefineして済むなら簡単なんです | けどねえ。 -Zaはコンパイルエラーになります。 struct/unionの無名メンバを許さなくなるようです。 他にもなんかあるかも。 __STDC__を自前で定義してやると、今度は標準ヘッダの中身が変わ るのでけっこうはまります。 ANSI Cにない関数/typdefされた型などが全部アンダーバーなしで は使えなくなるようです(これはこれで理解できないこともない)。 現状のrubyのソースを考えると、__STDC__を自前で定義するよりも __STDC__でコードを変えてる部分を個別にいじった方が作業量は だいぶ少なそうです。 それもなんかやですが、致命的なのはruby.hとregex.cにあるvolatile 絡みくらい(あとはプロトタイプ宣言の有無程度)なので、そこだけ 対応で十分かもしれません。 それでは。 -- U.Nakamura <usa / osb.att.ne.jp> # なんかMicrosoftに嫌がらせされてるような気も ^^;