User Tools

Site Tools


gcc_extensions

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:40]
rpjday [Nested functions]
gcc_extensions [2019/07/25 12:53]
rpjday [Case ranges]
Line 49: Line 49:
 ==== Nonlocal gotos ==== ==== Nonlocal gotos ====
  
-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.txt · Last modified: 2019/07/25 12:53 by rpjday