[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [MD:7127] 古いコンパイラでも Meadow を make する会
- X-ml-count: 7128
- Subject: Re: [MD:7127] 古いコンパイラでも Meadow を make する会
- From: Shuichi KITAGUCHI <kit@xxxxxxxx>
- Date: Thu, 05 Jan 2006 14:33:51 +0900 (JST)
- X-mailer: xcite1.48> Mew version 4.2.54 on Emacs 21.4 / Mule 5.0 (賢木)
北口です。
今年もよろしくお願いします。
> 白井@古いコンパイラでも Meadow を make する会会員です。
>
> 今年もよろしくお願いします。(__)
>
> rev 4005 での変更ですが、VC++ 6.0 は ULONG_PTR を持っていないの
> で、mw32term.h で
>
> #ifndef ULONG_PTR
> #define ULONG_PTR ULONG
> #endif
>
> としておきました。なにか勘違いしていたら指摘してください。
VS.NET2003のヘッダを見ると、
#if defined(_WIN64)
〜〜〜
typedef unsigned __int64 ULONG_PTR, *PULONG_PTR;
〜〜〜
#else
〜〜〜
typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR;
〜〜〜
#endif
となっています(_W64は、Win64コンパイル時のチェック用みたいなので、
無視してください)。
ですので#ifndefでは駄目で、さらにCygwin側(ULONG_PTRを持っている
ようです)も考慮すると、
#if !defined(__GNUC__) && _MSC_VER <= 1000 ←VC6ってこれぐらいでしたっけ?
typedef unsigned long ULONG_PTR, *PULONG_PTR;
#endif
という感じでしょうか?
# __GNUC__より__CYGWIN__の方がいいのか、とか、Cygwin側の話は
# よくわかっていませんが。
--
Shuichi Kitaguchi // kit@xxxxxxxx / ki@xxxxxxxxxxxxxx