夜行録 - 酔歩.net

Calendar

< May 2008 >
MonTueWedThuFriSatSun
1234
567891011
12131415161718
19202122232425
262728293031

Thursday, 08.05.08

PGI コンパイラでの inline 化と IPA の問題

PGI の C++ コンパイラでインライン指定したメンバ関数が include 先で衝突する件。
なんでか勝手に解決した

ストラウストラップの3版(p. 284)には、クラス定義内で単純に宣言されるだけでなく、定義されるメンバ関数は、インラインメンバ関数と見なされる、とある。
いや、それは知っていて、というか、昔のコードはその書き方ばっかりですっげー読み難くなっているんだが、別にそうしないとインラインにできない、とは書いてないと思うんだがどうだろう?

ともあれ head ファイル内に書かれていたメンバ関数をクラス定義内定義に変えてやったら、衝突しなくなって IPA もできるようになったのである。よく判らん。