title: What is the worst real-world macros/pre-processor abuse you've ever come across?
body: <p>What is the <em>worst</em> <strong>real-world</strong> macros/pre-processor abuse you've ever come across (please no contrived IOCCC answers *haha*)?</p>
  
  <p>Please add a short snippet or story if it is really entertaining. The goal is to teach something instead of always telling people "never use macros".</p>
  
  <hr>
  
  <p>p.s.: I've used macros before... but usually I get rid of them eventually when I have a "real" solution (even if the real solution is inlined so it becomes similar to a macro).</p>
  
  <hr>
  
  <p><strong>Bonus:</strong> Give an example where the macro was really was better than a not-macro solution.</p>
  
  <p><strong>Related question:</strong> <a href="https://stackoverflow.com/questions/96196/when-are-c-macros-beneficial">When are C++ macros beneficial?</a> </p>