私が望んでいるのは、一部の選択された関数を除いて、関数がインライン化されていないビルド構成です (インライン化されている場合とされていない場合があり、コンパイラ次第です)。
さらに良いのは、ある種の「インライン化レベル」です。関数ごとにそのようなレベルを指定でき、さらにビルド時に最小レベルを指定でき、最小レベルを超える関数のみをインライン化できます。これには標準的な解決策がないことはわかっていますが、コンパイラ固有のハックは大歓迎です。
デバッガーでインライン化されていないほとんどの関数をステップ実行できるようにしたいのですが、一部はパフォーマンス上の理由から、一部は非常に深い呼び出しスタックを回避するために、選択したいくつかをインライン化する必要があります。コードにはかなり厄介なテンプレート メタプログラミングが含まれていますが、その部分はほぼ完了しているので、残りの部分に集中したいと思います。そのため、テンプレート メタプログラムに属する関数をインライン化して、他のインライン関数をインライン化しないと便利です。
このようなことを達成する方法はありますか?