[Macemacsjp-users 491] Re: inline-patch for CVS HEAD

Back to archive index

moto kawasaki moto****@kawas*****
2005年 7月 1日 (金) 15:10:47 JST


> > どちらかといえば「これで正しい?」という疑問の方が大きいので :-)、
> ざっと見ましたが、僕がやっていることと同じでした。

ああ、それはとても心強いです。

> >   ところで、この AERegistry.h の中身って別のヘッダファイルをincludeし
> >   ているだけ (ApplicationServices/ApplicationServices.h) なんですが、
> >   この Appli....h は自分自身をインクルードしてるんですね。
> >   これって一体 @_@??????
> 
> OLDROUTINENAMES を定義せずにコンパイルし、失敗させます。その cc の部分
> をコピペして、-E オプションを加えて実行すれば、どのヘッダが include さ
> れるか分かります。

他力本願ですみません ^^; 一念発起してやってみました。

まずエラーは Emacs の src/macim.c のコンパイルで出てくる次のもの。

macim.c:350: error: ‘kCaretPosition’ undeclared (first use in this function)
macim.c:350: error: (Each undeclared identifier is reported only once
macim.c:350: error: for each function it appears in.)
macim.c:354: error: ‘kRawText’ undeclared (first use in this function)
macim.c:358: error: ‘kSelectedRawText’ undeclared (first use in this function)
macim.c:362: error: ‘kConvertedText’ undeclared (first use in this function)
macim.c:366: error: ‘kSelectedConvertedText’ undeclared (first use in this function)

で、kCaretPosition その他は
  /System/Library/Frameworks/ApplicationServices.framework/
     Frameworks/AE.framework/Headers/AERegistry.h
に #if OLDROUTINENAMES でくるんだ形で定義されていて、それゆえ件の定義
があればコンパイルできるということですね。

> OLDROUTINENAMES を不要にするのは簡単そうですが、互換性のためにわざとこ
> うしているのでしょうか?

僕の手元には Tiger しかないので、Panther との互換性はよくわかりません。
# うーむ、肝心のところで腰砕け :-(

moto kawasaki <moto****@kawas*****>



Macemacsjp-users メーリングリストの案内
Back to archive index