title: Portable equivalent of __debugbreak
body: <p>I've written some code using <code>__debugbreak()</code> on Windows, and I'd like to support other compilers, so I'm looking to create a more portable version of this function (Clang and GCC).</p>
  
  <p>I've rejected using inline assembler for now because it does not provide a target-independent means of specifying a debug break. I've also looked at <code>__builtin_trap()</code> but apparently it doesn't really permit for example step in/step over afterwards and that kind of thing. I've also looked at <a href="https://stackoverflow.com/questions/173618/is-there-a-portable-equivalent-to-debugbreak-debugbreak">this question</a> but the accepted answer doesn't actually specify the bit that I'm looking for- the bit that goes in the "...".</p>
  
  <p>I've also seen some patches for Clang about supporting this, but apparently Clang still rejected code containing <code>__debugbreak()</code>.</p>
  
  <p>Any suggestions?</p>