5.29 インライン関数とデバッグ

一般的に、インライン関数により生成されるデバッグビューに問題はありませんが、インライン展開されない方がデバッグしやすい場合があり、そのような場合はインライン関数を避けることが望まれます。

関数のインライン展開を有効または無効にするには、 --no_inline--inline--autoinline、および --no_autoinline コマンドラインオプションを使用します。
アウトオブラインコピーが必要でないときに関数のインラインコピーとアウトオブラインコピーの両方を保持すると、デバッグビューが悪影響を受けることもあります。モジュールの外部から呼び出されない関数をスタティック関数として宣言すると、デバッグビューが無駄に複雑化することを回避できます。
関連する概念
5.20 インライン関数
5.21 関数のインライン展開に関するコンパイラによる決定
5.22 関数の自動インライン展開とスタティック関数
5.23 インライン関数と、リンク時における未使用のアウトオブライン関数の削除
5.24 関数の自動インライン展開とマルチファイルのコンパイル
5.26 コンパイラモードとインライン関数
5.27 C++ および C90 モードでのインライン関数
5.28 C99 モードでのインライン関数
関連する参考文書
5.25 関数のインライン展開に関するコンパイラの決定をオーバーライドすることの制限
8.15 --autoinline、--no_autoinline
8.84 --forceinline
10.6 __forceinline
10.8 __inline
8.107 --inline、--no_inline
関連情報
--inline、--no_inline リンカオプション
非機密扱いPDF file icon PDF 版ARM DUI0472LJ
Copyright © 2010-2015 ARM.All rights reserved.