[Gtklab-devel] InterlockedCompareExchangeの問題

Back to archive index

Kazuki IWAMOTO iwm****@maid*****
2004年 10月 19日 (火) 05:43:12 JST


 古いSDKのヘッダファイルでは
PVOID InterlockedCompareExchange(PVOID *Destination,PVOID Exchange,PVOID Comperand);
であるのに対して、新しいSDKのヘッダファイルでは
LONG InterlockedCompareExchange(LONG volatile* Destination,LONG Exchange,LONG Comperand);
です。Glibのgatomic.cでは古いSDKのヘッダファイルに基いてAPIが使われているので、
新しいSDKのヘッダファイルではエラーになります。
 gatomic.cの475行目のInterlockedCompareExchangeのキャストをすべて削除し、
488行目をInterlockedCompareExchangePointerに変更すればコンパイルできます。

古いSDKを新しいSDKにアップグレードするのは簡単
新しいSDKを古いSDKにダウングレードするのは難しい

ということを考えると、新しいSDKに合わせるのが妥当だと私は思います。
この辺はBug Trackに持ち込むしかないと思っています。


岩本一樹
iwm****@maid*****



Gtklab-devel メーリングリストの案内
Back to archive index