Listing 1

#define swap( x, y )		   \
        ({ typeof(x) temp  = (x);  \
           x = y; y = temp;	   \
        })