Я не думал, что это возможно, но, видимо, в Objective C разрешено:
int a = b ?: c;
Итак, вы видите, что они здесь делают, они упускают вторую часть тернарного выражения, так что если b отличен от нуля, b используется как вторая часть.
Это умно, но насколько я знаю, это против K & R C и, возможно, ANSI C.
Если нет, я пропустил ужасно умный синтаксический трюк в течение многих лет... увы!
Обновление: Это gcc.