Windows で使用するコードをいくつか作成しまし__debugbreak()
たが、他のコンパイラをサポートしたいので、この関数 (Clang および GCC) のより移植性の高いバージョンを作成しようとしています。
デバッグ ブレークを指定するターゲットに依存しない手段が提供されないため、今のところインライン アセンブラの使用を拒否しました。私も見まし__builtin_trap()
たが、たとえば、後でステップイン/ステップオーバーするなど、そのようなことは実際には許可されていないようです。私もこの質問を見てきましたが、受け入れられた回答では、探しているビット、つまり「...」に入るビットが実際には指定されていません。
これをサポートすることに関する Clang のパッチもいくつか見ましたが、どうやら Clang は依然として を含むコードを拒否しているようです__debugbreak()
。
助言がありますか?