title: Creating C macro with ## and __LINE__ (token concatenation with positioning macro)
body: <p>I want to create a C macro that creates a function with a name based
  on the line number.
  I thought I could do something like (the real function would have statements within the braces):</p>
  <pre><code>#define UNIQUE static void Unique_##__LINE__(void) {}
  </code></pre>
  <p>Which I hoped would expand to something like:</p>
  <pre><code>static void Unique_23(void) {}
  </code></pre>
  <p>That doesn't work. With token concatenation, the positioning macros
  are treated literally, ending up expanding to:</p>
  <pre><code>static void Unique___LINE__(void) {}
  </code></pre>
  <p>Is this possible to do?</p>