title: Is this ternary conditional ?: correct (Objective) C syntax?
body: <p>I didn't think this was possible but apparently in Objective C it is allowed:</p>
  
  <pre><code>int a = b ?: c;
  </code></pre>
  
  <p>So you see what they're doing here, they're leaving out the second part of the ternary expression, such that if b is nonzero, b is used as the second part.</p>
  
  <p>It's clever but as far as I know this is against K&amp;R C, and probably ANSI C.</p>
  
  <p>If not, I've been missing out of a terribly clever syntax trick for years...alas!</p>
  
  <p>Update:
  It is gcc.</p>