[Anthy-dev 2609] Re: uim-trunkのnoinline

Back to archive index

Jun Inoue jun.l****@gmail*****
2005年 11月 6日 (日) 07:57:59 JST


On Sun, 06 Nov 2005 05:51:44 +0900 (JST)
Konosuke Watanabe <sasug****@gmail*****> wrote:

> どうも,UIM_SCM_NOINLINE が書かれてる部分で,プリプロセッサ
> を通した段階で本来この部分が
> 
>   __attribute__((noinline))
> 
> に置き換わって欲しいところが
> 
>   __attribute__(())
> 
> に置き換わってしまい,これがg++で文法エラーを起こしているよ
> うです.
> [...]
> 調べてみたら,GNU Emacsでも同じような問題があったようで,
> 
>  #define NO_INLINE __attribute__((noinline))
> 
> の後に
> 
>   #ifdef noinline
>   #undef noinline
>   #endif
> 
> とやることで問題を回避してました.

報告ありがとうございます。勝手に #undef するよりは専用の token
__noinline__ が用意されているので、そっちを利用するように変更しておきま
した (@r2020)。

しかし妙ですね。__attribute__(()) は文法上有効 (GCC manual の attribute
syntax 参照) ですので、こっそり inline が有効になるだけのはずなんです
が。今まで表面化しなかったのもそのせいです。手元の debian sid でも
__attribute__(()) になりつつ build は成功しました。

ひょっとして r2020 でもまだエラー出たりしますか?

-- 
Jun Inoue
jun.l****@gmail*****



Anthy-dev メーリングリストの案内
Back to archive index