Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gcc_extensions [2019/07/25 12:41] – [Nonlocal gotos] rpjdaygcc_extensions [2019/07/25 12:53] (current) – [Case ranges] rpjday
Line 50: Line 50:
  
 Use ''%%__builtin_setjmp%%'' and ''%%__builtin_longjmp%%''. Use ''%%__builtin_setjmp%%'' and ''%%__builtin_longjmp%%''.
 +
 +==== Constructing function calls ====
 +
 +==== typeof ====
 +
 +<code>
 +#define max(a,b) \
 +  ({ typeof (a) _a = (a); \
 +      typeof (b) _b = (b); \
 +    _a > _b ? _a : _b; })
 +</code>
 +
 +==== Conditionals ====
 +
 +Equivalent:
 +
 +<code>
 +x ? x : y
 +x ? : y
 +</code>
 +
 +==== Non-constant initializers ====
 +
 +==== Designated initializers ====
 +
 +==== Case ranges ====
 +
 +<code>
 +case low ... high:
 +</code>
 +
 +Don't forget spaces.
 +
 +
 +
  • gcc_extensions.1564058485.txt.gz
  • Last modified: 2019/07/25 12:41
  • by rpjday